nLab modal type 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

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


Modalities, Closure and Reflection



Modal type theory is a flavor of type theory with type formation rules for modalities, hence type theory which on propositions reduces to modal logic.

Following (Moggi91, Benton, Bierman & de Paiva 19198; Bierman & de Paiva 1996, 2000; Kobayashi 1997) modal type theory is specifically understood as being a type theory equipped with (co-)monads on its type system, representing the intended modal operators. Since monads in computer science embody a notion of computation, some authors also speak of computational type theory here (Benton, Bierman & de Paiva 1998, Fairtlough-Mendler 02).

According to (Benton, Bierman & de Paiva 1998, p. 1-2) this matches well with the default interpretation of (S4) modal logic as being about the modality TT of “possibility”:

The starting point for Moggi’s work is an explicit semantic distinction between computations and values. If AA is an object which interprets the values of a particular type, then T(A)T(A) is the object which models computation of that type AA. [...][...] For a wide variety of notions of computation, the unary operator T()T(-) turns out to have the categorical structure of a strong monad on an underlying cartesian closed category of values. [...][...] On a purely intuitive level and particularly if one thinks about non-termination, there is certainly something appealing about the idea that a computation of type AA represents the possibility of a value of type AA.

When the underlying type theory is homotopy type theory these modalities are a “higher” generalization of traditional modalities, with “higher” in the sense of higher category theory: they have categorical semantics in (∞,1)-categories given by (∞,1)-monads. See (Shulman 12, Rijke, Shulman, Spitters ) for definition of such higher modalities, and see at reflective subuniverse.


Relation to monads

At least in many cases, modalities in type theory are identified with monads or comonads on the underlying type universe, or on the subuniverse of propositions.

See for instance (Benton, Bierman & de Paiva 1998, section 3.2), (Kobayashi), (Gabbay-Nanevski, section 8), (Gaubault-Larrecq, Goubault, section 5.1), (Park-Harper, section 2.6), (Shulman) as examples of the first, and (Moggi, def. 4.7), (Awodey-Birkedal, section 4.2) as examples of the second.

Relation to endo-adjunctions

An endo-adjunction on a lex category gives rise to a modal type theory satisfying the modal axiom K; see dependent right adjoint. This also gives rise to a sound sound and complete interpretation of Fitch-style modal λ\lambda-calculus.


Geometric modality – Grothendieck topology

As a special case of the modalities-are-monads relation, a Grothendieck topology on the site underlying a presheaf topos is equivalently encoded in the sheafification monad PSh(C)Sh(C)PSh(C)PSh(C) \to Sh(C) \hookrightarrow PSh(C) induced by the sheaf topos geometric embedding. More generally, any geometric subtopos is equivalently represented by a left-exact idempotent monad.

When restricted to act on (-1)-truncated objects (i.e. subterminal objects or more generally monomorphisms), this becomes a universal closure operator. When internalized as an operation on the subobject classifier, this becomes the corresponding Lawvere-Tierney operator. This modal perspective on sheafification was maybe first made explicit by Bill Lawvere:

A Grothendieck ‘topology’ appears most naturally as a modal operator of the nature ‘it is locally the case that’ (Lawvere).

Here, “It is locally the case that [X is /Euclidean/etc],” corresponds to, “X is locally metrizable/Euclidean/etc,” in the usual parlance.

More discussion is in (Goldblatt), where this kind of modality is called a geometric modality.

For higher toposes, it is no longer true in general that a subtopos is determined by its behavior on the (1)(-1)-truncated objects, but we can still regard the entire sheafification monad as a higher modality in the internal homotopy type theory.

Closure modality

The canonical monad on a local topos gives rise to a closure modality on propositions in its internal language, as described in (Awodey-Birkedal).

Necessity and possibility

See at necessity and possibility the section Possible worlds via dependent type theory

Cohesive and differential modality

By adding to homotopy type theory three (higher) modalities that encode discrete types and codiscrete types and hence implicitly a non-(co)-discrete notion of cohesion one obtained cohesive homotopy type theory. Adding furthermore modalities for infinitesimal (co)discreteness yields differential homotopy type theory.


The clear identification of modal operators on types with monads (see at monad (in computer science)) is due to

  • Eugenio Moggi, Notions of computation and monads. Information and Computation, 93(1), 1991. (pdf)

This was observed (independently) to systematically yield constructive modal logic in (see also at computational type theory)

See also the type-theoretic generalization of adjoint logic, as discussed in

The modal systems “CL” and “PLL” in (Benton, Bierman & de Paiva 1998) and (Fairlough-Mendler), respectively, turn out to be equivalent to the geometric modality of Goldblatt. The system CS4 in (Kobayashi 1997) yields a constructive version of S4 modal logic.

Explicit mentioning of type theory equipped with such a monad as modal type theory or computational type theory is in

  • Matt Fairtlough, Michael Mendler, On the Logical Content of Computational Type Theory: A Solution to Curry’s Problem, Types for Proofs and Programs Lecture Notes in Computer Science Volume 2277, 2002, pp 63-78

Discussion of modal operators explicitly in dependent type theory (and with a brief mentioning of the relation to monads) is in

A survey of the field of modal type theory is in the collections

  • M. Fairtlough, M. Mendler, Eugenio Moggi (eds.), Modalities in Type Theory, Mathematical Structures in Computer Science, Vol. 11, No. 4, (2001)

  • Valeria de Paiva, Rajeev Goré, Michael Mendler, Modalities in constructive logics and type theories, Special issue of the Journal of Logic and Computation, editorial pp. 439-446, Vol. 14, No. 4, Oxford University Press, (2004) (pdf)

  • Valeria de Paiva, Brigitte Pientka (eds.) Intuitionistic Modal Logic and Applications (IMLA 2008), . Inf. Comput. 209(12): 1435-1436 (2011) (web)

The historically first modal type theory, the interpretation of sheafification as a modality in the internal language of a Grothendieck topos goes back to the notion of Lawvere-Tierney operator

  • Bill Lawvere, Quantifiers and sheaves, Actes, Congrès intern, math., 1970. Tome 1, p. 329 à 334 (pdf)

reviewed in

  • Robert Goldblatt, Grothendieck topology as geometric modality, Mathematical Logic Quarterly, Volume 27, Issue 31-35, pages 495–529, (1981)

Modal type theory with an eye towards homotopy type theory is discussed in

Formalization of modalities in homotopy type theory (modal homotopy type theory) is discussed in

and specifically in cohesive homotopy type theory in

A monograph aimed at philosophers is in


Monadic modal type theory with idempotent monads/monadic reflection is discussed in

  • Andrzej Filinski, Representing Layered Monads, POPL 1999. (pdf)

  • Andrzej Filinski, On the Relations between Monadic Semantics, TCS 375:1-3, 2007. (pdf)

  • Andrzej Filinski, Monads in Action, POPL 2010. (pdf)

  • Oleg Kiselyov and Chung-chieh Shan, Embedded Probabilistic Programming. Working conference on domain-specific languages, (2009) (pdf)

A general framework is discussed in

Review includes

See also

  • Frank Pfenning, Towards modal type theory (2000) [pdf]

  • Frank Pfenning, Intensionality, Extensionality, and Proof Irrelevance in Modal Type Theory, in: Symposium on Logic in Computer Science (2001) 221&-230 [web]

  • Giuseppe Primiero, A multi-modal dependent type theory (pdf)

  • Murdoch Gabbay, Aleksandar Nanevski, Denotation of contextual modal type theory (CMTT): syntax and metaprogramming (pdf)

  • G. A. Kavvos, Modalities, Cohesion, and Information Flow, (arXiv:1809.07897)

  • Y. Nishiwaki, Y. Kakutani, Y. Murase, Modality via Iterated Enrichment, MFPS 2018 (pdf)

A modality in the internal language of a local topos is discussed in section 4.2 of

A list of related references is also kept at

Last revised on February 21, 2024 at 15:50:19. See the history of this page for a list of all contributions to it.