Oct 3, 2003 ------------- - Now that we know how to do proofs - lets revisit some important steps - Key approach - define predicate vocabulary - write given sentences - convert to clausal form - resolve - Example proof tree - long "sticky" thingy - possible when KB consists of horn clauses - "bushy" proofs - general case - Looking at structure of resolution-refutation proofs - input resolution - complete for Horn clauses - unit resolution - complete for Horn clauses - linear resolution - complete - set-of-support resolution - complete, if set chosen properly - Unifiers - find substitutions that make one statement equivalent to another - Examples - MGU(Knows(John,x),Knows(y,Bill)) - MGU(Knows(John,x),Knows(y,Mother(y))) - MGU(Knows(John,x),Knows(y,z)) - has many Us - Examples where MGU doesn't exist - MGU(Knows(John,x),Knows(Bill,y)) - MGU(Knows(John,x),Knows(Elizabeth,x)) - Occurs-check - a check to see if a variable being substituted already occurs elsewhere in the same formula - omitted by some systems, such as PROLOG