Type Theory

Whether or not you are the type of person that is interested in types, you might find fun to explore various theories about them. Type Theory, not Set Theory, is generally the best way to organize knowledge and computations in Computer Science. It’s actually kind of cool, too. Really.

What is Type Theory?

TODO

Links

History

Overviews, Articles, and Portals

Required Reads

Books

Courses

Introductions to specific type theories

Some Type Theories

There are many different type theories out there! The first was probably Russell’s from the very early 20th century, but the newer ones are the ones most associated with the term “Type Theory.” The influential and important type theories are these:

Some Basic Types

Here are the types of a basic (constructive) type theory (most type theories use these):

Dependent Types

Propositions as Types

Oh, what does it mean that type theory has logic built-in? There’s this thing called ”Propositions as Types” (a.k.a. the Curry-Howard correspondence) that says that types are propositions and functions are proofs. Rather than dwell on it too deeply for now, here’s a table to get you the idea:

Logical FormulaMeaningType
$F$Falsity$\bot$
$T$Truth$()$
$A \wedge B$Conjunction (And)$A \times B$
$A \vee B$Disjunction (Or)$A + B$
$A \rightarrow B$Implication$A \rightarrow B$
$\forall x. ((x \in A) \supset B)$
where $x$ is free in $B$
Universal Quantification$\Pi_{x: A} B$
$\exists x. ((x \in A) \wedge B)$
where $x$ is free in $B$
Existential Quantification$\Sigma_{x: A} B$

Recall Practice

Here are some questions useful for your spaced repetition learning. Many of the answers are not found on this page. Some will have popped up in lecture. Others will require you to do your own research.

  1. Type Theory is one of three kind of theories that can be said to have a claim as a theoretical foundation for all of mathematics. What are the other two?
    Set Theory and Category Theory

Summary

We’ve covered:

  • What Type Theory Is
  • History
  • Some of the popular type theories
  • Basic types
  • Dependent types
  • Connections to logic