MALLET syntax is based loosely on LISP, in the sense
of using s-expressions and prefix notation. Variables are
indicated with ‘?’ prefix. Operators are simply names of
atomic actions that can be taken in the environment.
Operators may list a set of pre-conditions and/or postconditions,
each as a conjunction of literals (first-order
predicates or their negations). Here is an example for
climbing over a pit: