{
  "slug": "fstar",
  "name": "F*",
  "tagline": "Dependently typed language behind HACL*, hax and DY*",
  "maintainer": "Microsoft Research and Inria",
  "url": "https://fstar-lang.org",
  "category": "provers",
  "targets": [
    "HACL*",
    "hax (main backend)",
    "DY*",
    "libcrux"
  ],
  "approach": "Dependently typed effectful programming with SMT automation; extraction to C and OCaml",
  "license": "Open source (Apache-2.0)",
  "status": "Active",
  "summary": "F* is the dependently typed language in which HACL* and libcrux proofs are written and the primary backend of hax. It combines proof-assistant expressiveness with SMT automation and extracts to C.",
  "details": [
    "Most shipped verified cryptography (Firefox, Signal, Linux) was proved in F*. Its SMT-heavy style can make proofs brittle across versions, which projects mitigate with careful lemma hints."
  ],
  "strengths": [
    "Largest body of deployed verified crypto.",
    "Automation via Z3.",
    "Extraction to C."
  ],
  "limits": [
    "Proof brittleness under solver changes.",
    "Smaller community than Lean.",
    "Not used for circuits."
  ],
  "fit": [
    "Choose F* when building on HACL* or verifying Rust via hax's default backend."
  ],
  "references": [
    [
      "F*",
      "https://fstar-lang.org"
    ]
  ],
  "category_name": "Proof assistants and general verifiers",
  "page": "https://sorryfree.com/frameworks/fstar/",
  "updated": "2026-09-13"
}