$29
[20 points] For each of the following sentences, decide if the logic sentence given is a correct translation of the English sentence or not. If not explain briefly why not and correct it:
All houses have at least one bathroom.
∀ x [House(x) ∧ ∃ y Bathroom(y)] ⇒ In(x,y)
There is a house in Minneapolis which costs more than any other house.
∀ x [House(x) ∧ In(x,Minneapolis)] ⇒ [∃ y House(y) ∧ Cost(y) Cost(x)]
There is only one house in Minneapolis that is pink.
∃ x House(x) ∧ In(x,Minneapolis) ∧ Color(x,Pink)
Some houses cost less than some apartments.
∃ x House(x) ∧ ∃ y Apartment(y) ⇒ Cheaper(x,y)
There are fastfood places in every city.
∀ x ∀ y [City(x) ∧ Fastfood (y)] ⇒ In(y,x)
[20 points] Convert these English sentences to predicate calculus, using the following predicates: Cat(x) = x is a cat; Bird(x) = x is a bird; Dog(x) = x is a dog; Animal(x) = x is an animal; Person(x) = x is a person. Owns(x,y) = x owns y; Likes(x,y) = x likes y, Kill(x,y) = x kills y. John is a constant.
Birds do not like cats.
Any person who owns a cat does not own a bird.
No person would kill a cat.
Some persons own a cat and a dog.
John owns only one bird.
[10 points]
Write the knowledge given below in predicate calculus using the following predicates: Person(x) = x is a person; Rich(x) = x is rich; Happy(x) = x is happy; Read(x) = x can read; Exciting(x) = xhas an exciting life; Stupid(x) = x is stupid
The change made to Exciting is to make things easier. You are free to use the predicates I had before
"All persons who are rich and are not stupid are happy. Persons who can read are not stupid. Happy persons have exciting lives. John is a person. John can read and he is rich. "
convert to CNF
Answer the question "is there anyone who has an exciting life?" Notice that this is a question that requires not just True or False as an answer.
[20 points] Prove by resolution that the following set of clauses (in predicate calculus) is unsatisfiable. Assume that upper case arguments are constant, lower case arguments are variable:
G(B)
¬ G(x) ∨ H(x)
¬ H(z) ∨ I(z)
¬ H(w) ∨ J(w,D)
¬ I(B) ∨ J(C,B)
¬ I(q) ∨ ¬ J(q,y)
[30 points]
Write the following statements in predicate calculus:
A truck is a vehicle.
A SUV is a vehicle.
A car is a vehicle.
A truck is bigger than a SUV.
There is a SUV that is bigger than every car.
A RAM is a truck.
A Tesla is a car.
Bigger is transitive, i.e. if x is bigger than y and y is bigger than z then x is bigger than z.
Convert them to CNF. Pay attention to how you skolemize existentially quantified variables. Recall that a Skolem constant cannot be unified with another constant except itself, but it can be unified with a variable.
Prove by resolution with refutation: "A RAM is bigger than a Tesla". Remember that a Skolem constant cannot be unified with another constant except itself, but it can be unified with a variable.