Skip to content
SPECIFICTION
Get listed

HOL4 vs PVS

HOL4

hol-theorem-prover.org

PVS

pvs.csl.sri.com

Side by side

FigureHOL4PVS
Price fromFreeFree
Free planYesYes
Free trial——
Open source——
WindowsYesYes
macOSYesYes
LinuxYesYes
Self-hostedYes—
Plans published12
Spec score · Formal Verification Tools8.1 (#9)8.3 (#4)
DocumentationHOL provides online searchable manuals, reference documentation and a theory dependency graph, and builds a local reference copy during installation.The site provides system, language, and prover guides, tutorials, examples, and release notes, while noting that manuals may not cover newer features.
PurposeHOL4 is a proof assistant for higher-order logic and a programming environment for proving theorems and implementing proof tools.PVS is a verification system combining a specification language, support tools, and a theorem prover.
SupportThe community offers help through a mailing list and Zulip chat, while bug reports and feature suggestions go to GitHub issues.Support is offered through developer and bug-report email addresses, GitHub issues, Google Groups, and moderated mailing lists.

Plans

HOL4

  • HOL4Free

HOL4 pricing →

PVS

  • PVS (noncommercial)Free
  • PVS (commercial)Priced on request

PVS pricing →

In their own words

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.

Visit hol-theorem-prover.org

PVS

PVS is a mechanized environment for formal specification and verification, intended for work such as mathematical formalization and hardware or algorithm verification. Its language is based on typed higher-order logic and supports predicate subtypes, dependent types, and parameterized theories. The system combines predefined theories, a type checker, interactive theorem prover, symbolic model checker, utilities, libraries, documentation, and examples. Proof support includes induction, rewriting, simplification with decision procedures, abstraction, and symbolic model checking; command-line tools can re-prove theories and libraries in batch mode. PVS also integrates the Yices SMT solver, supports random testing during proofs, and includes PVSio for evaluation and animation. GNU or X Emacs provides the integrated interface, with Tcl/Tk displays for proof trees and theory hierarchies. It runs on Linux, macOS, and Windows and is self-hosted. Noncommercial use is listed at free. Sources are under GPL, but the Allegro runtime has a separate click-through license, and commercial users need a current PVS license or must contact SRI about licensing.

Visit pvs.csl.sri.com