# Lecture10HO - CS440/ECE448: Intro to Articial Intelligence!...

This preview shows pages 1–4. Sign up to view the full content.

Lecture 10: Even more on predicate logic Prof. Julia Hockenmaier [email protected] http://cs.illinois.edu/fa11/cs440 CS440/ECE448: Intro to ArtiFcial Intelligence Inference in predicate logic All men are mortal. Socrates is a man. Socrates is mortal. We need a new version of modus ponens: x P(x) ! Q(x) P(s’) !!!!!!!!!! Q(s’) 2 CS440/ECE448: Intro AI How do we deal with quantiFers and variables? Solution 1: Propositionalization Ground all the variables. Solution 2: Lifted inference Ground ( skolemize ) all the existentially quantiFed variables. All remaining variables are universally quantiFed. Use uniFcation . 3 CS440/ECE448: Intro AI Prerequisites for lifted inference: Skolemization and UniFcation

This preview has intentionally blurred sections. Sign up to view the full version.

View Full Document
Skolemization: remove existentially quantifed variables Replace any existentially quantifed variable ! x that is in the scope oF universally quantifed variables " y 1 " y n with a new Function F(y 1 ,…,y n ) (a Skolem function ) Replace any existentially quantifed variable ! x that is not in the scope oF any universally quantifed variables with a new constant c (a Skolem term ) 5 CS440/ECE448: Intro AI The effect of Skolemization " x " y ! w " z Q(x, y, w , z, G( w , x)) is equivalent to " x " y " z Q(x, y, P(x, y) , z, G( P(x, y) , x )) where P is the Skolem Function For w. NB: the Skolem Function is a Function, so this is not decidable anymore. 6 CS440/ECE448: Intro AI Universal quantiFers: Modus ponens With propositionalization: x human(x) ! mortal(x) human(s’) !!!!!!!!!!!!!!! (UI) human(s’) ! mortal(s’) !!!!!!!!!!!!!!!!!!!!!!!! (MP) mortal(s’) How can we match human(s’) and x human(x) ! mortal(x) directly? 7 CS440/ECE448: Intro AI A substitution " is a set oF pairings oF variables v i with terms t i : " = {v 1 /t 1 , v 2 /t 2 , v 3 /t 3 , …, v n / t n } Each variable v i is distinct t i can be any term (variable, constant, Function), as long as it does not contain v i directly or indirectly NB: the order oF variables in " doesn ʼ t matter {x/y, y/f(a)} = {y/f(a), x/y} = {x/f(a), y/f(a)} Substitutions
Unifcation Two sentences # and \$ uniFy to % ( U NIFY ( # , \$ ) = % ) if % is a substitution such that S UBST ( % , # ) = S UBST ( % , \$ ) . Example: U NIFY (like(x, M’), like(C’,y)) ={x/C’, y/M’} Unifcation A set of sentences # 1, # n uniFy to % if for all i j : S UBST ( % , # i ) = S UBST ( % , # j ). % is the uniFer of # 1, # n S UBST ( % , # i ) is a uniFcation instance. Standardizing apart UniFcation is not well-behaved if # and \$ contain the same variable: U NIFY (like( x , M’), like(C’, x )): fail. We need to standardize # and \$ apart (rename this variable in one term): U NIFY (like( x , M’), like(C’, y )) = {x/C’, y/M’} to yield like(C’,M’) 11 CS440/ECE448: Intro AI Do these uniFy? (Single lower case letters are variables)

This preview has intentionally blurred sections. Sign up to view the full version.

View Full Document
This is the end of the preview. Sign up to access the rest of the document.

## This note was uploaded on 10/13/2011 for the course CS 440 taught by Professor Levinson,s during the Spring '08 term at University of Illinois, Urbana Champaign.

### Page1 / 11

Lecture10HO - CS440/ECE448: Intro to Articial Intelligence!...

This preview shows document pages 1 - 4. Sign up to view the full document.

View Full Document
Ask a homework question - tutors are online