I will post the file
In class exercises ============== 1.Suppose we are working with the following knowledge base: wizard(ron). wizard(X) :- hasBroom(X),hasWand(X). hasWand(harry). quidditchPlayer(harry). hasBroom(X) :- quidditchPlayer(X). How does Prolog respond to the following queries? 1) wizard(ron). 2) witch(ron). 3) wizard(hermione). 4) witch(hermione). 5) wizard(harry). 6) wizard(Y). 7) witch(Y). 2. Here is a tiny lexicon and mini grammar with only one rule which defines a sentence as consisting of five words: an article, a noun, a verb, and again an article and a noun. word(article,a). word(article,every). word(noun,criminal). word(noun,'big kahuna burger'). word(verb,eats). word(verb,likes). sentence(Word1,Word2,Word3,Word4,Word5) :- word(article,Word1), word(noun,Word2), word(verb,Word3), word(article,Word4), word(noun,Word5). 1) What query do you have to pose in order to find out which sentences the grammar can generate? 2) List the first five sentences that this grammar can generate in the order Prolog will generate them. Make sure that you understand why Prolog generates them in this order. In class exercises 2 1. Represent the following in Prolog: a) Butch is a killer. b) Mia and Marsellus are married. c) Zed is dead. d) Marsellus kills everyone who gives Mia a footmassage. e) Mia loves everyone who is a good dancer. f) Jules eats anything that is nutritious or tasty. 2. Murder Mystery Four guests (Colonel Mustard, Professor Plum, Miss Scarlett, Ms. Green) attend a dinner party at the home of Mr. Boddy. Suddenly, the lights go out! When they come back, Mr. Boddy lies dead in the middle of the table. Everyone is a suspect. Upon further examination, the following facts come to light: • Mr Boddy was having an affair with Ms. Green. • Professor Plum is married to Ms. Green. • Mr. Boddy was very rich. • Colonel Mustard is very greedy. • Miss Scarlett was also having an affair with Mr. Boddy. There are two possible motives for the murder: hatred and greed. Someone hates someone else if that other person is having an affair with his/her spouse. Someone is willing to commit murder if he/she is greedy and not rich, and the victim is rich. Who are the suspects? 3. Below is a list of the most recent American presidents. a) Build a knowledge base using the predicate directlyAfter/2 which encodes one president is directly after another president. b) Formulate and add a RULE called directlyBefore/2 tells which president is directly before which other president. c) Define another rule called after/2 that tells us which president is (directly or indirectly) after which other president. For example, the query after(‘Barak Obama’, ‘John F. Kennedy’). should evaluate to be true, while after(‘George H. Bush’,’Barak Obama’). should fail. d) Test your implementation by asking queries. Write down your query and also the result. • Is Obama directly before Trump? • Is Carter after Johnson? • Who are after Ford? • Who are the presidents in the knowledge base?