15-851
Computation & Deduction
Spring 1997
Frank Pfenning

Lecture 25: Pure Type Systems and Inductive Types

Pure Type Systems (PTS) give a uniform formulation of the simply-typed, dependently-typed, and polymorphic lambda-calculi. Allowing all those features, and also including type constructors (such as lists) yields the Calculus of Constructions, in which logical operators can be defined in the same way inductive datatypes could be encoded in the polymorphic lambda calculus. The resulting encodings are computationally not adequate, since some very simple functions (such as the predecessor of a Church numeral) may take very long to compute. Therefore inductive types are usually considered primitive. We introduce inductive types and their associated induction principles.
  • next lecture
  • previous lecture

  • [ C&D Home | Schedule | Code | Assignments | Notes | Projects | Elf ]

    © Frank Pfenning 1992-1997
    fp@cs