Completed Success

CPU time: 3.8 seconds
Number of Nodes: 140
Solution Length: 21
Operator Sequence:

      PICK-UP DUST-CLOTH
      DUST BOOK3
      DUST BOOK1
      DUST BOOK2
      PICK-UP SPRAY-BOTTLE
      SPRAY SHELF1
      PUT-DOWN DUST-CLOTH
      PICK-UP WIPE-CLOTH
      WIPE SHELF1
      SPRAY SHELF1
      WIPE SHELF1

-----OK- it works - - but which is working? -------------


N1 (DONE)
 Alts: *FINISH*

 You are at node  #<N2>
 Working on goal: (IS-CLEAN BOOK2)

     Operator:  INFER-CLEANLINESS
      Variables: (BOOK1)
      Post     Failed on: (IS-AT <X> <Y> <THING> CLEAN)
    HELF1 DIRTY)))

 N1 (DONE)
 Alts: *FINISH*

 You are at node  #<N2>
 Working on goal: (IS-CLEAN BOOK2)

 Alternatives Remaining...

   1. Goal:      (IS-CLEAN BOOK2)
      Operator:  INFER-CLEANLINESS
      Variables: (BOOK2)
      Post cond: (IS-CLEAN <THING>)
      Failed on: (~ (IS-AT <X> <Y> <THING> <COND>))
      Unmatched: ((~ (IS-AT 2 1 BOOK2 DUSTY)))

   2. Goal:      (IS-CLEAN BOOK2)
      Operator:  INFER-CLEANLINESS
      Variables: (BOOK2)
      Post cond: (IS-CLEAN <THING>)
      Failed on: (IS-AT <X> <Y> <THING> CLEAN)
      Unmatched: ((IS-AT 2 1 BOOK2 CLEAN))

   3. Goal:      (IS-CLEAN BOOK1)
      Operator:  INFER-CLEANLINESS
      Variables: (BOOK1)
      Post cond: (IS-CLEAN <THING>)
      Failed on: (~ (IS-AT <X> <Y> <THING> <COND>))
      Unmatched: ((~ (IS-AT 2 2 BOOK1 DUSTY)))

   4. Goal:      (IS-CLEAN BOOK1)
      Operator:  INFER-CLEANLINESS
      Variables: (BOOK1)
      Post cond: (IS-CLEAN <THING>)
      Failed on: (IS-AT <X> <Y> <THING> CLEAN)
      Unmatched: ((IS-AT 2 2 BOOK1 CLEAN))

   5. Goal:      (IS-CLEAN SHELF1)
      Operator:  INFER-CLEANLINESS
      Variables: (SHELF1)
      Post cond: (IS-CLEAN <THING>)
      Failed on: (~ (IS-AT <X> <Y> <THING> <COND>))
      Unmatched: ((~ (IS-AT 1 4 SHELF1 DIRTY)))

   6. Goal:      (IS-CLEAN SHELF1)
      Operator:  INFER-CLEANLINESS
      Variables: (SHELF1)
      Post cond: (IS-CLEAN <THING>)
      Failed on: (IS-AT <X> <Y> <THING> CLEAN)
      Unmatched: ((IS-AT 1 4 SHELF1 CLEAN))

   7. Goal:      (IS-CLEAN BOOK3)
      Operator:  INFER-CLEANLINESS
      Variables: (BOOK3)
      Post cond: (IS-CLEAN <THING>)
      Failed on: (~ (IS-AT <X> <Y> <THING> <COND>))
      Unmatched: ((~ (IS-AT 3 3 BOOK3 DUSTY)))

   8. Goal:      (IS-CLEAN BOOK3)
      Operator:  INFER-CLEANLINESS
      Variables: (BOOK3)
      Post cond: (IS-CLEAN <THING>)
      Failed on: (IS-AT <X> <Y> <THING> CLEAN)
      Unmatched: ((IS-AT 3 3 BOOK3 CLEAN))


 Try which alternative:



Does prodigy subgoal on search control rules?

Yes

