Skip to content
Switch branches/tags

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time


FreeSpec is a framework for implementing, certifying, and executing impure computations in Coq.


This repository contains three Coq packages:

  • coq-freespec-core provides the foundation of the FreeSpec formalism.
  • coq-freespec-exec provides the means to execute impure computations implemented with the help of coq-freespec-core.
  • coq-freespec-ffi provides the means to use FreeSpec with coqffi.

The codebase is organized as follows:

  • The Coq definitions of the three theories live in the theories/ directory.
  • The OCaml source of the Coq plugins live in the plugins/ directory.
  • There are examples for the three plugins in the examples/ directory.

Getting Started

coq-freespec-core depends on coq-ext-lib. Besides, coq-freespec-ffi depends on coqffi.

dune build
dune install

Besides, we provide two helper scripts:

  • executes each Coq file living in tests/ and reports any error
  • builds the OCaml and Coq source documentation

Said documentations are published here.

In addition, FreeSpec has been the subject of two academic publications.


FreeSpec is a Free Software, distributed under the terms of the MPLv2. It was initially developed within the the French Cybersecurity Agency (ANSSI).