module order.

% A simple example showing the clause order preservation.
%
% Forum programs have both a static and a dynamic portion.
% Clauses appearing in the source code make up the static
% portion. Clauses added by (linear and intuitionistic)
% implications along the execution of the program make up
% the dynamic portion.
%
% The static portion is stored in the very order it appears
% in the source code.
% The dynamic portion is stored following a stack discipline
% (i.e. prolog asserta(_))

linear p(1).
       p(2).
linear p(3).
       p(4).

go(X) *- p(0) -* p(-1) => p(-2) -* p(-3) => p(-4) -* p(X) x top.

