nLab uniqueness quantifier

Redirected from "uniqueness quantifiers".

Contents

Definition

In first order logic with equality

Uniqueness up to equality

In first order logic with equality, given a predicate PP on a type TT with equality, the uniqueness quantifier of PP, denoted !x:T,P(x)\exists!\, x\colon T, P(x), is defined in terms of the universal and existential quantifiers as

!x:T,P(x)x:T,P(x)y:T,P(y)(x=y). \exists!\, x\colon T, P(x) \;\equiv\; \exists\, x\colon T, P(x) \wedge \forall\, y\colon T, P(y) \Rightarrow (x = y) .

The intended interpretation is that !x:T,P(x)\exists!\, x\colon T, P(x) is true iff P(a)P(a) is true for exactly one element aa of TT.

Uniqueness up to isomorphism

Sometimes, we want to use a weaker notion of equivalence than strict equality, such as isomorphism xyx \cong y. The uniqueness up to isomorphism quantifier of PP, denoted ! x:T,P(x)\exists!_\cong\, x\colon T, P(x), is defined in terms of the universal and existential quantifiers as

! x:T,P(x)x:T,P(x)y:T,P(y)(xy). \exists!_\cong\, x\colon T, P(x) \;\equiv\; \exists\, x\colon T, P(x) \wedge \forall\, y\colon T, P(y) \Rightarrow (x \cong y).

The intended interpretation is that ! x:T,P(x)\exists!_\cong\, x\colon T, P(x) is true iff P(a)P(a) is true for exactly one element aa of TT up to isomorphism.

Uniqueness up to isomorphism quantifiers are important in category theory, where the relevant notion of sameness is isomorphism rather than strict equality. It is also important in foundational set theories where the type of sets does not have equality, such as some presentations of SEAR and ETCS.

 In dependent type theory

In dependent type theory, given a type TT and a type family x:TP(x)x:T \vdash P(x), the uniqueness quantifier is a type defined as

!x:T.P(x)isContr( x:TP(x))\exists!\, x\colon T. P(x) \coloneqq \mathrm{isContr}\left(\sum_{x:T} P(x)\right)

which indicates that the dependent sum type x:TP(x)\sum_{x:T} P(x) is a contractible type, which is only the case for a family of type if every dependent type is a mere proposition and, for exactly one element x:Tx:T up to identity, the type P(x)P(x) is inhabited.

Usages

Defining exclusive disjunction

In dependent type theory, given two mere propositions PP and QQ, by descent or large elimination? of the boolean domain, one can construct a boolean-indexed family of propositions

x:boolrec bool P,Q(x)x:\mathrm{bool} \vdash \mathrm{rec}_\mathrm{bool}^{P, Q}(x)

with equivalences of types

β bool P,Q(0):rec bool P,Q(0)Pβ bool P,Q(1):rec bool P,Q(1)Q\beta_\mathrm{bool}^{P, Q}(0):\mathrm{rec}_\mathrm{bool}^{P, Q}(0) \simeq P \quad \beta_\mathrm{bool}^{P, Q}(1):\mathrm{rec}_\mathrm{bool}^{P, Q}(1) \simeq Q

in the case for descent for booleans, or with judgmental equality of types

rec bool P,Q(0)Prec bool P,Q(1)P\mathrm{rec}_\mathrm{bool}^{P, Q}(0) \equiv P \quad \mathrm{rec}_\mathrm{bool}^{P, Q}(1) \equiv P

in the case for large elimination for booleans.

The uniqueness quantifier of the above family of propositions is the exclusive disjunction of PP and QQ:

P̲Q!x:𝟚.rec bool P,Q(x)P \underline{\vee} Q \coloneqq \exists!x:\mathbb{2}.\mathrm{rec}_\mathrm{bool}^{P, Q}(x)

Bijections and equivalences

The uniqueness quantifier is used in the definition of a bijection in set theory and an equivalence in type theory, where one defines a function f:ABf:A \to B to be a bijection or equivalence if for all y:By:B the there is a unique x:Ax:A such that f(x)= Byf(x) =_B y

isEquiv(f)y:B.!x:A.f(x)= By\mathrm{isEquiv}(f) \coloneqq \forall y:B.\exists! x:A.f(x) =_B y

In dependent type theory, this is the same as defining a family of elements x:Af(x):Bx:A \vdash f(x):B to be an equivalence if it comes with a family of elements

y:Bϵ(f)(y):!x:A.f(x)= Byy:B \vdash \epsilon(f)(y):\exists! x:A.f(x) =_B y

The inverse of an equivalence is given by the family of elements y:Bϵ A(ϵ(f)(y)):Ay:B \vdash \epsilon_A(\epsilon(f)(y)):A, where ϵ A\epsilon_A is defined in the elimination rules for uniqueness quantifiers in dependent type theory.

Anafunctions

Similarly, uniqueness quantifications is used in the definition of an anafunction, where one defines a relation or correspondence x:A,y:BR(x,y)x:A, y:B \vdash R(x, y) to be an anafunction if for all x:Ax:A there is a unique y:By:B such that R(x,y)R(x, y)

isAnafunc(R)x:A.!y:B.R(x,y)\mathrm{isAnafunc}(R) \coloneqq \forall x:A.\exists! y:B.R(x, y)

Univalent universes

Uniqueness quantifiers are also used to define univalent universes. A Russell universe UU is a univalent universe if for all elements A:UA:U there is a unique B:UB:U such that ABA \simeq B:

isUnivalent(U)A:U.!B:U.AB\mathrm{isUnivalent}(U) \coloneqq \forall A:U.\exists! B:U.A \simeq B

Similarly, a Tarski universe (U,T)(U, T) is a univalent universe if for all elements A:UA:U there is a unique B:UB:U such that T(A)T(B)T(A) \simeq T(B):

isUnivalent(U,T)A:U.!B:U.T(A)T(B)\mathrm{isUnivalent}(U, T) \coloneqq \forall A:U.\exists! B:U.T(A) \simeq T(B)

See also

Last revised on September 6, 2024 at 19:10:14. See the history of this page for a list of all contributions to it.