nLab axiom of set truncation

Context

Type theory

natural deduction metalanguage, practical foundations

  1. type formation rule
  2. term introduction rule
  3. term elimination rule
  4. computation rule

type theory (dependent, intensional, observational type theory, homotopy type theory)

syntax object language

computational trinitarianism =
propositions as types +programs as proofs +relation type theory/category theory

logicset theory (internal logic of)category theorytype theory
propositionsetobjecttype
predicatefamily of setsdisplay morphismdependent type
proofelementgeneralized elementterm/program
cut rulecomposition of classifying morphisms / pullback of display mapssubstitution
introduction rule for implicationcounit for hom-tensor adjunctionlambda
elimination rule for implicationunit for hom-tensor adjunctionapplication
cut elimination for implicationone of the zigzag identities for hom-tensor adjunctionbeta reduction
identity elimination for implicationthe other zigzag identity for hom-tensor adjunctioneta conversion
truesingletonterminal object/(-2)-truncated objecth-level 0-type/unit type
falseempty setinitial objectempty type
proposition, truth valuesubsingletonsubterminal object/(-1)-truncated objecth-proposition, mere proposition
logical conjunctioncartesian productproductproduct type
disjunctiondisjoint union (support of)coproduct ((-1)-truncation of)sum type (bracket type of)
implicationfunction set (into subsingleton)internal hom (into subterminal object)function type (into h-proposition)
negationfunction set into empty setinternal hom into initial objectfunction type into empty type
universal quantificationindexed cartesian product (of family of subsingletons)dependent product (of family of subterminal objects)dependent product type (of family of h-propositions)
existential quantificationindexed disjoint union (support of)dependent sum ((-1)-truncation of)dependent sum type (bracket type of)
logical equivalencebijection setobject of isomorphismsequivalence type
support setsupport object/(-1)-truncationpropositional truncation/bracket type
n-image of morphism into terminal object/n-truncationn-truncation modality
equalitydiagonal function/diagonal subset/diagonal relationpath space objectidentity type/path type
completely presented setsetdiscrete object/0-truncated objecth-level 2-type/set/h-set
setset with equivalence relationinternal 0-groupoidBishop set/setoid with its pseudo-equivalence relation an actual equivalence relation
equivalence class/quotient setquotientquotient type
inductioncolimitinductive type, W-type, M-type
higher inductionhigher colimithigher inductive type
-0-truncated higher colimitquotient inductive type
coinductionlimitcoinductive type
presettype without identity types
set of truth valuessubobject classifiertype of propositions
domain of discourseuniverseobject classifiertype universe
modalityclosure operator, (idempotent) monadmodal type theory, monad (in computer science)
linear logic(symmetric, closed) monoidal categorylinear type theory/quantum computation
proof netstring diagramquantum circuit
(absence of) contraction rule(absence of) diagonalno-cloning theorem
synthetic mathematicsdomain specific embedded programming language

homotopy levels

semantics

Foundational axiom

Contents

Idea

In dependent type theory, an axiom of set truncation is a axiom or unjustified rule which implies the uniqueness of identity proofs which states that every type is an h-set. Adding an axiom of set truncation to a dependent type theory results in a set-level type theory.

Examples

TODO: show that each of the axioms below implies the uniqueness of identity proofs.

Uniqueness of identity proofs

For identification types

In dependent type theory, uniqueness of identity proofs for identification types is given by the following rule:

ΓAtypeΓa:AΓb:AΓp:Id A(a,b)Γq:Id A(a,b)ΓUIP A(a,b,p,q):Id Id A(a,b)(p,q)\frac{\Gamma \vdash A \; type \quad \Gamma \vdash a:A \quad \Gamma \vdash b:A \quad \Gamma \vdash p:\mathrm{Id}_A(a, b) \quad \Gamma \vdash q:\mathrm{Id}_A(a, b)}{\Gamma \vdash \mathrm{UIP}_A(a, b, p, q):\mathrm{Id}_{\mathrm{Id}_A(a, b)}(p, q)}

For heterogeneous identification types

There is uniqueness of identity proofs for heterogeneous identification types:

ΓAtypeΓBtype Γa:AΓb:AΓp:Id A(a,b)Γy:BΓz:B Γq:hId B(a,b,p,y,z)Γr:hId B(a,b,p,y,z)ΓUIP B(a,b,p,y,z,q,r):Id hId B(a,b,p,y,z)(q,r)\frac{ \begin{array}{l} \Gamma \vdash A \; \mathrm{type} \quad \Gamma \vdash B \; \mathrm{type} \\ \Gamma \vdash a:A \quad \Gamma \vdash b:A \quad \Gamma \vdash p:\mathrm{Id}_A(a, b) \quad \Gamma \vdash y:B \quad \Gamma \vdash z:B \\ \Gamma \vdash q:\mathrm{hId}_{B}(a, b, p, y, z) \quad \Gamma \vdash r:\mathrm{hId}_{B}(a, b, p, y, z) \end{array} }{\Gamma \vdash \mathrm{UIP}_{B}(a, b, p, y, z, q, r):\mathrm{Id}_{\mathrm{hId}_{B}(a, b, p, y, z)}(q, r)}

Uniqueness of identity proofs for identification types follows from uniqueness of identity proofs for heterogeneous identification types by taking canonical element pt:𝟙\mathrm{pt}:\mathbb{1} of the unit type 𝟙\mathbb{1}, identification refl 𝟙(pt):Id 𝟙(pt,pt)\mathrm{refl}_{\mathbb{1}}(\mathrm{pt}):\mathrm{Id}_{\mathbb{1}}(\mathrm{pt}, \mathrm{pt}), and elements a:Aa:A and b:Ab:A. Since the following two types are equivalent:

Id A(a,b)hId A(pt,pt,refl 𝟙(pt),a,b)\mathrm{Id}_{A}(a, b) \simeq \mathrm{hId}_{A}(\mathrm{pt}, \mathrm{pt}, \mathrm{refl}_{\mathbb{1}}(\mathrm{pt}), a, b)

and because hId A(pt,pt,refl 𝟙(pt),a,b)\mathrm{hId}_{A}(\mathrm{pt}, \mathrm{pt}, \mathrm{refl}_{\mathbb{1}}(\mathrm{pt}), a, b) is always a mere proposition by uniqueness of identity proofs for heterogeneous identification types, it follows that Id A(a,b)\mathrm{Id}_{A}(a, b) is also always a mere proposition.

Similarly, there is also uniqueness of identity proofs for dependent heterogeneous identification types:

ΓAtypeΓ,x:AB(x)type Γa:AΓb:AΓp:Id A(a,b)Γy:B(a)Γz:B(b) Γq:hId x:A.B(x)(a,b,p,y,z)Γr:hId x:A.B(x)(a,b,p,y,z)ΓUIP x:A.B(x)(a,b,p,y,z,q,r):Id hId x:A.B(x)(a,b,p,y,z)(q,r)\frac{ \begin{array}{l} \Gamma \vdash A \; \mathrm{type} \quad \Gamma, x:A \vdash B(x) \; \mathrm{type} \\ \Gamma \vdash a:A \quad \Gamma \vdash b:A \quad \Gamma \vdash p:\mathrm{Id}_A(a, b) \quad \Gamma \vdash y:B(a) \quad \Gamma \vdash z:B(b) \\ \Gamma \vdash q:\mathrm{hId}_{x:A.B(x)}(a, b, p, y, z) \quad \Gamma \vdash r:\mathrm{hId}_{x:A.B(x)}(a, b, p, y, z) \end{array} }{\Gamma \vdash \mathrm{UIP}_{x:A.B(x)}(a, b, p, y, z, q, r):\mathrm{Id}_{\mathrm{hId}_{x:A.B(x)}(a, b, p, y, z)}(q, r)}

Uniqueness of identity proofs for identification types follows from uniqueness of identity proofs for dependent heterogeneous identification types by defining the type AA to be the dependent type C(pt)C(\mathrm{pt}) for type family x:𝟙C(x)x:\mathbb{1} \vdash C(x) indexed by the unit type 𝟙\mathbb{1}, and taking the canonical element pt:𝟙\mathrm{pt}:\mathbb{1}, identification refl 𝟙(pt):Id 𝟙(pt,pt)\mathrm{refl}_{\mathbb{1}}(\mathrm{pt}):\mathrm{Id}_{\mathbb{1}}(\mathrm{pt}, \mathrm{pt}), and elements a:C(pt)a:C(\mathrm{pt}) and b:C(pt)b:C(\mathrm{pt}). Since the two types are equivalent:

Id A(a,b)Id C(pt)(a,b)hId x:𝟙.C(x)(pt,pt,refl 𝟙(pt),a,b)\mathrm{Id}_{A}(a, b) \equiv \mathrm{Id}_{C(\mathrm{pt})}(a, b) \simeq \mathrm{hId}_{x:\mathbb{1}.C(x)}(\mathrm{pt}, \mathrm{pt}, \mathrm{refl}_{\mathbb{1}}(\mathrm{pt}), a, b)

and because hId x:𝟙.C(x)(pt,pt,refl 𝟙(pt),a,b)\mathrm{hId}_{x:\mathbb{1}.C(x)}(\mathrm{pt}, \mathrm{pt}, \mathrm{refl}_{\mathbb{1}}(\mathrm{pt}), a, b) is always a mere proposition by uniqueness of identity proofs for dependent heterogeneous identification types, it follows that Id C(pt)(a,b)\mathrm{Id}_{C(\mathrm{pt})}(a, b) and thus by definition Id A(a,b)\mathrm{Id}_{A}(a, b) is also always a mere proposition.

Axiom K

For identification types

In dependent type theory, axiom K is given by the following rule:

ΓAtypeΓa:AΓp:Id A(a,a)ΓK A(a,p):Id Id A(a,a)(p,refl A(a))\frac{\Gamma \vdash A \; \mathrm{type} \quad \Gamma\vdash a:A \quad \Gamma \vdash p:\mathrm{Id}_A(a, a)}{\Gamma\vdash K_A(a, p):\mathrm{Id}_{\mathrm{Id}_A(a, a)}(p, refl_A(a))}

For heterogeneous identification types

There is an axiom K for heterogeneous identification types:

ΓAtypeΓBtype Γf:ABΓa:AΓb:AΓp:Id A(a,b) Γq:hId B(a,b,p,f(a),f(b))ΓK B(f,a,b,p,q):Id hId B(a,b,p,f(a),f(b))(q,ap B(f,a,b,p))\frac{ \begin{array}{l} \Gamma \vdash A \; \mathrm{type} \quad \Gamma \vdash B \; \mathrm{type} \\ \Gamma \vdash f:A \to B \quad \Gamma \vdash a:A \quad \Gamma \vdash b:A \quad \Gamma \vdash p:\mathrm{Id}_A(a, b) \\ \Gamma \vdash q:\mathrm{hId}_{B}(a, b, p, f(a), f(b)) \end{array} }{\Gamma \vdash K_{B}(f, a, b, p, q):\mathrm{Id}_{\mathrm{hId}_{B}(a, b, p, f(a), f(b))}(q, \mathrm{ap}_{B}(f, a, b, p))}

Axiom K for identification types follows from axiom K for heterogeneous identification types by taking canonical element pt:𝟙\mathrm{pt}:\mathbb{1} of the unit type 𝟙\mathbb{1}, identification refl 𝟙(pt):Id 𝟙(pt,pt)\mathrm{refl}_{\mathbb{1}}(\mathrm{pt}):\mathrm{Id}_{\mathbb{1}}(\mathrm{pt}, \mathrm{pt}), and elements a:Aa:A and b:Ab:A. Since the following two types are equivalent:

Id A(a,b)hId A(pt,pt,refl 𝟙(pt),a,b)\mathrm{Id}_{A}(a, b) \simeq \mathrm{hId}_{A}(\mathrm{pt}, \mathrm{pt}, \mathrm{refl}_{\mathbb{1}}(\mathrm{pt}), a, b)

and because hId A(pt,pt,refl 𝟙(pt),a,a)\mathrm{hId}_{A}(\mathrm{pt}, \mathrm{pt}, \mathrm{refl}_{\mathbb{1}}(\mathrm{pt}), a, a) is always a contractible type with center of contraction ap A(f,pt,pt,refl 𝟙(pt))\mathrm{ap}_{A}(f, \mathrm{pt}, \mathrm{pt}, \mathrm{refl}_{\mathbb{1}}(\mathrm{pt})) for element a:Aa:A, and function f:𝟙Af:\mathbb{1} \to A, by axiom K for heterogeneous identification types, it follows that Id A(a,a)\mathrm{Id}_{A}(a, a) is also always a contractible type, with center of contraction refl A(a)\mathrm{refl}_A(a).

Similarly, there is also an axiom K for dependent heterogeneous identification types:

ΓAtypeΓ,x:AB(x)type Γf: x:AB(x)Γa:AΓb:AΓp:Id A(a,b) Γq:hId x:A.B(x)(a,b,p,f(a),f(b))ΓK x:A.B(x)(f,a,b,p,q):Id hId x:A.B(x)(a,b,p,f(a),f(b))(q,apd x:A.B(x)(f,a,b,p))\frac{ \begin{array}{l} \Gamma \vdash A \; \mathrm{type} \quad \Gamma, x:A \vdash B(x) \; \mathrm{type} \\ \Gamma \vdash f:\prod_{x:A} B(x) \quad \Gamma \vdash a:A \quad \Gamma \vdash b:A \quad \Gamma \vdash p:\mathrm{Id}_A(a, b) \\ \Gamma \vdash q:\mathrm{hId}_{x:A.B(x)}(a, b, p, f(a), f(b)) \end{array} }{\Gamma \vdash K_{x:A.B(x)}(f, a, b, p, q):\mathrm{Id}_{\mathrm{hId}_{x:A.B(x)}(a, b, p, f(a), f(b))}(q, \mathrm{apd}_{x:A.B(x)}(f, a, b, p))}

Axiom K for identification types follows from axiom K for dependent heterogeneous identification types by defining the type AA to be the dependent type C(pt)C(\mathrm{pt}) for type family x:𝟙C(x)x:\mathbb{1} \vdash C(x) indexed by the unit type 𝟙\mathbb{1}, and taking the canonical element pt:𝟙\mathrm{pt}:\mathbb{1}, identification refl 𝟙(pt):Id 𝟙(pt,pt)\mathrm{refl}_{\mathbb{1}}(\mathrm{pt}):\mathrm{Id}_{\mathbb{1}}(\mathrm{pt}, \mathrm{pt}), and elements a:C(pt)a:C(\mathrm{pt}) and b:C(pt)b:C(\mathrm{pt}). Since the two types are equivalent:

Id A(a,b)Id C(pt)(a,b)hId x:𝟙.C(x)(pt,pt,refl 𝟙(pt),a,b)\mathrm{Id}_{A}(a, b) \equiv \mathrm{Id}_{C(\mathrm{pt})}(a, b) \simeq \mathrm{hId}_{x:\mathbb{1}.C(x)}(\mathrm{pt}, \mathrm{pt}, \mathrm{refl}_{\mathbb{1}}(\mathrm{pt}), a, b)

and because hId x:𝟙.C(x)(pt,pt,refl 𝟙(pt),a,b)\mathrm{hId}_{x:\mathbb{1}.C(x)}(\mathrm{pt}, \mathrm{pt}, \mathrm{refl}_{\mathbb{1}}(\mathrm{pt}), a, b) is always a contractible type with center of contraction apd x:𝟙.C(x)(f,pt,pt,refl 𝟙(pt))\mathrm{apd}_{x:\mathbb{1}.C(x)}(f, \mathrm{pt}, \mathrm{pt}, \mathrm{refl}_{\mathbb{1}}(\mathrm{pt})) for element a:Aa:A, and dependent function f: x:𝟙C(x)f:\prod_{x:\mathbb{1}} C(x), by axiom K for heterogeneous identification types, it follows that Id C(pt(a,a)\mathrm{Id}_{C(\mathrm{pt}}(a, a) and thus by definition Id A(a,a)\mathrm{Id}_{A}(a, a) is also always a contractible type, with center of contraction refl A(a)\mathrm{refl}_A(a).

Leibniz’s identity of indiscernibles

In dependent type theory with power sets, Leibniz's identity of indiscernibles is given by the following inference rule:

ΓAtypeΓ,x:A,y:AidOfInd A(x,y):Id A(x,y)( P:𝒫(A)P(x)P(y))\frac{\Gamma \vdash A \; \mathrm{type}}{\Gamma, x:A, y:A \vdash \mathrm{idOfInd}_A(x, y):\mathrm{Id}_A(x, y) \simeq \left(\prod_{P:\mathcal{P}(A)} P(x) \simeq P(y)\right)}

This implies that all types AA are sets, because the type

P:𝒫(A)P(x)P(y)\prod_{P:\mathcal{P}(A)} P(x) \simeq P(y)

is always a proposition, in the context of weak function extensionality, and thus by the equivalence of types, Id A(x,y)\mathrm{Id}_A(x, y) is also a proposition for all x:Ax:A and y:Ay:A, which means that AA is a set.

Set-theoretic principle of unique choice

In dependent type theory with power sets, the set-theoretic principle of unique choice is given by the following rule:

ΓAtypeΓBtypeΓpuc A,B:( R:A×B𝒫(𝟙)isTotal(R)×isFunctional(R))(AB)\frac{\Gamma \vdash A \; \mathrm{type} \quad \Gamma \vdash B \; \mathrm{type}}{\Gamma \vdash \mathrm{puc}_{A, B}:\left(\sum_{R:A \times B \to \mathcal{P}(\mathbb{1})} \mathrm{isTotal}(R) \times \mathrm{isFunctional}(R)\right) \simeq (A \to B)}

Because the type A×B𝒫(𝟙)A \times B \to \mathcal{P}(\mathbb{1}) is a set, the type

R:A×B𝒫(𝟙)isTotal(R)×isFunctional(R)\sum_{R:A \times B \to \mathcal{P}(\mathbb{1})} \mathrm{isTotal}(R) \times \mathrm{isFunctional}(R)

is also a set, and the equivalence only exists if the function type ABA \to B is a set, which only occurs if BB is a set. Thus, this rule implies that all types are sets.

Boundary separation

In cubical type theory, boundary separation is given by the following rule:

ΓAtypeΓa:AΓb:AΓr:IΓ,(r= I0)(r= I1)trueab:AΓab:A\frac{\Gamma \vdash A \; \mathrm{type} \quad \Gamma \vdash a:A \quad \Gamma \vdash b:A \quad \Gamma \vdash r:I \quad \Gamma, (r =_I 0) \vee (r =_I 1) \; \mathrm{true} \vdash a \equiv b:A}{\Gamma \vdash a \equiv b:A}

Axiom of existence

In dependent type theory, the type-theoretic axiom of existence states that every type has a choice operator, a function from its bracket type to the type itself, and is given by the following rule:

ΓAtypeΓϵ A:[A]A\frac{\Gamma \vdash A \; \mathrm{type}}{\Gamma \vdash \epsilon_A:[A] \to A}

Indeed, it suffices for the identity types to have choice operators:

ΓAtypeΓ,x:A,y:Aϵ Id A(x,y):[Id A(x,y)]Id A(x,y)\frac{\Gamma \vdash A \; \mathrm{type}}{\Gamma, x:A, y:A \vdash \epsilon_{\mathrm{Id}_A}(x, y):[\mathrm{Id}_A(x, y)] \to \mathrm{Id}_A(x, y)}

Equality reflection

In dependent type theory, equality reflection is given by the following rule:

ΓAtypeΓa:AΓb:AΓp:Id A(a,b)Γab:A\frac{\Gamma \vdash A \; \mathrm{type} \quad \Gamma \vdash a:A \quad \Gamma \vdash b:A \quad \Gamma \vdash p:\mathrm{Id}_A(a, b)}{\Gamma \vdash a \equiv b:A}

Strong pattern matching

S 1S^1-localization

In dependent type theory, the axiom of S 1 S^1 -localization is given by the following rules:

ΓAtypeΓf:S 1AΓcirclocal A:isEquiv(const A,S 1)\frac{\Gamma \vdash A \; \mathrm{type} \quad \Gamma \vdash f:S^1 \to A}{\Gamma \vdash \mathrm{circlocal}_{A}:\mathrm{isEquiv}(\mathrm{const}_{A, S^1})}

 Axiom of finiteness

In dependent type theory with dependent product types, dependent sum types, identity types, function extensionality, and a type of all propositions, the axiom of finiteness is given by the following rule:

ΓAtypeΓfinWitn A:isFinite(A)\frac{\Gamma \vdash A \; \mathrm{type}}{\Gamma \vdash \mathrm{finWitn}_A:\mathrm{isFinite}(A)}

where

isFinite(A) S:(AProp)Prop(((λx:A.)S)× P:AProp Q:AProp(PS) ×(!x:A.xQ)×(PQ= APropλx:A.)(PQS))((λx:A.)S) \mathrm{isFinite}(A) \equiv \begin{array}{c} \prod_{S:(A \to \mathrm{Prop}) \to \mathrm{Prop}} (((\lambda x:A.\bot) \in S) \times \prod_{P:A \to \mathrm{Prop}} \prod_{Q:A \to \mathrm{Prop}} (P \in S) \\ \times (\exists!x:A.x \in Q) \times (P \cap Q =_{A \to \mathrm{Prop}} \lambda x:A.\bot) \to (P \cup Q \in S)) \to ((\lambda x:A.\top) \in S) \end{array}

The membership relation and the subtype operations used above are defined in the nLab article on subtypes.

Circle type axioms

Any one of the following axioms on the circle type implies axiom K or uniqueness of identity proofs for all types in the dependent type theory, and thus is an axiom of set-truncation:

  • That S 1S^1 is a set,
    trunc 0 S 1:isSet(S 1)\mathrm{trunc}_0^{S^1}:\mathrm{isSet}(S^1)
  • That S 1S^1 is a proposition or a contractible type, which are the same condition as S 1S^1 being a set because S 1S^1 is a pointed connected type
    trunc S 1:isProp(S 1)contr S 1:isContr(S 1)\mathrm{trunc}^{S^1}:\mathrm{isProp}(S^1) \qquad \mathrm{contr}_{S^1}:\mathrm{isContr}(S^1)
  • That there is an identification K:refl S 1(base)= S 1loopK:\mathrm{refl}_{S^1}(\mathrm{base}) =_{S^1} \mathrm{loop}

Kuratowski-finite implies finite

In dependent type theory, in general there are Kuratowski-finite types which are not h-sets, such as the circle type. However, every finite type is an h-set, and hence why they are usually called finite sets.

A naive translation into dependent type theory of the traditional set-theoretic theorem in classical mathematics that “Kuratowski-finite implies finite” results in the statement that every Kuratowski-finite type is finite. This implies that the circle type is a finite type, which implies that the circle type is an h-set, which implies that every type is an h-set. Thus, that every Kuratowski-finite type is finite is an axiom of set truncaiton.

The statement “Kuratowski-finite implies finite” in classical mathematics is really a statement about h-sets, similar to how the axiom of choice is really a statement about h-sets. This is because it is still true in constructive mathematics that every Kuratowski-finite type with decidable equality is a finite type, and in dependent type theory, every type with decidable equality is an h-set.

See also

Last revised on December 12, 2023 at 15:47:17. See the history of this page for a list of all contributions to it.