Math 2.0

Mathematical logic and foundations Definition

Dependent type

Builds on Type theorySimply typed lambda calculus

Definition

Work in a type theory with judgments Γ⊢A 𝗍𝗒𝗉𝖾\Gamma \vdash A\ \mathsf{type} and Γ⊢a:A\Gamma \vdash a : A. Here the context Γ\Gamma is a list of typed variables, in which each type may mention the earlier variables. A dependent type, or type family, over a type AA is a type B(x)B(x) with Γ,x:A⊢B(x) 𝗍𝗒𝗉𝖾\Gamma, x : A \vdash B(x)\ \mathsf{type}, in which the variable xx may occur. For each term aa with Γ⊢a:A\Gamma \vdash a : A it gives a type B(a)B(a), obtained by substituting aa for xx. Such a family gives two type formers.

  1. The dependent function type Πx:AB(x)\Pi_{x : A} B(x) has terms λx. b\lambda x.\, b with Γ,x:A⊢b:B(x)\Gamma, x : A \vdash b : B(x); applying f:Πx:AB(x)f : \Pi_{x : A} B(x) to a:Aa : A gives f a:B(a)f\, a : B(a).
  2. The dependent pair type Σx:AB(x)\Sigma_{x : A} B(x) has terms (a,b)(a, b) with a:Aa : A and b:B(a)b : B(a).

Remarks

Example: let 𝖵𝖾𝖼(n)\mathsf{Vec}(n) be the type of lists of natural numbers of length nn, for n:ℕn : \N. It is a type family over ℕ\N, since for each nn it gives a type. The function that builds a list of nn zeros has type Πn:ℕ𝖵𝖾𝖼(n)\Pi_{n : \N} \mathsf{Vec}(n): applied to 33 it gives (0,0,0):𝖵𝖾𝖼(3)(0, 0, 0) : \mathsf{Vec}(3), whose type depends on the argument. The type Σn:ℕ𝖵𝖾𝖼(n)\Sigma_{n : \N} \mathsf{Vec}(n) is the type of lists of any length, each paired with its length.

Non-example: in the simply typed lambda calculus a type cannot mention a term, so 𝖵𝖾𝖼(n)\mathsf{Vec}(n) cannot be formed there.

If BB does not depend on xx, then Πx:AB\Pi_{x : A} B is the function type A→BA \to B and Σx:AB\Sigma_{x : A} B is the product type A×BA \times B. Under Curry–Howard, a term of Πx:AB(x)\Pi_{x : A} B(x) is a proof of "for all xx in AA, B(x)B(x)". A term of Σx:AB(x)\Sigma_{x : A} B(x) is a proof of "there is xx in AA with B(x)B(x)" that names a witness.

Reading path

To understand this page from the ground up, read these 24 pages in order. The foundations come first.

Show the path as a graph
Element, definition, no evidence levelElementdefinitionIntuitionistic logic, concept, no evidence levelIntuitionistic logicconceptLambda calculus, concept, no evidence levelLambda calculusconceptProposition, concept, no evidence levelPropositionconceptSet, concept, no evidence levelSetconceptSet, definition, no evidence levelSetdefinitionConjunction, definition, no evidence levelConjunctiondefinitionDisjunction, definition, no evidence levelDisjunctiondefinitionImplication, definition, no evidence levelImplicationdefinitionNegation, definition, no evidence levelNegationdefinitionBiconditional, definition, no evidence levelBiconditionaldefinitionTruth table, concept, no evidence levelTruth tableconceptModus ponens, concept, no evidence levelModus ponensconceptMathematical proof, concept, no evidence levelMathematical proofconceptPropositional logic, concept, no evidence levelPropositional logicconceptTautology, definition, no evidence levelTautologydefinitionLogical equivalence, definition, no evidence levelLogical equivalencedefinitionDouble negation law, statement, no evidence levelDouble negation lawstatementProof by contradiction, concept, no evidence levelProof by contradictionconceptRussell's paradox, statement, no evidence levelRussell's paradoxstatementType theory, concept, no evidence levelType theoryconceptCurry–Howard correspondence, concept, no evidence levelCurry–Howard correspo…conceptSimply typed lambda calculus, concept, no evidence levelSimply typed lambda c…conceptDependent type, definition, no evidence levelDependent typedefinition
Each page uses the pages above it. The colour of the bar on a box shows how strong the evidence is, and the box also gives it as text. The list has the same pages.
  • no evidence level
  1. Element definition
  2. Intuitionistic logic concept
  3. Lambda calculus concept
  4. Proposition concept
  5. Set concept
  6. Set definition
  7. Conjunction definition
  8. Disjunction definition
  9. Implication definition
  10. Negation definition
  11. Biconditional definition
  12. Truth table concept
  13. Modus ponens concept
  14. Mathematical proof concept
  15. Propositional logic concept
  16. Tautology definition
  17. Logical equivalence definition
  18. Double negation law statement
  19. Proof by contradiction concept
  20. Russell's paradox statement
  21. Type theory concept
  22. Curry–Howard correspondence concept
  23. Simply typed lambda calculus concept
  24. Dependent type definition

Further reading

  1. Web https://en.wikipedia.org/wiki/Dependent_type
About this page
TagMJEFQRRCS3
URIm2://MJEFQRRCS3
Kinddefinition
WritingW0 stub
MSC03B38, 68N15, 03F55
DefinesDependent type
UsesType theory, Simply typed lambda calculus
Changed3 November 2026

Markdown · JSON · Edit on GitHub

What this page needs for W1

  • a source with a locator (0 of 1)

The writing levels say how complete the text of a page is. They do not measure its truth.

What links here

No page links to this page yet.