annotate itl.pl @ 10:f2aa38ce0787

add state display.
author kono
date Fri, 19 Jan 2001 23:14:00 +0900
parents 1c57a78f1d98
children 07d6c4c5654b
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
1
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
2 gather(A,X,X1) :- atomic(A),!,
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
3 X = [A|X1].
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
4 gather(F,X,X1) :- functor(F,_,N),!,
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
5 gather_args(0,N,F,X,X1).
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
6 gather_args(N,N1,_,X,X) :- N =:= N1,!.
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
7 gather_args(N,N1,F,X,X1) :-
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
8 N0 is N+1,arg(N0,F,A),
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
9 gather(A,X,X0),gather_args(N0,N1,F,X0,X1).
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
10
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
11
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
12 itl(A,C,T,X,X) :- atomic(A),!,
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
13 itl_variable(C,A,T).
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
14 itl_variable(C,A,T) :-
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
15 true(C,A,C,C1),!,
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
16
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
17 itl_false(C,A,F,X0,X1).
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
18 itl_true(C,A,T,X,X) :-
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
19 itl_true(_,_,X,X) :-
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
20
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
21 true([],A,C,[A|C]):-!.
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
22 true([A|_],A,C,C):-!.
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
23 true([not(A)|_],A,C,C):-!,fail.
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
24 true([_|T],A,C,C1):-!,true(T,A,C,C1).
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
25
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
26 false([],A,C,[A|C]):-!.
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
27 false([not(A)|_],A,C,C):-!.
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
28 false([A|_],A,C,C):-!,fail.
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
29 false([_|T],A,C,C1):-!,false(T,A,C,C1).
1c57a78f1d98 Initial revision
kono
parents:
diff changeset
30