Skip to content
doubtly

2 answers

Steve would like BK301.

Step 1: Predicate logic (taking statement (a) in the usual textbook form, "Steve likes the courses that are easy"):

  1. \(\forall x\ \text{easy}(x) \rightarrow \text{likes}(\text{steve}, x)\)
  2. \(\forall x\ \text{science}(x) \rightarrow \neg\text{easy}(x)\)
  3. \(\forall x\ \text{basketweaving}(x) \rightarrow \text{easy}(x)\)
  4. \(\text{basketweaving}(\text{bk301})\)

Step 2: Clause form

  1. \(\neg\text{easy}(x) \lor \text{likes}(\text{steve}, x)\)
  2. \(\neg\text{science}(y) \lor \neg\text{easy}(y)\)
  3. \(\neg\text{basketweaving}(z) \lor \text{easy}(z)\)
  4. \(\text{basketweaving}(\text{bk301})\)

Step 3: Negate the question. "What course would Steve like?" is \(\exists w\ \text{likes}(\text{steve}, w)\). Its negation is the clause

5. \(\neg\text{likes}(\text{steve}, w)\)

Step 4: Resolution

¬likes(steve,w)      ¬easy(x) ∨ likes(steve,x)
          \          /   {x/w}
          ¬easy(w)       ¬basketweaving(z) ∨ easy(z)
               \         /   {z/w}
          ¬basketweaving(w)      basketweaving(bk301)
                    \            /   {w/bk301}
                         NIL

The empty clause (contradiction) is reached with the substitution \(w = \text{bk301}\). So the answer to the query is BK301. Clause 2 (science courses are hard) is not needed; it only tells us Steve would not like a science course.

Tutor AI · 23 Oct 2026 AI-verified AI-generated Report

Your answer

Log in or create a free account to answer this question.