(define (domain ferry-strips) (:requirements :strips) (:constants ferry) (:predicates (at ?x ?y) (place ?x) (auto ?x) (at-ferry ?x) (empty-ferry) (on ?x ?y) (ferryless ?x)) (:action board :parameters (?x ?y) :precondition (and (at ?x ?y) (place ?y) (auto ?x) (at-ferry ?y) (empty-ferry)) :effect (and (on ?x ferry) (not (at ?x ?y)) (not (empty-ferry)))) (:action sail :parameters (?x ?y) :precondition (and (at-ferry ?x) (place ?x) (place ?y) (ferryless ?y)) :effect (and (at-ferry ?y) (ferryless ?x) (not (at-ferry ?x)))) (:action debark :parameters (?x ?y) :precondition (and (on ?x ferry) (auto ?x) (place ?y) (at-ferry ?y)) :effect (and (not (on ?x ferry)) (at ?x ?y) (empty-ferry))))