nLab uniqueness of identity proofs

Contents

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, uniqueness of identity proofs or UIP refers to a couple of different axioms and rules applicable to individual types to turn them into h-sets, type families to turn them into families of sets (and in particular, universes to turn them into internal types of sets), as well as the type theory as a whole to turn it into an actual set-level type theory, where all types are h-sets. Under certain conditions, uniqueness of identity proofs for universes is incompatible with the univalence axiom, and uniqueness of identity proofs for the whole type theory is incompatible with the existence of a univalent universe.

Heuristically, the axiom asserts that for each element a:Aa:A and b:Ab:A, every two identification p:Id A(a,b)p:\mathrm{Id}_A(a, b) and q:Id A(a,b)q:\mathrm{Id}_A(a, b) of the identity type Id A(a,b)\mathrm{Id}_A(a, b) are typally equal to each other. This is equivalent to saying that every identity type Id A(a,b)\mathrm{Id}_A(a, b) is an h-proposition.

Statement

There are multiple notions of uniqueness of identity proofs: for individual types, for type families and Tarski universes, and for the type theory itself.

For individual types

Given a type AA, uniqueness of identity proofs is the axiom that for all elements a:Aa:A and b:Ab:A and identifications p:Id A(a,b)p:\mathrm{Id}_A(a, b) and q:Id A(a,b)q:\mathrm{Id}_A(a, b), there is an identification UIP A(a,b,p,q):Id Id A(a,b)(p,q)\mathrm{UIP}_A(a, b, p, q):\mathrm{Id}_{\mathrm{Id}_A(a, b)}(p, q). This is the same as stating that there is a dependent function

UIP A: a:A b:A p:Id A(a,b) q:Id A(a,b)Id Id A(a,b)(p,q)\mathrm{UIP}_A:\prod_{a:A} \prod_{b:A} \prod_{p:\mathrm{Id}_A(a, b)} \prod_{q:\mathrm{Id}_A(a, b)} \mathrm{Id}_{\mathrm{Id}_A(a, b)}(p, q)

Uniqueness of identity proofs implies that AA is an h-set, and can be used in the definition of an h-set.

For type families and universes

Uniqueness of identity proofs for type families (A,B)(A, B) says that given a type AA with a type family B(a)B(a) indexed by elements a:Aa:A, the typal uniqueness of identity proofs holds for the dependent type B(a)B(a) of every element of the index type a:Aa:A. This is the same as stating that there is a dependent function

UIP A,B: a:A b:B(a) c:B(a) p:Id B(a)(b,c) q:Id B(a)(b,c)Id Id B(a)(b,c)(p,q)\mathrm{UIP}_{A, B}: \prod_{a:A} \prod_{b:B(a)} \prod_{c:B(a)} \prod_{p:\mathrm{Id}_{B(a)}(b, c)} \prod_{q:\mathrm{Id}_{B(a)}(b, c)} \mathrm{Id}_{\mathrm{Id}_{B(a)}(b, c)}(p, q)

This definition of uniqueness of identity proofs could be used in the definition of family of sets. Since this definition applies to type families, this should probably be called the familial uniqueness of identity proofs to distinguish it from the uniqueness of identity proofs axiom above.

Since every Tarski universe consists of a type UU of encodings and a type family TT representing the actual small types indexed by the type UU, with addition structure representing the closure of UU under all type formers, the familial uniqueness of identity proofs definition works for Tarski universes as well, and this could equivalently be called the Tarski universe uniqueness of identity proofs.

As a rule in the type theory

Uniqueness of identity proofs could also be rewritten as a rule instead of an axiom, by making the hypotheses of the axioms into premises of the rule. This makes uniqueness of identity proofs applicable not only to universes, but to the entire type theory. In addition, one could use, in addition to typal equality, either judgmental equality or propositional equality, resulting in judgmental uniqueness of identity proofs and propositional uniqueness of identity proofs, with the original uniqueness of identity proofs axiom called typal uniqueness of identity proofs

In this manner, uniqueness of identity proofs then becomes the rules:

  • Judgmental uniqueness of identity proofs
ΓAtypeΓa:AΓb:AΓp:Id A(a,b)Γq:Id A(a,b)Γpq:Id A(a,b)\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 p \equiv q:\mathrm{Id}_A(a, b)}
  • Propositional uniqueness of identity proofs
ΓAtypeΓa:AΓb:AΓp:Id A(a,b)Γq:Id A(a,b)Γp= Id A(a,b)qtrue\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 p =_{\mathrm{Id}_A(a, b)} q \; \mathrm{true}}
  • Typal uniqueness of identity proofs
Γ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)}

Uniqueness of identity proofs is a axiom of set truncation, and turns the type theory into a set-level type theory. Judgmental uniqueness of identity proofs holds in XTT, where it follows from boundary separation.

Uniqueness of identity proofs for heterogeneous identity types

There is also a notion of uniqueness of identity proofs for heterogeneous identity types, which is given by the following rule:

  • Judgmental uniqueness of identity proofs for heterogeneous identity 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)Γqr:hId B(a,b,p,y,z)\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 q \equiv r:\mathrm{hId}_{B}(a, b, p, y, z)}
  • Propositional uniqueness of identity proofs for heterogeneous identity 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)Γq= hId B(a,b,p,y,z)rtrue\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 q =_{\mathrm{hId}_{B}(a, b, p, y, z)} r \; \mathrm{true}}
  • Typal uniqueness of identity proofs for heterogeneous identity 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)}

and likewise for dependent heterogeneous identity types:

  • Judgmental uniqueness of identity proofs for dependent heterogeneous identity 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)Γqr:hId x:A.B(x)(a,b,p,y,z)\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 q \equiv r:\mathrm{hId}_{x:A.B(x)}(a, b, p, y, z)}
  • Propositional uniqueness of identity proofs for dependent heterogeneous identity 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)Γq= hId x:A.B(x)(a,b,p,y,z)rtrue\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 q =_{\mathrm{hId}_{x:A.B(x)}(a, b, p, y, z)} r \; \mathrm{true}}
  • Typal uniqueness of identity proofs for dependent heterogeneous identity 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)}

Properties

Uniqueness of identity proofs and univalence

In this section we assume that the universe is a Tarski universe. Uniqueness of identity proofs is inconsistent with having a univalent type with a type family (A,B)(A, B) with at least one term a:Aa:A where the dependent type B(a)B(a) is provably not a proposition

( p:B(a) q:B(a)Id B(a)(p,q))\left(\prod_{p:B(a)} \prod_{q:B(a)} \mathrm{Id}_{B(a)}(p, q)\right) \to \emptyset

because by univalence, AA is then provably not a set, which contradicts uniqueness of identity proofs. In particular, having a univalent universe (U,T)(U, T) in the type theory is inconsistent with uniqueness of identity proofs.

The familial uniqueness of identity proofs axiom applied to Tarski universes implies that for all A:UA:U the type T(A)T(A) is a set. This means the type reflection of the internal equivalences T(A UB)T(A \simeq_U B) is an h-set, and the univalence axiom then implies that UU is an h-groupoid. If UU has h-sets which can be proven not to be an h-proposition, such as the booleans type, then UU is provably not an h-set.

However, unlike the case for uniqueness of identity proofs, the familial uniqueness of identity proofs and the univalence axiom for universes are inconsistent with each other only if the Tarski universe UU has objects which can be proven not to be an h-set, such as internal univalent Tarski universes V:UV:U where the type T(V)T(V) has terms A:T(V)A:T(V) such that T V(A)T_V(A) is an h-set which is not an h-proposition, such as the booleans type. As a result, T(V)T(V) can be proven to not be a set, causing uniqueness of identity proofs for UU to be inconsistent with the existence of V:UV:U and univalence.

References

Discussion in Coq is in

  • Pierre Corbineau, The K axiom in Coq (almost) for free (pdf)

For definitional UIP in XTT

Last revised on February 24, 2024 at 11:57:28. See the history of this page for a list of all contributions to it.