Problem solving with interactive theorem-proving a case study

Size: px
Start display at page:

Download "Problem solving with interactive theorem-proving a case study"

Transcription

1 2016 4th Intl Conf on Applied Computing and Information Technology/3rd Intl Conf on Computational Science/Intelligence and Applied Informatics/1st Intl Conf on Big Data, Cloud Computing, Data Science & Engineering Problem solving with interactive theorem-proving a case study Shivashish Jaishy, Nobuhiro Ito, and Yoshinobu Kawabe Department of Information Science, Aichi Institute of Technology 1247 Yachigusa Yakusa-cho, Toyota, Aichi, Japan { shivashish.jaishy, n-ito, kawabe }@kwb.aitech.ac.jp Abstract With the development of artificial intelligence technology over several decades, it is getting possible to find useful knowledge from an enormous amount of data. Also, it is getting possible to solve the difficult problems which cannot be solved by a human r. Actually, a Japanese research project called Todai Robot Project tries to develop an intelligent robot that passes an entrance examination of the University of Tokyo. A case study was conducted to solve a prep school s practice test with an artificial intelligence technology called Torobo-kun. It attracted great attention because of the good results. It is interesting to clarify the kind of an entrance exam problem which can be solved with a computer-assisted theorem proving tool. In this study, we conduct a case study to solve an entrance exam of a top university with an interactive theorem proving tool. Specifically, we employ Larch Prover (LP) which is a theorem proving tool based on equational theory and we solve a Kyushu University s entrance exam problem of mathematics. Keywords interactive theorem proving, problem solving, artificial intelligence I. INTRODUCTION With the development of artificial intelligence technologies over several decades, it is getting possible to find useful knowledge from an enormous amount of data; also, it is getting possible to solve difficult problems which cannot be solved by a human r. Actually, for computer games such as chess, shogi (Japanese chess) etc., there have appeared computer programs that beat a human masterie. Moreover, in the field of artificial intelligence, there are many research projects such as RoboCup [1][2][3], a worldwide research project to develop a strong robot team of association football. We can see that there is a growing interest about what is achievable by artificial intelligence technologies. In Japan, a research project called Todai Robot Project [4][5] is well-known. This project tries to develop an intelligent robot that passes an entrance examination of the University of Tokyo. The artificial intelligence technology in this project is called Torobo-kun, and it attracts a great attention since Torobo-kun succesfully solved a prep school s practice test with good results. However, it is still difficult to solve enterance exam problems fully automatically; in practice, it is required for a human operator to translate the exam problem into a form which a computer tool can deal with. It is interesting to clarify what kind of an entrance exam problem can be solved with a computer-assisted theorem proving tool. In this study, we conduct a case study to solve an entrance exam of a top university with an interactive theorem proving tool. Many theorem-proving tools are known; for example, Coq [6] and Isabelle [7]. This study employs Larch Prover (LP) [8], and we solve a Kyushu University s entrance exam problem of mathematics. LP is a theorem proving tool based on equational theory and it can handle first-order predicate logic s formulae. In this sense, the language of LP is restricted from that of Coq or Isabelle. However, by restricting the language we see that LP can many formulae automatically; from this reason we employ LP in this study. This paper is organized as follows. Section II describes an overview of Larch Prover, and we also describe three problems to solve. In Section III, we describe FOL formulae of the problems and we give some lemmata and proofs for the first two problems. We could not solve the final problem in Section III since some important proof method is not provided in LP. Finally, in Section IV we give the proof method and we the final problem. II. A. Larch theorem r PRELIMINARIES Larch Prover (LP) [8] is a theorem proving tool based on many-sorted first-order predicate logic and it can deal with equations. The implementation of Larch Prover is based on the theory of term rewriting systems [9], so the basic operation of Larch Prover is to reduce a formula into another simpler formula. Hence, in proving some mathematical problem with Larch Prover, a user can concentrate on the essential portion of the problem. Larch Prover is applicable to many sorts of problems; for example, LP is employed for a formal verification tool [10] for distributed algorithms /16 $ IEEE DOI /ACIT-CSII-BCD

2 Proof by induction ( res by ind on A command): s the conjecture by induction on the structure of terms; Proof by generalization ( res by gen A from B command): if the conjecture has the form \A A P, then LP removes the universal quantifier \A by replacing all the free occurrences of A in P with a fresh constant B. Fig. 1. Proving with Larch Prover Figure 1 shows a series of user s operations. At first a user gives some definitions and axioms to LP s memory. The axioms are equations which are transformed into rewrite rules. And then, the user gives LP a conjecture to. When we some conjecture, two or more proof methods may be applicable; for example, if a conjecture has the form of implication P => Q then we can assume P and a subgoal Q, but it might be possible to consider cases where other formulae are true. If there are two or more proof methods applicable, the proof method is chosen by a user of LP. That is, we can see that LP is a tool to assist a user, rather than a tool to conjectures fully automatically. Larch Prover has many proof methods and we show several useful proof methods below: Proof by normalization: translates a formula with rewrite rules automatically and if a conjecture normalizes to true, then the conjecture is a theorem; Proof by cases ( res by cases A command): s the conjecture by dividing into two cases whether proposition A is true or not; Proof by contradiction ( res by contra command): adds equation P = false to LP s memory, where P is a formlua for the conjecture to and tries to lead a contradiction (true = false); Proof of implications ( res by => command): if the conjecture has the form P => A, then LP adds equation P = true to the memory and s subgoal Q; Proof by specialization ( res by spec A to B command): if the conjecture has the form \E A P, then LP removes the existential quantifier \E by replacing all the free occurrences of A in P with B; B. Problem to This study deals with a mathematical question employed for an entrance examination of Kyushu University, which is a top university in Japan. The question is with regard to a property of natural numbers and there are three subproblems. The problems are as follows. Prove the following propositions. (1) Let a be a natural number. When a 2 is divided by 3, the remainder is either 0 or 1; (2) For any natural numbers a, b and c, if we have a 2 + b 2 = 3c 2 then all of a, b and c are multiples of 3; and (3) For any natural numbers a, b and c, a 2 +b 2 = 3c 2 implies a = b = c =0. III. THEOREM-PROVING MATH PROBLEMS A. FOL formulae Let N be the set of natural numbers. We can describe the problems as first-order logic formulae: (1) a N [(a a) mod 3 = 0 (a a) mod 3=1]; (2) a, b, c N[((a a) +(b b) =3 (c c)) = ((3 a) (3 b) (3 c)) ]; and (3) a, b, c N[((a a) +(b b) =3 (c c)) = (a = b = c =0)]. where a mod b is the remainder of dividing a by b. That is, p mod q = r iff k N[ p =(k q)+r ] 0 r r<q. In this study, we use (q p) to denote mod(p, q) =0for any natural numbers p and q. This means p is a multiple of q. The definitions of mod and are described in the Larch s language as follows: asserts with x, y, z, p, q, r, k: Nat (\A p:nat (\A q:nat (\A r:nat ((mod(p, q) = r) <=> ( (\E k:nat (p = (k*q) + r)) /\ 0 <= r /\ r < q))))) ; (\A p:nat (\A q:nat ((q p) <=> (mod(p, q) = 0)))). 302

3 B. Lemmata to We need several propositions to (1), (2) and (3). These propositions are basic properties of natural numbers; for example, we need a proposition 3 is greater than 0. Larch Prover requires formulae of such basic propositions to the problems. We can see the lemmata below: dec op 3:->Nat dec op 4:->Nat assert 2 = 1+1; assert 3 = 2+1; assert 4 = 3+1; succ(2) > 0 succ(2) > 1 2 > 0 (\A a:nat ((a > 0) <=> (a = 0))) (\A x:nat (x+2 = succ(succ(x)))) (\A x:nat (\A y:nat ((x+x+x = y+y+y) <=> (x = y)))) (\A x:nat ( mod(x, 3) = 0 \/ mod(x, 3) = 1 \/ mod(x, 3) = 2)) (\A x:nat (\A y:nat ( (3*x = (3*y)+1) /\ (3*x = (3*y)+2) /\ ((3*x)+1 = (3*y)+2)))) (\A a:nat ((a*a = 0) <=> (a = 0))) where succ is an operator for the successor function; that is, succ(x) = x+1. C. Proving problem (1) In this section we Problem (1). The problem is described in the Larch s language as follows. (\A a:nat ( mod(a*a, 3) = 0 \/ mod(a*a, 3) = 1)) This conjecture is d with the following Larch s proof script: rewrite con with formula rewrite con with formula res by ind on a res by spec k to 0 res by case (\E x:nat (ac = 3*x)) dec op xc:->nat fix x as xc in *hyp res by case (\E x:nat (ac = (3*x)+1)) dec op xc:->nat fix x as xc in *hyp make passive ((c-o(\/) / c-o(succ)) c-o(=>)) c-o(*) instantiate x by ac in ((c-o(\/) / c-o (succ)) c-o(=>)) c-o(*) dec op kc:->nat fix k as kc in (mathproblems* / c-o(ac )) *inducthyp res by spec k to (3+((3*(kc*kc))+((3*k c)+(3*kc)))) Larch Prover s (1) by induction on natural number a; see res by ind on a command in this proof script. The variable a is replaced with a fresh constant ac and further we the conjecture by dividing into three cases: Case 1: ac is a multiple of 3 (res by case (\E x:nat (ac = 3*x))); Case 2: The remainder is 1 when ac is divided by 3 (res by case (\E x:nat (ac = (3*x)+1))); Case 3: Otherwise. In all cases we can the formula for Problem (1). D. Proving problem (2) Problem (2) is described in the Larch s language as follows. => ( (3 a) /\ (3 b) /\ (3 c)))))) To this, we need additional lemmata 303

4 (\A a:nat (\A b:nat (a+b = 0 <=> (a = 0 /\ b = 0)))), (\A a:nat ((3 (a*a)) <=> (3 a))), and (\A a:nat (\A b:nat (( (3 (a*a)) /\ (3 (b*b))) <=> (3 ((a*a) + (b*b)))))). We omit the entire proof script for them due to space limitation. A human r first tries to Problem (2) without these lemmata, but he/she recognizes that the goal cannot be solved without them. For example, suppose that an equation a+b = 0 is true and a human r finds the formula in LP s memory; note that a and b are natural numbers. Intuitively, we can see that (i) a = 0 and b = 0 are true; and (ii) the proof for Problem (2) is easier if we employ a = 0 and b = 0 rather than a+b = 0. Hence, the r concludes that a lemma (\A a:nat (\A b:nat (a+b = 0 <=> (a = 0 /\ b = 0)))) should be introduced. We can see that the formula for Problem (2) has three variables a, b and c. To the formula, we first d a proposition for variables a and b and another proposition for variable c. The proposition with regard to variables a and b is => ((3 a) /\ (3 b)))))) The following is a proof script to the above formula. res by ind on c res by => (3 ((ac*ac) + (bc*bc))) make passive ((mathproblems / c-o(*)) / c-o(+)) / c-o(/\) rewrite con with reversed ((mathproble ms / c-o(*)) / c-o(+)) / c-o(/\) res by spec k to (1+(cc*cc)+(cc+cc)) For variables c we the following proposition; we also describe the entire proof script below. => (3 c))))) res by ind on c res by => (3 ((ac*ac) + (bc*bc))) make passive ((mathproblems / c-o(*)) / c-o(+)) / c-o(/\) rewrite con with reversed ((mathproble ms / c-o(*)) / c-o(+)) / c-o(/\) res by spec k to (1+(cc*cc)+(cc+cc)) dec op kc:->nat fix k as kc in c-o(ac) dec op k c:->nat fix k as k c in c-o(bc) make passive (mathproblems c-o(*)) c -o(succ) instantiate x by ((3*(k c*k c))+(3*(kc*kc))), y by (1+(cc*cc)+(cc+cc)) in (mathproblems c-o(*)) c-o(succ) (3 ((cc+1)*(cc+1))) res by spec k to ((k c*k c)+(kc*kc)) make passive ((((mathproblems/c-o(+))/co(*)) c-o(cc)) c-o(/\)) c-o(\/) instantiate a by (cc+1) in ((((mathproblems / c-o(+)) / c-o(*) ) c-o(cc)) c-o(/\)) c-o(\/) Consequently, Problem (2) is d with Larch Prover. => ( (3 a) /\ (3 b) /\ (3 c)))))) res by => \E k (ac = k + k + k) /\ \E k (bc = k + k + k) make passive (mathproblems / c-o(*)) / c-o(+) instantiate a by ac, b by bc, c by cc in (mathproblems / c-o(*)) / c-o(+) make passive (mathproblems / c-o(*)) / c -o(+) instantiate a by ac, b by bc, c by cc in (mathproblems / c-o(*)) / c-o(+) A. Formula to IV. PROVING PROBLEM (3) Problem (3) is described in the Larch s language as follows. 304

5 => ( a = 0 /\ b = 0 /\ c = 0))))) In this study we first tried a command res by ind on c in proving the above formula by induction on natural number c. For the base case, we have c = 0 and the proof is straightforward. Actually, Larch Prover can the conjecture fully automatically. For the case c 0, we tried a proof by contradiction with the command below: res by contra. However, we could not the conjecture only with lemmata in Section III-B. This means that we need to look for an additional lemma to. Larch Prover found the following facts with regard to variables a, b and c: 1) a, b, c+1 are multiples of 3; 2) If we write a =3 ka, b =3 kb and c +1= 3 kc, wehave ka 2 + kb 2 =3 kc 2 ; 3) From the result of Problem (2), ka, kb and kc are multiples of 3; 4) c > kc holds; 5) If we write ka =3 k a, kb =3 k b and kc =3 k c, then we have 6) kc k c holds. (k a) 2 +(k b) 2 =3 (k c) 2 ; From conditions in 2. and 5., we have: (ka ka)+(kb kb) =3 (kc kc), (k a k a)+(k b k b) =3 (k c k c), ka =3 k a, kb =3 k b and kc =3 k c. From condition 6., we have either kc = k c or kc > k c. If kc = k c holds, then we have kc = 0 from kc =3 k c. This leads to a contradiction since there is no natural number c such that c +1=3 kc =0. Thus, the proof by contradiction method succeeds for the case of kc = k c. Ifkc > k c holds, then in the same way as we defined k c from kc, we can define k c, k c,. such that k c = 3 k c, k c = 3 k c, However, we deal with natural numbers so this is not possible. That is, the proof by contradiction method also succeeds for kc > k c. B. Introducing proof by infinite descent The proof method described in the previous section is called a proof by infinite descent. This proof method is: For any natural number p, ifwehave If P (p) holds then there is some natural number q with q<pand P (q). then, we have P (r) for any natural number r. The formula P [( p (P (p) = ( q (q <p P (q))))) = ( r P (r))] formulates the above condition, where p, q and r are any natural numbers and P (x) is a proposition whose parameter x is a natural number. Larch Prover is a theorem proving tool based on firstorder predicate logic, but the above formula is not a firstorder predicate logic s formula, since P is a variable. Thus, we cannot deal with the above formula directly. However, in this study it suffices to use some specific P for Problem (3). From the discussion in the previous section, we define P (p) as p > 0 holds and there are natural numbers a and b with a 2 + b 2 =3 p 2. With Larch s language, this condition is described as: dec op P: Nat -> Bool assert P(c) <=> ( (c > 0) /\ (\E a:nat (\E b:nat ((a*a) + (b*b) = 3*(c*c))))) We introduced a condition for the proof by infinite descent as follows: set name inf_descent assert (\A p:nat (P(p) => (\E q:nat (q < p /\ P(q))))) => (\A r:nat ( P(r))) Note that in this definition predicate P is not a variable but a constant. With Larch Prover, we can the following lemma: 305

6 (\A p:nat (P(p) => (\E q:nat (q < p /\ P(q))))) Finally, for Problem (3), we can : => ( a = 0 /\ b = 0 /\ c = 0))))) The the proof script is as follows: dec op cc:-> Nat res by gen c from cc res by case cc = 0 make passive inf_descent instantiate r by cc in inf_descent [2] D. Nardi and L. Iocchi, Artificial Intelligence in RoboCup, Reasoning, Action and Interaction in AI Theories and Systems, LNCS 4155, pp , [3] C. Skinner and S. Ramchurn, The RoboCup Rescue Simulation Platform, In Proc. of AAMAS 10, Vol.1, pp , [4] Todai Robot Project, [5] T. Uno, Torobo-kun from the Perspective of Algorithms ( ) In proceedings of the 27th Workshop on Circuits and Systems, pp , (In Japanese) [6] The Coq Proof Assistant, [7] Isabelle, [8] S. J. Garland, J. V. Guttag and J. J. Horning, An overview of Larch, LNCS 693, pp Springer, [9] F. Baader and T. Nipkow, Term Rewriting And All That, Cambridge University Press, [10] A. Bogdanov, Formal verification of simulations between I/Oautomata, Master s thesis, MIT, [11] Theorem proving and rs for reliable theory and implementations (TPP2014), In this script we have two cases where c =0or not; in the case of c 0we employ the lemma of the infinite descent method. V. CONCLUSION In this study we applied a theorem proving tool for solving a math problem of an entrance examination. We employed Larch Prover, and we described a complete proof script for an exam of Kyushu University, which is a top university in Japan. The same problem was dealt with in [11], where other interactive theorem proving tools such as Coq and Isabelle were used. We can see that these theorem rs are based on higher-order logic, while LP s language is based on first-order predicate logic. In this sense, the language of LP is restricted from that of Coq or Isabelle. However, by restricting the language we see that LP can many formulae automatically. This is a main reason to employ LP in this study. This study has demonstrated that we can a difficult mathematical problem with a theorem-proving tool that is based on a lighter framework. ACKNOWLEDGMENT This work was supported by JSPS KAKENHI Grant Number REFERENCES [1] H. Kitano, M. Asada, Y. Kuniyoshi, I. Noda, E. Osawa and H. Matsubara, RoboCup: A Challenge Problem for AI, AI Magazine, 18(1), pp ,

Sec$on Summary. Mathematical Proofs Forms of Theorems Trivial & Vacuous Proofs Direct Proofs Indirect Proofs

Sec$on Summary. Mathematical Proofs Forms of Theorems Trivial & Vacuous Proofs Direct Proofs Indirect Proofs Section 1.7 Sec$on Summary Mathematical Proofs Forms of Theorems Trivial & Vacuous Proofs Direct Proofs Indirect Proofs Proof of the Contrapositive Proof by Contradiction 2 Proofs of Mathema$cal Statements

More information

Review. Propositions, propositional operators, truth tables. Logical Equivalences. Tautologies & contradictions

Review. Propositions, propositional operators, truth tables. Logical Equivalences. Tautologies & contradictions Review Propositions, propositional operators, truth tables Logical Equivalences. Tautologies & contradictions Some common logical equivalences Predicates & quantifiers Some logical equivalences involving

More information

Automated Proving in Geometry using Gröbner Bases in Isabelle/HOL

Automated Proving in Geometry using Gröbner Bases in Isabelle/HOL Automated Proving in Geometry using Gröbner Bases in Isabelle/HOL Danijela Petrović Faculty of Mathematics, University of Belgrade, Serbia Abstract. For several decades, algebraic method have been successfully

More information

The TLA + proof system

The TLA + proof system The TLA + proof system Stephan Merz Kaustuv Chaudhuri, Damien Doligez, Leslie Lamport INRIA Nancy & INRIA-MSR Joint Centre, France Amir Pnueli Memorial Symposium New York University, May 8, 2010 Stephan

More information

Completeness for FOL

Completeness for FOL Completeness for FOL Overview Adding Witnessing Constants The Henkin Theory The Elimination Theorem The Henkin Construction Lemma 12 This lemma assures us that our construction of M h works for the atomic

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

02 The Axiomatic Method

02 The Axiomatic Method CAS 734 Winter 2005 02 The Axiomatic Method Instructor: W. M. Farmer Revised: 11 January 2005 1 What is Mathematics? The essence of mathematics is a process consisting of three intertwined activities:

More information

Readings: Conjecture. Theorem. Rosen Section 1.5

Readings: Conjecture. Theorem. Rosen Section 1.5 Readings: Conjecture Theorem Lemma Lemma Step 1 Step 2 Step 3 : Step n-1 Step n a rule of inference an axiom a rule of inference Rosen Section 1.5 Provide justification of the steps used to show that a

More information

First Order Logic (FOL)

First Order Logic (FOL) First Order Logic (FOL) CE417: Introduction to Artificial Intelligence Sharif University of Technology Spring 2013 Soleymani Course material: Artificial Intelligence: A Modern Approach, 3 rd Edition, Chapter

More information

Supplementary Logic Notes CSE 321 Winter 2009

Supplementary Logic Notes CSE 321 Winter 2009 1 Propositional Logic Supplementary Logic Notes CSE 321 Winter 2009 1.1 More efficient truth table methods The method of using truth tables to prove facts about propositional formulas can be a very tedious

More information

Maximal Introspection of Agents

Maximal Introspection of Agents Electronic Notes in Theoretical Computer Science 70 No. 5 (2002) URL: http://www.elsevier.nl/locate/entcs/volume70.html 16 pages Maximal Introspection of Agents Thomas 1 Informatics and Mathematical Modelling

More information

07 Practical Application of The Axiomatic Method

07 Practical Application of The Axiomatic Method CAS 701 Fall 2002 07 Practical Application of The Axiomatic Method Instructor: W. M. Farmer Revised: 28 November 2002 1 What is the Axiomatic Method? 1. A mathematical model is expressed as a set of axioms

More information

Introduction to Kleene Algebra Lecture 15 CS786 Spring 2004 March 15 & 29, 2004

Introduction to Kleene Algebra Lecture 15 CS786 Spring 2004 March 15 & 29, 2004 Introduction to Kleene Algebra Lecture 15 CS786 Spring 2004 March 15 & 29, 2004 Completeness of KAT In this lecture we show that the equational theories of the Kleene algebras with tests and the star-continuous

More information

The Foundations: Logic and Proofs. Chapter 1, Part III: Proofs

The Foundations: Logic and Proofs. Chapter 1, Part III: Proofs The Foundations: Logic and Proofs Chapter 1, Part III: Proofs Summary Valid Arguments and Rules of Inference Proof Methods Proof Strategies Rules of Inference Section 1.6 Section Summary Valid Arguments

More information

logical verification lecture program extraction and prop2

logical verification lecture program extraction and prop2 logical verification lecture 7 2017-05-04 program extraction and prop2 overview program extraction program extraction: examples verified programs: alternative approach formulas of prop2 terminology proofs

More information

CSE 20 DISCRETE MATH. Fall

CSE 20 DISCRETE MATH. Fall CSE 20 DISCRETE MATH Fall 2017 http://cseweb.ucsd.edu/classes/fa17/cse20-ab/ Today's learning goals Distinguish between a theorem, an axiom, lemma, a corollary, and a conjecture. Recognize direct proofs

More information

CMPSCI 601: Tarski s Truth Definition Lecture 15. where

CMPSCI 601: Tarski s Truth Definition Lecture 15. where @ CMPSCI 601: Tarski s Truth Definition Lecture 15! "$#&%(') *+,-!".#/%0'!12 43 5 6 7 8:9 4; 9 9 < = 9 = or 5 6?>A@B!9 2 D for all C @B 9 CFE where ) CGE @B-HI LJKK MKK )HG if H ; C if H @ 1 > > > Fitch

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

Propositional Reasoning

Propositional Reasoning Propositional Reasoning CS 440 / ECE 448 Introduction to Artificial Intelligence Instructor: Eyal Amir Grad TAs: Wen Pu, Yonatan Bisk Undergrad TAs: Sam Johnson, Nikhil Johri Spring 2010 Intro to AI (CS

More information

Computer-Checked Meta-Logic

Computer-Checked Meta-Logic 1 PART Seminar 25 February 2015 Computer-Checked Meta-Logic Jørgen Villadsen jovi@dtu.dk Abstract Over the past decades there have been several impressive results in computer-checked meta-logic, including

More information

CSE 20 DISCRETE MATH. Winter

CSE 20 DISCRETE MATH. Winter CSE 20 DISCRETE MATH Winter 2017 http://cseweb.ucsd.edu/classes/wi17/cse20-ab/ Today's learning goals Distinguish between a theorem, an axiom, lemma, a corollary, and a conjecture. Recognize direct proofs

More information

Math.3336: Discrete Mathematics. Proof Methods and Strategy

Math.3336: Discrete Mathematics. Proof Methods and Strategy Math.3336: Discrete Mathematics Proof Methods and Strategy Instructor: Dr. Blerina Xhabli Department of Mathematics, University of Houston https://www.math.uh.edu/ blerina Email: blerina@math.uh.edu Fall

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

MAT2345 Discrete Math

MAT2345 Discrete Math Fall 2013 General Syllabus Schedule (note exam dates) Homework, Worksheets, Quizzes, and possibly Programs & Reports Academic Integrity Do Your Own Work Course Web Site: www.eiu.edu/~mathcs Course Overview

More information

Evidential Paradigm and Intelligent Mathematical Text Processing

Evidential Paradigm and Intelligent Mathematical Text Processing Evidential Paradigm and Intelligent Mathematical Text Processing Alexander Lyaletski 1, Anatoly Doroshenko 2, Andrei Paskevich 1,3, and Konstantin Verchinine 3 1 Taras Shevchenko Kiev National University,

More information

Dismatching and Local Disunification in EL

Dismatching and Local Disunification in EL Dismatching and Local Disunification in EL (Extended Abstract) Franz Baader, Stefan Borgwardt, and Barbara Morawska Theoretical Computer Science, TU Dresden, Germany {baader,stefborg,morawska}@tcs.inf.tu-dresden.de

More information

Code Generation for a Simple First-Order Prover

Code Generation for a Simple First-Order Prover Code Generation for a Simple First-Order Prover Jørgen Villadsen, Anders Schlichtkrull, and Andreas Halkjær From DTU Compute, Technical University of Denmark, 2800 Kongens Lyngby, Denmark Abstract. We

More information

Introduction to Kleene Algebra Lecture 14 CS786 Spring 2004 March 15, 2004

Introduction to Kleene Algebra Lecture 14 CS786 Spring 2004 March 15, 2004 Introduction to Kleene Algebra Lecture 14 CS786 Spring 2004 March 15, 2004 KAT and Hoare Logic In this lecture and the next we show that KAT subsumes propositional Hoare logic (PHL). Thus the specialized

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

Proofs. Joe Patten August 10, 2018

Proofs. Joe Patten August 10, 2018 Proofs Joe Patten August 10, 2018 1 Statements and Open Sentences 1.1 Statements A statement is a declarative sentence or assertion that is either true or false. They are often labelled with a capital

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

Extensions to the Estimation Calculus

Extensions to the Estimation Calculus Extensions to the Estimation Calculus Jeremy Gow, Alan Bundy and Ian Green Institute for Representation and Reasoning, Division of Informatics, University of Edinburgh, 80 South Bridge, Edinburgh EH1 1HN,

More information

First Order Logic (FOL) 1 znj/dm2017

First Order Logic (FOL) 1   znj/dm2017 First Order Logic (FOL) 1 http://lcs.ios.ac.cn/ znj/dm2017 Naijun Zhan March 19, 2017 1 Special thanks to Profs Hanpin Wang (PKU) and Lijun Zhang (ISCAS) for their courtesy of the slides on this course.

More information

Tools for reasoning: Logic. Ch. 1: Introduction to Propositional Logic Truth values, truth tables Boolean logic: Implications:

Tools for reasoning: Logic. Ch. 1: Introduction to Propositional Logic Truth values, truth tables Boolean logic: Implications: Tools for reasoning: Logic Ch. 1: Introduction to Propositional Logic Truth values, truth tables Boolean logic: Implications: 1 Why study propositional logic? A formal mathematical language for precise

More information

Automata Theory and Formal Grammars: Lecture 1

Automata Theory and Formal Grammars: Lecture 1 Automata Theory and Formal Grammars: Lecture 1 Sets, Languages, Logic Automata Theory and Formal Grammars: Lecture 1 p.1/72 Sets, Languages, Logic Today Course Overview Administrivia Sets Theory (Review?)

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

1. Propositions: Contrapositives and Converses

1. Propositions: Contrapositives and Converses Preliminaries 1 1. Propositions: Contrapositives and Converses Given two propositions P and Q, the statement If P, then Q is interpreted as the statement that if the proposition P is true, then the statement

More information

Propositional and Predicate Logic

Propositional and Predicate Logic 8/24: pp. 2, 3, 5, solved Propositional and Predicate Logic CS 536: Science of Programming, Spring 2018 A. Why Reviewing/overviewing logic is necessary because we ll be using it in the course. We ll be

More information

Why Learning Logic? Logic. Propositional Logic. Compound Propositions

Why Learning Logic? Logic. Propositional Logic. Compound Propositions Logic Objectives Propositions and compound propositions Negation, conjunction, disjunction, and exclusive or Implication and biconditional Logic equivalence and satisfiability Application of propositional

More information

THE LOGIC OF QUANTIFIED STATEMENTS. Statements with Multiple Quantifiers. Statements with Multiple Quantifiers CHAPTER 3 SECTION 3.

THE LOGIC OF QUANTIFIED STATEMENTS. Statements with Multiple Quantifiers. Statements with Multiple Quantifiers CHAPTER 3 SECTION 3. CHAPTER 3 THE LOGIC OF QUANTIFIED STATEMENTS SECTION 3.3 Statements with Multiple Quantifiers Copyright Cengage Learning. All rights reserved. Copyright Cengage Learning. All rights reserved. When a statement

More information

Mathematical Logic. Reasoning in First Order Logic. Chiara Ghidini. FBK-IRST, Trento, Italy

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

Chapter 11: Automated Proof Systems (1)

Chapter 11: Automated Proof Systems (1) Chapter 11: Automated Proof Systems (1) SYSTEM RS OVERVIEW Hilbert style systems are easy to define and admit a simple proof of the Completeness Theorem but they are difficult to use. Automated systems

More information

HOW TO FACILITATE THE PROOF OF THEORIES BY USING THe INDUCTION MATCHING. AND BY GENERALIZATION» Jacqueline Castaing

HOW TO FACILITATE THE PROOF OF THEORIES BY USING THe INDUCTION MATCHING. AND BY GENERALIZATION» Jacqueline Castaing HOW TO FACILITATE THE PROOF OF THEORIES BY USING THe INDUCTION MATCHING. AND BY GENERALIZATION» Jacqueline Castaing IRI Bat 490 Univ. de Pans sud F 9140b ORSAY cedex ABSTRACT In this paper, we show how

More information

Halting and Equivalence of Program Schemes in Models of Arbitrary Theories

Halting and Equivalence of Program Schemes in Models of Arbitrary Theories Halting and Equivalence of Program Schemes in Models of Arbitrary Theories Dexter Kozen Cornell University, Ithaca, New York 14853-7501, USA, kozen@cs.cornell.edu, http://www.cs.cornell.edu/~kozen In Honor

More information

Fundamentals of Software Engineering

Fundamentals of Software Engineering Fundamentals of Software Engineering First-Order Logic Ina Schaefer Institute for Software Systems Engineering TU Braunschweig, Germany Slides by Wolfgang Ahrendt, Richard Bubel, Reiner Hähnle (Chalmers

More information

On the Progression of Situation Calculus Basic Action Theories: Resolving a 10-year-old Conjecture

On the Progression of Situation Calculus Basic Action Theories: Resolving a 10-year-old Conjecture On the Progression of Situation Calculus Basic Action Theories: Resolving a 10-year-old Conjecture Stavros Vassos and Hector J Levesque Department of Computer Science University of Toronto Toronto, ON,

More information

King s Research Portal

King s Research Portal King s Research Portal DOI: 10.1007/3-540-45616-3_7 Document Version Peer reviewed version Link to publication record in King's Research Portal Citation for published version (APA): Degtyarev, A., Fisher,

More information

Finite Automata Theory and Formal Languages TMV027/DIT321 LP Recap: Logic, Sets, Relations, Functions

Finite Automata Theory and Formal Languages TMV027/DIT321 LP Recap: Logic, Sets, Relations, Functions Finite Automata Theory and Formal Languages TMV027/DIT321 LP4 2017 Formal proofs; Simple/strong induction; Mutual induction; Inductively defined sets; Recursively defined functions. Lecture 3 Ana Bove

More information

KRIPKE S THEORY OF TRUTH 1. INTRODUCTION

KRIPKE S THEORY OF TRUTH 1. INTRODUCTION KRIPKE S THEORY OF TRUTH RICHARD G HECK, JR 1. INTRODUCTION The purpose of this note is to give a simple, easily accessible proof of the existence of the minimal fixed point, and of various maximal fixed

More information

Fundamentals of Software Engineering

Fundamentals of Software Engineering Fundamentals of Software Engineering First-Order Logic Ina Schaefer Institute for Software Systems Engineering TU Braunschweig, Germany Slides by Wolfgang Ahrendt, Richard Bubel, Reiner Hähnle (Chalmers

More information

- Introduction to propositional, predicate and higher order logics

- Introduction to propositional, predicate and higher order logics Lecture 1: Deductive Verification of Reactive Systems - Introduction to propositional, predicate and higher order logics - Deductive Invariance Proofs Cristina Seceleanu MRTC, MdH E-mail: cristina.seceleanu@mdh.se

More information

An Introduction to Proof Assistants

An Introduction to Proof Assistants An Introduction to Proof Assistants Patrick Schnider Student Seminar in Combinatorics: Mathematical Software, ETH Zürich 1 Motivation The development of proof assistants was motivated by the use of computers

More information

MATH 215 Final. M4. For all a, b in Z, a b = b a.

MATH 215 Final. M4. For all a, b in Z, a b = b a. MATH 215 Final We will assume the existence of a set Z, whose elements are called integers, along with a well-defined binary operation + on Z (called addition), a second well-defined binary operation on

More information

Mathematical Induction

Mathematical Induction Mathematical Induction MAT30 Discrete Mathematics Fall 018 MAT30 (Discrete Math) Mathematical Induction Fall 018 1 / 19 Outline 1 Mathematical Induction Strong Mathematical Induction MAT30 (Discrete Math)

More information

Gödel s Incompleteness Theorems

Gödel s Incompleteness Theorems Seminar Report Gödel s Incompleteness Theorems Ahmet Aspir Mark Nardi 28.02.2018 Supervisor: Dr. Georg Moser Abstract Gödel s incompleteness theorems are very fundamental for mathematics and computational

More information

Complete independence of an axiom system for central translations

Complete independence of an axiom system for central translations Note di Matematica ISSN 1123-2536, e-issn 1590-0932 Note Mat. 33 (2013) no. 2, 133 142. doi:10.1285/i15900932v33n2p133 Complete independence of an axiom system for central translations Jesse Alama Center

More information

Propositional and Predicate Logic

Propositional and Predicate Logic Propositional and Predicate Logic CS 536-05: Science of Programming This is for Section 5 Only: See Prof. Ren for Sections 1 4 A. Why Reviewing/overviewing logic is necessary because we ll be using it

More information

Proofs: A General How To II. Rules of Inference. Rules of Inference Modus Ponens. Rules of Inference Addition. Rules of Inference Conjunction

Proofs: A General How To II. Rules of Inference. Rules of Inference Modus Ponens. Rules of Inference Addition. Rules of Inference Conjunction Introduction I Proofs Computer Science & Engineering 235 Discrete Mathematics Christopher M. Bourke cbourke@cse.unl.edu A proof is a proof. What kind of a proof? It s a proof. A proof is a proof. And when

More information

Motivation. 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. 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

An Abstract Decision Procedure for a Theory of Inductive Data Types

An Abstract Decision Procedure for a Theory of Inductive Data Types An Abstract Decision Procedure for a Theory of Inductive Data Types lark Barrett Igor Shikanian Department of omputer Science ourant Institute of Mathematical Sciences New York University esare Tinelli

More information

Learning via Finitely Many Queries

Learning via Finitely Many Queries Learning via Finitely Many Queries Andrew C. Lee University of Louisiana at Lafayette 1 Abstract This work introduces a new query inference model that can access data and communicate with a teacher by

More information

Lecture Notes on Data Abstraction

Lecture Notes on Data Abstraction Lecture Notes on Data Abstraction 15-814: Types and Programming Languages Frank Pfenning Lecture 14 October 23, 2018 1 Introduction Since we have moved from the pure λ-calculus to functional programming

More information

A Semantic Criterion for Proving Infeasibility in Conditional Rewriting

A Semantic Criterion for Proving Infeasibility in Conditional Rewriting A Semantic Criterion for Proving Infeasibility in Conditional Rewriting Salvador Lucas and Raúl Gutiérrez DSIC, Universitat Politècnica de València, Spain 1 Introduction In the literature about confluence

More information

Toward Computing Conflict-Based Diagnoses in Probabilistic Logic Programming

Toward Computing Conflict-Based Diagnoses in Probabilistic Logic Programming Toward Computing Conflict-Based Diagnoses in Probabilistic Logic Programming Arjen Hommersom 1,2 and Marcos L.P. Bueno 2 1 Open University of the Netherlands 2 Radboud University Nijmegen, The Netherlands

More information

Mathematical Induction

Mathematical Induction Mathematical Induction MAT231 Transition to Higher Mathematics Fall 2014 MAT231 (Transition to Higher Math) Mathematical Induction Fall 2014 1 / 21 Outline 1 Mathematical Induction 2 Strong Mathematical

More information

CHAPTER 1. MATHEMATICAL LOGIC 1.1 Fundamentals of Mathematical Logic

CHAPTER 1. MATHEMATICAL LOGIC 1.1 Fundamentals of Mathematical Logic CHAPER 1 MAHEMAICAL LOGIC 1.1 undamentals of Mathematical Logic Logic is commonly known as the science of reasoning. Some of the reasons to study logic are the following: At the hardware level the design

More information

Mechanized Proof of Buchberger s Algorithm in ACL2

Mechanized Proof of Buchberger s Algorithm in ACL2 Mechanized Proof of Buchberger s Algorithm in ACL2 J.L. Ruiz-Reina, I. Medina and F. Palomo Departamento de Ciencias de la Computación e Inteligencia Artificial Univ. Sevilla Departamento de Lenguajes

More information

REPRESENTATION AND ANALYSIS OF ELECTRICAL CIRCUITS IN A DEDUCTIVE SYSTEM

REPRESENTATION AND ANALYSIS OF ELECTRICAL CIRCUITS IN A DEDUCTIVE SYSTEM REPRESENTATION AND ANALYSIS OF ELECTRICAL CIRCUITS IN A DEDUCTIVE SYSTEM Takushi Tanaka Artificial Intelligence Project Department of Computer Science, Yale University Box 2158 Yale Station New Haven,

More information

Examples for program extraction in Higher-Order Logic

Examples for program extraction in Higher-Order Logic Examples for program extraction in Higher-Order Logic Stefan Berghofer October 10, 2011 Contents 1 Auxiliary lemmas used in program extraction examples 1 2 Quotient and remainder 2 3 Greatest common divisor

More information

Analyse et Conception Formelle. Lesson 4. Proofs with a proof assistant

Analyse et Conception Formelle. Lesson 4. Proofs with a proof assistant Analyse et Conception Formelle Lesson 4 Proofs with a proof assistant T. Genet (ISTIC/IRISA) ACF-4 1 / 26 Prove logic formulas... to prove programs fun nth:: "nat => a list => a" where "nth 0 (x#_)=x"

More information

Packet #1: Logic & Proofs. Applied Discrete Mathematics

Packet #1: Logic & Proofs. Applied Discrete Mathematics Packet #1: Logic & Proofs Applied Discrete Mathematics Table of Contents Course Objectives Page 2 Propositional Calculus Information Pages 3-13 Course Objectives At the conclusion of this course, you should

More information

Resolution for mixed Post logic

Resolution for mixed Post logic Resolution for mixed Post logic Vladimir Komendantsky Institute of Philosophy of Russian Academy of Science, Volkhonka 14, 119992 Moscow, Russia vycom@pochtamt.ru Abstract. In this paper we present a resolution

More information

Bounded Relational Analysis of Free Data Types

Bounded Relational Analysis of Free Data Types Bounded Relational Analysis of Free Data Types A. Dunets S. Schellhorn W. Reif Department of Computer Science University of Augsburg The Second International Conference on Tests and Proofs Prato, Italy

More information

Proseminar on Semantic Theory Fall 2013 Ling 720 Propositional Logic: Syntax and Natural Deduction 1

Proseminar on Semantic Theory Fall 2013 Ling 720 Propositional Logic: Syntax and Natural Deduction 1 Propositional Logic: Syntax and Natural Deduction 1 The Plot That Will Unfold I want to provide some key historical and intellectual context to the model theoretic approach to natural language semantics,

More information

A Complete Proof of the Robbins Conjecture

A Complete Proof of the Robbins Conjecture A Complete Proof of the Robbins Conjecture Allen L. Mann May 25, 2003 1 Boolean algebra The language of Boolean algebra consists of two binary function symbols and, one unary function symbol, and two constants

More information

High Performance Absorption Algorithms for Terminological Reasoning

High Performance Absorption Algorithms for Terminological Reasoning High Performance Absorption Algorithms for Terminological Reasoning Ming Zuo and Volker Haarslev Concordia University, Montreal, Quebec, Canada {ming zuo haarslev}@cse.concordia.ca Abstract When reasoning

More information

Proofs of Mathema-cal Statements. A proof is a valid argument that establishes the truth of a statement.

Proofs of Mathema-cal Statements. A proof is a valid argument that establishes the truth of a statement. Section 1.7 Proofs of Mathema-cal Statements A proof is a valid argument that establishes the truth of a statement. Terminology A theorem is a statement that can be shown to be true using: definitions

More information

CS1021. Why logic? Logic about inference or argument. Start from assumptions or axioms. Make deductions according to rules of reasoning.

CS1021. Why logic? Logic about inference or argument. Start from assumptions or axioms. Make deductions according to rules of reasoning. 3: Logic Why logic? Logic about inference or argument Start from assumptions or axioms Make deductions according to rules of reasoning Logic 3-1 Why logic? (continued) If I don t buy a lottery ticket on

More information

Kreisel s Conjecture with minimality principle

Kreisel s Conjecture with minimality principle Kreisel s Conjecture with minimality principle Pavel Hrubeš November 9, 2008 Abstract We prove that Kreisel s Conjecture is true, if Peano arithmetic is axiomatised using minimality principle and axioms

More information

Equational Logic: Part 2. Roland Backhouse March 6, 2001

Equational Logic: Part 2. Roland Backhouse March 6, 2001 1 Equational Logic: Part 2 Roland Backhouse March 6, 2001 Outline 2 We continue the axiomatisation of the propositional connectives. The axioms for disjunction (the logical or of two statements) are added

More information

Software Engineering using Formal Methods

Software Engineering using Formal Methods Software Engineering using Formal Methods First-Order Logic Wolfgang Ahrendt 26th September 2013 SEFM: First-Order Logic 130926 1 / 53 Install the KeY-Tool... KeY used in Friday s exercise Requires: Java

More information

Nonmonotonic Reasoning in Description Logic by Tableaux Algorithm with Blocking

Nonmonotonic Reasoning in Description Logic by Tableaux Algorithm with Blocking Nonmonotonic Reasoning in Description Logic by Tableaux Algorithm with Blocking Jaromír Malenko and Petr Štěpánek Charles University, Malostranske namesti 25, 11800 Prague, Czech Republic, Jaromir.Malenko@mff.cuni.cz,

More information

Ramsey s Theorem in ProofPower (Draft)

Ramsey s Theorem in ProofPower (Draft) A1 L E M M Lemma 1 Ltd. c/o Interglossa 2nd Floor 31A Chain St. Reading Berks RG1 2HX Ramsey s Theorem in ProofPower (Draft) Abstract This paper is concerned with a ProofPower-HOL proof of the finite exponent

More information

A Tableau Calculus for Minimal Modal Model Generation

A Tableau Calculus for Minimal Modal Model Generation M4M 2011 A Tableau Calculus for Minimal Modal Model Generation Fabio Papacchini 1 and Renate A. Schmidt 2 School of Computer Science, University of Manchester Abstract Model generation and minimal model

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

1 Completeness Theorem for Classical Predicate

1 Completeness Theorem for Classical Predicate 1 Completeness Theorem for Classical Predicate Logic The relationship between the first order models defined in terms of structures M = [M, I] and valuations s : V AR M and propositional models defined

More information

03 Review of First-Order Logic

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

Discovering Classes of Strongly Equivalent Logic Programs with Negation as Failure in the Head

Discovering Classes of Strongly Equivalent Logic Programs with Negation as Failure in the Head Discovering Classes of Strongly Equivalent Logic Programs with Negation as Failure in the Head Jianmin Ji School of Computer Science and Technology University of Science and Technology of China Hefei,

More information

Section 2.2 Set Operations. Propositional calculus and set theory are both instances of an algebraic system called a. Boolean Algebra.

Section 2.2 Set Operations. Propositional calculus and set theory are both instances of an algebraic system called a. Boolean Algebra. Section 2.2 Set Operations Propositional calculus and set theory are both instances of an algebraic system called a Boolean Algebra. The operators in set theory are defined in terms of the corresponding

More information

Senior Math Circles Cryptography and Number Theory Week 2

Senior Math Circles Cryptography and Number Theory Week 2 Senior Math Circles Cryptography and Number Theory Week 2 Dale Brydon Feb. 9, 2014 1 Divisibility and Inverses At the end of last time, we saw that not all numbers have inverses mod n, but some do. We

More information

Stanford University CS103: Math for Computer Science Handout LN9 Luca Trevisan April 25, 2014

Stanford University CS103: Math for Computer Science Handout LN9 Luca Trevisan April 25, 2014 Stanford University CS103: Math for Computer Science Handout LN9 Luca Trevisan April 25, 2014 Notes for Lecture 9 Mathematical logic is the rigorous study of the way in which we prove the validity of mathematical

More information

PROOFS IN PREDICATE LOGIC AND COMPLETENESS; WHAT DECIDABILITY MEANS HUTH AND RYAN 2.3, SUPPLEMENTARY NOTES 2

PROOFS IN PREDICATE LOGIC AND COMPLETENESS; WHAT DECIDABILITY MEANS HUTH AND RYAN 2.3, SUPPLEMENTARY NOTES 2 PROOFS IN PREDICATE LOGIC AND COMPLETENESS; WHAT DECIDABILITY MEANS HUTH AND RYAN 2.3, SUPPLEMENTARY NOTES 2 Neil D. Jones DIKU 2005 12 September, 2005 Some slides today new, some based on logic 2004 (Nils

More information

GÖDEL S COMPLETENESS AND INCOMPLETENESS THEOREMS. Contents 1. Introduction Gödel s Completeness Theorem

GÖDEL S COMPLETENESS AND INCOMPLETENESS THEOREMS. Contents 1. Introduction Gödel s Completeness Theorem GÖDEL S COMPLETENESS AND INCOMPLETENESS THEOREMS BEN CHAIKEN Abstract. This paper will discuss the completeness and incompleteness theorems of Kurt Gödel. These theorems have a profound impact on the philosophical

More information

Chapter 11: Automated Proof Systems

Chapter 11: Automated Proof Systems Chapter 11: Automated Proof Systems SYSTEM RS OVERVIEW Hilbert style systems are easy to define and admit a simple proof of the Completeness Theorem but they are difficult to use. Automated systems are

More information

Propositional and First-Order Logic

Propositional and First-Order Logic Propositional and First-Order Logic Chapter 7.4 7.8, 8.1 8.3, 8.5 Some material adopted from notes by Andreas Geyer-Schulz and Chuck Dyer Logic roadmap overview Propositional logic (review) Problems with

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

Logic as The Calculus of Computer Science

Logic as The Calculus of Computer Science 1 Ottobre, 2007 1 Università di Napoli Federico II What is a Logic? A Logic is a formalism with a sintax a semantics an inference mechanism for reasoning Historical Diagram The First Age of Logic: Symbolic

More information

Scalable and Accurate Verification of Data Flow Systems. Cesare Tinelli The University of Iowa

Scalable and Accurate Verification of Data Flow Systems. Cesare Tinelli The University of Iowa Scalable and Accurate Verification of Data Flow Systems Cesare Tinelli The University of Iowa Overview AFOSR Supported Research Collaborations NYU (project partner) Chalmers University (research collaborator)

More information

Verifying Self-stabilizing Population Protocols with Coq

Verifying Self-stabilizing Population Protocols with Coq Verifying Self-stabilizing Population Protocols with Coq Yuxin Deng and Jean-François Monin Department of Computer Science and Engineering, Shanghai Jiao Tong University, China Université de Grenoble 1,

More information

Formalizing Kruskal s Tree Theorem in Isabelle/HOL

Formalizing Kruskal s Tree Theorem in Isabelle/HOL Formalizing Kruskal s Tree Theorem in Isabelle/HOL Christian Sternagel JAIST July 5, 2012 Kickoff Meeting of Austria-Japan Joint Project Gamagori, Japan Kruskal s Tree Theorem If the set A is well-quasi-ordered

More information