test :- a, fail. test :- ( a -> writeln('a is true') ; writeln('a is false') ), ( b -> writeln('b is true') ; writeln('b is false') ), ( c -> writeln('c is true') ; writeln('c is false') ), ( d -> writeln('d is true') ; writeln('d is false') ), ( e -> writeln('e is true') ; writeln('e is false') ), ( f -> writeln('f is true') ; writeln('f is false') ). %-------------------------------------------------------------- % % Example that shows that setting the BREG to point to the topmost % generator CP is not safe... Instead the lowest uncompleted generator % CP of the ASCC should be used for this purpose. Also, the prevbreg % of that CP should be set to the prevbreg of the leader of the ASCC. % :- table a/0, b/0, c/0, d/0, e/0, f/0. a :- b, tnot(d). b :- c. b. b :- tnot(e). c :- b. d :- e, f. e. f :- tnot(c).