Typage et déduction dans le calcul de
|
|
- Polly Brooks
- 5 years ago
- Views:
Transcription
1 Typage et déduction dans le calcul de réécriture Benjamin Wack Encadrants : C. Kirchner, L. Liquori
2 Deduction and computation λ-calculus [Church 40] is a simple and powerful computational model Explicit notions of function, application, binding Turing equivalent Type systems and deduction in the rewriting calculus Introduction - 2
3 Deduction and computation λ-calculus [Church 40] is a simple and powerful computational model Explicit notions of function, application, binding Turing equivalent Simply typed λ-calculus [Church 40, Curry 34] Ensures strong normalization Isomorphism with natural deduction for intuitionistic logic [Curry, Howard, de Bruijn] Type systems and deduction in the rewriting calculus Introduction - 2
4 Deduction and computation λ-calculus [Church 40] is a simple and powerful computational model Explicit notions of function, application, binding Turing equivalent Simply typed λ-calculus [Church 40, Curry 34] Ensures strong normalization Isomorphism with natural deduction for intuitionistic logic [Curry, Howard, de Bruijn] Various extensions [de Bruijn 70, Girard 72, Coquand 85, Berardi 88, Paulin 90] To broaden the expressiveness of the logic To ease the definition of elaborated functions Type systems and deduction in the rewriting calculus Introduction - 2
5 More computational power? Explicit introduction of rewriting in the system [Breazu-Tannen, Jouannaud, Okada et al.] Term rewriting Higher-order rewriting Type systems and deduction in the rewriting calculus Introduction - 3
6 More computational power? Explicit introduction of rewriting in the system [Breazu-Tannen, Jouannaud, Okada et al.] Term rewriting Higher-order rewriting Removal of computational arguments from formal proofs Poincaré principle [Barendregt & Barendsen] Deduction modulo [Dowek, Hardin, Kirchner, Werner] Type systems and deduction in the rewriting calculus Introduction - 3
7 More computational power? Explicit introduction of rewriting in the system [Breazu-Tannen, Jouannaud, Okada et al.] Term rewriting Higher-order rewriting Removal of computational arguments from formal proofs Poincaré principle [Barendregt & Barendsen] Deduction modulo [Dowek, Hardin, Kirchner, Werner] The rewriting calculus [Cirstea, Kirchner, Liquori et al.] Designed as a semantics for rule-based languages Embeds the λ-calculus and various aspects of rewriting Type systems and deduction in the rewriting calculus Introduction - 3
8 Contents 1. Untyped rewriting calculus 2. Type systems for programming Properties and type inference Typed encoding of term rewriting systems 3. Pure Pattern Type Systems Strong normalization in ρ and ρp 4. Using the ρ-calculus for deduction P 2 T S-proof terms for deduction modulo Generalized Natural Deduction
9 The Untyped Syntax P T Patterns T ::= X K λp.t T T T T Terms 1. λp.a denotes an abstraction with pattern P and body A... the free variables of P are bound in A 2. The terms can also be structures built using the symbol 3. We work modulo α-conversion and Barendregt s hygiene-convention Type systems and deduction in the rewriting calculus The untyped rewriting calculus - 5
10 Some ρ-terms (λx.x x) (λx.x x) the λ-term (ωω) (λ(f x y).(g y x)) (f a b) the application of a rewrite rule (λa.b λa.c) a the parallel application of two rules Type systems and deduction in the rewriting calculus The untyped rewriting calculus - 6
11 Some ρ-terms (λx.x x) (λx.x x) the λ-term (ωω) (λ(f x y).(g y x)) (f a b) the application of a rewrite rule (λa.b λa.c) a the parallel application of two rules Type systems and deduction in the rewriting calculus The untyped rewriting calculus - 6
12 Some ρ-terms (λx.x x) (λx.x x) the λ-term (ωω) (λ(f x y).(g y x)) (f a b) the application of a rewrite rule (λa.b λa.c) a the parallel application of two rules Type systems and deduction in the rewriting calculus The untyped rewriting calculus - 6
13 The Small-step Reduction Semantics (λp.a) B ρ Aθ if P θ B (A B) C δ A C B C Type systems and deduction in the rewriting calculus The untyped rewriting calculus - 7
14 Some ρ-reductions (λx.x x) (λx.x x) (λ(f x y).g y x) (f a b) (λa.b λa.c) a Type systems and deduction in the rewriting calculus The untyped rewriting calculus - 8
15 Some ρ-reductions (λx.x x) (λx.x x) ρ {ω ω} ρδ... (λ(f x y).g y x) (f a b) (λa.b λa.c) a Type systems and deduction in the rewriting calculus The untyped rewriting calculus - 8
16 Some ρ-reductions (λx.x x) (λx.x x) ρ {ω ω} ρδ... (λ(f x y).g y x) (f a b) ρ g b a (λa.b λa.c) a Type systems and deduction in the rewriting calculus The untyped rewriting calculus - 8
17 Some ρ-reductions (λx.x x) (λx.x x) ρ {ω ω} ρδ... (λ(f x y).g y x) (f a b) ρ g b a (λa.b λa.c) a δ (λa.b) a (λa.c) a ρ b c Type systems and deduction in the rewriting calculus The untyped rewriting calculus - 8
18 About preredexes ( λ(f x).(λa.b) x ) (f a) Type systems and deduction in the rewriting calculus The untyped rewriting calculus - 9
19 About preredexes ( ) λ(f x).(λa.b) x (f a) a preredex (not reducible) Type systems and deduction in the rewriting calculus The untyped rewriting calculus - 9
20 About preredexes ( ) λ(f x).(λa.b) x (f a) a preredex (not reducible) ρ (λa.b) a b Type systems and deduction in the rewriting calculus The untyped rewriting calculus - 9
21 Ensuring confluence Strategies Call by value... Suitable for operational semantics but not adapted for logics Restrictions on patterns [van Oostrom 90] Algebraic and linear More restrictive but stable by reduction Type systems and deduction in the rewriting calculus The untyped rewriting calculus - 10
22 About the expressiveness of the ρ-calculus The λ-calculus is fully embedded in the ρ-calculus [Cirstea & Kirchner 98] β-reductions are faithfully mimicked a λ-term ρ-reduces to λ-terms only Various aspects of rewriting can be represented [Cirstea & Kirchner 98] Rewriting paths Rewriting systems Rewriting strategies Various object calculi can be encoded [Cirstea, Kirchner & Liquori 01] Type systems and deduction in the rewriting calculus The untyped rewriting calculus - 11
23 Contents 1. Untyped rewriting calculus 2. Type systems for programming Properties and type inference Typed encoding of term rewriting systems 3. Pure Pattern Type Systems Strong normalization in ρ and ρp 4. Using the ρ-calculus for deduction P 2 T S-proof terms for deduction modulo Generalized Natural Deduction
24 A Simple Type System ρ 1 x : σ Γ Γ Σ x : σ (V ar) f:σ Σ Γ Σ f : σ (Const) Type systems and deduction in the rewriting calculus Types for programming - 13
25 A Simple Type System ρ 1 x : σ Γ Γ Σ x : σ (V ar) f:σ Σ Γ Σ f : σ (Const) Γ Σ A : σ τ Γ Σ B : σ Γ Σ A B : τ (Appl) Type systems and deduction in the rewriting calculus Types for programming - 13
26 A Simple Type System ρ 1 x : σ Γ Γ Σ x : σ (V ar) f:σ Σ Γ Σ f : σ (Const) Γ Σ A : σ τ Γ Σ B : σ Γ Σ A B : τ Γ, Σ P : σ Γ, Σ A : τ Γ Σ λ(p : ).A : σ τ (Appl) (Abs) Dom( ) = FV(P ) Type systems and deduction in the rewriting calculus Types for programming - 13
27 A Simple Type System ρ 1 x : σ Γ Γ Σ x : σ (V ar) f:σ Σ Γ Σ f : σ (Const) Γ Σ A : σ τ Γ Σ B : σ Γ Σ A B : τ Γ, Σ P : σ Γ, Σ A : τ Γ Σ λ(p : ).A : σ τ (Appl) (Abs) Dom( ) = FV(P ) Γ Σ A : σ Γ Σ B : σ Γ Σ A B : σ (Struct) Type systems and deduction in the rewriting calculus Types for programming - 13
28 Polymorphic extensions à la Church à la Curry Γ Σ A : σ α F V (Γ) Γ Σ λα.a : α.σ (Abs ) Γ Σ A : α.σ Γ Σ Aτ : σ[α := τ] (App ) Type systems and deduction in the rewriting calculus Types for programming - 14
29 Polymorphic extensions à la Church à la Curry Γ Σ A : σ α F V (Γ) Γ Σ λα.a : α.σ (Abs ) Γ Σ A : σ α F V (Γ) Γ Σ A : α.σ (Abs ) Γ Σ A : α.σ Γ Σ Aτ : σ[α := τ] (App ) Γ Σ A : α.σ Γ Σ A : σ[α := τ] (App ) Type systems and deduction in the rewriting calculus Types for programming - 14
30 Polymorphic extensions à la Church à la Curry Γ Σ A : σ α F V (Γ) Γ Σ λα.a : α.σ (Abs ) Γ Σ A : σ α F V (Γ) Γ Σ A : α.σ (Abs ) Γ Σ A : α.σ Γ Σ Aτ : σ[α := τ] (App ) Γ Σ A : α.σ Γ Σ A : σ[α := τ] (App ) (f:σ) Σ, σ α(σ 1... ι(β)) where β = BV(σ) Type systems and deduction in the rewriting calculus Types for programming - 14
31 Typing properties Well-typed matching If P θ A, then x P, Γ Σ x : σ Γ Σ xθ : σ Subject Reduction [Cirstea, Liquori & Wack 03] If Γ Σ A : σ and A ρδ B, then Γ Σ B : σ Uniqueness [Cirstea, Liquori & Wack 03] In systems à la Church, if Γ Σ A : σ and Γ Σ A : τ, then τ = α σ Decidability [Liquori & Wack 04] (typechecking) Γ In systems à la Church, Σ T : σ? (type reconstruction) Γ Σ T :? In systems à la Curry, both are undecidable } are decidable Type systems and deduction in the rewriting calculus Types for programming - 15
32 Type inference In systems à la Church, type inference is fully guided by syntax The type system à la Curry has to be restricted The only legal types are type-schemes α.τ where τ is a simple type Polymorphism is restricted to a new construction [P A]B (similar to let...in) Inference works in the style of the Damas-Milner algorithm Type systems and deduction in the rewriting calculus Types for programming - 16
33 Normalization failure ω = λ x.x x ω ω (λ x. x x) ω ρ ω ω ρ... Type systems and deduction in the rewriting calculus Types for programming - 17
34 Normalization failure Γ = x : α α, ω = λ x.x x ω ω (λ x. x x) ω ρ ω ω ρ... Type systems and deduction in the rewriting calculus Types for programming - 17
35 Normalization failure f : (α α) α and Γ = x : α α, ω = λ(f x).x (f x) ω (f ω) (λ(f x). x (f x))) (f ω) ρ ω (f ω) ρ... Type systems and deduction in the rewriting calculus Types for programming - 17
36 Normalization failure (cont d) f : (α α) α and Γ = x : α α, ω = λf x.x (f x) Γ Σ f : (α α) α Γ Σ x : α α Γ Σ x : α α Γ Σ f x : α Γ Σ x (f x) : α Σ ω (f ω) : α Type systems and deduction in the rewriting calculus Types for programming - 18
37 Encoding rewriting systems in the ρ-calculus Addition over Peano integers: plus = λrec z. ( Σ = {0, S, rec, add} λ(add 0 y). y λ(add(s x) y). S ( (z (rec z)) (add x y) ) ) Type systems and deduction in the rewriting calculus Encoding rewriting systems - 19
38 Encoding rewriting systems in the ρ-calculus Addition over Peano integers: plus = λrec z. ( Σ = {0, S, rec, add} λ(add 0 y). y λ(add(s x) y). S ( (z (rec z)) (add x y) ) ) (plus (rec plus)) (add N M) ρδ (λ0.m) N (λ0. M +1) Ñ 1 (λ0. M +N) 0 (λ(s x)....) 0 Type systems and deduction in the rewriting calculus Encoding rewriting systems - 19
39 Encoding rewriting systems in the ρ-calculus Addition over Peano integers: plus = λrec z. ( Σ = {0, S, rec, add} λ(add 0 y). y λ(add(s x) y). S ( (z (rec z)) (add x y) ) ) (plus (rec plus)) (add N M) ρδ (λ0.m) N (λ0. M +1) Ñ 1 (λ0. M +N) 0 (λ(s x)....) 0? M + N Type systems and deduction in the rewriting calculus Encoding rewriting systems - 19
40 Detecting matching failures: the symbol stk The relation P A detects (some) definitive matching failures Type systems and deduction in the rewriting calculus Encoding rewriting systems - 20
41 Detecting matching failures: the symbol stk The relation P A detects (some) definitive matching failures The relation stk treats matching failures uniformly: (λp :.A) B stk stk if P B stk A stk A A stk stk A stk A stk stk Type systems and deduction in the rewriting calculus Encoding rewriting systems - 20
42 Detecting matching failures: the symbol stk The relation P A detects (some) definitive matching failures The relation stk treats matching failures uniformly: (λp :.A) B stk stk if P B stk A stk A A stk stk A stk A stk stk Theorem [Cirstea, Liquori & Wack 03] The reduction stk ρδ is confluent Type systems and deduction in the rewriting calculus Encoding rewriting systems - 20
43 Systematic encoding There exists a ρ-term first (using stk) such that (first A 1 A 2... A n ) B stk ρδ A i+1 B if A i+1 B j i, A j B ρδ stk ρδ stk stk stk Type systems and deduction in the rewriting calculus Encoding rewriting systems - 21
44 Systematic encoding There exists a ρ-term first (using stk) such that (first A 1 A 2... A n ) B stk ρδ A i+1 B if A i+1 B j i, A j B ρδ stk ρδ stk stk stk The Term Rewrite System R = {l i r i } with signature {a j } is encoded by: λl 1. z (rec z) r 1 R = λ(rec z). first λ(a 1 x). z (rec z) a 1 (z (rec z) x) Type systems and deduction in the rewriting calculus Encoding rewriting systems - 21
45 Properties of the encoding Theorem [Cirstea, Liquori & Wack 03] This encoding is sound for left-linear TRS complete for convergent TRS typable if the TRS is well-typed Remark [Cirstea, Kirchner, Liquori & Wack 03] Various strategies can be encoded Type systems and deduction in the rewriting calculus Encoding rewriting systems - 22
46 Other cases of non termination under typing In CaML, ω can be written type t = F of (t -> t);; let omega x = match x with (F y) -> y (F y);; In CIC, type constructors must fulfill a positiveness condition [Mendler 87] Type systems and deduction in the rewriting calculus The source of non termination - 23
47 Logical inconsistency In this type system, the Curry-Howard isomorphism is not valid: Γ, Σ P : σ Γ, Σ A : τ Γ Σ λp :. A : σ τ (Abs) Γ, Σ σ Γ, Σ τ Γ Σ σ τ ( I) Type systems and deduction in the rewriting calculus The source of non termination - 24
48 Logical inconsistency In this type system, the Curry-Howard isomorphism is not valid: Γ, Σ P : σ Γ, Σ A : τ Γ Σ λp :. A : σ τ (Abs) Γ, Σ σ Γ, Σ τ Γ Σ σ τ ( I) How to fix it? Γ, X i : σ i Σ A : τ Γ Σ λp.a : ( σ i ) τ (Abs), FV(P ) = {X i} But how to type applications? Type systems and deduction in the rewriting calculus The source of non termination - 24
49 Contents 1. Untyped rewriting calculus 2. Type systems for programming Properties and type inference Typed encoding of term rewriting systems 3. Pure Pattern Type Systems Strong normalization in ρ and ρp 4. Using the ρ-calculus for deduction P 2 T S-proof terms for deduction modulo Generalized Natural Deduction
50 Dependent type discipline in P 2 T S Γ, Σ B : C Γ Σ ΠP :.C : s Γ Σ λp :.B : ΠP :.C (Abs) Γ Σ A : ΠP :.C Γ Σ [P B]C : s Γ Σ A B : [P B]C (Appl) Γ, Σ P : A Γ Σ B : A Γ, Σ A : s 1 Γ, Σ C : s 2 Γ Σ [P B]C : s 2 (Match) Type systems and deduction in the rewriting calculus Pure Pattern Type Systems - 26
51 Dependent type discipline in P 2 T S Γ, Σ B : C Γ Σ ΠP :.C : s Γ Σ λp :.B : ΠP :.C (Abs) Γ Σ A : ΠP :.C Γ Σ [P B]C : s Γ Σ A B : [P B]C (Appl) Γ, Σ P : A Γ Σ B : A Γ, Σ A : s 1 Γ, Σ C : s 2 Γ Σ [P B]C : s 2 (Match) With = {x:ι, l:list} we have Σ λ(cons x l):. x : Π(cons x l):. ι Type systems and deduction in the rewriting calculus Pure Pattern Type Systems - 26
52 The ρ-cube ρ2 ρω ρcc ρp 2 (, ) ρω (, ) ρ (, ) ρp ρp ω Type systems and deduction in the rewriting calculus Pure Pattern Type Systems - 27
53 Typing properties [Barthe, Cirstea, Kirchner & Liquori 03] Subject reduction: Γ Σ A : C A ρδ B Γ Σ B : C Correctness: Γ Σ A : B Γ Σ B : s B s Consistency: A Nf(ρδ) Σ A : ( = x:.x) Uniqueness: Γ Σ A : B Γ Σ A : B B = ρδ B Conservativity: Γ P T S A : B Γ P 2 T S A : B Type systems and deduction in the rewriting calculus Pure Pattern Type Systems - 28
54 Typing is more restrictive Here, with {x : Πz:α.α}: And: Σ ω = λ(f x):.x (f x) : Π(f x):.α Σ f : Π(y : Πz:α.α).α But to type f ω the pattern y and the argument ω must have a common type σ Type systems and deduction in the rewriting calculus Pure Pattern Type Systems - 29
55 Strong normalization : sketch of the proof Theorem [Wack 04]: In ρ and ρp, if Γ Σ A : C then A and C are SN Type systems and deduction in the rewriting calculus Pure Pattern Type Systems - 30
56 Strong normalization : sketch of the proof Theorem [Wack 04]: In ρ and ρp, if Γ Σ A : C then A and C are SN 1. Find a translation : P 2 T S λω correct w.r.t. reductions If A ρσδ B, then A β B in at least one step Type systems and deduction in the rewriting calculus Pure Pattern Type Systems - 30
57 Strong normalization : sketch of the proof Theorem [Wack 04]: In ρ and ρp, if Γ Σ A : C then A and C are SN 1. Find a translation : P 2 T S λω correct w.r.t. reductions If A ρσδ B, then A β B in at least one step 2. Typability of the translated terms Σ, Γ Σ A : C τ, Γ λω A : τ Type systems and deduction in the rewriting calculus Pure Pattern Type Systems - 30
58 Strong normalization : sketch of the proof Theorem [Wack 04]: In ρ and ρp, if Γ Σ A : C then A and C are SN 1. Find a translation : P 2 T S λω correct w.r.t. reductions If A ρσδ B, then A β B in at least one step 2. Typability of the translated terms Σ, Γ Σ A : C τ, Γ λω A : τ 3. Usual techniques can be adapted to reduce SN in ρp to SN in ρ Type systems and deduction in the rewriting calculus Pure Pattern Type Systems - 30
59 Correctness of reductions (λ(f x).x) (f a) = ( λu.(u(λx.x)) ) ( (λx 1.λz.(zx 1 ))(λv.v) ) β λv.v = a Type systems and deduction in the rewriting calculus Pure Pattern Type Systems - 31
60 Correctness of reductions (λ(f x).x) (f a) = ( λu.(u(λx.x)) ) ( (λx 1.λz.(zx 1 ))(λv.v) ) β λv.v = a The ρ-term ( λy.(λ(f x).x) y ) (f a) features a preredex Type systems and deduction in the rewriting calculus Pure Pattern Type Systems - 31
61 Correctness of reductions (λ(f x).x) (f a) = ( λu.(u(λx.x)) ) ( (λx 1.λz.(zx 1 ))(λv.v) ) β λv.v = a The ρ-term ( λy.(λ(f x).x) y ) (f a) features a preredex Thus, the reductions of the λ-term ( λy.(λ(f x).x) y ) (f a) must mimick first an external ρ-reduction Type systems and deduction in the rewriting calculus Pure Pattern Type Systems - 31
62 Correctness of reductions (λ(f x).x) (f a) = ( λu.(u(λx.x)) ) ( (λx 1.λz.(zx 1 ))(λv.v) ) β λv.v = a The ρ-term ( λy.(λ(f x).x) y ) (f a) features a preredex Thus, the reductions of the λ-term ( λy.(λ(f x).x) y ) (f a) must mimick first an external ρ-reduction Remark: a term produced by the translation may have additional reductions Type systems and deduction in the rewriting calculus Pure Pattern Type Systems - 31
63 The type of a translated pattern A naive translation gives λω f B : (σ β) β λω λ(f x).a : ((σ τ) γ) γ where τ is the type of A Type systems and deduction in the rewriting calculus Pure Pattern Type Systems - 32
64 The type of a translated pattern A naive translation gives λω f B : (σ β) β λω λ(f x).a : ((σ τ) γ) γ where τ is the type of A (σ τ) γ = (σ β) β thus τ = β = γ Type systems and deduction in the rewriting calculus Pure Pattern Type Systems - 32
65 The type of a translated pattern A naive translation gives λω f B : (σ β) β λω λ(f x).a : ((σ τ) γ) γ where τ is the type of A (σ τ) γ = (σ β) β thus τ = β = γ The actual translation features terms depending on types f B : β.(σ β β) λ(f x).a : β.(σ β β) τ Type systems and deduction in the rewriting calculus Pure Pattern Type Systems - 32
66 The type of a translated variable Naive translation x : Πy:ι.ι Σ x : Πy:ι. ι Σ λy:ι. y : Πy:ι. ι Σ λy:ι. a : Πy:ι. ι Type systems and deduction in the rewriting calculus Pure Pattern Type Systems - 33
67 The type of a translated variable Naive translation x : Πy:ι.ι Σ x : Πy:ι. ι Σ λy:ι. y : Πy:ι. ι Σ λy:ι. a : Πy:ι. ι Γ λω λy:β y.y : β y β y Γ λω λy:β y. a : β y α.(α α) Type systems and deduction in the rewriting calculus Pure Pattern Type Systems - 33
68 The type of a translated variable Naive translation x : Πy:ι.ι Σ x : Πy:ι. ι Σ λy:ι. y : Πy:ι. ι Σ λy:ι. a : Πy:ι. ι Γ λω λy:β y.y : β y β y Γ λω λy:β y. a : β y α.(α α) Use of types depending on types β x :, β y : λω x : β y β x β y Type systems and deduction in the rewriting calculus Pure Pattern Type Systems - 33
69 Contents 1. Untyped rewriting calculus 2. Type systems for programming Properties and type inference Typed encoding of term rewriting systems 3. Pure Pattern Type Systems Strong normalization in ρ and ρp 4. Using the ρ-calculus for deduction P 2 T S-proof terms for deduction modulo Generalized Natural Deduction
70 A linear representation of NDM proofs A proof in Natural Deduction Modulo: the congruence states that e is the neutral element of a group: e x = x y.(y e = y) = y.(y e = y) (Ax) y.(y e = y) = e e ( E) = e y.(y e = y) = e ( =) with e e = e = e = y.(y e = y) e ( I) = e Type systems and deduction in the rewriting calculus Proof terms for deduction modulo - 35
71 A linear representation of NDM proofs A proof in Natural Deduction Modulo: the congruence states that e is the neutral element of a group: e x = x y.(y e = y) = y.(y e = y) (Ax) y.(y e = y) = e e ( E) = e y.(y e = y) = e ( =) with e e = e = e = y.(y e = y) e ( I) = e λ-calculus is sufficient to write witnesses [Dowek & Werner 03] λα.(α e) the witness is short and focuses on reasoning but proof reconstruction can be tedious Type systems and deduction in the rewriting calculus Proof terms for deduction modulo - 35
72 A more explicit representation Using P 2 T S, conversions can be accounted for by dedicated constructs in the style of Leibniz s equality : Σ Rew φ t (λl.r) π : φ((λl.r) t) Type systems and deduction in the rewriting calculus Proof terms for deduction modulo - 36
73 A more explicit representation Using P 2 T S, conversions can be accounted for by dedicated constructs in the style of Leibniz s equality : Σ Rew φ t (λl.r) π : φ((λl.r) t) The new proof term for our example is ( λα. Rew ( λy.(y=e) ) (e e ) ( λ(e x).x ) ) (α e) Type systems and deduction in the rewriting calculus Proof terms for deduction modulo - 36
74 A more explicit representation Using P 2 T S, conversions can be accounted for by dedicated constructs in the style of Leibniz s equality : Σ Rew φ t (λl.r) π : φ((λl.r) t) The new proof term for our example is ( λα. Rew ( λy.(y=e) ) (e e ) ( λ(e x).x ) ) (α e) Proposition: For conversion on propositions, application of rewrite rules at top-level is sufficient Type systems and deduction in the rewriting calculus Proof terms for deduction modulo - 36
75 A Curry-Howard-de Bruijn correspondence Theorem [Wack 05]: Full proof representation Type systems and deduction in the rewriting calculus Proof terms for deduction modulo - 37
76 A Curry-Howard-de Bruijn correspondence Theorem [Wack 05]: Full proof representation Incomplete proof reduction Every redex represents a cut But some cuts are obfuscated by conversion rules ( I) ( =) ( E) p = p = p p = q p = p. = q? Conjecture : additional fold-unfold reduction rules allow to reduce every cut Type systems and deduction in the rewriting calculus Proof terms for deduction modulo - 37
77 Main benefits Proof checking reduces to type checking and matching Construction of the conversion steps can be delegated to an efficient rewriting-based software A λ-proof term can always be extracted from a ρ-proof term The set of used rewrite rules can also be extracted Type systems and deduction in the rewriting calculus Proof terms for deduction modulo - 38
78 A simple proof in Natural Deduction... The theory T contains at least { X Y x(x X x Y ) x(x ) Type systems and deduction in the rewriting calculus A generalization of natural deduction - 39
79 A simple proof in Natural Deduction... The theory T contains at least { X Y x(x X x Y ) x(x ) T A Type systems and deduction in the rewriting calculus A generalization of natural deduction - 39
80 A simple proof in Natural Deduction... The theory T contains at least { X Y x(x X x Y ) x(x ) (Ax) ( E) (Ax) T, x x(x ) ( E) ( E) T, x x ( I) ( I) ( E) T, x T, x x A T x x A T x(x x A) T... (Ax) T, x x T x(x x A) A T x(x x A) T A Type systems and deduction in the rewriting calculus A generalization of natural deduction - 39
81 ... shorter in deduction modulo In NDM the context is empty and R = { X Y x(x X x Y ) x Type systems and deduction in the rewriting calculus A generalization of natural deduction - 40
82 ... shorter in deduction modulo In NDM the context is empty and R = { X Y x(x X x Y ) x ( E) ( I) ( I) (Ax) x = x = x A = x x A = A x = A =... Type systems and deduction in the rewriting calculus A generalization of natural deduction - 40
83 ... shorter in deduction modulo In NDM the context is empty and R = { X Y x(x X x Y ) x ( E) ( I) ( I) (Ax) x = x = x A = x x A = A x = A =... The proof is shorter but not very informative Type systems and deduction in the rewriting calculus A generalization of natural deduction - 40
84 A generalization of Natural Deduction We consider some new rules about predicate symbols: ( I) Γ, x X x Y Γ X Y x / FV(Γ) ( E) Γ x Γ φ Type systems and deduction in the rewriting calculus A generalization of natural deduction - 41
85 A generalization of Natural Deduction We consider some new rules about predicate symbols: ( I) Γ, x X x Y Γ X Y x / FV(Γ) ( E) Γ x Γ φ A Type systems and deduction in the rewriting calculus A generalization of natural deduction - 41
86 A generalization of Natural Deduction We consider some new rules about predicate symbols: ( I) Γ, x X x Y Γ X Y x / FV(Γ) ( E) Γ x Γ φ ( I) x x A A Type systems and deduction in the rewriting calculus A generalization of natural deduction - 41
87 A generalization of Natural Deduction We consider some new rules about predicate symbols: ( I) Γ, x X x Y Γ X Y x / FV(Γ) ( E) Γ x Γ φ (Ax) x x ( E) ( I) x x A A Type systems and deduction in the rewriting calculus A generalization of natural deduction - 41
88 A generalization of Natural Deduction We consider some new rules about predicate symbols: ( I) Γ, x X x Y Γ X Y x / FV(Γ) ( E) Γ x Γ φ (Ax) x x ( E) ( I) x x A A The proof is even shorter than in NDM and bears some resemblance with an old-school mathematic style Type systems and deduction in the rewriting calculus A generalization of natural deduction - 41
89 Systematic generation of the new inference rules For each defined predicate P (i.e. there is a rewrite rule P φ): decompose φ along the connectives and and gather all the assumptions and side conditions to build a new rule Type systems and deduction in the rewriting calculus A generalization of natural deduction - 42
90 Systematic generation of the new inference rules For each defined predicate P (i.e. there is a rewrite rule P φ): decompose φ along the connectives and and gather all the assumptions and side conditions to build a new rule Example: X Y x.(x X x Y ) gives Type systems and deduction in the rewriting calculus A generalization of natural deduction - 42
91 Systematic generation of the new inference rules For each defined predicate P (i.e. there is a rewrite rule P φ): decompose φ along the connectives and and gather all the assumptions and side conditions to build a new rule Example: X Y x.(x X x Y ) gives Γ, x X x Y Γ x X x Y Γ x.(x X x Y ) Type systems and deduction in the rewriting calculus A generalization of natural deduction - 42
92 Systematic generation of the new inference rules For each defined predicate P (i.e. there is a rewrite rule P φ): decompose φ along the connectives and and gather all the assumptions and side conditions to build a new rule Example: X Y x.(x X x Y ) gives Γ, x X x Y Γ x X x Y Γ x.(x X x Y ) ( I) Γ, x X x Y Γ X Y Type systems and deduction in the rewriting calculus A generalization of natural deduction - 42
93 Systematic generation of the new inference rules For each defined predicate P (i.e. there is a rewrite rule P φ): decompose φ along the connectives and and gather all the assumptions and side conditions to build a new rule Example: X Y x.(x X x Y ) gives Γ, x X x Y Γ x X x Y Γ x.(x X x Y ) Γ x.(x X x Y ) Γ t X t Y Γ t Y Γ t X ( I) Γ, x X x Y Γ X Y Type systems and deduction in the rewriting calculus A generalization of natural deduction - 42
94 Systematic generation of the new inference rules For each defined predicate P (i.e. there is a rewrite rule P φ): decompose φ along the connectives and and gather all the assumptions and side conditions to build a new rule Example: X Y x.(x X x Y ) gives Γ, x X x Y Γ x X x Y Γ x.(x X x Y ) Γ x.(x X x Y ) Γ t X t Y Γ t Y Γ t X ( I) Γ, x X x Y Γ X Y ( E) Γ X Y Γ t X Γ t Y Type systems and deduction in the rewriting calculus A generalization of natural deduction - 42
95 Conservativity w.r.t first-order logic Theorem: Every defined predicate is provably equivalent to its definition Thus, a GND system is correct and complete if and only if the corresponding NDM system is correct and complete Type systems and deduction in the rewriting calculus A generalization of natural deduction - 43
96 Cut elimination A new notion of cut appears for each defined predicate:. D 1 ( E). D 2 Γ t X ( I) Γ, x X x Y Γ X Y Γ t Y (x / FV(Γ)) Type systems and deduction in the rewriting calculus A generalization of natural deduction - 44
97 Cut elimination A new notion of cut appears for each defined predicate:. D 1 ( E). D 2 Γ t X ( I) Γ, x X x Y Γ X Y Γ t Y (x / FV(Γ)) reduces to. D D 2. D 1 Γ t Y Type systems and deduction in the rewriting calculus A generalization of natural deduction - 44
98 Cut elimination A new notion of cut appears for each defined predicate:. D 1 ( E). D 2 Γ t X ( I) Γ, x X x Y Γ X Y Γ t Y (x / FV(Γ)) reduces to. D D 2. D 1 Γ t Y Theorem: Cut elimination holds whenever it holds in the corresponding NDM system Type systems and deduction in the rewriting calculus A generalization of natural deduction - 44
99 Proof terms Definition of proof terms for Generalized Natural Deduction Add ad-hoc constructions in the language Use the λ-abstraction and store multiple assumptions and witnesses in patterns Type systems and deduction in the rewriting calculus A generalization of natural deduction - 45
100 Proof terms Definition of proof terms for Generalized Natural Deduction Add ad-hoc constructions in the language Use the λ-abstraction and store multiple assumptions and witnesses in patterns ( I) Γ, α : x X π : x Y Γ λ( x α).π : X Y ( E) Γ π : X Y Γ π : t X Γ π ( t π ) : t Y Type systems and deduction in the rewriting calculus A generalization of natural deduction - 45
101 Proof terms Definition of proof terms for Generalized Natural Deduction Add ad-hoc constructions in the language Use the λ-abstraction and store multiple assumptions and witnesses in patterns ( I) Γ, α : x X π : x Y Γ λ( x α).π : X Y ( E) Γ π : X Y Γ π : t X Γ π ( t π ) : t Y The reduction ( λ( x α).π ) ( t π ) π[x := t, α := π ] models cut elimination Type systems and deduction in the rewriting calculus A generalization of natural deduction - 45
102 Proof terms Definition of proof terms for Generalized Natural Deduction Add ad-hoc constructions in the language Use the λ-abstraction and store multiple assumptions and witnesses in patterns ( I) Γ, α : x X π : x Y Γ λ( x α).π : X Y ( E) Γ π : X Y Γ π : t X Γ π ( t π ) : t Y The reduction ( λ( x α).π ) ( t π ) π[x := t, α := π ] models cut elimination A collection of new type systems for the ρ-calculus, to be studied Type systems and deduction in the rewriting calculus A generalization of natural deduction - 45
103 Contributions Types for programming Properties and applications of these systems Type inference P 2 T S Detailed study of the usual properties Strong normalization in ρ and ρp Rewriting calculus and deduction Rich proof terms for deduction modulo A new way of embedding domain-specific information in the logic Type systems and deduction in the rewriting calculus Conclusions - 46
104 Perspectives Types Strong normalization in the remaining of the ρ-cube Conjunction types for structures Generalized Natural Deduction seen as a collection of type systems Type systems and deduction in the rewriting calculus Conclusions - 47
105 Perspectives Types Strong normalization in the remaining of the ρ-cube Conjunction types for structures Generalized Natural Deduction seen as a collection of type systems Generalized Natural Deduction Further decomposition of the propositions in the generation of new rules Tests on broader classes of rewrite rules Type systems and deduction in the rewriting calculus Conclusions - 47
106 Perspectives Types Strong normalization in the remaining of the ρ-cube Conjunction types for structures Generalized Natural Deduction seen as a collection of type systems Generalized Natural Deduction Further decomposition of the propositions in the generation of new rules Tests on broader classes of rewrite rules Implementation of proof assistants based on Natural Deduction Modulo, using ρ-proof terms based on Generalized Natural Deduction Type systems and deduction in the rewriting calculus Conclusions - 47
107 Thanks for your attention
108 Deduction modulo Let R be a rewriting system which rewrites: terms to terms (e.g. 0 + x x) atomic propositions to propositions (e.g. x y = 0 x = 0 y = 0) Type systems and deduction in the rewriting calculus Additional material - 49
109 Deduction modulo Let R be a rewriting system which rewrites: terms to terms (e.g. 0 + x x) atomic propositions to propositions (e.g. x y = 0 x = 0 y = 0) Let = be the congruence closure of R Type systems and deduction in the rewriting calculus Additional material - 49
110 Deduction modulo Let R be a rewriting system which rewrites: terms to terms (e.g. 0 + x x) atomic propositions to propositions (e.g. x y = 0 x = 0 y = 0) Let = be the congruence closure of R Every deduction rule is considered modulo = : Γ = ϑ Γ = φ ( E) Γ = ψ ϑ = φ ψ Type systems and deduction in the rewriting calculus Additional material - 49
111 Deduction modulo Let R be a rewriting system which rewrites: terms to terms (e.g. 0 + x x) atomic propositions to propositions (e.g. x y = 0 x = 0 y = 0) Let = be the congruence closure of R Every deduction rule is considered modulo = : Γ = ϑ Γ = φ ( E) Γ = ψ ϑ = φ ψ A large part of the theory can (or should) be represented in R Type systems and deduction in the rewriting calculus Additional material - 49
112 (Non-)Confluence of the ρ-calculus Active variables are troublesome (λx y.y) ((λa.a b) a) ρ out ρ in a (λx y.y) (a b) b ρ This kind of pattern (as well as abstractions) should be treated with higher-order matching Type systems and deduction in the rewriting calculus Additional material - 50
113 (Non-)Confluence of the ρ-calculus part II Non-linear patterns do not mix well with non-termination [Klop 80] C such that C ρδ A such that A ρδ λy.(λ(d x x).e) (d y (C y)) C A A Type systems and deduction in the rewriting calculus Additional material - 51
114 (Non-)Confluence of the ρ-calculus part II Non-linear patterns do not mix well with non-termination [Klop 80] C such that C ρδ A such that A ρδ λy.(λ(d x x).e) (d y (C y)) C A A C A Type systems and deduction in the rewriting calculus Additional material - 51
115 (Non-)Confluence of the ρ-calculus part II Non-linear patterns do not mix well with non-termination [Klop 80] C such that C ρδ A such that A ρδ λy.(λ(d x x).e) (d y (C y)) C A A C A (λ(d z z).e) (d A (C A)) Type systems and deduction in the rewriting calculus Additional material - 51
116 (Non-)Confluence of the ρ-calculus part II Non-linear patterns do not mix well with non-termination [Klop 80] C such that C ρδ A such that A ρδ λy.(λ(d x x).e) (d y (C y)) C A A C A (λ(d z z).e) (d A (C A)) (λ(d z z).e) (d (C A) (C A)) Type systems and deduction in the rewriting calculus Additional material - 51
117 (Non-)Confluence of the ρ-calculus part II Non-linear patterns do not mix well with non-termination [Klop 80] C such that C ρδ A such that A ρδ λy.(λ(d x x).e) (d y (C y)) C A A C A (λ(d z z).e) (d A (C A)) (λ(d z z).e) (d (C A) (C A)) e Type systems and deduction in the rewriting calculus Additional material - 51
118 (Non-)Confluence of the ρ-calculus part II Non-linear patterns do not mix well with non-termination [Klop 80] C such that C ρδ A such that A ρδ λy.(λ(d x x).e) (d y (C y)) C A A C A (λ(d z z).e) (d A (C A)) C e (λ(d z z).e) (d (C A) (C A)) e Type systems and deduction in the rewriting calculus Additional material - 51
119 Expressiveness 1. Embedding the λ into the ρ. ϕ : λ ρ (a) ϕ(x) = x (b) ϕ(λx.m) = λx.ϕ(m) (c) ϕ(m N) = ϕ(m) ϕ(n) Theorem: If M β N, then ϕ(m) ρ ϕ(n) Type systems and deduction in the rewriting calculus Additional material - 52
120 Expressiveness 1. Embedding the λ into the ρ. ϕ : λ ρ (a) ϕ(x) = x (b) ϕ(λx.m) = λx.ϕ(m) (c) ϕ(m N) = ϕ(m) ϕ(n) Theorem: If M β N, then ϕ(m) ρ ϕ(n) 2. Encoding Rewriting (a) A rewrite system R can be represented as a structure containing all the rules (b) Reduction paths can be encoded If t 1 R t 2, then A such that A t 1 ρδ t 2 Type systems and deduction in the rewriting calculus Additional material - 52
121 Normalization failure f : (α α) α and Γ = x : α α, ω = λf x.x (f x) Γ Σ f : (α α) α Γ Σ f x : α Γ Σ x : α α Γ Σ x : α α Σ ω λf x.x (f x) : α α Γ Σ x (f x) : α. Γ Σ f x : α Σ ω (f ω) : α Type systems and deduction in the rewriting calculus Additional material - 53
122 The relation and first f P λq.b f P g B if f g i, P i B i P (λq.a) B if Q B P A first(a 1, A 2,..., A n ) = X ((stk A n X I) (... (stk A 2 X I) (A 1 X))) first(a 1, A 2,..., A n ) B ρσδ first(a 2,..., A n ) B if Type systems and deduction in the rewriting calculus Additional material - 54
123 Encoding of TRSs R = λrec z. first λrec z. first λl 1. z (rec z) r 1,, λa 1 x. z (rec z) a 1 (z (rec z) x), λl 1. z (rec z) r 1,, λy.y Type systems and deduction in the rewriting calculus Additional material - 55
124 Positiveness In CIC, the constructor F : (x 1 : A 1 )... (x n : A n ).R is accepted only if R is positive in each A i : 1. R is positive in T if R does not occur in T 2. R is positive in (R t) if R does not occur in t 3. R is positive in (x : A)C if R does not occur in A and R is positive in C Type systems and deduction in the rewriting calculus Additional material - 56
125 Encoding the P 2 T S into λ-calculus x = x f = λx 1... λx αf. (λz.(z x 1... x αf )) f B 1... B αf = λz.(z B 1... B αf ) Type systems and deduction in the rewriting calculus Additional material - 57
126 Encoding the P 2 T S into λ-calculus x = x f = λx 1... λx αf. (λz.(z x 1... x αf )) f B 1... B αf = λz.(z B 1... B αf ) λ(f P 1... P p ).A = λu.(u x... x λp 1... λp p.λx p+1... λx α f.a ) Type systems and deduction in the rewriting calculus Additional material - 57
127 Encoding the P 2 T S into λ-calculus x = x f = λx 1... λx αf. (λz.(z x 1... x αf )) f B 1... B αf = λz.(z B 1... B αf ) λ(f P 1... P p ).A = λu.(u x... x λp 1... λp p.λx p+1... λx α f.a ) λx.a = A B = λx. A A B Type systems and deduction in the rewriting calculus Additional material - 57
128 Encoding the P 2 T S into λ-calculus x = x f = λx 1... λx αf. (λz.(z x 1... x αf )) f B 1... B αf = λz.(z B 1... B αf ) λ(f P 1... P p ).A = λu.(u x... x λp 1... λp p.λx p+1... λx α f.a ) λx.a = λx. A A B = A B A B = λx 1... λx α. ( (λz.( A x1... x α ) ) ( B x 1... x α )) Type systems and deduction in the rewriting calculus Additional material - 57
129 An example of translated term λy.(λ(f x).x) y {}}{ ( λ(f x).x {}}{ ) (λy. (λu.(u(λx.x))) y ) ( f {}}{ (λx 1.λz.(zx 1 )) a {}}{ ) (λv.v) Type systems and deduction in the rewriting calculus Additional material - 58
130 An example of translated term β λy.(λ(f x).x) y {}}{ λ(f x).x {}}{ ( ) (λy. (λu.(u(λx.x))) y ) ( ) ( λy.(y(λx.x)) (λx 1.λz.(zx 1 ))(λv.v) ( f {}}{ (λx 1.λz.(zx 1 )) ) a {}}{ ) (λv.v) Type systems and deduction in the rewriting calculus Additional material - 58
131 An example of translated term β λy.(λ(f x).x) y {}}{ λ(f x).x {}}{ ( ) (λy. (λu.(u(λx.x))) y ) ( ) ( λy.(y(λx.x)) (λx 1.λz.(zx 1 ))(λv.v) β ( λy.(y(λx.x)) )( λz.(z(λv.v)) ) ( f {}}{ (λx 1.λz.(zx 1 )) ) a {}}{ ) (λv.v) Type systems and deduction in the rewriting calculus Additional material - 58
132 An example of translated term β λy.(λ(f x).x) y {}}{ λ(f x).x {}}{ ( ) (λy. (λu.(u(λx.x))) y ) ( ) ( λy.(y(λx.x)) (λx 1.λz.(zx 1 ))(λv.v) ( )( ) β λy.(y(λx.x)) λz.(z(λv.v)) ( ) β λz.(z(λv.v)) (λx.x) ( f {}}{ (λx 1.λz.(zx 1 )) ) a {}}{ ) (λv.v) Type systems and deduction in the rewriting calculus Additional material - 58
133 An example of translated term β λy.(λ(f x).x) y {}}{ λ(f x).x {}}{ ( ) (λy. (λu.(u(λx.x))) y ) ( ) ( λy.(y(λx.x)) (λx 1.λz.(zx 1 ))(λv.v) ( )( ) β λy.(y(λx.x)) λz.(z(λv.v)) ( ) β λz.(z(λv.v)) (λx.x) β (λx.x)(λv.v) ( f {}}{ (λx 1.λz.(zx 1 )) ) a {}}{ ) (λv.v) Type systems and deduction in the rewriting calculus Additional material - 58
134 An example of translated term β λy.(λ(f x).x) y {}}{ λ(f x).x {}}{ ( ) (λy. (λu.(u(λx.x))) y ) ( ) ( λy.(y(λx.x)) (λx 1.λz.(zx 1 ))(λv.v) ( )( ) β λy.(y(λx.x)) λz.(z(λv.v)) ( ) β λz.(z(λv.v)) (λx.x) β β = a (λx.x)(λv.v) (λv.v) ( f {}}{ (λx 1.λz.(zx 1 )) ) a {}}{ ) (λv.v) Type systems and deduction in the rewriting calculus Additional material - 58
135 The type of a translated constant Supposing Σ f : Πx:ι.ι λω f = λx 1.λz.(z x 1 ) : λω f B : σ (σ β) β (σ β) β Type systems and deduction in the rewriting calculus Additional material - 59
136 Enhanced translation σ1,..., σ α = Π(β : ). ( (σ1... σ α β) β ) f = λf x.a = λx 1.λ(β : ) (λz.(z x 1 )) : σ σ λu. ( u τ λx. A ) : ( σ) τ where Γ λω A : τ x : = Π(β : ).β Type systems and deduction in the rewriting calculus Additional material - 60
137 Use of types depending on types Σ x : Πy:ι. ι β x :, β y : λω x : β y β x β y λy.y β x := λβ :.β λy.a β x := λβ :. f β x := λβ :. β Type systems and deduction in the rewriting calculus Additional material - 61
138 Disjunctive connectors When dealing with and, some part of the definition can not be decomposed properly Type systems and deduction in the rewriting calculus Additional material - 62
139 Disjunctive connectors When dealing with and, some part of the definition can not be decomposed properly With P (Q R) S the new rules are: (P I l ) Γ Q Γ R Γ P (P I r ) Γ S Γ P (P E) Γ P Γ, Q R U Γ, S U Γ U Type systems and deduction in the rewriting calculus Additional material - 62
140 Disjunctive connectors When dealing with and, some part of the definition can not be decomposed properly With P (Q R) S the new rules are: (P I l ) Γ Q Γ R Γ P (P I r ) Γ S Γ P (P E) Γ P Γ, Q R U Γ, S U Γ U The discrepancy between (P I l ) and the second assumption of (P E) may ruin cut elimination, and suggests further decomposition: (P E) Γ P Γ, Q, R U Γ, S U Γ U Type systems and deduction in the rewriting calculus Additional material - 62
141 Conservativity (K E) (P I) (Ax). def H 1... def H n def P. (P E) (K I) P, Γ P... P, Γ γ. P def Type systems and deduction in the rewriting calculus Additional material - 63
142 About unsound rules It is well-known that the rewrite rule R R gives an unsound deduction modulo Its associated introduction and elimination rules are (R I) Γ, R Γ R (R E) Γ R Γ R Γ Type systems and deduction in the rewriting calculus Additional material - 64
143 About unsound rules It is well-known that the rewrite rule R R gives an unsound deduction modulo Its associated introduction and elimination rules are (R I) Γ, R Γ R (R E) Γ R Γ R Γ and the (shortest) proof of has the proof term ( λr(α).α R(α) ) R ( λr(α).α R(α) ) Type systems and deduction in the rewriting calculus Additional material - 64
144 Curiosities Proof terms with patterns for the usual connectives Γ π : φ Γ ( I) π : ψ Γ (π, π ) : φ ψ ( E l ) Γ π : φ ψ Γ (λ (x, y).x)π : φ Type systems and deduction in the rewriting calculus Additional material - 65
145 Curiosities Proof terms with patterns for the usual connectives Γ π : φ Γ ( I) π : ψ Γ (π, π ) : φ ψ ( E l ) Γ π : φ ψ Γ (λ (x, y).x)π : φ The NDM formalization of higher-order logic gives the rules for higher-order quantifiers Predicates defined by induction give some natural rules (N E) Γ n N Γ 0 P Γ, m P S(m) P Γ n P Type systems and deduction in the rewriting calculus Additional material - 65
The Curry-Howard Isomorphism
The Curry-Howard Isomorphism Software Formal Verification Maria João Frade Departmento de Informática Universidade do Minho 2008/2009 Maria João Frade (DI-UM) The Curry-Howard Isomorphism MFES 2008/09
More informationThe Calculus of Inductive Constructions
The Calculus of Inductive Constructions Hugo Herbelin 10th Oregon Programming Languages Summer School Eugene, Oregon, June 16-July 1, 2011 1 Outline - A bit of history, leading to the Calculus of Inductive
More informationPROOF NORMALIZATION MODULO
PROOF NORMALIZATION MODULO GILLES DOWEK AND BENJAMIN WERNER Abstract. We define a generic notion of cut that applies to many first-order theories. We prove a generic cut elimination theorem showing that
More informationIntroduction to Type Theory February 2008 Alpha Lernet Summer School Piriapolis, Uruguay. Herman Geuvers Nijmegen & Eindhoven, NL
Introduction to Type Theory February 2008 Alpha Lernet Summer School Piriapolis, Uruguay Herman Geuvers Nijmegen & Eindhoven, NL Lecture 5: Higher Order Logic and the Calculus of Constructions 1 Church
More informationCategories, Proofs and Programs
Categories, Proofs and Programs Samson Abramsky and Nikos Tzevelekos Lecture 4: Curry-Howard Correspondence and Cartesian Closed Categories In A Nutshell Logic Computation 555555555555555555 5 Categories
More informationBeyond First-Order Logic
Beyond First-Order Logic Software Formal Verification Maria João Frade Departmento de Informática Universidade do Minho 2008/2009 Maria João Frade (DI-UM) Beyond First-Order Logic MFES 2008/09 1 / 37 FOL
More informationA simple proof that super-consistency implies cut elimination
A simple proof that super-consistency implies cut elimination Gilles Dowek 1 and Olivier Hermant 2 1 École polytechnique and INRIA, LIX, École polytechnique, 91128 Palaiseau Cedex, France gilles.dowek@polytechnique.edu
More informationHenk Barendregt and Freek Wiedijk assisted by Andrew Polonsky. Radboud University Nijmegen. March 5, 2012
1 λ Henk Barendregt and Freek Wiedijk assisted by Andrew Polonsky Radboud University Nijmegen March 5, 2012 2 reading Femke van Raamsdonk Logical Verification Course Notes Herman Geuvers Introduction to
More informationTruth values algebras and proof normalization
Truth values algebras and proof normalization Gilles Dowek École polytechnique and INRIA, LIX, École polytechnique, 91128 Palaiseau Cedex, France http://lix.polytechnique.fr/ dowek/ Gilles.Dowek@polytechnique.edu
More informationFrom pre-models to models
From pre-models to models normalization by Heyting algebras Olivier HERMANT 18 Mars 2008 Deduction System : natural deduction (NJ) first-order logic: function and predicate symbols, logical connectors:,,,,
More informationTranslating Combinatory Reduction Systems into the Rewriting Calculus
Electronic Notes in Theoretical Computer Science 86 No. 2 (2003) URL: http://www.elsevier.nl/locate/entcs/volume86.html 17 pages Translating Combinatory Reduction Systems into the Rewriting Calculus Clara
More informationType Theory and Constructive Mathematics. Type Theory and Constructive Mathematics Thierry Coquand. University of Gothenburg
Type Theory and Constructive Mathematics Type Theory and Constructive Mathematics Thierry Coquand University of Gothenburg Content An introduction to Voevodsky s Univalent Foundations of Mathematics The
More informationThe Rewriting Calculus as a Combinatory Reduction System
The Rewriting Calculus as a Combinatory Reduction System Clara Bertolissi 1, Claude Kirchner 2 1 LIF-CMI, Université de Provence, Marseille, France 2 INRIA & LORIA, Nancy, France first.last@loria.fr, clara.bertolissi@lif.univ-mrs.fr
More informationConservativity of Embeddings in the λπ Calculus Modulo Rewriting
Conservativity of Embeddings in the λπ Calculus Modulo Rewriting Ali Assaf 1,2 1 Inria, Paris, France 2 École polytechnique, Palaiseau, France Abstract The λπ calculus can be extended with rewrite rules
More informationFrom Operational Semantics to Abstract Machines
From Operational Semantics to Abstract Machines John Hannan Department of Computer Science, University of Copenhagen, Universitetsparken 1, DK-2100 Copenhagen East, Denmark. hannan@diku.dk Dale Miller
More informationA Rewrite System for Strongly Normalizable Terms
A Rewrite System for Strongly Normalizable Terms IRIF Seminar Olivier Hermant & Ronan Saillard CRI, MINES ParisTech, PSL University June 28, 2018 O. Hermant (MINES ParisTech) Intersection Types in DMT
More informationKleene realizability and negative translations
Q E I U G I C Kleene realizability and negative translations Alexandre Miquel O P. D E. L Ō A U D E L A R April 21th, IMERL Plan 1 Kleene realizability 2 Gödel-Gentzen negative translation 3 Lafont-Reus-Streicher
More informationIntroduction to dependent type theory. CIRM, May 30
CIRM, May 30 Goals of this presentation Some history and motivations Notations used in type theory Main goal: the statement of main properties of equality type and the univalence axiom First talk P ropositions
More informationHarvard School of Engineering and Applied Sciences CS 152: Programming Languages
Harvard School of Engineering and Applied Sciences CS 152: Programming Languages Lecture 17 Tuesday, April 2, 2013 1 There is a strong connection between types in programming languages and propositions
More informationλ Slide 1 Content Exercises from last time λ-calculus COMP 4161 NICTA Advanced Course Advanced Topics in Software Verification
Content COMP 4161 NICTA Advanced Course Advanced Topics in Software Verification Toby Murray, June Andronick, Gerwin Klein λ Slide 1 Intro & motivation, getting started [1] Foundations & Principles Lambda
More informationApplied Logic. Lecture 1 - Propositional logic. Marcin Szczuka. Institute of Informatics, The University of Warsaw
Applied Logic Lecture 1 - Propositional logic Marcin Szczuka Institute of Informatics, The University of Warsaw Monographic lecture, Spring semester 2017/2018 Marcin Szczuka (MIMUW) Applied Logic 2018
More informationLambda Calculus. Week 12 The canonical term models for λ. Henk Barendregt, Freek Wiedijk assisted by Andrew Polonsky
Lambda Calculus Week 12 The canonical term models for λ Henk Barendregt, Freek Wiedijk assisted by Andrew Polonsky Two version of λ Curry version (type assignment). Λ Γ (A) {M Λ Γ M : A} with (axiom) Γ
More informationInvestigation of Prawitz s completeness conjecture in phase semantic framework
Investigation of Prawitz s completeness conjecture in phase semantic framework Ryo Takemura Nihon University, Japan. takemura.ryo@nihon-u.ac.jp Abstract In contrast to the usual Tarskian set-theoretic
More informationOn Lists and Other Abstract Data Types in the Calculus of Constructions
On Lists and Other Abstract Data Types in the Calculus of Constructions Jonathan P. Seldin Department of Mathematics Concordia University Montreal, Quebec, Canada seldin@alcor.concordia.ca January 29,
More informationModels of computation
Lambda-Calculus (I) jean-jacques.levy@inria.fr 2nd Asian-Pacific Summer School on Formal ethods Tsinghua University, August 23, 2010 Plan computation models lambda-notation bound variables odels of computation
More informationCS 4110 Programming Languages & Logics. Lecture 16 Programming in the λ-calculus
CS 4110 Programming Languages & Logics Lecture 16 Programming in the λ-calculus 30 September 2016 Review: Church Booleans 2 We can encode TRUE, FALSE, and IF, as: TRUE λx. λy. x FALSE λx. λy. y IF λb.
More informationCompleteness Theorems and λ-calculus
Thierry Coquand Apr. 23, 2005 Content of the talk We explain how to discover some variants of Hindley s completeness theorem (1983) via analysing proof theory of impredicative systems We present some remarks
More informationLambda-Calculus (I) 2nd Asian-Pacific Summer School on Formal Methods Tsinghua University, August 23, 2010
Lambda-Calculus (I) jean-jacques.levy@inria.fr 2nd Asian-Pacific Summer School on Formal Methods Tsinghua University, August 23, 2010 Plan computation models lambda-notation bound variables conversion
More informationOn a computational interpretation of sequent calculus for modal logic S4
On a computational interpretation of sequent calculus for modal logic S4 Yosuke Fukuda Graduate School of Informatics, Kyoto University Second Workshop on Mathematical Logic and Its Applications March
More informationFirst-Order Logic First-Order Theories. Roopsha Samanta. Partly based on slides by Aaron Bradley and Isil Dillig
First-Order Logic First-Order Theories Roopsha Samanta Partly based on slides by Aaron Bradley and Isil Dillig Roadmap Review: propositional logic Syntax and semantics of first-order logic (FOL) Semantic
More informationSequent Combinators: A Hilbert System for the Lambda Calculus
Sequent Combinators: A Hilbert System for the Lambda Calculus Healfdene Goguen Department of Computer Science, University of Edinburgh The King s Buildings, Edinburgh, EH9 3JZ, United Kingdom Fax: (+44)
More information07 Equational Logic and Algebraic Reasoning
CAS 701 Fall 2004 07 Equational Logic and Algebraic Reasoning Instructor: W. M. Farmer Revised: 17 November 2004 1 What is Equational Logic? Equational logic is first-order logic restricted to languages
More informationThe Greek Alphabet. (a) The Untyped λ-calculus
3. The λ-calculus and Implication Greek Letters (a) The untyped λ-calculus. (b) The typed λ-calculus. (c) The λ-calculus in Agda. (d) Logic with Implication (e) Implicational Logic in Agda. (f) More on
More informationModularity of Confluence: A Simplified Proof
1 Modularity of Confluence: A Simplified Proof Jan Willem Klop 1,2,5,6 Aart Middeldorp 3,5 Yoshihito Toyama 4,7 Roel de Vrijer 2 1 Department of Software Technology CWI, Kruislaan 413, 1098 SJ Amsterdam
More informationNon deterministic classical logic: the λµ ++ -calculus
Paru dans : Mathematical Logic Quarterly, 48, pp. 357-366, 2002 Non deterministic classical logic: the λµ ++ -calculus Karim NOUR LAMA - Equipe de Logique, Université de Savoie 73376 Le Bourget du Lac
More informationNICTA Advanced Course. Theorem Proving Principles, Techniques, Applications
NICTA Advanced Course Theorem Proving Principles, Techniques, Applications λ 1 CONTENT Intro & motivation, getting started with Isabelle Foundations & Principles Lambda Calculus Higher Order Logic, natural
More informationClassical Combinatory Logic
Computational Logic and Applications, CLA 05 DMTCS proc. AF, 2006, 87 96 Classical Combinatory Logic Karim Nour 1 1 LAMA - Equipe de logique, Université de Savoie, F-73376 Le Bourget du Lac, France Combinatory
More informationDecidable structures between Church-style and Curry-style
Decidable structures between Church-style and Curry-style Ken-etsu Fujita 1 and Aleksy Schubert 2 1 Gunma University Tenjin-cho 1-5-1, Kiryu 376-8515, Japan fujita@cs.gunma-u.ac.jp 2 The University of
More informationCOMP6463: λ-calculus
COMP6463: λ-calculus 1. Basics Michael Norrish Michael.Norrish@nicta.com.au Canberra Research Lab., NICTA Semester 2, 2015 Outline Introduction Lambda Calculus Terms Alpha Equivalence Substitution Dynamics
More information3.2 Reduction 29. Truth. The constructor just forms the unit element,. Since there is no destructor, there is no reduction rule.
32 Reduction 29 32 Reduction In the preceding section, we have introduced the assignment of proof terms to natural deductions If proofs are programs then we need to explain how proofs are to be executed,
More informationMotivation. CS389L: Automated Logical Reasoning. Lecture 10: Overview of First-Order Theories. Signature and Axioms of First-Order Theory
Motivation CS389L: Automated Logical Reasoning Lecture 10: Overview of First-Order Theories Işıl Dillig Last few lectures: Full first-order logic In FOL, functions/predicates are uninterpreted (i.e., structure
More informationΓ is usually left implicit: ϕ
Types Summer School Gothenburg Sweden August 2005 Type Systems Herman Geuvers Radboud University Nijmegen, NL Lecture 2: Higher Order Logic and Type Theory The original motivation of Church to introduce
More informationSubtyping and Intersection Types Revisited
Subtyping and Intersection Types Revisited Frank Pfenning Carnegie Mellon University International Conference on Functional Programming (ICFP 07) Freiburg, Germany, October 1-3, 2007 Joint work with Rowan
More information185.A09 Advanced Mathematical Logic
185.A09 Advanced Mathematical Logic www.volny.cz/behounek/logic/teaching/mathlog13 Libor Běhounek, behounek@cs.cas.cz Lecture #1, October 15, 2013 Organizational matters Study materials will be posted
More informationhal , version 1-21 Oct 2009
ON SKOLEMISING ZERMELO S SET THEORY ALEXANDRE MIQUEL Abstract. We give a Skolemised presentation of Zermelo s set theory (with notations for comprehension, powerset, etc.) and show that this presentation
More informationThe Lambda-Calculus Reduction System
2 The Lambda-Calculus Reduction System 2.1 Reduction Systems In this section we present basic notions on reduction systems. For a more detailed study see [Klop, 1992, Dershowitz and Jouannaud, 1990]. Definition
More informationIntroduction to Type Theory
Introduction to Type Theory Herman Geuvers Radboud University Nijmegen & Technical University Eindhoven, The Netherlands July 8, 2008 1 Overview These notes comprise the lecture Introduction to Type Theory
More informationUniform Schemata for Proof Rules
Uniform Schemata for Proof Rules Ulrich Berger and Tie Hou Department of omputer Science, Swansea University, UK {u.berger,cshou}@swansea.ac.uk Abstract. Motivated by the desire to facilitate the implementation
More informationLogical Preliminaries
Logical Preliminaries Johannes C. Flieger Scheme UK March 2003 Abstract Survey of intuitionistic and classical propositional logic; introduction to the computational interpretation of intuitionistic logic
More informationPropositional and Predicate Logic - XIII
Propositional and Predicate Logic - XIII Petr Gregor KTIML MFF UK WS 2016/2017 Petr Gregor (KTIML MFF UK) Propositional and Predicate Logic - XIII WS 2016/2017 1 / 22 Undecidability Introduction Recursive
More informationHORSes: format, termination and confluence
HORSes: format, termination and confluence Jean-Pierre Jouannaud INRIA-LIAMA and singhua Software Chair Joint on-going work with Jianqi Li School of Software, singhua University Project CoqLF NList Cross-discipline
More informationChapter 2. Assertions. An Introduction to Separation Logic c 2011 John C. Reynolds February 3, 2011
Chapter 2 An Introduction to Separation Logic c 2011 John C. Reynolds February 3, 2011 Assertions In this chapter, we give a more detailed exposition of the assertions of separation logic: their meaning,
More informationAlonzo Church ( ) Lambda Calculus. λ-calculus : syntax. Grammar for terms : Inductive denition for λ-terms
Alonzo Church (1903-1995) Lambda Calculus 2 λ-calculus : syntax Grammar for terms : t, u ::= x (variable) t u (application) λx.t (abstraction) Notation : Application is left-associative so that t 1 t 2...
More informationThe Girard-Reynolds Isomorphism. Philip Wadler, University of Edinburgh
The Girard-Reynolds Isomorphism Philip Wadler, University of Edinburgh wadler@inf.ed.ac.uk Coincidences Curry-Howard Hindley-Milner Girard-Reynolds John Reynolds (1974) Jean-Yves Girard (1972) John Reynolds
More informationCSCI 490 problem set 6
CSCI 490 problem set 6 Due Tuesday, March 1 Revision 1: compiled Tuesday 23 rd February, 2016 at 21:21 Rubric For full credit, your solutions should demonstrate a proficient understanding of the following
More informationProgram Testing and Constructive Validity
Program Testing and Constructive Validity Peter Dybjer Chalmers University of Technology, Göteborg, Sweden Philosophy and Foundations of Mathematics: Epistemological and Ontological Aspects - to Per Martin-Löf
More informationAdvanced Lambda Calculus. Henk Barendregt & Giulio Manzonetto ICIS Faculty of Science Radboud University Nijmegen, The Netherlands
Advanced Lambda Calculus Henk Barendregt & Giulio Manzonetto ICIS Faculty of Science Radboud University Nijmegen, The Netherlands Form of the course Ordinary lecture Seminar form Exam: working out an exercise
More informationIntersection Synchronous Logic
UnB 2007 p. 1/2 Intersection Synchronous Logic Elaine Gouvêa Pimentel Simona Ronchi della Rocca Luca Roversi UFMG/UNITO, 2007 UnB 2007 p. 2/2 Outline Motivation UnB 2007 p. 2/2 Outline Motivation Intuitionistic
More informationNon-Idempotent Typing Operators, beyond the λ-calculus
Non-Idempotent Typing Operators, beyond the λ-calculus Soutenance de thèse Pierre VIAL IRIF (Univ. Paris Diderot and CNRS) December 7, 2017 Non-idempotent typing operators P. Vial 0 1 /46 Certification
More information03 Review of First-Order Logic
CAS 734 Winter 2014 03 Review of First-Order Logic William M. Farmer Department of Computing and Software McMaster University 18 January 2014 What is First-Order Logic? First-order logic is the study of
More informationLF P A Logical Framework with External Predicates
LF P A Logical Framework with External Predicates Petar Maksimović in collaboration with Furio Honsell, Marina Lenisa, Luigi Liquori, and Ivan Scagnetto Mathematical Institute of the Serbian Academy of
More informationλ-calculus and types
λ-calculus and types Lecture notes Midland Graduate School / APPSEM Spring School 2004 Thorsten Altenkirch School of Computer Science and Information Technology, Nottingham University txa@cs.nott.ac.uk
More informationSafety Analysis versus Type Inference
Information and Computation, 118(1):128 141, 1995. Safety Analysis versus Type Inference Jens Palsberg palsberg@daimi.aau.dk Michael I. Schwartzbach mis@daimi.aau.dk Computer Science Department, Aarhus
More informationIntroduction to λ-calculus
p.1/65 Introduction to λ-calculus Ken-etsu FUJITA fujita@cs.gunma-u.ac.jp http://www.comp.cs.gunma-u.ac.jp/ fujita/ Department of Computer Science Gunma University :Church 32, 36, 40; Curry 34 1. Universal
More informationSimply Typed λ-calculus
Simply Typed λ-calculus Lecture 1 Jeremy Dawson The Australian National University Semester 2, 2017 Jeremy Dawson (ANU) COMP4630,Lecture 1 Semester 2, 2017 1 / 23 A Brief History of Type Theory First developed
More informationNormalization by Evaluation
Normalization by Evaluation Andreas Abel Department of Computer Science and Engineering Chalmers and Gothenburg University PhD Seminar in Mathematical Engineering EAFIT University, Medellin, Colombia 9
More informationNominal Completion for Rewrite Systems with Binders
Nominal Completion for Rewrite Systems with Binders Maribel Fernández King s College London July 2012 Joint work with Albert Rubio Summary Motivations Nominal Rewriting Closed nominal rules Confluence
More informationObservability for Pair Pattern Calculi
Observability for Pair Pattern Calculi Antonio Bucciarelli 1, Delia Kesner 2, and Simona Ronchi Della Rocca 3 1,2 Univ Paris Diderot, Sorbonne Paris Cité, PPS, UMR 7126, CNRS, Paris, France 3 Dipartimento
More informationPropositional and Predicate Logic. jean/gbooks/logic.html
CMSC 630 February 10, 2009 1 Propositional and Predicate Logic Sources J. Gallier. Logic for Computer Science, John Wiley and Sons, Hoboken NJ, 1986. 2003 revised edition available on line at http://www.cis.upenn.edu/
More informationAn introduction to classical realizability
Q E I U G I C An introduction to classical realizability Alexandre Miquel O P. D E. L Ō A U D E L A R January 27th, 2017 EJCIM 17 Lyon The Curry-Howard correspondence The dictionary: Proof theory Functional
More informationAbout Typed Algebraic Lambda-calculi
About Typed Algebraic Lambda-calculi Benoît Valiron INRIA Saclay/LIX Palaiseau, France valiron@lix.polytechnique.fr Abstract Arrighi and Dowek (2008) introduce an untyped lambdacalculus together with a
More informationSyntax. Notation Throughout, and when not otherwise said, we assume a vocabulary V = C F P.
First-Order Logic Syntax The alphabet of a first-order language is organised into the following categories. Logical connectives:,,,,, and. Auxiliary symbols:.,,, ( and ). Variables: we assume a countable
More informationType Systems Winter Semester 2006
Type Systems Winter Semester 2006 Week 7 November 29 November 29, 2006 - version 1.0 Plan PREVIOUSLY: 1. type safety as progress and preservation 2. typed arithmetic expressions 3. simply typed lambda
More informationCOMP 2600: Formal Methods for Software Engineeing
COMP 2600: Formal Methods for Software Engineeing Dirk Pattinson Semester 2, 2013 What do we mean by FORMAL? Oxford Dictionary in accordance with convention or etiquette or denoting a style of writing
More informationRewriting, Explicit Substitutions and Normalisation
Rewriting, Explicit Substitutions and Normalisation XXXVI Escola de Verão do MAT Universidade de Brasilia Part 1/3 Eduardo Bonelli LIFIA (Fac. de Informática, UNLP, Arg.) and CONICET eduardo@lifia.info.unlp.edu.ar
More informationPredicate Logic. Xinyu Feng 11/20/2013. University of Science and Technology of China (USTC)
University of Science and Technology of China (USTC) 11/20/2013 Overview Predicate logic over integer expressions: a language of logical assertions, for example x. x + 0 = x Why discuss predicate logic?
More informationExtending the Lambda Calculus: An Eager Functional Language
Syntax of the basic constructs: Extending the Lambda Calculus: An Eager Functional Language canonical forms z cfm ::= intcfm boolcfm funcfm tuplecfm altcfm intcfm ::= 0 1-1... boolcfm ::= boolconst funcfm
More informationFIXED POINTS AND EXTENSIONALITY IN TYPED FUNCTIONAL PROGRAMMING LANGUAGES
FIXED POINTS AND EXTENSIONALITY IN TYPED FUNCTIONAL PROGRAMMING LANGUAGES a dissertation submitted to the department of computer science and the committee on graduate studies of stanford university in
More informationMathematical Logic. Reasoning in First Order Logic. Chiara Ghidini. FBK-IRST, Trento, Italy
Reasoning in First Order Logic FBK-IRST, Trento, Italy April 12, 2013 Reasoning tasks in FOL Model checking Question: Is φ true in the interpretation I with the assignment a? Answer: Yes if I = φ[a]. No
More informationStatic Program Analysis
Static Program Analysis Xiangyu Zhang The slides are compiled from Alex Aiken s Michael D. Ernst s Sorin Lerner s A Scary Outline Type-based analysis Data-flow analysis Abstract interpretation Theorem
More informationLecture Notes on Combinatory Modal Logic
Lecture Notes on Combinatory Modal Logic 15-816: Modal Logic Frank Pfenning Lecture 9 February 16, 2010 1 Introduction The connection between proofs and program so far has been through a proof term assignment
More informationEvaluation Driven Proof-Search in Natural Deduction Calculi for Intuitionistic Propositional Logic
Evaluation Driven Proof-Search in Natural Deduction Calculi for Intuitionistic Propositional Logic Mauro Ferrari 1, Camillo Fiorentini 2 1 DiSTA, Univ. degli Studi dell Insubria, Varese, Italy 2 DI, Univ.
More informationConsequence Relations and Natural Deduction
Consequence Relations and Natural Deduction Joshua D. Guttman Worcester Polytechnic Institute September 9, 2010 Contents 1 Consequence Relations 1 2 A Derivation System for Natural Deduction 3 3 Derivations
More informationLazy Strong Normalization
Lazy Strong Normalization Luca Paolini 1,2 Dipartimento di Informatica Università di Torino (ITALIA) Elaine Pimentel 1,2 Departamento de Matemática Universidade Federal de Minas Gerais (BRASIL) Dipartimento
More informationInformal Statement Calculus
FOUNDATIONS OF MATHEMATICS Branches of Logic 1. Theory of Computations (i.e. Recursion Theory). 2. Proof Theory. 3. Model Theory. 4. Set Theory. Informal Statement Calculus STATEMENTS AND CONNECTIVES Example
More informationPeano Arithmetic. CSC 438F/2404F Notes (S. Cook) Fall, Goals Now
CSC 438F/2404F Notes (S. Cook) Fall, 2008 Peano Arithmetic Goals Now 1) We will introduce a standard set of axioms for the language L A. The theory generated by these axioms is denoted PA and called Peano
More informationCoinductive big-step operational semantics
Coinductive big-step operational semantics Xavier Leroy a, Hervé Grall b a INRIA Paris-Rocquencourt Domaine de Voluceau, B.P. 105, 78153 Le Chesnay, France b École des Mines de Nantes La Chantrerie, 4,
More informationConsequence Relations and Natural Deduction
Consequence Relations and Natural Deduction Joshua D Guttman Worcester Polytechnic Institute September 16, 2010 Contents 1 Consequence Relations 1 2 A Derivation System for Natural Deduction 3 3 Derivations
More informationClassical Propositional Logic
The Language of A Henkin-style Proof for Natural Deduction January 16, 2013 The Language of A Henkin-style Proof for Natural Deduction Logic Logic is the science of inference. Given a body of information,
More informationLogic: The Big Picture
Logic: The Big Picture A typical logic is described in terms of syntax: what are the legitimate formulas semantics: under what circumstances is a formula true proof theory/ axiomatization: rules for proving
More informationSub-λ-calculi, Classified
Electronic Notes in Theoretical Computer Science 203 (2008) 123 133 www.elsevier.com/locate/entcs Sub-λ-calculi, Classified François-Régis Sinot Universidade do Porto (DCC & LIACC) Rua do Campo Alegre
More informationRealisability methods of proof and semantics with application to expansion
Realisability methods of proof and semantics with application to expansion First Year Examination Supervisors : Professor Fairouz Kamareddine and Doctor Joe B. Wells Student : Vincent Rahli ULTRA group,
More informationFixed-point elimination in Heyting algebras 1
1/32 Fixed-point elimination in Heyting algebras 1 Silvio Ghilardi, Università di Milano Maria João Gouveia, Universidade de Lisboa Luigi Santocanale, Aix-Marseille Université TACL@Praha, June 2017 1 See
More informationThe Permutative λ-calculus
The Permutative λ-calculus Beniamino Accattoli 1 Delia Kesner 2 INRIA and LIX (École Polytechnique) PPS (CNRS and Université Paris-Diderot) 1 / 34 Outline 1 λ-calculus 2 Permutative extension 3 Confluence
More informationOrthogonality and Boolean Algebras for Deduction Modulo
Orthogonality and Boolean Algebras for Deduction Modulo Aloïs Brunel 1, Olivier Hermant 2, and Clément Houtmann 3 1 ENS de Lyon, Alois.Brunel@ens-lyon.org 2 ISEP, Olivier.Hermant@isep.fr 3 INRIA Saclay,
More informationClassical First-Order Logic
Classical First-Order Logic Software Formal Verification Maria João Frade Departmento de Informática Universidade do Minho 2008/2009 Maria João Frade (DI-UM) First-Order Logic (Classical) MFES 2008/09
More informationA rewriting calculus for cyclic higher-order term graphs
Under consideration for publication in Math. Struct. in Comp. Science A rewriting calculus for cyclic higher-order term graphs PAOLO BALDAN 1 CLARA BERTOLISSI 3 2 HORATIU CIRSTEA 4 2 CLAUDE KIRCHNER 5
More informationPredicate Logic. Xinyu Feng 09/26/2011. University of Science and Technology of China (USTC)
University of Science and Technology of China (USTC) 09/26/2011 Overview Predicate logic over integer expressions: a language of logical assertions, for example x. x + 0 = x Why discuss predicate logic?
More informationOrdinal Strength of Logic-Enriched Type Theories
Ordinal Strength of Logic-Enriched Type Theories Robin Adams Royal Holloway, University of London 27 March 2012 Robin Adams (RHUL) Ordinal Strength of LTTs 27 March 2012 1 / 27 Introduction Type theories
More informationTruth values algebras and proof normalization
Truth values algebras and proof normalization Gilles Dowek École polytechnique and INRIA, LIX, École polytechnique, 91128 Palaiseau Cedex, France http://lix.polytechnique.fr/ dowek/ Gilles.Dowek@polytechnique.edu
More information