HOL4
hol-theorem-prover.org
What it is
HOL4 is a free, interactive proof assistant for higher-order logic, with a programming environment for proving theorems and building proof tools. It supports work that combines deduction, execution, and property checking. Built-in decision procedures and theorem provers can establish many simple theorems, and an oracle mechanism can connect to external programs such as SMT and BDD engines. HOL4 supports higher-order logic and Standard ML, and can produce proof artifacts and counterexamples. It is self-hosted and listed for Linux, macOS, and Windows. A Standard ML compiler is required, with Poly/ML recommended; Moscow ML and MLTon are also supported for building tool executables. Windows installation can use Cygwin or the Windows Linux subsystem with Poly/ML. Moscow ML is another option, but the Windows guide notes that it is slower, lacks some Poly/ML libraries, and cannot run concurrent Holmake builds. HOL includes Emacs modes for syntax display and session interaction, and the installation guide links to Vim plugin documentation. Online materials include a tutorial, quick reference, FAQ, manuals, and generated indexes.
Spec sheet
- Purpose
- HOL4 is a proof assistant for higher-order logic and a programming environment for proving theorems and implementing proof tools.Read 8 Oct 2026 · hol-theorem-prover.org
- Integrations
- The maker documents editor support for Emacs and Vim.Read 8 Oct 2026 · hol-theorem-prover.org
- Support
- The community offers help through a mailing list and Zulip chat, while bug reports and feature suggestions go to GitHub issues.Read 8 Oct 2026 · hol-theorem-prover.org
- License
- HOL is free software released under the Modified (3-clause) BSD licence.Read 8 Oct 2026 · hol-theorem-prover.org
- Automation
- Built-in decision procedures and theorem provers can automatically establish many simple theorems.Read 8 Oct 2026 · hol-theorem-prover.org
- Development
- HOL is a collaborative project hosted on GitHub and welcomes code contributions via pull requests.Read 7 Oct 2026 · hol-theorem-prover.org
- Documentation
- HOL provides online searchable manuals, reference documentation and a theory dependency graph, and builds a local reference copy during installation.Read 8 Oct 2026 · hol-theorem-prover.org
- External tools
- An oracle mechanism gives HOL access to external programs such as SMT and BDD engines.Read 8 Oct 2026 · hol-theorem-prover.org
- Learning curve
- The maker estimates that starting from scratch, it takes about a month on average to become comfortable using HOL.Read 8 Oct 2026 · hol-theorem-prover.org
- Notable limitation
- The maker notes that Moscow ML HOL lacks libraries available in the Poly/ML version and does not support concurrent Holmake builds.Read 8 Oct 2026 · hol-theorem-prover.org
- Requirements
- HOL requires a Standard ML compiler; the installation guide recommends Poly/ML and also lists Moscow ML, with MLTon supported for building tool executables.Read 8 Oct 2026 · hol-theorem-prover.org
- Use cases
- The maker describes HOL as particularly suitable for combining deduction, execution and property checking.Read 8 Oct 2026 · hol-theorem-prover.org
- Users
- The about page names CakeML, HOL4P4, HolBA and Verifereum among projects using HOL.Read 7 Oct 2026 · hol-theorem-prover.org
- Windows limitation
- The Windows guide says Moscow ML runs many times slower than Poly/ML and does not support concurrent Holmake builds.Read 7 Oct 2026 · hol-theorem-prover.org
- Windows requirement
- The Windows guide requires Cygwin or the Windows Linux subsystem with Poly/ML, or describes Moscow ML as an alternative that is not recommended.Read 7 Oct 2026 · hol-theorem-prover.org
- Windows support
- On Windows, the maker documents installation using Cygwin or the Microsoft Linux subsystem, and also describes a less-featured Moscow ML build for a standard Windows console.Read 8 Oct 2026 · hol-theorem-prover.org
Plans and prices
Strong points and limits
Strong points
- Free software under a Modified 3-clause BSD licence
- Built-in procedures can establish many simple theorems
- Oracle mechanism can connect external SMT and BDD engines
- Documentation includes tutorials, manuals, and a FAQ
Limits
- Requires a Standard ML compiler
- Windows setup requires an additional environment or compiler choice
- Moscow ML lacks some libraries and concurrent Holmake builds
- The install page estimates about a month to become comfortable
Who it suits
HOL4 suits users proving theorems or developing proof tools in higher-order logic, especially those combining deduction, execution, and property checking. New users should be ready to learn Standard ML and allow time to become comfortable with the system.
Verdict
HOL4 provides an interactive environment for higher-order logic proofs, with automation and connections to external tools. It is free, but installation depends on a Standard ML compiler, and the documented Windows alternatives have tradeoffs.
Where Specifiction places it
- Formal Verification Tools#9 of 348.1