(define (domain transport) (:requirements :durative-actions :typing :fluents :adl :constraints :preferences) (:types location person - object street - location ) (:predicates (in ?x - person ?y - location) (link ?x - location ?y - location) (not_used_feet) ) (:functions (minutes) (money ?p - person) (distance) ) ;; a person moves between two locations if there exist a link between these locations. (:durative-action walk :parameters (?p - person ?l1 - location ?l2 - location) :duration (= ?duration (minutes)) :condition (and (at start (in ?p ?l1)) (over all (link ?l1 ?l2)) ) :effect (and (at start (not(in ?p ?l1))) (at end (in ?p ?l2)) (at end (increase (money ?p) (distance))) (at end (not (not_used_feet))) ) ) )