The Groupoid-Syntax of Type Theory Is a Set
Abstract
Categories with families (CwFs) have been used to define the semantics of type theory in type theory. In the setting of Homotopy Type Theory (HoTT), one of the limitations of the traditional notion of CwFs is the requirement to set-truncate types, which excludes models based on univalent categories, such as the standard set model. To address this limitation, we introduce the concept of a Groupoid Category with Families (GCwF). This framework truncates types at the groupoid level and incorporates coherence equations, providing a natural extension of the CwF framework when starting from a 1-category.
We demonstrate that the initial GCwF for a type theory with a base family of sets and -types (groupoid-syntax) is set-truncated. Consequently, this allows us to utilize the conventional intrinsic syntax of type theory while enabling interpretations in semantically richer and more natural models. All constructions in this paper were formalised in Cubical Agda.
Keywords and phrases:
Categorical models of type theory, category with families, groupoids, coherence, homotopy type theoryCopyright and License:
2012 ACM Subject Classification:
Theory of computation Type theorySupplementary Material:
Software (Source Code): https://bitbucket.org/akaposi/cohttarchived at
swh:1:dir:13849af00ff393300c0ae6cdd47ba6ddfa0d1cd8
Acknowledgements:
We thank the reviewers for their helpful comments and suggestions. We thank Niels van der Weide for explaining us the relationship to comprehension categories.Funding:
The first author was supported by project no. TKP2021-NVA-29 which has been implemented with the support provided by the Ministry of Culture and Innovation of Hungary from the National Research, Development and Innovation Fund, financed under the TKP2021-NVA funding scheme. The second and third authors were funded by the European Union (ERC, HOTT, 101170308). Views and opinions expressed are however those of the author(s) only and do not necessarily reflect those of the European Union or the European Research Council. Neither the European Union nor the granting authority can be held responsible for them.Editors:
Stefano Guerrini and Barbara KönigSeries and Publisher:
Leibniz International Proceedings in Informatics, Schloss Dagstuhl – Leibniz-Zentrum für Informatik
1 Introduction
In [5], an intrinsically typed syntax for basic type theory using a Quotient-Inductive-Inductive Type (QIIT) was introduced. By intrinsically typed, we mean that the syntax directly enforces typing constraints, eliminating the need for separate untyped preterms needed in extrinsic presentations. The equational theory is integrated naturally using path constructors from Homotopy Type Theory (HoTT), while set-truncation ensures that types behave as sets.
QIITs are a special case of Higher Inductive-Inductive Types (HIITs) where all types are truncated to sets by adding a higher path constructor. The term inductive-inductive signals that constructors can reference other constructors in their types. In essence, [5] defined the syntax of type theory as the initial111Initiality is equivalent to induction for any QIIT [26], this been generalised to HIITs by Sattler [33]. In this paper, we use the terms initial model and syntax interchangeably. Category with Families (CwF) with -types and an uninterpreted base family. This allowed the syntax to be interpreted in any CwF with the necessary structure and served as the foundation for a proof of normalisation using Normalisation by Evaluation (NbE) [6].
However, this approach had a significant limitation: the syntax could not be interpreted in the intended model where types are sets. This issue arose due to the use of set truncation, which enforced types to be sets but precluded a univalent semantics, such as . To work around this, inductive-recursive universes were used. While effective, this approach was unsatisfactory as it excluded univalent models, which are natural semantics for type theory.
Simply omitting set truncation is not a solution. Without truncation: (i) we cannot prove necessary equations in the syntax; (ii) the syntax itself is no longer a set, which e.g. makes equality in the syntax undecidable. A fully principled solution would require adding all higher coherences. However, this is both technically complex and generally believed to require a 2-level type theory rather than plain HoTT [29].
In this paper, we propose a middle ground: we lift the truncation level to groupoids and add a minimal set of coherence equations. This enables interpreting the syntax into the set model and other univalent category-based models. This compromise aligns naturally with the structure of categories in HoTT [36], where objects are groupoids with no truncation restriction, while hom-sets remain sets, as their name implies. Actually, if we only restrict types to be groupoids, then we can prove that contexts in the syntax also form a groupoid.
At first glance, this raises a new concern: does lifting to groupoids and adding coherence equations require redefining the syntax? Do we lose decidability of equality? Our main result resolves this concern:
The groupoid-syntax of type theory with -types and a base family has types and contexts that are sets.
In essence, we retain the set-truncated syntax of type theory while enabling evaluation in groupoid-level models. This allows us to interpret the set-truncated syntax into univalent models, such as or the container model [7]. However, we note that univalence for types cannot be assumed as a principle at the judgmental level – doing so would mean that types are not a set anymore.
Contributions.
The main contributions of this paper are as follows:
-
We introduce the notion of a Groupoid Category with Families (GCwF) with -types and a base family (Definition 20).
-
We show that the initial GCwF with -types and a base family is set-truncated.
-
We establish the above proof using an -normalisation construction.
-
As a result, we enable the definition of the univalent set model and other univalent category-based models for the set-truncated syntax.
All results are formalised in Cubical Agda.
Structure of the paper.
After listing related work, we describe our metatheory and notation in Section 2. In Section 3, we define various syntaxes as HIITs and describe the problem of interpreting the set-truncated syntax in sets. In Section 4 we show that the groupoid-syntax is a set. We use this fact in Section 5 to fix the above problem. We conclude in Section 6.
Related work.
This paper is a continuation of the series of papers internalising the intrinsic syntax of type theory in type theory [19, 15] and in homotopy type theory [34, 5]. Intrinsic syntax means that there are only well-formed, well-scoped, well-typed terms which are quotiented by conversion. This is in contrast with extrinsic style formalisations [1, 2]. We use a variant of Dybjer’s CwFs [21] introduced by Ehrhard [22, 17].
Infinite-dimensional versions of our 1-dimensional notion of model are given by Kraus and Uemura. Kraus defines a notion of -CwF [29] inside an extension of type theory with a strict equality (two-level type theory, [3, 9, 10]). He conjectures that the set-level (0-level) syntax is initial for his -model. Uemura [35] proves normalisation for an -dimensional presentation of type theory, however his work is not formalised in intensional type theory.
Our theorem that the initial GCwF with certain type formers is set-truncated can be seen as a simple coherence theorem analogous to that of monoidal categories. Coherence for monoidal categories says that in the free monoidal category over a set of objects, morphisms form a set. Our coherence theorem is for types rather than morphisms (substitutions), and we generate the types from a set-valued family using and instantiation. Coherence for monoidal groupoids was proven in HoTT by Piceghello [32], where he also used groupoid-truncated HITs to define the free monoidal groupoid.
In HoTT, the ideal solution for coherence problems is to find finite descriptions which imply all the infinitely many coherences. For example, usability of integers defined as set-quotients is limited, but there is a way to define their -version without truncation [8]. Free groups can defined without truncation [30], however originally groupoid-truncation was needed to prove that the free group over a set is a set. The general case was resolved by Wärn [40]. The Symmetry book [11] contains several similar examples.
There are notions of model of type theory weaker than CwFs where e.g. substitution is only functorial up to isomorphism [23, 31, 12]. These are further away from implementations of type theory, but they admit the standard model in the setting of HoTT [37], even without going 2-categorical. 2-categories are used to formulate the equivalence of weaker and stricter notions of model. Dybjer and Clairambault [16] proved the 2-equivalence of locally cartesian closed categories and CwFs with appropriate structure. Van der Weide [37] formalised this result in a univalent setting, for univalent comprehension categories instead of CwFs, and extended it to new type formers.
Higher inductive-inductive types (HIITs) have been used before to describe free algebraic structures such as real numbers [36], the partiality monad [4], or hybrid semantics [20], but all of these are set-truncated HIITs, unlike our groupoid-syntax. Cubical type theory supports HITs [18, 14], and there is a scheme for describing HIITs [25] which covers our usages.
2 Metatheory and formalisation
Everything in this paper is formalised in Cubical Agda [38], the formalisation is available as supplementary material. Next to definitions/theorems/etc., icons point to the corresponding part in the HTML version of the source code. In the paper text, we use informal cubical type theory: this means that we do not refer to the interval and instead of using 3-dimensional cubes, we only compose and fill larger 2-dimensional shapes.
We write for equations holding definitionally, denotes definitions. Dependent function space is written or , we also use implicit quantifications. We write dependent pairs as , the empty type as , the unit type as . The universe of types is , we also use the universe of h-sets and h-groupoids . We have a predicative universe hierarchy, but we do not write levels for readability. The identity (path, equality) type is written for , where the subscript A is usually ommitted. The dependent path type (PathP, heterogeneous equality) is written for and , sometimes the subscript B is ommitted. We overload functions and their congruence (ap operator), e.g. where , and we omit symmetries as well. Transport is written for and , we tend to give a separate name for operations using transport (e.g. is a transported version of ). The obvious element of the heterogeneous equality is called . The composition operator of cubical type theory is the generalisation of transitivity as depicted below, it also comes with a filler operation.
For the composite equality , we denote the filler by . Some of these composition and filling operations are primitive in cubical type theory, but they are also definable via the eliminator of the identity type (J). In this paper we abstract over these differences.
We write compositions with equational reasoning by , or its multi-line variant (left, below). Composition also works for heterogeneous equalities, in this case we write the base equalities in superscripts (right, below).
Here , and , and the resulting heterogeneous equality is . We denote
heterogeneous composition and filling of shapes by drawing a base
diagram and a dependent diagram. We say that the right diagram is
over the left one: in this case the dotted composition line has type .
Some squares can be filled by the fact that every parameterised path is natural. We denote these naturality squares by writing in the center:
There are some technical limitations of Cubical Agda that we have to circumvent in the formalisation, but are not visible in the text of this paper. We summarise these below.
-
Interleaved constructors of (higher) inductive-inductive datatypes are not allowed in Cubical Agda. For example, this fragment of a syntax of a type theory is not allowed:
Here every later constructor depends on all the previous constructors, the order cannot be modified, and first we have a -constructor, then a -constructor, then another -constructor. We solve this via the encoding proposed in [24], which uses the same idea as encoding mutual inductive types as an indexed family [27]: we introduce a sort of codes and a family of elements , and then all constructors are in the same sort:
We use the same technique when defining our syntaxes (Definitions 2, 6, 7).
-
When we describe HIITs, we use transport and composition, but in the formalisation, we avoid them (we still use composition operators in some 2-paths). The reason is twofold: (i) Agda does not see that these operations preserve strict positivity; (ii) as the rule for transport is not definitional, it makes it difficult to formalise strict models such as the -interpretation. Instead, we make sure that all transports appear outermost and then can be encoded via dependent paths (a dependent path on computes to a nondependent one). When it is not possible to do this, we add extra constructors together with equations which singleton contract them. For example, in the text of the paper we write the substitution law for using a transport: . In the formalisation, we introduce a new constructor together with the contracting equation , and then use this new constructor when describing .
-
When characterising the equality of normal types, in the formalisation we use the inductively defined Martin-Löf identity type instead of the built-in path type (note that they are equivalent). This is convenient because J computes definitionally on its constructor . In the text of the paper we abstract over this.
3 Variants of the syntax and the set interpretation
In this section we define three different variants of the syntax of a type theory with dependent function space and a base family: the wild syntax, the set-truncated and the groupoid-truncated syntax. We show that types in the wild syntax do not form a set, so in particular they cannot have decidable equality. The set-syntax cannot be interpreted into the set model directly, while the groupoid-syntax can.
Parameter 1.
Everything in this section is parameterised by an and a .
Definition 2 (Wild syntax ).
We define a higher inductive-inductive type with four sorts. It starts with a category with a terminal object. Objects are called contexts and morphisms are called substitutions, the terminal object is called the empty context. Note that composition takes the , and arguments implicitly, and similarly for all the forthcoming operations and equations.
Types form a presheaf over the category of contexts and substitutions. The action on morphisms is called instantiation, it uses a flipped notation because of contravariance.
Terms form a dependent presheaf over types. The instantiation operation is overloaded. Note that the functor laws are paths dependent over the functor laws for .
In addition to context extension (infix triangle), we have lifting of substitutions which is its functorial action on morphisms. The functor laws again depend on those for .
We have weakening (or first projection), and zero De Bruijn index (second projection). We explain how to compose either with lifted substitutions.
The last equation is heterogeneous over the previous one, abbreviates the following composite path in :
So far we have all weakenings and variables, for example De Bruijn index is given by . Now we introduce single substitutions via which instantiates the last variable in the context by , and leaves the rest. It commutes with any substitution, and we explain how to compose and with single substitutions.
Again, the last equation is heterogeneous over the previous one, where abbreviates the following path in :
The last equation for the substitution calculus is an law explaining that an identity substitution on an extended context is given by and .
We have a base type and a family over it, and elements of these coming from the parameters.
The substitution law for is easy. To express , we introduce notation for the instantiation operation of terms of type , which is just a transported version of ordinary instantiation.
We introduce a transport-filler heterogeneous equality for each and that we will make use of later:
Dependent function space with , laws is defined by the isomorphism natural in . It is enough to state naturality in one direction.
This concludes the definition of the wild syntax.
We defined the substitution calculus in Ehrhard’s style [22, 17] instead of the more usual category with families (CwF) [21, 13]. These two presentations of the substitution calculus are isomorphic. In the above syntax, substitution extension is defined as . In the other direction, and .
Although CwFs have one less operation and fewer equations, we chose the Ehrhard style syntax as there is no need to use the transport operation when specifying the equations. In CwFs, the naturality of substitution extension needs a transport in the middle: In our syntax, all the transports are outermost, hence can be encoded by dependent paths.
Example 3 (Using the wild syntax ).
We derive the other direction of naturality for the -isomorphism: this is the substitution law for called .
Nondependent function space is encoded as .
The identity function for the family , is defined as
Note that we had to transport the zero De Bruijn index so that we can apply to it: .
In the syntax, we have the categorical application operation for . Ordinary application is given by defined as . It is easy to prove its law but the law is more involved as it needs several transports. We prove it via heterogeneous equality reasoning, where the proof of the equality of the types is written in the superscript of the equality sign.
The type of the above heterogeneous equality is where is the following composite of the three heterogeneous steps in the above equality reasoning:
Problem 4 (Type interpretation of the wild syntax ).
As a sanity check for our wild syntax, we define its type (standard, metacircular) interpretation.222Following Voevodsky [39], we call a proof relevant theorem a problem and its proof a construction.
Construction.
We define the following four recursive-recursive functions by pattern matching on the constructors of the higher inductive-inductive type.
Composition is function composition (), identity is identity (), instantiation is composition (), context extension is dependent sum (), lifting is , and are first and second projections, single substitution is . Function space is interpreted by metatheoretic functions (). and are interpreted by and , and simply return their arguments. All the equations are . The standard interpretation shows that our theory is consistent, that is, not all types are inhabited: is interpreted by so it is inhabited if and only if is.
Proof.
Every higher inductive type, including our Definition 2 can be interpreted into the unit type where all paths are interpreted by . We use a variant of this where every sort is interpreted by except is interpreted by the circle . , and are constant , is interpreted by the interpretation of . All equations are interpreted by , except which is interpreted by . The two different proofs of , namely and are interpreted by and , respectively. When using the wild syntax, this is a practical problem: it can happen that we need a term of type , but we only have a term of type available. From a broader perspective, Hedberg’s theorem [36, Theorem 7.2.5] implies that we cannot prove normalisation for the wild syntax. In principle, there could be a clever way of defining the equations in the syntax such that there is only one proof for each equation. It is not known whether this is possible [34]. Instead, we make all the equations equal by force.
Definition 6 (Set-syntax ).
The set-based syntax is the wild syntax (Definition 2) extended with the following three higher equality constructors. They truncate substitutions, types and terms to sets.
Now we can hope for normalisation for this syntax, but the standard interpretation does not work anymore: the interpretation of would be , but then we cannot interpret , as does not form a set. We have to limit ourselves to interpreting by where is defined as . Alternatively, we can interpret into an inductive-recursive universe as in [5, Section 6], but we cannot interpret the set-syntax in a univalent model. To fix this, we introduce a syntax where substitutions and terms are truncated to be sets, but types are only groupoid-truncated. To make types well-behaved, we add coherence laws which are equations between equations between types. These express that the substitution laws , and commute with the functoriality laws , . In the diagrams below, the vertical directions are the substitution laws and the horizontal directions are the functoriality laws.
Definition 7 (Groupoid-syntax ).
The groupoid-based syntax is the wild syntax (Definition 2) extended with the following higher equality constructors. Some of them are drawn as commutative diagrams.
In the types of and above, and abbreviate the following equality proofs. is the dotted line in the left dependent square which is over the right square. is the dotted line in the upper dependent triangle which is over the lower triangle. As the bottom lines in the base square/triangle are reflexivities, and are homogeneous equalities, but all the other lines in the upper shapes are heterogeneous. Fillers of the base shapes are written in their center, they are operations of the groupoid-syntax defined before. In Cubical Agda, the dotted lines are defined via heterogeneous composition. The operation is part of Definition 2.
In the types of and above, we used the
following abbreviations of paths. and are
the dotted lines in the upper triangles, which are over the lower
triangles. The dotted lines are defined by composition. We also give
names to the fillers of the upper triangles which will be used in
Figures 2 and 3, respectively:
This concludes the definition of the groupoid-syntax.
Notation 8.
We denote the components of the set-syntax by S and the groupoid-syntax by G subscripts, e.g. and .
We cannot redo the interpretation of Problem 4 because is not a groupoid, but we can refine it by interpreting types into .
Construction 9 (Set interpretation of the groupoid-syntax ).
We define the following functions mutually by pattern matching on the groupoid-syntax where .
The cases for the constructors are analogous to the ones in Problem 4, with additional proofs of truncation-preservation: e.g. the empty context needs that is a set, context extension needs that preserves set-truncation. is interpreted by , by . We interpret the extra truncation constructors as follows: we prove by the fact that forms a groupoid, while functions between sets are sets, which proves and . All 1-dimensional equalities and the 2-equalities , , are interpreted by , while the 2-equalities , , use cubical filling because these include compositions in the formalisation (this could be avoided using the technique explained in Section 2).
The groupoid-syntax can be trivially interpreted into the set-syntax:
4 -normalisation for the groupoid-syntax
In this section we prove that although elements of in the groupoid-syntax are only groupoid-truncated, they form a set. We define the set of -normal forms for , and then we show that every is a retract of its -normal forms. -normalisation is the process of eliminating explicit instantiations from types along the substitution laws for types.
4.1 -normal forms
Definition 11 (-normal forms ).
-normal forms are given by the inductive family which is defined mutually with the quote function . We overload constructor names and metavariables, but use brick red colour for disambiguation.
It is not obvious that -normal forms are a set because is indexed by which contains elements of for which at this point we do not know that it forms a set. also includes non-normal terms (via ), hence we cannot rely on decidability of equality and Hedberg’s theorem [36, Section 7.2]. However, we can still show the following.
Proof.
We use the encode-decode method [36] to characterise equality of . The cover (or code) relation is defined by double-recursion on , mutually with the decode function.
The function is defined by double-induction on and . Again, by double induction on , we prove that is a proposition. By mutual induction on , we prove that is reflexive and decoding this reflexivity proof gives an identity (reflexivity) path.
We use these and J to define encode and prove that is a retraction:
As retractions preserve homotopy levels, from being a proposition, we obtain that is a proposition, hence is a set.
4.2 -normalisation
We want to show that is a retraction, which will imply that is a set. For this, we define the other direction which is the normalisation function and its completeness.
Notation 13.
For the rest of this section, as we only talk about the groupoid-syntax, we do not write the G subscripts, so means , means , and so on.
Problem 14 (-normalisation ).
We define the following two functions by mutual induction on the groupoid-syntax.
Construction.
On and , the construction is trivial.
On , we normalise recursively, but as , we need to transport it over completeness of to obtain an :
To define on instantiated types, we need to instantiate normal forms. For this, we first show the following.
Construction for Problem 15.
Instantiation of normal types is by mutual induction with naturality of . Instantiating just changes the implicit context arguments, instantiating means instantiating the term (which is an ordinary term, and is not normal), instantiating is recursive:
The operation used in the codomain of is defined as follows. It also comes with a filler equation.
Analogously to and of Definition 7, we define their “normal substitution” versions and . Naturality is reusing the substitution law of the corresponding syntactic operation, and in the case of , naturality for and are used (in the codomain of , both and its filler are used):
The functoriality equation and the 2-naturality square are proven mutually by induction on . The composition functor law for is definitional, for it reuses the functor law for terms of type , for it is recursive:
In the codomain part of the proof for above, we used functoriality of the operation which is defined by the dotted line (given by composition) in the following left square which is over the right square. We also give name to the filler of the left square.
The -squares for and are definitionally the same as and , respectively. We present the diagrammatic proof of for clarity, where double line means definitional equality. In this diagram, the inner and outer squares are definitionally equal. The square for is more involved, we present it in Figure 2 in the Appendix.
The functoriality equation is proven by mutual induction on .
In the codomain part of the proof for above, we used functoriality of the operation which is defined by the dotted line in the following upper triangle which is over the lower triangle. We also give a name to the filler of the upper triangle.
The 2-naturality triangle is proven by induction on as follows:
This finishes the construction for Problem 15. So far, we defined and on , and . On substituted types, we define normalisation and its completeness as follows.
The action of on the functor laws is the corresponding functor law for instantiation of normal types, i.e. and . Completeness for the functor laws is the filling of the following two squares:
The action of on the substitution laws for and is given by , and is given by trivial fillers for degenerate squares. The actions of and on only involve naturality squares and fillers, they are presented in Figures 4 and 5 in the appendix.
The rest of the -paths that and have to preserve are the 2-paths , , , , , . As returns in a set, these are all trivial. The function produces an equality between elements of , and as is a groupoid, it trivially preserves 2-paths. Having defined and , we finished the construction for Problem 14.
Proof.
Together, and witness that is a retraction, which preserves h-levels: as is a set, so is .
Remark 17.
Stability of normalisation is also provable, but we do not need it in this paper.
5 Reaping the fruits
Construction.
In Construction 10, we defined the map from the groupoid-syntax to the set-syntax. Now we define the opposite direction using that is a set. The roundtrips are proven by two simple inductions.
Groupoid CwFs are essentially algebras of the substitution calculus part of the groupoid-syntax (Definition 7), but we also include three coherence laws for types (the pentagon law and two identity triangles).
Definition 20 (Groupoid CwF, GCwF ).
An Ehrhard-style groupoid CwF is a 1-category (objects named , morphisms ), a 2-presheaf of types (given by , , , , , , as depicted below), a dependent presheaf of terms over types (, with instantiation and functor laws), with Ehrhard-style comprehension (operations , , , , with 8 equations as in Definition 2).
Proposition 22 ().
In the groupoid-syntax (Definition 7), the laws , and are admissible.
Proof.
Direct consequence of Theorem 16.
6 Conclusions
We have presented a basic coherence theorem for GCwF, enabling the interpretation of the usual decidable intrinsic syntax of type theory within models based on categories where the objects do not form a set, such as the set model. Notably, we have achieved this without relying on normalisation for the groupoid syntax or invoking Hedberg’s theorem. Furthermore, our method is adaptable, in principle, to type theories without decidable equality. An interesting feature of our approach is that it eliminates the need to explicitly incorporate the usual coherence laws for 2-categories (such as the pentagon law) into the syntax; these laws are admissible in our groupoid-syntax.
Despite these advancements, several significant challenges remain. For instance, we aim to extend this framework to include a univalent universe of propositions (i.e. with propositional extensionality). We also seek to address univalence for types without introducing an additional universe, thereby demonstrating that univalence can be soundly supported in this setting.
The addition of universes, even a minimal one such as a universe of Booleans with large eliminations, would require a shift in our methodology and might necessitate term normalisation. Extending the framework to accommodate multiple universes would inevitably demand a move to higher dimensions, introducing further complexity.
Our groupoid-syntax can be seen as the GCwF with freely generated from a set and a family over it. We would like to support more interesting generating data, i.e. generating data which can refer to the GCwF structure while being defined.
Finally, we would like to revisit the longstanding problem of modeling semi-simplicial types within this context. One potential direction is to extend our current recursive treatment of substitution and substitution-related coherence laws, using these as a foundation to systematically derive higher coherence conditions.
References
- [1] Andreas Abel, Joakim Öhman, and Andrea Vezzosi. Decidability of conversion for type theory in type theory. Proc. ACM Program. Lang., 2(POPL):23:1–23:29, 2018. doi:10.1145/3158111.
- [2] Arthur Adjedj, Meven Lennon-Bertrand, Kenji Maillard, Pierre-Marie Pédrot, and Loïc Pujet. Martin-Löf à la Coq. In Amin Timany, Dmitriy Traytel, Brigitte Pientka, and Sandrine Blazy, editors, Proceedings of the 13th ACM SIGPLAN International Conference on Certified Programs and Proofs, CPP 2024, London, UK, January 15-16, 2024, pages 230–245. ACM, 2024. doi:10.1145/3636501.3636951.
- [3] Thorsten Altenkirch, Paolo Capriotti, and Nicolai Kraus. Extending homotopy type theory with strict equality. In Jean-Marc Talbot and Laurent Regnier, editors, 25th EACSL Annual Conference on Computer Science Logic, CSL 2016, August 29 - September 1, 2016, Marseille, France, volume 62 of LIPIcs, pages 21:1–21:17. Schloss Dagstuhl – Leibniz-Zentrum für Informatik, 2016. doi:10.4230/LIPIcs.CSL.2016.21.
- [4] Thorsten Altenkirch, Nils Anders Danielsson, and Nicolai Kraus. Partiality, revisited - the partiality monad as a quotient inductive-inductive type. In Javier Esparza and Andrzej S. Murawski, editors, Foundations of Software Science and Computation Structures - 20th International Conference, FOSSACS 2017, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2017, Uppsala, Sweden, April 22-29, 2017, Proceedings, volume 10203 of Lecture Notes in Computer Science, pages 534–549, 2017. doi:10.1007/978-3-662-54458-7_31.
- [5] Thorsten Altenkirch and Ambrus Kaposi. Type theory in type theory using quotient inductive types. In Rastislav Bodík and Rupak Majumdar, editors, Proceedings of the 43rd Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 2016, St. Petersburg, FL, USA, January 20 - 22, 2016, pages 18–29. ACM, 2016. doi:10.1145/2837614.2837638.
- [6] Thorsten Altenkirch and Ambrus Kaposi. Normalisation by evaluation for type theory, in type theory. Logical methods in computer science, 13, 2017. doi:10.23638/LMCS-13(4:1)2017.
- [7] Thorsten Altenkirch and Ambrus Kaposi. A container model of type theory. In Henning Basold, editor, 27th International Conference on Types for Proofs and Programs, TYPES 2021. Universiteit Leiden, 2021. URL: https://types21.liacs.nl/download/a-container-model-of-type-theory/.
- [8] Thorsten Altenkirch and Luis Scoccola. The integers as a higher inductive type. In Holger Hermanns, Lijun Zhang, Naoki Kobayashi, and Dale Miller, editors, LICS ’20: 35th Annual ACM/IEEE Symposium on Logic in Computer Science, Saarbrücken, Germany, July 8-11, 2020, pages 67–73. ACM, 2020. doi:10.1145/3373718.3394760.
- [9] Danil Annenkov, Paolo Capriotti, Nicolai Kraus, and Christian Sattler. Two-level type theory and applications. Math. Struct. Comput. Sci., 33(8):688–743, 2023. doi:10.1017/S0960129523000130.
- [10] Danil Annenkov, Paolo Capriotti, Nicolai Kraus, and Christian Sattler. Two-level type theory and applications - ERRATUM. Math. Struct. Comput. Sci., 34(1):80, 2024. doi:10.1017/S096012952300021X.
- [11] Marc Bezem, Ulrik Buchholtz, Pierre Cagne, Bjørn Ian Dundas, and Daniel R. Grayson. Symmetry. https://github.com/UniMath/SymmetryBook. Commit: ec9be72.
- [12] Rafaël Bocquet. Strictification of weakly stable type-theoretic structures using generic contexts. In Henning Basold, Jesper Cockx, and Silvia Ghilezan, editors, 27th International Conference on Types for Proofs and Programs, TYPES 2021, June 14-18, 2021, Leiden, The Netherlands (Virtual Conference), volume 239 of LIPIcs, pages 3:1–3:23. Schloss Dagstuhl – Leibniz-Zentrum für Informatik, 2021. doi:10.4230/LIPIcs.TYPES.2021.3.
- [13] Simon Castellan, Pierre Clairambault, and Peter Dybjer. Categories with Families: Unityped, Simply Typed, and Dependently Typed, pages 135–180. Springer International Publishing, Cham, 2021. doi:10.1007/978-3-030-66545-6_5.
- [14] Evan Cavallo and Robert Harper. Higher inductive types in cubical computational type theory. Proc. ACM Program. Lang., 3(POPL):1:1–1:27, 2019. doi:10.1145/3290314.
- [15] James Chapman. Type theory should eat itself. In Andreas Abel and Christian Urban, editors, Proceedings of the International Workshop on Logical Frameworks and Metalanguages: Theory and Practice, LFMTP@LICS 2008, Pittsburgh, PA, USA, June 23, 2008, volume 228 of Electronic Notes in Theoretical Computer Science, pages 21–36. Elsevier, 2008. doi:10.1016/J.ENTCS.2008.12.114.
- [16] Pierre Clairambault and Peter Dybjer. The biequivalence of locally cartesian closed categories and martin-löf type theories. Math. Struct. Comput. Sci., 24(6), 2014. doi:10.1017/S0960129513000881.
- [17] Thierry Coquand. Generalised algebraic presentation of type theory, 2020. URL: https://www.cse.chalmers.se/˜coquand/cwf2.pdf.
- [18] Thierry Coquand, Simon Huber, and Anders Mörtberg. On higher inductive types in cubical type theory. In Anuj Dawar and Erich Grädel, editors, Proceedings of the 33rd Annual ACM/IEEE Symposium on Logic in Computer Science, LICS 2018, Oxford, UK, July 09-12, 2018, pages 255–264. ACM, 2018. doi:10.1145/3209108.3209197.
- [19] Nils Anders Danielsson. A formalisation of a dependently typed language as an inductive-recursive family. In Thorsten Altenkirch and Conor McBride, editors, Types for Proofs and Programs, International Workshop, TYPES 2006, Nottingham, UK, April 18-21, 2006, Revised Selected Papers, volume 4502 of Lecture Notes in Computer Science, pages 93–109. Springer, 2006. doi:10.1007/978-3-540-74464-1_7.
- [20] Tim Lukas Diezel and Sergey Goncharov. Towards constructive hybrid semantics. In Zena M. Ariola, editor, 5th International Conference on Formal Structures for Computation and Deduction, FSCD 2020, June 29-July 6, 2020, Paris, France (Virtual Conference), volume 167 of LIPIcs, pages 24:1–24:19. Schloss Dagstuhl – Leibniz-Zentrum für Informatik, 2020. doi:10.4230/LIPIcs.FSCD.2020.24.
- [21] Peter Dybjer. Internal type theory. In Stefano Berardi and Mario Coppo, editors, Types for Proofs and Programs, International Workshop TYPES’95, Torino, Italy, June 5-8, 1995, Selected Papers, volume 1158 of Lecture Notes in Computer Science, pages 120–134. Springer, 1995. doi:10.1007/3-540-61780-9_66.
- [22] Thomas Ehrhard. Une sémantique catégorique des types dépendents. PhD thesis, Université Paris VII, 1988.
- [23] Martin Hofmann. On the interpretation of type theory in locally cartesian closed categories. In Leszek Pacholski and Jerzy Tiuryn, editors, Computer Science Logic, 8th International Workshop, CSL ’94, Kazimierz, Poland, September 25-30, 1994, Selected Papers, volume 933 of Lecture Notes in Computer Science, pages 427–441. Springer, 1994. doi:10.1007/BFB0022273.
- [24] Ambrus Kaposi. Re: Separate definition of constructors?, May 2019. Email message to the Agda mailing list. URL: https://lists.chalmers.se/pipermail/agda/2019/011176.html.
- [25] Ambrus Kaposi and András Kovács. Signatures and induction principles for higher inductive-inductive types. Log. Methods Comput. Sci., 16(1), 2020. doi:10.23638/LMCS-16(1:10)2020.
- [26] Ambrus Kaposi, András Kovács, and Thorsten Altenkirch. Constructing quotient inductive-inductive types. Proc. ACM Program. Lang., 3(POPL):2:1–2:24, 2019. doi:10.1145/3290315.
- [27] Ambrus Kaposi and Jakob von Raumer. A syntax for mutual inductive families. In Zena M. Ariola, editor, 5th International Conference on Formal Structures for Computation and Deduction, FSCD 2020, June 29-July 6, 2020, Paris, France (Virtual Conference), volume 167 of LIPIcs, pages 23:1–23:21. Schloss Dagstuhl – Leibniz-Zentrum für Informatik, 2020. doi:10.4230/LIPIcs.FSCD.2020.23.
- [28] G. M. Kelly. On MacLane’s conditions for coherence of natural associativities, commutativities, etc. Journal of Algebra, 1(4):397–402, 1964. doi:10.1016/0021-8693(64)90018-3.
- [29] Nicolai Kraus. Internal -categorical models of dependent type theory: Towards 2LTT eating HoTT. In 36th Annual ACM/IEEE Symposium on Logic in Computer Science, LICS 2021, Rome, Italy, June 29 - July 2, 2021, pages 1–14. IEEE, 2021. doi:10.1109/LICS52264.2021.9470667.
- [30] Nicolai Kraus and Thorsten Altenkirch. Free higher groups in homotopy type theory. In Anuj Dawar and Erich Grädel, editors, Proceedings of the 33rd Annual ACM/IEEE Symposium on Logic in Computer Science, LICS 2018, Oxford, UK, July 09-12, 2018, pages 599–608. ACM, 2018. doi:10.1145/3209108.3209183.
- [31] Peter LeFanu Lumsdaine and Michael A. Warren. The local universes model: An overlooked coherence construction for dependent type theories. ACM Trans. Comput. Log., 16(3):23:1–23:31, 2015. doi:10.1145/2754931.
- [32] Stefano Piceghello. Coherence for monoidal groupoids in HoTT. In Marc Bezem and Assia Mahboubi, editors, 25th International Conference on Types for Proofs and Programs (TYPES 2019), volume 175 of Leibniz International Proceedings in Informatics (LIPIcs), pages 8:1–8:20, Dagstuhl, Germany, 2020. Schloss Dagstuhl – Leibniz-Zentrum für Informatik. doi:10.4230/LIPIcs.TYPES.2019.8.
- [33] Christian Sattler. Semantics of signatures for higher inductive-inductive types (HIITs) in complete Segal types, 2019. Notes on the author’s website. URL: https://www.cse.chalmers.se/˜sattler/docs/hits.
- [34] Mike Shulman. Homotopy type theory should eat itself (but so far, it’s too big to swallow), 2014. Blog post on the Homotopy Type Theory website. URL: https://homotopytypetheory.org/2014/03/03/hott-should-eat-itself/.
- [35] Taichi Uemura. Normalization and coherence for -type theories. CoRR, abs/2212.11764, 2022. doi:10.48550/arXiv.2212.11764.
- [36] The Univalent Foundations Program. Homotopy Type Theory: Univalent Foundations of Mathematics. https://homotopytypetheory.org/book, Institute for Advanced Study, 2013.
- [37] Niels van der Weide. The internal languages of univalent categories. In 40th Annual ACM/IEEE Symposium on Logic in Computer Science, LICS 2025, Singapore, June 23-26, 2025, pages 112–126. IEEE, 2025. doi:10.1109/LICS65433.2025.00016.
- [38] Andrea Vezzosi, Anders Mörtberg, and Andreas Abel. Cubical Agda: A dependently typed programming language with univalence and higher inductive types. J. Funct. Program., 31:e8, 2021. doi:10.1017/S0956796821000034.
- [39] Vladimir Voevodsky. A C-system defined by a universe category, 2015. arXiv:1409.7925.
- [40] David Wärn. Path spaces of pushouts, 2024. arXiv:2402.12339.
