         inertia { alive(T1) :- alive(T), next(T,T1).
                   -alive(T1) :- -alive(T), next(T,T1).
                   loaded(T1) :- loaded(T), next(T,T1).
                   -loaded(T1) :- -loaded(T), next(T,T1).
                 }
domain : inertia { loaded(T1) :- load(T), next(T,T1).
                   -loaded(T1) :- shoot(T), loaded(T), next(T,T1).
                   -alive(T1) :- shoot(T), loaded(T), next(T,T1).
                 }
   yale : domain { load(0). wait(1). shoot(2). 
                   alive(0) :- #true.
                   next(0,1). next(1,2). next(2,3).
                 }

