nLab simplicial type theory

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

Modalities, Closure and Reflection

Cohesive \infty-Toposes

Internal (,1)(\infty,1)-Categories

Directed Type Theory

Contents

Idea

Simplicial type theory is a cohesive homotopy type theory which is used to represent the internal logic of cohesive locally cartesian closed ( , 1 ) (\infty,1) -categories of simplicial objects in a locally cartesian closed (,1)(\infty,1)-category. One can think of simplicial type theory as a synthetic theory of simplicial anima, since the cohesive (infinity,1)-topos Ani Δ op\mathrm{Ani}^{\Delta^\op} of simplicial anima is the characteristic example of a cohesive locally cartesian closed (,1)(\infty,1)-category of simplicial objects in a locally cartesian closed (,1)(\infty,1)-category.

Simplicial type theory is used to construct various geometric shapes internally, such as Segal types (i.e. Segal space-types), Rezk types (i.e. Rezk category-types), and covariant fibrations.

Definition

Simplicial type theory is a cohesive homotopy type theory: that is, a modal type theory with a sharp modality, flat modality, and shape modality adjoint triple

ʃ\esh \dashv \flat \dashv \sharp

There are also two other modalities

In addition, simplicial type theory comes with a designated bounded total order 𝕀\mathbb{I} called a directed interval, such that

  • there is an equivalence of types ¬:𝕀 op𝕀\neg:\mathbb{I}^op \simeq \mathbb{I} which swaps 00 for 11 and max\max for min\min,

  • the booleans are the global points of 𝕀\mathbb{I}: i.e. the unique endpoints-preserving monotonic function from the boolean domain 𝟚\mathbb{2} to 𝕀\mathbb{I} is an embedding of types and the unique endpoints-preserving monotonic function from 𝟚\mathbb{2} to 𝕀\flat \mathbb{I} is an equivalence of types,

  • the axiom of simplicial cohesion: for all crisp types AA, the \flat-counit ():AA\flat(-):\flat A \to A is an equivalence of types if and only if the function const A,𝕀\mathrm{const}_{A, \mathbb{I}} which takes elements of AA to constant functions 𝕀A\mathbb{I} \to A is an equivalence of types.

  • the interval exhibits the cohesion of types: the shape modality is equivalent to localization at 𝕀\mathbb{I}, ʃAL 𝕀(A)\esh A \simeq L_\mathbb{I}(A),

  • nn-cubes detect continuity: for every crisp function f::ABf::A \to B, ff is \sharp-modal if and only if it lifts up against the \flat-counit ():(Fin(n)𝕀)(Fin(n)𝕀)\flat(-):\flat(\mathrm{Fin}(n) \to \mathbb{I}) \to (\mathrm{Fin}(n) \to \mathbb{I}) for all crisp natural numbers n::n::\mathbb{N}, where Fin(n) i:i<n\mathrm{Fin}(n) \coloneqq \sum_{i:\mathbb{N}} i \lt n is the crisp standard finite set with nn elements.

  • 𝕀\mathbb{I} is tiny: the heterogeneous path space modality i:𝕀()(i)\prod_{i:\mathbb{I}} (-)(i) has an amazing right adjoint () 1/𝕀(-)^{1/\mathbb{I}}.

  • a Kock-Lawvere-esque duality axiom: let AA be a finitely presented 𝕀\mathbb{I}-algebra, in the sense that AA is a distributive lattice equivalent to the quotient of 𝕀[x 1x n]\mathbb{I}[x_1 \ldots x_n] by finitely many relations, and let hom 𝕀Alg(A,𝕀)\mathrm{hom}_{\mathbb{I}\mathrm{Alg}}(A, \mathbb{I}) be the type of 𝕀\mathbb{I}-algebra homomorphisms. Then the following function is an equivalence of types

λa.λf.f(a):A(hom 𝕀Alg(A,𝕀)𝕀)\lambda a.\lambda f.f(a):A \to (\mathrm{hom}_{\mathbb{I}\mathrm{Alg}}(A, \mathbb{I}) \to \mathbb{I})

Formalising the bounded total order

There are many different ways to formalize the bounded total order in simplicial type theory:

The first approach is simpler to define, while the latter two are easier to work with, since the equalities in the interval type are judgmental equalities rather than identifications, so one doesn’t have to deal with transport hell.

In the latter two approaches, the function type 𝕀A\mathbb{I} \to A used in the axiom of cohesion is usually defined as an extension type, while the dependent function type i:𝕀A(i)\prod_{i:\mathbb{I}} A(i) is usually defined as a dependent extension type.

Simplicial anima theory and (,1)(\infty,1)-category theory

Morphisms

The morphisms between elements x:Ax:A and y:Ay:A in a type AA are defined in simplicial type theory as a tuple consisting of a function f:𝕀Af:\mathbb{I} \to A and two identifications p 0:f(0)=xp_0:f(0) = x and p 1:f(1)=yp_1:f(1) = y. The type of morphisms is called a hom-type and is defined as the dependent sum type

hom A(x,y) f:𝕀A(f(0)=x)×(f(1)=y)\mathrm{hom}_A(x, y) \coloneqq \sum_{f:\mathbb{I} \to A} (f(0) = x) \times (f(1) = y)

Given an element x:Ax:A, the hom-type hom A(x,x)\mathrm{hom}_A(x, x) has an identity morphism given by the tuple consisting of the constant function from 𝕀\mathbb{I} to AA at xx and two witnesses that f(0)=xf(0) = x and f(1)=xf(1) = x both derivable from the typal computation rules for function types.

id A(x)(λt.x,β 𝕀A t.x(0),β 𝕀A t.x(1)):hom A(x,x)\mathrm{id}_A(x) \coloneqq (\lambda t.x, \beta_{\mathbb{I} \to A}^{t.x}(0), \beta_{\mathbb{I} \to A}^{t.x}(1)):\mathrm{hom}_A(x, x)

Given a type AA, the hom-types of A\sharp A are contractible for all x:Ax:\sharp A and y:Ay:\sharp A:

x:A y:AisContr(hom A(x,y))\prod_{x:\sharp A} \prod_{y:\sharp A} \mathrm{isContr}(\mathrm{hom}_{\sharp A}(x, y))

Functors

Given two types AA and BB, every function f:ABf:A \to B induces a function

f x,y:hom A(x,y)hom B(f(x),f(y))f_{x, y}:\mathrm{hom}_A(x, y) \to \mathrm{hom}_B(f(x), f(y))

by postcomposition which takes a function h:𝕀Ah:\mathbb{I} \to A to fh:𝕀Bf \circ h:\mathbb{I} \to B and by the action on identifications which take identifications p 0:h(0)=xp_0:h(0) = x to ap f(p 0):f(h(0))=f(x)\mathrm{ap}_f(p_0):f(h(0)) = f(x) and p 1:h(1)=xp_1:h(1) = x to ap f(p 1):f(h(1))=f(y)\mathrm{ap}_f(p_1):f(h(1)) = f(y).

As a result, functions can also be called functors. A contravariant functor FF from type AA to type BB is a function F:A opBF:A^\op \to B from the opposite type of AA to BB.

Diagrams

Diagrams in simplicial type theory can be defined in an arbitrary type, rather than just the Segal types. Diagrams include:

Limits and colimits

Limits and colimits in simplicial type theory can be defined in an arbitrary type, rather than just the Segal types.

Limits include:

Colimits include:

Types

Types include

Heterogeneous morphisms and covariant type families

Given a type AA, elements x:Ax:A and y:Ay:A, a function f:𝕀Af:\mathbb{I} \to A, identifications p 0:f(0)= Axp_0:f(0) =_A x and p 1:f(1)= Ayp_1:f(1) =_A y a type family x:AB(x)x:A \vdash B(x), and elements u:B(x)u:B(x) and v:B(y)v:B(y), a heterogeneous morphism is a tuple consisting of a dependent function g: i:𝕀B(f(i))g:\prod_{i:\mathbb{I}} B(f(i)) and two indexed heterogeneous identifications

q 0:g(0)= t.B(t) (f(0),x,p 0)uandq 1:g(1)= t.B(t) (f(1),y,p 1)vq_0:g(0) =_{t.B(t)}^{(f(0), x, p_0)} u \; \mathrm{and} \; q_1:g(1) =_{t.B(t)}^{(f(1), y, p_1)} v

where the type u= t.B(t) (x,y,p)vu =_{t.B(t)}^{(x, y, p)} v is the indexed heterogeneous identity type over the type family x:AB(x)x:A \vdash B(x).

The type of heterogeneous morphisms is called the heterogeneous hom-type and is defined as the dependent sum type

hhom t.B(t)(x,y,f,p 0,p 1,u,v) g: i:𝕀B(f(i))(g(0)= t.B(t) (f(0),x,p 0)u)×(g(1)= t.B(t) (f(1),y,p 1)v)\mathrm{hhom}_{t.B(t)}(x, y, f, p_0, p_1, u, v) \coloneqq \sum_{g:\prod_{i:\mathbb{I}} B(f(i))} (g(0) =_{t.B(t)}^{(f(0), x, p_0)} u) \times (g(1) =_{t.B(t)}^{(f(1), y, p_1)} v)

A covariant type family is a type family x:AB(x)x:A \vdash B(x) such that for all elements x:Ax:A, y:Ay:A, f:hom A(x,y)f:\mathrm{hom}_A(x, y), and u:B(x)u:B(x), there exists a unique element v:B(y)v:B(y) with a heterogeneous morphism

isCovariant(t:A.B(t)) x:A y:A f:hom A(x,y) u:B(x)!v:B(y).hhom t.B(t)(x,y,f,p 0,p 1,u,v)\mathrm{isCovariant}(t:A.B(t)) \coloneqq \prod_{x:A} \prod_{y:A} \prod_{f:\mathrm{hom}_A(x, y)} \prod_{u:B(x)} \exists!v:B(y).\mathrm{hhom}_{t.B(t)}(x, y, f, p_0, p_1, u, v)

Amazing covariance and directed univalent universes

A type AA is an amazingly covariant type if it satisfies the following predicate

isACov(A)isCov(i:𝕀.A ηi) 1/𝕀\mathrm{isACov}(A) \coloneqq \mathrm{isCov}(i:\mathbb{I}.A^\eta \cdot i)^{1 / \mathbb{I}}

Let (U,T)(U, T) be a univalent Tarski universe. The directed univalent subuniverse 𝒮U\mathcal{S} \hookrightarrow U is defined as the type of UU-small amazingly covariant types:

𝒮 X:UisACov(T(X))\mathcal{S} \coloneqq \sum_{X:U} \mathrm{isACov}(T(X))

The directed univalent universe 𝒮\mathcal{S} is a finitely complete and finitely cocomplete Rezk type.

See also

References

A talk on synthetic (infinity,1)-category theory in simplicial type theory and infinity-cosmos theory:

A proof assistant implementing simplicial type theory:

Formalization of the ( , 1 ) (\infty,1) -Yoneda lemma via simplicial homotopy type theory (in Rzk):

Last revised on April 12, 2025 at 11:52:25. See the history of this page for a list of all contributions to it.