Beyond Inductive Definitions – Induction-Recursion, Induction-Induction, Coalgebras
Anton Setzer Swansea University, Swansea UK 1 March 2012
1/ 26
Beyond Inductive Definitions Induction-Recursion, - - PowerPoint PPT Presentation
Beyond Inductive Definitions Induction-Recursion, Induction-Induction, Coalgebras Anton Setzer Swansea University, Swansea UK 1 March 2012 1/ 26 A Proof Theoretic Programme Sets in Martin-L of Type Theory Induction-Recursion,
1/ 26
2/ 26
A Proof Theoretic Programme
3/ 26
A Proof Theoretic Programme
◮ This is of course highly unlikely.
◮ Such arguments are never as robust as mathematical arguments. ◮ Such arguments need to rely on intuitive insights. 4/ 26
A Proof Theoretic Programme
5/ 26
A Proof Theoretic Programme
◮ Elements of sets are programs or terms with reductions. ◮ One constructs from below sets (or types) based on principles into
◮ Then one formulates principles for adding elements into those sets and
◮ We need to get an intuitive argument why this combination of
6/ 26
A Proof Theoretic Programme
7/ 26
A Proof Theoretic Programme
8/ 26
A Proof Theoretic Programme
◮ Based on type theory with total functions. ◮ Philosophically the best developed theory (meaning explanations). ◮ According to Martin-L¨
◮ Or: a theory which formulates the reasons why we can put our trust
◮ Based on partial functions. ◮ Everything can be applied to everything. ◮ Formulated axiomatically with an attempt to get a short definition. ◮ Makes it more easy to carry out metamathematical analysis. ◮ However this destroys some of its philosophical clarity. ◮ More suitable for giving foundations of principles for Mahlo and beyond.
9/ 26
A Proof Theoretic Programme
◮ Was introduced to define a very strong predicatively justified type
◮ The data type of inductive-recursive definitions was defined using the
◮ This data type was ◮ applied to generic programming, ◮ is related to generic extensions of Haskell. 10/ 26
Sets in Martin-L¨
11/ 26
Sets in Martin-L¨
◮ There are finitely many fixed elements which are elements of it. ◮ If from each of these finitely many elements we can construct an
12/ 26
Sets in Martin-L¨
◮ If a : A and b : B[a] then can introduce a, b : (x : A) × B[x]. ◮ If c : (x : A) × B[x], we obtain π0(c) : A and π1(c) : B[π0(c)].
◮ ∃x : A.ϕ(x) = (x : A) × ϕ[x] ◮ ϕ ∧ ψ = ϕ × ψ. 13/ 26
Sets in Martin-L¨
◮ Elements of (x : A) → B[x] are programs f which if applied to a : A
◮ If from x : A we can construct an element b[x] : B[x], then λx.b[x] is
◮ In fact this is a form of coalgebraic definition.
◮ ∀x : A.ϕ(x) = (x : A) → ϕ[x]. ◮ ϕ ⊃ ψ = ϕ → ψ. 14/ 26
Sets in Martin-L¨
◮ 0 : N and if n : N then S n : N. ◮ Assume we can form ◮ an element of A[0] ◮ from n : N and a : A[n] an element of A[S n].
15/ 26
Sets in Martin-L¨
◮ Whenever a : A and r : B[a] → W x : A.B[x], then
◮ Assume that from a : A, r : B[a] → W x : A.B[x] and
16/ 26
Sets in Martin-L¨
17/ 26
Sets in Martin-L¨
◮
◮ If a : U and b : T a → U then
◮ Furthermore assume C[x] : Set depending on x : U. Assume ◮ we can form C[
◮ from a : U, C[a], r : T a → U and (x : T a) → C[b x] we can form
18/ 26
Induction-Recursion, Induction-Induction and Coalgebras
19/ 26
Induction-Recursion, Induction-Induction and Coalgebras
◮ strictly positive in A ◮ can refer to B[a] for any a : A referred to
20/ 26
Induction-Recursion, Induction-Induction and Coalgebras
◮ nil : Freshlist and n ∈ nil = false. ◮ If l : Freshlist, n : N and n ∈ l = false, then cons n l : Freshlist.
21/ 26
Induction-Recursion, Induction-Induction and Coalgebras
22/ 26
Induction-Recursion, Induction-Induction and Coalgebras
◮ ∅ : Context. ◮ If Γ : Context and A : Type Γ, then (Γ, A) : Context. ◮ If Γ : Context then
◮ If Γ : Context, A : Type Γ, and B : Type (Γ, A), then
23/ 26
Induction-Recursion, Induction-Induction and Coalgebras
24/ 26
Induction-Recursion, Induction-Induction and Coalgebras
25/ 26
Induction-Recursion, Induction-Induction and Coalgebras
26/ 26