module HoTT where
The HoTT Book?š
While the 1Lab has not been consciously designed as a project to formalise the HoTT book, in the course of our explorations into formalised univalent mathematics, we have formalised a considerable subset of the first part, and most of chapter 9. The vast majority of the 1Lab is material that was not covered in the HoTT book.
Part 1: Foundationsš
Chapter 2: Homotopy type theoryš
2.1: Types are higher groupoidsš
- Lemma 2.1.1:
sym
- Lemma 2.1.2:
_ā_
- Lemma 2.1.4:
ā-idl
,ā-idr
ā-invl
,ā-invr
- Definitional in cubical type theory
ā-assoc
- Theorem 2.1.6:
Ī©āæāŗĀ²-is-abelian-group
- Definition 2.1.7:
Typeā
- Definition 2.1.8:
Ī©āæ
2.2: Functions are functorsš
- Lemma 2.2.1:
ap
- Lemma 2.2.2:
ap-ā
- Definitional in cubical type theory
- Definitional in cubical type theory
- Definitional in cubical type theory
2.3: Type families are fibrationsš
- Lemma 2.3.1:
subst
- Lemma 2.3.2:
Ī£-pathp
- Lemma 2.3.4: Our
ap
is dependent by nature. - Lemma 2.3.5:
transport-refl
- Lemma 2.3.9:
subst-ā
- Lemma 2.3.10: Definitional in cubical type theory
2.4: Homotopies and equivalencesš
- Lemma 2.4.3:
homotopy-natural
- Lemma 2.4.4:
homotopy-invert
- Lemma 2.4.6:
is-iso
- Example 2.4.9:
transportā»transport
- Lemma 2.4.12:
id-equiv
,Equiv.inverse
,_āe_
2.7: Cartesian product typesš
- Theorem 2.7.2:
Ī£-pathp-iso
- Theorem 2.7.3: Agda has definitional Ī· equality for records.
2.9: Ī -types and function extensionalityš
- Theorem 2.9.3:
funext
(no longer an axiom) - Lemma 2.9.6:
funext-dep
(no longer an axiom)
2.10: Universes and univalenceš
- Lemma 2.10.1:
pathāequiv
- Theorem 2.10.3:
univalence
ua
,uaĪ²
ua-id-equiv
,uaā
,sym-ua
2.11: Identity typeš
- Theorem 2.11.1:
is-equivāis-embedding
- Lemma 2.11.2:
subst-path-left
,subst-path-right
,transport-path
- Theorem 2.11.5:
commutesāsquare
2.12: Coproductsš
- Theorem 2.12.5:
āPath.CodeāPath
Exercisesš
- Exercise 2.10:
Ī£-assoc
Chapter 3: Sets and Logicš
3.1: Sets and n-typesš
- Definition 3.1.1:
is-set
- Example 3.1.2: Definitional in cubical type theory.
- Example 3.1.4:
Nat-is-set
- Example 3.1.5:
Ć-is-hlevel
(special case) - Example 3.1.6:
Ī -is-hlevel
(special case)
- Definition 3.1.7:
is-groupoid
- Lemma 3.1.8:
is-hlevel-suc
(special case)
3.2: Propositions as types?š
- Theorem 3.2.2:
Ā¬DNEā
- Corollary 3.2.7:
Ā¬LEMā
3.3: Mere propositionsš
- Definition 3.3.1:
is-prop
- Lemma 3.3.3:
prop-ext
- Lemma 3.3.4:
is-propāis-set
- Lemma 3.3.5:
is-prop-is-prop
,is-hlevel-is-prop
3.4: Classical vs.Ā intuitionistic logicš
- Definition 3.4.1:
LEM
- Definition 3.4.2:
DNE
- Definition 3.4.3:
Dec
Discrete
3.5: Subsets and propositional resizingš
- Lemma 3.5.1:
Ī£-prop-path
- Axiom 3.5.5:
Ī©
,ā”
.
3.7: Propositional truncationš
The type itself is defined as a higher-inductive type ā„_ā„
. We also
define ā
as a shorthand for the
truncation of Ī£
.
3.8: The axiom of choiceš
- Definition 3.8.3:
Axiom-of-choice
3.9: The principle of unique choiceš
- Lemma 3.9.1:
is-propāequivā„-ā„
- Corollary 3.9.2: Implicit in e.g.Ā
ā„-ā„-univ
,ā„-ā„-out
3.11: Contractibilityš
- Definition 3.11.1:
is-contr
- Definition 3.11.4:
is-contr-is-prop
- Definition 3.11.7:
retractāis-contr
- Definition 3.11.8:
Singleton-is-contr
- Lemma 3.11.9:
Ī£-contract
,Ī£-contr-eqv
Exercisesš
- Exercise 3.1:
equivāis-hlevel
- Exercise 3.2:
ā-is-hlevel
- Exercise 3.3:
Ī£-is-hlevel
- Exercise 3.5:
is-contr-if-inhabitedāis-prop
,is-propāāis-contr
- Exercise 3.6:
H-Level-Dec
- Exercise 3.7:
disjoint-ā-is-prop
- Exercise 3.11:
Ā¬global-choice
- Exercise 3.17:
ā„-ā„-elim
- Exercise 3.18:
LEMāDNE
- Exercise 3.19:
ā-well-ordered
- Exercise 3.20:
Ī£-contr-eqv
- Exercise 3.21:
is-propāequivā„-ā„
- Exercise 3.22:
Finite-choice
Chapter 4: Equivalencesš
4.2: Half adjoint equivalencesš
- Definition 4.2.1:
is-half-adjoint-equiv
- Definition 4.2.3:
is-isoāis-half-adjoint-equiv
- Definition 4.2.4:
fibre
- Lemma 4.2.5:
fibre-paths
- Theorem 4.2.6:
is-half-adjoint-equivāis-equiv
- Definition 4.2.7:
linv
,rinv
- Lemma 4.2.8:
is-equivāpre-is-equiv
,is-equivāpost-is-equiv
- Lemma 4.2.9:
is-isoāis-contr-linv
,is-isoāis-contr-rinv
4.3: Bi-invertible mapsš
- Definition 4.3.1:
is-biinv
- Theorem 4.3.2:
is-biinv-is-prop
4.4: Contractible fibresš
This is our ādefaultā definition of equivalence, but we generally use it through the interface of half-adjoint equivalences.
- Definition 4.4.1:
is-equiv
- Theorem 4.4.3:
is-equivāis-half-adjoint-equiv
- Lemma 4.4.4:
is-equiv-is-prop
4.6: Surjections and embeddingsš
- Definition 4.6.1:
is-surjective
is-embedding
,embeddingācancellable
- Definition 4.6.2:
injective
- Theorem 4.6.3:
is-equivāis-surjective
,is-equivāis-embedding
,embedding-surjectiveāis-equiv
4.8: The object classifierš
- Lemma 4.8.1:
Fibre-equiv
- Lemma 4.8.2:
Total-equiv
- Theorem 4.8.3:
Map-classifier
Chapter 5: Inductionš
5.3: W-typesš
- W-types:
W
5.4: Inductive types are initial algebrasš
- Theorem 5.4.7:
W-initial
Chapter 6: Higher inductive typesš
6.2: Induction principles and dependent pathsš
- Remark 6.2.3:
to-pathp
,from-pathp
- Induction principle for : by pattern matching.
- Lemma 6.2.5:
SĀ¹-rec
- Lemma 6.2.9:
Ī©āæāSāæ-map
forn = 1
6.3: The intervalš
This is the higher inductive type [0,1]
, not the interval type I
.
- Lemma 6.3.1:
interval-contractible
6.4: Circles and spheresš
- Lemma 6.4.1:
reflā loop
- Lemma 6.4.2:
always-loop
- Lemma 6.4.4:
ap-square
6.5: Suspensionsš
- The suspension:
Susp
- Lemma 6.5.1:
SuspSā°ā”SĀ¹
- Definition 6.5.2:
Sāæā»Ā¹
- Lemma 6.5.4:
Ī£-mapāāmapā-Ī©
6.6: Cell complexesš
- The torus:
TĀ²
.
6.9: Truncationsš
- Lemma 6.9.1:
ā„-ā„ā-elim
6.10: Quotientsš
We define the quotient _/_
in terms of coequalisers Coeq
.
- Lemma 6.10.3:
Coeq-univ
.
6.11: Algebraš
- Definition 6.11.1:
Monoid-on
,Group-on
- Definition 6.11.4:
Ļāāā
- Lemma 6.11.5:
Monoid.Free-monoidā£Forget
- Lemma 6.11.6:
Group.make-free-group
Exercisesš
- Exercise 6.3:
TĀ²āSĀ¹ĆSĀ¹
Chapter 7: Homotopy n-typesš
7.1: Definition of n-typesš
- Definition 7.1.1:
is-hlevel
- Theorem 7.1.4:
retractāis-hlevel
- Corollary 7.1.5:
equivāis-hlevel
- Theorem 7.1.7:
is-hlevel-suc
- Theorem 7.1.8:
Ī£-is-hlevel
- Theorem 7.1.9:
Ī -is-hlevel
- Theorem 7.1.10:
is-hlevel-is-prop
- Theorem 7.1.11:
n-Type-is-hlevel
7.2: Uniqueness of identity proofs and Hedbergās theoremš
- Theorem 7.2.2:
set-identity-system
,identity-systemāhlevel
- Theorem 7.2.5:
Discreteāis-set
- Theorem 7.2.6:
Discrete-Nat
- Theorem 7.2.7:
hubs-and-spokesāhlevel
,hlevelāhubs-and-spokes
7.3: Truncationsš
- Lemma 7.3.1:
n-Tr-is-hlevel
- Lemma 7.3.2:
n-Tr-elim
- Theorem 7.3.12:
n-Tr-path-equiv
7.5: Connectednessš
- Definition 7.5.1:
is-n-connected
,is-n-connected-Tr
- Lemma 7.5.7:
relative-n-type-const
- Corollary 7.5.9:
is-n-connectedān-type-const
,n-type-constāis-n-connected
- Lemma 7.5.11:
is-n-connected-point
,point-is-n-connected
Exercisesš
- Exercise 7.6:
is-n-connectedāā„-ā„
Part 2: Mathematicsš
Chapter 8: Homotopy theoryš
The only non-trivial result worth mentioning from Chapter 8 is the fundamental group of the circle.
8.1: Ļā(SĀ¹)š
- Definition 8.1.1:
SĀ¹Path.Cover
- Definition 8.1.5:
SĀ¹Path.encode
- Definition 8.1.6:
SĀ¹Path.decode
- Lemma 8.1.7:
SĀ¹Path.encode-decode
- Lemma 8.1.8:
SĀ¹Path.encode-loopāæ
- Corollary 8.1.10:
Ī©SĀ¹āintegers
- Corollary 8.1.11:
ĻāSĀ¹ā”ā¤
,ĻāāāSĀ¹ā”0
8.2: Connectedness of suspensionsš
- Theorem 8.2.1:
Susp-is-connected
- Corollary 8.2.2:
Sāæā»Ā¹-is-connected
8.6: The Freudenthal suspension theoremš
- Lemma 8.6.1:
relative-n-type-const-plus
- Lemma 8.6.2:
Wedge.elim
Chapter 9: Category theoryš
Since a vast majority of the 1Labās mathematics consists of pure category theory, or mathematics done with a very categorical inclination, this is our most complete chapter.
9.1: Categories and Precategoriesš
- Definition 9.1.1:
Precategory
- Definition 9.1.2:
is-invertible
,_ā _
- Lemma 9.1.3:
is-invertible-is-prop
- Lemma 9.1.4:
pathāiso
- Example 9.1.5:
Sets
- Definition 9.1.61:
is-category
- Example 9.1.7:
Sets-is-category
- Lemma 9.1.8:
Univalent.Ob-is-groupoid
- Lemma 9.1.9:
Hom-transport
(9.1.10),pathāto-sym
(9.1.11),pathāto-ā
(9.1.12/9.1.13) - Example 9.1.14:
Poset
- Example 9.1.15:
is-gaunt
- Example 9.1.16:
Disc
- Example 9.1.19:
Rel
9.2: Functors and Transformationsš
- Definition 9.2.1:
Functor
- Definition 9.2.2:
_=>_
- The paragraph immediately after 9.2.2 is
Nat-pathp
andNat-is-set
- The one after that is
Functor-path
.
- The paragraph immediately after 9.2.2 is
- Definition 9.2.3:
Cat[_,_]
- Lemma 9.2.4: If:
invertibleāinvertibleāæ
; Only if:isoāæāiso
- Theorem 9.2.5:
Functor-is-category
- Theorem 9.2.6:
_Fā_
- Definition 9.2.7:
_ā_
,_āø_
- Lemma 9.2.9:
Fā-assoc
- Lemma 9.2.10: See the definition of
Prebicategory.pentagon
forCat
. - Lemma 9.2.11: See the definition of
Prebicategory.triangle
forCat
.
9.3: Adjunctionsš
- Lemma 9.3.1:
_ā£_
- Lemma 9.3.2:
is-left-adjoint-is-prop
9.4: Equivalencesš
- Definition 9.4.1:
is-equivalence
- Definition 9.4.3:
is-faithful
,is-full
,is-fully-faithful
- Definition 9.4.4:
is-split-eso
- Lemma 9.4.5:
ff+split-esoāis-equivalence
- Definition 9.4.6:
is-eso
- Lemma 9.4.7:
Essential-fibre-between-cats-is-prop
,ff+esoāis-equivalence
- Definition 9.4.8:
is-precat-iso
- Lemma 9.4.14:
is-equivalenceāis-precat-iso
,is-precat-isoāis-equivalence
- Lemma 9.4.15:
Precategory-identity-system
- Theorem 9.4.16:
Category-identity-system
9.5: The Yoneda lemmaš
- Definition 9.5.1:
_^op
- Definition 9.5.2:
_Ćį¶_
- Lemma 9.5.3:
Curry
,Uncurry
- The
Hom[-,-]
- The Yoneda embedding:
ć
- The
- Corollary 9.5.6:
ć-is-fully-faithful
- Corollary 9.5.7: As a corollary of
Representation-is-prop
- Definition 9.5.8:
Representation
- Theorem 9.5.9:
Representation-is-prop
- Lemma 9.5.10: Adjoints in terms of representability
9.6: Strict categoriesš
This chapter is mostly text.
- Definition 9.6.1: Strict precategories
9.7: Dagger categoriesš
We do not have a type of dagger-categories, but note that we do have the closely-related notion of allegory.
9.8: The structure identity principleš
- Definition 9.8.1:
Thin-structure-over
, generalised intoDisplayed
- Theorem 9.8.2:
Structured-objects-is-category
, generalised intois-category-total
9.9: The Rezk completionš
- Lemma 9.9.1:
esoāpre-faithful
- Lemma 9.9.2:
eso-fullāpre-ff
- Lemma 9.9.4:
weak-equivāpre-equiv
,weak-equivāpre-iso
- Theorem 9.9.5:
Rezk-completion
,Rezk-completion-is-category
,complete
,complete-is-ff
,complete-is-eso
.
Exercisesš
- Exercise 9.1:
Slice
,slice-is-category
- Exercise 9.2:
Total-space
,Total-space-is-ff
,Total-space-is-eso
- Exercise 9.3:
is-equivalence.Fā»Ā¹ā£F
- Exercise 9.4:
Prebicategory
Chapter 10: Set theoryš
10.1: The category of setsš
- 10.1.1 Limits and colimits:
Sets-is-complete
,Sets-is-cocomplete
- Theorem 10.1.5:
Sets-regular
,surjectiveāregular-epi
,epiāsurjective
- 10.1.3 Quotients:
Sets-effective-congruences
- Lemma 10.1.8:
Congruence.is-effective
- Lemma 10.1.13:
Susp-prop-is-set
,Susp-prop-path
- Theorem 10.1.14:
ACāLEM
10.5: The cumulative hierarchyš
- Definition 10.5.1:
V
- Lemma 10.5.6:
presentation
- Definition 10.5.7:
Presentation.members
- Theorem 10.5.8:
extensionality
empty-set
pairing
zeroāā
,sucāā
union
ā-induction
replacement
separation
We use a slightly different definition of univalence for categories. It is shown equivalent to the usual formulation by
equiv-pathāidentity-system
ā©ļø