Skip to content
SPECIFICTION
Get listed

Rocq vs Why3

Rocq

rocq-prover.org

Why3

why3.org

Side by side

FigureRocqWhy3
Price fromFreeFree
Free planYesYes
Free trial——
Open source——
WebYesYes
WindowsYesYes
macOSYes—
LinuxYesYes
API—Yes
Self-hosted—Yes
Plans published11
Spec score · Formal Verification Tools8.5 (#3)8.0 (#12)
Editor integrationsThe official VsRocq extension supports Visual Studio Code; the site also documents RocqIDE, Emacs Proof General, and Vim or Neovim Coqtail.Why3 distributions include configuration files for Emacs and Vim, plus shell completion files for bash and zsh.
LicenseThe Rocq Prover is distributed under the GNU Lesser General Public Licence Version 2.1 (LGPL).TryWhy3 is distributed under the GNU Lesser General Public License version 2.1 with a special linking exception.
Program extractionRocq can extract executable programs from specifications to OCaml, Haskell, or Scheme.WhyML programs can be automatically extracted as correct-by-construction OCaml programs.
PurposeRocq Prover is an interactive theorem prover and proof assistant for developing mathematical proofs, formal specifications, programs and proofs that programs meet specifications.Why3 is a platform for deductive program verification that uses WhyML and external theorem provers to discharge verification conditions.
SupportUsers can report installation trouble or extension bugs in the dedicated Rocq Zulip stream.The project provides a user mailing list, a Zulip chat, and a bug tracking system.

Plans

Rocq

  • Rocq ProverFree

Rocq pricing →

Why3

  • Why3Free

Why3 pricing →

In their own words

Rocq

Rocq is a free interactive theorem prover and proof assistant for building mathematical proofs, formal specifications and programs, including proofs that programs meet specifications. Its Gallina language supports specification and mathematical work and is based on the Polymorphic, Cumulative Calculus of Inductive Constructions. A relatively small certification kernel machine-checks proofs. Rocq also offers interactive proof methods, decision and semi-decision algorithms, and a tactic language for defining methods. Certified programs can be extracted to OCaml, Haskell or Scheme, and the system can connect with external computer algebra systems or theorem provers. The Rocq Platform bundles the core prover with libraries and plugins for development and teaching. Its scripts install Rocq and packages on macOS, Windows and many Linux distributions; precompiled installers are available for macOS and Windows, but not Linux. Editor options include the VsRocq Visual Studio Code extension, RocqIDE, Proof General and Coqtail. Rocq is written in OCaml and distributed under the GNU Lesser General Public Licence Version 2.1.

Visit rocq-prover.org

Why3

Why3 is a platform for deductive program verification. It uses WhyML to express programs and specifications, then works with external automated or interactive theorem provers to discharge verification conditions. WhyML supports preconditions, postconditions, assertions, and loop invariants, alongside logical theories and data structures such as arrays, queues, and hash tables. External provers need to be installed and configured separately. Why3 can be extended with support for new provers and used as a software library through its OCaml API. WhyML programs can be extracted automatically into correct-by-construction OCaml programs, and WhyML is also used as an intermediate language for verification of C, Java, Rust, and Ada. TryWhy3 provides a JavaScript version that runs in a browser. Installation options include Opam, Docker, source compilation, and listed Debian, Fedora, and Ubuntu packages. Its graphical interface saves proof attempts and transformations in an XML file and can replay obsolete attempts. Why3 is free and open source under GNU LGPL 2.1 with a special linking exception. Loop invariant inference is a work in progress, and many features remain very limited.

Visit why3.org