Computational Logic Lecture 13

Slides:



Advertisements
Similar presentations
Applications Computational LogicLecture 11 Michael Genesereth Spring 2004.
Advertisements

Knowledge Representation and Reasoning University "Politehnica" of Bucharest Department of Computer Science Fall 2010 Adina Magda Florea
Inference and Reasoning. Basic Idea Given a set of statements, does a new statement logically follow from this. For example If an animal has wings and.
Basic Properties of Relations
Computing Fundamentals 1 Lecture 1 Lecturer: Patrick Browne Room K308 Based on Chapter 1. A Logical approach to Discrete.
CSE-221 Digital Logic Design (DLD)
Chapter 3 Propositional Logic
First Order Logic (chapter 2 of the book) Lecture 3: Sep 14.
Dr. Alexandra I. Cristea CS 319: Theory of Databases: C3.
Reflexive -- First sentence of proof is: (1) Let x  Z (2) Let (x,x)  R. (3) Let (x,x)  I (4) Let x  R.
Introduction to Logic for Artificial Intelligence Lecture 2 Erik Sandewall 2010.
First Order Logic. This Lecture Last time we talked about propositional logic, a logic on simple statements. This time we will talk about first order.
CSci 2011 Discrete Mathematics Lecture 3 CSci 2011.
Propositional Resolution Computational LogicLecture 4 Michael Genesereth Spring 2005.
DECIDABILITY OF PRESBURGER ARITHMETIC USING FINITE AUTOMATA Presented by : Shubha Jain Reference : Paper by Alexandre Boudet and Hubert Comon.
Declarative Programming Arithmetic in PROLOG Autumn 2014.
Postulates and Algebraic Proofs Advanced Geometry Deductive Reasoning Lesson 2.
1 Copyright, 1996 © Dale Carnegie & Associates, Inc. Chapter 2: Logic & Incidence Geometry Back To the Very Basic Fundamentals.
1 Introduction to Abstract Mathematics Chapter 2: The Logic of Quantified Statements. Predicate Calculus Instructor: Hayk Melikya 2.3.
First Order Logic Lecture 3: Sep 13 (chapter 2 of the book)
1 Section 8.3 Higher-Order Logic A logic is higher-order if it allows predicate names or function names to be quantified or to be arguments of a predicate.
CS104:Discrete Structures Chapter 2: Proof Techniques.
Given an equation, you can … * Add the same value (or equivalent values) to both sides, If a = b, then a + 7 = b + 7 * Subtract the same value (or equivalent.
Intro to Proofs Unit IC Day 2. Do now Solve for x 5x – 18 = 3x + 2.
1 Proving Properties of Recursive List Functions CS 270 Math Foundations of CS Jeremy Johnson.
Proof And Strategies Chapter 2. Lecturer: Amani Mahajoub Omer Department of Computer Science and Software Engineering Discrete Structures Definition Discrete.
1.3 Properties of Numbers 8/24/16. Common Core State Standards Interpret complicated expressions by viewing one or more of their parts as a single entity.
Introduction to Logic for Artificial Intelligence Lecture 2
Axiomatic Number Theory and Gödel’s Incompleteness Theorems
Argument An argument is a sequence of statements.
Properties of Equality and Solving One-Step Equations
2.5 and 2.6 Properties of Equality and Congruence
Reflexivity, Symmetry, and Transitivity
Chapter 7: Beyond Definite Knowledge
Proving Properties of Recursive List Functions
Boolean Algebra.
CS201: Data Structures and Discrete Mathematics I
1.4 Predicates and Quantifiers
Propositional Resolution
Programming Languages and Compilers (CS 421)
Markov Networks Independencies Representation Probabilistic Graphical
CS157 Greatest Hits The Top 100 Slides of the Course
Number Properties Magic Book Foldable
Bayesian Networks Independencies Representation Probabilistic
First Order Logic Rosen Lecture 3: Sept 11, 12.
Relational Proofs Computational Logic Lecture 8
Horn Clauses and Unification
Computer Security: Art and Science, 2nd Edition
Metatheorems Computational Logic Lecture 8
Relational Proofs Computational Logic Lecture 7
Logical Entailment Computational Logic Lecture 3
Relational Logic Computational Logic Lecture 5
Number Properties Magic Book Foldable
Herbrand Logic Semantics
Horn Clauses and Unification
CS201: Data Structures and Discrete Mathematics I
RESOLUTION.
Markov Networks Independencies Representation Probabilistic Graphical
OBJ first-order functional language based on equational logic
Relational Proofs Computational Logic Lecture 7
Properties of Relational Logic
Properties of Relational Logic
Model Minimization Computational Logic Lecture 16
Programming Languages and Compilers (CS 421)
Relational Proofs Computational Logic Lecture 7
Agenda Proofs (Konsep Pembuktian) Direct Proofs & Counterexamples
Herbrand Semantics Computational Logic Lecture 15
Resolution Preliminaries
CS589 Principles of DB Systems Fall 2008 Lecture 4e: Logic (Model-theoretic view of a DB) Lois Delcambre
Herbrand Logic Semantics
Presentation transcript:

Computational Logic Lecture 13 Equality Michael Genesereth Autumn 2009

Coreferentiality Coreferentiality Different terms can sometimes refer to the same object. 2+2 2*2 4 In some situations, we want to say explicitly that two terms are coreferential; and, in some situations, we want to say explicitly that two terms are not coreferential. For this, we use equality. 2+22*2 2+22*3

Equality An equation  =  is true in an interpretation i if and only if the terms in the equation refer to the same object in the universe of discourse. i = i

Example Interpretation: i(a) =  i(b) =  i(c) =  i(f ) = {, } i(r) = {, , , } Satisfied Sentences a = a a = f(b) a= f(f(a)) a  b b = f(a) a=f(f(c)) a = c b = f(c) b=f(f(b)) b = b c = f(b) c=f(f(a)) b  c c=f(f(c))

Unique Names Assumption In many applications, one makes the assumption that every distinct name refers to a distinct object, i.e. every object has at most one name. This is called the unique names assumption (UNA). The upshot is that a difference in name implies a difference in referent. = if and only if i = i The unique names assumption is not true in general!!! Question: How does one express the unique names assumption in Relational Logic?

Domain Closure Assumption In many applications, one makes the assumption that all objects are named, i.e. every object has at least one name. This is called the domain closure assumption (DCA). The domain closure assumption is not true in general!!! Question: How does one express the domain closure assumption in Relational Logic?

Herbrand The Herbrand Theorem does not hold in the presence of equality. In general, different constants may refer to the same object. In a Herbrand interpretation, every constant refers to itself. Thus, the following sentence is satisfiable, but there is no Herbrand interpretation that satisfies it. john=jack Question: Does the Herbrand theorem hold in the presence of the unique names assumption?

Incompleteness Theorem: Resolution (with factoring) is refutation complete for Relational Logic*. *without equality. Theorem: There is a set of premises  and a conclusion  (involving equality) such that  logically implies  but  cannot be proved from  using Resolution.

Two Approaches Axiomatic approach -- add axioms of equality Proof Theoretic approach -- add new rules of inference

Equality Axioms Reflexivity x.x=x Symmetry: x.y.(x=y  y=x) Transitivity: x.y.z.(x=y  y=z  x=z)

Equality Axioms in Rule Form Reflexivity x=x Symmetry: x=y  y=x Transitivity: x=z  x=y  y=z

Equality Proof

Equality Problem

f(f(a))=a  x.(f(a)=x  f(x)=a) Flattening Equivalence: f(f(a))=a  x.(f(a)=x  f(x)=a) Rewrite: f(f(a))=a As: x.(f(a)=x  f(x)=a) As: f(a)=c  f(c)=a As: f(a)=c f(c)=a Rewrite: f(f(a))=a? As: x.(f(a)=x  f(x)=a)? As: f(a)=x  f(x)=a?

Proof With Flattening

f(f(a))=a  x.(f(a)=x  f(x)=a) Substitution Axiom Flattening Rule: f(f(a))=a  x.(f(a)=x  f(x)=a) Substitution Axiom: f(x)=z  x=y  f(y)=z

Proof With Substitution Axiom

p(x,y)=z  x=u  y=v  p(u,v) Notes Substitution axioms for relation constants too. p(x)  x=y  p(y) Substitution axioms for multiple arguments p(x,y)=z  x=u  y=v  p(u,v) Need one substitution for each function and relation constant.

Two Approaches Axiomatic approach -- add axioms of equality Proof Theoretic approach -- add new rules of inference

Motivation for Demodulation

Demodulation

Examples

Non-Examples Unit Equations Only Variables Substituted in Equation Only

Parent Deletion In Demodulation, parent is usually deleted after substitution.

Proof With Demodulation

Proof With Demodulation

Proof With Demodulation Suppose Bill is Joe's paternal grandfather and suppose that Bill is kind. Prove that Joe's paternal grandfather is kind.

Problems With Demodulation Cannot bind variables in expression: Equation must be a unit clause

Paramodulation

Differences (1) Demodulation requires a unit equation. (2) Demodulation binds variables in equation only. (3) Demodulation deletes parent.

Example

Proof With Paramodulation

Proof With Paramodulation

Power Theorem: Resolution and Paramodulation (together with the reflexivity axiom) are refutation complete for all of Relational Logic*. *including equality