Lecture 2:
Simply-typed $λ$-calculus
Frege ⟶ type of natural numbers.
Let $A$ be a type.
- $f: A ⟹ A$
- $a: A$
so that:
\[\overline{n} ≝ λf, a. f^n(a) : (A ⟹ A) ⟹ (A ⟹ A)\]- Sequent:
-
a triple of the form: \(x_1:A_1, \ldots, x_n:A_n \vdash P: B\)
- Axiomatic rule: Variable
- Logical rules: Abstraction, Application
- Structural rules: Weakening, Contraction, Exchange
NB: Multiplicative (with $Γ$ and $Δ$) application rule VS additive (with only $Γ$) application rule ⟶ equivalent in intuitionistic logic
- Multiplicative one: used in linear logic
- Additive one: used in dependent type theory
Dana Scott (1968) ⟶ mathematical model of pure $λ$-calculus: Domain theory
Curry-Howard correspondence ⟶ related to the Brouwer-Heyting-Kolmogorov interpretation
Ex: a proof of $A ⟹ B$: impossible to define without a language: “it’s a mechanism which turns any proof of $A$ into a proof of $B$” ⟶ but what on earth is a “mechanism”? ⟹ $λ$-calculus aims at defining it (creativity to come up with such a mechanism is up to us)
Algebraic Church-Rosser theorem: from a categorical standpoint
If
- $M \overset{f}{⟶} P$
- $M \overset{g}{⟶} Q$
then there exist $P \overset{g’}{⟶} N$ and $Q \overset{f’}{⟶} N$ s.t.
\[M \overset{f}{⟶} P \overset{g'}{⟶} N \sim M \overset{g}{⟶} Q \overset{f'}{⟶} N\]$λ$-calculus reduction paths defines a graph where nodes are the $λ$-terms, arrows are the rewriting rules, but two paths are permutation equivalent is you can permute the order of computations between them.
Ex:
- If $M ⟶ P$, $N ⟶ Q$, then
- Inside-out $\sim$ Outside-in
$λσ$-calculus: $λ$-calculus with explicit substitutions
\[(λx.M)P ⟶ M[x := P]\]but $x$ is not duplicated in $M$’s tree: there’s a pointer only (until we reach a variable).
Critical pairs: superposition de deux motifs de réécriture dans un terme ⟶ pas confluence en général
Leave a comment