Isabelle/FOL Proof Assistant

Size: px
Start display at page:

Download "Isabelle/FOL Proof Assistant"

Transcription

1 Dec 2014 Isabelle/FOL Proof Assistant In a glance Mohamed Abouelwafa

2 University Of Ottawa OCICS Supervised by Professor: Amy Felty Prepared by Mohamed Abouelwafa 1

3 Abstract This tutorial is meant to discuss the basic features and capabilities of Isabelle proof assistant (Isabelle2014) with some applications on First-Order formalism without going into deep details. We will do the demonstrations and cases using only First-order logic examples with simple types and constants. The tutorial shows the main features of JEdit user interface and the main instructions of Isar proof language. This tutorial is for beginners and those who want to start learning Isabelle and then the rest of bibliographies at the end of the tutorial can be used for gaining more knowledge and deeper experience. 2

4 Table of Contents List of Figures... 4 Introduction... 5 Terminology... 5 Isabelle/jEdit... 7 Basics of Isabelle... 9 Formalizing syntax... 9 Syntax representation... 9 Reasoning in Isabelle... 9 Proofs and theorems in Isabelle...10 Theories...10 Commands and syntax...11 Natural deduction rules...12 Introduction Rules...12 Elimination Rules...13 Some useful commands...13 Application Examples...14 Example 1:...14 Example 2:...14 Example 3:...15 Example 4:...15 Example 5:...15 Example 6:...16 Example 7:...16 Example 8:...17 Example 9:...17 Example 10:...18 Example 11:...19 Example 12:...19 Bibliography

5 List of Figures Figure 1: Isabelle/jEdit IDE... 6 Figure 2: Colored code in Isabelle/jEdit... 7 Figure 3: Completion in Isabelle/jEdit... 7 Figure 4: list of some symbols in Isabelle/jEdit with abbreviations... 8 Figure 5: "Examples.thy" file contents...10 Figure 6: Example Proof

6 Introduction Isabelle 2014 is a proof assistant package, which is used to represent mathematical formulas using a formal structured proof language called Isar. It provides tools for proving these formulas in a logical calculus. 1 Isabelle deals with different kinds of logics, the current research and development in Isabelle is concentrating on dealing with Higher Order Logic (HOL) formulas. The first distributable version of Isabelle was released in 1986 dealing with First Order Logic (FOL) then the beginning of dealing with Higher Order Logic (HOL) capabilities were introduced in The Prover system consists of two main components, the Prover IDE and the Editor. The editor is responsible for interacting with the system user, where the users can formulate their problem in a logical form then the Prover checks the formulas and provides feedback for the end user. An important feature of Isabelle proof assistant is that, the formal language is easily read by humans which makes it more convenient to enter the formulas and later to be easy to debug and find errors and bugs in the code. Isabelle with jedit provides the user with a big library of mathematical and logical symbols that makes it easy for the user to formalize the situation in hand. Terminology Isabelle/Isar Isabelle is a generic logical framework for higher-order natural deduction/ Implemented using an intelligent semi-automated reasoning language for providing an interpreted language environment of its own 2, Which has been specifically tailored for the needs of theory and proof development. Isabelle/Scala It is the system programming language of Isabelle. It extends the pure logical environment of Isabelle/ML ow rd r wor d of graphical user interfaces, text editors, IDE frameworks, web services etc. 3 Isabelle/ML is the implementation and extension language of Isabelle. It is integrated into the logical context of Isabelle/Isar and allows manipulating logical entities directly. Arbitrary add-on tools may be implemented for object-logics such as Isabelle/HOL. 4 Simply, the group of commands, tactics and rules are used to represent the system in hand. 1 Isabelle2014 official webpage, 2 Makarius Wenzel, The Isabelle/Isar Reference Manual 3 Makarius Wenzel, Isabelle/jEdit 4 Makarius Wenzel, Isabelle/jEdit 5

7 PIDE It is a general framework for Prover IDEs based on Isabelle/Scala. It is built around a concept of parallel and asynchronous document processing, which is supported natively by the parallel proof engine that is implemented in Isabelle/ML. 5 Isabelle/jEdit It is the main example application of the PIDE framework and the default user-interface for Isabelle. It targets both beginners and experts. Technically, Isabelle/jEdit combines a slightly modified version of the jedit code base with a special plugin for Isabelle, integrated as standalone application for the main operating system platforms: Linux, Windows, Mac OS X 6 Figure 1: Isabelle/jEdit IDE 5 Makarius Wenzel, Isabelle/jEdit 6 Makarius Wenzel, Isabelle/jEdit 6

8 Isabelle/jEdit The Isabelle/jEdit is a very powerful Prover IDE with the jedit editor which comes with a lot of features, for example: - Colored code o Each word in the proof syntax has its own color depending on its type. For example, om r b u comm d r r d ory i co ro word r gr Figure 2: Colored code in Isabelle/jEdit - Copy/Paste o User can Copy/Paste the written code in Isabelle/jEdit for faster duplication of the constructs. o User can even use Copy/Past with the Unicode syntax produced by the editor, not only within Isabelle/jEdit, but also between the editor and other programs such as Microsoft Word. o User can use Copy/Paste to copy the code from the console rendered output for further usage or presentation purposes. - Completion o One of the most powerful features is the completion option (sometimes, they call it Sm r Comp io, which helps greatly in speeding up the formalization process and reliefs the user from memorizing all the commands, tactics and symbols control characters. o User can enter symbols by entering their canonical name. Canonical names take the form of \<and> this will result in the symbol or the name preceded by a backslash \and, again, this will result in the symbol. o User can enter symbols by entering their abbreviation. For example, entering an & symbol will result in jedit to convert it to. Entering an symbol will result in jedit to convert it to. o Completions option can be configured in the menu (Plugins Plugin options / Isabelle / General / Completion. Figure 3: Completion in Isabelle/jEdit 7

9 Symbol Name with backslash Abbreviation \<and> & \<or> \<not> ~ \<longrightarrow> ==> \<longrightarrow> --> \<forall>! \<exists>? \<lbrakk> [ \<rbrakk> ] Figure 4: list of some symbols in Isabelle/jEdit with abbreviations - Spell checking o Where the editor may underline some wrong semantics or unknown words to the system for further review or action that may be required by the user. 8

10 Basics of Isabelle Isabelle uses a special format for formalizing the Propositional Logic and hence Natural deduction, where some times braces are redundant. Also, Isabelle binds to the right if braces are absent. Formalizing syntax - P x stand for P(x) - P xy stand for P(x,y) - x. P stands for x P(x) which is a quantified sentence. - x. P stands for x P(x) which is a quantified sentence. Syntax representation - A 1 ; A 2 ; ; n G where o A 1 ; A 2 ; ; n are the set of premises meaning A 1 and A 2 and and A n o means then o G is the goal of the formula - Binary connectives are written in place, so we write P Q R instead of P Q R Reasoning in Isabelle There are two types of reasoning (proving mechanisms) - Forward reasoning: o If we have A and we have B then we can conclude A B. o We start from the premises and assumptions then we continue our deduction till we reach the goal - Backward reasoning: o To prove A B we have to prove A is true and B is true. o We start from the goal, divide the goal into a set of subgoals, then we work with these subgoals one by one till we match the premises and assumptions. Throughout this tutorial, we will be using Backward reasoning for explanations and example proofs. 9

11 Proofs and theorems in Isabelle Proofs in Isabelle go through certain standard steps as follows: 1. Define a theorem. 2. Define the set of premises and assumptions. 3. Define the goal. 4. Design the proof steps till you match the goal with the premises and you have no more subgoals are left. Theories Isabelle is a theorem Prover where each file is considered to be a separate theorem. So, for Isabelle to be able to decode the proof that we are going to represent, we need to declare a theory and save the file also, with the same name of the theory with ex io.thy Also, a very important point, each theory in Isabelle is built upon an existing theory which insures that new theories are built upon stable older theories resulting in maintaining consistency. Figure 5: "Examples.thy" file contents From figure 5 we can see the co o i Examples.thy containing the general skeleton for a theory where we can start building up our proofs. The file starts with theory k yword which tells the engine that this file wi co i ory m d Examples. T imports dir c iv Prover gi m o b ory FOL curr ory Examples i bui upo. T dir c iv begin i i i r o o proo can be contained inside the current theory. d o ory i w i d dir c iv end w ic rov r gi w r o op processing the theory file. No : m io d r i r ori r bui upo xi i g ori. So i v ry important to make sure that the imported theory file exists and reachable by the Prover engine ( FOL.thy in our example). 10

12 Commands and syntax Comments Comments in Isabelle are ASCII/Unicode string c o d i (* d *). (* This is a comment *) Premises and Goal definition Goal is defined using a lemma directive. The lemma name can be used for reusing the proved lemma r i ory o rwi i op io. lemma <lemma_name> : premises_list separated by ; G Applying Natural Deduction rules The directive apply is used to apply the natural deduction rules and tactics during the proof steps. Apply (rule/tactic/method Theorem_name) Apply assumption Apply assumption+ Ending the proof The directive done is used to end the proof. done Figure 6: Example Proof We can see from Figure 6 the construction of an example simple proof. The proof starts with defining the premises and the goal, then applying the proper rules and methods to finally match the goal with the pr mi w r goi g o w i goi g roug proo p d p ou pu p by p. 11

13 Natural deduction rules Isabelle uses natural deduction techniques to propagate through the proof using two type of natural deduction rules: - Introduction rules: where we infer connectives. - Elimination rules: where we deduce the connectives consequences. Isabelle depends on schematic variables that can be substituted for, for example?p;?q?p?q conji We can see the formula having two variables P and Q having a question mark in front of each of them; it means that that rule applies for these variables that can be substituted for. Introduction Rules Rule Isabelle goal representation Isabelle rule A ; B A B apply (rule conji) A A B apply (rule disji1) B A B apply (rule disji2) A B A B apply (rule impi) A False A apply (rule noti) 12

14 Elimination Rules Rule Isabelle goal representation Isabelle rule A B A apply (rule conjunct1) A B B apply (rule conjunct2) C apply (rule conje) C apply (rule disje) A; A apply (rule impe) apply (rule mp) apply (rule note) Some useful commands - oops o To abandon the current proof sequence and go to another proof. In other words, it tells the Prover engine to stop processing the current proof sequence without considering it not completed yet. - sorry o To abandon the current proof but still can use the declared lemma. - defer o Move the first subgoal to the last position - Prefer n o Move subgoal n to first position - auto o Automatically apply the automatic tactics to prove the goal. 13

15 Application Examples Example 1: lemma " A A" 1. A A done lemma?a?a Here i straightforward proof where we compared the goal to the premises. Example 2: lemma IEx1:" A; B A B" apply (rule conji) 1. A B A B goal (2 subgoals): 1. A B A 2. A B B 1. A B B done lemma IEx1:?A?B?A?B In this example, we started by the goal, where it can be inferred by a conjunction introduction tactic. Then, by comparing to the premises, we get the proof. 14

16 Example 3: lemma IEx2: " A A B" 1. A A B apply (rule disji1) 1. A A done lemma IEx2:?A?A?B Example 4: lemma Iex3: " A B A B" apply (rule impi) 1. (A B) A B 1. (A B) A B done lemma Iex3: (?A?B)?A?B Example 5: lemma IEx4: " A False A" apply (rule noti) 1. (A False) A 1. (A False) A False done lemma IEx4: (?A False)?A 15

17 Example 6: lemma EEx1: " A B A" apply (rule conjunct1) 1. A B A 1. A B A?Q done lemma EEx1:?A?B?A Example 7: lemma EEx2: " A B B A" apply (rule disje) apply (rule disji2) 1. A B B A goal (3 subgoals): 1. A B?P?Q 2. A B?P B A 3. A B?Q B A goal (2 subgoals): 1. A B A B A 2. A B B B A goal (2 subgoals): 1. A B A A 2. A B B B A 1. A B B B A apply (rule disji1) 1. A B B B done lemma EEx2:?A?B?B?A 16

18 Example 8: lemma EEx3: " A; A B B" apply (rule impe) + 1. A A B B goal (3 subgoals): 1. A A B?P?Q 2. A A B?P 3. A A B?Q B done lemma EEx3:?A?A?B?B Example 9: lemma Ex2: " P Q; R Q R " apply (rule conji) defer apply (rule conjunct2) 1. P Q R Q R goal (2 subgoals): 1. P Q R Q 2. P Q R R goal (2 subgoals): 1. P Q R R 2. P Q R Q 1. P Q R Q 1. P Q R?P3 Q done lemma Ex2:?P?Q?R?Q?R T comm d d r i u d o mov ir ubgo o po i io. 17

19 Example 10: lemma Ex1: " P (Q R) P Q R" 1. P Q R P Q R apply (rule impi) apply (rule conje) apply (rule mp) apply (rule mp) 1. P Q R P Q R goal (2 subgoals): 1. P Q R P Q?P2?Q2 2. P Q R P Q?P2?Q2 R 1. P Q R P Q P Q R goal (2 subgoals): 1. P Q R P Q P Q?P5 R 2. P Q R P Q P Q?P5 goal (3 subgoals): 1. P Q R P Q P Q?P8?P5 R 2. P Q R P Q P Q?P8 3. P Q R P Q P Q?P5 goal (2 subgoals): 1. P Q R P Q P Q P 2. P Q R P Q P Q Q 1. P Q R P Q P Q Q done lemma Ex1:?P?Q?R?P?Q?R The theorem mp i Modu o w ic i qu o imp ic io i roduc io. 18

20 Example 11: lemma Ex3: " x. P(x) x. P(x)" apply (rule exi) apply (rule spec) done 1. x. P(x) x. P(x) 1. x. P(x) P(?x) 1. x. P(x) x. P(?x3(x)) lemma Ex3: x.?p(x) x.?p(x) T or m p c r i u d o g o ubgo rom pr mi (used as a forward reasoning tactic). Example 12: lemma Ex4: " x y. F u v. F" apply (rule alli) apply (rule alli) apply (rule spec) apply (rule spec) 1. x y. F u v. F 1. u. x y. F v. F 1. u v. x y. F F 1. u v. x y. F x. F 1. u v. x y. F x xa. F done lemma Ex4: x y.?f u v.?f 19

21 Bibliography - Isabelle homepage Makarius Wenzel, Isabelle / jedit, August 27, Lawrence C. Paulson, Old Introduction to Isabelle, With Contributions by Tobias Nipkow and Markus Wenzel, August 27, Tobias Nipkow, Programming and Proving in Isabelle/HOL, August 27, Lawrence C. Paulson, Isabelle s Logics: FOL and ZF, With Contributions by Tobias Nipkow and Markus Wenzel, August 27, Clemens Ballarin, Introduction to Isabelle, Session one - Clemens Ballarin, Introduction to Isabelle, Session two - Jacques Fleuriot, Introduction to Isabelle/HOL Joaqu ın AGuado, Natural Deduction ISABELLE Single- step proofs based on Sequent Notation

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

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

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

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

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

Computer-supported. Modeling and Reasoning. Computer-supported. Exercises and Solutions (Isabelle 2004)

Computer-supported. Modeling and Reasoning. Computer-supported. Exercises and Solutions (Isabelle 2004) Dipl.-Inf. Achim D. Brucker Dr. Burkhart Wolff Computer-supported Modeling and Reasoning http://www.infsec.ethz.ch/ education/permanent/csmr/ (rev. 16826) Computer-supported Modeling and Reasoning Exercises

More information

Discrete Mathematics

Discrete Mathematics Discrete Mathematics Jeremy Siek Spring 2010 Jeremy Siek Discrete Mathematics 1 / 24 Outline of Lecture 3 1. Proofs and Isabelle 2. Proof Strategy, Forward and Backwards Reasoning 3. Making Mistakes Jeremy

More information

Isabelle/FOL First-Order Logic

Isabelle/FOL First-Order Logic Isabelle/FOL First-Order Logic Larry Paulson and Markus Wenzel August 15, 2018 Contents 1 Intuitionistic first-order logic 2 1.1 Syntax and axiomatic basis................... 2 1.1.1 Equality..........................

More information

Propositional Logic. CS 3234: Logic and Formal Systems. Martin Henz and Aquinas Hobor. August 26, Generated on Tuesday 31 August, 2010, 16:54

Propositional Logic. CS 3234: Logic and Formal Systems. Martin Henz and Aquinas Hobor. August 26, Generated on Tuesday 31 August, 2010, 16:54 Propositional Logic CS 3234: Logic and Formal Systems Martin Henz and Aquinas Hobor August 26, 2010 Generated on Tuesday 31 August, 2010, 16:54 1 Motivation In traditional logic, terms represent sets,

More information

Coursework Theorem Proving in Isabelle

Coursework Theorem Proving in Isabelle Automated Reasoning 2017/2018 Coursework Theorem Proving in Isabelle Imogen Morris Jacques Fleuriot 16th October 2017 Introduction The coursework for Automated Reasoning is designed to test and help develop

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 9: Isar A Language for Structured Proofs

Automated Reasoning. Lecture 9: Isar A Language for Structured Proofs Automated Reasoning Lecture 9: Isar A Language for Structured Proofs Jacques Fleuriot jdf@inf.ed.ac.uk Acknowledgement: Tobias Nipkow kindly provided the slides for this lecture Apply scripts unreadable

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

Interactive Theorem Provers

Interactive Theorem Provers Interactive Theorem Provers from the perspective of Isabelle/Isar Makarius Wenzel Univ. Paris-Sud, LRI July 2014 = Isabelle λ β Isar α 1 Introduction Notable ITP systems LISP based: ACL2 http://www.cs.utexas.edu/users/moore/acl2

More information

Knowledge base (KB) = set of sentences in a formal language Declarative approach to building an agent (or other system):

Knowledge base (KB) = set of sentences in a formal language Declarative approach to building an agent (or other system): Logic Knowledge-based agents Inference engine Knowledge base Domain-independent algorithms Domain-specific content Knowledge base (KB) = set of sentences in a formal language Declarative approach to building

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

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

LCF + Logical Frameworks = Isabelle (25 Years Later)

LCF + Logical Frameworks = Isabelle (25 Years Later) LCF + Logical Frameworks = Isabelle (25 Years Later) Lawrence C. Paulson, Computer Laboratory, University of Cambridge 16 April 2012 Milner Symposium, Edinburgh 1979 Edinburgh LCF: From the Preface the

More information

Interpretation of Locales in Isabelle: Theories and Proof Contexts

Interpretation of Locales in Isabelle: Theories and Proof Contexts Interpretation of Locales in Isabelle: Theories and Proof Contexts Clemens Ballarin Fakultät für Informatik Technische Universität München 85748 Garching, Germany http://www4.in.tum.de/ ballarin Abstract.

More information

COMP219: Artificial Intelligence. Lecture 19: Logic for KR

COMP219: Artificial Intelligence. Lecture 19: Logic for KR COMP219: Artificial Intelligence Lecture 19: Logic for KR 1 Overview Last time Expert Systems and Ontologies Today Logic as a knowledge representation scheme Propositional Logic Syntax Semantics Proof

More information

Computational Logic and the Quest for Greater Automation

Computational Logic and the Quest for Greater Automation Computational Logic and the Quest for Greater Automation Lawrence C Paulson, Distinguished Affiliated Professor for Logic in Informatics Technische Universität München (and Computer Laboratory, University

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

COMP4418, 2017 Assignment 1

COMP4418, 2017 Assignment 1 COMP4418, 2017 Assignment 1 Due: 14:59:59pm Wednesday 30 August (Week 6) Late penalty: 10 marks per day) Worth: 15%. This assignment consists of three questions. The first two questions require written

More information

Overview. Knowledge-Based Agents. Introduction. COMP219: Artificial Intelligence. Lecture 19: Logic for KR

Overview. Knowledge-Based Agents. Introduction. COMP219: Artificial Intelligence. Lecture 19: Logic for KR COMP219: Artificial Intelligence Lecture 19: Logic for KR Last time Expert Systems and Ontologies oday Logic as a knowledge representation scheme Propositional Logic Syntax Semantics Proof theory Natural

More information

COMP219: Artificial Intelligence. Lecture 19: Logic for KR

COMP219: Artificial Intelligence. Lecture 19: Logic for KR COMP219: Artificial Intelligence Lecture 19: Logic for KR 1 Overview Last time Expert Systems and Ontologies Today Logic as a knowledge representation scheme Propositional Logic Syntax Semantics Proof

More information

Intelligent Agents. Pınar Yolum Utrecht University

Intelligent Agents. Pınar Yolum Utrecht University Intelligent Agents Pınar Yolum p.yolum@uu.nl Utrecht University Logical Agents (Based mostly on the course slides from http://aima.cs.berkeley.edu/) Outline Knowledge-based agents Wumpus world Logic in

More information

First-Order Theorem Proving and Vampire. Laura Kovács (Chalmers University of Technology) Andrei Voronkov (The University of Manchester)

First-Order Theorem Proving and Vampire. Laura Kovács (Chalmers University of Technology) Andrei Voronkov (The University of Manchester) First-Order Theorem Proving and Vampire Laura Kovács (Chalmers University of Technology) Andrei Voronkov (The University of Manchester) Outline Introduction First-Order Logic and TPTP Inference Systems

More information

The Importance of Being Formal. Martin Henz. February 5, Propositional Logic

The Importance of Being Formal. Martin Henz. February 5, Propositional Logic The Importance of Being Formal Martin Henz February 5, 2014 Propositional Logic 1 Motivation In traditional logic, terms represent sets, and therefore, propositions are limited to stating facts on sets

More information

EE562 ARTIFICIAL INTELLIGENCE FOR ENGINEERS

EE562 ARTIFICIAL INTELLIGENCE FOR ENGINEERS EE562 ARTIFICIAL INTELLIGENCE FOR ENGINEERS Lecture 10, 5/9/2005 University of Washington, Department of Electrical Engineering Spring 2005 Instructor: Professor Jeff A. Bilmes Logical Agents Chapter 7

More information

Propositional Logic: Review

Propositional Logic: Review Propositional Logic: Review Propositional logic Logical constants: true, false Propositional symbols: P, Q, S,... (atomic sentences) Wrapping parentheses: ( ) Sentences are combined by connectives:...and...or

More information

Propositional Logic: Logical Agents (Part I)

Propositional Logic: Logical Agents (Part I) Propositional Logic: Logical Agents (Part I) This lecture topic: Propositional Logic (two lectures) Chapter 7.1-7.4 (this lecture, Part I) Chapter 7.5 (next lecture, Part II) Next lecture topic: First-order

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

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

Logic. Introduction to Artificial Intelligence CS/ECE 348 Lecture 11 September 27, 2001

Logic. Introduction to Artificial Intelligence CS/ECE 348 Lecture 11 September 27, 2001 Logic Introduction to Artificial Intelligence CS/ECE 348 Lecture 11 September 27, 2001 Last Lecture Games Cont. α-β pruning Outline Games with chance, e.g. Backgammon Logical Agents and thewumpus World

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

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

Inference in first-order logic. Production systems.

Inference in first-order logic. Production systems. CS 1571 Introduction to AI Lecture 17 Inference in first-order logic. Production systems. Milos Hauskrecht milos@cs.pitt.edu 5329 Sennott Square Sentences in Horn normal form Horn normal form (HNF) in

More information

Propositional Logic: Logical Agents (Part I)

Propositional Logic: Logical Agents (Part I) Propositional Logic: Logical Agents (Part I) First Lecture Today (Tue 21 Jun) Read Chapters 1 and 2 Second Lecture Today (Tue 21 Jun) Read Chapter 7.1-7.4 Next Lecture (Thu 23 Jun) Read Chapters 7.5 (optional:

More information

Manual of Logical Style

Manual of Logical Style Manual of Logical Style Dr. Holmes January 9, 2015 Contents 1 Introduction 2 2 Conjunction 3 2.1 Proving a conjunction...................... 3 2.2 Using a conjunction........................ 3 3 Implication

More information

Propositional Logic: Part II - Syntax & Proofs 0-0

Propositional Logic: Part II - Syntax & Proofs 0-0 Propositional Logic: Part II - Syntax & Proofs 0-0 Outline Syntax of Propositional Formulas Motivating Proofs Syntactic Entailment and Proofs Proof Rules for Natural Deduction Axioms, theories and theorems

More information

cis32-ai lecture # 18 mon-3-apr-2006

cis32-ai lecture # 18 mon-3-apr-2006 cis32-ai lecture # 18 mon-3-apr-2006 today s topics: propositional logic cis32-spring2006-sklar-lec18 1 Introduction Weak (search-based) problem-solving does not scale to real problems. To succeed, problem

More information

Foundations of Artificial Intelligence

Foundations of Artificial Intelligence Foundations of Artificial Intelligence 7. Propositional Logic Rational Thinking, Logic, Resolution Joschka Boedecker and Wolfram Burgard and Bernhard Nebel Albert-Ludwigs-Universität Freiburg May 17, 2016

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

Logical agents. Chapter 7. Chapter 7 1

Logical agents. Chapter 7. Chapter 7 1 Logical agents Chapter 7 Chapter 7 1 Outline Knowledge-based agents Logic in general models and entailment Propositional (oolean) logic Equivalence, validity, satisfiability Inference rules and theorem

More information

SE 212: Logic and Computation. se212 Nancy Day

SE 212: Logic and Computation.   se212 Nancy Day E 212, Fall 2018, University of Waterloo, Module 2, Page 1 SE 212: Logic and Computation Module 2: Propositional Logic http://www.student.cs.uwaterloo.ca/ se212 se212@uwaterloo.ca Nancy Day E 212, Fall

More information

Logical Agents. Chapter 7

Logical Agents. Chapter 7 Logical Agents Chapter 7 Outline Knowledge-based agents Wumpus world Logic in general - models and entailment Propositional (Boolean) logic Equivalence, validity, satisfiability Inference rules and theorem

More information

COMP 2600: Formal Methods for Software Engineeing

COMP 2600: Formal Methods for Software Engineeing COMP 2600: Formal Methods for Software Engineeing Dirk Pattinson Semester 2, 2013 What do we mean by FORMAL? Oxford Dictionary in accordance with convention or etiquette or denoting a style of writing

More information

Artificial Intelligence Knowledge Representation I

Artificial Intelligence Knowledge Representation I rtificial Intelligence Knowledge Representation I Lecture 6 Issues in Knowledge Representation 1. How to represent knowledge 2. How to manipulate/process knowledge (2) Can be rephrased as: how to make

More information

THE LANGUAGE OF FIRST-ORDER LOGIC (FOL) Sec2 Sec1(1-16)

THE LANGUAGE OF FIRST-ORDER LOGIC (FOL) Sec2 Sec1(1-16) THE LANGUAGE OF FIRST-ORDER LOGIC (FOL) Sec2 Sec1(1-16) FOL: A language to formulate knowledge Logic is the study of entailment relationslanguages, truth conditions and rules of inference. FOL or Predicate

More information

First-Order Theorem Proving and Vampire

First-Order Theorem Proving and Vampire First-Order Theorem Proving and Vampire Laura Kovács 1,2 and Martin Suda 2 1 TU Wien 2 Chalmers Outline Introduction First-Order Logic and TPTP Inference Systems Saturation Algorithms Redundancy Elimination

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

- 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

Logical Agent & Propositional Logic

Logical Agent & Propositional Logic Logical Agent & Propositional Logic Berlin Chen 2005 References: 1. S. Russell and P. Norvig. Artificial Intelligence: A Modern Approach. Chapter 7 2. S. Russell s teaching materials Introduction The representation

More information

Using the Prover I: Lee Pike. June 3, NASA Langley Formal Methods Group Using the Prover I:

Using the Prover I: Lee Pike. June 3, NASA Langley Formal Methods Group Using the Prover I: Basic Basic NASA Langley Formal Methods Group lee.s.pike@nasa.gov June 3, 2005 Basic Sequents Basic Sequent semantics: The conjunction of the antecedents above the turnstile implies the disjunction of

More information

Chapter 7 R&N ICS 271 Fall 2017 Kalev Kask

Chapter 7 R&N ICS 271 Fall 2017 Kalev Kask Set 6: Knowledge Representation: The Propositional Calculus Chapter 7 R&N ICS 271 Fall 2017 Kalev Kask Outline Representing knowledge using logic Agent that reason logically A knowledge based agent Representing

More information

Lecture 1: Propositional Logic (I)

Lecture 1: Propositional Logic (I) Lecture 1: Propositional Logic (I) Fadoua Ghourabi Ochanomizu University ghourabi.fadoua@ocha.cc.ac.jp Octobre 12, 2016 1 / 36 Contents 1 Declarative sentences 2 Constructing propositions 3 Quizz 4 Natural

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

Section 1.1 Propositions

Section 1.1 Propositions Set Theory & Logic Section 1.1 Propositions Fall, 2009 Section 1.1 Propositions In Chapter 1, our main goals are to prove sentences about numbers, equations or functions and to write the proofs. Definition.

More information

Foundations of Artificial Intelligence

Foundations of Artificial Intelligence Foundations of Artificial Intelligence 7. Propositional Logic Rational Thinking, Logic, Resolution Wolfram Burgard, Maren Bennewitz, and Marco Ragni Albert-Ludwigs-Universität Freiburg Contents 1 Agents

More information

Introduction to Metalogic

Introduction to Metalogic Philosophy 135 Spring 2008 Tony Martin Introduction to Metalogic 1 The semantics of sentential logic. The language L of sentential logic. Symbols of L: Remarks: (i) sentence letters p 0, p 1, p 2,... (ii)

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

Reasoning. Inference. Knowledge Representation 4/6/2018. User

Reasoning. Inference. Knowledge Representation 4/6/2018. User Reasoning Robotics First-order logic Chapter 8-Russel Representation and Reasoning In order to determine appropriate actions to take, an intelligent system needs to represent information about the world

More information

System Description: ara An Automatic Theorem Prover for Relation Algebras

System Description: ara An Automatic Theorem Prover for Relation Algebras System Description: ara An Automatic Theorem Prover for Relation Algebras Carsten Sinz Symbolic Computation Group, WSI for Computer Science, Universität Tübingen, D-72076 Tübingen, Germany sinz@informatik.uni-tuebingen.de

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

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

A Brief Introduction To. GRTensor. On MAPLE Platform. A write-up for the presentation delivered on the same topic as a part of the course PHYS 601

A Brief Introduction To. GRTensor. On MAPLE Platform. A write-up for the presentation delivered on the same topic as a part of the course PHYS 601 A Brief Introduction To GRTensor On MAPLE Platform A write-up for the presentation delivered on the same topic as a part of the course PHYS 601 March 2012 BY: ARSHDEEP SINGH BHATIA arshdeepsb@gmail.com

More information

System f2lp Computing Answer Sets of First-Order Formulas

System f2lp Computing Answer Sets of First-Order Formulas System f2lp Computing Answer Sets of First-Order Formulas Joohyung Lee and Ravi Palla Computer Science and Engineering Arizona State University, Tempe, AZ, USA {joolee,ravi.palla}@asu.edu Abstract. We

More information

Proof strategies, or, a manual of logical style

Proof strategies, or, a manual of logical style Proof strategies, or, a manual of logical style Dr Holmes September 27, 2017 This is yet another version of the manual of logical style I have been working on for many years This semester, instead of posting

More information

Artificial Intelligence Chapter 7: Logical Agents

Artificial Intelligence Chapter 7: Logical Agents Artificial Intelligence Chapter 7: Logical Agents Michael Scherger Department of Computer Science Kent State University February 20, 2006 AI: Chapter 7: Logical Agents 1 Contents Knowledge Based Agents

More information

The Coq Proof Assistant

The Coq Proof Assistant The Coq Proof Assistant Bow-Yaw Wang Institute of Information Science Academia Sinica, Taiwan October 15, 2018 Bow-Yaw Wang (Academia Sinica) The Coq Proof Assistant October 15, 2018 1 / 59 Outline 1 The

More information

What are the recursion theoretic properties of a set of axioms? Understanding a paper by William Craig Armando B. Matos

What are the recursion theoretic properties of a set of axioms? Understanding a paper by William Craig Armando B. Matos What are the recursion theoretic properties of a set of axioms? Understanding a paper by William Craig Armando B. Matos armandobcm@yahoo.com February 5, 2014 Abstract This note is for personal use. It

More information

Artificial Intelligence. Propositional Logic. Copyright 2011 Dieter Fensel and Florian Fischer

Artificial Intelligence. Propositional Logic. Copyright 2011 Dieter Fensel and Florian Fischer Artificial Intelligence Propositional Logic Copyright 2011 Dieter Fensel and Florian Fischer 1 Where are we? # Title 1 Introduction 2 Propositional Logic 3 Predicate Logic 4 Reasoning 5 Search Methods

More information

Linguistics and logic of common mathematical language I. Peter Koepke and Merlin Carl, Mathematical Institute Universität Bonn

Linguistics and logic of common mathematical language I. Peter Koepke and Merlin Carl, Mathematical Institute Universität Bonn The NAPROCHE Project Linguistics and logic of common mathematical language I Peter Koepke and Merlin Carl, Mathematical Institute Universität Bonn Mathematical texts are formulated in a semi-formal language,

More information

CPSA and Formal Security Goals

CPSA and Formal Security Goals CPSA and Formal Security Goals John D. Ramsdell The MITRE Corporation CPSA Version 2.5.1 July 8, 2015 Contents 1 Introduction 3 2 Syntax 6 3 Semantics 8 4 Examples 10 4.1 Needham-Schroeder Responder.................

More information

Logical Agents. Outline

Logical Agents. Outline Logical Agents *(Chapter 7 (Russel & Norvig, 2004)) Outline Knowledge-based agents Wumpus world Logic in general - models and entailment Propositional (Boolean) logic Equivalence, validity, satisfiability

More information

Logical Agents. Knowledge based agents. Knowledge based agents. Knowledge based agents. The Wumpus World. Knowledge Bases 10/20/14

Logical Agents. Knowledge based agents. Knowledge based agents. Knowledge based agents. The Wumpus World. Knowledge Bases 10/20/14 0/0/4 Knowledge based agents Logical Agents Agents need to be able to: Store information about their environment Update and reason about that information Russell and Norvig, chapter 7 Knowledge based agents

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

Calculational reasoning revisited

Calculational reasoning revisited Calculational reasoning revisited an Isabelle/Isar experience Gertrud Bauer and Markus Wenzel Technische Universität München Institut für Informatik, Arcisstrasse 21, 80290 München, Germany http://www.in.tum.de/

More information

Menu. Let s logically analyze a simple paragraph:

Menu. Let s logically analyze a simple paragraph: Menu Introduction to Design Look into my... 1 Introduction to Design Let s logically analyze a simple paragraph: When I forget my umbrella and it rains, I get wet. I also get wet when I stick my foot in

More information

Logical Agent & Propositional Logic

Logical Agent & Propositional Logic Logical Agent & Propositional Logic Berlin Chen Department of Computer Science & Information Engineering National Taiwan Normal University References: 1. S. Russell and P. Norvig. Artificial Intelligence:

More information

A Termination Checker for Isabelle Hoare Logic

A Termination Checker for Isabelle Hoare Logic A Termination Checker for Isabelle Hoare Logic Jia Meng 1, Lawrence C. Paulson 2, and Gerwin Klein 3 1 National ICT Australia jia.meng@nicta.com.au 2 Computer Laboratory, University of Cambridge lp15@cam.ac.uk

More information

Formalization and Automation of Euclidean Geometry

Formalization and Automation of Euclidean Geometry Formalization and Automation of Euclidean Geometry Vesna Pavlović, Sana Stojanović Faculty of Mathematics, Belgrade Spring School Geometry and Visualization, Belgrade, Serbia, April 22, 2008. Our Plan

More information

Logic and Proofs. (A brief summary)

Logic and Proofs. (A brief summary) Logic and Proofs (A brief summary) Why Study Logic: To learn to prove claims/statements rigorously To be able to judge better the soundness and consistency of (others ) arguments To gain the foundations

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

AI Programming CS S-09 Knowledge Representation

AI Programming CS S-09 Knowledge Representation AI Programming CS662-2013S-09 Knowledge Representation David Galles Department of Computer Science University of San Francisco 09-0: Overview So far, we ve talked about search, which is a means of considering

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

Announcements. Today s Menu

Announcements. Today s Menu Announcements Reading Assignment: > Nilsson chapters 13-14 Announcements: > LISP and Extra Credit Project Assigned Today s Handouts in WWW: > Homework 10-13 > Outline for Class 26 > www.mil.ufl.edu/eel5840

More information

CS:4420 Artificial Intelligence

CS:4420 Artificial Intelligence CS:4420 Artificial Intelligence Spring 2018 Propositional Logic Cesare Tinelli The University of Iowa Copyright 2004 18, Cesare Tinelli and Stuart Russell a a These notes were originally developed by Stuart

More information

MAI0203 Lecture 7: Inference and Predicate Calculus

MAI0203 Lecture 7: Inference and Predicate Calculus MAI0203 Lecture 7: Inference and Predicate Calculus Methods of Artificial Intelligence WS 2002/2003 Part II: Inference and Knowledge Representation II.7 Inference and Predicate Calculus MAI0203 Lecture

More information

Validating QBF Invalidity in HOL4

Validating QBF Invalidity in HOL4 Interactive Theorem Proving (ITP) 14 July, 2010 Quantified Boolean Formulae Quantified Boolean Formulae Motivation System Overview Related Work QBF = propositional logic + quantifiers over Boolean variables

More information

Logic and Propositional Calculus

Logic and Propositional Calculus CHAPTER 4 Logic and Propositional Calculus 4.1 INTRODUCTION Many algorithms and proofs use logical expressions such as: IF p THEN q or If p 1 AND p 2, THEN q 1 OR q 2 Therefore it is necessary to know

More information

15414/614 Optional Lecture 1: Propositional Logic

15414/614 Optional Lecture 1: Propositional Logic 15414/614 Optional Lecture 1: Propositional Logic Qinsi Wang Logic is the study of information encoded in the form of logical sentences. We use the language of Logic to state observations, to define concepts,

More information

Intelligent Systems. Propositional Logic. Dieter Fensel and Dumitru Roman. Copyright 2008 STI INNSBRUCK

Intelligent Systems. Propositional Logic. Dieter Fensel and Dumitru Roman. Copyright 2008 STI INNSBRUCK Intelligent Systems Propositional Logic Dieter Fensel and Dumitru Roman www.sti-innsbruck.at Copyright 2008 STI INNSBRUCK www.sti-innsbruck.at Where are we? # Title 1 Introduction 2 Propositional Logic

More information

Propositional Logic. Logic. Propositional Logic Syntax. Propositional Logic

Propositional Logic. Logic. Propositional Logic Syntax. Propositional Logic Propositional Logic Reading: Chapter 7.1, 7.3 7.5 [ased on slides from Jerry Zhu, Louis Oliphant and ndrew Moore] Logic If the rules of the world are presented formally, then a decision maker can use logical

More information

INTRODUCTION TO LOGIC. Propositional Logic. Examples of syntactic claims

INTRODUCTION TO LOGIC. Propositional Logic. Examples of syntactic claims Introduction INTRODUCTION TO LOGIC 2 Syntax and Semantics of Propositional Logic Volker Halbach In what follows I look at some formal languages that are much simpler than English and define validity of

More information

Deductive Systems. Lecture - 3

Deductive Systems. Lecture - 3 Deductive Systems Lecture - 3 Axiomatic System Axiomatic System (AS) for PL AS is based on the set of only three axioms and one rule of deduction. It is minimal in structure but as powerful as the truth

More information

Formal (Natural) Deduction for Predicate Calculus

Formal (Natural) Deduction for Predicate Calculus Formal (Natural) Deduction for Predicate Calculus Lila Kari University of Waterloo Formal (Natural) Deduction for Predicate Calculus CS245, Logic and Computation 1 / 42 Formal deducibility for predicate

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

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

Logical Agents. Chapter 7

Logical Agents. Chapter 7 Logical Agents Chapter 7 Outline Knowledge-based agents Wumpus world Logic in general - models and entailment Propositional (Boolean) logic Equivalence, validity, satisfiability Inference rules and theorem

More information