74.419 Artificial Intelligence 2005 - First-Order Predicate Logic - First-Order Predicate Logic (FOL...

30
74.419 Artificial Intelligence 2005 - First-Order Predicate Logic - First-Order Predicate Logic (FOL or FOPL), also called First-Order Predicate Calculus • Formal Language • Semantics through Interpretation Function • Axioms • Inference System
  • date post

    18-Dec-2015
  • Category

    Documents

  • view

    241
  • download

    0

Transcript of 74.419 Artificial Intelligence 2005 - First-Order Predicate Logic - First-Order Predicate Logic (FOL...

Page 1: 74.419 Artificial Intelligence 2005 - First-Order Predicate Logic - First-Order Predicate Logic (FOL or FOPL), also called First-Order Predicate Calculus.

74.419 Artificial Intelligence 2005 - First-Order Predicate Logic -

First-Order Predicate Logic (FOL or FOPL), also called First-Order Predicate Calculus • Formal Language • Semantics through Interpretation Function • Axioms• Inference System

Page 2: 74.419 Artificial Intelligence 2005 - First-Order Predicate Logic - First-Order Predicate Logic (FOL or FOPL), also called First-Order Predicate Calculus.

FOPL- Formal Language / Syntax -

Page 3: 74.419 Artificial Intelligence 2005 - First-Order Predicate Logic - First-Order Predicate Logic (FOL or FOPL), also called First-Order Predicate Calculus.

Formal Language

A Formal Language is specified as L = (NT, T, P, S)

NT Set of Non-Terminal Symbols

T Set of Terminal Symbols

P Set of Production or Grammar Rules

S Start Symbol (top-level node in syntax tree / parse tree)

A formal language specifies the syntactically correct or well-formed expressions of a language.

Page 4: 74.419 Artificial Intelligence 2005 - First-Order Predicate Logic - First-Order Predicate Logic (FOL or FOPL), also called First-Order Predicate Calculus.

Terminals and Non-TerminalsNT Non-Terminals

wff (well-formed formula), atomic-formula; Predicate, Term, Function, Constant, Variable; Quantifier, Connective

T TerminalsPredicate (Symbols) P, Q, married, ..., Function (Symbols) f, g, father-of, ...Variables x, y, z, ...Constants Sally, block-1, c

Connectives , , , Negation Symbol Quantifiers , Equality Symbol =Parentheses ( , ) Other Symbols :

Domain Specifc

General

Page 5: 74.419 Artificial Intelligence 2005 - First-Order Predicate Logic - First-Order Predicate Logic (FOL or FOPL), also called First-Order Predicate Calculus.

Non-terminal Ruleswff ::= atomic-formula | (wff) | wff |

wff Connective wff | Quantifier Variable: wff

atomic-formula ::= Predicate (Term, ...)* | Term = Term

Term ::= Function (Term, ...)* | Variable | Constant

Terminal RulesConnective ::= | | |

Quantifier ::= |

*Note: n-ary functions and predicates go with n terms

Production / Grammar Rules

Page 6: 74.419 Artificial Intelligence 2005 - First-Order Predicate Logic - First-Order Predicate Logic (FOL or FOPL), also called First-Order Predicate Calculus.

Terminal Rules for the specific Domain

Predicate ::= on(_,_) | near(_,_) | ...

Function ::= distance(_,_) | location(_) | ...

Variable ::= x | y | ...

Constant ::= Flakey | John-Bear | Karen | Alan-Alder | The-File | Kurt

Domain-Specific Terminal Rules

Page 7: 74.419 Artificial Intelligence 2005 - First-Order Predicate Logic - First-Order Predicate Logic (FOL or FOPL), also called First-Order Predicate Calculus.

Quantifiers and Binding

A variable in a formula can be bound by a quantifier.

bound variable x: married (Sally, x)

open formula: a variable in the formula is not bound by a quantifierx: married (Sally, x) happy (y)

closed formula: all variables in the formula are bound by quantifiers:x y: married (x, y)

Most authors regard quantified formulas only as wffs if • all quantified variables appear in the formula.

Some authors regard quantified formulas only as wffs if • all variables are bound by quantifiers.

Page 8: 74.419 Artificial Intelligence 2005 - First-Order Predicate Logic - First-Order Predicate Logic (FOL or FOPL), also called First-Order Predicate Calculus.

FOPL- Semantics / Interpretation -

Page 9: 74.419 Artificial Intelligence 2005 - First-Order Predicate Logic - First-Order Predicate Logic (FOL or FOPL), also called First-Order Predicate Calculus.

Semantics - Overview

Define the Semantics of FOPL expressions (formulae): 1. Interpretation – Maps symbols of the formal language (predicates, functions, variables, constants) onto objects, relations, and functions of the “world” (formally: Domain, relational Structure, or Universe)

2. Valuation - Assigns domain objects to variables*3. Constructive Semantics – Determines the semantics of complex expressions inductively, starting with basic expressions

* The Valuation function can be used for describing value assignments and constraints in case of nested quantifiers. The Valuation function otherwise determines the satisfaction of a formula only in case of open formulae.

Page 10: 74.419 Artificial Intelligence 2005 - First-Order Predicate Logic - First-Order Predicate Logic (FOL or FOPL), also called First-Order Predicate Calculus.

Semantics – Domain, Interpretation I

Domain, relational Structure, UniverseD finite set of Objects d1, d2, ... , dn

R,... Relations over D R Dn

F,... Functions over D F: Dn D

Basic Interpretation Mappingconstant I [c] = d Objectfunction I [f] = F Functionpredicate I [P] = R Relation

Valuation V

variable V(x) = dD

Page 11: 74.419 Artificial Intelligence 2005 - First-Order Predicate Logic - First-Order Predicate Logic (FOL or FOPL), also called First-Order Predicate Calculus.

Semantics –Interpretation

Next, determine the semantics for complex terms and formulae constructively, based on the basic interpretation mapping and the valuation function above.

Page 12: 74.419 Artificial Intelligence 2005 - First-Order Predicate Logic - First-Order Predicate Logic (FOL or FOPL), also called First-Order Predicate Calculus.

Semantics - Interpretation IITerms with variables

I [f(t1,...,tn)) = I [f] (I [t1],..., I [tn]) =

F(I [t1],..., I [tn]) D

where I[ti] = V(ti) if ti is a variable

Page 13: 74.419 Artificial Intelligence 2005 - First-Order Predicate Logic - First-Order Predicate Logic (FOL or FOPL), also called First-Order Predicate Calculus.

Semantics - Interpretation III

atomic Formula

I [P(t1,...,tn)]true if (I [t1],..., I [tn]) I [P] = R

negated Formula

I [] true if I [] is not true

complex Formula

I[] true if I [] or I [] true

I [] true if I [] and I [] true

I [] if I [] not true or I [] true

Page 14: 74.419 Artificial Intelligence 2005 - First-Order Predicate Logic - First-Order Predicate Logic (FOL or FOPL), also called First-Order Predicate Calculus.

Semantics - Interpretation III

quantified Formula (relative to Valuation function)

I [x:] true if is true with V’(x)=d for some dD where V’ is otherwise identical to the

prior V.

I [x:] true if is true with V’(x)=d for all dD and

where V’ is otherwise identical to the prior V.

Note: xy: is different from yx:

In the first case xy: , we go through all value assignments V'(x), and for each value assignment V'(x) of x, we have to find a suitable value V'(y) for y.

In the second case yx:, we have to find one value V'(y) for y, such that all value assignments V'(x) make true.

Page 15: 74.419 Artificial Intelligence 2005 - First-Order Predicate Logic - First-Order Predicate Logic (FOL or FOPL), also called First-Order Predicate Calculus.

Semantics - Quantifiers - Examples

ArithmeticsWhat could this be? - What are f, z, x, y ?

zxy : f(x,y)=z

What is this? (It's easier.)

xyz : f(x,y)=z

This one's different.

xy : f(x)=yxyz : f(x)=y f(x)=z y=z

Page 16: 74.419 Artificial Intelligence 2005 - First-Order Predicate Logic - First-Order Predicate Logic (FOL or FOPL), also called First-Order Predicate Calculus.

Semantics - Satisfiability

Given is an interpretation I into a domain D with a valuation V, and a formula .

We say that:

is satisfied in this interpretation or

this interpretation is a model of iff

I[] is true.

That means the interpretation function I into the domain D (with valuation V) makes the formula true.

Page 17: 74.419 Artificial Intelligence 2005 - First-Order Predicate Logic - First-Order Predicate Logic (FOL or FOPL), also called First-Order Predicate Calculus.

Logical Consequence - Entailment

Logical Consequence (Entailment)

Given a set of formulae and a formula α.

α is a logical consequence of iff α is true in every model in which is true.

Notation:

|= α

That means that for every model (interpretation into a domain) in which is true, α must also be true.

Page 18: 74.419 Artificial Intelligence 2005 - First-Order Predicate Logic - First-Order Predicate Logic (FOL or FOPL), also called First-Order Predicate Calculus.

FOPL- Inference System -

Axioms & Inference Rules

Page 19: 74.419 Artificial Intelligence 2005 - First-Order Predicate Logic - First-Order Predicate Logic (FOL or FOPL), also called First-Order Predicate Calculus.

FOPL Axioms

A1 A2

A3

A4 ( ) (( ) ( ))

A5 x: (x) (y)

A6 (x) y: (y)

Page 20: 74.419 Artificial Intelligence 2005 - First-Order Predicate Logic - First-Order Predicate Logic (FOL or FOPL), also called First-Order Predicate Calculus.

Formal Inference - Overview

Derive new formulae by syntactic manipulation of existing formulae:

• given set of formulae

describes your KB, or a Theory, ... (FOPL axioms + your own "proper" axioms)

• apply inference rule (based on )

new formula α is derived

• add new formula to KB or Theory

new KB or Theory is α

Page 21: 74.419 Artificial Intelligence 2005 - First-Order Predicate Logic - First-Order Predicate Logic (FOL or FOPL), also called First-Order Predicate Calculus.

Formal Inference

Formal Inference, TheoremGiven a set of formulae and a set of inference rules IR. A new formula α can be generated based on using inference rules in IR.

We say that α is inferred or derived from

or α is a Theorem (of )

Notation: |– α

Page 22: 74.419 Artificial Intelligence 2005 - First-Order Predicate Logic - First-Order Predicate Logic (FOL or FOPL), also called First-Order Predicate Calculus.

IR Modus Ponens

Modus Ponens ,

States that can be concluded provided we know that the formulae and are true in our knowledge base.

Page 23: 74.419 Artificial Intelligence 2005 - First-Order Predicate Logic - First-Order Predicate Logic (FOL or FOPL), also called First-Order Predicate Calculus.

IR Universal Instantiation

Universal Instantiation

x: (x) (c)

where (x) is any formula containing the variable x, and (c) is the formula (x) where every occurrence of the quantified variable x is substituted with the arbitrary constant c.

Page 24: 74.419 Artificial Intelligence 2005 - First-Order Predicate Logic - First-Order Predicate Logic (FOL or FOPL), also called First-Order Predicate Calculus.

IR Existential Generalization

Existential Generalization

(c) x: (x)

where (c) is any formula containing the arbitrary constant c, and (x) is the same formula as (c) but with every occurrence of the constant c replaced by a variable x.

Page 25: 74.419 Artificial Intelligence 2005 - First-Order Predicate Logic - First-Order Predicate Logic (FOL or FOPL), also called First-Order Predicate Calculus.

Replacement Rules

( ) ( )

IR Replacement Rules

Page 26: 74.419 Artificial Intelligence 2005 - First-Order Predicate Logic - First-Order Predicate Logic (FOL or FOPL), also called First-Order Predicate Calculus.

FOPL Inference System

• The Axioms and the Inference Rules above constitute a formal inference system for FOPL.

• This system - we call it FS1 - is complete and sound.

Page 27: 74.419 Artificial Intelligence 2005 - First-Order Predicate Logic - First-Order Predicate Logic (FOL or FOPL), also called First-Order Predicate Calculus.

Soundness and Completeness

SoundnessAn Inference System is sound iff

|– α |= α

every formula which can be derived by formal inference from is a also logical consequence of .

CompletenessAn Inference System is complete iff

|= α |– α

every formula which is a logical consequence of can be derived by formal inference from .

Page 28: 74.419 Artificial Intelligence 2005 - First-Order Predicate Logic - First-Order Predicate Logic (FOL or FOPL), also called First-Order Predicate Calculus.

FOPL - Sound and Complete 2

The above inference system for FOPL is sound and complete. Thus, every formula which can be derived in FOPL using FS1 ( |– α) is also a logical consequence of the given axioms ( |= α) :

|– α iff |= α

Thus, there is a correspondence between formal Inference and logical Consequence.

Page 29: 74.419 Artificial Intelligence 2005 - First-Order Predicate Logic - First-Order Predicate Logic (FOL or FOPL), also called First-Order Predicate Calculus.

Semantics - Example A1

Predicate Logic Languageconstants Bill-1, John-3, Sally-1, Mary-1, Mary-2predicates happy-together, hate-each-other

Structure Dobjects: Uncle-Bill, Uncle-John, Aunt-Sally, The-woman-I-don't-like, Maryrelations: Married, Divorced(Uncle-Bill, Aunt-Sally) Married, (Uncle-John, Mary) Married(Uncle-John, The-woman-I-don't-like) Divorced

InterpretationI(Bill-1)=Uncle-Bill, I(John-3)=Uncle-John, I(Sally-1)=Aunt-Sally, I(Mary-1)=The-woman-I-don't-like, I(Mary-2)=MaryI(happy-together)=Married, I(hate-each-other)=Divorced

True or false? hate-each-other (Bill-1, John-3) happy-together(Bill-1, Sally-1)hate-each-other(John-3, Mary-1)happy-together(John-3, Mary-2)

Page 30: 74.419 Artificial Intelligence 2005 - First-Order Predicate Logic - First-Order Predicate Logic (FOL or FOPL), also called First-Order Predicate Calculus.

Semantics -Example A2

Structure Dobjects: Uncle-Bill, Uncle-John, Aunt-Sally, The-woman-I-don't-like, Maryrelations: Married, Divorced(Uncle-John, The-woman-I-don't-like) Divorced (Uncle-Bill, Aunt-Sally) Married, (Uncle-John, Mary) Married(or: {(Uncle-Bill, Aunt-Sally), (Uncle-John, Mary)} = Married)

Interpretation II(Bill-1) = Uncle-Bill, I(John-3) = Uncle-John, I(Sally-1) = Aunt-Sally, I(Mary-1) = Mary, I(Mary-2) = The-woman-I-don't-like I(happy-together) = Married, I(hate-each-other) = Divorced

True or false? hate-each-other (Bill-1, John-3) hate-each-other (John-3, Mary-1)happy-together (Bill-1, Sally-1) happy-together (John-3, Mary-2)x: happy-together(Uncle-Bill, x)) x,y,z: happy-together(x,y) hate-each-other (x,z)

What if you want to add a formula? x,y: happy-together(x,y) happy-together(y,x)