1 % ------------------------- Domain Definition
-------------------------
2 % This file describes a planning domain
: a set of predicates
and
3 % fluents that describe the
state of the
system, a set of actions
and
4 % the axioms related to them
. More than one problem can
use the same
5 % domain definition
, and therefore include this file
8 % --- Cross
-file definitions
------------------------------------------
9 % marks the predicates whose definition is spread across two
or more
12 % :- multifile name
/#, name/#, name/#, ...
18 % --- Primitive control actions
---------------------------------------
19 % this section defines the name
and the number of parameters of the
20 % actions available to the planner
22 % primitive_action
( dosomething
(_
,_
) ). % underscore means
`anything'
28 % --- Precondition for primitive actions ------------------------------
29 % describe when an action can be carried out, in a generic situation S
31 % poss( doSomething(...), S ) :- preconditions(..., S).
37 % --- Successor state axioms ------------------------------------------
38 % describe the value of fluent based on the previous situation and the
39 % action chosen for the plan.
41 % fluent(..., result(A,S)) :- positive; previous-state, not(negative)
47 % ---------------------------------------------------------------------
48 % ---------------------------------------------------------------------