Deductive System: Calculus of axioms and inference rules dening judgments. Used in the presentation of logics and programming derivable Logical Framew

Size: px
Start display at page:

Download "Deductive System: Calculus of axioms and inference rules dening judgments. Used in the presentation of logics and programming derivable Logical Framew"

Transcription

1 Paris, France PPDP'99, 30, 1999 September Logical and Meta-Logical Frameworks Frank Pfenning 1. Introduction 2. Logical Frameworks 3. Meta-Logical Frameworks 4. Conclusion (see also: upcoming article in Handbook of Automated Reasoning) 1

2 Deductive System: Calculus of axioms and inference rules dening judgments. Used in the presentation of logics and programming derivable Logical Framework: Meta-language for the formalization of deductive systems. Meta-Logical Framework: Meta-language for reasoning about systems. deductive Some Terminology languages. 2

3 Logical Frameworks Factor the eort required to implement various logics. Support common concepts in deductive systems. Provide generic tools for proof search. Characterized by 1. underlying formalism, 2. meta-programming language, 3. theorem proving environment. 3

4 Formalisms: hereditary Harrop formulas (HHF), dependently typed (LF), inductive denitions, rewriting logic. -calculus Meta-Programming Languages: functional (ML, rewriting), relational Elf). (Prolog, Theorem Proving Environments: tactics and tacticals, logic proof checking. programming, Implementations: Isabelle, Prolog, Elf, linear LF, Maude, Elan, Pi, : : : Agda, More Information: General Mathematical Reasoning Systems: HOL, Coq, LEGO, Nuprl, Nqthm, : : : PVS, Some Logical Frameworks 4

5 Support common proof techniques in the study of logic and programming languages: Meta-Logical Frameworks Require means for representing logics. (A logical framework!) 1. structural induction (over derivations), 2. inversion, 3. interpretations, 4. logical relations. Characterized by 1. underlying logical framework, 2. formalism for meta-reasoning, 3. automation techniques. 5

6 General-purpose reasoning systems used as meta-logical frameworks HOL, Coq, LEGO, Nuprl, Isabelle/HOL, : : :): (Nqthm, Some Meta-Logical Frameworks 1. logics dened inductively, 2. meta-reasoning by (structural) induction, 3. automation by tactics (or inductive theorem proving). Maude [Basin, Clavel & Meseguer'99]: { based on rewriting logic, { meta-reasoning by reection and induction, { automation by rewriting. 6

7 More Meta-Logical Frameworks FOLDN[McDowell & Miller'97] [McDowell'97]: 1. based on hereditary Harrop formulas (typically), 2. meta-reasoning by denitional reection and induction over N, 3. interactive. Twelf [Schurmann & Pf.'98,'99] 1. based on LF logical framework, 2. meta-reasoning via total functional programs (termination, coverage), 3. automation by inductive theorem proving. 7

8 This Talk 1. Inductive vs. non-inductive representations of logics. 2. Reasoning about non-inductive denitions. 3. Techniques for automation. 4. Further development (speculative). 8

9 Terms t ::= a j x j f (t 1 ; : : : ; t n ) The Example: Axiomatic Formulation of Intuitionistic Logic Abstract syntax Propositions A ::= p(t 1 ; : : : ; t n ) j A 1 A 2 j 8x: A Assumptions ::= j ; A Judgments Truth ` A Entailment ` A Meta-theorem If ; A ` C then ` A C. 9

10 ` A (B A) ` (A (B C)) ((A B) (A C)) ` (8x: A) [t=x]a (F 1 ) ` (8x: (B A)) (B 8x: A) (F 2 ) [a=x]a ` a UG 8x: A ` Axioms and Inference Rules Axioms (K) (S) (F 2 ) : x not free in B Rule of inference ` A MP ` A B ` B 10

11 variables in the object language by variables in the Represent meta-language. Higher-Order Abstract Syntax Use (simply typed) -calculus to represent language. Key idea: Technique employed in HHF, LF. In general not inductive. 11

12 pf (t 1 ; : : : ; t k )q = f pt 1 q : : : pt k q f : i!! i pp(t 1 ; : : : ; t k )q = p pt 1 q : : : pt k q p : i!! o pa 1 A 2 q = imp pa 1 q pa 2 q imp : o! o! o p8x: Aq = forall (x:i: paq) forall : (i! o)! o Representation Function pxq = x x:i p:aq = not paq not : o! o Constant declarations form signature in the framework. Variable declarations form context in the framework. 12

13 Types A ::= a j A 1! A 2 Objects M ::= c j x j x:a: M j M 1 M 2 The Framework, Simply Typed Fragment Simply typed -calculus. Signatures ::= j ; a:type j ; c:a Contexts ::= j ; x:a Shared by HHF and LF. Typing `! M : A. Canonical (-normal, -long) forms `! M * A. Suppress signature. 13

14 Theorem [Adequacy] For x = x 1 :i; : : : ; x n :i and terms t and A with free variables among x 1 ; : : : ; x n, propositions Adequacy Theorem 1. x `! M * i i M = ptq, 2. x `! M * o i M = paq. 3. The representation function pq is a compositional bijection: [ptq=x]psq = p[t=x]sq and [ptq=x]paq = p[t=x]aq: 14

15 { if ` { if ` M * o then M = paq for some A Weak vs. Strong Frameworks! o. Recall: p8x: Aq = forall (x:i: paq) where forall : (i! o) {z }!! Requires function space to be parametric! As soon as function space is too rich, either M : o then ` M 0 * o for M 0 denitionally to M, or will fail. Invalidates or complicates reasoning and meta-reasoning. Prohibits case analysis and recursion in LF objects. Also: [ptq=x]paq = p[t=x]aq means variables are \invisible". 15

16 Variables by name: inductive, must axiomatize variable renaming and substitution. but Variables as de Bruijn indices: inductive, variable renaming, must axiomatize substitution. captures Variables as meta-language variables: not inductive, variable renaming, substitution. captures p8x: p(x) q(x)q = forall (x:i: imp (p x) (q x)) p8x: Aq = forall (x:i: paq) Properties of Representations = forall (y:i: imp (p y) (q y)) = p8y: p(y) q(y)q p[t=x]aq = [ptq=x]paq = (x:i: paq) ptq 16

17 judgments of the object language by types in the Represents meta-language. Judgments as Types Use (dependently typed) -calculus to represent derivations. Key idea: Technique employed in LF, variations in HHF. In general not inductive. 17

18 then phq : hil paq; so hil : o! type Representation of Axiomatic Derivations I H If ` A p q K ` A (B A) = k paq pbq k : A:o: B:o: hil (imp A (imp B A)) p q G H ` A B ` A MP = mp paq pbq pgq phq ` B mp : A:o: B:o: hil (imp A B)! hil A! hil B 18

19 (F 2 F 1 F 2 Representation of Axiomatic Derivations II p q = f 1 (x:i: paq) ptq (8x: A) [t=x]a f 1 : A:i! o: t:i: hil (imp (forall (x:i: A x)) (A t)) p q (8x: (B A)) (B 8x: A) = f 2 (x:i: paq) pbq f 2 : A:i! o: B:o: hil (imp (forall (x:i: imp B (A x))) (imp B (forall (x:i: A x)))) ) x not free in B. Note how side condition is enforced in the representation. 19

20 UG a Representation of Axiomatic Derivations III p q H ` [a=x]a = ug (x:i: paq) (a:i: phq) ` 8x: A ug : A:i! o: (a:i: hil (A a))! hil (forall (x:i: A x)) Again, side condition enforced in logical framework. 20

21 Families A ::= a j A M j x:a 1 : A 2 [ j A 1! A 2 ] Objects M ::= c j x j x:a: M j M 1 M 2 The Framework II: LF Type Theory Dependently typed -calculus [Harper, Honsell & Plotkin'93]. Kinds K ::= type j x:a: K Signatures ::= j ; a:k j ; c:a Contexts ::= j ; x:a Core Judgments (similar ones at other levels): ` M : A M has type A ` M = N : A M is equal to N at type A ` M * A M is canonical of type A 21

22 ` ` M : A ` A = B : type LF Type Theory Characteristic rules: M : x:a: B ` N : A ` M N : [N=x]B ` M : B Type checking and conversion is decidable. Every well-typed object has a unique canonical form. 22

23 Theorem [Adequacy] For a = a 1 :i; : : : ; a n :i and deductions H of ` A free parameters among a 1 ; : : : ; a n, with Proof-checking in object logic is reduced to type-checking in logical framework. Adequacy Theorem 1. a ` M * hilpaq i M = phq 2. The representation is a compositional bijection: p[t=a]hq = [ptq=a]phq Made practical through type reconstruction and redundancy elimination. 23

24 Parametric judgments as dependent function types. hil (p[a=x]aq) : type a:i: Properties of Representations Generally not inductive. Judgment forms as type families. hil : o! type Judgments as types. hil paq : type Deductions as objects. phq : hil paq Parametric derivations as functions. 24

25 Some Alternative Representations Hereditary Harrop formulas (Prolog, Isabelle) { Judgments as propositions in meta-logic. { No internal notion of deduction (logic vs. type theory) Inductive denitions (FS 0, many others) { No higher-order abstract syntax. { Deductions as objects (sometimes). 25

26 ` [a=x]a UG a Hypothetical Judgments Would like to prove Hilbert's deduction theorem: If ; A ` C then ` A C. (Note: considered modulo permutations) Relies on hypothetical judgment ` C. Systematically extend rules. For example: hyp ` 8x: A ; A ` A where a does not occur in or A. 26

27 Characteristic Properties of Hypothetical Judgments Substitution property: If ` A and 0 ; A ` C then 0 ; ` C. Realized by substitution into derivations. Exchange. Weakening. Contraction. 27

28 Modeling assumptions in object language by hypotheses in meta-language. Theorem [Extended Adequacy] For a = a 1 :i; : : : ; a n :i, H = u 1 :hil pa 1 q; : : : ; u k :hil pa k q, and deductions H of A 1 ; : : : ; A k ` A p hyp ; A ` A Extending the Representation with free parameters among a 1 ; : : : ; a n, 1. a ; H ` M * hil paq i phq = M. 2. The representation is a compositional bijection: p[t=a]hq = [ptq=a]phq and p[g=u]hq = [pgq=u]phq q = u where u:hil paq in context. 28

29 Proof-carrying code and theorem proving the value of proof terms! (LF, but not HHF.) On Logical Frameworks Assessment Concise, elegant, eective in many cases. Examples in programming languages and logics. Meta-programming via ML (Isabelle). Constraint logic programming (Prolog, Elf). Applications with state much easier in linear frameworks. Some applications call for general constraint systems. 29

30 Higher-order abstract syntax captures variable renaming, substitution, conditions. occurrence Contextual representation of parametric and hypothetical judgments substitution, exchange, weakening, and contraction. captures Representation of judgments as types allows deductions as objects with validity conditions. internal Logical Frameworks Summary Inductive representations allow induction. 30

31 Can we take advantage of the immediate nature of logical framework to automate meta-theory? encodings Alternative: use inductive encodings and develop theories of substitution, etc. assumptions, Meta-Logical Frameworks Four approaches: 1. Relational meta-theory, plus schema-checking [Rohwedder & Pf'96] 2. Reection, consistent via modality [Despeyroux, Schurmann & Pf'97] 3. (Meta-)meta-logic constructed over logical framework. 4. Denitional reection and induction over logical framework. Alternative: reection in rewriting logic. 31

32 Design a logic or type theory to reason about deductive systems encoded LF. in Impractical to simply dene LF as an inductive theory. is simple, but its theory is complex!) (LF Reasoning About Deductive Systems Represented in LF Goals: { Conservative preserve present LF representation techniques. { Natural informal proofs can be expressed directly. { General allow many meta-theorems and meta-proof techniques. { Automatable support ecient automation of meta-proof search. Inherit as much as possible from the logical framework! 32

33 Example: The Deduction Theorem, Propositional Case Theorem: If H then D. ` A C C ` A Proof: By induction on H (see following slides). Recall: Hypothetical judgments as functions types. p q H = u:hil paq: phq u : hil paq! hil pcq A ` C Representation, Hypothesis: p q hyp = u:hil paq: u : hil paq! hil paq A ` A 33

34 H 1 H 2 Hypothetical Judgments, Revisited Representation, Modus Ponens: q p A ` B C A ` B MP A ` C = u:hil paq: mp pbq pcq (ph 1 q u)(ph 2 q u) : hil paq! hil pcq 34

35 Representation of Meta-Proofs Attempt: Represent proof of deduction theorem as function hil (imp A C) : A:o: C:o: (hil A! hil C) ded {z }! {z } in LF outside LF fails, because outer function is dened inductively. Solution: introduce separate level with 8, 9, >. ded 2 8A:o: 8C:o: 8H:(hil A! hil C): 9D:hil (imp A C): > Suppress propositional arguments for deductions. ded 2 8H:(hil A! hil C): 9D:hil (imp A C): > 35

36 H = Proof of Deduction Theorem, Hypothesis Case: hyp A ` A 1 (A ((A A) A)) ((A (A A)) (A A)) S 2 (A ((A A) A)) K 3 (A (A A)) (A A) MP A (A A) K 5 A A MP 3 4 ded (u:hil A: u) = mp (mp s k) k 36

37 H = A ` C 1 (C 2 C 1 ) Proof of Deduction Theorem, Axiom Case: K 1 ` (C 1 (C 2 C 1 )) (A (C 1 (C 2 C 1 ))) K 2 ` C 1 (C 2 C 1 ) K 3 ` A (C 1 (C 2 C 1 )) MP 1 2 ded (u:hila: k) = mp k k Case: Axiom (S) similar. 37

38 H = A ` C 2 A ` C 1 1 ` A (C 1 C 2 ) Ind. hyp. on H 1 4 ` A C 1 Ind. hyp. on H 2 Proof of Deduction Theorem, Modus Ponens Case: H 1 A ` C 1 C 2 H 2 MP 2 ` (A (C 1 C 2 )) ((A C 1 ) (A C 2 )) S 3 ` (A C 1 ) (A C 2 ) MP ` A C 2 MP 3 4 ded (u:hil A: mp (H 1 u) (H 2 u)) = mp(mp s (ded H 1 )) (ded H 2 ) 38

39 ded is a total function of the given type, therefore represents proof. meta-theoretic Proof of Deduction Theorem, Summary Implicational fragment [ ded : (hil A! hil C) ) hil (imp A C) ] ded 2 8H:(hil A! hil C): 9D:hil (imp A C): > ded (u:hil A: u) = mp (mp s k) k ded (u:hila: k) = mp k k ded (u:hila: s) = mp k s ded (u:hil A: mp (H 1 u) (H 2 u)) = mp (mp s (ded H 1 )) (ded H 2 ) 39

40 The Meta-Logic Trade o generality vs. automation. Exploit LF as much as possible. Formulas F ::= 8x:A: F j 9x:A: F j > At present, restricted to 8 : : : 89 : : : 9 prex. Validity of meta-logic. j= 8x:A: F i j= [M=x]F for all M s.t. ` M : A j= 9x:A: F i j= [M=x]F for some M s.t. ` M : A j= > Implementation is, of course, incomplete. 40

41 Excursion: How to Exploit LF Represent falsehood by void : type and no constructors. Represent :A(x) by A(x)! void. Represent disjunction of types A(x) and :A(x) by disj : i! type injl : x:i: A x! disj x injr : x:i: (A x! void)! disj x Prove decidability as 8x: A(x) _ :A(x): 8x:i: 9D:disj x: > 41

42 Meta-Functions P ::= x:a: P j P M (8x:A: F ) j hm; P i j let hx; pi = P 1 in P 2 (9x:A: F ) j h i j let h i = P 1 in P 2 (>) j p:f: P j p (recursion) j case x of (cases) j (M ) P j ) (case) Meta-Logic via Realizability j= F if there is a total function P such that P 2 F. ::= Standard (non-deterministic) operational semantics. 42

43 Checking Realizors Check three conditions. Type Correctness: Returned values have expected type. 1. dependent type checking. Standard Termination: Function always succeeds with a value or fails nitely 2. each computation branch. along simultaneous and lexicographic extensions of higher-order Currently, ordering, given explicitly [Rohwedder & Pf '96]. subterm Coverage: Functions never fail. 3. higher-order pattern unication, check that all cases for closed Using terms of a given type a covered syntactically. Functions may be don't-care non-deterministic. (Many proofs are.) Both termination and coverage are in principle undecidable. Termination is open-ended in practice. 43

44 Filling (=) Type-checking): CLP-style iterative deepening search in LF. Simple Recursion (=) Termination-checking): legal appeals to induction hypothesis given a termination order. Generate Splitting (=) Coverage): possible cases for variable by unication (one step backward Generate Generating Realizors = Meta-Theorem Proving Uses signature and results of induction hypothesis. search). 44

45 Must generalize to allow proof of deduction theorem in rst-order logic or with arbitrary assumptions (hypotheses). (parameters) Objects With Parameters Above relies crucially on closed terms. j= 8x:A: F i j= [M=x]F for all M s.t. ` M : A j= 9x:A: F i j= [M=x]F for some M s.t. ` M : A j= > If ; A ` C then ` A C. 45

46 H = Informal Proof New Case: hyp 0 ; C {z } ; A ` C = 1 0 ; C ` C (A C) (K) 2 0 ; C ` C (hyp) 3 0 ; C ` A C MP 1 2 ded (u:hil A: w) = mp k w where w:hil pcq in context? 46

47 then pq ` all of the form u 1 :hil A 1 ; : : : ; u n :hil A n and objects H such For ` H : hil A! hil C, there exists an object D such that that Formulation in LF Recall: Contexts are mapped to contexts. For = A 1 ; : : : ; A n, pq = u 1 :pa 1 q; : : : ; u n :pa n q H If phq : hil paq! hil pcq. ; A ` C As a statement about encoding: ` D : hil (imp A C). 47

48 j= F i j= F for all 2 X Extension of Meta-Logic Inductive description of classes of contexts. Example: H = j H ; u:hil A (for some A). Write 2 H. Allow outermost quantication over inductively dened contexts. Fix signature and context class X. j= 8x:A: F i j= [M=x]F for all M s.t. ` M : A j= 9x:A: F i j= [M=x]F for some M s.t. ` M : A j= > 48

49 Cannot use parameters x at the top-level, because the context may be empty! Extension of Realizors Two ways to introduce parameters 1. In the case that a given term is a parameter. 2. Explicit x:a. 49

50 Proof of Deduction Theorem Revisited H ::= j H ; w:a ded (u:hil A: w) = mp k w ded (u:hil A: u) = mp (mp s k) k ded (u:hila: k) = mp k k ded (u:hila: s) = mp k s ded (u:hil A: mp (H 1 u) (H 2 u)) = mp (mp s (ded H 1 )) (ded H 2 ) At run-time, w will match one of many possible parameters w i. Need to cross-reference parameters with context-class denition. 50

51 Type-checking. Verify that any parameters introduced lie within the context class. Context class inclusion when using lemmas. specied Coverage. Verify that in addition to signature elements, all possible cases are covered. parameter Treats only context properties stable under exchange, weakening, (hypothetical judgments). contraction Impact on Verication Termination. Not aected. 51

52 H = H 1 ; A ` [a=x]c 1 UG a ; A ` 8x: C 1 1 ` A [a=x]c 1 Ind. hyp. on H 1 3 ` (8x: A C 1 ) (A 8x: C 1 ) F 2 Deduction Theorem in First-Order Logic Case: where a not in, A, or C. 2 ` 8x: A C 1 UG a 1 4 ` A 8x: C 1 MP

53 Representation in Meta-Logic Recall: ug : C 1 :i! o: (a:i: hil (C 1 a))! hil (forall (x:i: C 1 x)). Declare D = j D ; w:hil A j D ; a:i New case: ded (u:hil A: ug (a:i: C 1 u a)) = ug (a:i: mp f 2 (ded (u:hil A: C 1 u a))) Evaluation of x:a: P 1. creates a new actual parameter x for x, 2. evaluates [x=x]p to V, 3. returns the abstraction x:a: V. 53

54 Slightly more complicated when several LF objects are returned : : : 89 : : : 9) (8 The Operator Final complication: subordination. We do not abstract, if the -bound variable cannot occur in the result. 54

55 a ::= j a ; a:i Example: Counting Axiom Occurrences nat : type: zero : nat: one : nat: plus : nat! nat! nat [or D ::= j D ; a:i j D ; w:hil A]. cnt 2 8H:hil A: 9N :nat: >. cnt k = one... (other axioms) : : : cnt (mp H 1 H 2 ) = plus (cnt H 1 ) (cnt H 2 ) cnt (ug (a:i: H a)) = a:i: cnt (H a) [ cnt w = zero ] 55

56 If A / B then a term of type B can not occur as a subterm of a canonical of type A. term Also important in termination checking [Rohwedder & Pf'96] < 8x:i: A in rst-order logic (i / o) [t=x]a Subordination Extracted statically from signature. Determines if -abstraction is constructed from. [B=p]A 6< 8p:i: A in higher-order logic (o 6/ o) Also needed for equational reasoning in LF [Virga'99]. In (predicative) inductive theories, given by the order of denition. 56

57 Status and Implementation Theory of meta-logic recently completed [Schurmann '00]. Prototype of theorem prover exists (not yet released, but available). No tactics(!), development in denition/lemma/theorem style. Work on various extensions in progress. 57

58 theorem Deduction to natural deductions Axiomatic Natural deduction to sequent calculus Church-Rosser theorem Some Twelf Experiments Experiment Time to -calculus CCC completeness CPM LP soundness (Horn) LP completeness (Horn) type preservation Mini-ML evaluation/reduction Mini-ML to axiomatic deductions Natural cut elimination Intuitionistic cut elimination Classical calculus to natural deduction Sequent Linux 2.30, SML/NJ 110, Twelf 1.2 ( Twelf 1.5) on Pentium II (300 Mhz) 58

59 More Information: Assessment I Must provide: induction order, search depth. Derives its power from dependent types and separation of powers. Excellent, if you know the proof ahead of time. 59

60 Assessment II Not robust with respect to failure. Naive strategy (lling! splitting! recursion). Filling sometimes a bottle-neck (anticipate lemmas). Too dependent on number of expression constructors (orthogonality?). Inecient implementation (bottom-up vs. top-down). More termination orders and reduction properties. Proof terms (separate checking, interactive vs. automatic). 60

61 Other Future Work Constraints (currently, only in operational semantics of Twelf). [Virga'99] Linearity (reason about state). [Cervesato & Pf.'96] Order (reasoning about sequencing). [Polakow & Pf.'99] Proof compression. [Necula'98] [Schurmann & Pf.'98] Compilation. [Nadathur'99] 61

62 Related Work: FOLDN FOLDN [McDowell & Miller'97] [McDowell'97] Logical framework exible (HHF, linear HHF). Meta-logic richer, less automation (at present). Induction over natural numbers (rather than termination). Denitional reection (rather than splitting). Does not inherit HHF theorem proving. Does not inherit reasoning about hypotheses (modeled as lists). Does not inherit reasoning about parameters (nested abstractions?) 62

63 Related Work: Maude Maude [Basin, Clavel & Meseguer'99]. Logical framework based on rewriting logic. Encodings are rst-order. Use as meta-logical framework from { reection (representation of system in itself), { initiality (satises inductive properties). Not yet as deeply explored. 63

64 Related Work: Inductive Encodings FS 0, Isabelle/HOL, Coq, LEGO, HOL, Nuprl, Agda. Except for FS 0, not explicitly designed as meta-logical framework. Only inductive encodings and reasoning { No higher-order abstract syntax. { No hypothetical or parametric meta-reasoning. Theorem proving generally based on tactics. Less automation, dierent \look & feel". Numerous experiments. 64

65 Summary Presented principles underlying LF and similar logical frameworks. { Higher-order abstract syntax. { Judgments as types. { Hypothetical and parametric judgments. Explored design of meta-logical framework of LF encodings. { Reasoning about closed objects. { Reasoning about hypotheses and parameters. Sketched automation techniques in Twelf. 65

Reasoning with Higher-Order Abstract Syntax and Contexts: A Comparison

Reasoning with Higher-Order Abstract Syntax and Contexts: A Comparison 1 Reasoning with Higher-Order Abstract Syntax and Contexts: A Comparison Amy Felty University of Ottawa July 13, 2010 Joint work with Brigitte Pientka, McGill University 2 Comparing Systems We focus on

More information

Lecture Notes on Combinatory Modal Logic

Lecture 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 information

The Curry-Howard Isomorphism

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 information

Intensionality, Extensionality, and Proof Irrelevance in Modal Type Theory

Intensionality, Extensionality, and Proof Irrelevance in Modal Type Theory Intensionality, Extensionality, and Proof Irrelevance in Modal Type Theory Frank Pfenning LICS 01 Boston, Massachusetts June 17, 2001 Acknowledgments: Alberto Momigliano,... 1 Outline 1. Introduction 2.

More information

Lecture Notes on Sequent Calculus

Lecture Notes on Sequent Calculus Lecture Notes on Sequent Calculus 15-816: Modal Logic Frank Pfenning Lecture 8 February 9, 2010 1 Introduction In this lecture we present the sequent calculus and its theory. The sequent calculus was originally

More information

Subtyping and Intersection Types Revisited

Subtyping 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 information

Notation for Logical Operators:

Notation for Logical Operators: Notation for Logical Operators: always true always false... and...... or... if... then...... if-and-only-if... x:x p(x) x:x p(x) for all x of type X, p(x) there exists an x of type X, s.t. p(x) = is equal

More information

higher-order logic (e:g:, Church's simple theory of types [5]) P must be a simple type. Although CC types include the types of the simply-typed -calcu

higher-order logic (e:g:, Church's simple theory of types [5]) P must be a simple type. Although CC types include the types of the simply-typed -calcu The Calculus of Constructions as a Framework for Proof Search with Set Variable Instantiation Amy Felty Bell Laboratories Lucent Technologies, 700 Mountain Ave., Murray Hill, NJ 07974, USA felty@bell-labs.com

More information

02 Propositional Logic

02 Propositional Logic SE 2F03 Fall 2005 02 Propositional Logic Instructor: W. M. Farmer Revised: 25 September 2005 1 What is Propositional Logic? Propositional logic is the study of the truth or falsehood of propositions or

More information

Termination and Reduction Checking for Higher-Order Logic Programs

Termination and Reduction Checking for Higher-Order Logic Programs Termination and Reduction Checking for Higher-Order Logic Programs Brigitte Pientka Department of Computer Science Carnegie Mellon University Pittsburgh, PA 15213, USA bp@cs.cmu.edu Abstract. In this paper,

More information

Abstract This thesis describes the design of a meta-logical framework that supports the representation and verication of deductive systems, its implem

Abstract This thesis describes the design of a meta-logical framework that supports the representation and verication of deductive systems, its implem Automating the Meta Theory of Deductive Systems Carsten Schurmann October 6, 2000 CMU-CS-00-46 School of Computer Science Carnegie Mellon University Pittsburgh, PA 523 Submitted in partial fulllment of

More information

On Equivalence and Canonical Forms in the LF Type Theory (Extended Abstract) Robert Harper and Frank Pfenning Department of Computer Science Carnegie

On Equivalence and Canonical Forms in the LF Type Theory (Extended Abstract) Robert Harper and Frank Pfenning Department of Computer Science Carnegie On Equivalence and Canonical Forms in the LF Type Theory (Extended Abstract) Robert Harper and Frank Pfenning Department of Computer Science Carnegie Mellon University August 30, 1999 Abstract Decidability

More information

Lecture Notes on Focusing

Lecture Notes on Focusing Lecture Notes on Focusing Oregon Summer School 2010 Proof Theory Foundations Frank Pfenning Lecture 4 June 17, 2010 1 Introduction When we recast verifications as sequent proofs, we picked up a lot of

More information

Logic Programming in a Fragment of Intuitionistic Linear Logic

Logic Programming in a Fragment of Intuitionistic Linear Logic Logic Programming in a Fragment of Intuitionistic Linear Logic Joshua S. Hodas Computer Science Department Harvey Mudd College Claremont, CA 91711-5990 USA hodas@cs.hmc.edu Dale Miller Computer Science

More information

Human-Readable Machine-Verifiable Proofs for Teaching Constructive Logic

Human-Readable Machine-Verifiable Proofs for Teaching Constructive Logic Human-Readable Machine-Verifiable Proofs for Teaching Constructive Logic Andreas Abel, Bor-Yuh Evan Chang, and Frank Pfenning Workshop on Proof Transformations, Proof Presentations and Complexity of Proofs

More information

Classical First-Order Logic

Classical 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 information

Consequence Relations and Natural Deduction

Consequence 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 information

Bidirectional Decision Procedures for the Intuitionistic Propositional Modal Logic IS4

Bidirectional Decision Procedures for the Intuitionistic Propositional Modal Logic IS4 Bidirectional ecision Procedures for the Intuitionistic Propositional Modal Logic IS4 Samuli Heilala and Brigitte Pientka School of Computer Science, McGill University, Montreal, Canada {sheila1,bpientka}@cs.mcgill.ca

More information

HOAS by example What is a Formal System? A Simply Typed Framework What Does it Mean? Canonical LF References HOAS. Randy Pollack

HOAS by example What is a Formal System? A Simply Typed Framework What Does it Mean? Canonical LF References HOAS. Randy Pollack HOAS Randy Pollack Version of November 2, 2011 Outline 1 HOAS by example 2 What is a Formal System? 3 A Simply Typed Framework 4 What Does it Mean? 5 Canonical LF Judgement Forms and Rules Hereditary Substitution

More information

Automated Reasoning Lecture 5: First-Order Logic

Automated Reasoning Lecture 5: First-Order Logic Automated Reasoning Lecture 5: First-Order Logic Jacques Fleuriot jdf@inf.ac.uk Recap Over the last three lectures, we have looked at: Propositional logic, semantics and proof systems Doing propositional

More information

Přednáška 12. Důkazové kalkuly Kalkul Hilbertova typu. 11/29/2006 Hilbertův kalkul 1

Přednáška 12. Důkazové kalkuly Kalkul Hilbertova typu. 11/29/2006 Hilbertův kalkul 1 Přednáška 12 Důkazové kalkuly Kalkul Hilbertova typu 11/29/2006 Hilbertův kalkul 1 Formal systems, Proof calculi A proof calculus (of a theory) is given by: A. a language B. a set of axioms C. a set of

More information

Mixing Finite Success and Finite Failure. Automated Prover

Mixing Finite Success and Finite Failure. Automated Prover in an Automated Prover Alwen Tiu 1, Gopalan Nadathur 2 and Dale Miller 3 1 INRIA Lorraine, France 2 University of Minnesota, USA 3 INRIA Futurs/École polytechnique, France ESHOL 2005 Montego Bay, Jamaica

More information

Lecture 11: Measuring the Complexity of Proofs

Lecture 11: Measuring the Complexity of Proofs IAS/PCMI Summer Session 2000 Clay Mathematics Undergraduate Program Advanced Course on Computational Complexity Lecture 11: Measuring the Complexity of Proofs David Mix Barrington and Alexis Maciel July

More information

A Structural Proof of Cut Elimination and Its Representation in a Logical Framework

A Structural Proof of Cut Elimination and Its Representation in a Logical Framework A Structural Proof of Cut Elimination and Its Representation in a Logical Framework Frank Pfenning ovember 1994 CMU-CS-94-218 School of Computer Science Carnegie Mellon University Pittsburgh, PA 15213

More information

A Concurrent Logical Framework

A Concurrent Logical Framework A Concurrent Logical Framework Frank Pfenning Carnegie Mellon University Types Workshop Torino, Italy, April 2003 Joint work with Iliano Cervesato, David Walker, and Kevin Watkins Types 03, Torino, April

More information

Lecture Notes on Linear Logic

Lecture Notes on Linear Logic Lecture Notes on Linear Logic 15-816: Modal Logic Frank Pfenning Lecture 23 April 20, 2010 1 Introduction In this lecture we will introduce linear logic [?] in its judgmental formulation [?,?]. Linear

More information

Classical Propositional Logic

Classical 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 information

Evaluation Driven Proof-Search in Natural Deduction Calculi for Intuitionistic Propositional Logic

Evaluation 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 information

Proof Search Foundations for Logic Programming

Proof Search Foundations for Logic Programming July 2003 1/51 Outline Proof Search Foundations for Logic Programming Dale Miller INRIA Futurs and École Polytechnique 1. Roles of logic in specifying computation 2. Focus on proof search (logic programming)

More information

Lecture Notes on Inductive Definitions

Lecture Notes on Inductive Definitions Lecture Notes on Inductive Definitions 15-312: Foundations of Programming Languages Frank Pfenning Lecture 2 September 2, 2004 These supplementary notes review the notion of an inductive definition and

More information

Advanced Topics in LP and FP

Advanced Topics in LP and FP Lecture 1: Prolog and Summary of this lecture 1 Introduction to Prolog 2 3 Truth value evaluation 4 Prolog Logic programming language Introduction to Prolog Introduced in the 1970s Program = collection

More information

Automated Reasoning Lecture 2: Propositional Logic and Natural Deduction

Automated Reasoning Lecture 2: Propositional Logic and Natural Deduction Automated Reasoning Lecture 2: Propositional Logic and Natural Deduction Jacques Fleuriot jdf@inf.ed.ac.uk Logic Puzzles 1. Tomorrow will be sunny or rainy. Tomorrow will not be sunny. What will the weather

More information

Classical First-Order Logic

Classical First-Order Logic Classical First-Order Logic Software Formal Verification Maria João Frade Departmento de Informática Universidade do Minho 2009/2010 Maria João Frade (DI-UM) First-Order Logic (Classical) MFES 2009/10

More information

Beyond First-Order Logic

Beyond 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 information

Notes on Logical Frameworks

Notes on Logical Frameworks Notes on Logical Frameworks Robert Harper IAS November 29, 2012 1 Introduction This is a brief summary of a lecture on logical frameworks given at the IAS on November 26, 2012. See the references for technical

More information

Lecture Notes on Heyting Arithmetic

Lecture Notes on Heyting Arithmetic Lecture Notes on Heyting Arithmetic 15-317: Constructive Logic Frank Pfenning Lecture 8 September 21, 2017 1 Introduction In this lecture we discuss the data type of natural numbers. They serve as a prototype

More information

Applied 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 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 information

NICTA Advanced Course. Theorem Proving Principles, Techniques, Applications

NICTA 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 information

Focusing on Binding and Computation

Focusing on Binding and Computation Focusing on Binding and Computation Dan Licata Joint work with Noam Zeilberger and Robert Harper Carnegie Mellon University 1 Programming with Proofs Represent syntax, judgements, and proofs Reason about

More information

Meta-Reasoning in a Concurrent Logical Framework

Meta-Reasoning in a Concurrent Logical Framework Meta-Reasoning in a Concurrent Logical Framework Iliano Cervesato and Jorge Luis Sacchini Carnegie Mellon University Chalmers University, 16 Oct 2013 Iliano Cervesato and Jorge Luis Sacchini Meta-Reasoning

More information

LF P A Logical Framework with External Predicates

LF 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

Decomposing Modalities

Decomposing Modalities Decomposing Modalities Frank Pfenning Department of Computer Science Carnegie Mellon University Logical Frameworks and Meta-Languages: Theory and Practice (LFMTP 15) Berlin, Germany August 1, 2015 1 /

More information

Lecture Notes on The Curry-Howard Isomorphism

Lecture Notes on The Curry-Howard Isomorphism Lecture Notes on The Curry-Howard Isomorphism 15-312: Foundations of Programming Languages Frank Pfenning Lecture 27 ecember 4, 2003 In this lecture we explore an interesting connection between logic and

More information

From Operational Semantics to Abstract Machines

From 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 information

NICTA Advanced Course. Theorem Proving Principles, Techniques, Applications. Gerwin Klein Formal Methods

NICTA Advanced Course. Theorem Proving Principles, Techniques, Applications. Gerwin Klein Formal Methods NICTA Advanced Course Theorem Proving Principles, Techniques, Applications Gerwin Klein Formal Methods 1 ORGANISATORIALS When Mon 14:00 15:30 Wed 10:30 12:00 7 weeks ends Mon, 20.9.2004 Exceptions Mon

More information

Lecture Notes on Kripke Semantics for Validity

Lecture Notes on Kripke Semantics for Validity Lecture Notes on Kripke Semantics for Validity 15-816: Modal Logic Frank Pfenning Lecture 16 March 23, 2010 1 Introduction In this lecture we continue the analysis of distributed computation through modal

More information

Lecture Notes on Quantification

Lecture Notes on Quantification Lecture Notes on Quantification 15-317: Constructive Logic Frank Pfenning Lecture 5 September 8, 2009 1 Introduction In this lecture, we introduce universal and existential quantification As usual, we

More information

Marie Duží

Marie Duží Marie Duží marie.duzi@vsb.cz 1 Formal systems, Proof calculi A proof calculus (of a theory) is given by: 1. a language 2. a set of axioms 3. a set of deduction rules ad 1. The definition of a language

More information

Propositional and Predicate Logic - V

Propositional and Predicate Logic - V Propositional and Predicate Logic - V Petr Gregor KTIML MFF UK WS 2016/2017 Petr Gregor (KTIML MFF UK) Propositional and Predicate Logic - V WS 2016/2017 1 / 21 Formal proof systems Hilbert s calculus

More information

3.2 Reduction 29. Truth. The constructor just forms the unit element,. Since there is no destructor, there is no reduction rule.

3.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 information

Extending higher-order logic with predicate subtyping: application to PVS

Extending higher-order logic with predicate subtyping: application to PVS Extending higher-order logic with predicate subtyping: application to PVS Frédéric Gilbert To cite this version: Frédéric Gilbert. Extending higher-order logic with predicate subtyping: application to

More information

Extended Abstract: Reconsidering Intuitionistic Duality

Extended Abstract: Reconsidering Intuitionistic Duality Extended Abstract: Reconsidering Intuitionistic Duality Aaron Stump, Harley Eades III, Ryan McCleeary Computer Science The University of Iowa 1 Introduction This paper proposes a new syntax and proof system

More information

Church and Curry: Combining Intrinsic and Extrinsic Typing

Church and Curry: Combining Intrinsic and Extrinsic Typing Church and Curry: Combining Intrinsic and Extrinsic Typing Frank Pfenning Dedicated to Peter Andrews on the occasion of his retirement Department of Computer Science Carnegie Mellon University April 5,

More information

Logic Part II: Intuitionistic Logic and Natural Deduction

Logic Part II: Intuitionistic Logic and Natural Deduction Yesterday Remember yesterday? classical logic: reasoning about truth of formulas propositional logic: atomic sentences, composed by connectives validity and satisability can be decided by truth tables

More information

Consequence Relations and Natural Deduction

Consequence 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 information

First-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 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 information

On some Metatheorems about FOL

On some Metatheorems about FOL On some Metatheorems about FOL February 25, 2014 Here I sketch a number of results and their proofs as a kind of abstract of the same items that are scattered in chapters 5 and 6 in the textbook. You notice

More information

Introduction to Isabelle/HOL

Introduction to Isabelle/HOL Introduction to Isabelle/HOL 1 Notes on Isabelle/HOL Notation In Isabelle/HOL: [ A 1 ;A 2 ; ;A n ]G can be read as if A 1 and A 2 and and A n then G 3 Note: -Px (P x) stands for P (x) (P(x)) -P(x, y) can

More information

TR : Binding Modalities

TR : Binding Modalities City University of New York (CUNY) CUNY Academic Works Computer Science Technical Reports Graduate Center 2012 TR-2012011: Binding Modalities Sergei N. Artemov Tatiana Yavorskaya (Sidon) Follow this and

More information

Meta-reasoning in the concurrent logical framework CLF

Meta-reasoning in the concurrent logical framework CLF Meta-reasoning in the concurrent logical framework CLF Jorge Luis Sacchini (joint work with Iliano Cervesato) Carnegie Mellon University Qatar campus Nagoya University, 27 June 2014 Jorge Luis Sacchini

More information

185.A09 Advanced Mathematical Logic

185.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 information

A Multiple-Conclusion Specification Logic

A Multiple-Conclusion Specification Logic A Multiple-Conclusion Specification Logic Alwen Tiu Australian National University ANU Logic Summer School Lecture 3, December 14, 2007 Alwen Tiu (ANU) Intuitionistic and Linear Logic (5) LSS07 1 / 18

More information

Theoretical Computer Science. Representing model theory in a type-theoretical logical framework

Theoretical Computer Science. Representing model theory in a type-theoretical logical framework Theoretical Computer Science 412 (2011) 4919 4945 Contents lists available at ScienceDirect Theoretical Computer Science journal homepage: www.elsevier.com/locate/tcs Representing model theory in a type-theoretical

More information

Abstract In this paper, we introduce the logic of a control action S4F and the logic of a continuous control action S4C on the state space of a dynami

Abstract In this paper, we introduce the logic of a control action S4F and the logic of a continuous control action S4C on the state space of a dynami Modal Logics and Topological Semantics for Hybrid Systems Mathematical Sciences Institute Technical Report 97-05 S. N. Artemov, J. M. Davoren y and A. Nerode z Mathematical Sciences Institute Cornell University

More information

A Practical Module System for LF

A Practical Module System for LF A Practical Module System for LF Florian Rabe, Carsten Schürmann Jacobs University Bremen, IT University Copenhagen 1 History Harper, Honsell, Plotkin, 1993: LF Harper, Pfenning, 1998: A Module System

More information

Non-classical Logics: Theory, Applications and Tools

Non-classical Logics: Theory, Applications and Tools Non-classical Logics: Theory, Applications and Tools Agata Ciabattoni Vienna University of Technology (TUV) Joint work with (TUV): M. Baaz, P. Baldi, B. Lellmann, R. Ramanayake,... N. Galatos (US), G.

More information

Write your own Theorem Prover

Write your own Theorem Prover Write your own Theorem Prover Phil Scott 27 October 2016 Phil Scott Write your own Theorem Prover 27 October 2016 1 / 31 Introduction We ll work through a toy LCF style theorem prover for classical propositional

More information

Propositional Logic: Syntax

Propositional Logic: Syntax 4 Propositional Logic: Syntax Reading: Metalogic Part II, 22-26 Contents 4.1 The System PS: Syntax....................... 49 4.1.1 Axioms and Rules of Inference................ 49 4.1.2 Definitions.................................

More information

Propositional Logic Language

Propositional Logic Language Propositional Logic Language A logic consists of: an alphabet A, a language L, i.e., a set of formulas, and a binary relation = between a set of formulas and a formula. An alphabet A consists of a finite

More information

Display calculi in non-classical logics

Display calculi in non-classical logics Display calculi in non-classical logics Revantha Ramanayake Vienna University of Technology (TU Wien) Prague seminar of substructural logics March 28 29, 2014 Revantha Ramanayake (TU Wien) Display calculi

More information

Mechanizing Metatheory in a Logical Framework

Mechanizing Metatheory in a Logical Framework Under consideration for publication in J. Functional Programming 1 Mechanizing Metatheory in a Logical Framework Robert Harper and Daniel R. Licata Carnegie Mellon University (e-mail: {rwh,drl}@cs.cmu.edu)

More information

Natural Deduction for Propositional Logic

Natural Deduction for Propositional Logic Natural Deduction for Propositional Logic Bow-Yaw Wang Institute of Information Science Academia Sinica, Taiwan September 10, 2018 Bow-Yaw Wang (Academia Sinica) Natural Deduction for Propositional Logic

More information

Uniform Schemata for Proof Rules

Uniform 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 information

Theoretical Computer Science 323 (2004) Nominal unication. Cambridge CB3 OFD, UK b INRIA, Paris, France

Theoretical Computer Science 323 (2004) Nominal unication. Cambridge CB3 OFD, UK b INRIA, Paris, France Theoretical Computer Science 323 (2004) 473 497 www.elsevier.com/locate/tcs Nominal unication Christian Urban a, Andrew M. Pitts a;, Murdoch J. Gabbay b a University of Cambridge, Marconi Laboratory, William

More information

Intelligent Agents. First Order Logic. Ute Schmid. Cognitive Systems, Applied Computer Science, Bamberg University. last change: 19.

Intelligent Agents. First Order Logic. Ute Schmid. Cognitive Systems, Applied Computer Science, Bamberg University. last change: 19. Intelligent Agents First Order Logic Ute Schmid Cognitive Systems, Applied Computer Science, Bamberg University last change: 19. Mai 2015 U. Schmid (CogSys) Intelligent Agents last change: 19. Mai 2015

More information

Proving Completeness for Nested Sequent Calculi 1

Proving Completeness for Nested Sequent Calculi 1 Proving Completeness for Nested Sequent Calculi 1 Melvin Fitting abstract. Proving the completeness of classical propositional logic by using maximal consistent sets is perhaps the most common method there

More information

The Calculus of Inductive Constructions

The 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 information

The Many Faces of Modal Logic Day 4: Structural Proof Theory

The Many Faces of Modal Logic Day 4: Structural Proof Theory The Many Faces of Modal Logic Day 4: Structural Proof Theory Dirk Pattinson Australian National University, Canberra (Slides based on a NASSLLI 2014 Tutorial and are joint work with Lutz Schröder) LAC

More information

15-819K: Logic Programming Lecture 3. Induction. Frank Pfenning. September 5, 2006

15-819K: Logic Programming Lecture 3. Induction. Frank Pfenning. September 5, 2006 15-819K: Logic Programming Lecture 3 Induction Frank Pfenning September 5, 2006 One of the reasons we are interested in high-level programming languages is that, if properly designed, they allow rigorous

More information

( V ametavariable) P P true. even in E)

( V ametavariable) P P true. even in E) Propositional Calculus E Inference rules (3.1) Leibniz: (3.2) Transitivity: (3.3) Equanimity: P = Q E[V := P ]=E[V := Q] P = Q Q = R P = R P P Q Q ( V ametavariable) Derived inference rules (3.11) Redundant

More information

Lecture Notes on Certifying Theorem Provers

Lecture Notes on Certifying Theorem Provers Lecture Notes on Certifying Theorem Provers 15-317: Constructive Logic Frank Pfenning Lecture 13 October 17, 2017 1 Introduction How do we trust a theorem prover or decision procedure for a logic? Ideally,

More information

On a Logical Foundation for Explicit Substitutions

On a Logical Foundation for Explicit Substitutions On a Logical Foundation for Explicit Substitutions Frank Pfenning Carnegie Mellon University Joint Invited Talk Typed Lambda Calculi and Applications (TLCA 07) Rewriting Techniques and Applications (RTA

More information

Introduction to Logic in Computer Science: Autumn 2006

Introduction to Logic in Computer Science: Autumn 2006 Introduction to Logic in Computer Science: Autumn 2006 Ulle Endriss Institute for Logic, Language and Computation University of Amsterdam Ulle Endriss 1 Plan for Today Today s class will be an introduction

More information

Chapter 3: Propositional Calculus: Deductive Systems. September 19, 2008

Chapter 3: Propositional Calculus: Deductive Systems. September 19, 2008 Chapter 3: Propositional Calculus: Deductive Systems September 19, 2008 Outline 1 3.1 Deductive (Proof) System 2 3.2 Gentzen System G 3 3.3 Hilbert System H 4 3.4 Soundness and Completeness; Consistency

More information

distinct models, still insists on a function always returning a particular value, given a particular list of arguments. In the case of nondeterministi

distinct models, still insists on a function always returning a particular value, given a particular list of arguments. In the case of nondeterministi On Specialization of Derivations in Axiomatic Equality Theories A. Pliuskevicien_e, R. Pliuskevicius Institute of Mathematics and Informatics Akademijos 4, Vilnius 2600, LITHUANIA email: logica@sedcs.mii2.lt

More information

Type Systems as a Foundation for Reliable Computing

Type Systems as a Foundation for Reliable Computing Type Systems as a Foundation for Reliable Computing Robert Harper Carnegie Mellon University Summer School on Reliable Computing University of Oregon July, 2005 References These lectures are based on the

More information

Logic: The Big Picture

Logic: 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 information

3 Propositional Logic

3 Propositional Logic 3 Propositional Logic 3.1 Syntax 3.2 Semantics 3.3 Equivalence and Normal Forms 3.4 Proof Procedures 3.5 Properties Propositional Logic (25th October 2007) 1 3.1 Syntax Definition 3.0 An alphabet Σ consists

More information

Todays programme: Propositional Logic. Program Fac. Program Specification

Todays programme: Propositional Logic. Program Fac. Program Specification Todays programme: Propositional Logic Familiarity with basic terminology of logics Syntax, logical connectives Semantics: models, truth, validity, logical consequence Proof systems: deductions, deductive

More information

A Formalised Proof of Craig s Interpolation Theorem in Nominal Isabelle

A Formalised Proof of Craig s Interpolation Theorem in Nominal Isabelle A Formalised Proof of Craig s Interpolation Theorem in Nominal Isabelle Overview We intend to: give a reminder of Craig s theorem, and the salient points of the proof introduce the proof assistant Isabelle,

More information

A Meta Linear Logical Framework

A Meta Linear Logical Framework A Meta Linear Logical Framework Andrew McCreight and Carsten Schürmann Yale University New Haven, CT, USA {aem carsten}@cs.yale.edu Abstract. Over the years, logical framework research has produced various

More information

Logic for Computer Science - Week 4 Natural Deduction

Logic for Computer Science - Week 4 Natural Deduction Logic for Computer Science - Week 4 Natural Deduction 1 Introduction In the previous lecture we have discussed some important notions about the semantics of propositional logic. 1. the truth value of a

More information

Propositional Logic: Deductive Proof & Natural Deduction Part 1

Propositional Logic: Deductive Proof & Natural Deduction Part 1 Propositional Logic: Deductive Proof & Natural Deduction Part 1 CS402, Spring 2016 Shin Yoo Deductive Proof In propositional logic, a valid formula is a tautology. So far, we could show the validity of

More information

Structuring Logic with Sequent Calculus

Structuring Logic with Sequent Calculus Structuring Logic with Sequent Calculus Alexis Saurin ENS Paris & École Polytechnique & CMI Seminar at IIT Delhi 17th September 2004 Outline of the talk Proofs via Natural Deduction LK Sequent Calculus

More information

Some Recent Logical Frameworks

Some Recent Logical Frameworks Some Recent Logical Frameworks Randy Pollack LFCS, University of Edinburgh Version of September 13, 2010 Outline Edinburgh Logical Framework (ELF) (LICS 1987) Reminder by Example Some Problems with ELF

More information

Supplementary Notes on Inductive Definitions

Supplementary Notes on Inductive Definitions Supplementary Notes on Inductive Definitions 15-312: Foundations of Programming Languages Frank Pfenning Lecture 2 August 29, 2002 These supplementary notes review the notion of an inductive definition

More information

On 3-valued paraconsistent Logic Programming

On 3-valued paraconsistent Logic Programming Marcelo E. Coniglio Kleidson E. Oliveira Institute of Philosophy and Human Sciences and Centre For Logic, Epistemology and the History of Science, UNICAMP, Brazil Support: FAPESP Syntax Meets Semantics

More information

Logic, Human Logic, and Propositional Logic. Human Logic. Fragments of Information. Conclusions. Foundations of Semantics LING 130 James Pustejovsky

Logic, Human Logic, and Propositional Logic. Human Logic. Fragments of Information. Conclusions. Foundations of Semantics LING 130 James Pustejovsky Logic, Human Logic, and Propositional Logic Foundations of Semantics LING 3 James Pustejovsky Human Logic Thanks to Michael Genesereth of Stanford for use of some slides Fragments of Information Conclusions

More information

Modal logics: an introduction

Modal logics: an introduction Modal logics: an introduction Valentin Goranko DTU Informatics October 2010 Outline Non-classical logics in AI. Variety of modal logics. Brief historical remarks. Basic generic modal logic: syntax and

More information

Compositionality in SLD-derivations and their abstractions Marco Comini, Giorgio Levi and Maria Chiara Meo Dipartimento di Informatica, Universita di

Compositionality in SLD-derivations and their abstractions Marco Comini, Giorgio Levi and Maria Chiara Meo Dipartimento di Informatica, Universita di Compositionality in SLD-derivations and their abstractions Marco Comini Giorgio Levi and Maria Chiara Meo Dipartimento di Informatica Universita di Pisa Corso Italia 40 56125 Pisa Italy fcomini levi meog@di.unipi.it

More information