Homotopy Type Theory (HoTT) is a contemporary approach to the foundations of mathematics that draws on ideas from logic, theoretical computer science, and homotopy theory. HoTT is built on type theory, which already serves as the foundation for proof assistants such as Lean and Rocq, and introduces a radical change: instead of considering the fundamental objects of the theory to be sets, HoTT uses spaces (infinity-groupoids). The entire language thus takes on a topological character: proofs of equalities become paths, statements are automatically homotopy-invariant, and so on. This shift in perspective is doubly useful:
- For the computer scientist, it fills some gaps in Martin-Löf type theory by introducing quotient types, function extensionality, and the ability to do representation-independent reasoning.
- For the mathematician, it provides a framework for developing homotopy theory in a synthetic and constructive manner, without having to rely on combinatorial models such as simplicial sets.
In technical terms, HoTT adds two axioms to the language of type theory: the univalence axiom, which identifies equality between types with equivalences, and higher inductive types (HITs), which allow for the definition of higher dimensional types [5]. However, HoTT leaves out an important aspect of the theory: its effectiveness. Indeed, the language of type theory has a well-defined computational behavior, which lets us evaluate any proof of a concrete statement and obtain an explicit value. But the axioms added by HoTT have no clear computational content. Today, the only way to evaluate a proof written in HoTT is through cubical type theory (CTT) [3], which is a different extension of type theory that implements the HoTT axioms while retaining computational content. However, in practice, it is not always easy to compute with CTT!
The goal of this thesis is to study how to compute efficiently with HoTT and CTT. We propose three approaches:
I. Computing topological invariants with CW complexes Thanks to its effectiveness, it is theoretically possible to use CTT to compute topological invariants such as homotopy groups and (co)homology groups based on their mere definitions (provided they are constructive). However, a naive definition will not yield an efficient computational algorithm: a well known example is the Brunerie number [1], an integer defined in CTT via homotopic constructions which we know mathematically should evaluate to -2, but its evaluation fills up the computer's memory. We propose to investigate more suitable definitions for computation, such as the definition of homology groups of CW complexes [4] in terms of cellular homology and matrix operations.
II. Evaluating Cubical Type Theory using Rocq In addition to the use of overly naive definitions, one reason for the inefficiency of CTT is that the only available implementation, Cubical Agda, is not optimized for computation. In contrast, Rocq and Lean offer powerful tools for evaluating definitions by compiling them down to native code. We propose to define a syntactic translation from CTT to Rocq's type theory, based on the method outlined in [2]. This will, on the one hand, provide the first fully formal framework for studying the semantics of CTT, and on the other hand, allow us to leverage Rocq's capabilities to evaluate definitions in CTT.
III. Conservativity of Cubical Type Theory CTT is currently the only available tool for evaluating proofs written in HoTT. However, since CTT's language is richer than that of HoTT, there is a priori no guarantee that a result obtained by computation in CTT corresponds to an equality which is provable in HoTT. Conservativity results exist for integers, but the problem remains wide open for more complex types. We propose the use of syntactic methods (as in Part II) to address this problem. In the longer run, we could envision an automated tool that takes a proof in CTT and reconstructs a proof of the same statement in HoTT.
[1] Guillaume Brunerie. Sur les groupes d'homotopie des sphères en théorie des types homotopiques. PhD thesis, Université Nice Sophia Antipolis, 2016.
[2] Loïc Pujet. Computing with Extensionality Principles in Type Theory. PhD thesis, Université de Nantes, 2022.
[3] Cyril Cohen, Thierry Coquand, Simon Huber, and Anders Mörtberg. Cubical type theory: A constructive interpretation of the univalence axiom. 2017.
[4] Axel Ljungström and Loïc Pujet. Cellular methods in homotopy type theory, 2026. submitted.
[5] The Univalent Foundations Program. Homotopy Type Theory: Univalent Foundations of Mathematics. 2013.