Mitchell-Bénabou language


Topos Theory

topos theory



Internal Logic

Topos morphisms

Extra stuff, structure, properties

Cohomology and homotopy

In higher category theory


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-proposition, mere proposition
proofgeneralized elementprogram
cut rulecomposition of classifying morphisms / pullback of display mapssubstitution
cut elimination for implicationcounit for hom-tensor adjunctionbeta reduction
introduction rule for implicationunit for hom-tensor adjunctioneta conversion
logical 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, (idemponent) 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




The Mitchell–Bénabou language is a particularly simple form of the internal language of an elementary topos EE. It makes use of the fact that in the presence of a subobject classifier Ω\Omega, there is no need to treat formulas separately from terms, since a formula or proposition can be identified with a term of type Ω\Omega.

Specifically, the language is a type theory L(E)L(E) where:

  • the (closed) types are the objects of EE;

  • the variables of type AA are interpreted as identity morphisms id A:AA\mathrm{id}_A: A \to A in EE;

  • the terms of type BB in variables x ix_i of type X iX_i are interpreted as morphisms from the product of the X iX_i to BB

  • the formulas are terms of type Ω\Omega, where Ω\Omega is the subobject classifier;

  • the propositional logical connectives are induced from the internal Heyting algebra structure of Ω\Omega;

  • the (type-bounded) quantifiers are induced from the internal completeness of Ω\Omega (i.e., the quantifiers are given by suitable morphisms from internal powers of Ω\Omega to Ω\Omega)

  • for each type XX there are also two binary relations = X=_X (defined applying the diagonal map to the product term of the arguments) and X\in_X (defined applying the evaluation map to the product of the term and the power term of the arguments);

  • a formula is true if the arrow which interprets it factors through the arrow true:1Ωtrue: 1 \to \Omega.

  • one can also construct type families and dependent types, just as in any locally cartesian closed category: the types indexed by elements of some closed type AA are the objects of the slice category over AA; sums and products of type families (i.e., Σ\Sigma- and Π\Pi-types) are given by the left and right adjoints to change-of-base functors, respectively. As these slice categories will be topoi themselves, all the above structure can be interpreted for type families as well.


The Mitchell–Bénabou language, like the internal logic of any category, is a powerful way to describe various objects in a topos as if they were sets. It can be viewed as making the topos into a generalized set theory or a type theory, so that we can write and prove statements in a topos, and properties of a topos, using first order intuitionistic predicate logic.

As is usual for type theories, we can conversely generate a syntactic or free topos E(L)E(L) from any suitable theory LL phrased in the above language. The universal property of this topos says that logical functors E(L)EE(L)\to E, for any other topos EE, are equivalent to models of the theory LL in EE.

Revised on July 5, 2017 08:27:09 by Fabian? (