CS 371
Introduction to Artificial Intelligence
Homework #6


Due: Thursday, 10/2
  1. Solving a Mystery with OTTER: Consider the following mystery: "Victor has been murdered, and Arthur, Bertram, and Carleton are suspects. Arthur says he did not do it. He says that Bertram was the victim's friend but that Carleton hated the victim. Bertram says he was out-of-town on the day of the murder, and besides he didn't even know the guy. Carleton says he is innocent and he saw Arthur and Bertram with the victim just before the murder." Assume that everyone - except possibly for the murderer - is telling the truth, we'll use the OTTER theorem prover to solve the crime.
    1. Express each of the following facts in OTTER syntax using the following relations and constants: Truthful(1), Innocent(1), Friend(2), Hates(2), With(2), Knows(2), Victor, Arthur, Bertram, Carleton

    2. These can be abbreviated T,I,F,H,W,K,V,A,B, and C.
      1. If Arthur is truthful, then Arthur is innocent, Bertram was a friend of Victor's, and Carleton hated Victor.
      2. If Bertram is truthful, then Bertram was not with Victor and Bertram did not know Victor.
      3. If Carleton is truthful, then Carleton is innocent, Arthur was with Victor, and Bertram was with Victor.
      4. If one is friends with another, then one knows another.
      5. If one was not with Victor, one is innocent.
      6. Arthur is guilty or Bertram is guilty or Carleton is guilty.
      7. If Arthur is guilty, then Bertram and Carleton are truthful.
      8. If Bertram is guilty, then Arthur and Carleton are truthful.
      9. If Carleton is guilty, then Arthur and Bertram are truthful.
    3. Using OTTER, solve the murder. This can be accomplished by individually assuming a suspect's guilt and seeing if such an assumption is consistent or contradictory. See the OTTER How-To guide. Be sure to hand in all input and output files, showing the results of each possible assumption of guilt.

(c) 2000 Todd Neller