ITCS 3153 Artificial Intelligence Lecture 15 First-Order Logic Chapter 9 Lecture 15 First-Order...

26
ITCS 3153 Artificial Intelligence Lecture 15 Lecture 15 First-Order Logic First-Order Logic Chapter 9 Chapter 9

Transcript of ITCS 3153 Artificial Intelligence Lecture 15 First-Order Logic Chapter 9 Lecture 15 First-Order...

Page 1: ITCS 3153 Artificial Intelligence Lecture 15 First-Order Logic Chapter 9 Lecture 15 First-Order Logic Chapter 9.

ITCS 3153Artificial Intelligence

Lecture 15Lecture 15

First-Order LogicFirst-Order Logic

Chapter 9Chapter 9

Lecture 15Lecture 15

First-Order LogicFirst-Order Logic

Chapter 9Chapter 9

Page 2: ITCS 3153 Artificial Intelligence Lecture 15 First-Order Logic Chapter 9 Lecture 15 First-Order Logic Chapter 9.

Forward Chaining

Remember this from propositional logic?Remember this from propositional logic?

• Start with atomic sentences in KBStart with atomic sentences in KB

• Apply Modus PonensApply Modus Ponens

– add new sentences to KBadd new sentences to KB

– discontinue when no new sentencesdiscontinue when no new sentences

• Hopefully find the sentence you are looking for in the Hopefully find the sentence you are looking for in the generated sentencesgenerated sentences

Remember this from propositional logic?Remember this from propositional logic?

• Start with atomic sentences in KBStart with atomic sentences in KB

• Apply Modus PonensApply Modus Ponens

– add new sentences to KBadd new sentences to KB

– discontinue when no new sentencesdiscontinue when no new sentences

• Hopefully find the sentence you are looking for in the Hopefully find the sentence you are looking for in the generated sentencesgenerated sentences

Page 3: ITCS 3153 Artificial Intelligence Lecture 15 First-Order Logic Chapter 9 Lecture 15 First-Order Logic Chapter 9.

Lifting forward chaining

First-order definite clausesFirst-order definite clauses

• all sentences are defined this way to simplify processingall sentences are defined this way to simplify processing

– disjunction of literals with exactly one positivedisjunction of literals with exactly one positive

– clause is either atomic or an implication whose antecedent clause is either atomic or an implication whose antecedent is a conjunction of positive literals and whose consequent is a conjunction of positive literals and whose consequent is a single positive literalis a single positive literal

First-order definite clausesFirst-order definite clauses

• all sentences are defined this way to simplify processingall sentences are defined this way to simplify processing

– disjunction of literals with exactly one positivedisjunction of literals with exactly one positive

– clause is either atomic or an implication whose antecedent clause is either atomic or an implication whose antecedent is a conjunction of positive literals and whose consequent is a conjunction of positive literals and whose consequent is a single positive literalis a single positive literal

Page 4: ITCS 3153 Artificial Intelligence Lecture 15 First-Order Logic Chapter 9 Lecture 15 First-Order Logic Chapter 9.

Example

• The law says it is a crime for an American to sell weapons to The law says it is a crime for an American to sell weapons to hostile nations. The country Nono, an enemy of America, hostile nations. The country Nono, an enemy of America, has some missiles, and all of its missles were sold to it by has some missiles, and all of its missles were sold to it by Colonel West, who is AmericanColonel West, who is American

• We will prove West is a criminalWe will prove West is a criminal

• The law says it is a crime for an American to sell weapons to The law says it is a crime for an American to sell weapons to hostile nations. The country Nono, an enemy of America, hostile nations. The country Nono, an enemy of America, has some missiles, and all of its missles were sold to it by has some missiles, and all of its missles were sold to it by Colonel West, who is AmericanColonel West, who is American

• We will prove West is a criminalWe will prove West is a criminal

Page 5: ITCS 3153 Artificial Intelligence Lecture 15 First-Order Logic Chapter 9 Lecture 15 First-Order Logic Chapter 9.

Example

• It is a crime for an American to sell weapons to hostile nationsIt is a crime for an American to sell weapons to hostile nations

• Nono… has some misslesNono… has some missles

– Owns (Nono, M1)Owns (Nono, M1)

– Missile (M1)Missile (M1)

• All of its missiles were sold to it by Colonel WestAll of its missiles were sold to it by Colonel West

• It is a crime for an American to sell weapons to hostile nationsIt is a crime for an American to sell weapons to hostile nations

• Nono… has some misslesNono… has some missles

– Owns (Nono, M1)Owns (Nono, M1)

– Missile (M1)Missile (M1)

• All of its missiles were sold to it by Colonel WestAll of its missiles were sold to it by Colonel West

Page 6: ITCS 3153 Artificial Intelligence Lecture 15 First-Order Logic Chapter 9 Lecture 15 First-Order Logic Chapter 9.

Example

• We also need to know that missiles are weaponsWe also need to know that missiles are weapons

• and we must know that an enemy of America counts as and we must know that an enemy of America counts as “hostile”“hostile”

• ““West, who is American”West, who is American”

• The country Nono, an enemy of AmericaThe country Nono, an enemy of America

• We also need to know that missiles are weaponsWe also need to know that missiles are weapons

• and we must know that an enemy of America counts as and we must know that an enemy of America counts as “hostile”“hostile”

• ““West, who is American”West, who is American”

• The country Nono, an enemy of AmericaThe country Nono, an enemy of America

Page 7: ITCS 3153 Artificial Intelligence Lecture 15 First-Order Logic Chapter 9 Lecture 15 First-Order Logic Chapter 9.

Forward-chaining

Starting from the factsStarting from the facts

• find all rules with satisfied premisesfind all rules with satisfied premises

• add their conclusions to known factsadd their conclusions to known facts

• repeat untilrepeat until

– query is answeredquery is answered

– no new facts are addedno new facts are added

Starting from the factsStarting from the facts

• find all rules with satisfied premisesfind all rules with satisfied premises

• add their conclusions to known factsadd their conclusions to known facts

• repeat untilrepeat until

– query is answeredquery is answered

– no new facts are addedno new facts are added

Page 8: ITCS 3153 Artificial Intelligence Lecture 15 First-Order Logic Chapter 9 Lecture 15 First-Order Logic Chapter 9.

First iteration of forward chaining

Look at the implication sentences firstLook at the implication sentences first

• must satisfy unknown premisesmust satisfy unknown premises

• We can satisfy this ruleWe can satisfy this rule

– by substituting {x/M1} by substituting {x/M1}

– and adding Sells(West, M1, Nono) to KBand adding Sells(West, M1, Nono) to KB

Look at the implication sentences firstLook at the implication sentences first

• must satisfy unknown premisesmust satisfy unknown premises

• We can satisfy this ruleWe can satisfy this rule

– by substituting {x/M1} by substituting {x/M1}

– and adding Sells(West, M1, Nono) to KBand adding Sells(West, M1, Nono) to KB

Page 9: ITCS 3153 Artificial Intelligence Lecture 15 First-Order Logic Chapter 9 Lecture 15 First-Order Logic Chapter 9.

First iteration of forward chaining

• We can satisfyWe can satisfy

– with {x/M1}with {x/M1}

– and Weapon (M1) is addedand Weapon (M1) is added

• We can satisfyWe can satisfy

– with {x/Nono}with {x/Nono}

– and Hostile {Nono} is addedand Hostile {Nono} is added

• We can satisfyWe can satisfy

– with {x/M1}with {x/M1}

– and Weapon (M1) is addedand Weapon (M1) is added

• We can satisfyWe can satisfy

– with {x/Nono}with {x/Nono}

– and Hostile {Nono} is addedand Hostile {Nono} is added

Page 10: ITCS 3153 Artificial Intelligence Lecture 15 First-Order Logic Chapter 9 Lecture 15 First-Order Logic Chapter 9.

Second iteration of forward chaining

• We can satisfyWe can satisfy

– with {x/West, y/M1, z/Nono}with {x/West, y/M1, z/Nono}

– and Criminal (West) is addedand Criminal (West) is added

• We can satisfyWe can satisfy

– with {x/West, y/M1, z/Nono}with {x/West, y/M1, z/Nono}

– and Criminal (West) is addedand Criminal (West) is added

Page 11: ITCS 3153 Artificial Intelligence Lecture 15 First-Order Logic Chapter 9 Lecture 15 First-Order Logic Chapter 9.

Analyze this algorithm

Sound?Sound?

• Does it only derive sentences that are entailed?Does it only derive sentences that are entailed?

• Yes, because only Modus Ponens is used and it is soundYes, because only Modus Ponens is used and it is sound

Complete?Complete?

• Does it answer every query whose answers are entailed by Does it answer every query whose answers are entailed by the KB?the KB?

• Yes if the clauses are definite clausesYes if the clauses are definite clauses

Sound?Sound?

• Does it only derive sentences that are entailed?Does it only derive sentences that are entailed?

• Yes, because only Modus Ponens is used and it is soundYes, because only Modus Ponens is used and it is sound

Complete?Complete?

• Does it answer every query whose answers are entailed by Does it answer every query whose answers are entailed by the KB?the KB?

• Yes if the clauses are definite clausesYes if the clauses are definite clauses

Page 12: ITCS 3153 Artificial Intelligence Lecture 15 First-Order Logic Chapter 9 Lecture 15 First-Order Logic Chapter 9.

Proving completeness

Assume KB only has sentences with no function symbolsAssume KB only has sentences with no function symbols

• What’s the most number of iterations through algorithm?What’s the most number of iterations through algorithm?

• Depends on the number of facts that can be addedDepends on the number of facts that can be added

– Let Let kk be the arity, the max number of arguments of any predicate and be the arity, the max number of arguments of any predicate and

– Let Let pp be the number of predicates be the number of predicates

– Let Let nn be the number of constant symbols be the number of constant symbols

• At most At most pnpnkk distinct ground facts distinct ground facts

• Fixed point is reached after this many iterationsFixed point is reached after this many iterations

• A proof by contradiction shows that the final KB is completeA proof by contradiction shows that the final KB is complete

Assume KB only has sentences with no function symbolsAssume KB only has sentences with no function symbols

• What’s the most number of iterations through algorithm?What’s the most number of iterations through algorithm?

• Depends on the number of facts that can be addedDepends on the number of facts that can be added

– Let Let kk be the arity, the max number of arguments of any predicate and be the arity, the max number of arguments of any predicate and

– Let Let pp be the number of predicates be the number of predicates

– Let Let nn be the number of constant symbols be the number of constant symbols

• At most At most pnpnkk distinct ground facts distinct ground facts

• Fixed point is reached after this many iterationsFixed point is reached after this many iterations

• A proof by contradiction shows that the final KB is completeA proof by contradiction shows that the final KB is complete

Page 13: ITCS 3153 Artificial Intelligence Lecture 15 First-Order Logic Chapter 9 Lecture 15 First-Order Logic Chapter 9.

Complexit of this algorithm

Three sources of complexityThree sources of complexity

• inner loop requires finding all unifiers such that premise of inner loop requires finding all unifiers such that premise of rule unifies with facts of databaserule unifies with facts of database

– this this “pattern matching” “pattern matching” is expensiveis expensive

• must check every rule on every iteration to check if its must check every rule on every iteration to check if its premises are satisfiedpremises are satisfied

• many facts are generated that are irrelevant to goalmany facts are generated that are irrelevant to goal

Three sources of complexityThree sources of complexity

• inner loop requires finding all unifiers such that premise of inner loop requires finding all unifiers such that premise of rule unifies with facts of databaserule unifies with facts of database

– this this “pattern matching” “pattern matching” is expensiveis expensive

• must check every rule on every iteration to check if its must check every rule on every iteration to check if its premises are satisfiedpremises are satisfied

• many facts are generated that are irrelevant to goalmany facts are generated that are irrelevant to goal

Page 14: ITCS 3153 Artificial Intelligence Lecture 15 First-Order Logic Chapter 9 Lecture 15 First-Order Logic Chapter 9.

Pattern matching

Conjunct orderingConjunct ordering• Missile (x) ^ Owns (Nono, x) => Sells (West, x, Nono)Missile (x) ^ Owns (Nono, x) => Sells (West, x, Nono)

– Look at all items owned by Nono, call them XLook at all items owned by Nono, call them X

– for each element x in X, check if it is a missilefor each element x in X, check if it is a missile

– Look for all missiles, call them XLook for all missiles, call them X

– for each element x in X, check if it is owned by Nonofor each element x in X, check if it is owned by Nono

Optimal ordering is NP-hard, similar to matrix multOptimal ordering is NP-hard, similar to matrix mult

Conjunct orderingConjunct ordering• Missile (x) ^ Owns (Nono, x) => Sells (West, x, Nono)Missile (x) ^ Owns (Nono, x) => Sells (West, x, Nono)

– Look at all items owned by Nono, call them XLook at all items owned by Nono, call them X

– for each element x in X, check if it is a missilefor each element x in X, check if it is a missile

– Look for all missiles, call them XLook for all missiles, call them X

– for each element x in X, check if it is owned by Nonofor each element x in X, check if it is owned by Nono

Optimal ordering is NP-hard, similar to matrix multOptimal ordering is NP-hard, similar to matrix mult

Page 15: ITCS 3153 Artificial Intelligence Lecture 15 First-Order Logic Chapter 9 Lecture 15 First-Order Logic Chapter 9.

Incremental forward chaining

Pointless (redundant) repetitionPointless (redundant) repetition

• Some rules generate new informationSome rules generate new information

– this information may permit unification of existing rulesthis information may permit unification of existing rules

• some rules generate preexisting informationsome rules generate preexisting information

– we need not revisit the unification of the existing ruleswe need not revisit the unification of the existing rules

Every new fact inferred on iteration t must be derived Every new fact inferred on iteration t must be derived from at least one new fact inferred on iteration t-1from at least one new fact inferred on iteration t-1

Pointless (redundant) repetitionPointless (redundant) repetition

• Some rules generate new informationSome rules generate new information

– this information may permit unification of existing rulesthis information may permit unification of existing rules

• some rules generate preexisting informationsome rules generate preexisting information

– we need not revisit the unification of the existing ruleswe need not revisit the unification of the existing rules

Every new fact inferred on iteration t must be derived Every new fact inferred on iteration t must be derived from at least one new fact inferred on iteration t-1from at least one new fact inferred on iteration t-1

Page 16: ITCS 3153 Artificial Intelligence Lecture 15 First-Order Logic Chapter 9 Lecture 15 First-Order Logic Chapter 9.

Irrelevant facts

Some facts are irrelevant and occupy computation Some facts are irrelevant and occupy computation of forward-chaining algorithmof forward-chaining algorithm

• What if Nono example included lots of facts about food What if Nono example included lots of facts about food preferences?preferences?

– Not related to conclusions drawn about sale of weaponsNot related to conclusions drawn about sale of weapons

– How can we eliminate them?How can we eliminate them?

Backward chaining is one wayBackward chaining is one way

Some facts are irrelevant and occupy computation Some facts are irrelevant and occupy computation of forward-chaining algorithmof forward-chaining algorithm

• What if Nono example included lots of facts about food What if Nono example included lots of facts about food preferences?preferences?

– Not related to conclusions drawn about sale of weaponsNot related to conclusions drawn about sale of weapons

– How can we eliminate them?How can we eliminate them?

Backward chaining is one wayBackward chaining is one way

Page 17: ITCS 3153 Artificial Intelligence Lecture 15 First-Order Logic Chapter 9 Lecture 15 First-Order Logic Chapter 9.

Magic Set

Rewriting the rule setRewriting the rule set

• Sounds dangerousSounds dangerous

• Add elements to premises that restrict candidates that will matchAdd elements to premises that restrict candidates that will match

– added elements are based on desired goaladded elements are based on desired goal

• Let goal = Criminal (West)Let goal = Criminal (West)

– Magic(x) ^ American(x) ^ Weapon(y) ^ Sells(x, y, z) ^ Hostile(z) => Magic(x) ^ American(x) ^ Weapon(y) ^ Sells(x, y, z) ^ Hostile(z) => Criminal (x)Criminal (x)

– Add Magic (West) to Knowledge BaseAdd Magic (West) to Knowledge Base

Rewriting the rule setRewriting the rule set

• Sounds dangerousSounds dangerous

• Add elements to premises that restrict candidates that will matchAdd elements to premises that restrict candidates that will match

– added elements are based on desired goaladded elements are based on desired goal

• Let goal = Criminal (West)Let goal = Criminal (West)

– Magic(x) ^ American(x) ^ Weapon(y) ^ Sells(x, y, z) ^ Hostile(z) => Magic(x) ^ American(x) ^ Weapon(y) ^ Sells(x, y, z) ^ Hostile(z) => Criminal (x)Criminal (x)

– Add Magic (West) to Knowledge BaseAdd Magic (West) to Knowledge Base

Page 18: ITCS 3153 Artificial Intelligence Lecture 15 First-Order Logic Chapter 9 Lecture 15 First-Order Logic Chapter 9.

Backward Chaining

Start with the premises of the goalStart with the premises of the goal

• Each premise must be supported by KBEach premise must be supported by KB

• Start with first premise and look for support from KBStart with first premise and look for support from KB

– looking for clauses with a head that matches premiselooking for clauses with a head that matches premise

– the head’s premise must then be supported by KBthe head’s premise must then be supported by KB

A recursive, depth-first, algorithmA recursive, depth-first, algorithm

• Suffers from repetition and incompletenessSuffers from repetition and incompleteness

Start with the premises of the goalStart with the premises of the goal

• Each premise must be supported by KBEach premise must be supported by KB

• Start with first premise and look for support from KBStart with first premise and look for support from KB

– looking for clauses with a head that matches premiselooking for clauses with a head that matches premise

– the head’s premise must then be supported by KBthe head’s premise must then be supported by KB

A recursive, depth-first, algorithmA recursive, depth-first, algorithm

• Suffers from repetition and incompletenessSuffers from repetition and incompleteness

Page 19: ITCS 3153 Artificial Intelligence Lecture 15 First-Order Logic Chapter 9 Lecture 15 First-Order Logic Chapter 9.

Resolution

We saw earlier that resolution is a We saw earlier that resolution is a completecomplete algorithm for refuting statementsalgorithm for refuting statements

• Must put first-order sentences into conjunctive normal formMust put first-order sentences into conjunctive normal form

– conjunction of clauses, each is a disjunction of literalsconjunction of clauses, each is a disjunction of literals

literals can contain variables (which are assumed to be literals can contain variables (which are assumed to be universally quantified)universally quantified)

We saw earlier that resolution is a We saw earlier that resolution is a completecomplete algorithm for refuting statementsalgorithm for refuting statements

• Must put first-order sentences into conjunctive normal formMust put first-order sentences into conjunctive normal form

– conjunction of clauses, each is a disjunction of literalsconjunction of clauses, each is a disjunction of literals

literals can contain variables (which are assumed to be literals can contain variables (which are assumed to be universally quantified)universally quantified)

Page 20: ITCS 3153 Artificial Intelligence Lecture 15 First-Order Logic Chapter 9 Lecture 15 First-Order Logic Chapter 9.

First-order CNF

• For all x, American(x) ^ Weapon(y) ^ Sells(x, y, z) ^ Hostile (z) => For all x, American(x) ^ Weapon(y) ^ Sells(x, y, z) ^ Hostile (z) => Criminal(x)Criminal(x)

• ~American(x) V ~Weapon(y) V ~Sells(x, y, z) V ~Hostile(z) V Criminal(x)~American(x) V ~Weapon(y) V ~Sells(x, y, z) V ~Hostile(z) V Criminal(x)

Every sentence of first-order logic can be converted into Every sentence of first-order logic can be converted into an inferentially equivalent CNF sentence (they are both an inferentially equivalent CNF sentence (they are both unsatisfiable in same conditions)unsatisfiable in same conditions)

• For all x, American(x) ^ Weapon(y) ^ Sells(x, y, z) ^ Hostile (z) => For all x, American(x) ^ Weapon(y) ^ Sells(x, y, z) ^ Hostile (z) => Criminal(x)Criminal(x)

• ~American(x) V ~Weapon(y) V ~Sells(x, y, z) V ~Hostile(z) V Criminal(x)~American(x) V ~Weapon(y) V ~Sells(x, y, z) V ~Hostile(z) V Criminal(x)

Every sentence of first-order logic can be converted into Every sentence of first-order logic can be converted into an inferentially equivalent CNF sentence (they are both an inferentially equivalent CNF sentence (they are both unsatisfiable in same conditions)unsatisfiable in same conditions)

Page 21: ITCS 3153 Artificial Intelligence Lecture 15 First-Order Logic Chapter 9 Lecture 15 First-Order Logic Chapter 9.

Example

Everyone who loves all animals is loved by someoneEveryone who loves all animals is loved by someoneEveryone who loves all animals is loved by someoneEveryone who loves all animals is loved by someone

Page 22: ITCS 3153 Artificial Intelligence Lecture 15 First-Order Logic Chapter 9 Lecture 15 First-Order Logic Chapter 9.

Example

Page 23: ITCS 3153 Artificial Intelligence Lecture 15 First-Order Logic Chapter 9 Lecture 15 First-Order Logic Chapter 9.

Example

F and G are Skolem FunctionsF and G are Skolem Functions

• arguments of function are universally quantified variables in arguments of function are universally quantified variables in whose scope the existential quantifier appearswhose scope the existential quantifier appears

F and G are Skolem FunctionsF and G are Skolem Functions

• arguments of function are universally quantified variables in arguments of function are universally quantified variables in whose scope the existential quantifier appearswhose scope the existential quantifier appears

Page 24: ITCS 3153 Artificial Intelligence Lecture 15 First-Order Logic Chapter 9 Lecture 15 First-Order Logic Chapter 9.

Example

• Two clausesTwo clauses

• F(x) refers to the animal potentially unloved by xF(x) refers to the animal potentially unloved by x

• G(x) refers to someone who might love xG(x) refers to someone who might love x

• Two clausesTwo clauses

• F(x) refers to the animal potentially unloved by xF(x) refers to the animal potentially unloved by x

• G(x) refers to someone who might love xG(x) refers to someone who might love x

Page 25: ITCS 3153 Artificial Intelligence Lecture 15 First-Order Logic Chapter 9 Lecture 15 First-Order Logic Chapter 9.

Resolution inference rule

A lifted version of propositional resolution ruleA lifted version of propositional resolution rule

• two clauses must be standardized aparttwo clauses must be standardized apart

– no variables are sharedno variables are shared

• can be resolved if their literals are complementarycan be resolved if their literals are complementary

– one is the negation of the otherone is the negation of the other

– if one unifies with the negation of the otherif one unifies with the negation of the other

A lifted version of propositional resolution ruleA lifted version of propositional resolution rule

• two clauses must be standardized aparttwo clauses must be standardized apart

– no variables are sharedno variables are shared

• can be resolved if their literals are complementarycan be resolved if their literals are complementary

– one is the negation of the otherone is the negation of the other

– if one unifies with the negation of the otherif one unifies with the negation of the other

Page 26: ITCS 3153 Artificial Intelligence Lecture 15 First-Order Logic Chapter 9 Lecture 15 First-Order Logic Chapter 9.

Resolution