FREEDOM251

Freedom251 › Formal Verification Tools

HOL4

Free plan LinuxMacSelf-hostedWindows

Visit HOL4 Alternatives Pricing

HOL4's own site

What HOL4 is

HOL4 is an interactive proof assistant for higher-order logic, with a programming environment for proving theorems and building proof tools. It is suited to work that brings together deduction, execution, and property checking. Built-in decision procedures and theorem provers can establish many simple theorems, and an oracle mechanism can connect HOL to external programs such as SMT and BDD engines. HOL supports higher-order logic and Standard ML, and can produce proof artifacts and counterexamples. It is self-hosted and runs on Linux, macOS, and Windows. HOL is free software under the Modified (3-clause) BSD licence, with a free plan priced at $0 and no free trial. A Standard ML compiler is required; Poly/ML is recommended, while Moscow ML and MLTon are also supported for building tool executables. The Windows installation guide covers Cygwin or the Windows Linux subsystem with Poly/ML, as well as a Moscow ML option with fewer libraries and no concurrent Holmake builds. HOL offers Emacs modes for syntax display and session interaction, and links to Vim plugin documentation. Its online materials include a tutorial, quick reference, FAQ, manuals, and generated indexes. Help is available through the hol-info mailing list and Zulip chat, with bug reports and feature suggestions directed to GitHub issues.

Who it suits

HOL4 suits people working on formal theorem proving who want to combine deduction with execution or property checking. It can also suit teams building proof tools or connecting proofs to external SMT and BDD engines, provided they can work with a Standard ML compiler and a self-hosted installation.

What it does well

  • Free software under the Modified (3-clause) BSD licence.
  • Built-in procedures and theorem provers can establish many simple theorems.
  • Oracle mechanism connects to external SMT and BDD engines.
  • Supports proof artifacts and counterexamples.
  • Online documentation includes a tutorial, manuals, and a FAQ.
  • Community help is available through mailing list and Zulip chat.

What to know first

  • Requires a Standard ML compiler, with Poly/ML recommended.
  • The installation page estimates about a month to become comfortable from scratch.
  • Moscow ML on Windows lacks some Poly/ML libraries and concurrent Holmake builds.

Limits

The free HOL4 plan is free software under the Modified (3-clause) BSD licence. On Windows, the Moscow ML version lacks libraries available in the Poly/ML version, runs many times slower, and does not support concurrent Holmake builds.

Plans

PlanBilled and limitsPrice
HOL4Free software under the Modified (3-clause) BSD licenceFree

As hol-theorem-prover.org lists them, read 8 Oct 2026. The maker's own page has the final word.

Getting started

  1. Visit the HOL4 website and consult its installation guide.
  2. Choose Linux, macOS, or a Windows installation route.
  3. Install a Standard ML compiler; Poly/ML is recommended.
  4. On Windows, use Cygwin or the Windows Linux subsystem with Poly/ML, or consult the Moscow ML option.
  5. Use the tutorial and quick reference to begin working with HOL.

HOL4 is a self-hosted environment for interactive higher-order logic proving, aimed at researchers, verification engineers, and teams that need to program their own proof tools. It rewards substantial technical investment with automation, counterexamples, proof artifacts, and connections to external engines, while its Standard ML setup and extended learning period make it unsuitable for casual or immediate use.

Overview

HOL4 combines deduction, program execution, and property checking in one proof assistant. Higher-order logic is its central formalism, and Standard ML supplies the programming environment for constructing proofs and implementing custom tools. That combination suits projects where the verification workflow itself must be developed and inspected, rather than selected from a fixed, turnkey process.

The software is free under the Modified (3-clause) BSD licence and is deployed on your own infrastructure. It is a collaborative GitHub project that accepts contributions through pull requests. Projects identified by its makers include CakeML, HOL4P4, HolBA, and Verifereum, indicating use in substantial formal-methods work.

Key features

  • Interactive higher-order proving: HOL4 produces proof artifacts and supports counterexamples, giving users both a record of successful arguments and a way to investigate failed conjectures. This is valuable for rigorous verification, but it assumes familiarity with formal logic and proof development.
  • Built-in automation: Decision procedures and theorem provers can settle many simple theorems. They reduce repetitive work on routine goals; complex results still require users to design and maintain proofs.
  • External engines: An oracle mechanism can call programs such as SMT and BDD engines. This broadens the methods available for difficult properties, although it also makes the workflow depend on configuring and understanding those external tools.
  • Programmable tooling: Standard ML lets users implement proof tools inside the environment. It is a strong fit for experimental or domain-specific verification, less so for teams that want a graphical application with little programming.
  • Editor integration: Emacs modes provide syntax display and interaction with HOL sessions, while installation documentation points to a Vim plugin. These integrations help users who already work in those editors, but do not replace the need to learn HOL itself.
  • Documentation and support: Tutorials, a quick reference, FAQ, manuals, and generated library, theory, and signature indexes provide a substantial reference set. Questions and discussion go through the hol-info mailing list and Zulip chat; bugs and feature requests use GitHub issues.

Pricing

HOL4 — free. The free software plan includes the complete self-hosted distribution under the Modified (3-clause) BSD licence. There are no paid tiers, seat charges, usage quotas, or trial-to-renewal terms to weigh. The trade-off is operational rather than financial: you provide the Standard ML compiler and manage installation and deployment yourself.

Platforms

HOL4 supports Linux, macOS, Windows, and self-hosted deployment. Poly/ML is the recommended compiler; Moscow ML is supported, and MLTon can build tool executables. On Windows, the documented routes use Cygwin or the Windows Subsystem for Linux with Poly/ML. A Moscow ML build can run from a standard Windows console, but it is many times slower than Poly/ML, lacks libraries found in the Poly/ML version, and cannot perform concurrent Holmake builds. Windows users who need the fuller, faster setup should therefore plan around the Linux-subsystem or Cygwin route.

Who it's for

Choose HOL4 for formal-methods researchers, verification engineers, and technically experienced teams that need programmable higher-order logic, inspectable proof artifacts, counterexamples, and optional SMT or BDD assistance. It is also appropriate for contributors who want to extend an open collaborative prover. A newcomer should budget about a month to become comfortable from scratch, in addition to installing a Standard ML compiler. Teams seeking a short onboarding path, a hosted service, or a prepackaged application should look elsewhere.

Pros and cons

Pros

  • Free BSD-licensed software: There is no purchase price or paid-plan ceiling, and the permissive licence supports self-hosted use.
  • Broad proof workflow: Higher-order logic, proof artifacts, counterexamples, built-in procedures, and external engines cover both construction and diagnosis.
  • Extensible environment: Standard ML and an active GitHub project support custom proof tools and community contributions.
  • Strong reference and community channels: Manuals, indexes, tutorial material, mailing-list support, Zulip, and issue tracking give experienced users several ways to proceed.

Cons

  • High entry cost: The project estimates about a month for a beginner to become comfortable, before accounting for project-specific proof development.
  • Compiler dependency: Standard ML is required, adding setup and build decisions that simpler theorem-proving tools may avoid.
  • Uneven Windows options: The Moscow ML path is substantially slower, lacks some libraries, and omits concurrent Holmake builds.
  • Self-hosted responsibility: Installation, external-engine integration, and ongoing environment management remain with the user.

Alternatives

Browse the Formal Verification Tools directory for a wider shortlist. Lean is a free alternative spanning Linux, macOS, Windows, and the web, worth considering when that broader platform mix and its Lean 4 distribution fit better. Rocq is another free interactive theorem prover and dependently typed programming language, with extension, desktop, and web availability. Choose Z3 when a free MIT-licensed SMT solver is the primary need rather than a complete higher-order proof assistant. Boogie suits users wanting a free MIT-licensed verifier built around .NET and a supported SMT solver. cvc5 is a free open-source solver for teams comfortable with its optional GPL-licensed dependencies. PVS offers free noncommercial use and a separate commercial plan with custom pricing. Why3 is a free verification platform under the GNU Lesser General Public License with a special linking exception. Alloy Analyzer is a free, self-contained executable for users who prefer that form of analysis.

Verdict

HOL4 is a strong choice for specialists who need a free, self-hosted higher-order logic prover they can extend in Standard ML and connect to external decision engines. Its main reason to choose it is the combination of programmable proof tooling, counterexamples, artifacts, and broad documentation without licensing cost. Look elsewhere if your priority is rapid onboarding, a hosted workflow, or a Windows installation without compiler and subsystem trade-offs.

Verdict

Choose HOL4 for higher-order logic theorem proving when you need a self-hosted environment with proof tools, counterexamples, and routes to external engines. It is a weaker fit if you need a quick start: a Standard ML compiler is required, and becoming comfortable can take about a month for someone starting from scratch.

Questions

How much does HOL4 cost?

The listed HOL4 plan is free. HOL4 is free software under the Modified (3-clause) BSD licence.

Is there a free trial?

No. HOL4 is listed as having no free trial.

Which platforms does HOL4 support?

HOL4 runs on Linux, macOS, and Windows, and is self-hosted.

What compiler does HOL4 require?

It requires a Standard ML compiler, and Poly/ML is recommended. Moscow ML and MLTon are also supported for building tool executables.

Does HOL4 integrate with editors?

It provides Emacs modes for syntax display and HOL session interaction. Its installation guide also links to documentation for a Vim plugin.

Where can users get help?

The community page offers the hol-info mailing list and Zulip chat. Bug reports and feature suggestions can be sent through GitHub issues.

Facts from HOL4's own pages

Automation
Built-in decision procedures and theorem provers can automatically establish many simple theorems. · hol-theorem-prover.org, 8 Oct 2026
Development
HOL is a collaborative project hosted on GitHub and welcomes code contributions via pull requests. · hol-theorem-prover.org, 7 Oct 2026
Documentation
HOL provides online searchable manuals, reference documentation and a theory dependency graph, and builds a local reference copy during installation. · hol-theorem-prover.org, 8 Oct 2026
External tools
An oracle mechanism gives HOL access to external programs such as SMT and BDD engines. · hol-theorem-prover.org, 8 Oct 2026
Integrations
The maker documents editor support for Emacs and Vim. · hol-theorem-prover.org, 8 Oct 2026
Learning curve
The maker estimates that starting from scratch, it takes about a month on average to become comfortable using HOL. · hol-theorem-prover.org, 8 Oct 2026
License
HOL is free software released under the Modified (3-clause) BSD licence. · hol-theorem-prover.org, 8 Oct 2026
Notable limitation
The maker notes that Moscow ML HOL lacks libraries available in the Poly/ML version and does not support concurrent Holmake builds. · hol-theorem-prover.org, 8 Oct 2026
Purpose
HOL4 is a proof assistant for higher-order logic and a programming environment for proving theorems and implementing proof tools. · hol-theorem-prover.org, 8 Oct 2026
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. · hol-theorem-prover.org, 8 Oct 2026
Support
The community offers help through a mailing list and Zulip chat, while bug reports and feature suggestions go to GitHub issues. · hol-theorem-prover.org, 8 Oct 2026
Use cases
The maker describes HOL as particularly suitable for combining deduction, execution and property checking. · hol-theorem-prover.org, 8 Oct 2026
Users
The about page names CakeML, HOL4P4, HolBA and Verifereum among projects using HOL. · hol-theorem-prover.org, 7 Oct 2026
Windows limitation
The Windows guide says Moscow ML runs many times slower than Poly/ML and does not support concurrent Holmake builds. · hol-theorem-prover.org, 7 Oct 2026
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. · hol-theorem-prover.org, 7 Oct 2026
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. · hol-theorem-prover.org, 8 Oct 2026

Where HOL4 stands on Freedom251

Look at these too