Keywords
Computer Science and Digital Science
 A2.1.1. Semantics of programming languages
 A2.1.4. Functional programming
 A2.1.11. Proof languages
 A2.4.3. Proofs
 A7.2. Logic in Computer Science
 A7.2.3. Interactive Theorem Proving
 A7.2.4. Mechanized Formalization of Mathematics
 A8.1. Discrete mathematics, combinatorics
 A8.4. Computer Algebra
Other Research Topics and Application Domains
 B6.1. Software industry
1 Team members, visitors, external collaborators
Research Scientists
 PaulAndre Mellies [Team leader, CNRS, Senior Researcher]
 PierreLouis Curien [CNRS, Emeritus, HDR]
 Thomas Ehrhard [CNRS, Senior Researcher]
 Emilio Jesus Gallego Arias [INRIA, Starting Research Position]
 Hugo Herbelin [INRIA, Senior Researcher, HDR]
 JeanJacques Lévy [IRIF, Emeritus, HDR]
 Alexis Saurin [CNRS, Researcher]
Faculty Members
 Pierre Letouzey [Université Paris Cité, Associate Professor]
 Daniela Petrisan [Université Paris Cité, Associate Professor]
PhD Students
 Esaïe Bauer [Université Paris Cité]
 Thomas Binetruy [EQUISAFE]
 Vincent Blazy [Université Paris Cité]
 Félix Castro [Université Paris Cité]
 El Cherradi [CGEIET]
 Abhishek De [INRIA]
 Alen Duric [Université Paris Cité]
 Farzad Jafar Rahmani [Université Paris Cité]
 Moana Jubert [INRIA, from Oct 2022]
 Hugo Moeneclaey [Université Paris Saclay]
 Vincent Moreau [Université Paris Cité]
Technical Staff
 Daniel De Rauglaudre [INRIA, until Jul 2022]
 Thierry Martinez [INRIA]
 Théo Zimmermann [INRIA, until Nov 2022]
Administrative Assistant
 Anne Mathurin [INRIA]
2 Overall objectives
Since 2012, the research conducted in $\pi {r}^{2}$ has been devoted both to the study of foundational aspects of formal proofs and programs and to the development of the Coq proof assistant software, with a focus on the dependently typed programming language aspects of Coq. The team acts as one of the strongest teams involved in the development of Coq as it hosts in particular the current coordinator of the Coq development team. The team also expanded its scope to the study of the homotopy of rewriting systems, which shares foundational tools with recent advanced works on the semantics of type theories.
2021 is the final year of the projectteam which shall be replaced, early 2022, by a newly created team, named PiCube, welcoming new members and exploring new research directions which will be presented in this report.
3 Research program
3.1 Proof theory and the CurryHoward correspondence
3.1.1 Proofs as programs
Proof theory is the branch of logic devoted to the study of the structure of proofs. An essential contributor to this field is Gentzen 61 who developed in 1935 two logical formalisms that are now central to the study of proofs. These are the socalled “natural deduction”, a syntax that is particularly wellsuited to simulate the intuitive notion of reasoning, and the socalled “sequent calculus”, a syntax with deep geometric properties that is particularly wellsuited for proof automation.
Proof theory gained a remarkable importance in computer science when it became clear, after genuine observations first by Curry in 1958 56, then by Howard and de Bruijn at the end of the 60's 73, 48, that proofs had the very same structure as programs: for instance, natural deduction proofs can be identified as typed programs of the ideal programming language known as $\lambda $calculus.
This proofsasprograms correspondence has been the starting point to a large spectrum of researches and results contributing to deeply connect logic and computer science. In particular, it is from this line of work that Coquand and Huet's Calculus of Constructions 55, 53 stemmed out – a formalism that is both a logic and a programming language and that is at the source of the Coq system 90.
3.1.2 Towards the calculus of constructions
The $\lambda $calculus, defined by Church 52, is a remarkably succinct model of computation that is defined via only three constructions (abstraction of a program with respect to one of its parameters, reference to such a parameter, application of a program to an argument) and one reduction rule (substitution of the formal parameter of a program by its effective argument). The $\lambda $calculus, which is Turingcomplete, i.e. which has the same expressiveness as a Turing machine (there is for instance an encoding of numbers as functions in $\lambda $calculus), comes with two possible semantics referred to as callbyname and callbyvalue evaluations. Of these two semantics, the first one, which is the simplest to characterise, has been deeply studied in the last decades 44.
To explain the CurryHoward correspondence, it is important to distinguish between intuitionistic and classical logic: following Brouwer at the beginning of the 20th century, classical logic is a logic that accepts the use of reasoning by contradiction while intuitionistic logic proscribes it. Then, Howard's observation is that the proofs of the intuitionistic natural deduction formalism exactly coincide with programs in the (simply typed) $\lambda $calculus.
A major achievement has been accomplished by MartinLöf who designed in 1971 a formalism, referred to as modern type theory, that was both a logical system and a (typed) programming language 82.
In 1985, Coquand and Huet 55, 53 in the Formel team of INRIARocquencourt explored an alternative approach based on GirardReynolds' system $F$ 62, 86. This formalism, called the Calculus of Constructions, served as logical foundation of the first implementation of Coq in 1984. Coq was called CoC at this time.
3.1.3 The Calculus of Inductive Constructions
The first public release of CoC dates back to 1989. The same projectteam developed the programming language Caml (nowadays called OCaml and coordinated by the Gallium team) that provided the expressive and powerful concept of algebraic data types (a paragon of it being the type of lists). In CoC, it was possible to simulate algebraic data types, but only through a notsonatural notsoconvenient encoding.
In 1989, Coquand and Paulin 54 designed an extension of the Calculus of Constructions with a generalisation of algebraic types called inductive types, leading to the Calculus of Inductive Constructions (CIC) that started to serve as a new foundation for the Coq system. This new system, which got its current definitive name Coq, was released in 1991.
In practice, the Calculus of Inductive Constructions derives its strength from being both a logic powerful enough to formalise all common mathematics (as set theory is) and an expressive richlytyped functional programming language (like ML but with a richer type system, no effects and no nonterminating functions).
3.2 The development of Coq
During 19842012 period, about 40 persons have contributed to the development of Coq, out of which 7 persons have contributed to bring the system to the place it was six years ago. First Thierry Coquand through his foundational theoretical ideas, then Gérard Huet who developed the first prototypes with Thierry Coquand and who headed the Coq group until 1998, then Christine Paulin who was the main actor of the system based on the CIC and who headed the development group from 1998 to 2006. On the programming side, important steps were made by Chet Murthy who raised Coq from the prototypical state to a reasonably scalable system, JeanChristophe Filliâtre who turned to concrete the concept of a small trustful certification kernel on which an arbitrary large system can be set up, Bruno Barras and Hugo Herbelin who, among other extensions, reorganised Coq on a new smoother and more uniform basis able to support a new round of extensions for the next decade.
The development started from the Formel team at Rocquencourt but, after Christine Paulin got a position in Lyon, it spread to École Normale Supérieure de Lyon. Then, the task force there globally moved to the University of Orsay when Christine Paulin got a new position there. On the Rocquencourt side, the part of Formel involved in ML moved to the Cristal team (now Gallium) and Formel got renamed into Coq. Gérard Huet left the team and Christine Paulin started to head a Coq team bilocalised at Rocquencourt and Orsay. Gilles Dowek became the head of the team which was renamed into LogiCal. Following Gilles Dowek who got a position at École Polytechnique, LogiCal moved to the new INRIA Saclay research center. It then split again, giving birth to ProVal. At the same time, the Marelle team (formerly Lemme, formerly Croap) which has been a long partner of the Formel team, invested more and more energy in the formalisation of mathematics in Coq, while contributing importantly to the development of Coq, in particular for what regards user interfaces.
After various other spreadings resulting from where the wind pushed former PhD students, the development of Coq got multisite with the development now realised mainly by employees of INRIA, the CNAM, and Paris Diderot.
In the last seven years, Hugo Herbelin and Matthieu Sozeau coordinated the development of the system, the official coordinator hat passed from Hugo to Matthieu in August 2016. The ecosystem and development model changed greatly during this period, with a move towards an entirely distributed development model, integrating contributions from all over the world. While the system had always been opensource, its development team was relatively small, wellknit and gathered regularly at Coq working groups, and many developments on Coq were still discussed only by the few interested experts.
The last years saw a big increase in opening the development to external scrutiny and contributions. This was supported by the “core” team which started moving development to the open GitHub platform (including since 2017 its bugtracker 91 and wiki), made its development process public, starting to use public pull requests to track the work of developers, organising yearly hackatons/codingsprints for the dissemination of expertise and developers & users meetings like the Coq Workshop and CoqPL, and, perhaps more anecdotally, retransmitting Coq working groups on a public YouTube channel.
This move was also supported by the hiring of Maxime Dénès in 2016 as an INRIA research engineer (in SophiaAntipolis), and the work of Matej Košík (2year research engineer). Their work involved making the development process more predictable and streamlined and to provide a higher level of quality to the whole system. In 2018, a second engineer, Vincent Laporte, was hired. Yves Bertot, Maxime Dénès and Vincent Laporte are developing the Coq consortium, which aims to become the incarnation of the global Coq community and to offer support for our users.
Today, the development of Coq involves participants from the INRIA projectteams pi.r2 (Paris), Marelle (SophiaAntipolis), Toccata (Saclay), Gallinette (Nantes), Gallium (Paris), and Camus (Strasboug), the LIX at École Polytechnique and the CRI MinesParisTech. Apart from those, active collaborators include members from MPISaarbrucken (D. Dreyer's group), KU Leuven (B. Jacobs group), MIT CSAIL (A. Chlipala's group, which hosted an INRIA/MIT engineer, and N. Zeldovich's group), the Institute for Advanced Study in Princeton (from S. Awodey, T. Coquand and V. Voevodsky's Univalent Foundations program) and Intel (M. Soegtrop). The latest released versions have typically a couple of dozens of contributors (e.g. 40 for 8.8, 54 for 8.9, ...).
On top of the developer community, there is a much wider user community, as Coq is being used in many different fields. The Software Foundations series, authored by academics from the USA, along with the reference Coq'Art book by Bertot and Castéran 45, the more advanced Certified Programming with Dependent Types book by Chlipala 51 and the recent book on the Mathematical Components library by Mahboubi, Tassi et al. provide resources for gradually learning the tool.
In the programming languages community, Coq is being taught in two summer schools, OPLSS and the DeepSpec summer school. For more mathematically inclined users, there are regular Winter Schools in Nice and in 2017 there was a school on the use of the Univalent Foundations library in Birmingham.
Since 2016, Coq also provides a central repository for Coq packages, the Coq opam archive, relying on the OCaml opam package manager and including around 250 packages contributed by users. It would be too long to make a detailed list of the uses of Coq in the wild. We only highlight four research projects relying heavily on Coq. The Mathematical Components library has its origins in the formal proof of the Four Colour Theorem and has grown to cover many areas of mathematics in Coq using the now integrated (since Coq 8.7) SSReflect proof language. The DeepSpec project is an NSF Expedition project led by A. Appel whose aim is fullstack verification of a software system, from machinechecked proofs of circuits to an operating system to a webbrowser, entirely written in Coq and integrating many large projects into one. The ERC CoqHoTT project led by N. Tabareau aims to use logical tools to extend the expressive power of Coq, dealing with the univalence axiom and effects. The ERC RustBelt project led by D. Dreyer concerns the development of rigorous formal foundations for the Rust programming language, using the Iris HigherOrder Concurrent Separation Logic Framework in Coq.
We next briefly describe the main components of Coq.
3.2.1 The underlying logic and the verification kernel
The architecture adopts the socalled de Bruijn principle: the welldelimited kernel of Coq ensures the correctness of the proofs validated by the system. The kernel is rather stable with modifications tied to the evolution of the underlying Calculus of Inductive Constructions formalism. The kernel includes an interpreter of the programs expressible in the CIC and this interpreter exists in two flavours: a customisable lazy evaluation machine written in OCaml and a callbyvalue bytecode interpreter written in C dedicated to efficient computations. The kernel also provides a module system.
3.2.2 Programming and specification languages
The concrete user language of Coq, called Gallina, is a highlevel language built on top of the CIC. It includes a type inference algorithm, definitions by complex patternmatching, implicit arguments, mathematical notations and various other highlevel language features. This highlevel language serves both for the development of programs and for the formalisation of mathematical theories. Coq also provides a large set of commands. Gallina and the commands together forms the Vernacular language of Coq.
3.2.3 Standard library
The standard library is written in the vernacular language of Coq. There are libraries for various arithmetical structures and various implementations of numbers (Peano numbers, implementation of $\mathbb{N}$, $\mathbb{Z}$, $\mathbb{Q}$ with binary digits, implementation of $\mathbb{N}$, $\mathbb{Z}$, $\mathbb{Q}$ using machine words, axiomatisation of $\mathbb{R}$). There are libraries for lists, list of a specified length, sorts, and for various implementations of finite maps and finite sets. There are libraries on relations, sets, orders.
3.2.4 Tactics
The tactics are the methods available to conduct proofs. This includes the basic inference rules of the CIC, various advanced higher level inference rules and all the automation tactics. Regarding automation, there are tactics for solving systems of equations, for simplifying ring or field expressions, for arbitrary proof search, for semidecidability of firstorder logic and so on. There is also a powerful and popular untyped scripting language for combining tactics into more complex tactics.
Note that all tactics of Coq produce proof certificates that are checked by the kernel of Coq. As a consequence, possible bugs in proof methods do not hinder the confidence in the correctness of the Coq checker. Note also that the CIC being a programming language, tactics can have their core written (and certified) in the own language of Coq if needed.
3.2.5 Extraction
Extraction is a component of Coq that maps programs (or even computational proofs) of the CIC to functional programs (in OCaml, Scheme or Haskell). Especially, a program certified by Coq can further be extracted to a program of a fullfledged programming language then benefiting of the efficient compilation, linking tools, profiling tools, ... of the target language.
3.2.6 Documentation
Coq is a featurerich system and requires extensive training in order to be used proficiently; current documentation includes the reference manual, the reference for the standard library, as well as tutorials, and related tooling [sphinx plugins, coqdoc]. The jsCoq tool allows writing interactive web pages were Coq programs can be embedded and executed.
3.2.7 Proof development infrastructure
Coq is used in largescale proof developments, and provides users miscellaneous tooling to help with them: the coq_makefile and Dune build systems help with incremental proofchecking; the Coq OPAM repository contains a package index for most Coq developments; the CoqIDE, ProofGeneral, jsCoq, and VSCoq user interfaces are environments for proof writing; and the Coq's API does allow users to extend the system in many important ways. Among the current extensions we have QuickChik, a tool for propertybased testing; STMCoq and CoqHammer integrating Coq with automated solvers; ParamCoq, providing automatic derivation of parametricity principles; MetaCoq for metaprogramming; Equations for dependentlytyped programming; SerAPI, for datacentric applications; etc... This also includes the main open Coq repository living at Github.
3.3 Dependently typed programming languages
Dependently typed programming (shortly DTP) is an emerging concept referring to the diffuse and broadening tendency to develop programming languages with type systems able to express program properties finer than the usual information of simply belonging to specific datatypes. The type systems of dependentlytyped programming languages allow to express properties dependent of the input and the output of the program (for instance that a sorting program returns a list of same size as its argument). Typical examples of such languages were the Cayenne language, developed in the late 90's at Chalmers University in Sweden and the DML language developed at Boston. Since then, various new tools have been proposed, either as typed programming languages whose types embed equalities ($\Omega $mega at Portland, ATS at Boston, ...) or as hybrid logic/programming frameworks (Agda at Chalmers University, Twelf at Carnegie, Delphin at Yale, OpTT at U. Iowa, Epigram at Nottingham, ...).
DTP contributes to a general movement leading to the fusion between logic and programming. Coq, whose language is both a logic and a programming language which moreover can be extracted to pure ML code plays a role in this movement and some frameworks combining logic and programming have been proposed on top of Coq (Concoqtion at Rice and Colorado, Ynot at Harvard, Why in the ProVal team at INRIA, Iris at MPISaarbrucken). It also connects to Hoare logic, providing frameworks where pre and postconditions of programs are tied with the programs.
DTP approached from the programming language side generally benefits of a fullfledged language (e.g. supporting effects) with efficient compilation. DTP approached from the logic side generally benefits of an expressive specification logic and of proof methods so as to certify the specifications. The weakness of the approach from logic however is generally the weak support for effects or partial functions.
3.3.1 Typechecking and proof automation
In between the decidable type systems of conventional datatypes based programming languages and the full expressiveness of logically undecidable formulae, an active field of research explores a spectrum of decidable or semidecidable type systems for possible use in dependently typed programming languages. At the beginning of the spectrum, this includes, for instance, the system F's extension ML${}_{F}$ of the ML type system or the generalisation of abstract data types with type constraints (G.A.D.T.) such as found in the Haskell programming language. At the other side of the spectrum, one finds arbitrary complex type specification languages (e.g. that a sorting function returns a list of type “sorted list”) for which more or less powerful proof automation tools exist – generally firstorder ones.
3.4 Around and beyond the CurryHoward correspondence
For two decades, the CurryHoward correspondence has been limited to the intuitionistic case but since 1990, an important stimulus spurred on the community following Griffin's discovery that this correspondence was extensible to classical logic. The community then started to investigate unexplored potential connections between computer science and logic. One of these fields is the computational understanding of Gentzen's sequent calculus while another one is the computational content of the axiom of choice.
3.4.1 Control operators and classical logic
Indeed, a significant extension of the CurryHoward correspondence has been obtained at the beginning of the 90's thanks to the seminal observation by Griffin 63 that some operators known as control operators were typable by the principle of double negation elimination ($\neg \neg A\Rightarrow A$), a principle that enables classical reasoning.
Control operators are used to jump from one location of a program to another. They were first considered in the 60's by Landin 79 and Reynolds 85 and started to be studied in an abstract way in the 80's by Felleisen et al 59, leading to Parigot's $\lambda \mu $calculus 84, a reference calculus that is in close CurryHoward correspondence with classical natural deduction. In this respect, control operators are fundamental pieces to establish a full connection between proofs and programs.
3.4.2 Sequent calculus
The CurryHoward interpretation of sequent calculus started to be investigated at the beginning of the 90's. The main technicality of sequent calculus is the presence of left introduction inference rules, for which two kinds of interpretations are applicable. The first approach interprets left introduction rules as construction rules for a language of patterns but it does not really address the problem of the interpretation of the implication connective. The second approach, started in 1994, interprets left introduction rules as evaluation context formation rules. This line of work led in 2000 to the design by Hugo Herbelin and PierreLouis Curien of a symmetric calculus exhibiting deep dualities between the notion of programs and evaluation contexts and between the standard notions of callbyname and callbyvalue evaluation semantics.
3.4.3 Abstract machines
Abstract machines came as an intermediate evaluation device, between highlevel programming languages and the computer microprocessor. The typical reference for callbyvalue evaluation of $\lambda $calculus is Landin's SECD machine 80 and Krivine's abstract machine for callbyname evaluation 76, 75. A typical abstract machine manipulates a state that consists of a program in some environment of bindings and some evaluation context traditionally encoded into a “stack”.
3.4.4 Delimited control
Delimited control extends the expressiveness of control operators with effects: the fundamental result here is a completeness result by Filinski 60: any sideeffect expressible in monadic style (and this covers references, exceptions, states, dynamic bindings, ...) can be simulated in $\lambda $calculus equipped with delimited control.
3.5 Effective higherdimensional algebra
3.5.1 Higherdimensional algebra
Like ordinary categories, higherdimensional categorical structures originate in algebraic topology. Indeed, $\infty $groupoids have been initially considered as a unified point of view for all the information contained in the homotopy groups of a topological space $X$: the fundamental $\infty $groupoid$\Pi \left(X\right)$ of $X$ contains the elements of $X$ as 0dimensional cells, continuous paths in $X$ as 1cells, homotopies between continuous paths as 2cells, and so on. This point of view translates a topological problem (to determine if two given spaces $X$ and $Y$ are homotopically equivalent) into an algebraic problem (to determine if the fundamental groupoids $\Pi \left(X\right)$ and $\Pi \left(Y\right)$ are equivalent).
In the last decades, the importance of higherdimensional categories has grown fast, mainly with the new trend of categorification that currently touches algebra and the surrounding fields of mathematics. Categorification is an informal process that consists in the study of higherdimensional versions of known algebraic objects (such as higher Lie algebras in mathematical physics 43) and/or of “weakened” versions of those objects, where equations hold only up to suitable equivalences (such as weak actions of monoids and groups in representation theory 57).
The categorification process has also reached logic, with the introduction of homotopy type theory. After a preliminary result that had identified categorical structures in type theory 72, it has been observed recently that the socalled “identity types” are naturally equiped with a structure of $\infty $groupoid: the 1cells are the proofs of equality, the 2cells are the proofs of equality between proofs of equality, and so on. The striking resemblance with the fundamental $\infty $groupoid of a topological space led to the conjecture that homotopy type theory could serve as a replacement of set theory as a foundational language for different fields of mathematics, and homotopical algebra in particular.
3.5.2 Higherdimensional rewriting
Higherdimensional categories are algebraic structures that contain, in essence, computational aspects. This has been recognised by Street 89, and independently by Burroni 49, when they have introduced the concept of computad or polygraph as combinatorial descriptions of higher categories. Those are directed presentations of higherdimensional categories, generalising word and term rewriting systems.
In the recent years, the algebraic structure of polygraph has led to a new theory of rewriting, called higherdimensional rewriting, as a unifying point of view for usual rewriting paradigms, namely abstract, word and term rewriting 78, 81, 68, 69, and beyond: Petri nets 71 and formal proofs of classical and linear logic have been expressed in this framework 70. Higherdimensional rewriting has developed its own methods to analyse computational properties of polygraphs, using in particular algebraic tools such as derivations to prove termination, which in turn led to new tools for complexity analysis 46.
3.5.3 Squier theory
The homotopical properties of higher categories, as studied in mathematics, are in fact deeply related to the computational properties of their polygraphic presentations. This connection has its roots in a tradition of using rewritinglike methods in algebra, and more specifically in the works of Anick 40 and Squier 88, 87: Squier has proved that, if a monoid $M$ can be presented by a finite, terminating and confluent rewriting system, then its third integral homology group ${H}_{3}(M,\mathbb{Z})$ is finitely generated and the monoid $M$ has finite derivation type (a property of homotopical nature). This allowed him to conclude that finite convergent rewriting systems were not a universal solution to decide the word problem of finitely generated monoids. Since then, Yves Guiraud and Philippe Malbos have shown that this connection was part of a deeper unified theory when formulated in the higherdimensional setting 11, 12, 66, 67, 65.
In particular, the computational content of Squier's proof has led to a constructive methodology to produce, from a convergent presentation, coherent presentations and polygraphic resolutions of algebraic structures, such as monoids 11 and algebras 10. A coherent presentation of a monoid $M$ is a 3dimensional combinatorial object that contains not only a presentation of $M$ (generators and relations), but also higherdimensional cells, corresponding each to two fundamentally different proofs of the same equality: this is, in essence, the same as the proofs of equality of proofs of equality in homotopy type theory. When this process of “unfolding” proofs of equalities is pursued in every dimension, one gets a polygraphic resolution of the starting monoid $M$. This object has the following desirable qualities: it is free and homotopically equivalent to $M$ (in the canonical model structure of higher categories 77, 41). A polygraphic resolution of an algebraic object $X$ is a faithful formalisation of $X$ on which one can perform computations, such as homotopical or homological invariants of $X$. In particular, this has led to new algorithms and proofs in representation theory 8, and in homological algebra 6410. See 13 for a summary of these results.
4 Application domains
The application domains of the team researchers range from the formalization of mathematical theories and computational systems using the Coq proof assistant to the design of programming languages with rich type systems and the design and analysis of certified program transformations.
5 Social and environmental responsibility
5.1 Footprint of research activities
The environmental impact of the team is mainly two sorts:
 travel footprint to attend conferences or for longerterm visits
 secondly, computer resources notably those affected to the series of benchmark tests which are run before integrated new features in the Coq system.
Members of the team are committed to decreasing the environmental impact of our research. In the IRIF lab environment, a working group investigates the footprint of our scientific community and its practices (notably numerous international conferences) and the potential medium and longterm evolution that can be made. Several members of the team and active contributors or interested followers of the WG. As an achievement of this working group, recommendations have been made at the IRIF level to encourage every lab member to travel by train rather than by plane when the travel duration is not significantly longer by train.
6 Highlights of the year
6.1 Creation of the Picube INRIA research team
One main event and highlight of this year 2022 has been the creation of the Picube team the 1st of December, after its formal presentation to the project committee in May, and its official validation in November after examination by a committee of experts from INRIA, CNRS and Université Paris Cité. As it was already the case with the PiR2 team, the new Picube team is a joint research team between Université Paris Cité, INRIA Paris and the CNRS. The Picube team is hosted by the Institut de Recherche en Informatique Fondamentale (IRIF) lab and all researchers of the team are thus members of the IRIF lab. The purpose of the Picube research team is to take advantage of the most recent advances in
 type theory and foundations of mathematics: homotopy type theory, realizability and forcing, differential linear logic,
 programming language semantics: computational effects, differential and probabilistic programming,
 architecture and design of proof assistants: formalisation of mathematics, unification and symbolic elaboration techniques
in order to reduce the gap which currently separates the the vernacular language used by the working mathematicians in their daily practice and the formal language used today in proof assistants such as Coq, Agda or Lean. The research project builds on the knowledge and expertise of the PiR2 team, and integrates to it a number of new ingredients in the direction of certified mathematics, differential and probabilistic programming, and machine learning. The project is structured into five scientific areas of focus:
 Fundamental Structures of Logic and Mathematical Reasoning.
 Differential and Probabilistic Tools for Programming, Reasoning and Learning,
 Architecture and Design of a Proof Assistant for the Working Mathematician,
 Formalisation and Linguistics of Mathematics,
 Higher Dimensional Algebra and Synthetic Homotopy Theory.
Except for Yves Guiraud (CR INRIA) who decided to join the Ouragan INRIA team and IMJPRG, all the former members of PiR2 are also members of the Picube team. The Picube research team incorporates moreover three new members: Thomas Ehrhard (DR CNRS), Daniela Petrişan (MdC Université Paris Cité) and PaulAndré Melliès (DR CNRS) who will become the team leader. Thomas Ehrhard is a specialist of proof theory and programming language semantics. He will bring to the team his deep understanding of the emerging connections between linear logic and functional analysis, with promising connections to differential and probabilistic programming. Daniela Petrişan is a specialist of categorical and topological methods in logic, automata theory and programming language semantics. She will bring to the team her expertise on topological and metric interpretations of type theory and process calculi, with the hope of building a unified framework integrating coalgebraic methods and dependent type theory. PaulAndré Melliès is a specialist of category theory and programming language semantics, with a fascination for the numerous emerging connections between MartinLöf type theory, homotopy theory, linear logic, game semantics and higherorder automata theory.
In the continuation of the work of the PiR2 team, the Picube research team will contribute to the education of new generations of students taking the lead in proof assistant technology and formalisation of mathematics and computer science. We will benefit from the fact that Picube is a joint project team with the IRIF lab of Université de Paris, within the Fondation des Sciences Mathématiques de Paris (FSMP) and with an active participation of its members to the Master Logique Mathématique et Fondements de l’Informatique (LMFI) and the Master Parisien de Recherche en Informatique (MPRI) both taught in the Bâtiment Sophie Germain where the IRIF lab is located. We believe that the development of a formal corpus of mathematics is a foundational challenge potentially as important as the Bourbaki enterprise initiated in the late 1930s.
The work of the team was affected by several problems:
 Dysfunctions at Inria at large such as for instance
 Poor functioning of Eksae that complicated significantly the work of our administrative assistant and the preparation of the budget,
 Very late reimbursement of travel expenses (for instance one of our PhD got his travel expenses reimbursed after nearly one year),
 Research is less and less considered as our main mission.
 The veiled and constant criticisms on our Evaluation Committee we are all proud of.
 The uncertainty about the future of the Institute which is not able to fulfill legal obligations such as providing its social report in due time or which does not communicate accurately about its budget, except when publicly calling it "intenable" (meaning "unsustainable")."
7 New software and platforms
7.1 New software
7.1.1 Coq

Name:
The Coq Proof Assistant

Keywords:
Proof, Certification, Formalisation

Scientific Description:
Coq is an interactive proof assistant based on the Calculus of (Co)Inductive Constructions, extended with universe polymorphism. This type theory features inductive and coinductive families, an impredicative sort and a hierarchy of predicative universes, making it a very expressive logic. The calculus allows to formalize both general mathematics and computer programs, ranging from theories of finite structures to abstract algebra and categories to programming language metatheory and compiler verification. Coq is organised as a (relatively small) kernel including efficient conversion tests on which are built a set of higherlevel layers: a powerful proof engine and unification algorithm, various tactics/decision procedures, a transactional document model and, at the very top an integrated development environment (IDE).

Functional Description:
Coq provides both a dependentlytyped functional programming language and a logical formalism, which, altogether, support the formalisation of mathematical theories and the specification and certification of properties of programs. Coq also provides a large and extensible set of automatic or semiautomatic proof methods. Coq's programs are extractible to OCaml, Haskell, Scheme, ...

Release Contributions:
Coq version 8.16 integrates changes to the Coq kernel and performance improvements along with a few new features. We highlight some of the most impactful changes here:
The guard checker (see Guarded) now ensures strong normalization under any reduction strategy.
Irrelevant terms (in the SProp sort) are now squashed to a dummy value during conversion, fixing a subject reduction issue and making proof conversion faster.
Introduction of reversible coercions, which allow coercions relying on metalevel resolution such as typeclasses or canonical structures. Also allow coercions that do not fullfill the uniform inheritance condition.
Generalized rewriting support for rewriting with Typevalued relations and in Type contexts, using the Classes.CMorphisms library.
Added the boolean equality scheme command for decidable inductive types.
Added a Print Notation command.
Incompatibilities in name generation for Program obligations, eauto treatment of tactic failure levels, use of ident in notations, parsing of module expressions.
Standard library reorganization and deprecations.
Improve the treatment of standard library numbers by Extraction.
See https://coq.inria.fr/refman/changes.html#version816 for a detailed changelog.

News of the Year:
Coq version 8.16 integrates changes to the Coq kernel and performance improvements along with a few new features. See the detailed changes at https://coq.inria.fr/refman/changes.html#version816 for an overview of the new features and changes, along with the full list of contributors.
 URL:

Contact:
Matthieu Sozeau

Participants:
Yves Bertot, Frederic Besson, Tej Chajed, Cyril Cohen, Pierre Corbineau, Pierre Courtieu, Maxime Denes, Jim Fehrle, Julien Forest, Emilio Jesús Gallego Arias, Gaetan Gilbert, Georges Gonthier, Benjamin Grégoire, Jason Gross, Hugo Herbelin, Vincent Laporte, Olivier Laurent, Assia Mahboubi, Kenji Maillard, Érik MartinDorel, Guillaume Melquiond, PierreMarie Pedrot, Clément PitClaudel, Kazuhiko Sakaguchi, Vincent Semeria, Michael Soegtrop, Arnaud Spiwack, Matthieu Sozeau, Enrico Tassi, Laurent Théry, Anton Trunov, LiYao Xia, Theo Zimmermann, Gaetan Gilbert

Partners:
CNRS, Université ParisSud, ENS Lyon, Université ParisDiderot
7.1.2 Rewr

Name:
Rewriting methods in algebra

Keywords:
Computer algebra system (CAS), Rewriting systems, Algebra

Functional Description:
Rewr is a prototype of computer algebra system, using rewriting methods to compute resolutions and homotopical invariants of monoids. The library implements various classical constructions of rewriting theory (such as completion), improved by experimental features coming from Garside theory, and allows homotopical algebra computations based on Squier theory. Specific functionalities have been developed for usual classes of monoids, such as Artin monoids and plactic monoids.
 URL:
 Publications:

Contact:
Yves Guiraud

Participants:
Yves Guiraud, Samuel Mimram
7.1.3 Catex

Keywords:
LaTeX, String diagram, Algebra

Functional Description:
Catex is a Latex package and an external tool to typeset string diagrams easily from their algebraic expression. Catex works similarly to Bibtex.
 URL:

Contact:
Yves Guiraud

Participant:
Yves Guiraud
7.1.4 Cox

Keywords:
Computer algebra system (CAS), Rewriting systems, Algebra

Functional Description:
Cox is a Python library for the computation of coherent presentations of Artin monoids, with experimental features to compute the lower dimensions of the Salvetti complex.
 URL:
 Publications:

Contact:
Yves Guiraud

Participant:
Yves Guiraud
7.1.5 coqbot

Keywords:
Web API, Automation, Software engineering

Functional Description:
This software is a bot to help and automatize the development of the Coq proof assistant on the GitHub platform. It is written in OCaml and provides numerous features: synchronization between GitHub and GitLab to allow the use of GitLab for automatic testing (continuous integration), management of milestones on issues, management of the backporting process, merging of pull request upon request by maintainers, etc.
Most of the features are used only for the development of Coq, but the synchronization with GitLab feature is also used in dozens of independent projects.

Release Contributions:
The Julien Coolen's internship final release.
Added
Integrate with Jason Gross' coqbugminimizer tool. Merge a branch in the coq repository if some conditions are met, by writing @coqbot: merge now in a comment. Parameterize the bot with a configuration file. Installation as a GitHub App is supported. Report CI status checks with the Checks API when using the GitHub app. Report errors of jobs in allow failure mode when the Checks API is used.
Changed
Refactored the architecture of the application and of the botcomponents library Always create a merge commit when pushing to GitLab. More informative bot merge commit title for GitLab CI.
 URL:

Contact:
Theo Zimmermann
7.1.6 jsCoq

Keywords:
Coq, Program verification, Interactive, Formal concept analysis, Proof assistant, Ocaml, Education, JavaScript

Functional Description:
jsCoq is an Online Integrated Development Environment for the Coq proof assistant and runs in your browser! It aims to enable new UI/interaction possibilities and to improve the accessibility of the Coq platform itself.

Release Contributions:
 Port to Coq 8.14  Improved packaging system for libraries  Improved display and interaction  Settings panel
 URL:
 Publication:

Contact:
Emilio Jesus Gallego Arias

Participants:
Emilio Jesus Gallego Arias, Shachar Itzhaky

Partners:
Mines ParisTech, Technion, Israel Institute of Technology
7.1.7 coqserapi

Keywords:
Interaction, Coq, Ocaml, Data centric, User Interfaces, GUI (Graphical User Interface), Toolkit

Scientific Description:
SerAPI is a library for machinetomachine interaction with the Coq proof assistant, with particular emphasis on applications in IDEs, code analysis tools, and machine learning. SerAPI provides automatic serialization of Coq's internal OCaml datatypes from/to JSON or Sexpressions (sexps).

Functional Description:
SerAPI is a library for machinetomachine interaction with the Coq proof assistant, with particular emphasis on applications in IDEs, code analysis tools, and machine learning. SerAPI provides automatic serialization of Coq's internal OCaml datatypes from/to JSON or Sexpressions (sexps).

Release Contributions:
 Support for Coq 8.15 

News of the Year:
In 2021, SerAPI has seen a sizable increase of users, and many bugs and improvements have been made in response to users requests. Also, SerAPI has been updated to support Coq 8.13, 8.14, and 8.15 versions.
 URL:
 Publication:

Contact:
Emilio Jesus Gallego Arias

Participants:
Karl Palmskog, Theo Zimmermann, Shachar Itzhaky, Jason Gross

Partner:
KTH Royal Institute of Technology
7.1.8 pyCoq

Keywords:
Coq, Python

Functional Description:
PyCoq is a set of bindings and libraries allowing to interact with the Coq interactive proof assistant from inside Python 3.

Release Contributions:
Initial release
 URL:

Contact:
Emilio Jesus Gallego Arias

Participant:
Thierry Martinez
8 New results
8.1 Effects in proof theory and programming
Participants: Félix Castro, Emilio Jesús Gallego Arias, Hugo Herbelin, JeanJacques Lévy, PaulAndré Melliès, Alexis Saurin.
8.1.1 An analysis of the constructive content of Henkin's proof of Gödel's completeness theorem
Together with Ilik, Herbelin submitted a paper analyzing the constructive content of Henkin's proof of Gödel's completeness theorem
Gödel’s completeness theorem for classical firstorder logic is one of the most basic theorems of logic and Henkin's proof method is probably the most widely taught. Central to any foundational course in logic, it connects the notion of valid formula to the notion of provable formula. In this paper, they survey a few standard formulations and proofs of this completeness theorem before focusing on the formal description of a slight modification of Henkin’s proof within intuitionistic secondorder arithmetic.
In the context of the completeness of intuitionistic logic with respect to various semantics such as Kripke or Beth semantics, it is standard to follow the CurryHoward correspondence and to interpret the proofs of completeness as programs which turn proofs of validity for these semantics into proofs of derivability. They apply this approach to Henkin’s proof to phrase it as a program which transforms any proof of validity with respect to Tarski semantics into a proof of derivability. This sheds an “effective” light on the relation between Tarski semantics and syntax: proofs of validity are syntactic objects that we can manipulate and compute with, just like ordinary syntax.
8.1.2 Differentials and distances in probabilistic coherence spaces
Ehrhard published a paper developing the differential aspects of probabilistic coherence spaces, a denotational model of Linear Logic which provides a faithful account of stochastic programs. In this model programs are represented as analytic functions which can be written as powerseries with nonnegative coefficients and such functions can be deriveted an arbitrary number of times, whatever be their type. Thomas Ehrhard explored two related applications of the corresponding derivatives. First he showed how derivatives allow to compute the expectation of execution time in the weak head reduction of probabilistic PCF (pPCF). Next he applied a general notion of “local” differential of morphisms to the proof of a Lipschitz property of these morphisms allowing in turn to relate the observational distance on pPCF terms to a distance the model is naturally equipped with. This suggests that extending probabilistic programming languages with derivatives, in the spirit of the differential lambdacalculus, could be quite meaningful.
In more recent developments, currently submitted 58, Ehrhard has developed a categorical and syntactical framework for such differential models of Linear Logic, where addition is only partially defined: the fundamental observation is that, even if the differential calculus requires addition as it is well known, one does not need all of them and many models of Linear Logic feature enough additions for hosting a fullyfledged differential calculus. This shows that, contrarily to what was believed earlier, differential Linear Logic and the differential lambdacalculus are compatible with deterministic computations.
8.1.3 Layered and ObjectBased Game Semantics
Largescale software verification relies critically on the use of compositional languages, semantic models, specifications, and verification techniques. In collaboration with Zhong Shao's CertiKOS group (Yale) and Léo Stefanesco (MPI Kaiserslautern), Melliès has developed 23 a layered and objectbased game semantics based on coherence spaces. In the resulting game semantics of lowlevel concurrent code, every program is interpreted as a concurrent and possibly nondeterministic strategy connecting an underlay signature to an overlay signature. The interpretation of the lowlevel code relies on a noncommutative form $A\mapsto \u2020A$ of the exponential modality of Linear Logic, equipped with permutations in order to encode concurrency, revisiting an idea promoted by Uday Reddy in the 1990s. After formulating layer implementations as regular maps between object spaces, a notion of concurrent object space is designed, where sequential traces may be identified modulo permutation of independent operations. As illustrated by a ticket lock implementation, the model is used to express protected shared object concurrency, in a simple model based on regular maps between concurrent object spaces. This work aims at developing a compositional model for certified abstraction layers which can be used to build certified heterogeneous systems such as CertiKOS, taking advantage of the compositionality principles of denotational semantics.
8.1.4 Tracking Redexes in the Lambda Calculus
Levy wrote a book chapter36 to be published in 202 in which he reviews notions of residuals of redexes to keep track of redexes along reductions in the lambda calculus and families of redexes keep track of redexes created along these reductions. He discusses how their relation to a labeledcalculus and extends these properties to combinatory logic, term rewriting systems, process calculi and proofnets of linear logic.
8.1.5 Controlling sequentialization in proof nets
In a collaboration with Aurore Alcolei and Luc Pellissier, Alexis Saurin internalised the notion of jumps of linear logic proofnets (which can be used as an alternative to boxes) in a slight extension of MLL. Jumps which have been extensively studied by Faggian and di Giamberardino (building on prior work by Curien and Faggian on Lnets) can express intermediate degrees of sequentialization between a sequent calculus proof and a fully desequentialized proofnet. In this still ongoing work, Alcolei, Pellissier and Saurin analyzed the logical strength of jumps by internalizing them in an extention of MLL where axioms on a specific formula introduce constraints on the possible sequentializations. The jumping formula needs to be treated nonlinearly, which they do either axiomatically, or by embedding it in a very controlled fragment of multiplicativeexponential linear logic, uncovering the exponential logic of sequentialization.
8.1.6 Algebraic Logic Programming
Emilio J. Gallego Arias and Jim Lipton continued work on algebraic models of proof search, in particular they have developed a notion of stepindexed tabular alegory which provides an improved semantic setting for the proof search machine developed in Gallego's PhD.
Jim Lipton visited the team in the summer 2022.
8.2 Reasoning and programming with infinite data
Participants: Esaie Bauer, Kostia Chardonnet, Abhishek De, Thomas Ehrhard, Farzad Jafarrahmani, Alexis Saurin.
8.2.1 Proof theory of nonwellfounded and circular proofs
Validity conditions of infinitary and circular proofs and cutelimination.
In collaboration with David Baelde, Amina Doumane and Denis Kuperberg, Alexis Saurin published at LICS 2022 25 a new validity criterion for circular and nonwellfoudned proofs that extends the original validity condition considered by Baelde, Doumane and Saurin in CSL 2016 1. This new condition is betterbehaved wrt. the cut rules in that it takes into account the cutaxiom interaction in sequent proofs, allowing progressing threads to "bounce" on axioms and cut. This much more flexible criterion takes inspirations in Girard's geometry of interaction and works on additive proofnets. The paper establishes cutelimination and study the decidability properties of the validity condition. While the full bouncing validity is undecidable, they exhibit a hierarchy of criteria "of bounded heights" which are all decidable and the union of which corresponds to bouncing validity (which is, therefore, semidecidable)
Alexis Saurin generalized the cuteliminationtheorem for nonwellfounded proofs of multiplicative additive linear logic with least and greatest fixed points ($\mu \mathrm{\U0001d5ac\U0001d5a0\U0001d5ab\U0001d5ab}$) that he obtained with David Baelde and Amina Doumane 42 to full linear logic, accomodating a treatment of the exponentials. This goes by a fixedpoint encoding of $\mathrm{\U0001d5ab\U0001d5ab}$ exponentials which allowed him, using results from infinitary rewriting, to lift the cutelimination result to for $\mu \mathrm{\U0001d5ab\U0001d5ab}$. Moreover, designing embedding of $\mu \mathrm{\U0001d5ab\U0001d5a9}$ and $\mu \mathrm{\U0001d5ab\U0001d5aa}$ in $\mu \mathrm{\U0001d5ab\U0001d5ab}$ he obtained similar cutelimination theorems for those logics as well. A paper has been submitted early 2023.
Proof nets for nonwellfounded proofs.
Abhishek De completed his PhD on proofnets for circular and nonwellfounded proofs, that he defended in december 1st.
Decision problems of linear logic with fixed points.
In a collaboration with Anupam Das, Abhishek De and Alexis Saurin investigated the decision problems for variants of linear logic with fixedpoints. Decision problems for fragments of linear logic exhibiting `infinitary' behaviour (such as exponentials) are notoriously complicated. In this work, they addressed the decision problems for variations of linear logic with fixed points (muMALL), in particular, recent systems based on `circular' and `nonwellfounded' reasoning. In particular, they show that muMALL is undecidable.
More explicitly, they show that the general nonwellfounded system is ${\Pi}_{1}^{0}$hard via a reduction to the nonhalting of Minsky machines. It is thus is strictly stronger than its circular counterpart which is in ${\Sigma}_{1}^{0}$. Moreover, they showed that the restriction of these systems to theorems with only the least fixed points is already ${\Sigma}_{1}^{0}$complete via a reduction to the reachability problem of alternating vector addition systems with states. This implies that both the circular system and the finitary system (with explicit (co)induction) are ${\Sigma}_{1}^{0}$complete. Those results were published at FSCD 2022 26
8.2.2 On the semantics of finitary and nonwellfounded proofs
Denotational semantics of finitary and nonwellfounded proofs.
Thomas Ehrhard, Farzad Jafarrahmani and Alexis Saurin extended the previous work by Ehrhard and Jafarrahmani to polarized Linear Logic with fixedpoints. One of their objectives is to develop Linear Logic foundations to inductive and coinductive types in Coq.
They also extended the denotational semantics of $\mu LL$ to nonwellfounded proofs and are currently investigating how to specifically interpret circular derivations. A draft has been submitted.
Phase semantics for linear logic with fixed points.
The truth semantics of linear logic (i.e. phase semantics) is often overlooked despite having a wide range of applications and deep connections with several denotational semantics. In phase semantics one is concerned about the provability of formulas rather than the contents of their proofs (or refutations).
Abhishek De, Farzad Jafarrahmani and Alexis Saurin extended the phase semantics of MALL to $\mu MALL$ with explicit (co)induction ($\mu MALL$), proving soundness and completeness theorems. The completeness theorem provides a cutadmissibility result for $\mu MALL$.
They also considered a constructive fragment that yields a Taitstyle wellfounded system ($\mu MAL{L}^{\omega}$) for which they defined the phase semantics together with soundness and completeness results and proved a cutelimination theorem for this system. This paper was published at FSTTCS 2022 27.
8.2.3 Quantum programming languages with inductive and coinductive types
Chardonnet's PhD research focuses on extending quantum programming languages with inductive and coinductive types, under the hypothesis of quantum control (as in QML 39 compared to classical control). In 2021, Chardonnet, Saurin and Valiron developed their work on a language of type isomorphisms with inductive and coinductive types and understanding the connections of those reversible programs with $\mu MALL$ type isomorphisms and more specifically with $\mu MALL$ focused circular proof isomorphisms. In particular, they studied the expressiveness of a restricted validity condition for a class of type isomorphisms, relating it with the class of recursive primitive permutations by Paolini, Piccolo and Roversi. A preliminary version was presented in TLLA 2021. The extended new version will be published in CSL'23 33.
8.3 Effective higherdimensional algebra
Participants: Antoine Allioux, PierreLouis Curien, Alen Đurić.
8.3.1 Coherent presentations of monoids
The work of Alen Đurić, PierreLouis Curien and Yves Guiraud on coherent presentations of monoids admitting a Garside family has been submitted, and presented at the workshop “Braids and beyond" held in memory of Patrick Dehornoy in September 2021 22.
8.3.2 Polygraphs and opetopes
PierreLouis Curien has found a new, elementary, proof of the isomorphism between manytoone polygraphs on one hand, and opetopic sets on the other hand. This result had been proved quite indirectly by Harnik, Makkai, and Zawadowski in 2008. A more direct proof was given by Cédric Ho Tanh (former student of the team) in his PhD thesis (2019), with a reference to some results of Simon Henry. The new proof is entirely selfcontained, and, more importantly, unveils invariants of the polygraphic syntax. It will be presented at the 2022 Workshop on Polynomial Functors to be held in April 2022 at the Topos Institute (virtually).
8.4 Metatheory and development of Coq
Participants: Vincent Blazy, Félix Castro, Emilio Jesús Gallego Arias, Hugo Herbelin, Pierre Letouzey, Thierry Martinez, Hugo Moeneclaey, Yann RégisGianas, Théo Zimmermann.
Vincent Blazy, Hugo Herbelin and Pierre Letouzey continued a work aiming at making explicit the universe subtyping in the Calculus of Constructions (PhD thesis of Vincent Blazy). The first goal is to detect more easily each use of the PropType cumulativity in Coq, with potential application to Coq extraction and also to the mathematical foundations.
8.4.1 Dependent patternmatching
Thierry Martinez carried on full time the implementation of a dependent patternmatching compilation algorithm in Coq based on the PhD thesis work of Pierre Boutillier and on the internship work of Meven Bertrand. Together with Meven Bertrand and Hugo Herbelin, they almost reached the point of submitting a paper describing the implementation.
8.4.2 Software engineering aspects of the development of Coq
Théo Zimmermann was recruited in January 2020 on a threeyear fixed term position to contribute both to the collaborative maintenance and evolution effort around Coq and its community, and to further investigate these software engineering aspects through empirical methods.
Théo Zimmermann is the initial author and main maintainer of coqbot, the bot used for everyday maintenance tasks in the Coq project. During the CoqDev project, the bot has been signicantly improved and has received contributions from Coq developers (Jason Gross, PierreMarie Pédrot, Gaetan Gilbert and Ali Caglayan more recently) as well as an intern that Théo Zimmermann supervised in 2020 (Julien Coolen, funded through the CoqDev project, now an engineer at Nomadic Labs). This has allowed to add many new features, in particular related to pull request testing and management (merging approved pull requests, closing stale pull requests, continuous integration with a reduced or extended suite of tests, including many external projects, etc.). The team published a paper about the followed approach 24 in IEEE Software (2022). The article describes some main features of the bot and the design choices that were made and how these design choices help with the maintenance and the evolution of the bot, by making it easier to adapt the bot to new use cases and to involve Coq contributors in the bot development.
Théo Zimmermann has also collaborated with Jason Gross (from MIT CSAIL) on integrating the bug minimizer created by Jason Gross in Coq's CI infrastructure, by relying on coqbot. This has allowed coqbot to automatically propose to produce reduced test cases for compatibility issues detected on external Coq projects by the continuous integration system, thus making it easier to understand what the compatibility issues are, when modifying Coq. Furthermore, this has allowed to conduct the first empirical evaluation of the bug minimizer and to improve it further based on the issues detected during this evaluation. They published their work, 28 at ITP 2022. This is the first formal publication on the bug minimizer itself.
Théo Zimmermann supervised in June 2021 the internship of Jérémy Damour, who was tasked with several contributions to the Hydras & Co. project of Pierre Castéran. This work resulted in a publication at the national conference JFLA 2022 30.
Finally, Théo Zimmermann has coordinated an ad hoc working group to prepare and then analyze the Coq Community Survey. The survey was held in February 2022 and received 466 responses. It allowed to get an uptodate picture of the Coq community and feedback on which to base future development decisions. Since the survey, the working group has been processing the responses and publishing partial results in the form of blog posts and a presentation at the Coq workshop by Ana Borges. Emilio J. Gallego Arias took an active part in this working group.
8.4.3 Software infrastructure and Tools
Emilio J. Gallego Arias continued work on revamping Coq's build system as to implement a workflow based on the stateoftheart, industrial build system Dune. Many improvements were made including porting the OCaml parts of Coq to Dune, which allowed the team to remove large parts of custom build code, and with Ali Caglayan, Coq's test suite was made incremental. Additionally, Emilio J. Gallego Arias coordinated the release of Dune version 2.9. Many other improvements as to make Coq more modular and better prepared for upcoming incremental and multithreaded typechecking were also made.
Hugo Herbelin, Emilio J. Gallego Arias and Théo Zimmermann, helped by members from Gallinette (Nantes) and Stamp (exMarelle, SophiaAntipolis), devoted an important part of their time to coordinate the development, to review propositions of extensions of Coq from external and/or young contributors, and to propose themselves extensions, amounting to hundreths of proposals in the form of pull requests. Moreover, we organized a beginnerfocused community Hackathon in early 2022, including a diversity session, with peak attendance of over 100 contributors. Similar community events are planned later on.
Emilio J. Gallego Arias and Shachar Itzaky continued the development of the educationtargeted tool jsCoq, which saw in 2021 5 new releases bringing many new features and refinements, and in particular a new backend that has made us declare the tool "production ready" for the first time.
Emilio J. Gallego Arias also maintained the coqserapi tool, used in a few labs as the standard communication API with Coq to perform experiments (including machine learning ones). In collaboration with Thierry Martinez, Gallego Arias also released a pyCoq package which is specifically targeted at learning and software engineering researchers using Coq for their experiments.
8.5 Formalisation and verification
Participants: Emilio Jesús Gallego Arias, Pierre Letouzey, JeanJacques Lévy, Daniel de Rauglaudre, Yann RégisGianas, Alexis Saurin.
8.5.1 Lexing and regular expressions in Coq
Pierre Letouzey continued working on a Coq formalisation started with Yann RégisGianas, on regular expressions (with complement and conjunction) and their Brzozowski derivatives. Many techniques have been attempted to prove correct the exact details used in a realworld implementation (mlulex), but a complete proof of this implementation is still elusive.
8.5.2 Hofstadter nested recursive functions and Coq
Pierre Letouzey continued this year the study of a family of nested recursive functions proposed by D. Hofstadter in his book “Gödel Escher Bach”. Some earlier conjectures have been proved. In particular, the appearance of a Rauzy fractal during this work is now better understood. The formalization of these proofs are pending, requiring quite some matrix theory and complex polynomials. Another important conjecture states that this family of nested functions is increasing. Despite some progress, this conjecture still lacks a complete proof. More details on this site.
8.5.3 Sensitivity Conjecture in Coq
Daniel de Rauglaudre pursued his formalization in Coq of the Sensitivity Conjecture (which became a Theorem in 2019 thanks to Hao Huang 74). The sensitivity conjecture remained an openproblem for more than thirty years, aiming to relate the sensitivity of a Boolean function results to its input values to other complexity measures of Boolean functions, such as block sensitivity. De Rauglaudre started to formalize Huang's very succinct proof of the conjecture.
For proving some lemmas in this theorem, numerous formalizations in Linear Algebra (matrices, determinants, eigenvalues, permutations, sorting etc.) have been implemented. In this context, a study of algebra of ringlike structures has been started, and some syntax of iterators have been studied and added. This development is available a here.
8.5.4 Proofs of algorithms on graphs
JeanJacques Lévy pursues his work about formal proofs of graph algorithms. The goal is to provide computerchecked proofs of algorithms that remain human readable. At ITP 2019 50, they presented an article with Chen Ran, Cyril Cohen, Stephan Merz and Laurent Théry on three different ways of proving such an algorithm in Why3, Coq and Isabelle/HOL. By publishing the entire proofs, they encouraged the community to compare our proofs with the ones possible in other machinechecked proof systems.
JeanJacques Lévy now remodels his proof with new versions of Why3 and also plan to compare the existing Coq proof using Mathcomp/ssreflect with a proof using Coq classics. He still works on a proof of implementation of Tarjan SCC algorithm with imperative programming and memory pointers.
8.5.5 Iterated parametricity and semicubical sets
Hugo Herbelin and Ramkumar Ramachandra carried on their formalization in Coq of an original dependentlytyped construction of semicubical sets inspired by the parametricity translation. This continued to highly stressed the limits of Coq, especially in terms of secondorder unification, higherorder rewriting, efficiency.
8.5.6 Verified Datalog programs with applications to lowlevel binary analysis
Emilio J. Gallego Arias continued collaboration with Stefania Dumbrava and Cody Roux on the use of our verified Datalog engine 47 for the analysis of lowlevel binary code. In particular, using metacoq we have developed a method to translate datalog programs to Coq proof friendly specifications while preserving the semantic correspondence with the verified engine. This allows us to specify analysis as efficient datalog programs, but to prove properties about them using a more convenient native to Coq representation.
8.5.7 Infinitary Proofs and Parity Automaton
Esaïe Bauer, Emilio J. Gallego Arias and Alexis Saurin have started a Coq formalization of infinitary proofs and their validity checking using Parity Automaton. They have started from the proof methodology developed for the the mathcomp library, but this particular topic poses many interesting challenges from the point of view of proof engineering, in particular related to the formalization of infinite graphs and automaton in a natural way.
8.5.8 Realtime Digital Signal Processing
Emilio J. Gallego Arias and Pierre Jouvelot presented their work on a formalized synchronous language for linear DSP processors at the FARM 2021 conference (part of ICFP), which was held virtually. The development produced a paper and uses techniques from the programming language literature such as logical relations to prove that every well typed program is linear (in the linear algebra sense). This opens up the door to many other interesting developments which are being discussed now.
8.5.9 Mechanism design
Emilio J. Gallego Arias collaborated with Pierre Jouvelot on the formalized verification of the general VickreyClarkeGroves mechanism (see for example 83) using Coq, designing a Coqbased framework for the specification and refinement of mechanisms, covering classical examples from the literature. This has resulted in a draft 35 already presented as a poster at EC'22 38.
Participants: Emilio Gallego, Hugo Herbelin, PaulAndré Melliès, Alexis Saurin, Théo Zimmermann.
9 Bilateral contracts and grants with industry
9.1 Bilateral contracts with industry
The team has an ongoing industrial contract started with Nomadics Lab aiming at improving the development of Coq (continuous integration, merging of pull requests, bug tracking, improving the release process, ...) and of its package ecosystem (for instance building documented best practices, tools and easy installers for newcomers). Theo Zimmermann decided to quit in the end of 2022 his 3year engineer position (started in January 2020 funded by this contract) after getting a maître de conférences position in Telecom Paris Tech. His role has been to pursue his research and development work about improving the Software Engineering practices of the development of Coq, especially to continue the improvement of the collaborative development processes and of its ecosystem. The team plans to continue having scientific collaboration with Zimmermann on this topic.
10 Partnerships and cooperations
Participants: Kostia Chardonnet, PierreLouis Curien, Abhishek De, Alen Duric, Thomas Ehrhard, Emilio Jesus Gallego Arias, Hugo Herbelin, Farzad JafarRahmani, Pierre Letouzey, PaulAndre Mellies, Alexis Saurin.
10.1 International initiatives
10.1.1 Participation in other International Programs
Thomas Ehrhard chairs the frenchitalian GDRI on Linear Logic which is finishing this year. PaulAndré Melliès and Alexis Saurin are also members of the GDRI.
Thomas Ehrhard and PaulAndré Melliès are international members of the EPSRC project "Resources in Computation" chaired by Samson Abramsky (UCL) and Anuj Dawar (Cambridge).
10.2 International research visitors
Other international visits to the team
Bahareh Afshari

Status
Professor

Institution of origin:
Götenburg University

Country:
Sweden

Dates:
1 to 3 December 2022

Context of the visit:
participated to Abhishek De's PhD defense and participated to RECIPROG workshop where she gave a talk on interpolation in the modal $\mu $calculus.

Mobility program/type of mobility:
research stay.
Shachar Itzhaky

Status
Senior Lecturer

Institution of origin:
Technion University

Country:
Israël

Dates:
18 to 25 September 2022

Context of the visit:
gave a research seminar on Monday 19 September and worked with members of the Picube team during his stay in Paris.

Mobility program/type of mobility:
research stay.
Patricia Johann

Status
Full Professor

Institution of origin:
Appalachian State University, North Carolina

Country:
United States

Dates:
18 to 25 October 2022

Context of the visit:
She worked with members of the Picube team during her stay and also participated as an examiner in Hugo Moeneclaey's thesis defence.

Mobility program/type of mobility:
research stay.
Ambrus Kaposi

Status
Associate Professor

Institution of origin:
Eötvös Loránd University in Budapest

Country:
Hungary

Dates:
18 to 20 October 2022

Context of the visit:
He gave a research seminar on Wednesday 19 October and worked with members of the Picube team during his stay in Paris. He also participated as an examiner in Hugo Moeneclaey's thesis defence.

Mobility program/type of mobility:
research stay.
10.3 National initiatives
PierreLouis Curien, Thomas Ehrhard, Emilio J. Gallego Arias, Hugo Herbelin, PaulAndré Melliès and Alexis Saurin are members of the GDR Informatique Mathématique, in the LHC (Logique, Homotopie, Catégories) and Scalp (Structures formelles pour le calcul et les preuves) working groups. Alexis Saurin is coordinator of the Scalp working group (see website here).
PierreLouis Curien and PaulAndré Melliès are members of the GDR Homotopie, federating French researchers working on classical topics of algebraic topology and homological algebra, such as homotopy theory, group homology, Ktheory, deformation theory, and on more recent interactions of topology with other themes, such as higher categories and theoretical computer science.
Alexis Saurin is member of the ${S}^{3}$ ANR project coordinated by Christine Tasson (Sorbonne Université).
Kostia Chardonnet, Abhishek De, Thomas Ehrhard, Farzad Jafarrahmani, Hugo Herbelin, PaulAndré Melliès, Daniela Petrisan and Alexis Saurin (coordinator) are members of the fouryear RECIPROG project. RECIPROG is an ANR collaborative project (aka. PRC) started in the fall 20212022 and running till the end of 2025. ReCiProg aims at extending the proofsasprograms correspondence to recursive programs and circular proofs for logic and type systems using induction and coinduction. The project will contribute both to the necessary theoretical foundations of circular proofs and to the software development allowing to enhance the use of coinductive types and coinductive reasoning in the Coq proof assistant: such coinductive types present, in the current state of the art serious defects that the project will aim at solving.
The project is coordinated by Alexis Saurin and has four sites: IRIF in Paris Where $\pi .{r}^{2}$ is located, LIP in Lyon, LIS in Marseille and LS2N in Nantes. More informations on the project can be found at this website.
Two project workshops were organized in 2022: in Lyon in May 2022 and in Paris in December 2022.
In collaboration with Riccardo Brasca and Antoine ChambertLoir, two mathematicians specialists in number theory working at the Institut de Mathématiques de Jussieu Paris Rive Gauche (IMJPRG), Hugo Herbelin, Pierre Letouzey, PaulAndré Melliès and Alexis Saurin submitted an Emergence Recherche project to the Université Paris Cité, APRAPRAM. The aim of the project is to contribute to a formalization of Fermat's last theorem in the special case of regular primes, targeting a crossfertilization between the lean and coq communities.
11 Dissemination
Participants: Antoine Allioux, Esaïe Bauer, Vincent Blazy, Kostia Chardonnet, El Mehdi Cherradi, PierreLouis Curien, Alen Duric, Thomas Ehrhard, Emilio Jesus Gallego Arias, Hugo Herbelin, Farzad JafarRahmani, Pierre Letouzey, Giulia Manara, PaulAndre Mellies, Vincent Moreau, Sarah Reboullet, Alexis Saurin, Clément Théron.
11.1 Promoting scientific activities
11.1.1 Scientific events: organisation
Member of the organizing committees
Alexis Saurin is member of the organizing committee of the annual Scalp meeting, to be held at CIRM in February 2023.
Emilio Gallego, Hugo Herbelin, PaulAndré Melliès and Alexis Saurin, together with Chantal Keller and Marie Kerjean, are members of the organizing committee of the thematic day on proof assistants to be held at JNIM 2023 (Journées nationales du GDRIM) early april 2023.
11.1.2 Journal
Member of the editorial boards
PaulAndré Melliès is a member of the editorial board of the journal Theoretical Computer Science.
11.1.3 Invited talks
PaulAndré Melliès and Alexis Saurin gave an invited lecture in the linear logic winter school held at CIRM from 24 to 28th january 2022 during the Logic and interaction weeks (CIRM 2022).
Alexis Saurin was an invited speaker at the Logic in Computer Science special session of the Logic Colloquium in Reykjavick (LC 2022), 27th june to 1st july 2022.
11.1.4 Leadership within the scientific community
Alexis Saurin is cochair of the Scalp working group in GDRIM (GT Scalp).
11.1.5 Research administration
Alexis Saurin is an elected member in conseil académique de la faculté des sciences de l'Université Paris Cité and of the commission recherche.
PaulAndré Melliès is a member of the conseil de laboratoire de l'Institut de Recherche en Informatique Fondamentale (IRIF).
11.2 Teaching  Supervision  Juries
11.2.1 Supervision
PhD supervision
 PhD in progress: Esaie Bauer, on the CurryHoward correspondence between temporal logic proofs and reactive programming, Université de Paris, started in September 2021, supervised by Alexis Saurin and Thomas Ehrhard.
 PhD in progress: Giulia Manara, Towards parallel cut elimination in MELL proof structures, started in October 2021, supervised by Thomas Ehrhard.
 PhD in progress: Vincent Moreau, on the connections between higherorder automata and topological duality, started in September 2021, supervised by PaulAndré Melliès and Sam van Gool.
 PhD in progress: Sarah Reboullet, Parametricity and Univalence, started in September 2021, supervised by Hugo Herbelin.
 PhD in progress: Clément Théron, sémantique interactive et vectorielle de la programmation probabiliste et différentielle, started in September 2021, supervised by Thomas Ehrhard and PaulAndré Melliès
 PhD in progress: Vincent Blazy, Finegraine structure of universe subtyping in Coq and applications to program certification and mathematical foundations, Université de Paris, started in September 2020, supervised by Hugo Herbelin and Pierre Letouzey.
 PhD in progress: Kostia Chardonnet, Inductive and coinductive types in quantum programming languages, Université Paris Saclay, started in November 2019, supervised by Alexis Saurin and Benoît Valiron. Defense planned january 2023
 PhD in progress: El Medhi Cheraddi, Computational and interactive interpretation of homotopy type theory, started in september 2021, supervised by PaulAndré Melliès.
 PhD in progress: Alen Đurić, Normalisation for monoids and higher categories, Université de Paris, started in October 2O19, supervised by Yves Guiraud and PierreLouis Curien. Defense planned in 2023
 PhD in progress: Farzad JafarRahmani, Denotational semantics of circular and nonwellfounded proofs, Université de Paris, started in October 2019, supervised by Thomas Ehrhard and Alexis Saurin. Defense planned in january 2023
 PhD in progress: Hugo Moeneclaey, Syntax of spheres in homotopy type theory, Université de Paris, started in September 2019, supervised by Hugo Herbelin.
 PhD in progress: Antoine Allioux, Opetopes in Type Theory, Université de Paris, since March 2018, supervised by Yves Guiraud and Matthieu Sozeau. The defense should take place in july 2023.
 PhD defended: Abhishek De, Proofnets for fixedpoint logics and nonwellfounded proofs, Université de Paris, since October 2018, supervised by Alexis Saurin.
Master supervision
 PierreLouis Curien, jointly with François Métayer, supervised the M2 internship (Université de Paris, parcours Mathématiques Fondamentales) of Aloÿs Dufour, on various notions of contractibility for simplicial sets. Aloÿs Dufour is now a doctoral student under the supervision of Damiano Mazza at Université Sorpbonne Paris Nord.
 PierreLouis Curien, jointly with Samuel Mimram, supervised the M2 internship (Sorbonne Université, parcours Mathématiques Fondamentales) of Naomi Jacquet on model structures for presentations and Lawvere theories. Unfortunately, Naomi experienced serious health problems and regretfully had to abandon.
11.2.2 Juries
Alexis Saurin was member of comité de sélection MCF for UFR de mathématiques in Université Paris Cité for hiring a MCF in mathematics for research integration to IRIF.
11.3 Popularization
11.3.1 Education
PierreLouis Curien taught a course on homotopic algebra and higher categories in LMFI (Logique mathématiques et fondements de l'informatique) secondyear Master, Université Paris Cité.
Pierre Letouzey taught a course on Coq in LMFI (Logique mathématiques et fondements de l'informatique) secondyear Master, Université Paris Cité.
Alexis Saurin taught a lecture on Secondorder quantification and fixedpoints in logic in LMFI (Logique mathématiques et fondements de l'informatique) secondyear master, Université Paris Cité.
Hugo Herbelin and PaulAndré Melliès taught a course on homotopy type theory in LMFI (Logique mathématiques et fondements de l'informatique) secondyear Master, Université Paris Cité.
Together with Michele Pagani (IRIF), PaulAndré Melliès and Thomas Ehrhard taught a course on denotational semantics and linear logic at MPRI (Master Parisien de Recherche en Informatique) secondyear Master, Université Paris Cité.
PaulAndré Melliès taught a course on lambdacalculus and categories at MPRI (Master Parisien de Recherche en Informatique) firstyear Master, at ENS Paris (Ecole Normale Supérieure).
12 Scientific production
12.1 Major publications
 1 inproceedingsInfinitary proof theory : the multiplicative additive case .Proceedings of CSL 2016September 2016
 2 articleRevisiting the categorical interpretation of dependent type theory.Theoretical computer Science5462014, 99119URL: http://dx.doi.org/10.1007/s1099000790060
 3 incollectionAbstract machines for dialogue games.Interactive models of computation and program behaviorPanoramas et SynthèsesSociété Mathématique de France2009, 231275
 4 inproceedingsThe duality of computation.Proceedings of the Fifth ACM SIGPLAN International Conference on Functional Programming (ICFP '00)SIGPLAN Notices 35(9)Montreal, CanadaACMSeptember 1821 2000, 233243URL: http://hal.archivesouvertes.fr/inria00156377/en/
 5 inproceedingsOperads, clones, and distributive laws.Operads and Universal Algebra : Proceedings of ChinaFrance Summer ConferenceNankai Series in Pure, Applied Mathematics and Theoretical Physics, Vol. 9Tianjin, ChinaWorld ScientificJuly 2010, 2550
 6 articleQuadratic normalization in monoids.Internat. J. Algebra Comput.2652016, 935972URL: https://doi.org/10.1142/S0218196716500399
 7 inproceedingsjsCoq: Towards Hybrid Theorem Proving Interfaces.Proceedings of the 12th Workshop on User Interfaces for Theorem Provers, Coimbra, Portugal, 2nd July 2016239Electronic Proceedings in Theoretical Computer ScienceOpen Publishing Association2017, 1527URL: http://dx.doi.org/10.4204/EPTCS.239.2
 8 articleCoherent presentations of Artin monoids.Compositio Mathematica15152015, 957998
 9 inproceedingsDefinitional ProofIrrelevance without K.46th ACM SIGPLAN Symposium on Principles of Programming Languages (POPL 2019POPLLisbon, PortugalJanuary 2019
 10 articleConvergent presentations and polygraphic resolutions of associative algebras.Mathematische Zeitschrift293122019, 113179
 11 articleHigherdimensional normalisation strategies for acyclicity.Advances in Mathematics231342012, 22942351
 12 inproceedingsA Homotopical Completion Procedure with Applications to Coherence of Monoids.RTA  24th International Conference on Rewriting Techniques and Applications  201321Leibniz International Proceedings in Informatics (LIPIcs)Eindhoven, NetherlandsSchloss DagstuhlLeibnizZentrum fuer InformatikJune 2013, 223238
 13 phdthesisRewriting methods in higher algebra.Université Paris 7June 2019
 14 inproceedingsA Constructive Proof of Dependent Choice, Compatible with Classical Logic.LICS 2012  27th Annual ACM/IEEE Symposium on Logic in Computer ScienceProceedings of the 27th Annual ACM/IEEE Symposium on Logic in Computer Science, LICS 2012, 2528 June 2012, Dubrovnik, CroatiaDubrovnik, CroatiaIEEE Computer SocietyJune 2012, 365374
 15 inproceedingsAn intuitionistic logic that proves Markov's principle.Logic In Computer ScienceEdinburgh, RoyaumeUniIEEE Computer Society2010
 16 inproceedingsOn the Degeneracy of SigmaTypes in Presence of Computational Classical Logic.Proceedings of TLCA 20053461Lecture Notes in Computer ScienceSpringer2005, 209220
 17 inproceedingsExtending Type Theory with Forcing.LICS 2012 : Logic In Computer ScienceDubrovnik, CroatiaJune 2012
 18 techreportHofstadter's problem for curious readers.Université Paris Diderot ; INRIA ParisRocquencourtSeptember 2015, 29
 19 bookHomotopy type theoryunivalent foundations of mathematics.The Univalent Foundations Program, Princeton, NJ; Institute for Advanced Study (IAS), Princeton, NJ2013, xiv+589URL: http://homotopytypetheory.org/book
 20 inproceedingsA Hoare Logic for CallbyValue Functional Programs.Proceedings of the Ninth International Conference on Mathematics of Program Construction (MPC'08)5133Lecture Notes in Computer ScienceSpringerJUL 2008, 305335URL: http://gallium.inria.fr/~fpottier/publis/regisgianaspottierhoarefp.ps.gz
 21 articleA comprehensible guide to a new unifier for CIC including universe polymorphism and overloading.Journal of Functional Programming272017
12.2 Publications of the year
International journals
 22 articleCoherent presentations of monoids with a rightnoetherian Garside family.Journal of Homotopy and Related Structures182023, 115152
 23 articleLayered and ObjectBased Game Semantics *.Proceedings of the ACM on Programming LanguagesJanuary 2022
 24 articleThe Advantages of Maintaining a Multitask, ProjectSpecific Bot: An Experience Report.IEEE SoftwareJune 2022, 27
International peerreviewed conferences
 25 inproceedingsBouncing threads for circular and nonwellfounded proofs  Towards compositionality with circular proofs (Extended version).LICS '22: Proceedings of the 37th Annual ACM/IEEE Symposium on Logic in Computer ScienceLICS '22: Proceedings of the 37th Annual ACM/IEEE Symposium on Logic in Computer ScienceHaifa, IsraelAssociation for Computing Machinery2022
 26 inproceedingsDecision Problems for Linear Logic with Least and Greatest Fixed Points.7th International Conference on Formal Structures for Computation and Deduction (FSCD 2022)7th International Conference on Formal Structures for Computation and Deduction (FSCD 2022)Haifa, IsraelAugust 2022
 27 inproceedingsPhase Semantics for Linear Logic with Least and Greatest Fixed Points.FSTTCS 2022  42nd IARCS Annual Conference on Foundations of Software Technology and Theoretical Computer Science250Chennai, IndiaDecember 2022, 35:135:23
 28 inproceedingsAutomatic TestCase Reduction in Proof Assistants: A Case Study in Coq.Leibniz International Proceedings in Informatics (LIPIcs)13th International Conference on Interactive Theorem Proving (ITP 2022)23713th International Conference on Interactive Theorem Proving (ITP 2022)Haifa, IsraelAugust 2022, 18:118:18
 29 inproceedingsA Functorial Excursion Between Algebraic Geometry and Linear Logic.LICS 2022 : Proceedings of the 37th Annual ACM/IEEE Symposium on Logic in Computer ScienceLICS 2022  37th Annual ACM/IEEE Symposium on Logic in Computer ScienceHaifa, IsraelAugust 2022
Conferences without proceedings
 30 inproceedingsHydras & Co.: Formalized mathematics in Coq for inspiration and entertainment.Journées Francophones des Langages Applicatifs: JFLA 2022StMédard d'Excideuil, FranceFebruary 2022
 31 inproceedingsParsing as a lifting problem and the ChomskySchützenberger representation theorem.MFPS 2022  38th conference on Mathematical Foundations for Programming SemanticsIthaca, NY, United StatesJuly 2022
 32 inproceedingsReliably Reproducing MachineChecked Proofs with the Coq Platform.RRRR 2022  Workshop on Reproducibility and Replication of Research ResultsMunich, GermanyApril 2022
Reports & preprints
 33 miscA CurryHoward Correspondence for Linear, Reversible Computation.August 2022
 34 miscThe ManyWorlds Calculus.August 2022
 35 reportA Foundational Framework for the Specification and Verification of Mechanism Design.E458.PDFMINES ParisTech  PSL Research UniversityMay 2022
 36 miscTracking Redexes in the Lambda Calculus.February 2022
Other scientific publications
 37 miscCoq Community Survey 2022: Summary of Results.Haifa, IsraelAugust 2022
 38 inproceedingsA Foundational Framework for the Specification and Verification of Mechanism Design.EC'22  TwentyThird ACM Conference on Economics and ComputationColorado, United StatesJuly 2022
12.3 Cited publications
 39 inproceedingsA functional quantum programming language.20th Annual IEEE Symposium on Logic in Computer Science (LICS' 05)2005, 249258
 40 articleOn the Homology of Associative Algebras.Trans. Amer. Math. Soc.29621986, 641659

41
articleThe BrownGolasiński Model Structure on strict
$$ groupoids revisited.Homology, Homotopy and Applications1312011, 121142  42 inproceedingsInfinitary Proof Theory: the Multiplicative Additive Case.CSL62LIPIcsSchloss Dagstuhl  LeibnizZentrum für Informatik2016, 42:142:17
 43 articleHigherdimensional algebra. VI. Lie 2algebras.Theory Appl. Categ.122004, 492538
 44 bookThe Lambda Calculus: Its Syntax and Semantics.AmsterdamNorth Holland1984
 45 bookInteractive Theorem Proving and Program Development Coq'Art: The Calculus of Inductive Constructions.Springer2004
 46 articlePolygraphic Programs and PolynomialTime Functions.Logical Methods in Computer Science522009, 137
 47 articleCertified Graph Maintenance with Regular Datalog.Theory and Practice of Logic Programming2018
 48 techreportAUTOMATH, a language for mathematics.66WSK05Technological University EindhovenNovember 1968
 49 articleHigherdimensional word problems with applications to equational logic.Theoretical Computer Science1151jul 1993, 4362

50
inproceedingsFormal Proofs of Tarjan's Strongly Connected Components Algorithm in Why3, Coq and Isabelle.ITP 2019  10th International Conference on Interactive Theorem Proving141Portland, United StatesSchloss Dagstuhl–LeibnizZentrum f
ur InformatikSeptember 2019, 13:1  13:19  51 bookCertified Programming with Dependent Types  A Pragmatic Introduction to the Coq Proof Assistant.MIT Press2013, URL: http://mitpress.mit.edu/books/certifiedprogrammingdependenttypes
 52 articleA set of Postulates for the foundation of Logic.Annals of Mathematics21932, 33, 346366
 53 inproceedingsConstructions : A Higher Order Proof System for Mechanizing Mathematics.EUROCAL'85203Lecture Notes in Computer ScienceLinzSpringer Verlag1985
 54 inproceedingsInductively defined types.Proceedings of Colog'88417Lecture Notes in Computer ScienceSpringer Verlag1990
 55 phdthesisUne théorie des Constructions.University Paris 7January 1985
 56 bookCombinatory Logic.1§9ENorthHolland1958
 57 articleAction du groupe des tresses sur une catégorie.Invent. Math.12811997, 159175
 58 articleCoherent differentiation.CoRRabs/2107.052612021, URL: https://arxiv.org/abs/2107.05261
 59 inproceedingsReasoning with continuations.First Symposium on Logic and Computer Science1986, 131141
 60 inproceedingsRepresenting Monads.Conf. Record 21st ACM SIGPLANSIGACT Symp. on Principles of Programming Languages, POPL'94Portland, OR, USAACM PressJan 1994, 446457
 61 articleUntersuchungen über das logische Schließ.Mathematische Zeitschrift391935, 176210,405431
 62 incollectionUne extension de l'interpretation de Gödel à l'analyse, et son application à l'élimination des coupures dans l'analyse et la théorie des types.Second Scandinavian Logic SymposiumStudies in Logic and the Foundations of Mathematics63North Holland1971, 6392
 63 inproceedingsThe FormulaeasTypes Notion of Control.Conf. Record 17th Annual ACM Symp. on Principles of Programming Languages, POPL '90San Francisco, CA, USA, 1719 Jan 1990ACM Press1990, 4757
 64 inproceedingsConfluence of linear rewriting and homology of algebras.3rd International Workshop on ConfluenceVienna, AustriaJuly 2014
 65 articleCoherence in monoidal track categories.Math. Structures Comput. Sci.2262012, 931969
 66 articleHigherdimensional categories with finite derivation type.Theory Appl. Categ.22182009, 420478
 67 articleIdentities among relations for higherdimensional rewriting systems.Séminaires et Congrès, Société Mathématique de France262011, 145161
 68 phdthesisPrésentations d'opérades et systèmes de réécriture.Univ. Montpellier~22004
 69 articleTermination Orders for 3Dimensional Rewriting.Journal of Pure and Applied Algebra20722006, 341371
 70 articleThe Three Dimensions of Proofs.Annals of Pure and Applied Logic141122006, 266295
 71 articleTwo Polygraphic Presentations of Petri Nets.Theoretical Computer Science360132006, 124146
 72 incollectionThe groupoid interpretation of type theory.Twentyfive years of constructive type theory (Venice, 1995)36Oxford Logic GuidesOxford Univ. Press, New York1998, 83111
 73 incollectionThe formulaeastypes notion of constructions.to H.B. Curry: Essays on Combinatory Logic, Lambda Calculus and FormalismUnpublished manuscript of 1969Academic Press1980
 74 articleInduced subgraphs of hypercubes and a proof of the Sensitivity Conjecture.Annals of Mathematics19032019, 949955URL: https://www.jstor.org/stable/10.4007/annals.2019.190.3.6
 75 articleA callbyname lambdacalculus machine.Higher Order and Symbolic Computation2005
 76 unpublishedUn interpréteur du lambdacalcul.1986, Unpublished
 77 articleA Folk Model Structure on OmegaCat.Advances in Mathematics22432010, 11831231
 78 articleTowards an Algebraic Theory of Boolean Circuits.Journal of Pure and Applied Algebra1842003, 257310
 79 techreportA generalisation of jumps and labels.ECSLFCS8866Reprinted in \tt Higher Order and Symbolic Computation, 11(2), 1998UNIVAC Systems Programming ResearchAugust 1965
 80 articleThe mechanical evaluation of expressions.The Computer Journal64January 1964, 308320
 81 phdthesisCritères de finitude homologique pour la non convergence des systèmes de réécriture de termes.Univ. Montpellier~22004
 82 techreportA theory of types.713University of Stockholm1971
 83 bookAlgorithmic Game Theory.New York, NY, USACambridge University Press2007
 84 inproceedingsFree Deduction: An Analysis of "Computations" in Classical Logic.Logic Programming, Second Russian Conference on Logic Programming592Lecture Notes in Computer ScienceSt. Petersburg, RussiaSpringerSeptember 1116 1991, 361380URL: http://www.informatik.unitrier.de/~ley/pers/hd/p/Parigot:Michel.html
 85 inproceedingsDefinitional interpreters for higherorder programming languages.ACM '72: Proceedings of the ACM annual conferenceNew York, NY, USABoston, Massachusetts, United StatesACM Press1972, 717740
 86 inproceedingsTowards a theory of type structure.Symposium on Programming19Lecture Notes in Computer ScienceSpringer1974, 408423
 87 articleA finiteness condition for rewriting systems.Theoret. Comput. Sci.13121994, 271294
 88 articleWord problems and a homological finiteness condition for monoids.J. Pure Appl. Algebra49121987, 201217
 89 articleLimits Indexed by CategoryValued 2Functors.Journal of Pure and Applied Algebra81976, 149181
 90 miscThe Coq Proof Assistant, version 8.7.1.December 2017, URL: https://doi.org/10.5281/zenodo.1133970
 91 inproceedingsImpact of switching bug trackers: a case study on a mediumsized open source project.ICSME 2019  International Conference on Software Maintenance and EvolutionCleveland, United StatesSeptember 2019