open import 1Lab.Counterexamples.GlobalChoice
open import 1Lab.Function.Surjection
open import 1Lab.Function.Embedding
open import 1Lab.Equiv.Biinv
open import 1Lab.Classical

open import Algebra.Group.Homotopy
open import Algebra.Monoid
open import Algebra.Group

open import Cat.Instances.Sets.Congruences
open import Cat.Displayed.Univalence.Thin
open import Cat.Functor.Hom.Representable
open import Cat.Instances.Sets.Cocomplete
open import Cat.Functor.Equivalence.Path
open import Cat.Univalent.Rezk.Universal
open import Cat.Instances.Sets.Complete
open import Cat.Functor.Adjoint.Unique
open import Cat.Regular.Instances.Sets
open import Cat.Displayed.Univalence
open import Cat.Functor.Adjoint.Hom
open import Cat.Functor.Equivalence
open import Cat.Diagram.Congruence
open import Cat.Functor.Properties
open import Cat.Instances.Discrete
open import Cat.Instances.Functor
open import Cat.Instances.Product
open import Cat.Functor.Adjoint
open import Cat.Functor.Compose
open import Cat.Instances.Slice
open import Cat.Displayed.Base
open import Cat.Functor.Closed
open import Cat.Instances.Sets
open import Cat.Univalent.Rezk
open import Cat.Allegory.Base
open import Cat.Functor.Base
open import Cat.Functor.Hom
open import Cat.Univalent
open import Cat.Morphism
open import Cat.Bi.Base
open import Cat.Prelude
open import Cat.Gaunt

open import Data.Set.Surjection
open import Data.Wellfounded.W
open import Data.Set.Material
open import Data.Fin.Finite using (Finite-choice)
open import Data.Dec
open import Data.Nat using (ā„•-well-ordered ; Discrete-Nat)
open import Data.Sum

open import Homotopy.Space.Suspension.Properties
open import Homotopy.Space.Suspension
open import Homotopy.Connectedness
open import Homotopy.Space.Circle
open import Homotopy.Space.Sphere
open import Homotopy.Space.Torus
open import Homotopy.Truncation
open import Homotopy.Pushout
open import Homotopy.Wedge
open import Homotopy.Base

open import Order.Base

import Algebra.Monoid.Category as Monoid
import Algebra.Group.Free as Group
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šŸ”—

_ = sym
_ = _āˆ™_
_ = āˆ™-idl
_ = āˆ™-idr
_ = āˆ™-invl
_ = āˆ™-invr
_ = āˆ™-assoc
_ = Ī©āæāŗĀ²-is-abelian-group
_ = Typeāˆ™
_ = Ī©āæ
  • Lemma 2.1.1: sym
  • Lemma 2.1.2: _āˆ™_
  • Lemma 2.1.4:
    1. āˆ™-idl, āˆ™-idr
    2. āˆ™-invl, āˆ™-invr
    3. Definitional in cubical type theory
    4. āˆ™-assoc
  • Theorem 2.1.6: Ī©āæāŗĀ²-is-abelian-group
  • Definition 2.1.7: Typeāˆ™
  • Definition 2.1.8: Ī©āæ

2.2: Functions are functorsšŸ”—

_ = ap
_ = ap-āˆ™
  • Lemma 2.2.1: ap
  • Lemma 2.2.2:
    1. ap-āˆ™
    2. Definitional in cubical type theory
    3. Definitional in cubical type theory
    4. Definitional in cubical type theory

2.3: Type families are fibrationsšŸ”—

_ = subst
_ = Ī£-pathp
_ = transport-refl
_ = subst-āˆ™
  • 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šŸ”—

_ = homotopy-natural
_ = homotopy-invert
_ = is-iso
_ = transportā»transport
_ = id-equiv
_ = Equiv.inverse
_ = _āˆ™e_
  • 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šŸ”—

_ = Ī£-pathp-iso
  • Theorem 2.7.2: Ī£-pathp-iso
  • Theorem 2.7.3: Agda has definitional Ī· equality for records.

2.9: Ī -types and function extensionalityšŸ”—

_ = funext
_ = funext-dep
  • Theorem 2.9.3: funext (no longer an axiom)
  • Lemma 2.9.6: funext-dep (no longer an axiom)

2.10: Universes and univalencešŸ”—

_ = pathā†’equiv
_ = univalence
_ = ua
_ = uaĪ²
_ = ua-id-equiv
_ = uaāˆ™
_ = sym-ua
  • Lemma 2.10.1: pathā†’equiv
  • Theorem 2.10.3: univalence
    • ua, uaĪ²
    • ua-id-equiv, uaāˆ™, sym-ua

2.11: Identity typešŸ”—

_ = is-equivā†’is-embedding
_ = subst-path-left
_ = subst-path-right
_ = transport-path
_ = commutesā†’square
  • 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šŸ”—

_ = āŠŽPath.Codeā‰ƒPath
  • Theorem 2.12.5: āŠŽPath.Codeā‰ƒPath

ExercisesšŸ”—

_ = Ī£-assoc
  • Exercise 2.10: Ī£-assoc

Chapter 3: Sets and LogicšŸ”—

3.1: Sets and n-typesšŸ”—

_ = is-set
_ = Nat-is-set
_ = Ɨ-is-hlevel
_ = Ī -is-hlevel
_ = is-groupoid
_ = is-hlevel-suc
  • 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?šŸ”—

_ = Ā¬DNEāˆž
_ = Ā¬LEMāˆž
  • Theorem 3.2.2: Ā¬DNEāˆž
  • Corollary 3.2.7: Ā¬LEMāˆž

3.3: Mere propositionsšŸ”—

_ = is-prop
_ = prop-ext
_ = is-propā†’is-set
_ = is-prop-is-prop
_ = is-hlevel-is-prop
  • 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šŸ”—

_ = LEM
_ = DNE
_ = Dec
_ = Discrete
  • Definition 3.4.1: LEM
  • Definition 3.4.2: DNE
  • Definition 3.4.3:
      1. Dec
      1. Discrete

3.5: Subsets and propositional resizingšŸ”—

_ = Ī£-prop-path
_ = Ī©
_ = ā–”
  • 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šŸ”—

_ = Axiom-of-choice
  • Definition 3.8.3: Axiom-of-choice

3.9: The principle of unique choicešŸ”—

_ = is-propā†’equivāˆ„-āˆ„
_ = āˆ„-āˆ„-univ
_ = āˆ„-āˆ„-out
  • Lemma 3.9.1: is-propā†’equivāˆ„-āˆ„
  • Corollary 3.9.2: Implicit in e.g.Ā āˆ„-āˆ„-univ, āˆ„-āˆ„-out

3.11: ContractibilityšŸ”—

_ = is-contr
_ = is-contr-is-prop
_ = retractā†’is-contr
_ = Singleton-is-contr
_ = Ī£-contract
_ = Ī£-contr-eqv
  • 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šŸ”—

_ = equivā†’is-hlevel
_ = āŠŽ-is-hlevel
_ = Ī£-is-hlevel
_ = is-contr-if-inhabitedā†’is-prop
_ = is-propāˆ™ā†’is-contr
_ = H-Level-Dec
_ = disjoint-āŠŽ-is-prop
_ = Ā¬global-choice
_ = āˆ„-āˆ„-elim
_ = LEMā‰ƒDNE
_ = ā„•-well-ordered
_ = Ī£-contr-eqv
_ = is-propā‰ƒequivāˆ„-āˆ„
_ = Finite-choice
  • 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šŸ”—

_ = is-half-adjoint-equiv
_ = is-isoā†’is-half-adjoint-equiv
_ = fibre
_ = fibre-paths
_ = is-half-adjoint-equivā†’is-equiv
_ = linv
_ = rinv
_ = is-equivā†’pre-is-equiv
_ = is-equivā†’post-is-equiv
_ = is-isoā†’is-contr-linv
_ = is-isoā†’is-contr-rinv
  • 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šŸ”—

_ = is-biinv
_ = is-biinv-is-prop
  • Definition 4.3.1: is-biinv
  • Theorem 4.3.2: is-biinv-is-prop

4.4: Contractible fibresšŸ”—

_ = is-equiv
_ = is-equivā†’is-half-adjoint-equiv
_ = is-equiv-is-prop
Note

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šŸ”—

_ = is-surjective
_ = is-embedding
_ = embeddingā†’cancellable
_ = injective
_ = is-equivā†’is-surjective
_ = is-equivā†’is-embedding
_ = embedding-surjectiveā†’is-equiv
  • Definition 4.6.1:
    1. is-surjective
    2. 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šŸ”—

_ = Fibre-equiv
_ = Total-equiv
_ = Map-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
  • W-types: W

5.4: Inductive types are initial algebrasšŸ”—

_ = W-initial
  • Theorem 5.4.7: W-initial

5.5: Homotopy-inductive typesšŸ”—

_ = initialā†’induction.elim
  • Theorem 5.5.5: initialā†’induction.elim

Chapter 6: Higher inductive typesšŸ”—

6.2: Induction principles and dependent pathsšŸ”—

_ = to-pathp
_ = from-pathp
_ = SĀ¹-rec
_ = Ī©āæā‰ƒSāæ-map
  • 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 for n = 1

6.3: The intervalšŸ”—

_ = [0,1]
_ = I
_ = interval-contractible

This is the higher inductive type [0,1], not the interval type I.

  • Lemma 6.3.1: interval-contractible

6.4: Circles and spheresšŸ”—

_ = reflā‰ loop
_ = always-loop
_ = ap-square
  • Lemma 6.4.1: reflā‰ loop
  • Lemma 6.4.2: always-loop
  • Lemma 6.4.4: ap-square

6.5: SuspensionsšŸ”—

_ = Susp
_ = SuspSā°ā‰”SĀ¹
_ = Sāæā»Ā¹
_ = Ī£-mapāˆ™ā‰ƒmapāˆ™-Ī©
  • The suspension: Susp
  • Lemma 6.5.1: SuspSā°ā‰”SĀ¹
  • Definition 6.5.2: Sāæā»Ā¹
  • Lemma 6.5.4: Ī£-mapāˆ™ā‰ƒmapāˆ™-Ī©

6.6: Cell complexesšŸ”—

_ = TĀ²
  • The torus: TĀ².

6.8: PushoutsšŸ”—

_ = Pushout
_ = Cocone
_ = Pushout-is-universal-cocone
_ = Suspā‰”Pushout-āŠ¤ā†Aā†’āŠ¤
  • The pushout: Pushout
  • Definition 6.8.1: Cocone
  • Lemma 6.8.2: Pushout-is-universal-cocone
  • Observation: Suspā‰”Pushout-āŠ¤ā†Aā†’āŠ¤

6.9: TruncationsšŸ”—

_ = āˆ„-āˆ„ā‚€-elim
  • Lemma 6.9.1: āˆ„-āˆ„ā‚€-elim

6.10: QuotientsšŸ”—

_ = Coeq
_ = _/_
_ = Coeq-univ

We define the quotient _/_ in terms of coequalisers Coeq.

  • Lemma 6.10.3: Coeq-univ.

6.11: AlgebrašŸ”—

_ = Monoid-on
_ = Group-on
_ = Ļ€ā‚™ā‚Šā‚
_ = Monoid.Free-monoidāŠ£Forget
_ = Group.make-free-group
  • 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šŸ”—

_ = TĀ²ā‰ƒSĀ¹Ć—SĀ¹
  • Exercise 6.3: TĀ²ā‰ƒSĀ¹Ć—SĀ¹

Chapter 7: Homotopy n-typesšŸ”—

7.1: Definition of n-typesšŸ”—

_ = is-hlevel
_ = retractā†’is-hlevel
_ = Ī -is-hlevel
_ = n-Type-is-hlevel
  • 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šŸ”—

_ = set-identity-system
_ = identity-systemā†’hlevel
_ = Discreteā†’is-set
_ = Discrete-Nat
_ = hubs-and-spokesā†’hlevel
_ = hlevelā†’hubs-and-spokes
  • 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šŸ”—

_ = n-Tr-is-hlevel
_ = n-Tr-elim
_ = n-Tr-path-equiv
  • 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šŸ”—

_ = is-n-connected
_ = is-n-connected-Tr
_ = relative-n-type-const
_ = is-n-connectedā†’n-type-const
_ = n-type-constā†’is-n-connected
_ = is-n-connected-point
_ = point-is-n-connected
  • 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šŸ”—

_ = is-n-connectedā‰ƒāˆ„-āˆ„
  • 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Ā¹)šŸ”—

_ = SĀ¹Path.Cover
_ = SĀ¹Path.encode
_ = SĀ¹Path.decode
_ = SĀ¹Path.encode-decode
_ = SĀ¹Path.encode-loopāæ
_ = Ī©SĀ¹ā‰ƒintegers
_ = Ļ€ā‚SĀ¹ā‰”ā„¤
_ = Ļ€ā‚™ā‚Šā‚‚SĀ¹ā‰”0
  • 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šŸ”—

_ = Susp-is-connected
_ = Sāæā»Ā¹-is-connected
  • Theorem 8.2.1: Susp-is-connected
  • Corollary 8.2.2: Sāæā»Ā¹-is-connected

8.6: The Freudenthal suspension theoremšŸ”—

_ = relative-n-type-const-plus
_ = Wedge.elim
  • 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šŸ”—

_ = Precategory
_ = is-invertible
_ = _ā‰…_
_ = is-invertible-is-prop
_ = Cat[_,_]
_ = pathā†’iso
_ = is-category
_ = equiv-pathā†’identity-system
_ = Univalent.Ob-is-groupoid
_ = Hom-transport
_ = pathā†’to-sym
_ = pathā†’to-āˆ™
_ = Poset
_ = is-gaunt
_ = Disc
_ = Rel
_ = Sets
_ = Sets-is-category

Cat.Morphism, Cat.Univalent.

  • 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šŸ”—

_ = Functor
_ = _=>_
_ = Nat-is-set
_ = Functor-path
_ = invertibleā†’invertibleāæ
_ = isoāæā†’iso
_ = Functor-is-category
_ = _Fāˆ˜_
_ = _ā—‚_
_ = _ā–ø_
_ = Fāˆ˜-assoc
_ = Prebicategory.pentagon
_ = Prebicategory.triangle
_ = Cat
  • Definition 9.2.1: Functor
  • Definition 9.2.2: _=>_
    • The paragraph immediately after 9.2.2 is Nat-pathp and Nat-is-set
    • The one after that is Functor-path.
  • 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 for Cat.
  • Lemma 9.2.11: See the definition of Prebicategory.triangle for Cat.

9.3: AdjunctionsšŸ”—

_ = _āŠ£_
_ = is-left-adjoint-is-prop
  • Lemma 9.3.1: _āŠ£_
  • Lemma 9.3.2: is-left-adjoint-is-prop

9.4: EquivalencesšŸ”—

_ = is-equivalence
_ = is-faithful
_ = is-full
_ = is-fully-faithful
_ = is-split-eso
_ = is-eso
_ = ff+split-esoā†’is-equivalence
_ = Essential-fibre-between-cats-is-prop
_ = ff+esoā†’is-equivalence
_ = is-precat-iso
_ = is-equivalenceā†’is-precat-iso
_ = is-precat-isoā†’is-equivalence
_ = Precategory-identity-system
_ = Category-identity-system
  • 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šŸ”—

_ = _^op
_ = _Ɨį¶œ_
_ = Curry
_ = Uncurry
_ = Hom[-,-]
_ = 悈
_ = 悈-is-fully-faithful
_ = Representation
_ = Representation-is-prop
_ = hom-isoā†’adjoints
  • Definition 9.5.1: _^op
  • Definition 9.5.2: _Ɨį¶œ_
  • Lemma 9.5.3: Curry, Uncurry
    • The Hom[-,-]
    • The Yoneda embedding: 悈
  • 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.

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šŸ”—

_ = Structured-objects-is-category
_ = is-category-total
_ = Thin-structure-over
_ = Displayed
  • Definition 9.8.1: Thin-structure-over, generalised into Displayed
  • Theorem 9.8.2: Structured-objects-is-category, generalised into is-category-total

9.9: The Rezk completionšŸ”—

_ = Rezk-completion-is-category
_ = weak-equivā†’pre-equiv
_ = weak-equivā†’pre-iso
_ = is-esoā†’precompose-is-faithful
_ = eso-fullā†’pre-ff
_ = Rezk-completion
_ = complete-is-eso
_ = complete-is-ff
_ = complete
  • Lemma 9.9.1: is-esoā†’precompose-is-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šŸ”—

_ = is-equivalence.Fā»Ā¹āŠ£F
_ = Total-space-is-eso
_ = slice-is-category
_ = Total-space-is-ff
_ = Prebicategory
_ = Total-space
_ = Slice
  • 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šŸ”—

_ = Sets-is-complete
_ = Sets-is-cocomplete
_ = Sets-regular
_ = surjectiveā†’regular-epi
_ = epiā†’surjective
_ = Sets-effective-congruences
_ = Congruence.is-effective
_ = Susp-prop-is-set
_ = Susp-prop-path
_ = ACā†’LEM
  • 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šŸ”—

_ = V
_ = presentation
_ = Presentation.members
_ = extensionality
_ = empty-set
_ = pairing
_ = zeroāˆˆā„•
_ = sucāˆˆā„•
_ = union
_ = āˆˆ-induction
_ = replacement
_ = separation
  • Definition 10.5.1: V
  • Lemma 10.5.6: presentation
  • Definition 10.5.7: Presentation.members
  • Theorem 10.5.8:
      1. extensionality
      1. empty-set
      1. pairing
      1. zeroāˆˆā„•, sucāˆˆā„•
      1. union
      1. āˆˆ-induction
      1. replacement
      1. separation

  1. We use a slightly different definition of univalence for categories. It is shown equivalent to the usual formulation by equiv-pathā†’identity-systemā†©ļøŽ