nLab clan


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
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


Category theory


A clan in the sense of Joyal 2017, Def. 1.1.1 (previously: category with display maps [Taylor 1987, §4.3.2], or display category [Taylor 1999, §8.3], a non-strict notion of contextual categories) is a minimum notion of fibration category providing categorical semantics for dependent types modelling (just) context extension and dependent pair type-formation (but not necessarily, say, function types or identity types):


A clan is a category with a terminal object equipped with a sub-class FibMorFib \subset Mor of its morphisms, to be called the fibrations and serving the role of display maps, such that:

  1. every isomorphism is in FibFib,

  2. for every object XX the terminal map X*X \to \ast is in FibFib (hence all objects are fibrant, cf. category of fibrant objects),

  3. for fFibf \in Fib and hh any coincident morphism, the base change (pullback) h *fh^\ast f exits and is in FibFib (this interprets context extension)

  4. for composable f,gFibf,g \in Fib also their composition gfFibg \circ f \in Fib (this interprets dependent pair type-type formation)


The definition of categories with display maps and their role as categorical semantics for dependent types is due to

  • Paul Taylor, §4.3.2 in: Recursive Domains, Indexed Category Theory and Polymorphism, Cambridge (1983-7) [pdf]

being a non-strict version of contextual categories:

The terminology “clan” for this notion is due to:

but the general notion of categorical semantics of dependent types is classical, going back at least to Seely 1984 and Hofmann 1997.

The type-theory-literature traditionally refers to such categories generically as display map/fibration categories with such-and-such types, eg.

North 2019, Rem. 2.4:

The definitions in this section are relatively standard in the literature. A display map category which models Σ \Sigma -types coincides with Joyal’s notion of clan, and a display map category which models \sum -types and \prod -types coincides with his notion of π\pi-clan.

Last revised on January 15, 2024 at 02:58:15. See the history of this page for a list of all contributions to it.