Introduction to Logic in Computer Science: Autumn 2006

Similar documents
Introduction to Logic in Computer Science: Autumn 2007

Syntax of FOL. Introduction to Logic in Computer Science: Autumn Tableaux for First-order Logic. Syntax of FOL (2)

KE/Tableaux. What is it for?

Mathematical Logics. 12. Soundness and Completeness of tableaux reasoning in first order logic. Luciano Serafini

Introduction to Logic in Computer Science: Autumn 2006

Automated Reasoning. Introduction to Logic in Computer Science: Autumn Different Forms of Reasoning. Tableaux for Propositional Logic

First-Order Logic. Chapter Overview Syntax

Cooperation of Background Reasoners in Theory Reasoning by Residue Sharing

Semantics and Pragmatics of NLP

Classical Propositional Logic

First-Order Logic. 1 Syntax. Domain of Discourse. FO Vocabulary. Terms

Cooperation of Background Reasoners in Theory Reasoning by Residue Sharing

Classical First-Order Logic

Logic: Propositional Logic Truth Tables

Overview. CS389L: Automated Logical Reasoning. Lecture 7: Validity Proofs and Properties of FOL. Motivation for semantic argument method

Predicate Logic - Semantic Tableau

SKETCHY NOTES FOR WEEKS 7 AND 8

Mathematical Logic Propositional Logic - Tableaux*

Syntax. Notation Throughout, and when not otherwise said, we assume a vocabulary V = C F P.

3. The Logic of Quantified Statements Summary. Aaron Tan August 2017

INTRODUCTION TO PREDICATE LOGIC HUTH AND RYAN 2.1, 2.2, 2.4

Automated Reasoning Lecture 5: First-Order Logic

Automated Synthesis of Tableau Calculi

The predicate calculus is complete

17.1 Correctness of First-Order Tableaux

Advanced Topics in LP and FP

Saturation up to Redundancy for Tableau and Sequent Calculi

First-Order Logic (FOL)


First Order Logic (FOL) 1 znj/dm2017

Herbrand Theorem, Equality, and Compactness

Classical First-Order Logic

Lecture 13: Soundness, Completeness and Compactness

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

A Tableau Calculus for Minimal Modal Model Generation

MAI0203 Lecture 7: Inference and Predicate Calculus

Description Logics. Deduction in Propositional Logic. franconi. Enrico Franconi

06 From Propositional to Predicate Logic

Predicate Logic: Sematics Part 1

Propositional Reasoning

Computational Logic. Davide Martinenghi. Spring Free University of Bozen-Bolzano. Computational Logic Davide Martinenghi (1/26)

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

Logic: First Order Logic

Software Engineering using Formal Methods

First Order Logic: Syntax and Semantics

02 Propositional Logic

First-Order Logic. Resolution

Fundamentals of Software Engineering

First-Order Logic First-Order Theories. Roopsha Samanta. Partly based on slides by Aaron Bradley and Isil Dillig

First-order resolution for CTL

2.5.2 Basic CNF/DNF Transformation

Computational Logic. Recall of First-Order Logic. Damiano Zanardini

Fundamentals of Software Engineering

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

Logic for Computer Scientists

Propositional and Predicate Logic

CS 486: Applied Logic Lecture 7, February 11, Compactness. 7.1 Compactness why?

Logic for Computer Scientists

Handout Proof Methods in Computer Science

CHAPTER 10. Predicate Automated Proof Systems

Warm-Up Problem. Is the following true or false? 1/35

Some Rewriting Systems as a Background of Proving Methods

The non-logical symbols determine a specific F OL language and consists of the following sets. Σ = {Σ n } n<ω

CTL-RP: A Computational Tree Logic Resolution Prover

Algebraizing Hybrid Logic. Evangelos Tzanis University of Amsterdam Institute of Logic, Language and Computation

Mathematics 114L Spring 2018 D.A. Martin. Mathematical Logic

185.A09 Advanced Mathematical Logic

List of errors in and suggested modifications for First-Order Modal Logic Melvin Fitting and Richard L. Mendelsohn August 11, 2013

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

Price: $25 (incl. T-Shirt, morning tea and lunch) Visit:

Learning Goals of CS245 Logic and Computation

Propositional logic. Programming and Modal Logic

Description Logics. Foundations of Propositional Logic. franconi. Enrico Franconi

Predicate Calculus. Formal Methods in Verification of Computer Systems Jeremy Johnson

INF3170 / INF4171 Notes on Resolution

Intelligent Agents. Formal Characteristics of Planning. Ute Schmid. Cognitive Systems, Applied Computer Science, Bamberg University

Quantifiers. P. Danziger

Propositional Logic Truth-functionality Definitions Soundness Completeness Inferences. Modal Logic. Daniel Bonevac.

7. Propositional Logic. Wolfram Burgard and Bernhard Nebel

Introduction to Metalogic

Logic for Computer Scientists

Logic: Propositional Logic (Part I)

Propositional and Predicate Logic - V

Applied Logic. Lecture 1 - Propositional logic. Marcin Szczuka. Institute of Informatics, The University of Warsaw

CS156: The Calculus of Computation Zohar Manna Winter 2010

Syntactic Characterisations in Model Theory

Propositional Logic: Models and Proofs

First-Degree Entailment

Notes on Satisfiability-Based Problem Solving. First Order Logic. David Mitchell October 23, 2013

Propositional Logic: Syntax

CS411 Notes 3 Induction and Recursion

7 RC Simulates RA. Lemma: For every RA expression E(A 1... A k ) there exists a DRC formula F with F V (F ) = {A 1,..., A k } and

A Little Logic. Propositional Logic. Satisfiability Problems. Solving Sudokus. First Order Logic. Logic Programming

Propositional Logic: Deductive Proof & Natural Deduction Part 1

Propositional logic. First order logic. Alexander Clark. Autumn 2014

Computational Logic. Davide Martinenghi. Spring Free University of Bozen-Bolzano. Computational Logic Davide Martinenghi (1/30)

Outline. Formale Methoden der Informatik First-Order Logic for Forgetters. Why PL1? Why PL1? Cont d. Motivation

Foundations of Artificial Intelligence

Foundations of Artificial Intelligence

Propositional Logic: Review

Transcription:

Introduction to Logic in Computer Science: Autumn 2006 Ulle Endriss Institute for Logic, Language and Computation University of Amsterdam Ulle Endriss 1

Plan for Today Today s class will be an introduction to analytic tableaux for classical first-order logic: Quick review of syntax and semantics of first-order logic Quantifier rules for Smullyan-style and KE-style tableaux Soundness and completeness proofs Discussion of efficiency issues, undecidability Countermodel generation Ulle Endriss 2

Syntax of FOL The syntax of a language defines the way in which basic elements of the language may be put together to form clauses of that language. In the case of FOL, the basic ingredients are (besides the logic operators): variables, function symbols, and predicate symbols. Each function and predicate symbol is associated with an arity n 0. Definition 1 (Terms) We inductively define the set of terms as the smallest set such that: (1) every variable is a term; (2) if f is a function symbol of arity k and t 1,..., t k are terms, then f(t 1,..., t k ) is also a term. Function symbols of arity 0 are better known as constants. Ulle Endriss 3

Syntax of FOL (2) Definition 2 (Formulas) We inductively define the set of formulas as the smallest set such that: (1) if P is a predicate symbol of arity k and t 1..., t k are terms, then P (t 1,..., t k ) is a formula; (2) if ϕ and ψ are formulas, so are ϕ, ϕ ψ, ϕ ψ, and ϕ ψ; (3) if x is a variable and ϕ is a formula, then ( x)ϕ and ( x)ϕ are also formulas. Syntactic sugar: ϕ ψ (ϕ ψ) (ψ ϕ); P P (for an arbitrary 0-place predicate symbol P );. Also recall: atoms, literals, ground terms, bound and free variables, closed formulas (aka sentences),... Ulle Endriss 4

Semantics of FOL The semantics of a language defines the meaning of clauses in that language. In the case of FOL, we do this through the notion of models (and variable assignments). Definition 3 (Models) A model is a pair M = (D, I), where D (the domain) is a non-empty set of objects and I (the interpretation function) is mapping each n-place function symbol f to some n-ary function f I : D n D and each n-place predicate symbol P to some n-ary relation P I : D n {true, false}. Note that this definition also covers the cases of 0-place function symbols (constants) and predicate symbols. Ulle Endriss 5

Semantics of FOL (2) Definition 4 (Assignments) A variable assignment over a domain D is a function g from the set of variables to D. Definition 5 (Valuation of terms) We define a valuation function val I,g over terms as follows: val I,g (x) = g(x) for variables x val I,g (f(t 1,..., t n )) = f I (val I,g (t 1 ),..., val I,g (t n )) Definition 6 (Assignment variants) Let g and g be assignments over D and let x be a variable, Then g is called an x-variant of g iff g(y) = g (y) for all variables y x. Ulle Endriss 6

Semantics of FOL (3) Definition 7 (Satisfaction relation) We write M, g = ϕ to say that the formula ϕ is satisfied in the model M = (I, D) under the assignment g. The relation = is defined inductively as follows: (1) M, g = P (t 1,..., t n ) iff P I (val I,g (t 1 ),..., val I,g (t n )) = true; (2) M, g = ϕ iff not M, g = ϕ; (3) M, g = ϕ ψ iff M, g = ϕ and M, g = ψ; (4) M, g = ϕ ψ iff M, g = ϕ or M, g = ψ; (5) M, g = ϕ ψ iff not M, g = ϕ or M, g = ψ; (6) M, g = ( x)ϕ iff M, g = ϕ for all x-variants g of g; and (7) M, g = ( x)ϕ iff M, g = ϕ for some x-variant g of g. Ulle Endriss 7

Semantics of FOL (4) Observe that in the case of closed formulas ϕ the variable assignment g does not matter (we just write M = ϕ). Satisfiability. A closed formula ϕ is called satisfiable iff it has a model, i.e. there exists a model M with M = ϕ. Validity. A closed formula ϕ is called valid iff for every model M we have M = ϕ. We write = ϕ. Consequence relation. Let ϕ be a closed formula and let be a set of closed formulas. We write = ϕ iff whenever M = ψ holds for all ψ then also M = ϕ holds. Ulle Endriss 8

Quantifier Rules Both the KE-style and the Smullyan-style tableau method for propositional logic can be extended with the following rules. Gamma Rules: ( x)a ( x)a A[x/t] A[x/t] Delta Rules: ( x)a ( x)a A[x/c] A[x/c] Here, t is an arbitrary ground term and c is a constant symbol that is new to the branch. Unlike all other rules, the gamma rule may have to be applied more than once to the same formula on the same branch. Substitution. ϕ[x/t] denotes the formula we get by replacing each free occurrence of the variable x in the formula ϕ by the term t. Ulle Endriss 9

Smullyan s Uniform Notation Formulas of universal (γ) and existential (δ) type: γ γ 1 (u) δ δ 1 (u) ( x)a A[x/u] ( x)a A[x/u] ( x)a A[x/u] ( x)a A[x/u] We can now state gamma and delta rules as follows: γ γ 1 (t) δ δ 1 (c) where: t is an arbitrary ground term c is a constant symbol new to the branch Ulle Endriss 10

Exercises Give Smullyan-style or KE-style tableau proofs for the following arguments: ( x)p (x) ( x)q(x) = ( x)( P (x) Q(x)) = ( x)(p (x) Q(x)) ( x)p (x) ( x)q(x) Ulle Endriss 11

Soundness and Completeness Let ϕ be a first-order formula and a set of such formulas. We write ϕ to say that there exists a closed tableau for { ϕ}. Theorem 1 (Soundness) If ϕ then = ϕ. Theorem 2 (Completeness) If = ϕ then ϕ. We shall prove soundness and completeness only for Smullyan-style tableaux (but it s almost the same for KE-style tableaux). Important note: The mere existence of a closed tableau does not mean that we have an effective method of finding it! Concretely: we don t know how often we need to apply the gamma rule and what terms to use for the substitutions. Ulle Endriss 12

Proof of Soundness This works exactly as in the propositional case ( last week). The central step is to show that each of the expansion rules preserves satisfiability: If a non-branching rule is applied to a satisfiable branch, the result is another satisfiable branch. If a branching rule is applied to a satisfiable branch, at least one of the resulting branches is also satisfiable. Ulle Endriss 13

Proof of Soundness (cont.) Gamma rule: If γ appears on a branch, you may add γ 1 (t) for any ground term t to the same branch. Proof: suppose branch B with γ ( x)γ 1 (x) B is satisfiable there exists M = (D, I) s.t. M = B and hence M = ( x)γ 1 (x) for all var. assignments g: M, g = γ 1 (x); choose g s.t. g (x) = t I M, g = γ 1 (x) M = γ 1 (t) M = B {γ 1 (t)} Delta rule: If δ appears on a branch, you may add δ 1 (c) for any new constant symbol c to the same branch. Proof: suppose branch B with δ ( x)δ 1 (x) B is satisfiable there exists M = (D, I) s.t. M = B and hence M = ( x)δ 1 (x) there exists a variable assignment g s.t. M, g = δ 1 (x) now suppose g(x) = d D; define new model M = (D, I ) with I like I but additionally c I = d (this is possible, because c is new) M = δ 1 (c) and M = B M = B {δ 1 (c)} Ulle Endriss 14

Hintikka s Lemma Definition 8 (Hintikka set) A set of first-order formulas H is called a Hintikka set provided the following hold: (1) not both P H and P H for propositional atoms P ; (2) if ϕ H then ϕ H for all formulas ϕ; (3) if α H then α 1 H and α 2 H for alpha formulas α; (4) if β H then β 1 H or β 2 H for beta formulas β. (5) for all terms t built from function symbols in H (at least one constant symbol): if γ H then γ 1 (t) for gamma formulas γ; (6) if δ H then δ 1 (t) H for some term t, for delta formulas δ. Lemma 1 (Hintikka) Every Hintikka set is satisfiable. Ulle Endriss 15

Proof of Hintikka s Lemma Construct a model M = (D, I) from a given Hintikka set H: D: set of terms constructible from function symbols appearing in H (add one constant symbol in case there are none) I: (1) function symbols are being interpreted as themselves : f I (d 1,..., d n ) = f(d 1,..., d n ); (2) predicate symbols: P I (d 1,..., d n ) = true iff P (d 1,..., d n ) H Claim: ϕ H entails M = ϕ. Proof: By structural induction. [... ] Ulle Endriss 16

Proof of Completeness Fairness. We call a tableau proof fair iff every non-literal gets eventually analysed on every branch and, additionally, every gamma formula gets eventually instantiated with every term constructible from the function symbols appearing on a branch. Proof sketch. We will show the contrapositive: assume ϕ and try to conclude = ϕ. If there is no proof for { ϕ} (assumption), then there can also be no fair proof. Observe that any fairly constructed non-closable branch enumerates the elements of a Hintikka set H. H is satisfiable (Hintikka s Lemma) and we have { ϕ} H. So there is a model for { ϕ}, i.e. we get = ϕ. Ulle Endriss 17

Efficiency Issues Due to the undecidability of first-order logic there can be no general method for finding a closed tableau for a given theorem (although its existence is guaranteed by completeness). Nevertheless, there are some heuristics: As in the propositional case, use deterministic rules first: propositional rules except PB and the delta rule. As in the propositional case, use beta simplification. Use the gamma rule a reasonable number of times (with promising substitutions) before attempting to use PB. Example: for the automated theorem prover implemented in WinKE you can choose n, the maximum number of applications of the gamma rule on a given branch before PB will be used. Use analytic PB only. Ulle Endriss 18

Saturated Branches An open branch is called saturated iff every non-literal has been analysed at least once and, additionally, every gamma formula has been instantiated with every term we can construct using the function symbols on the branch. Failing proofs. A tableau with an open saturated branch can never be closed, i.e. we can stop an declare the proof a failure. The solution? This only helps us in special cases though. (A single 1-place function symbol together with a constant is already enough to construct infinitely many terms... ) Propositional logic. In propositional logic (where we have no gamma formulas), after a limited number of steps, every branch will be either closed or saturated. This gives us a decision procedure. Ulle Endriss 19

Countermodels If a KE proof fails with a saturated open branch, you can use it to help you define a model M for all the formulas on that branch: domain: set of all terms we can construct using the function symbols appearing on the branch (so-called Herbrand universe) terms are interpreted as themselves interpretation of predicate symbols: see literals on branch In particular, M will be a model for the premises and the negated conclusion ϕ, i.e. a counterexample for = ϕ. You can do the same with Smullyan-style tableaux, but for KE distinct open branches always generate distinct models. Careful: There s a bug in WinKE: sometimes, what is presented as a countermodel is in fact only part of a countermodel (but it can always be extended to an actual model). Ulle Endriss 20

Exercise Construct a counterexample for the following argument: ( x)(p (x) Q(x)) =? ( x)p (x) ( x)q(x) Ulle Endriss 21

Ulle Endriss 22

Summary Two tableau methods for first-order logic: Smullyan-style (syntactic branching) and KE-style (semantic branching) Soundness and completeness Undecidability: gamma rule is the culprit Countermodels: sometimes we get termination for failed proofs and can extract a counterexample (particularly nice for KE) Ulle Endriss 23