blob: f104753e7aa9a67d41ec026a956455515add70de (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
(define (domain ferry)
(:requirements :strips :equality :typing)
(:types auto place ferry)
(:predicates (at-ferry ?f - ferry ?l - place)
(at ?x - auto
?y - place)
(empty-ferry ?f - ferry)
(on ?x - auto
?f - ferry)
(can-sail ?f - ferry
?x - place
?y - place
)
(can-debark-at ?x - place)
(can-board-at ?x - place)
)
(:action board
:parameters (?f - ferry ?x - auto ?y - place)
:precondition (and (at ?x ?y)(at-ferry ?f ?y)(empty-ferry ?f)(can-board-at ?y))
:effect
(and (on ?x ?f)
(not (at ?x ?y))
(not (empty-ferry ?f))))
(:action sail
:parameters (?f - ferry ?x ?y - place)
:precondition (and (at-ferry ?f ?x) (not (= ?x ?y)) (can-sail ?f ?x ?y))
:effect (and (at-ferry ?f ?y)
(not (at-ferry ?f ?x))))
(:action debark
:parameters (?f - ferry ?x - auto ?y - place)
:precondition (and (on ?x ?f)(at-ferry ?f ?y) (can-debark-at ?y))
:effect (and (not (on ?x ?f))
(at ?x ?y)
(empty-ferry ?f))))
|