Question: QUESTION REGARDING PROLOG: A. EXPLAIN BACKWARD CHAINING IN THE FOLLOWING PROLOG CODE B. DESCRIBE WHAT'S GOING ON IN THE CODE FEW WORDS C. WHO IS
QUESTION REGARDING PROLOG: A. EXPLAIN BACKWARD CHAINING IN THE FOLLOWING PROLOG CODE B. DESCRIBE WHAT'S GOING ON IN THE CODE FEW WORDS C. WHO IS THE MURDERER domains name, sex, occupation, object, vice, substance = symbol age=integer predicates person(name, age, sex, occupation) had_affair(name, name) killed_with(name, object) killed(name) killer(name) motive(vice) smeared_in(name, substance) owns(name, object) operates_identically(object, object) owns_probably(name, object) suspect(name) /* * * Facts about the murder * * */ clauses person(bert, 55, m, carpenter). person(allan, 25, m, football_player). person(allan, 25, m, butcher). person(john, 25, m, pickpocket). person(bhalja,55,m,football). had_affair(barbara, john). had_affair(barbara, bert). had_affair(susan, john). had_affair(susan,bhalja). killed_with(susan, club). killed(susan). motive(money). motive(jealousy). motive(righteousness). smeared_in(bhalja, blood). smeared_in(susan, blood). smeared_in(allan, mud). smeared_in(john, chocolate). smeared_in(barbara, chocolate). smeared_in(bert,choclate). owns(bert, wooden_leg). owns(john, pistol). owns(bhalja,club). /* * * Background knowledge * * */ operates_identically(wooden_leg, club). operates_identically(bar, club). operates_identically(pair_of_scissors, knife). operates_identically(football_boot, club). owns_probably(X, football_boot) :- person(X, _, _, football_player). owns_probably(X, pair_of_scissors) :- person(X, _, _, hairdresser). owns_probably(X, Object) :- owns(X, Object). /* * * * * * * * * * * * * * * * * * * * * * * * Suspect all those who own a weapon with * * which Susan could have been killed. * * * * * * * * * * * * * * * * * * * * * * * */ suspect(X) :- killed_with(susan, Weapon) , operates_identically(Object, Weapon) , owns_probably(X, Object). /* * * * * * * * * * * * * * * * * * * * * * * * * * * Suspect men who have had an affair with Susan. * * * * * * * * * * * * * * * * * * * * * * * * * * */ suspect(X) :- motive(jealousy) , person(X, _, m, _) , had_affair(susan, X). /* * * * * * * * * * * * * * * * * * * * * * Suspect females who have had an * * affair with someone that Susan knew. * * * * * * * * * * * * * * * * * * * * * */ suspect(X) :- motive(jealousy) , person(X, _, f, _) , had_affair(X, Man) , had_affair(susan, Man). /* * * * * * * * * * * * * * * * * * * * * * * * * * * * Suspect pickpockets whose motive could be money. * * * * * * * * * * * * * * * * * * * * * * * * * * * */ suspect(X) :- motive(money) , person(X, _, _, pickpocket). killer(Killer) :- person(Killer, _, _, _) , killed(Killed) , Killed <> Killer , /* It is not a suicide */ suspect(Killer) , smeared_in(Killer, Goo) , smeared_in(Killed, Goo).
Step by Step Solution
There are 3 Steps involved in it
1 Expert Approved Answer
Step: 1 Unlock
Question Has Been Solved by an Expert!
Get step-by-step solutions from verified subject matter experts
Step: 2 Unlock
Step: 3 Unlock
