nLab
tripos

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

logiccategory theorytype theory
trueterminal object/(-2)-truncated objecth-level 0-type/unit type
falseinitial objectempty type
proposition(-1)-truncated objecth-level 1-type/h-prop
proofgeneralized elementprogram
conjunctionproductproduct type
disjunctioncoproduct ((-1)-truncation of)sum type (bracket type of)
implicationinternal homfunction type
negationinternal hom into initial objectfunction type into empty type
universal quantificationdependent productdependent product type
existential quantificationdependent sum ((-1)-truncation of)dependent sum type (bracket type of)
equivalencepath space objectidentity type
equivalence classquotientquotient type
inductioncolimitinductive type, W-type, M-type
higher inductionhigher colimithigher inductive type
completely presented setdiscrete object/0-truncated objecth-level 2-type/preset/h-set
setinternal 0-groupoidBishop set/setoid
universeobject classifiertype of types
modalityclosure operator monadmodal type theory, monad (in computer science)

homotopy levels

semantics

(0,1)-Category theory

Contents

Idea

A tripos is a first-order hyperdoctrine with equality satisfying an additional property that allows it to interpret impredicative higher-order logic as well. In particular, every tripos gives rise to a corresponding topos).

The notion of tripos, due to Andrew Pitts, is useful for giving a unified account of two very different classes of toposes: localic toposes and realizability toposes.

The name ‘tripos’ is to be credited to Peter Johnstone, who was the thesis advisor of Pitts. It can be read as an acronym for “Topos Representing Indexed Partially Ordered Set”, but it is memorable also as a pun, referring to a famous examination at Cambridge University where Pitts, Johnstone, and Hyland work.

Definition

Recall that the data of a first-order hyperdoctrine T consists of a category of terms C T, assumed to have finite products, and a functor

Pred T:C T opHeytAlgPred_T: C_{T}^{op} \to HeytAlg

to the category of Heyting algebras, satisfying suitable properties (including quantifiers, i.e., left and right adjoints to “pullback maps” Pred T(f))1. We often abbreviate Pred T(f) to f *, calling it a pullback map. If H is a Heyting algebra, we let H denote the underlying set.

Definition

A tripos is a first-order hyperdoctrine T together with, for every object c of C T, an object Pc and an element in cPred T(c×Pc) such that for any object b and element pPred T(c×b), there exists a map χ:bPc with Pred T(1 c×χ)(in c)=p. (N.B.: such χ need not be unique.)

Another way of phrasing the definition is that to each object c of C T there is an assigned object P(c) and an assigned epimorphism

hom(,Pc)Pred T(c×)\hom(-, P c) \to {|Pred_T|}(c \times -)

of set-valued functors; the predicate in c is the value of id c under the assigned epimorphism hom(Pc,Pc)Pred T(c×Pc) ( à la Yoneda lemma ).

The in c are called generic predicates. In particular, put P=P1 and in=in 1Pred T(P), with corresponding epimorphism hom(,P)Pred T. If C T is cartesian closed, we then have epis

hom(,P c)hom(,P)(c×) opPred T(c×) op=Pred T(c×)\hom(-, P^c) \cong \hom(-, P) \circ (c \times -)^{op} \to {|Pred_T|} \circ (c \times -)^{op} = {|Pred_T|}(c \times -)

and in this way the single generic predicate (P,in) can be used to generate a generic predicate over c, as (P c,in c=(eval c) *(in)), i.e., a generic predicate over c is obtained by pulling back along the evaluation map eval c:c×P cP. (N.B.: this need not reproduce the original generic predicates, but the resulting tripos structure may be compared with the original tripos structure in both directions: there are maps PcP c and P cPc, with the generic predicates in the two triposes pulling back to each other along these maps).

In practice, the category C T will indeed often be cartesian closed (frequently taking C T=Set in fact), and triposes are frequently formed in the manner just described, starting with a generic predicate over 1 and pulling it back along the maps eval c to get a generic predicate over any c.

Remark

The surjective natural transformation defining the suitably generic predicate in a tripos of course induces a preorder (but not necessarily posetal) structure on each Hom C T(Y,X), the posetal reflection of which gives the Heyting algebra P(Y). Accordingly, we can specify a tripos with category of terms C T by specifying an object XOb(C T) and putting Heyting prealgebra structure on Hom C T(,X) in such a way as to yield all the first-order hyperdoctrine structure, with the identity morphism on X playing the role of the suitably generic predicate.

Examples

Coming from toposes

Every topos E gives rise to a tripos in an obvious way, using C T=E and

Pred T=Sub:E opHeytAlg,Pred_T = Sub \colon E^{op} \to HeytAlg,

taking an object e to the Heyting algebra of subobjects Sub(e). Here of course we have not just an epimorphism but an isomorphism

hom(,Ω c)Pred T(c×),\hom(-, \Omega^c) \to Pred_T(c \times -),

obtained by pulling back the generic predicate t:1Ω over 1 along eval:c×Ω cΩ.

Coming from complete Heyting algebras

If H is a complete Heyting algebra, we can take C T=Set, and put

Pred T=hom(,H):Set opHeytAlg.Pred_T = \hom(-, H) \colon Set^{op} \to HeytAlg.

Completeness of H is used to ensure that for each function f:XY, the Heyting algebra map Pred T(f):H YH X has a left and right adjoint. The identity map hom(,H)Pred T is the epimorphism we use to generate the tripos structure, taking of course (H,1 HH H) as the generic predicate over 1.

Coming from partial combinatory algebras

If A is a partial combinatory algebra (PCA), we can form a tripos in the following manner. Let C T=Set. For each set X, one can put a pre-ordering? on P(A) X [here, the P(A) refers to the actual powerset of A in Set] as follows: given f,gP(A) X, let Hom(f,g) be the set of a in A such that for all x in X and b in f(x), a applied to b is defined and an element of g(x). We will of course take fg just in case Hom(f,g) is inhabited. The relation is reflexive and transitive, by functional completeness for PCA’s. It is straightforward that for a function f:XY, the pullback map

P(A) f:P(A) YP(A) XP(A)^f \colon P(A)^Y \to P(A)^X

preserves the preorder structure. Now define Pred T(X) to be the poset obtained from the preorder P(A) X by posetal reflection. With the help of functional completeness, it may be shown that Pred T(X) is in fact a Heyting algebra, and we get in this way a hyperdoctrine; see here for details. Notice in this case we have, by construction, an epimorphism between set-valued functors

hom Set(,P(A))Pred T\hom_{Set}(-, P(A)) \to {|Pred_T|}

and thus we obtain a tripos, called the realizability tripos associated with the PCA A.

From triposes to toposes

Every first-order hyperdoctrine T=(C T,Pred T) gives rise to a bicategory of relations, whose objects are the objects of C T and where 1-cells from X to Y are triples (X,Y,rPred T(X×Y)), thus thinking of r as a “relation” r:XY. Thus hom(X,Y)=Pred T(X×Y), and we define hom-composition in the usual way for relational composition, by expressing the formula (rs)(x,z)= yr(x,y)s(y,z) internally in the hyperdoctrine:

Pred T(X×Y)×Pred T(Y×Z) π X×Y *×π Y×Z * Pred T(X×Y×Y×Z)×Pred T(X×Y×Y×Z) Pred T(X×Y×Y×Z) (1×δ×1) * Pred T(X×Y×Z) 1×!×1 Pred T(X×Z).\array{ Pred_T(X \times Y) \times Pred_T(Y \times Z) & \stackrel{\pi_{X \times Y}^\ast \times \pi_{Y \times Z}^\ast}{\to} & Pred_T(X \times Y \times Y \times Z) \times Pred_T(X \times Y \times Y \times Z) \\ & \stackrel{\wedge}{\to} & Pred_T(X \times Y \times Y \times Z) \\ & \stackrel{(1 \times \delta \times 1)^\ast}{\to} & Pred_T(X \times Y \times Z) \\ & \stackrel{\exists_{1 \times ! \times 1}}{\to} & Pred_T(X \times Z). }

This gives in fact a dagger-category enriched in posets, where () :hom(X,Y)hom(Y,X) is the evident isomorphism Pred T(X×Y)Pred T(Y×X). The opposite of a relation r:XY is r :YX, and a relation r:XX is symmetric if r =r. In summary, we get an allegory (bicategories of relations being essentially equivalent to unitary pretabular allegories).

In this context, a partial equivalence relation, or PER, may be defined as a symmetric idempotent map r:XX. (In slightly more detail, a partial equivalence relation means we drop reflexivity from the notion of equivalence relation, so we mean transitivity rrr plus symmetry r =r. However, for any r:XX, it is a consequence of Freyd’s modular law for allegories that rrr r, so that transitivity and symmetry combined yield

rrr r=rrrrrr \leq r r^\dagger r = r r r \leq r r

in addition to rrr, meaning that r is in fact idempotent.)

We will be interested in splitting not all idempotents (as in Set-based or Pos-based Cauchy completion), but just the symmetric idempotents = PERs, in view of the following theorem.

Theorem

Let T be a tripos, and let Rel T be the bicategory of relations obtained from T. Let Split per(Rel T) be the bicategory obtained by splitting the PERs. Then the locally discrete bicategory of maps (whose 1-cells are left adjoints or total functional relations) in Split per(Rel T) is a topos.

In the case of a tripos induced from a topos T, this construction yields back T, since every partial equivalence relation (as a morphism of Rel T) factors through a suitable subquotient object in T.

In the case of a realizability tripos associated with a PCA A, this construction yields the realizability topos of A. In the particular case where A is Kleene's first algebra (the PCA whose elements are natural numbers taken as codes for computer programs taking natural number input and producing natural number output if they halt, with obvious application partial function), this is also called the effective topos.

Before we undertake a conceptual analysis of this theorem, we give in the next section some details for the tripos attached to a complete Heyting algebra, described here. The description of the resulting topos coincides with that of Higgs?, in his treatment of localic toposes in terms of Boolean-valued or Heyting-valued set theory (a la Scott and Solovay).

Relation to H-valued sets

Consider the tripos T=T H obtained from a complete Heyting algebra H (example 2), or more exactly the bicategory of relations obtained from this. Let us describe explicitly the bicategory obtained by splitting the PERs:

  • An object in the PER-splitting completion in this case is a set X equipped with a function e:X×XH which is symmetric and transitive in the sense described above. This boils down to having, for all elements x,y,zX,

    e(x,y)=e(y,x)e(x, y) = e(y, x)
    e(x,y)e(y,z)e(x,z)e(x, y) \wedge e(y, z) \leq e(x, z)

    This is also known as an H-valued set. (We do not assume reflexivity, where e(x,x) for all x.) The function e can be thought of as a measure of equality.

  • A morphism from (X,e X) to (Y,e Y) is a relation r:XY, or a function r:X×YH, such that re X=r=e Yr. (Cf. Karoubi envelope.) The conditions re Xr, e Yrr mean we have a two-sided “action”:

    e X(x,x)r(x,y)r(x,y),r(x,y)e Y(y,y)r(x,y).e_X(x', x) \wedge r(x, y) \leq r(x', y), \qquad r(x, y) \wedge e_Y(y, y') \leq r(x, y').

    The condition rre X means

    r(x,y) xXe X(x,x)r(x,y)r(x, y) \leq \bigvee_{x' \in X} e_X(x, x') \wedge r(x', y)

    but since e X is symmetric and transitive, we have

    r(x,y) xXe X(x,x)r(x,y)= xe X(x,x)e X(x,x)r(x,y) xe X(x,x)e(x,x)e(x,x)r(x, y) \leq \bigvee_{x' \in X} e_X(x, x') \wedge r(x', y) = \bigvee_{x'} e_X(x, x') \wedge e_X(x', x) \wedge r(x', y) \leq \bigvee_{x'} e_X(x, x') \wedge e(x', x) \leq e(x, x)

    so that in fact we have r(x,y)e X(x,x). Similarly we have r(x,y)e(y,y), and these two conditions conversely imply rre X, re Yr, as may be easily checked.

Such morphisms r are called relations between H-valued sets. Such relations in Split per(Rel T) may be composed just as they are in Rel T, and if r is an H-valued relation, so is r . On the other hand, as described at Karoubi envelope, the identity from (X,e) to itself is given by the relation e (clearly the identity 1 X doesn’t work!). The result Split per(Rel T) is also a bicategory of relations (although, as we will eventually see, much more is true).

A relation r:(X,e X)(Y,e Y) between PERs is functional if

  • rr 1 (Y,e Y)=e Y (“well-definedness”).

  • e X=1 (X,e X)r r (“totality”);

The first of these conditions means

r (y,x)r(x,y)=r(x,y)r(x,y)e Y(y,y)r^\dagger(y, x) \wedge r(x, y') = r(x, y) \wedge r(x, y') \leq e_Y(y, y')

The second condition means

e X(x,x) yYr(x,y)r (y,x)e_X(x, x') \leq \bigvee_{y \in Y} r(x, y) \wedge r^\dagger(y, x')

which certainly implies e X(x,x) yr(x,y). Conversely, if e X(x,x) yr(x,y), we have

e X(x,x) e X(x,x)e X(x,x) yr(x,y)e X(x,x) yr(x,y)r(x,y) yr(x,y)r (y,x).\array{ e_X(x, x') & \leq & e_X(x, x) \wedge e_X(x, x') \\ & \leq & \bigvee_y r(x, y) \wedge e_X(x, x') \\ & \leq & \bigvee_y r(x, y) \wedge r(x', y) \\ & \leq & \bigvee_y r(x, y) \wedge r^\dagger(y, x'). }

Thus totality of r:XY is equivalent to

  • e X(x,x) yYr(x,y)
Theorem (Higgs)

For a complete Heyting algebra H, the category of H-valued sets and functional relations between H-valued sets is equivalent to the topos of sheaves on H.

Thus all localic toposes arise as toposes of H-valued sets, where H is the Heyting algebra of subobjects of 1.

Compare the description by Walters of sheaves over H as certain types of Cauchy-complete categories enriched in a bicategory. Notice that in that description, the homs are symmetric (hom(x,y)=hom(y,x)), so that the Cauchy completion or idempotent-splitting completion is the same as the completion by splitting symmetric idempotents.

Remark

The triposes over Set of this form are precisely those for which the preorder imposed on Hom Set(X,P)P X is the straightforward X-ary product of the preorder imposed on Hom Set(1,P)P, where P is the carrier of the generic predicate; in all other cases, the former is a finer-grained preorder than the latter. Thus, in some sense, triposes over Set are a generalization of the notion of “complete Heyting algebra” taking advantage of the ability to use preorder rather than poset structure to allow for a weakening of the condition of completeness.

An example taking advantage of this generalization is given by realizability triposes. See also realizability?.

Relation to exact completion

As stated above, the topos obtained from a tripos can be described as the category of PERs in the bicategory of relations, and functional relations between them. In different language, the bicategory of PERs or symmetric idempotents and relations between them is a power allegory, and the process of passing to functional relations is just the standard process of passing from power allegories to toposes.

The process of splitting symmetric idempotents in the bicategory of relations can be analyzed into two steps, the first related to taking a regular completion, and the second to taking an exact completion of a regular category. More exactly, they are analogues on the allegorical side of these two types of completion.

The two steps are as follows, starting with a bicategory of relations (or perhaps preferably a framed bicategory of relations). Splitting symmetric idempotents can be obtained by

  • First splitting the coreflexive morphisms (r:XX is coreflexive if r1 X). This results in a tabular bicategory of relations or a unitary tabular allegory, which is essentially the same as obtaining a regular category.

  • Then, in the unitary tabular allegory, split equivalence relations. In allegorical language, this results in an effective (unitary tabular) allegory (Freyd-Scedrov, page 213); on the categorical side, it means we pass from a regular category C to its exact completion C ex/reg.

References


  1. In fact one may “quantify” along any term = morphism in the base category C T, i.e., each Pred T(f) has a left adjoint and a right adjoint, merely if we assume this of projection and diagonal maps and if we assume an appropriate Frobenius law, as one generally does for first-order hyperdoctrines. However, the status of corresponding Beck-Chevalley conditions for pullback diagrams in C T is another matter; the original treatment by Pitts assumed more than is actually necessary. Namely, it was assumed that C T is finitely complete and the Beck-Chevalley condition holds for all pullbacks in C T. In actuality, for tripos theory, it is enough to assume Beck-Chevalley only for certain pullbacks which exist by virtue of the finite product structure of C T.

Revised on December 4, 2012 08:07:24 by JCMc Keown (174.113.224.166)