74.419 artificial intelligence 2005 - first-order predicate logic - first-order predicate logic (fol...
Post on 18-Dec-2015
242 views
TRANSCRIPT
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
FOPL- Formal Language / Syntax -
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.
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
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
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
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.
FOPL- Semantics / Interpretation -
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.
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
Semantics –Interpretation
Next, determine the semantics for complex terms and formulae constructively, based on the basic interpretation mapping and the valuation function above.
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
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
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.
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
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.
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.
FOPL- Inference System -
Axioms & Inference Rules
FOPL Axioms
A1 A2
A3
A4 ( ) (( ) ( ))
A5 x: (x) (y)
A6 (x) y: (y)
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 α
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: |– α
IR Modus Ponens
Modus Ponens ,
States that can be concluded provided we know that the formulae and are true in our knowledge base.
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.
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.
Replacement Rules
( ) ( )
IR Replacement Rules
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.
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 .
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.
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)
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)