fopl[1]

# 9 unicaon example xknows john x loves john x knows

This preview shows page 1. Sign up to view the full content.

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

Unformatted text preview: ersonlovedby ( x )) € 7 Inference Rules •  Existen<al Introduc<on α (g) SUBST ({v / g}, ∃v : α (v)) •  How to read this: € –  We know that the sentence α is true –  Can subs<tute variable v for any constant g in α and (w/existen<al quan<ﬁer) and α will s<ll be true –  Why is this OK? Generalized Modus Ponens Example •  If has_US_birth_cer<ﬁcate(X) then natural_US_ci<zen(X) •  has_US_birth_cer<ﬁcate(Obama) •  Conclude SUBST({Obama/X},natural_US_ci<zen(X)) •  i.e., natural_US_ci<zen(Obama) 8 Generalized Modus Ponens SUBST (θ , pi ' ) = SUBST (θ , pi )∀i p1 ', p2 ',… pn ', ( p1 ∧ p2 ∧ … ∧ pn ⇒ q) SUBST (θ , q) € •  How to read this: € –  We have an implica<on which implies q –  Any consistent subs<tu<on of variables on the LHS must yield a valid conclusion on the RHS Uniﬁca<on •  Subs<tu<on is a non ­trivial maMer •  We need an algorithm unify: Unify( p, q) = θ : Subst(θ , p) = Subst(θ , q) •  Important: Uniﬁca<on replaces variables: ∃xLoves( John, x ) ∃xHates( John, x ) € •  Are these the same x? € 9 Uniﬁca<on Example ∀xKnows( John, x ) ⇒ Loves( John, x ) Knows( John, Jane) ∀yKnows( y, Leonid ) ∀yKnows( y, Mother ( y )) ∀xKnows( x, Elizabeth) Note: All unquan<ﬁed variables are assumed universal from here on. € Unify(Knows( John, x ), Knows( John, Jane)) = Unify(Knows( John, x ), Knows( y, Leonid )) = Unify(Knows( John, x ), Knows( y, Mother ( y ))) = € Unify(Knows( John, x ), Knows( x, Elizabeth)) = € {x / Jane} {x / Leonid, y / John} {y / John, x / Mother ( John)} {x1 / Elizabeth, x2 / John} € € € Most General Uniﬁer •  Unify(Knows(John,x),Knows(y,z)) –  {y/John,x/z} –  {y/John,x/z,w/Freda} –  {y/John,x/John,z/John) •  When in doubt, we should always return the most general uniﬁer (MGU) –  MGU...
View Full Document

{[ snackBarMessage ]}

Ask a homework question - tutors are online