11/7/2026
This post discusses Chapter 3 from Principles of Dependent Type Theory by Angiuli and Gratzer. Further it also clarifies how terms form a presheaf.
From chapter 2 we are introduced to ETT.
ETT is a dependent type theory with a type of equalities induced by the natural isomorphism
This chapter is structured in the following way:
First the Book begins by introducing a syntax (preterms) for dependent type theory. It then defines elaboration as the process of moving preterms to terms. Another way this can be viewed as type checking a preterm, to produce a term of a given type.
From there they also detail bidirectional elaboration as a system where both inference and checking are allowed.
For this they add just one more rule:
Further there is a quick aside on how definitions should work.
The tool mentioned for this was a type
The next key section mentions models of ETT. A model of type theory is decomposed into a few parts parts.
From here it is stated that the syntax of ETT quotiented by definitional equality (or, "the syntactic category" of ETT) is the initial object in the category of ETT models.
This is then used to prove the consistency of the type theory,
by considering a model
Given
A consequence of propositional equality coinciding with definitional equality,
is that to type check
It is not directly obvious to what extent terms form a presheaf.
One can think of terms as some data that behaves nicely under substitution,
and a map nominating their types.
The direct structure for this is
1 ∫𝓒 Ty : Category
2
3 ob (∫𝓒 Ty) := (Γ : 𝓒) × Ty(Γ)
4 hom (∫𝓒 Ty) ⟨Γ ⊢ A⟩ ⟨Δ ⊢ B⟩ := (δ : Γ ⟶ Δ) × (A = B[δ]) This structure then satisfies the equation
1 equiv : PSh(C) / Ty ≅ PSh(∫𝓒 Ty)
2
3 equiv.ob.to ⟨O : PSh(𝓒), morph : O ⟶ Ty⟩ := ({
4 ob ⟨Γ ⊢ A⟩ := ()
5 hom ⟨Γ ⊢ A⟩ ⟨Δ ⊢ B⟩ ⟨δ, h : A = B[δ]⟩ := ( : ob ⟨Γ ⊢ A⟩ → ob ⟨Δ ⊢ B⟩)
6 }: PSh(∫𝓒 Ty))
7
8 equiv.ob.to (p : PSh(∫𝓒 Ty)) := {
9 O := {
10 ob (x : 𝓒) := ( : Set)
11 hom (x y : 𝓒) (m : x ⟶ y) := _
12 }
13 nat-trans := {
14 f (X : 𝓒) (v : O X) := ( : Ty X)
15 nat := sorry
16 }
17 }