0
|
1 ?-static([green,move,quit,red,start,stop]).
|
|
2 print_state:-(_2577= *green,_2593= *move,_2609= *quit,_2625= *red,_2641= *start,_2654= *stop),write((*green=_2577,*move=_2593,*quit=_2609,*red=_2625,*start=_2641,*stop=_2654)).
|
|
3 true :- empty,empty.
|
|
4 true :- more,true.
|
|
5 s1 :- empty,*stop= 1,*quit= 1,*green:= 0,*move:= 0,*red:= 1,empty.
|
|
6 s1 :- empty,*stop= 1,*quit= 1,*green:= 1,*move:= 1,*red:= 0,empty.
|
|
7 s1 :- empty,*stop= 0,*start= 1,*quit= 1,*green:= 0,*move:= 0,*red:= 1,empty.
|
|
8 s1 :- empty,*stop= 0,*start= 1,*quit= 1,*green:= 1,*move:= 1,*red:= 0,empty.
|
|
9 s1 :- more,*stop= 1,*start= 0,*quit= 0,*green:= 0,*move:= 0,*red:= 1,@s2.
|
|
10 s1 :- more,*stop= 0,*start= 1,*quit= 0,*green:= 1,*move:= 1,*red:= 0,@s3.
|
|
11 s2 :- empty,*quit= 1,*green:= 0,*move:= 0,*red:= 1,empty.
|
|
12 s2 :- empty,*quit= 1,*green:= 1,*move:= 1,*red:= 0,empty.
|
|
13 s2 :- more,*stop= 1,*start= 0,*quit= 0,*green:= 0,*move:= 0,*red:= 1,@s2.
|
|
14 s2 :- more,*stop= 0,*start= 0,*quit= 0,*green:= 0,*move:= 0,*red:= 1,@s2.
|
|
15 s2 :- more,*stop= 0,*start= 1,*quit= 0,*green:= 1,*move:= 1,*red:= 0,@s3.
|
|
16 s3 :- empty,*quit= 1,*green:= 0,*move:= 0,*red:= 1,empty.
|
|
17 s3 :- empty,*quit= 1,*green:= 1,*move:= 1,*red:= 0,empty.
|
|
18 s3 :- more,*stop= 0,*start= 1,*quit= 0,*green:= 1,*move:= 1,*red:= 0,@s3.
|
|
19 s3 :- more,*stop= 0,*start= 0,*quit= 0,*green:= 1,*move:= 1,*red:= 0,@s3.
|
|
20 s3 :- more,*stop= 1,*start= 0,*quit= 0,*green:= 0,*move:= 0,*red:= 1,@s2.
|