\begin{verbatim} holds(alive, 0) :- not not_holds(alive,0). not_holds(alive, 0) :- not holds(alive,0). holds(loaded, 0) :- not not_holds(loaded,0). not_holds(loaded, 0) :- not holds(loaded,0). fluent(loaded). fluent(alive). action(load). action(shoot). time(0..1). holds(F, T+1) :- fluent(F), time(T), action(A), holds(F,T), occurs(A,T), not ab(F, A, T). not_holds(F, T+1) :- fluent(F), time(T), action(A), not_holds(F,T), occurs(A,T), not ab(F, A, T). holds(loaded, T+1) :- time(T), occurs(load, T). ab(loaded, load, T) :- time(T). not_holds(alive, T+1) :- time(T), occurs(shoot, T), holds(loaded, T). ab(alive, shoot, T) :- time(T), holds(loaded, T). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% holds(alive,0). occurs(shoot,0). % :- not holds(alive, 1). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% hide fluent(F). hide action(A). hide time(T). hide ab(F,A,T). hide occurs(A,T). \end{verbatim}