# Coq Platform 2025.08.0 providing Rocq 9.0.1 (released March 2025) with the preview package pick from July 2025
The [Coq proof assistant](https://coq.inria.fr) provides a formal language
to write mathematical definitions, executable algorithms, and theorems, together
with an environment for semi-interactive development of machine-checked proofs.
The [Coq Platform](https://github.com/coq/platform) is a distribution of the Coq
interactive prover together with a selection of Coq libraries and plugins.
The Coq Platform supports to install several versions of Coq (also in parallel).
This README file is for **Coq Platform 2025.08.0 with Coq 9.0.1**.
The README files for other versions are linked in the main [README](https://github.com/coq/platform/blob/main/README.md).
This version of Rocq Platform 2025.08 includes Rocq 9.0.1 from July 2025.This is a **preview release** of the Rocq Platform for packages maintainers
The OCaml version used is 4.14.2+options ocaml-option-flambda.
The Coq Platform supports four levels of installation extent:
**base**, **IDE**, **full** and **extended** and a few **optional** packages.
The sections below provide a short description of each level and the list of
packages included in each level. Packaged versions of the Coq Platform usually
contain the **extended** set with all optional packages.
**Note on non-free licenses:** The Coq Platform contains software with
**non-free licenses which do not allow commercial use without purchasing a license**,
notably the **coq-compcert** package. Please study the package licenses given
below and verify that they are compatible with your intended use in case you
plan to use these packages.
**Note on license information:**
The license information given below is obtained from opam.
The Coq Platform team does no double check this information.
**Note on multiple licenses:**
In case several licenses are given below, it is not clearly specified what this means.
It could mean that parts of the software use one license while other parts use another license.
It could also mean that you can choose between the given licenses.
Please clarify the details with the homepage of the package.
**Note:** The package list is also available as [CSV](https://github.com/coq/platform/tree/main/doc/PackageTable~9.0.1~2025.08.csv).
**Note:** Click on the triangle to show additional information for a package!
## **Coq Platform 2025.08.0 with Coq 9.0.1 "base level"**
The **base level** is mostly intended as a basis for custom installations using
opam and contains the following package(s):
coq.9.0.1
(9.0.1) Compatibility metapackage for Coq after the Rocq renaming
- authors
- The Rocq development team, INRIA, CNRS, and contributors
- license
- LGPL-2.1-only
- links
-
(homepage)
(bug reports)
(opam package)
- description
dune.3.19.1
(3.19.1) Fast, portable, and opinionated build system
- authors
- Jane Street Group, LLC <opensource@janestreet.com>
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- Dune is a build system that was designed to simplify the release of
Jane Street packages. It reads metadata from \dune\ files following a
very simple s-expression syntax.
Dune is fast, has very low-overhead, and supports parallel builds on
all platforms. It has no system dependencies; all you need to build
dune or packages using dune is OCaml. You don't need make or bash
as long as the packages themselves don't use bash explicitly.
Dune is composable; supporting multi-package development by simply
dropping multiple repositories into the same directory.
Dune also supports multi-context builds, such as building against
several opam roots/switches simultaneously. This helps maintaining
packages across several versions of OCaml and gives cross-compilation
for free.
dune-configurator.3.19.1
(3.19.1) Helper library for gathering system configuration
- authors
- Jane Street Group, LLC <opensource@janestreet.com>
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- dune-configurator is a small library that helps writing OCaml scripts that
test features available on the system, in order to generate config.h
files for instance.
Among other things, dune-configurator allows one to:
- test if a C program compiles
- query pkg-config
- import #define from OCaml header files
- generate config.h file
rocq-stdlib.9.0.0
(9.0.0) The Rocq Proof Assistant -- Standard Library
- authors
- The Rocq development team, INRIA, CNRS, and contributors
- license
- LGPL-2.1-only
- links
-
(homepage)
(bug reports)
(opam package)
- description
- Rocq is a formal proof management system. It provides
a formal language to write mathematical definitions, executable
algorithms and theorems together with an environment for
semi-interactive development of machine-checked proofs.
Typical applications include the certification of properties of
programming languages (e.g. the CompCert compiler certification
project, or the Bedrock verified low-level programming library), the
formalization of mathematics (e.g. the full formalization of the
Feit-Thompson theorem or homotopy type theory) and teaching.
This package includes the Rocq Standard Library, that is to say, the
set of modules usually bound to the Stdlib.* namespace.
## **Coq Platform 2025.08.0 with Coq 9.0.1 "IDE level"**
The **IDE level** adds an interactive development environment to the **base level**.
For beginners, e.g. following introductory tutorials, this level is usually sufficient.
If you install the **IDE level**, you can later add additional packages individually
via `opam install 'package-name'` or rerun the Coq Platform installation script
and choose the full or extended level.
The **IDE level** contains the following package(s):
rocqide.9.0.1
(9.0.1) The Rocq Prover --- GTK3 IDE
- authors
- The Rocq development team, INRIA, CNRS, and contributors
- license
- LGPL-2.1-only
- links
-
(homepage)
(bug reports)
(opam package)
- description
- The Rocq Prover is an interactive theorem prover, or proof assistant. It provides
a formal language to write mathematical definitions, executable
algorithms and theorems together with an environment for
semi-interactive development of machine-checked proofs.
This package provides the RocqIDE, a graphical user interface for the
development of interactive proofs.
vscoq-language-server.2.2.5
(2.2.5) VSCoq language server
- authors
- Enrico Tassi Maxime Dénès Romain Tetley
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- LSP based language server for Coq and its VSCoq user interface
## **Coq Platform 2025.08.0 with Coq 9.0.1 "full level"**
The **full level** adds many commonly used coq libraries, plug-ins and
developments.
The packages in the **full level** are mature, well maintained
and suitable as basis for your own developments.
See the Coq Platform [charter](https://github.com/coq/platform/blob/main/charter.md) for details.
The **full level** contains the following packages:
coq-coqeal.2.1.0
(2.1.0) CoqEAL - The Coq Effective Algebra Library
- authors
- Guillaume Cano - Cyril Cohen - Maxime Dénès - Érik Martin-Dorel - Anders Mörtberg - Damien Rouhling - Pierre Roux - Vincent Siles
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- This Coq library contains a subset of the work that was developed in the context
of the ForMath EU FP7 project (2009-2013). It has two parts:
- theory, which contains developments in algebra including normal forms of matrices,
and optimized algorithms on MathComp data structures.
- refinements, which is a framework to ease change of data representations during a proof.
coq-coqprime.1.6.0
(1.6.0) Certifying prime numbers in Coq
- authors
- Laurent Théry
- license
- LGPL-2.1-only
- links
-
(homepage)
(bug reports)
(opam package)
- description
coq-coqprime-generator.1.1.2
(1.1.2) Certificate generator for prime numbers in Coq
- authors
- Laurent Théry
- license
- LGPL-2.1-only
- links
-
(homepage)
(bug reports)
(opam package)
- description
coq-coquelicot.3.4.4
(3.4.4) A Coq formalization of real analysis compatible with the standard library
- authors
- Sylvie Boldo <sylvie.boldo@inria.fr> - Catherine Lelay <catherine.lelay@inria.fr> - Guillaume Melquiond <guillaume.melquiond@inria.fr>
- license
- LGPL-3.0-or-later
- links
-
(homepage)
(bug reports)
(opam package)
- description
coq-corn.9.0.0
(9.0.0) The Coq Constructive Repository at Nijmegen
- authors
- Evgeny Makarov - Robbert Krebbers - Eelis van der Weegen - Bas Spitters - Jelle Herold - Russell O'Connor - Cezary Kaliszyk - Dan Synek - Luís Cruz-Filipe - Milad Niqui - Iris Loeb - Herman Geuvers - Randy Pollack - Freek Wiedijk - Jan Zwanenburg - Dimitri Hendriks - Henk Barendregt - Mariusz Giero - Rik van Ginneken - Dimitri Hendriks - Sébastien Hinderer - Bart Kirkels - Pierre Letouzey - Lionel Mamane - Nickolay Shmyrev - Vincent Semeria
- license
- GPL-2.0
- links
-
(homepage)
(bug reports)
(opam package)
- description
- CoRN includes the following parts:
- Algebraic Hierarchy
An axiomatic formalization of the most common algebraic
structures, including setoids, monoids, groups, rings,
fields, ordered fields, rings of polynomials, real and
complex numbers
- Model of the Real Numbers
Construction of a concrete real number structure
satisfying the previously defined axioms
- Fundamental Theorem of Algebra
A proof that every non-constant polynomial on the complex
plane has at least one root
- Real Calculus
A collection of elementary results on real analysis,
including continuity, differentiability, integration,
Taylor's theorem and the Fundamental Theorem of Calculus
- Exact Real Computation
Fast verified computation inside Coq. This includes: real numbers, functions,
integrals, graphs of functions, differential equations.
coq-dpdgraph.1.0+9.0
(1.0+9.0) Compute dependencies between Coq objects (definitions, theorems) and produce graphs
- authors
- Anne Pacalet Yves Bertot Olivier Pons
- license
- LGPL-2.1-only
- links
-
(homepage)
(bug reports)
(opam package)
- description
- Coq plugin that extracts the dependencies between Coq objects,
and produces files with dependency information. Includes tools
to visualize dependency graphs and find unused definitions.
coq-ext-lib.0.13.0
(0.13.0) A library of Coq definitions, theorems, and tactics
- authors
- Gregory Malecha
- license
- BSD-2-Clause
- links
-
(homepage)
(bug reports)
(opam package)
- description
- A collection of theories and plugins that may be useful in other Coq developments.
coq-flocq.4.2.1
(4.2.1) A formalization of floating-point arithmetic for the Coq system
- authors
- Sylvie Boldo <sylvie.boldo@inria.fr> - Guillaume Melquiond <guillaume.melquiond@inria.fr>
- license
- LGPL-3.0-or-later
- links
-
(homepage)
(bug reports)
(opam package)
- description
coq-gappa.1.7.1
(1.7.1) A Coq tactic for discharging goals about floating-point arithmetic and round-off errors using the Gappa prover
- authors
- Guillaume Melquiond <guillaume.melquiond@inria.fr>
- license
- LGPL-3.0-or-later
- links
-
(homepage)
(bug reports)
(opam package)
- description
coq-hammer.1.3.2+9.0
(1.3.2+9.0) General-purpose automated reasoning hammer tool for Coq
- authors
- Lukasz Czajka <lukaszcz@mimuw.edu.pl> - Cezary Kaliszyk <cezary.kaliszyk@uibk.ac.at>
- license
- LGPL-2.1-only
- links
-
(homepage)
(bug reports)
(opam package)
- description
- A general-purpose automated reasoning hammer tool for Coq that combines
learning from previous proofs with the translation of problems to the
logics of automated systems and the reconstruction of successfully found proofs.
coq-hammer-tactics.1.3.2+9.0
(1.3.2+9.0) Reconstruction tactics for the hammer for Coq
- authors
- Lukasz Czajka <lukaszcz@mimuw.edu.pl>
- license
- LGPL-2.1-only
- links
-
(homepage)
(bug reports)
(opam package)
- description
- Collection of tactics that are used by the hammer for Coq
to reconstruct proofs found by automated theorem provers. When the hammer
has been successfully applied to a project, only this package needs
to be installed; the hammer plugin is not required.
coq-hott.9.0
(9.0) The Homotopy Type Theory library
- authors
- The HoTT Library Development Team
- license
- BSD-2-Clause
- links
-
(homepage)
(bug reports)
(opam package)
- description
- To use the HoTT library, the following flags must be passed to coqc:
-noinit -indices-matter
To use the HoTT library in a project, add the following to _CoqProject:
-arg -noinit
-arg -indices-matter
coq-interval.4.11.3
(4.11.3) A Coq tactic for proving bounds on real-valued expressions automatically
- authors
- Guillaume Melquiond <guillaume.melquiond@inria.fr> - Érik Martin-Dorel <erik.martin-dorel@irit.fr> - Pierre Roux <pierre.roux@onera.fr> - Thomas Sibut-Pinote <thomas.sibut-pinote@inria.fr>
- license
- CECILL-C
- links
-
(homepage)
(bug reports)
(opam package)
- description
coq-iris.4.4.0
(4.4.0) A Higher-Order Concurrent Separation Logic Framework with support for interactive proofs
- authors
- The Iris Team
- license
- BSD-3-Clause
- links
-
(homepage)
(bug reports)
(opam package)
- description
- Iris is a framework for reasoning about the safety of concurrent programs using
concurrent separation logic. It can be used to develop a program logic, for
defining logical relations, and for reasoning about type systems, among other
applications. This package includes the base logic, Iris Proof Mode (IPM) /
MoSeL, and a general language-independent program logic; see coq-iris-heap-lang
for an instantiation of the program logic to a particular programming language.
coq-iris-heap-lang.4.4.0
(4.4.0) The canonical example language for Iris
- authors
- The Iris Team
- license
- BSD-3-Clause
- links
-
(homepage)
(bug reports)
(opam package)
- description
- This package defines HeapLang, a concurrent lambda calculus with references, and
uses Iris to build a program logic for HeapLang programs.
coq-itauto.8.20.0
(8.20.0) Reflexive SAT solver with Nelson-Oppen support, parameterised by a leaf tactic inside Coq
- authors
- Frédéric Besson
- license
- MIT
- links
-
(homepage)
(bug reports (email), bug reports)
(opam package)
- description
- itauto is a reflexive intuitionistic SAT solver parameterised by a theory module.
When run inside Coq, the theory module wraps an arbitrary Coq tactic, e.g., the lia
solver for linear arithmetic or the congruence solver for uninterpreted function symbols
and constructors. Using a black-box Nelson-Oppen scheme for combination of theories,
itauto also provides an SMT-like tactic for propositional reasoning modulo the solvers for
both arithmetic and function symbols.
coq-math-classes.9.0.0
(9.0.0) A library of abstract interfaces for mathematical structures in Coq
- authors
- Eelis van der Weegen Bas Spitters Robbert Krebbers
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- Math classes is a library of abstract interfaces for mathematical
structures, such as:
* Algebraic hierarchy (groups, rings, fields, …)
* Relations, orders, …
* Categories, functors, universal algebra, …
* Numbers: N, Z, Q, …
* Operations, (shift, power, abs, …)
It is heavily based on Coq’s new type classes in order to provide:
structure inference, multiple inheritance/sharing, convenient
algebraic manipulation (e.g. rewriting) and idiomatic use of
notations.
coq-mathcomp-algebra.2.4.0
(2.4.0) Compatibility package for rocq-mathcomp-algebra
- authors
- The Mathematical Components team
- license
- CECILL-B
- links
-
(homepage)
(bug reports)
(opam package)
- description
coq-mathcomp-algebra-tactics.1.2.7
(1.2.7) Ring, field, lra, nra, and psatz tactics for Mathematical Components
- authors
- Kazuhiko Sakaguchi Pierre Roux
- license
- CECILL-B
- links
-
(homepage)
(bug reports)
(opam package)
- description
- This library provides `ring`, `field`, `lra`, `nra`, and `psatz` tactics for
the Mathematical Components library. These tactics use the algebraic
structures defined in the MathComp library and their canonical instances for
the instance resolution, and do not require any special instance declaration,
like the `Add Ring` and `Add Field` commands. Therefore, each of these tactics
works with any instance of the respective structure, including concrete
instances declared through Hierarchy Builder, abstract instances, and mixed
concrete and abstract instances, e.g., `int * R` where `R` is an abstract
commutative ring. Another key feature of Algebra Tactics is that they
automatically push down ring morphisms and additive functions to leaves of
ring/field expressions before applying the proof procedures.
coq-mathcomp-analysis.1.13.0
(1.13.0) An analysis library for mathematical components
- authors
- Reynald Affeldt - Alessandro Bruni - Yves Bertot - Cyril Cohen - Marie Kerjean - Assia Mahboubi - Damien Rouhling - Pierre Roux - Kazuhiko Sakaguchi - Zachary Stone - Pierre-Yves Strub - Laurent Théry
- license
- CECILL-C
- links
-
(homepage)
(bug reports)
(opam package)
- description
- This package contains a library for real analysis for
the Coq proof-assistant and using the Mathematical Components library.
coq-mathcomp-bigenough.1.0.2
(1.0.2) A small library to do epsilon - N reasoning
- authors
- Cyril Cohen
- license
- CECILL-B
- links
-
(homepage)
(bug reports)
(opam package)
- description
- The package contains a package to reasoning with big enough objects
(mostly natural numbers). This package is essentially for backward
compatibility purposes as `bigenough` will be subsumed by the near
tactics. The formalization is based on the Mathematical Components
library.
coq-mathcomp-character.2.4.0
(2.4.0) Compatibility package for rocq-mathcomp-character
- authors
- The Mathematical Components team
- license
- CECILL-B
- links
-
(homepage)
(bug reports)
(opam package)
- description
coq-mathcomp-field.2.4.0
(2.4.0) Compatibility package for rocq-mathcomp-field
- authors
- The Mathematical Components team
- license
- CECILL-B
- links
-
(homepage)
(bug reports)
(opam package)
- description
coq-mathcomp-fingroup.2.4.0
(2.4.0) Compatibility package for rocq-mathcomp-fingroup
- authors
- The Mathematical Components team
- license
- CECILL-B
- links
-
(homepage)
(bug reports)
(opam package)
- description
coq-mathcomp-multinomials.2.4.0
(2.4.0) A Multivariate polynomial Library for the Mathematical Components Library
- authors
- Pierre-Yves Strub
- license
- CECILL-B
- links
-
(homepage)
(bug reports)
(opam package)
- description
coq-mathcomp-real-closed.2.0.3
(2.0.3) Mathematical Components Library on real closed fields
- authors
- Cyril Cohen Assia Mahboubi
- license
- CECILL-B
- links
-
(homepage)
(bug reports)
(opam package)
- description
- This library contains definitions and theorems about real closed
fields, with a construction of the real closure and the algebraic
closure (including a proof of the fundamental theorem of
algebra). It also contains a proof of decidability of the first
order theory of real closed field, through quantifier elimination.
coq-mathcomp-solvable.2.4.0
(2.4.0) Compatibility package for rocq-mathcomp-solvable
- authors
- The Mathematical Components team
- license
- CECILL-B
- links
-
(homepage)
(bug reports)
(opam package)
- description
coq-mathcomp-ssreflect.2.4.0
(2.4.0) Compatibility package for rocq-mathcomp-ssreflect
- authors
- The Mathematical Components team
- license
- CECILL-B
- links
-
(homepage)
(bug reports)
(opam package)
- description
coq-mathcomp-word.3.2
(3.2) Yet Another Coq Library on Machine Words
- authors
- Pierre-Yves Strub
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
coq-mathcomp-zify.1.5.0+2.0+8.16
(1.5.0+2.0+8.16) Micromega tactics for Mathematical Components
- authors
- Kazuhiko Sakaguchi
- license
- CECILL-B
- links
-
(homepage)
(bug reports)
(opam package)
- description
- This small library enables the use of the Micromega arithmetic solvers of Coq
for goals stated with the definitions of the Mathematical Components library
by extending the zify tactic.
coq-menhirlib.20240715
(20240715) A support library for verified Coq parsers produced by Menhir
- authors
- Jacques-Henri Jourdan <jacques-henri.jourdan@lri.fr>
- license
- LGPL-3.0-or-later
- links
-
(homepage)
(bug reports)
(opam package)
- description
coq-mtac2.1.4+9.0
(1.4+9.0) Typed tactic language for Coq
- authors
- Beta Ziliani <beta.ziliani@gmail.com> - Jan-Oliver Kaiser <janno@mpi-sws.org - Robbert Krebbers <mail@robbertkrebbers.nl> - Yann Régis-Gianas <yrg@pps.univ-paris-diderot.fr>
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
coq-ott.0.34
(0.34) Auxiliary Coq library for Ott, a tool for writing definitions of programming languages and calculi
- authors
- Peter Sewell Francesco Zappa Nardelli Scott Owens
- license
- BSD-3-Clause
- links
-
(homepage)
(bug reports)
(opam package)
- description
- Ott takes as input a definition of a language syntax and semantics, in a concise
and readable ASCII notation that is close to what one would write in informal
mathematics. It can then generate a Coq version of the definition, which requires
this library.
coq-paramcoq.1.1.3+rocq9.0
(1.1.3+rocq9.0) Plugin for generating parametricity statements to perform refinement proofs
- authors
- Chantal Keller (Inria, École polytechnique) - Marc Lasson (ÉNS de Lyon) - Abhishek Anand - Pierre Roux - Emilio Jesús Gallego Arias - Cyril Cohen - Matthieu Sozeau
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- /! Paramcoq is no longer actually maintained and released. It is only
kept as a test case for Rocq's OCaml API. The release for Rocq 9.0
will be the last one and is known to suffer some universe issues
(for instance iit no longer enable to compile CoqEAL). Users are
invited to switch to [coq-elpi](https://github.com/LPCIC/coq-elpi)
derive.param2. One can look at
[CoqEAL](https://github.com/coq-community/coqeal) for an example of
porting. Main current caveat: support for mutual inductives isn't
implemented yet.
A Rocq plugin providing commands for generating parametricity statements.
Typical applications of such statements are in data refinement proofs.
Note that the plugin is still in an experimental state - it is not very user
friendly (lack of good error messages) and still contains bugs. But it
is usable enough to \translate\ a large chunk of the standard library.
coq-quickchick.2.1.1
(2.1.1) Randomized Property-Based Testing for Coq
- authors
- Leonidas Lampropoulos - Zoe Paraskevopoulou - Maxime Denes - Catalin Hritcu - Benjamin Pierce - Li-yao Xia - Arthur Azevedo de Amorim - Yishuai Li - Antal Spector-Zabusky
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- A library for property-based testing in Coq.
- Combinators for testable properties and random generators.
- QuickChick plugin for running tests in a Coq session.
- Includes a mutation testing tool.
coq-reglang.1.2.2
(1.2.2) Representations of regular languages (i.e., regexps, various types of automata, and WS1S) with equivalence proofs, in Coq and MathComp
- authors
- Christian Doczkal Jan-Oliver Kaiser Gert Smolka
- license
- CECILL-B
- links
-
(homepage)
(bug reports)
(opam package)
- description
- This library provides definitions and verified translations between
different representations of regular languages: various forms of
automata (deterministic, nondeterministic, one-way, two-way),
regular expressions, and the logic WS1S. It also contains various
decidability results and closure properties of regular languages.
coq-simple-io.1.11.0
(1.11.0) IO monad for Coq
- authors
- Li-yao Xia Yishuai Li
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- This library provides tools to implement IO programs directly in Coq, in a
similar style to Haskell. Facilities for formal verification are not included.
IO is defined as a parameter with a purely functional interface in Coq,
to be extracted to OCaml. Some wrappers for the basic types and functions in
the OCaml Stdlib module are provided. Users are free to define their own
APIs on top of this IO type.
coq-stdpp.1.12.0
(1.12.0) An extended \Standard Library\ for Coq
- authors
- The std++ team
- license
- BSD-3-Clause
- links
-
(homepage)
(bug reports)
(opam package)
- description
- The key features of this library are as follows:
- It provides a great number of definitions and lemmas for common data
structures such as lists, finite maps, finite sets, and finite multisets.
- It uses type classes for common notations (like `∅`, `∪`, and Haskell-style
monad notations) so that these can be overloaded for different data structures.
- It uses type classes to keep track of common properties of types, like it
having decidable equality or being countable or finite.
- Most data structures are represented in canonical ways so that Leibniz
equality can be used as much as possible (for example, for maps we have
`m1 = m2` iff `∀ i, m1 !! i = m2 !! i`). On top of that, the library provides
setoid instances for most types and operations.
- It provides various tactics for common tasks, like an ssreflect inspired
`done` tactic for finishing trivial goals, a simple breadth-first solver
`naive_solver`, an equality simplifier `simplify_eq`, a solver `solve_proper`
for proving compatibility of functions with respect to relations, and a solver
`set_solver` for goals involving set operations.
- It is entirely dependency- and axiom-free.
coq-unicoq.1.6+8.20
(1.6+8.20) An enhanced unification algorithm for Coq
- authors
- Matthieu Sozeau <matthieu.sozeau@inria.fr> - Beta Ziliani <beta@mpi-sws.org>
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
eprover.3.1
(3.1) E Theorem Prover
- authors
- Stephan Schulz - Simon Cruanes - Petar Vukmirovic - Mohamed Bassem - Martin Moehrmann
- license
- LGPL-2.1-or-later OR GPL-2.0-or-later - see homepage for details
- links
-
(homepage)
(bug reports: Stephan Schulz (see homepage for email))
(opam package)
- description
- E is a theorem prover for first-order and higher-order logic with equality. It accepts a problem specification, typically consisting of a number of first-order clauses or formulas, and a conjecture, in clausal or full first-order/higher-order form. The system will then try to find a formal proof for the conjecture, assuming the axioms.
gappa.1.6.0
(1.6.0) Tool intended for formally proving properties on numerical programs dealing with floating-point or fixed-point arithmetic
- authors
- Guillaume Melquiond
- license
- CECILL-2.1
- links
-
(homepage)
(bug reports)
(opam package)
- description
menhir.20240715
(20240715) An LR(1) parser generator
- authors
- François Pottier <francois.pottier@inria.fr> - Yann Régis-Gianas <yrg@pps.univ-paris-diderot.fr>
- license
- GPL-2.0-only
- links
-
(homepage)
(bug reports)
(opam package)
- description
ott.0.34
(0.34) A tool for writing definitions of programming languages and calculi
- authors
- Peter Sewell Francesco Zappa Nardelli Scott Owens
- license
- BSD-3-Clause
- links
-
(homepage)
(bug reports)
(opam package)
- description
- Ott takes as input a definition of a language syntax and semantics, in a
concise and readable ASCII notation that is close to what one would write in
informal mathematics. It generates output:
- a LaTeX source file that defines commands to build a typeset version of the definition;
- a Coq version of the definition;
- a HOL version of the definition;
- an Isabelle/HOL version of the definition;
- a Lem version of the definition;
- an OCaml version of the syntax of the definition.
Additionally, it can be run as a filter, taking a
LaTeX/Coq/Isabelle/HOL/Lem/OCaml source file
with embedded (symbolic) terms of the defined language, parsing them and
replacing them by typeset terms.
rocq-aac-tactics.9.0.0
(9.0.0) Rocq tactics for rewriting universally quantified equations, modulo associative (and possibly commutative and idempotent) operators
- authors
- Thomas Braibant Damien Pous Fabian Kunze
- license
- LGPL-3.0-or-later
- links
-
(homepage)
(bug reports)
(opam package)
- description
- This Rocq plugin provides tactics for rewriting and proving universally
quantified equations modulo associativity and commutativity of some operator,
with idempotent commutative operators enabling additional simplifications.
The tactics can be applied for custom operators by registering the operators and
their properties as type class instances. Instances for many commonly used operators,
such as for binary integer arithmetic and booleans, are provided with the plugin.
rocq-bignums.9.0.0+rocq9.0
(9.0.0+rocq9.0) Bignums, the Rocq library of arbitrarily large numbers
- authors
- Laurent Théry - Benjamin Grégoire - Arnaud Spiwack - Evgeny Makarov - Pierre Letouzey
- license
- LGPL-2.1-only
- links
-
(homepage)
(bug reports)
(opam package)
- description
- This Rocq library provides BigN, BigZ, and BigQ that used to
be part of the standard library.
rocq-elpi.3.1.0
(3.1.0) Elpi extension language for Coq
- authors
- Enrico Tassi <enrico.tassi@inria.fr>
- license
- LGPL-2.1-or-later
- links
-
(homepage)
(bug reports)
(opam package)
- description
- Coq-elpi provides a Coq plugin that embeds ELPI. It also provides a way to embed Coq's terms into λProlog using the Higher-Order Abstract Syntax approach and a way to read terms back. In addition to that it exports to ELPI a set of Coq's primitives, e.g. printing a message, accessing the environment of theorems and data types, defining a new constant and so on. For convenience it also provides a quotation and anti-quotation for Coq's syntax in λProlog. E.g., `{{nat}}` is expanded to the type name of natural numbers, or `{{A -> B}}` to the representation of a product by unfolding the `->` notation. Finally it provides a way to define new vernacular commands and new tactics.
rocq-equations.1.3.1+9.0
(1.3.1+9.0) A function definition package for Rocq
- authors
- Matthieu Sozeau <matthieu.sozeau@inria.fr> - Cyprien Mangin <cyprien.mangin@m4x.org>
- license
- LGPL-2.1-only
- links
-
(homepage)
(bug reports)
(opam package)
- description
- Equations is a function definition plugin for Rocq, that allows the definition of functions by dependent pattern-matching and well-founded, mutual or nested structural recursion and compiles them into core terms. It automatically derives the clauses equations, the graph of the function and its associated elimination principle.
rocq-hierarchy-builder.1.10.1
(1.10.1) High level commands to declare and evolve a hierarchy based on packed classes
- authors
- Cyril Cohen Kazuhiko Sakaguchi Enrico Tassi
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- Hierarchy Builder is a high level language to build hierarchies of algebraic structures and make these
hierarchies evolve without breaking user code. The key concepts are the ones of factory, builder
and abbreviation that let the hierarchy developer describe an actual interface for their library.
Behind that interface the developer can provide appropriate code to ensure retro compatibility.
rocq-libhyps.4.0
(4.0) Hypotheses manipulation library
- authors
- Pierre Courtieu
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- This library defines a set of tactics to manipulate hypothesis
individually or by group. In particular it allows applying a tactic on
each hypothesis of a goal, or only on *new* hypothesis after some
tactic. Examples of manipulations: automatic renaming, subst, revert,
or any tactic expecting a hypothesis name as argument.
It also provides the especialize tactic to ease forward reasoning by
instantianting one, several or all premisses of a hypothesis.
rocq-mathcomp-finmap.2.2.1
(2.2.1) Finite sets, finite maps, finitely supported functions
- authors
- Cyril Cohen Kazuhiko Sakaguchi
- license
- CECILL-B
- links
-
(homepage)
(bug reports)
(opam package)
- description
- This library is an extension of mathematical component in order to
support finite sets and finite maps on choicetypes (rather that finite
types). This includes support for functions with finite support and
multisets. The library also contains a generic order and set libary,
which will be used to subsume notations for finite sets, eventually.
rocq-relation-algebra.1.8.0
(1.8.0) Relation Algebra and KAT in Rocq
- authors
- Damien Pous <Damien.Pous@ens-lyon.fr> - Christian Doczkal <christian.doczkal@ens-lyon.fr>
- license
- LGPL-3.0-or-later
- links
-
(homepage)
(bug reports)
(opam package)
- description
sexplib.v0.16.0
(v0.16.0) Library for serializing OCaml values to and from S-expressions
- authors
- Jane Street Group, LLC
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- Part of Jane Street's Core library
The Core suite of libraries is an industrial strength alternative to
OCaml's standard library that was developed by Jane Street, the
largest industrial user of OCaml.
z3_tptp.4.13.0
(4.13.0) TPTP front end for Z3 solver
- authors
- MSR
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
## **Coq Platform 2025.08.0 with Coq 9.0.1 "optional packages"**
The **optional** packages have the same maturity and maintenance level as the
packages in the full level, but either take a rather long time to build or have
a **non open source license** or depend on packages with non open source license.
The interactive installation script and the Windows installer explicitly ask
if you want to install these packages.
The macOS and snap installation bundles always include these packages.
The following packages are **optional**:
coq-unimath.20250923
(20250923) Library of Univalent Mathematics
- authors
- The UniMath Development Team
- license
- Similar to MIT license - see homepage for details
- links
-
(homepage)
(bug reports)
(opam package)
- description
## **Coq Platform 2025.08.0 with Coq 9.0.1 "extended level"**
The **extended level** contains packages which are in a beta stage or otherwise
don't yet have the level of maturity or support required for inclusion in the
full level, but there are plans to move them to the full level in a future
release of Coq Platform. The main point of the extended level is advertisement:
users are important to bring a development from a beta to a release state.
The interactive installation script explicitly asks if you want to install these packages.
The macOS and snap installation bundles always include these packages.
The Windows installer also includes them, and they are selected by default.
The **extended level** contains the following packages:
coq-bedrock2.0.0.9
(0.0.9) A work-in-progress language and compiler for verified low-level programming
- authors
- Massachusetts Institute of Technology Kevix SiFive
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- bedrock2 is a low-level systems programming language. This language is
equipped with a simple program logic for proving correctness of the
programs. A verified compiler targeting RISC-V from this language
exists in the coq-bedrock2-compiler package on opam.
The project has similar goals as bedrock, but uses a different design.
No code is shared between bedrock and bedrock2.
coq-bedrock2-compiler.0.0.9
(0.0.9) A work-in-progress language and compiler for verified low-level programming (compiler part)
- authors
- Massachusetts Institute of Technology Kevix SiFive
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- bedrock2 is a low-level systems programming language. This language is
equipped with a simple program logic for proving correctness of the
programs. This package includes a verified compiler targeting RISC-V
from this language.
The project has similar goals as bedrock, but uses a different design.
No code is shared between bedrock and bedrock2.
coq-coqutil.0.0.7
(0.0.7) Coq library for tactics, basic definitions, sets, maps
- authors
- Massachusetts Institute of Technology
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- ### coqutil -- Various Coq Utilities
Contents:
* [Datatypes](https://github.com/mit-plv/coqutil/tree/master/src/coqutil/Datatypes): Some utilities for existing datatypes, and new datatypes.
* [Decidable](https://github.com/mit-plv/coqutil/blob/master/src/coqutil/Decidable.v): `BoolSpec`-based decidability typeclasses. Allows one to write `if MyType_eqb a b then ... else ...` where `MyType_eqb a b` returns a `bool`, instead of writing `if MyType_eq_dec a b then ... else ...` where `MyType_eq_dec a b` returns a `sumbool`, while still getting `a = b` and `a <> b` as hypotheses (as opposed to `MyType_eqb a b = true` and `MyType_eqb a b = false`) after destructing the `if` (need to use [`destr`](https://github.com/mit-plv/coqutil/blob/master/src/coqutil/Tactics/destr.v) instead of `destruct`). So one gets the benefits of `Sumbool` without getting its disadvantage of having to carry around proof terms, which can cause a blow-up under reduction if one is not careful.
* [Map](https://github.com/mit-plv/coqutil/tree/master/src/coqutil/Map): A typeclass based map library allowing one to abstract over the concrete implementation of maps. The implementations have to be extensional, which excludes certain efficient implementations, but simplifies proofs, because one can `replace mapA with mapB` if one can prove that `mapA` and `mapB` have the same contents. Comes with a [solver](https://github.com/mit-plv/coqutil/blob/master/src/coqutil/Map/Solver.v) which works reasonably fast on most map goals we have encountered so far.
* [Tactics](https://github.com/mit-plv/coqutil/tree/master/src/coqutil/Tactics): A collection of useful general-purpose tactics.
* [Word](https://github.com/mit-plv/coqutil/tree/master/src/coqutil/Word): Fixed width words for any width, in the same typeclass based style as the map library. Designed for the case where all words have the same (potentially abstract) bit width. Therefore, it does not provide functions to concatenate and split words, which is better addressed by [bbv](https://github.com/mit-plv/bbv/).
* [Z](https://github.com/mit-plv/coqutil/tree/master/src/coqutil/Z): Utilities to work with the `Z` type from Coq's standard library, including a tactic to prove `Z` equalities by splitting the equality into equalities on bit index ranges, a tactic to make `lia` capable of reasoning about goals with division and modulo, and a tactic to simplify expressions containing nested occurrences of `mod`, and more misc utilities.
* Various macros, notations, and desirable default settings.
Each feature is intended to be as minimal and as independent of the other features as possible, so that users can pick just what they need.
coq-deriving.0.2.2
(0.2.2) Generic instances of MathComp classes
- authors
- Arthur Azevedo de Amorim
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- Deriving provides generic instances of MathComp classes for
inductive data types. It includes native support for eqType,
choiceType, countType and finType instances, and it allows users to
define their own instances for other classes.
coq-extructures.0.5.0
(0.5.0) Finite sets, maps, and other data structures with extensional reasoning
- authors
- Arthur Azevedo de Amorim
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
coq-fiat-crypto.0.1.6
(0.1.6) Cryptographic Primitive Code Generation by Fiat
- authors
- Andres Erbsen <andreser@mit.edu> - Google Inc. - Jade Philipoom <jadep@mit.edu> <jade.philipoom@gmail.com> - Massachusetts Institute of Technology - Zoe Paraskevopoulou <zoe.paraskevopoulou@gmail.com>
- license
- MIT OR Apache-2.0 OR BSD-1-Clause - see homepage for details
- links
-
(homepage)
(bug reports)
(opam package)
- description
- Coq code and proofs for a command-line binary that can synthesize proven-correct
big-integer modular field arithmetic operations for cryptography.
Target languages include C, Rust, Zig, Go, and bedrock2.
coq-record-update.0.3.6
(0.3.6) Generic support for updating record fields in Coq
- authors
- Tej Chajed
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- While Coq provides projections for each field of a record, it has no
convenient way to update a single field of a record. This library provides a
generic way to update a field by name, where the user only has to implement a
simple typeclass that lists out the record fields.
coq-reduction-effects.0.1.6
(0.1.6) A Coq plugin to add reduction side effects to some Coq reduction strategies
- authors
- Hugo Herbelin
- license
- MPL-2.0
- links
-
(homepage)
(bug reports)
(opam package)
- description
coq-rewriter.0.0.12
(0.0.12) Reflective PHOAS rewriting/pattern-matching-compilation framework for simply-typed equalities and let-lifting, experimental and tailored for use in Fiat Cryptography
- authors
- Google Inc. Massachusetts Institute of Technology
- license
- MIT OR Apache-2.0 OR BSD-1-Clause - see homepage for details
- links
-
(homepage)
(bug reports)
(opam package)
- description
coq-riscv.0.0.6
(0.0.6) RISC-V Specification in Coq, somewhat experimental
- authors
- Massachusetts Institute of Technology
- license
- BSD-3-Clause
- links
-
(homepage)
(bug reports)
(opam package)
- description
coq-rupicola.0.0.11
(0.0.11) Gallina to imperative code compilation, currently in design phase
- authors
- Clément Pit-Claudel <clement.pitclaudel@live.com> - Jade Philipoom - Dustin Jamner - Andres Erbsen - Adam Chlipala
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
rocq-metarocq.1.4+9.0.1
(1.4+9.0.1) A meta-programming framework for Rocq
- authors
- Abhishek Anand <aa755@cs.cornell.edu> - Danil Annenkov <danil.v.annenkov@gmail.com> - Simon Boulier <simon.boulier@inria.fr> - Cyril Cohen <cyril.cohen@inria.fr> - Yannick Forster <forster@ps.uni-saarland.de> - Jason Gross <jgross@mit.edu> - Fabian Kunze <fkunze@fakusb.de> - Meven Lennon-Bertrand <Meven.Bertrand@univ-nantes.fr> - Kenji Maillard <kenji.maillard@inria.fr> - Gregory Malecha <gmalecha@gmail.com> - Jakob Botsch Nielsen <Jakob.botsch.nielsen@gmail.com> - Matthieu Sozeau <matthieu.sozeau@inria.fr> - Nicolas Tabareau <nicolas.tabareau@inria.fr> - Théo Winterhalter <theo.winterhalter@inria.fr>
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- MetaRocq is a meta-programming framework for Rocq.
The meta-package includes the template-rocq library,
the PCUIC development including a verified equivalence between Rocq and PCUIC,
a safe type checker and verified erasure for PCUIC and example translations.
See individual packages for more detailed descriptions.
## **Dependency packages**
In addition the dependencies listed below are partially or fully included or required during build time.
Please note, that the version numbers given are the versions of opam packages,
which do not always match with the version of the supplied packages.
E.g. some opam packages just refer to latest packages e.g. installed by MacPorts,
Homebrew or Linux system package managers.
Please refer to the linked opam package and/or your system package manager for details on what software version is used.
atd.3.0.1
(3.0.1) Parser for the ATD data format description language
- authors
- Martin Jambon <martin@mjambon.com> - Martin Jambon <martin@r2c.dev> - Rudi Grinberg <rudi.grinberg@gmail.com> - Martin Jambon <github@mjambon.com> - Alexandre Bourquelot <alexandre.bourquelot@ahrefs.com> - oleksiy <oleksiy.golovko@ahrefs.com> - Ivan Jager <aij+git@mrph.org> - Martin Jambon <martin@semgrep.com> - Gregoire Lionnet <gregoire.lionnet@ahrefs.com> - Sebastien Mondet <sebastien.mondet@ahrefs.com> - David Sheets <sheets@alum.mit.edu> - Rudi Grinberg <me@rgrinberg.com> - Martin Jambon <martin@esper.com> - Rytis Jonynas <rytis.jonynas@ahrefs.com> - Jeff Meister <nanaki@gmail.com> - Raman Varabets <roman.vorobets@gmail.com> - Carmelo Piccione <carmelo.piccione@gmail.com> - Louis <louis.roche@ahrefs.com> - Caio Wakamatsu <caio.wakamatsu@ahrefs.com> - Marek Kubica <marek@tarides.com> - Daniel Weil <danweil68@gmail.com> - Egor Chemokhonenko <egor.chemohonenko@ahrefs.com> - Gabriel Scherer <gabriel.scherer@gmail.com> - Javier Chavarri <javier.chavarri@gmail.com> - Louis Roché (Ahrefs) <louis.roche@ahrefs.com> - Matthew McQuaid <matthew@returntocorp.com> - Raman Varabets <raman+git@ahrefs.com> - koonwen <koonwen@gmail.com> - tzm <frank@boldsolutions.de> - Mathieu Baudet <mathieubaudet@fb.com> - Oleksiy Golovko <alexei.golovko@gmail.com> - Rauan Mayemir <rauan@mayemir.io> - Seb Mondet <seb@mondet.org> - Alexandre Bourquelot <alexandre.bourquelot@gmail.com> - Carmelo Piccione <cep1@solvuu.com> - Hyeseong Kim <hey@hyeseong.kim> - John Billings <john@monkeynut.org> - Louis Roché <louis@louisroche.net> - Mathieu Barbin <mathieu.barbin@gmail.com> - Zach Yannes <zach@returntocorp.com> - Antonin Décimo <antonin@tarides.com> - Brendan Long <self@brendanlong.com> - Chris Yocum <cyocum@gmail.com> - Kate <kit.ty.kate@disroot.org> - Louis Roché <louis.roche@ahrefs.com> - Pavel Antoshkin <pavel.antoshkin@ahrefs.com> - Pierre Boutillier <pierre.boutillier@laposte.net> - Shon Feder <shon.feder@key.me> - metanivek <metanivek@gmail.com> - sebastiantoh <sebas.tsj.98@gmail.com> - Anurag Soni <anuragsoni.13@gmail.com> - Arjun Ravi Narayan <arjunravinarayan@gmail.com> - Asya-kawai <kawai-toshiki@aintek.xyz> - Christophe Troestler <christophe.Troestler@umons.ac.be> - Corentin Leruth <corentin.leruth@gmail.com> - Damien Doligez <ddoligez@janestreet.com> - Daniel M <dan.mntg@gmail.com> - Ding Xiang Fei <dingxiangfei2009@protonmail.ch> - Enrico Tassi <Enrico.Tassi@Inria.fr> - François Pottier <francois.pottier@inria.fr> - Javier Chávarri <javier.chavarri@gmail.com> - Jonas Bergler <jonas@bergler.name> - Kate <kit-ty-kate@exn.st> - Koon Wen Lee <koonwen@gmail.com> - Louis <mail+github@louisroche.net> - Louis Roché <louis@cryptosense.com> - Stephane Legrand <slegrand45@gmail.com> - Vincent Bernardoff <vb@luminar.eu.org> - Zach <zachyannes@gmail.com> - haoyang <haoyang@esper.co> - pmundkur <prashanth.mundkur@gmail.com> - rr0gi <igor@ahrefs.com> - ygrek <ygrek@autistici.org>
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- ATD is the OCaml library providing a parser for the ATD language and various
utilities. ATD stands for Adjustable Type Definitions in reference to its main
property of supporting annotations that allow a good fit with a variety of data
formats. This package also provides the 'atdcat' and 'atddiff' command-line
utilities.
atdgen.3.0.1
(3.0.1) Generates efficient JSON serializers, deserializers and validators
- authors
- Martin Jambon <martin@mjambon.com> - Martin Jambon <martin@r2c.dev> - Rudi Grinberg <rudi.grinberg@gmail.com> - Martin Jambon <github@mjambon.com> - Alexandre Bourquelot <alexandre.bourquelot@ahrefs.com> - oleksiy <oleksiy.golovko@ahrefs.com> - Ivan Jager <aij+git@mrph.org> - Martin Jambon <martin@semgrep.com> - Gregoire Lionnet <gregoire.lionnet@ahrefs.com> - Sebastien Mondet <sebastien.mondet@ahrefs.com> - David Sheets <sheets@alum.mit.edu> - Rudi Grinberg <me@rgrinberg.com> - Martin Jambon <martin@esper.com> - Rytis Jonynas <rytis.jonynas@ahrefs.com> - Jeff Meister <nanaki@gmail.com> - Raman Varabets <roman.vorobets@gmail.com> - Carmelo Piccione <carmelo.piccione@gmail.com> - Louis <louis.roche@ahrefs.com> - Caio Wakamatsu <caio.wakamatsu@ahrefs.com> - Marek Kubica <marek@tarides.com> - Daniel Weil <danweil68@gmail.com> - Egor Chemokhonenko <egor.chemohonenko@ahrefs.com> - Gabriel Scherer <gabriel.scherer@gmail.com> - Javier Chavarri <javier.chavarri@gmail.com> - Louis Roché (Ahrefs) <louis.roche@ahrefs.com> - Matthew McQuaid <matthew@returntocorp.com> - Raman Varabets <raman+git@ahrefs.com> - koonwen <koonwen@gmail.com> - tzm <frank@boldsolutions.de> - Mathieu Baudet <mathieubaudet@fb.com> - Oleksiy Golovko <alexei.golovko@gmail.com> - Rauan Mayemir <rauan@mayemir.io> - Seb Mondet <seb@mondet.org> - Alexandre Bourquelot <alexandre.bourquelot@gmail.com> - Carmelo Piccione <cep1@solvuu.com> - Hyeseong Kim <hey@hyeseong.kim> - John Billings <john@monkeynut.org> - Louis Roché <louis@louisroche.net> - Mathieu Barbin <mathieu.barbin@gmail.com> - Zach Yannes <zach@returntocorp.com> - Antonin Décimo <antonin@tarides.com> - Brendan Long <self@brendanlong.com> - Chris Yocum <cyocum@gmail.com> - Kate <kit.ty.kate@disroot.org> - Louis Roché <louis.roche@ahrefs.com> - Pavel Antoshkin <pavel.antoshkin@ahrefs.com> - Pierre Boutillier <pierre.boutillier@laposte.net> - Shon Feder <shon.feder@key.me> - metanivek <metanivek@gmail.com> - sebastiantoh <sebas.tsj.98@gmail.com> - Anurag Soni <anuragsoni.13@gmail.com> - Arjun Ravi Narayan <arjunravinarayan@gmail.com> - Asya-kawai <kawai-toshiki@aintek.xyz> - Christophe Troestler <christophe.Troestler@umons.ac.be> - Corentin Leruth <corentin.leruth@gmail.com> - Damien Doligez <ddoligez@janestreet.com> - Daniel M <dan.mntg@gmail.com> - Ding Xiang Fei <dingxiangfei2009@protonmail.ch> - Enrico Tassi <Enrico.Tassi@Inria.fr> - François Pottier <francois.pottier@inria.fr> - Javier Chávarri <javier.chavarri@gmail.com> - Jonas Bergler <jonas@bergler.name> - Kate <kit-ty-kate@exn.st> - Koon Wen Lee <koonwen@gmail.com> - Louis <mail+github@louisroche.net> - Louis Roché <louis@cryptosense.com> - Stephane Legrand <slegrand45@gmail.com> - Vincent Bernardoff <vb@luminar.eu.org> - Zach <zachyannes@gmail.com> - haoyang <haoyang@esper.co> - pmundkur <prashanth.mundkur@gmail.com> - rr0gi <igor@ahrefs.com> - ygrek <ygrek@autistici.org>
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- Atdgen is a command-line program that takes as input type definitions in the ATD
syntax and produces OCaml code suitable for data serialization and
deserialization.
Two data formats are currently supported, these are biniou and JSON.
Atdgen-biniou and Atdgen-json will refer to Atdgen used in one context or the
other.
Atdgen was designed with efficiency and durability in mind. Software authors are
encouraged to use Atdgen directly and to write tools that may reuse part of
Atdgen’s source code.
atdgen-runtime.3.0.1
(3.0.1) Runtime library for code generated by atdgen
- authors
- Martin Jambon <martin@mjambon.com> - Martin Jambon <martin@r2c.dev> - Rudi Grinberg <rudi.grinberg@gmail.com> - Martin Jambon <github@mjambon.com> - Alexandre Bourquelot <alexandre.bourquelot@ahrefs.com> - oleksiy <oleksiy.golovko@ahrefs.com> - Ivan Jager <aij+git@mrph.org> - Martin Jambon <martin@semgrep.com> - Gregoire Lionnet <gregoire.lionnet@ahrefs.com> - Sebastien Mondet <sebastien.mondet@ahrefs.com> - David Sheets <sheets@alum.mit.edu> - Rudi Grinberg <me@rgrinberg.com> - Martin Jambon <martin@esper.com> - Rytis Jonynas <rytis.jonynas@ahrefs.com> - Jeff Meister <nanaki@gmail.com> - Raman Varabets <roman.vorobets@gmail.com> - Carmelo Piccione <carmelo.piccione@gmail.com> - Louis <louis.roche@ahrefs.com> - Caio Wakamatsu <caio.wakamatsu@ahrefs.com> - Marek Kubica <marek@tarides.com> - Daniel Weil <danweil68@gmail.com> - Egor Chemokhonenko <egor.chemohonenko@ahrefs.com> - Gabriel Scherer <gabriel.scherer@gmail.com> - Javier Chavarri <javier.chavarri@gmail.com> - Louis Roché (Ahrefs) <louis.roche@ahrefs.com> - Matthew McQuaid <matthew@returntocorp.com> - Raman Varabets <raman+git@ahrefs.com> - koonwen <koonwen@gmail.com> - tzm <frank@boldsolutions.de> - Mathieu Baudet <mathieubaudet@fb.com> - Oleksiy Golovko <alexei.golovko@gmail.com> - Rauan Mayemir <rauan@mayemir.io> - Seb Mondet <seb@mondet.org> - Alexandre Bourquelot <alexandre.bourquelot@gmail.com> - Carmelo Piccione <cep1@solvuu.com> - Hyeseong Kim <hey@hyeseong.kim> - John Billings <john@monkeynut.org> - Louis Roché <louis@louisroche.net> - Mathieu Barbin <mathieu.barbin@gmail.com> - Zach Yannes <zach@returntocorp.com> - Antonin Décimo <antonin@tarides.com> - Brendan Long <self@brendanlong.com> - Chris Yocum <cyocum@gmail.com> - Kate <kit.ty.kate@disroot.org> - Louis Roché <louis.roche@ahrefs.com> - Pavel Antoshkin <pavel.antoshkin@ahrefs.com> - Pierre Boutillier <pierre.boutillier@laposte.net> - Shon Feder <shon.feder@key.me> - metanivek <metanivek@gmail.com> - sebastiantoh <sebas.tsj.98@gmail.com> - Anurag Soni <anuragsoni.13@gmail.com> - Arjun Ravi Narayan <arjunravinarayan@gmail.com> - Asya-kawai <kawai-toshiki@aintek.xyz> - Christophe Troestler <christophe.Troestler@umons.ac.be> - Corentin Leruth <corentin.leruth@gmail.com> - Damien Doligez <ddoligez@janestreet.com> - Daniel M <dan.mntg@gmail.com> - Ding Xiang Fei <dingxiangfei2009@protonmail.ch> - Enrico Tassi <Enrico.Tassi@Inria.fr> - François Pottier <francois.pottier@inria.fr> - Javier Chávarri <javier.chavarri@gmail.com> - Jonas Bergler <jonas@bergler.name> - Kate <kit-ty-kate@exn.st> - Koon Wen Lee <koonwen@gmail.com> - Louis <mail+github@louisroche.net> - Louis Roché <louis@cryptosense.com> - Stephane Legrand <slegrand45@gmail.com> - Vincent Bernardoff <vb@luminar.eu.org> - Zach <zachyannes@gmail.com> - haoyang <haoyang@esper.co> - pmundkur <prashanth.mundkur@gmail.com> - rr0gi <igor@ahrefs.com> - ygrek <ygrek@autistici.org>
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- This package should be used only in conjunction with the atdgen code
generator
atdts.3.0.1
(3.0.1) TypeScript code generation for ATD APIs
- authors
- Martin Jambon <martin@mjambon.com> - Martin Jambon <martin@r2c.dev> - Rudi Grinberg <rudi.grinberg@gmail.com> - Martin Jambon <github@mjambon.com> - Alexandre Bourquelot <alexandre.bourquelot@ahrefs.com> - oleksiy <oleksiy.golovko@ahrefs.com> - Ivan Jager <aij+git@mrph.org> - Martin Jambon <martin@semgrep.com> - Gregoire Lionnet <gregoire.lionnet@ahrefs.com> - Sebastien Mondet <sebastien.mondet@ahrefs.com> - David Sheets <sheets@alum.mit.edu> - Rudi Grinberg <me@rgrinberg.com> - Martin Jambon <martin@esper.com> - Rytis Jonynas <rytis.jonynas@ahrefs.com> - Jeff Meister <nanaki@gmail.com> - Raman Varabets <roman.vorobets@gmail.com> - Carmelo Piccione <carmelo.piccione@gmail.com> - Louis <louis.roche@ahrefs.com> - Caio Wakamatsu <caio.wakamatsu@ahrefs.com> - Marek Kubica <marek@tarides.com> - Daniel Weil <danweil68@gmail.com> - Egor Chemokhonenko <egor.chemohonenko@ahrefs.com> - Gabriel Scherer <gabriel.scherer@gmail.com> - Javier Chavarri <javier.chavarri@gmail.com> - Louis Roché (Ahrefs) <louis.roche@ahrefs.com> - Matthew McQuaid <matthew@returntocorp.com> - Raman Varabets <raman+git@ahrefs.com> - koonwen <koonwen@gmail.com> - tzm <frank@boldsolutions.de> - Mathieu Baudet <mathieubaudet@fb.com> - Oleksiy Golovko <alexei.golovko@gmail.com> - Rauan Mayemir <rauan@mayemir.io> - Seb Mondet <seb@mondet.org> - Alexandre Bourquelot <alexandre.bourquelot@gmail.com> - Carmelo Piccione <cep1@solvuu.com> - Hyeseong Kim <hey@hyeseong.kim> - John Billings <john@monkeynut.org> - Louis Roché <louis@louisroche.net> - Mathieu Barbin <mathieu.barbin@gmail.com> - Zach Yannes <zach@returntocorp.com> - Antonin Décimo <antonin@tarides.com> - Brendan Long <self@brendanlong.com> - Chris Yocum <cyocum@gmail.com> - Kate <kit.ty.kate@disroot.org> - Louis Roché <louis.roche@ahrefs.com> - Pavel Antoshkin <pavel.antoshkin@ahrefs.com> - Pierre Boutillier <pierre.boutillier@laposte.net> - Shon Feder <shon.feder@key.me> - metanivek <metanivek@gmail.com> - sebastiantoh <sebas.tsj.98@gmail.com> - Anurag Soni <anuragsoni.13@gmail.com> - Arjun Ravi Narayan <arjunravinarayan@gmail.com> - Asya-kawai <kawai-toshiki@aintek.xyz> - Christophe Troestler <christophe.Troestler@umons.ac.be> - Corentin Leruth <corentin.leruth@gmail.com> - Damien Doligez <ddoligez@janestreet.com> - Daniel M <dan.mntg@gmail.com> - Ding Xiang Fei <dingxiangfei2009@protonmail.ch> - Enrico Tassi <Enrico.Tassi@Inria.fr> - François Pottier <francois.pottier@inria.fr> - Javier Chávarri <javier.chavarri@gmail.com> - Jonas Bergler <jonas@bergler.name> - Kate <kit-ty-kate@exn.st> - Koon Wen Lee <koonwen@gmail.com> - Louis <mail+github@louisroche.net> - Louis Roché <louis@cryptosense.com> - Stephane Legrand <slegrand45@gmail.com> - Vincent Bernardoff <vb@luminar.eu.org> - Zach <zachyannes@gmail.com> - haoyang <haoyang@esper.co> - pmundkur <prashanth.mundkur@gmail.com> - rr0gi <igor@ahrefs.com> - ygrek <ygrek@autistici.org>
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- TypeScript code generation for ATD APIs
base-bigarray.base
(base)
- authors
- license
- unknown - please clarify with homepage
- links
-
(opam package)
- description
- Bigarray library distributed with the OCaml compiler
base-threads.base
(base)
- authors
- license
- unknown - please clarify with homepage
- links
-
(opam package)
- description
- Threads library distributed with the OCaml compiler
base-unix.base
(base)
- authors
- license
- unknown - please clarify with homepage
- links
-
(opam package)
- description
- Unix library distributed with the OCaml compiler
base.v0.16.4
(v0.16.4) Full standard library replacement for OCaml
- authors
- Jane Street Group, LLC
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- Full standard library replacement for OCaml
Base is a complete and portable alternative to the OCaml standard
library. It provides all standard functionalities one would expect
from a language standard library. It uses consistent conventions
across all of its module.
Base aims to be usable in any context. As a result system dependent
features such as I/O are not offered by Base. They are instead
provided by companion libraries such as stdio:
https://github.com/janestreet/stdio
biniou.1.2.2
(1.2.2) Binary data format designed for speed, safety, ease of use and backward compatibility as protocols evolve
- authors
- Martin Jambon
- license
- BSD-3-Clause
- links
-
(homepage)
(bug reports)
(opam package)
- description
- Biniou (pronounced \be new\) is a binary data format designed for speed, safety,
ease of use and backward compatibility as protocols evolve. Biniou is vastly
equivalent to JSON in terms of functionality but allows implementations several
times faster (4 times faster than yojson), with 25-35% space savings.
Biniou data can be decoded into human-readable form without knowledge of type
definitions except for field and variant names which are represented by 31-bit
hashes. A program named bdump is provided for routine visualization of biniou
data files.
The program atdgen is used to derive OCaml-Biniou serializers and deserializers
from type definitions.
Biniou format specification: mjambon.github.io/atdgen-doc/biniou-format.txt
cairo2.0.6.5
(0.6.5) Binding to Cairo, a 2D Vector Graphics Library
- authors
- Christophe Troestler <Christophe.Troestler@umons.ac.be> - Pierre Hauweele <pierre@hauweele.net>
- license
- LGPL-3.0-or-later
- links
-
(homepage)
(bug reports)
(opam package)
- description
- This is a binding to Cairo, a 2D graphics library with support for
multiple output devices. Currently supported output targets include
the X Window System, Quartz, Win32, image buffers, PostScript, PDF,
and SVG file output.
camlp-streams.5.0.1
(5.0.1) The Stream and Genlex libraries for use with Camlp4 and Camlp5
- authors
- Daniel de Rauglaudre Xavier Leroy
- license
- LGPL-2.1-only WITH OCaml-LGPL-linking-exception - see homepage for details
- links
-
(homepage)
(bug reports)
(opam package)
- description
- This package provides two library modules:
- Stream: imperative streams, with in-place update and memoization
of the latest element produced.
- Genlex: a small parameterized lexical analyzer producing streams
of tokens from streams of characters.
The two modules are designed for use with Camlp4 and Camlp5:
- The stream patterns and stream expressions of Camlp4/Camlp5 consume
and produce data of type 'a Stream.t.
- The Genlex tokenizer can be used as a simple lexical analyzer for
Camlp4/Camlp5-generated parsers.
The Stream module can also be used by hand-written recursive-descent
parsers, but is not very convenient for this purpose.
The Stream and Genlex modules have been part of the OCaml standard library
for a long time, and have been distributed as part of the core OCaml system.
They will be removed from the OCaml standard library at some future point,
but will be maintained and distributed separately in this camlpstreams package.
cmdliner.2.1.0
(2.1.0) Declarative definition of command line interfaces for OCaml
- authors
- The cmdliner programmers
- license
- ISC
- links
-
(homepage)
(bug reports)
(opam package)
- description
- Cmdliner allows the declarative definition of command line interfaces
for OCaml.
It provides a simple and compositional mechanism to convert command
line arguments to OCaml values and pass them to your functions. The
module automatically handles command line completion, syntax errors,
help messages and UNIX man page generation. It supports programs with
single or multiple commands and respects most of the [POSIX] and [GNU]
conventions.
Cmdliner has no dependencies and is distributed under the ISC license.
Homepage: <http://erratique.ch/software/cmdliner>
[POSIX]: http://pubs.opengroup.org/onlinepubs/009695399/basedefs/xbd_chap12.html
[GNU]: http://www.gnu.org/software/libc/manual/html_node/Argument-Syntax.html
adwaita-icon-theme.2
(2) Virtual package relying on adwaita-icon-theme
- authors
- GNOME devs
- license
- LGPL-3.0-only CC-BY-SA-3.0
- links
-
(homepage)
(bug reports)
(opam package)
- description
- This package can only install if the adwaita-icon-theme package is installed on the system.
autoconf.0.2
(0.2) Virtual package relying on autoconf installation
- authors
- https://www.gnu.org/software/autoconf/autoconf.html#maintainer
- license
- GPL-3.0-only
- links
-
(homepage)
(bug reports)
(opam package)
- description
- This package can only install if the autoconf command
is available on the system.
automake.1
(1) Virtual package relying on GNU automake
- authors
- Jim Meyering - David J. MacKenzie - https://git.savannah.gnu.org/cgit/automake.git/tree/THANKS
- license
- GPL-2.0-or-later
- links
-
(homepage)
(bug reports)
(opam package)
- description
- This package can only install if GNU automake is installed on the system.
boost.1
(1) Virtual package relying on boost
- authors
- Beman Dawes, David Abrahams, et al.
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- This package can only install if the boost library is installed on the system.
c++.1.0
(1.0) Virtual package relying on the c++ compiler
- authors
- C++ compiler developers
- license
- GPL-2.0-or-later
- links
-
(homepage)
(bug reports)
(opam package)
- description
- This package can only install if the c++ compiler is installed on the system.
cairo.1
(1) Virtual package relying on a Cairo system installation
- authors
- Keith Packard Carl Worth Behdad Esfahbod
- license
- LGPL-2.1-only MPL-1.1
- links
-
(homepage)
(bug reports)
(opam package)
- description
- This package can only install if the cairo lib is installed on the system.
findutils.1
(1) Virtual package relying on findutils
- authors
- GNU Project
- license
- GPL-3.0-or-later
- links
-
(homepage)
(bug reports)
(opam package)
- description
- This package can only install if the findutils binary is installed on the system.
g++.1.0
(1.0) Virtual package relying on the g++ compiler (for C++)
- authors
- Francois Berenger
- license
- GPL-2.0-or-later
- links
-
(homepage)
(bug reports)
(opam package)
- description
- This package can only install if the g++ compiler is installed on the system.
gcc.1.0
(1.0) Virtual package relying on the gcc compiler (for C)
- authors
- Francois Berenger Francois Bobot
- license
- GPL-2.0-or-later
- links
-
(homepage)
(bug reports)
(opam package)
- description
- This package can only install if the gcc compiler is installed on the system.
gmp.5
(5) Virtual package relying on a GMP lib system installation
- authors
- nbraud
- license
- GPL-1.0-or-later
- links
-
(homepage)
(bug reports)
(opam package)
- description
- This package can only install if the GMP lib is installed on the system.
gtk3.18
(18) Virtual package relying on GTK+ 3
- authors
- The GTK Toolkit
- license
- unknown - please clarify with homepage
- links
-
(homepage)
(bug reports)
(opam package)
- description
- This package can only install if GTK+ 3 is installed on the system.
gtksourceview3.0+2
(0+2) Virtual package relying on a GtkSourceView-3 system installation
- authors
- The gtksourceview programmers
- license
- LGPL-2.1-or-later
- links
-
(homepage)
(bug reports)
(opam package)
- description
- This package can only install if libgtksourceview-3.0-dev is installed on the system.
libtool.1
(1) Virtual package relying on libtool installation
- authors
- https://www.gnu.org/software/libtool/libtool.html#maintainer
- license
- GPL-3.0-only
- links
-
(homepage)
(bug reports)
(opam package)
- description
- This package can only install if the libtool command
is available on the system.
linux-libc-dev.0
(0) Virtual package relying on the installation of the Linux kernel headers files
- authors
- Markus W. Weissmann <markus.weissmann@in.tum.de>
- license
- GPL-2.0-only
- links
-
(homepage)
(bug reports)
(opam package)
- description
- This package can only install if the kernel headers for user space applications are installed on the system.
mpfr.3
(3) Virtual package relying on library MPFR installation
- authors
- http://www.mpfr.org/credit.html
- license
- LGPL-2.0-or-later
- links
-
(homepage)
(bug reports)
(opam package)
- description
- This package can only install if the MPFR library is installed on the system.
pkg-config.4
(4) Check if pkg-config is installed and create an opam switch local pkgconfig folder
- authors
- Francois Berenger
- license
- GPL-1.0-or-later
- links
-
(homepage)
(bug reports)
(opam package)
- description
- This package can only install if the pkg-config package is installed
on the system.
python-3.9.0.0
(9.0.0) Virtual package relying on Python-3 installation
- authors
- Python Software Foundation
- license
- PSF-2.0
- links
-
(homepage)
(bug reports)
(opam package)
- description
- This package can only install if a Python-3 interpreter is available
on the system.
If a minor version needs to be specified for your operating system, then
python-3.9 will be used.
coq-bignums.9.0.0+rocq9.0
(9.0.0+rocq9.0) Compatibility wrapper for rocq-bignums
- authors
- Laurent Théry - Benjamin Grégoire - Arnaud Spiwack - Evgeny Makarov - Pierre Letouzey
- license
- LGPL-2.1-only
- links
-
(homepage)
(bug reports)
(opam package)
- description
coq-core.9.0.1
(9.0.1) Compatibility binaries for Coq after the Rocq renaming
- authors
- The Rocq development team, INRIA, CNRS, and contributors
- license
- LGPL-2.1-only
- links
-
(homepage)
(bug reports)
(opam package)
- description
- The Rocq Prover is an interactive theorem prover, or proof assistant. It provides
a formal language to write mathematical definitions, executable
algorithms and theorems together with an environment for
semi-interactive development of machine-checked proofs.
Typical applications include the certification of properties of
programming languages (e.g. the CompCert compiler certification
project, or the Bedrock verified low-level programming library), the
formalization of mathematics (e.g. the full formalization of the
Feit-Thompson theorem or homotopy type theory) and teaching.
This package includes compatibility binaries to call Rocq
through previous Coq commands like coqc coqtop,...
coq-elpi.3.1.0
(3.1.0) Compatibility metapackage for Elpi extension language after the Rocq renaming
- authors
- Enrico Tassi <enrico.tassi@inria.fr>
- license
- LGPL-2.1-or-later
- links
-
(homepage)
(bug reports)
(opam package)
- description
coq-equations.1.3.1+9.0
(1.3.1+9.0) Compatibility package, see rocq-equations
- authors
- Matthieu Sozeau <matthieu.sozeau@inria.fr>
- license
- LGPL-2.1-only
- links
-
(homepage)
(bug reports)
(opam package)
- description
coq-hierarchy-builder.1.10.1
(1.10.1) Compatibility package for rocq-hierarchy-builder
- authors
- Cyril Cohen Kazuhiko Sakaguchi Enrico Tassi
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
coqide-server.9.0.1
(9.0.1) The Rocq Prover, XML protocol server
- authors
- The Rocq development team, INRIA, CNRS, and contributors
- license
- LGPL-2.1-only
- links
-
(homepage)
(bug reports)
(opam package)
- description
- The Rocq Prover is an interactive theorem prover, or proof assistant. It provides
a formal language to write mathematical definitions, executable
algorithms and theorems together with an environment for
semi-interactive development of machine-checked proofs.
This package provides the `coqidetop` language server, an
implementation of Rocq's [XML protocol](https://github.com/rocq-prover/rocq/blob/master/dev/doc/xml-protocol.md)
which allows clients, such as RocqIDE, to interact with the Rocq Prover in a
structured way.
coq-mathcomp-classical.1.13.0
(1.13.0) A library for classical logic for mathematical components
- authors
- Reynald Affeldt - Alessandro Bruni - Yves Bertot - Cyril Cohen - Marie Kerjean - Assia Mahboubi - Damien Rouhling - Pierre Roux - Kazuhiko Sakaguchi - Zachary Stone - Pierre-Yves Strub - Laurent Théry
- license
- CECILL-C
- links
-
(homepage)
(bug reports)
(opam package)
- description
- This repository contains a library for classical logic for
the Coq proof-assistant and using the Mathematical Components library.
coq-mathcomp-finmap.2.2.1
(2.2.1) Compatibility package for rocq-mathcomp-finmap
- authors
- Cyril Cohen Kazuhiko Sakaguchi
- license
- CECILL-B
- links
-
(homepage)
(bug reports)
(opam package)
- description
coq-mathcomp-reals.1.13.0
(1.13.0) A library for real numbers for mathematical components
- authors
- Reynald Affeldt - Alessandro Bruni - Yves Bertot - Cyril Cohen - Marie Kerjean - Assia Mahboubi - Damien Rouhling - Pierre Roux - Kazuhiko Sakaguchi - Zachary Stone - Pierre-Yves Strub - Laurent Théry
- license
- CECILL-C
- links
-
(homepage)
(bug reports)
(opam package)
- description
- This package contains a library for real numbers for
the Coq proof-assistant and using the Mathematical Components library.
coq-stdlib.9.0.0
(9.0.0) Compatibility metapackage for Coq Stdlib library after the Rocq renaming
- authors
- The Rocq development team, INRIA, CNRS, and contributors
- license
- LGPL-2.1-only
- links
-
(homepage)
(bug reports)
(opam package)
- description
cppo.1.8.0
(1.8.0) Code preprocessor like cpp for OCaml
- authors
- Martin Jambon
- license
- BSD-3-Clause
- links
-
(homepage)
(bug reports)
(opam package)
- description
- Cppo is an equivalent of the C preprocessor for OCaml programs.
It allows the definition of simple macros and file inclusion.
Cppo is:
* more OCaml-friendly than cpp
* easy to learn without consulting a manual
* reasonably fast
* simple to install and to maintain
csexp.1.5.2
(1.5.2) Parsing and printing of S-expressions in Canonical form
- authors
- Quentin Hocquet <mefyl@gruntech.org> - Jane Street Group, LLC <opensource@janestreet.com> - Jeremie Dimino <jeremie@dimino.org>
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- This library provides minimal support for Canonical S-expressions
[1]. Canonical S-expressions are a binary encoding of S-expressions
that is super simple and well suited for communication between
programs.
This library only provides a few helpers for simple applications. If
you need more advanced support, such as parsing from more fancy input
sources, you should consider copying the code of this library given
how simple parsing S-expressions in canonical form is.
To avoid a dependency on a particular S-expression library, the only
module of this library is parameterised by the type of S-expressions.
[1] https://en.wikipedia.org/wiki/Canonical_S-expressions
easy-format.1.3.4
(1.3.4) High-level and functional interface to the Format module of the OCaml standard library
- authors
- Martin Jambon
- license
- BSD-3-Clause
- links
-
(homepage)
(bug reports)
(opam package)
- description
- This module offers a high-level and functional interface to the Format module of
the OCaml standard library. It is a pretty-printing facility, i.e. it takes as
input some code represented as a tree and formats this code into the most
visually satisfying result, breaking and indenting lines of code where
appropriate.
Input data must be first modelled and converted into a tree using 3 kinds of
nodes:
* atoms
* lists
* labelled nodes
Atoms represent any text that is guaranteed to be printed as-is. Lists can model
any sequence of items such as arrays of data or lists of definitions that are
labelled with something like \int main\, \let x =\ or \x:\.
elpi.3.1.0
(3.1.0) ELPI - Embeddable λProlog Interpreter
- authors
- Claudio Sacerdoti Coen Enrico Tassi
- license
- LGPL-2.1-or-later
- links
-
(homepage)
(bug reports)
(opam package)
- description
- ELPI implements a variant of λProlog enriched with Constraint Handling Rules,
a programming language well suited to manipulate syntax trees with binders.
ELPI is designed to be embedded into larger applications written in OCaml as
an extension language. It comes with an API to drive the interpreter and
with an FFI for defining built-in predicates and data types, as well as
quotations and similar goodies that are handy to adapt the language to the host
application.
This package provides both a command line interpreter (elpi) and a library to
be linked in other applications (eg by passing -package elpi to ocamlfind).
The ELPI programming language has the following features:
- Native support for variable binding and substitution, via an Higher Order
Abstract Syntax (HOAS) embedding of the object language. The programmer
does not need to care about technical devices to handle bound variables,
like De Bruijn indices.
- Native support for hypothetical context. When moving under a binder one can
attach to the bound variable extra information that is collected when the
variable gets out of scope. For example when writing a type-checker the
programmer needs not to care about managing the typing context.
- Native support for higher order unification variables, again via HOAS.
Unification variables of the meta-language (λProlog) can be reused to
represent the unification variables of the object language. The programmer
does not need to care about the unification-variable assignment map and
cannot assign to a unification variable a term containing variables out of
scope, or build a circular assignment.
- Native support for syntactic constraints and their meta-level handling rules.
The generative semantics of Prolog can be disabled by turning a goal into a
syntactic constraint (suspended goal). A syntactic constraint is resumed as
soon as relevant variables gets assigned. Syntactic constraints can be
manipulated by constraint handling rules (CHR).
- Native support for backtracking. To ease implementation of search.
- The constraint store is extensible. The host application can declare
non-syntactic constraints and use custom constraint solvers to check their
consistency.
- Clauses are graftable. The user is free to extend an existing program by
inserting/removing clauses, both at runtime (using implication) and at
\compilation\ time by accumulating files.
ELPI is free software released under the terms of LGPL 2.1 or above.
gmp-ecm.7.0.3
(7.0.3) GMP-ECM library for the Elliptic Curve Method (ECM) for integer factorization
- authors
- Cyril Bouvier - David Cleaver - Pierrick Gaudry - Brian Gladman - Jim Fougeron - Laurent Fousse - Alexander Kruppa - Francois Morain - Dave Newman - Jason S. Papadopoulos - Paul Zimmermann
- license
- GPL-3.0 LGPL-3.0
- links
-
(homepage)
(bug reports)
(opam package)
- description
jane-street-headers.v0.16.0
(v0.16.0) Jane Street C header files
- authors
- Jane Street Group, LLC
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- C header files shared between the various Jane Street packages
jsonrpc.1.25.0
(1.25.0) Jsonrpc protocol implementation
- authors
- Andrey Popp <8mayday@gmail.com> - Rusty Key <iam@stfoo.ru> - Louis Roché <louis@louisroche.net> - Oleksiy Golovko <alexei.golovko@gmail.com> - Rudi Grinberg <me@rgrinberg.com> - Sacha Ayoun <sachaayoun@gmail.com> - cannorin <cannorin@gmail.com> - Ulugbek Abdullaev <ulugbekna@gmail.com> - Thibaut Mattio <thibaut.mattio@gmail.com> - Max Lantas <mnxndev@outlook.com>
- license
- ISC
- links
-
(homepage)
(bug reports)
(opam package)
- description
- See https://www.jsonrpc.org/specification
jst-config.v0.16.0
(v0.16.0) Compile-time configuration for Jane Street libraries
- authors
- Jane Street Group, LLC
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- Defines compile-time constants used in Jane Street libraries such as Base, Core, and
Async.
This package has an unstable interface; it is intended only to share configuration between
different packages from Jane Street. Future updates may not be backward-compatible, and we
do not recommend using this package directly.
lablgtk3.3.1.5
(3.1.5) OCaml interface to GTK+3
- authors
- Jacques Garrigue et al., Nagoya University
- license
- LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception - see homepage for details
- links
-
(homepage)
(bug reports)
(opam package)
- description
- OCaml interface to GTK+3
See https://garrigue.github.io/lablgtk/ for more information.
lablgtk3-sourceview3.3.1.5
(3.1.5) OCaml interface to GTK+ gtksourceview library
- authors
- Jacques Garrigue et al., Nagoya University
- license
- LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception - see homepage for details
- links
-
(homepage)
(bug reports)
(opam package)
- description
- OCaml interface to GTK+3, gtksourceview3 library.
See https://garrigue.github.io/lablgtk/ for more information.
lsp.1.25.0
(1.25.0) LSP protocol implementation in OCaml
- authors
- Andrey Popp <8mayday@gmail.com> - Rusty Key <iam@stfoo.ru> - Louis Roché <louis@louisroche.net> - Oleksiy Golovko <alexei.golovko@gmail.com> - Rudi Grinberg <me@rgrinberg.com> - Sacha Ayoun <sachaayoun@gmail.com> - cannorin <cannorin@gmail.com> - Ulugbek Abdullaev <ulugbekna@gmail.com> - Thibaut Mattio <thibaut.mattio@gmail.com> - Max Lantas <mnxndev@outlook.com>
- license
- ISC
- links
-
(homepage)
(bug reports)
(opam package)
- description
- Implementation of the LSP protocol in OCaml. It is designed to be as portable as
possible and does not make any assumptions about IO.
menhirCST.20240715
(20240715) Runtime support library for parsers generated by Menhir
- authors
- François Pottier <francois.pottier@inria.fr>
- license
- LGPL-2.0-only WITH OCaml-LGPL-linking-exception - see homepage for details
- links
-
(homepage)
(bug reports)
(opam package)
- description
menhirLib.20240715
(20240715) Runtime support library for parsers generated by Menhir
- authors
- François Pottier <francois.pottier@inria.fr> - Yann Régis-Gianas <yrg@pps.univ-paris-diderot.fr>
- license
- LGPL-2.0-only WITH OCaml-LGPL-linking-exception - see homepage for details
- links
-
(homepage)
(bug reports)
(opam package)
- description
menhirSdk.20240715
(20240715) Compile-time library for auxiliary tools related to Menhir
- authors
- François Pottier <francois.pottier@inria.fr> - Yann Régis-Gianas <yrg@pps.univ-paris-diderot.fr>
- license
- LGPL-2.0-only WITH OCaml-LGPL-linking-exception - see homepage for details
- links
-
(homepage)
(bug reports)
(opam package)
- description
num.1.6
(1.6) The legacy Num library for arbitrary-precision integer and rational arithmetic
- authors
- Valérie Ménissier-Morain Pierre Weis Xavier Leroy
- license
- LGPL-2.1-only WITH OCaml-LGPL-linking-exception - see homepage for details
- links
-
(homepage)
(bug reports)
(opam package)
- description
ocaml.4.14.2
(4.14.2) The OCaml compiler (virtual package)
- authors
- Xavier Leroy - Damien Doligez - Alain Frisch - Jacques Garrigue - Didier Rémy - Jérôme Vouillon
- license
- LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception - see homepage for details
- links
-
(homepage)
(bug reports)
(opam package)
- description
- This package requires a matching implementation of OCaml,
and polls it to initialise specific variables like `ocaml:native-dynlink`
ocamlbuild.0.16.1
(0.16.1) OCamlbuild is a build system with builtin rules to easily build most OCaml projects
- authors
- Nicolas Pouillard Berke Durak
- license
- LGPL-2.0-or-later WITH OCaml-LGPL-linking-exception - see homepage for details
- links
-
(homepage)
(bug reports)
(opam package)
- description
ocaml-compiler-libs.v0.12.4
(v0.12.4) OCaml compiler libraries repackaged
- authors
- Jane Street Group, LLC
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- This packages exposes the OCaml compiler libraries repackages under
the toplevel names Ocaml_common, Ocaml_bytecomp, Ocaml_optcomp, ...
ocaml-config.2
(2) OCaml Switch Configuration
- authors
- Louis Gesbert <louis.gesbert@ocamlpro.com> - David Allsopp <david.allsopp@metastack.com>
- license
- ISC
- links
-
(homepage)
(bug reports)
(opam package)
- description
- This package is used by the OCaml package to set-up its variables.
ocamlfind.1.9.5~relocatable
(1.9.5~relocatable) A library manager for OCaml
- authors
- Gerd Stolpmann <gerd@gerd-stolpmann.de>
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- Findlib is a library manager for OCaml. It provides a convention how
to store libraries, and a file format (\META\) to describe the
properties of libraries. There is also a tool (ocamlfind) for
interpreting the META files, so that it is very easy to use libraries
in programs and scripts.
ocamlgraph.2.2.0
(2.2.0) A generic graph library for OCaml
- authors
- Sylvain Conchon Jean-Christophe Filliâtre Julien Signoles
- license
- LGPL-2.1-only
- links
-
(homepage)
(bug reports)
(opam package)
- description
- Provides both graph data structures and graph algorithms
ocaml-option-flambda.1
(1) Set OCaml to be compiled with flambda activated
- authors
- David Allsopp Louis Gesbert
- license
- CC0-1.0+ - see homepage for details
- links
-
(homepage)
(bug reports)
(opam package)
- description
ocaml-variants.4.14.2+options
(4.14.2+options) Official release of OCaml 4.14.2
- authors
- Xavier Leroy - Damien Doligez - Alain Frisch - Jacques Garrigue - Didier Rémy - Jérôme Vouillon
- license
- LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception - see homepage for details
- links
-
(homepage)
(bug reports)
(opam package)
- description
octavius.1.2.2
(1.2.2) Ocamldoc comment syntax parser
- authors
- Leo White <leo@lpw25.net>
- license
- ISC
- links
-
(homepage)
(bug reports)
(opam package)
- description
- Octavius is a library to parse the `ocamldoc` comment syntax.
parsexp.v0.16.0
(v0.16.0) S-expression parsing library
- authors
- Jane Street Group, LLC
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- This library provides generic parsers for parsing S-expressions from
strings or other medium.
The library is focused on performances but still provide full generic
parsers that can be used with strings, bigstrings, lexing buffers,
character streams or any other sources effortlessly.
It provides three different class of parsers:
- the normal parsers, producing [Sexp.t] or [Sexp.t list] values
- the parsers with positions, building compact position sequences so
that one can recover original positions in order to report properly
located errors at little cost
- the Concrete Syntax Tree parsers, produce values of type
[Parsexp.Cst.t] which record the concrete layout of the s-expression
syntax, including comments
This library is portable and doesn't provide IO functions. To read
s-expressions from files or other external sources, you should use
parsexp_io.
ppx_assert.v0.16.0
(v0.16.0) Assert-like extension nodes that raise useful errors on failure
- authors
- Jane Street Group, LLC
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- Part of the Jane Street's PPX rewriters collection.
ppx_base.v0.16.0
(v0.16.0) Base set of ppx rewriters
- authors
- Jane Street Group, LLC
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- ppx_base is the set of ppx rewriters used for Base.
Note that Base doesn't need ppx to build, it is only used as a
verification tool.
ppx_cold.v0.16.0
(v0.16.0) Expands [@cold] into [@inline never][@specialise never][@local never]
- authors
- Jane Street Group, LLC
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- Part of the Jane Street's PPX rewriters collection.
ppx_compare.v0.16.0
(v0.16.0) Generation of comparison functions from types
- authors
- Jane Street Group, LLC
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- Part of the Jane Street's PPX rewriters collection.
ppx_derivers.1.2.1
(1.2.1) Shared [@@deriving] plugin registry
- authors
- Jérémie Dimino
- license
- BSD-3-Clause
- links
-
(homepage)
(bug reports)
(opam package)
- description
- Ppx_derivers is a tiny package whose sole purpose is to allow
ppx_deriving and ppx_type_conv to inter-operate gracefully when linked
as part of the same ocaml-migrate-parsetree driver.
ppx_deriving.6.0.3
(6.0.3) Type-driven code generation for OCaml
- authors
- whitequark <whitequark@whitequark.org>
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- ppx_deriving provides common infrastructure for generating
code based on type definitions, and a set of useful plugins
for common tasks.
ppx_enumerate.v0.16.0
(v0.16.0) Generate a list containing all values of a finite type
- authors
- Jane Street Group, LLC
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- Part of the Jane Street's PPX rewriters collection.
ppx_globalize.v0.16.0
(v0.16.0) A ppx rewriter that generates functions to copy local values to the global heap
- authors
- Jane Street Group, LLC
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- Part of the Jane Street's PPX rewriters collection.
ppx_hash.v0.16.0
(v0.16.0) A ppx rewriter that generates hash functions from type expressions and definitions
- authors
- Jane Street Group, LLC
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- Part of the Jane Street's PPX rewriters collection.
ppx_here.v0.16.0
(v0.16.0) Expands [%here] into its location
- authors
- Jane Street Group, LLC
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- Part of the Jane Street's PPX rewriters collection.
ppx_import.1.12.0
(1.12.0) A syntax extension for importing declarations from interface files
- authors
- whitequark <whitequark@whitequark.org>
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
ppx_inline_test.v0.16.1
(v0.16.1) Syntax extension for writing in-line tests in ocaml code
- authors
- Jane Street Group, LLC
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- Part of the Jane Street's PPX rewriters collection.
ppx_js_style.v0.16.0
(v0.16.0) Code style checker for Jane Street Packages
- authors
- Jane Street Group, LLC
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- Part of the Jane Street's PPX rewriters collection.
This packages is a no-op ppx rewriter. It is used as a 'lint' tool to
enforce some coding conventions across all Jane Street packages.
ppxlib.0.35.0
(0.35.0) Standard infrastructure for ppx rewriters
- authors
- Jane Street Group, LLC <opensource@janestreet.com>
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- Ppxlib is the standard infrastructure for ppx rewriters
and other programs that manipulate the in-memory representation of
OCaml programs, a.k.a the \Parsetree\.
It also comes bundled with two ppx rewriters that are commonly used to
write tools that manipulate and/or generate Parsetree values;
`ppxlib.metaquot` which allows to construct Parsetree values using the
OCaml syntax directly and `ppxlib.traverse` which provides various
ways of automatically traversing values of a given type, in particular
allowing to inject a complex structured value into generated code.
ppx_optcomp.v0.16.0
(v0.16.0) Optional compilation for OCaml
- authors
- Jane Street Group, LLC
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- Part of the Jane Street's PPX rewriters collection.
ppx_sexp_conv.v0.16.0
(v0.16.0) [@@deriving] plugin to generate S-expression conversion functions
- authors
- Jane Street Group, LLC
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- Part of the Jane Street's PPX rewriters collection.
ppx_yojson_conv_lib.v0.16.0
(v0.16.0) Runtime lib for ppx_yojson_conv
- authors
- Jane Street Group, LLC
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- Part of the Jane Street's PPX rewriters collection.
ppx_yojson_conv.v0.16.0
(v0.16.0) [@@deriving] plugin to generate Yojson conversion functions
- authors
- Jane Street Group, LLC
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- Part of the Jane Street's PPX rewriters collection.
re.1.14.0
(1.14.0) RE is a regular expression library for OCaml
- authors
- Jerome Vouillon - Thomas Gazagnaire - Anil Madhavapeddy - Rudi Grinberg - Gabriel Radanne
- license
- LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception - see homepage for details
- links
-
(homepage)
(bug reports)
(opam package)
- description
- Pure OCaml regular expressions with:
* Perl-style regular expressions (module Re.Perl)
* Posix extended regular expressions (module Re.Posix)
* Emacs-style regular expressions (module Re.Emacs)
* Shell-style file globbing (module Re.Glob)
* Compatibility layer for OCaml's built-in Str module (module Re.Str)
result.1.5
(1.5) Compatibility Result module
- authors
- Jane Street Group, LLC
- license
- BSD-3-Clause
- links
-
(homepage)
(bug reports)
(opam package)
- description
- Projects that want to use the new result type defined in OCaml >= 4.03
while staying compatible with older version of OCaml should use the
Result module defined in this library.
rocq-core.9.0.1
(9.0.1) The Rocq Prover with its prelude
- authors
- The Rocq development team, INRIA, CNRS, and contributors
- license
- LGPL-2.1-only
- links
-
(homepage)
(bug reports)
(opam package)
- description
- The Rocq Prover is an interactive theorem prover, or proof assistant. It provides
a formal language to write mathematical definitions, executable
algorithms and theorems together with an environment for
semi-interactive development of machine-checked proofs.
Typical applications include the certification of properties of
programming languages (e.g. the CompCert compiler certification
project, or the Bedrock verified low-level programming library), the
formalization of mathematics (e.g. the full formalization of the
Feit-Thompson theorem or homotopy type theory) and teaching.
This package includes the Rocq prelude, that is loaded automatically
by Rocq in every .v file, as well as other modules bound to the
Corelib.* and Ltac2.* namespaces.
rocq-mathcomp-algebra.2.4.0
(2.4.0) Mathematical Components Library on Algebra
- authors
- The Mathematical Components team
- license
- CECILL-B
- links
-
(homepage)
(bug reports)
(opam package)
- description
- This library contains definitions and theorems about discrete
(i.e. with decidable equality) algebraic structures : ring, fields,
ordered fields, real fields, modules, algebras, integers, rational
numbers, polynomials, matrices, vector spaces...
rocq-mathcomp-character.2.4.0
(2.4.0) Mathematical Components Library on character theory
- authors
- The Mathematical Components team
- license
- CECILL-B
- links
-
(homepage)
(bug reports)
(opam package)
- description
- This library contains definitions and theorems about group
representations, characters and class functions.
rocq-mathcomp-field.2.4.0
(2.4.0) Mathematical Components Library on Fields
- authors
- The Mathematical Components team
- license
- CECILL-B
- links
-
(homepage)
(bug reports)
(opam package)
- description
- This library contains definitions and theorems about field extensions,
galois theory, algebraic numbers, cyclotomic polynomials...
rocq-mathcomp-fingroup.2.4.0
(2.4.0) Mathematical Components Library on finite groups
- authors
- The Mathematical Components team
- license
- CECILL-B
- links
-
(homepage)
(bug reports)
(opam package)
- description
- This library contains definitions and theorems about finite groups,
group quotients, group morphisms, group presentation, group action...
rocq-mathcomp-solvable.2.4.0
(2.4.0) Mathematical Components Library on finite groups (II)
- authors
- The Mathematical Components team
- license
- CECILL-B
- links
-
(homepage)
(bug reports)
(opam package)
- description
- This library contains more definitions and theorems about finite groups.
rocq-mathcomp-ssreflect.2.4.0
(2.4.0) Small Scale Reflection
- authors
- The Mathematical Components team
- license
- CECILL-B
- links
-
(homepage)
(bug reports)
(opam package)
- description
- This library includes the small scale reflection proof language
extension and the minimal set of libraries to take advantage of it.
This includes libraries on lists (seq), boolean and boolean
predicates, natural numbers and types with decidable equality,
finite types, finite sets, finite functions, finite graphs, basic arithmetics
and prime numbers, big operators
rocq-metarocq-common.1.4+9.0.1
(1.4+9.0.1) The common library of Template Rocq and PCUIC
- authors
- Abhishek Anand <aa755@cs.cornell.edu> - Danil Annenkov <danil.v.annenkov@gmail.com> - Simon Boulier <simon.boulier@inria.fr> - Cyril Cohen <cyril.cohen@inria.fr> - Yannick Forster <forster@ps.uni-saarland.de> - Jason Gross <jgross@mit.edu> - Fabian Kunze <fkunze@fakusb.de> - Meven Lennon-Bertrand <Meven.Bertrand@univ-nantes.fr> - Kenji Maillard <kenji.maillard@inria.fr> - Gregory Malecha <gmalecha@gmail.com> - Jakob Botsch Nielsen <Jakob.botsch.nielsen@gmail.com> - Matthieu Sozeau <matthieu.sozeau@inria.fr> - Nicolas Tabareau <nicolas.tabareau@inria.fr> - Théo Winterhalter <theo.winterhalter@inria.fr>
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- MetaRocq is a meta-programming framework for Rocq.
rocq-metarocq-erasure.1.4+9.0.1
(1.4+9.0.1) Implementation and verification of an erasure procedure for Rocq
- authors
- Abhishek Anand <aa755@cs.cornell.edu> - Danil Annenkov <danil.v.annenkov@gmail.com> - Simon Boulier <simon.boulier@inria.fr> - Cyril Cohen <cyril.cohen@inria.fr> - Yannick Forster <forster@ps.uni-saarland.de> - Jason Gross <jgross@mit.edu> - Fabian Kunze <fkunze@fakusb.de> - Meven Lennon-Bertrand <Meven.Bertrand@univ-nantes.fr> - Kenji Maillard <kenji.maillard@inria.fr> - Gregory Malecha <gmalecha@gmail.com> - Jakob Botsch Nielsen <Jakob.botsch.nielsen@gmail.com> - Matthieu Sozeau <matthieu.sozeau@inria.fr> - Nicolas Tabareau <nicolas.tabareau@inria.fr> - Théo Winterhalter <theo.winterhalter@inria.fr>
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- MetaRocq is a meta-programming framework for Rocq.
The Erasure module provides a complete specification of Rocq's so-called
\extraction\ procedure, starting from the PCUIC calculus and targeting
untyped call-by-value lambda-calculus.
The `erasure` function translates types and proofs in well-typed terms
into a dummy `tBox` constructor, following closely P. Letouzey's PhD
thesis.
rocq-metarocq-erasure-plugin.1.4+9.0.1
(1.4+9.0.1) Implementation and verification of an erasure procedure for Rocq
- authors
- Abhishek Anand <aa755@cs.cornell.edu> - Danil Annenkov <danil.v.annenkov@gmail.com> - Simon Boulier <simon.boulier@inria.fr> - Cyril Cohen <cyril.cohen@inria.fr> - Yannick Forster <forster@ps.uni-saarland.de> - Jason Gross <jgross@mit.edu> - Fabian Kunze <fkunze@fakusb.de> - Meven Lennon-Bertrand <Meven.Bertrand@univ-nantes.fr> - Kenji Maillard <kenji.maillard@inria.fr> - Gregory Malecha <gmalecha@gmail.com> - Jakob Botsch Nielsen <Jakob.botsch.nielsen@gmail.com> - Matthieu Sozeau <matthieu.sozeau@inria.fr> - Nicolas Tabareau <nicolas.tabareau@inria.fr> - Théo Winterhalter <theo.winterhalter@inria.fr>
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- MetaRocq is a meta-programming framework for Rocq.
The Erasure module provides a complete specification of Rocq's so-called
\extraction\ procedure, starting from the PCUIC calculus and targeting
untyped call-by-value lambda-calculus.
The `erasure` function translates types and proofs in well-typed terms
into a dummy `tBox` constructor, following closely P. Letouzey's PhD
thesis.
rocq-metarocq-pcuic.1.4+9.0.1
(1.4+9.0.1) A type system equivalent to Rocq's and its metatheory
- authors
- Abhishek Anand <aa755@cs.cornell.edu> - Danil Annenkov <danil.v.annenkov@gmail.com> - Simon Boulier <simon.boulier@inria.fr> - Cyril Cohen <cyril.cohen@inria.fr> - Yannick Forster <forster@ps.uni-saarland.de> - Jason Gross <jgross@mit.edu> - Fabian Kunze <fkunze@fakusb.de> - Meven Lennon-Bertrand <Meven.Bertrand@univ-nantes.fr> - Kenji Maillard <kenji.maillard@inria.fr> - Gregory Malecha <gmalecha@gmail.com> - Jakob Botsch Nielsen <Jakob.botsch.nielsen@gmail.com> - Matthieu Sozeau <matthieu.sozeau@inria.fr> - Nicolas Tabareau <nicolas.tabareau@inria.fr> - Théo Winterhalter <theo.winterhalter@inria.fr>
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- MetaRocq is a meta-programming framework for Rocq.
The PCUIC module provides a cleaned-up specification of Rocq's typing algorithm along
with a certified typechecker for it. This module includes the standard metatheory of
PCUIC: Weakening, Substitution, Confluence and Subject Reduction are proven here.
rocq-metarocq-quotation.1.4+9.0.1
(1.4+9.0.1) Gallina quotation functions for Template Rocq
- authors
- Abhishek Anand <aa755@cs.cornell.edu> - Danil Annenkov <danil.v.annenkov@gmail.com> - Simon Boulier <simon.boulier@inria.fr> - Cyril Cohen <cyril.cohen@inria.fr> - Yannick Forster <forster@ps.uni-saarland.de> - Jason Gross <jgross@mit.edu> - Fabian Kunze <fkunze@fakusb.de> - Meven Lennon-Bertrand <Meven.Bertrand@univ-nantes.fr> - Kenji Maillard <kenji.maillard@inria.fr> - Gregory Malecha <gmalecha@gmail.com> - Jakob Botsch Nielsen <Jakob.botsch.nielsen@gmail.com> - Matthieu Sozeau <matthieu.sozeau@inria.fr> - Nicolas Tabareau <nicolas.tabareau@inria.fr> - Théo Winterhalter <theo.winterhalter@inria.fr>
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- MetaRocq is a meta-programming framework for Rocq.
The Quotation module is geared at providing functions `□T → □□T` for
`□T := Ast.term` (currently implemented) and for `□T := { t : Ast.term
& Σ ;;; [] |- t : T }` (still in the works). Currently `Ast.term →
Ast.term` and `(Σ ;;; [] |- t : T) → Ast.term` functions are provided
for Template and PCUIC terms, in `MetaRocq.Quotation.ToTemplate.All`
and `MetaRocq.Quotation.ToPCUIC.All`. Proving well-typedness is still
a work in progress.
Ultimately the goal of this development is to prove that `□` is a lax monoidal
semicomonad (a functor with `cojoin : □T → □□T` that codistributes over `unit`
and `×`), which is sufficient for proving Löb's theorem.
rocq-metarocq-safechecker.1.4+9.0.1
(1.4+9.0.1) Implementation and verification of safe conversion and typechecking algorithms for Rocq
- authors
- Abhishek Anand <aa755@cs.cornell.edu> - Danil Annenkov <danil.v.annenkov@gmail.com> - Simon Boulier <simon.boulier@inria.fr> - Cyril Cohen <cyril.cohen@inria.fr> - Yannick Forster <forster@ps.uni-saarland.de> - Jason Gross <jgross@mit.edu> - Fabian Kunze <fkunze@fakusb.de> - Meven Lennon-Bertrand <Meven.Bertrand@univ-nantes.fr> - Kenji Maillard <kenji.maillard@inria.fr> - Gregory Malecha <gmalecha@gmail.com> - Jakob Botsch Nielsen <Jakob.botsch.nielsen@gmail.com> - Matthieu Sozeau <matthieu.sozeau@inria.fr> - Nicolas Tabareau <nicolas.tabareau@inria.fr> - Théo Winterhalter <theo.winterhalter@inria.fr>
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- MetaRocq is a meta-programming framework for Rocq.
The SafeChecker modules provides a correct implementation of
weak-head reduction, conversion and typechecking of Rocq definitions and global environments.
rocq-metarocq-safechecker-plugin.1.4+9.0.1
(1.4+9.0.1) Implementation and verification of an erasure procedure for Rocq
- authors
- Abhishek Anand <aa755@cs.cornell.edu> - Danil Annenkov <danil.v.annenkov@gmail.com> - Simon Boulier <simon.boulier@inria.fr> - Cyril Cohen <cyril.cohen@inria.fr> - Yannick Forster <forster@ps.uni-saarland.de> - Jason Gross <jgross@mit.edu> - Fabian Kunze <fkunze@fakusb.de> - Meven Lennon-Bertrand <Meven.Bertrand@univ-nantes.fr> - Kenji Maillard <kenji.maillard@inria.fr> - Gregory Malecha <gmalecha@gmail.com> - Jakob Botsch Nielsen <Jakob.botsch.nielsen@gmail.com> - Matthieu Sozeau <matthieu.sozeau@inria.fr> - Nicolas Tabareau <nicolas.tabareau@inria.fr> - Théo Winterhalter <theo.winterhalter@inria.fr>
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- MetaRocq is a meta-programming framework for Rocq.
The Erasure module provides a complete specification of Rocq's so-called
\extraction\ procedure, starting from the PCUIC calculus and targeting
untyped call-by-value lambda-calculus.
The `erasure` function translates types and proofs in well-typed terms
into a dummy `tBox` constructor, following closely P. Letouzey's PhD
thesis.
rocq-metarocq-template.1.4+9.0.1
(1.4+9.0.1) A quoting and unquoting library for Rocq in Rocq
- authors
- Abhishek Anand <aa755@cs.cornell.edu> - Danil Annenkov <danil.v.annenkov@gmail.com> - Simon Boulier <simon.boulier@inria.fr> - Cyril Cohen <cyril.cohen@inria.fr> - Yannick Forster <forster@ps.uni-saarland.de> - Jason Gross <jgross@mit.edu> - Fabian Kunze <fkunze@fakusb.de> - Meven Lennon-Bertrand <Meven.Bertrand@univ-nantes.fr> - Kenji Maillard <kenji.maillard@inria.fr> - Gregory Malecha <gmalecha@gmail.com> - Jakob Botsch Nielsen <Jakob.botsch.nielsen@gmail.com> - Matthieu Sozeau <matthieu.sozeau@inria.fr> - Nicolas Tabareau <nicolas.tabareau@inria.fr> - Théo Winterhalter <theo.winterhalter@inria.fr>
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- MetaRocq is a meta-programming framework for Rocq.
Template Rocq is a quoting library for Rocq. It takes Rocq terms and
constructs a representation of their syntax tree as a Rocq inductive data
type. The representation is based on the kernel's term representation.
In addition to a complete reification and denotation of CIC terms,
Template Rocq includes:
- Reification of the environment structures, for constant and inductive declarations.
- Denotation of terms and global declarations
- A monad for manipulating global declarations, calling the type
checker, and inserting them in the global environment, in the style of
MetaRocq/MTac.
rocq-metarocq-template-pcuic.1.4+9.0.1
(1.4+9.0.1) Translations between Template Rocq and PCUIC and proofs of correctness
- authors
- Abhishek Anand <aa755@cs.cornell.edu> - Danil Annenkov <danil.v.annenkov@gmail.com> - Simon Boulier <simon.boulier@inria.fr> - Cyril Cohen <cyril.cohen@inria.fr> - Yannick Forster <forster@ps.uni-saarland.de> - Jason Gross <jgross@mit.edu> - Fabian Kunze <fkunze@fakusb.de> - Meven Lennon-Bertrand <Meven.Bertrand@univ-nantes.fr> - Kenji Maillard <kenji.maillard@inria.fr> - Gregory Malecha <gmalecha@gmail.com> - Jakob Botsch Nielsen <Jakob.botsch.nielsen@gmail.com> - Matthieu Sozeau <matthieu.sozeau@inria.fr> - Nicolas Tabareau <nicolas.tabareau@inria.fr> - Théo Winterhalter <theo.winterhalter@inria.fr>
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
rocq-metarocq-translations.1.4+9.0.1
(1.4+9.0.1) Translations built on top of MetaRocq
- authors
- Abhishek Anand <aa755@cs.cornell.edu> - Danil Annenkov <danil.v.annenkov@gmail.com> - Simon Boulier <simon.boulier@inria.fr> - Cyril Cohen <cyril.cohen@inria.fr> - Yannick Forster <forster@ps.uni-saarland.de> - Jason Gross <jgross@mit.edu> - Fabian Kunze <fkunze@fakusb.de> - Meven Lennon-Bertrand <Meven.Bertrand@univ-nantes.fr> - Kenji Maillard <kenji.maillard@inria.fr> - Gregory Malecha <gmalecha@gmail.com> - Jakob Botsch Nielsen <Jakob.botsch.nielsen@gmail.com> - Matthieu Sozeau <matthieu.sozeau@inria.fr> - Nicolas Tabareau <nicolas.tabareau@inria.fr> - Théo Winterhalter <theo.winterhalter@inria.fr>
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- MetaRocq is a meta-programming framework for Rocq.
The Translations modules provides implementation of standard translations
from type theory to type theory, e.g. parametricity and the `cross-bool`
translation that invalidates functional extensionality.
rocq-metarocq-utils.1.4+9.0.1
(1.4+9.0.1) The utility library of Template Rocq and PCUIC
- authors
- Abhishek Anand <aa755@cs.cornell.edu> - Danil Annenkov <danil.v.annenkov@gmail.com> - Simon Boulier <simon.boulier@inria.fr> - Cyril Cohen <cyril.cohen@inria.fr> - Yannick Forster <forster@ps.uni-saarland.de> - Jason Gross <jgross@mit.edu> - Fabian Kunze <fkunze@fakusb.de> - Meven Lennon-Bertrand <Meven.Bertrand@univ-nantes.fr> - Kenji Maillard <kenji.maillard@inria.fr> - Gregory Malecha <gmalecha@gmail.com> - Jakob Botsch Nielsen <Jakob.botsch.nielsen@gmail.com> - Matthieu Sozeau <matthieu.sozeau@inria.fr> - Nicolas Tabareau <nicolas.tabareau@inria.fr> - Théo Winterhalter <theo.winterhalter@inria.fr>
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- MetaRocq is a meta-programming framework for Rocq.
rocq-runtime.9.0.1
(9.0.1) The Rocq Prover -- Core Binaries and Tools
- authors
- The Rocq development team, INRIA, CNRS, and contributors
- license
- LGPL-2.1-only
- links
-
(homepage)
(bug reports)
(opam package)
- description
- The Rocq Prover is an interactive theorem prover, or proof assistant. It provides
a formal language to write mathematical definitions, executable
algorithms and theorems together with an environment for
semi-interactive development of machine-checked proofs.
Typical applications include the certification of properties of
programming languages (e.g. the CompCert compiler certification
project, or the Bedrock verified low-level programming library), the
formalization of mathematics (e.g. the full formalization of the
Feit-Thompson theorem or homotopy type theory) and teaching.
This package includes the Rocq Prover core binaries, plugins, and tools, but
not the vernacular standard library.
Note that in this setup, Rocq needs to be started with the -boot and
-noinit options, as will otherwise fail to find the regular Rocq
prelude, now living in the rocq-core package.
sel.0.8.0
(0.8.0) Simple Event Library
- authors
- Enrico Tassi
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- This library is the result of our experience in using threads and the Lwt async monad to tame the problem of writing a server which has to listen and react to multiple sources of events. The library itself is just sugar atop Unix.select. You can read more about the library on https://github.com/gares/sel
sexplib0.v0.16.0
(v0.16.0) Library containing the definition of S-expressions and some base converters
- authors
- Jane Street Group, LLC
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- Part of Jane Street's Core library
The Core suite of libraries is an industrial strength alternative to
OCaml's standard library that was developed by Jane Street, the
largest industrial user of OCaml.
stdio.v0.16.0
(v0.16.0) Standard IO library for OCaml
- authors
- Jane Street Group, LLC
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- Stdio implements simple input/output functionalities for OCaml.
It re-exports the input/output functions of the OCaml standard
libraries using a more consistent API.
stdlib-shims.0.3.0
(0.3.0) Backport some of the new stdlib features to older compiler
- authors
- The stdlib-shims programmers
- license
- LGPL-2.1-only WITH OCaml-LGPL-linking-exception - see homepage for details
- links
-
(homepage)
(bug reports)
(opam package)
- description
- Backport some of the new stdlib features to older compiler,
such as the Stdlib module.
This allows projects that require compatibility with older compiler to
use these new features in their code.
time_now.v0.16.0
(v0.16.0) Reports the current time
- authors
- Jane Street Group, LLC
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
- Provides a single function to report the current time in nanoseconds
since the start of the Unix epoch.
topkg.1.1.1
(1.1.1) The transitory OCaml software packager
- authors
- The topkg programmers
- license
- ISC
- links
-
(homepage)
(bug reports)
(opam package)
- description
- **Warning** Topkg is in maintenance mode and should not longer be used.
Topkg is a packager for distributing OCaml software. It provides an
API to describe the files a package installs in a given build
configuration and to specify information about the package's
distribution, creation and publication procedures.
The optional topkg-care package provides the `topkg` command line tool
which helps with various aspects of a package's life cycle: creating
and linting a distribution, releasing it on the WWW, publish its
documentation, add it to the OCaml opam repository, etc.
Topkg is distributed under the ISC license and has **no**
dependencies. This is what your packages will need as a *build*
dependency.
Topkg-care is distributed under the ISC license it depends on
[fmt][fmt], [logs][logs], [bos][bos], [cmdliner][cmdliner],
[webbrowser][webbrowser] and `opam-format`.
[fmt]: http://erratique.ch/software/fmt
[logs]: http://erratique.ch/software/logs
[bos]: http://erratique.ch/software/bos
[cmdliner]: http://erratique.ch/software/cmdliner
[webbrowser]: http://erratique.ch/software/webbrowser
Home page: <http://erratique.ch/software/topkg>
uutf.1.0.4
(1.0.4) Non-blocking streaming Unicode codec for OCaml
- authors
- The uutf programmers
- license
- ISC
- links
-
(homepage)
(bug reports)
(opam package)
- description
- **Warning.** You are encouraged not to use this library.
- As of OCaml 4.14, both UTF encoding and decoding are available
in the standard library, see the `String` and `Buffer` modules.
- If you are looking for a stream abstraction compatible with
effect based concurrency look into [`bytesrw`] package.
yojson.3.0.0
(3.0.0) Yojson is an optimized parsing and printing library for the JSON format
- authors
- Martin Jambon
- license
- BSD-3-Clause
- links
-
(homepage)
(bug reports)
(opam package)
- description
- Yojson is an optimized parsing and printing library for the JSON format.
ydump is a pretty-printing command-line program provided with the
yojson package.
z3.4.13.0-3
(4.13.0-3) Z3 solver
- authors
- MSR
- license
- MIT
- links
-
(homepage)
(bug reports)
(opam package)
- description
zarith.1.14
(1.14) Implements arithmetic and logical operations over arbitrary-precision integers
- authors
- Antoine Miné Xavier Leroy Pascal Cuoq
- license
- LGPL-2.0-only WITH OCaml-LGPL-linking-exception - see homepage for details
- links
-
(homepage)
(bug reports)
(opam package)
- description
- The Zarith library implements arithmetic and logical operations over
arbitrary-precision integers. It uses GMP to efficiently implement
arithmetic over big integers. Small integers are represented as Caml
unboxed integers, for speed and space economy.