15-859(A) Domain Theory (Fa 99)
Instructor: Dana Scott
Units: 12
Note: STARTS TUESDAY, AUGUST 24

Description:
The theory of domains has many applications in programming-language semantics and type theory, computability theory, and recently in measure theory and chaos. The course will offer a basic foundational discussion of the idea building up to the solution of domain equations in suitable categories and constructions of spcial domains such as powerdomains and continuous algebras. A general theory of "propositions as types" will also be discussed to give an appropriate logic in domains.

This course will be organized at a first-year graduate level, but is also suitable for seniors with a mathematical background.

Method of Evaluation:

Text:
Lecture notes will be provided and background reading supplied. There is no required textbook for the course.

Prerequisites:
Prerequisites are reasonable "mathematical maturity" and some knowledge of computability (at,say, the level of the undergraduate FLAC course).

Outline of Topics:

  1. Powersets as complete lattices.
  2. The fixed-point theory of monotone and of continuous functions.
  3. Topology of T_0-spaces.
  4. Initial and final pairing/unpairing algebras/coalgebras.
  5. Examples and constructions of sequential algebras.
  6. Recursive definitions on these algebras.
  7. Constructing a lambda-calculus model on the powerset of any sequential algebra.
  8. Finding non-isomorphic models.
  9. Combinators and their properties.
  10. Lambda-calculus as a general calculus of continuous functions and recursive definitions.
  11. Questions of computability.
  12. Algebraic lattices as generalizations of powerset lattices.
  13. Representations using algebraic closure systems.
  14. Connections with continuous closure operations.
  15. A calculus of closure operations for finding solutions to certain domain equations.
  16. Finding cartesian closed categories.
  17. Types as partial partial equivalence relations on any convenient lambda-calculus model.
  18. A cartesian closed category of types and subtypes.
  19. Polymorphic typing for lambda calculus.
  20. Propositions as types.
  21. Power domains, probabilistic powerdomains and applications (if there is time).