F* (pronounced F star) is a general-purpose, proof-oriented programming language designed for writing programs together with machine-checked proofs of their properties.
It combines dependent types with automated and interactive theorem proving. F* supports purely functional and effectful programming, using SMT solving, symbolic computation, and tactics to discharge proof obligations. Verified programs can be extracted to languages including OCaml and F#, while specialised toolchains support C, Rust, WebAssembly, and assembly output.
This is free and open source software.
Key Features
- Dependent and refinement types for expressing precise program properties.
- Supports both purely functional and effectful programming.
- Automates proofs using SMT solving and symbolic computation.
- Offers tactic-based interactive theorem proving.
- Supports user-defined computational effects.
- Combines programming and proofs in a single language.
- Extracts verified code to OCaml and F#.
- Supports low-level verified programming through Low* and KaRaMeL.
- Provides specialised routes for generating C, Rust, WebAssembly, and assembly code.
- Offers interactive development support for Emacs and Visual Studio Code.
Website: github.com/FStarLang/fstar
Support:
Developer: F* developers
License: Apache License 2.0
Related Software
| Proof Assistants | |
|---|---|
| Rocq Prover | Formal proof management system |
| Isabelle | Generic proof assistant; express mathematical formulas in a formal language |
| Lean | Programming language and theorem prover |
| Agda | Interactive system for writing and checking proofs |
| F* | Functional language for verified programs with dependent refinement types |
| HOL4 | Interactive higher-order logic environment for rigorous theorem development |
| Aya | Dependently typed language for formalisation and certified programming |
| Lambdapi | Logical framework for defining and checking expressive type systems |
| HOL Light | Lightweight higher-order logic system with a small trusted kernel |
| PVS | Specification and verification suite for analysing complex systems |
| LISA | Scala-based platform for formal mathematics and automated reasoning |
Read our verdict in the software roundup.
Explore our carefully curated directory of recommended free and open source software, covering every major software category.The directory forms part of our extensive collection of articles for Linux enthusiasts. It includes hundreds of detailed reviews, together with free and open source alternatives to proprietary software from companies such as Google, Microsoft, Apple, Adobe, IBM, Cisco, Oracle, and Autodesk. LinuxLinks also covers interesting projects worth exploring, Linux-compatible hardware, free programming books and tutorials, and much more. Know a useful free and open source Linux application that we haven’t covered? Tell us about it using our submission form. |


Please read our Comment Policy before commenting.