CPAchecker vs HOL4
CPAchecker
cpachecker.sosy-lab.orgHOL4
hol-theorem-prover.orgSide by side
| Figure | CPAchecker | HOL4 |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | — | — |
| Windows | Yes | Yes |
| macOS | Yes | Yes |
| Linux | Yes | Yes |
| Self-hosted | Yes | Yes |
| Plans published | 1 | 1 |
| Spec score · Formal Verification Tools | 8.0 (#10) | 8.1 (#9) |
| Development | Development takes place on GitLab, and the download page also links to a read-only GitHub mirror. | HOL is a collaborative project hosted on GitHub and welcomes code contributions via pull requests. |
| Documentation | The documentation page links to installation instructions, getting-started guidance, tutorials, and a counterexample report for a program with a bug found by CPAchecker. | HOL provides online searchable manuals, reference documentation and a theory dependency graph, and builds a local reference copy during installation. |
| Purpose | CPAchecker is a tool for configurable software verification based on configurable program analysis concepts. | HOL4 is a proof assistant for higher-order logic and a programming environment for proving theorems and implementing proof tools. |
| Requirements | The download page says Java 21 or later is required as of CPAchecker 4.2. | HOL requires a Standard ML compiler; the installation guide recommends Poly/ML and also lists Moscow ML, with MLTon supported for building tool executables. |
| Support | The project directs installation questions, bug reports, and suggestions to its CPAchecker users mailing list, and also provides an issue tracker. | The community offers help through a mailing list and Zulip chat, while bug reports and feature suggestions go to GitHub issues. |
Plans
In their own words
CPAchecker
CPAchecker is a configurable software verification tool based on configurable program analysis concepts. It accepts C and SV-LIB inputs, lists predicate analysis for SV-LIB programs, and supports invariants, counterexamples, and proof artifacts. It can also validate termination witnesses in YAML formats 2.1 and 1.0. The project lists a hybrid verification method and provides a self-hosted deployment. CPAchecker is free software under the Apache 2.0 License. Version 4.2.2, released in December 2025, is available as Unix and Windows ZIP archives; Debian and Ubuntu users can install it from the SoSy-Lab APT repository, and a Docker image is available. Java 21 or later is required as of version 4.2. An older version, 1.6.1, can be accessed through a web interface, where some functions are unavailable in the restricted environment. Documentation includes installation instructions, tutorials, and getting-started guidance. Installation questions, bug reports, and suggestions can go to the users mailing list or issue tracker. The project is based in Munich, Germany.
HOL4
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.