This repository has been archived on 2023-08-20. You can view files and clone it, but cannot push or open issues or pull requests.
yap-6.3/LGPL/chr/guard_entailment.pl
vsc d02bc3de81 update chr
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2143 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-03-13 14:38:02 +00:00

14500 lines
426 KiB
Prolog

/* Generated by CHR bootstrap compiler
From: ../../../../work/LGPL/chr/guard_entailment.chr
Date: Mon Feb 11 14:12:44 2008
DO NOT EDIT. EDIT THE CHR FILE INSTEAD
*/
:-module(guard_entailment,[entails_guard/2,simplify_guards/5]).
:-use_module(chr_runtime).
:-style_check(-discontiguous).
:-use_module(chr_runtime).
:-use_module(chr_hashtable_store).
:-style_check(-discontiguous).
:-include(chr_op).
:-use_module(hprolog).
:-use_module(builtins).
:-use_module(chr_compiler_errors).
entails_guard(A,B) :-
copy_term_nat((A,B),(C,D)),
term_variables(C,E),
variables(E),
sort(C,F),
entails_guard2(F),
!,
test(D),
!,
cleanup.
entails_guard2([]).
entails_guard2([A|B]) :-
known(A),
entails_guard2(B).
simplify_guards(A,B,C,D,E) :-
copy_term_nat((A,C),(F,G)),
term_variables(F,H),
variables(H),
sort(F,I),
entails_guard2(I),
!,
simplify(G,J),
simplified(C,J,D,B,E),
!,
cleanup.
simplified([],[],[],A,A).
simplified([A|B],[keep|C],[A|D],E,F) :-
simplified(B,C,D,E,F).
simplified([_|_],[fail|_],fail,A,A).
simplified([A|B],[true|C],[D|E],F,G) :-
builtins:binds_b(A,H),
term_variables(B,I),
intersect_eq(H,I,J),
!,
( J=[] ->
term_variables(F,K),
intersect_eq(H,K,L),
!,
( L=[] ->
D=true,
G=M
;
D=true,
G=(A,M)
)
;
D=A,
G=M
),
simplified(B,C,E,F,M).
simplify([],[]).
simplify([A|B],[C|D]) :-
( \+try(true,A) ->
C=true
;
builtins:negate_b(A,E),
( \+try(true,E) ->
C=fail
;
C=keep
)
),
known(A),
simplify(B,D).
try(A,B) :-
( known(A) ->
true
;
chr_error(internal,'Entailment Checker: try/2.
',[])
),
( test(B) ->
fail
;
true
).
add_args_unif([],[],true).
add_args_unif([A|B],[C|D],(A=C,E)) :-
add_args_unif(B,D,E).
add_args_nunif([],[],fail).
add_args_nunif([A|B],[C|D],(A\=C;E)) :-
add_args_nunif(B,D,E).
add_args_nmatch([],[],fail).
add_args_nmatch([A|B],[C|D],(A\==C;E)) :-
add_args_nmatch(B,D,E).
all_unique_vars(A,B) :-
all_unique_vars(A,B,[]).
all_unique_vars([],_,_).
all_unique_vars([A|B],C,D) :-
var(A),
\+memberchk_eq(A,C),
\+memberchk_eq(A,D),
all_unique_vars(B,[A|D]).
'attach_variables/1'([],_).
'attach_variables/1'([A|B],C) :-
( get_attr(A,guard_entailment,F1) ->
F1=v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1),
( D1/\1=:=1 ->
put_attr(A,guard_entailment,v(D1,[C|D],E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
;
E1 is D1\/1,
put_attr(A,guard_entailment,v(E1,[C],E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
)
;
put_attr(A,guard_entailment,v(1,[C],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]))
),
'attach_variables/1'(B,C).
'detach_variables/1'([],_).
'detach_variables/1'([A|B],C) :-
( get_attr(A,guard_entailment,G1) ->
G1=v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1),
( D1/\1=:=1 ->
'chr sbag_del_element'(D,C,F1),
( F1==[] ->
E1 is D1/\ -2,
( E1==0 ->
del_attr(A,guard_entailment)
;
put_attr(A,guard_entailment,v(E1,[],E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
)
;
put_attr(A,guard_entailment,v(D1,F1,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
)
;
true
)
;
true
),
'detach_variables/1'(B,C).
'attach_known/1_1_$default/1'([],_).
'attach_known/1_1_$default/1'([A|B],C) :-
( get_attr(A,guard_entailment,F1) ->
F1=v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1),
( D1/\2=:=2 ->
put_attr(A,guard_entailment,v(D1,D,[C|E],F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
;
E1 is D1\/2,
put_attr(A,guard_entailment,v(E1,D,[C],F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
)
;
put_attr(A,guard_entailment,v(2,[],[C],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]))
),
'attach_known/1_1_$default/1'(B,C).
'detach_known/1_1_$default/1'([],_).
'detach_known/1_1_$default/1'([A|B],C) :-
( get_attr(A,guard_entailment,G1) ->
G1=v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1),
( D1/\2=:=2 ->
'chr sbag_del_element'(E,C,F1),
( F1==[] ->
E1 is D1/\ -3,
( E1==0 ->
del_attr(A,guard_entailment)
;
put_attr(A,guard_entailment,v(E1,D,[],F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
)
;
put_attr(A,guard_entailment,v(D1,D,F1,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
)
;
true
)
;
true
),
'detach_known/1_1_$default/1'(B,C).
'attach_known/1_1_$special_;/2/2'([],_).
'attach_known/1_1_$special_;/2/2'([A|B],C) :-
( get_attr(A,guard_entailment,F1) ->
F1=v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1),
( D1/\4=:=4 ->
put_attr(A,guard_entailment,v(D1,D,E,[C|F],G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
;
E1 is D1\/4,
put_attr(A,guard_entailment,v(E1,D,E,[C],G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
)
;
put_attr(A,guard_entailment,v(4,[],[],[C],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]))
),
'attach_known/1_1_$special_;/2/2'(B,C).
'detach_known/1_1_$special_;/2/2'([],_).
'detach_known/1_1_$special_;/2/2'([A|B],C) :-
( get_attr(A,guard_entailment,G1) ->
G1=v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1),
( D1/\4=:=4 ->
'chr sbag_del_element'(F,C,F1),
( F1==[] ->
E1 is D1/\ -5,
( E1==0 ->
del_attr(A,guard_entailment)
;
put_attr(A,guard_entailment,v(E1,D,E,[],G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
)
;
put_attr(A,guard_entailment,v(D1,D,E,F1,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
)
;
true
)
;
true
),
'detach_known/1_1_$special_;/2/2'(B,C).
'attach_known/1_1_$special_nonvar/1/1'([],_).
'attach_known/1_1_$special_nonvar/1/1'([A|B],C) :-
( get_attr(A,guard_entailment,F1) ->
F1=v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1),
( D1/\8=:=8 ->
put_attr(A,guard_entailment,v(D1,D,E,F,[C|G],H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
;
E1 is D1\/8,
put_attr(A,guard_entailment,v(E1,D,E,F,[C],H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
)
;
put_attr(A,guard_entailment,v(8,[],[],[],[C],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]))
),
'attach_known/1_1_$special_nonvar/1/1'(B,C).
'detach_known/1_1_$special_nonvar/1/1'([],_).
'detach_known/1_1_$special_nonvar/1/1'([A|B],C) :-
( get_attr(A,guard_entailment,G1) ->
G1=v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1),
( D1/\8=:=8 ->
'chr sbag_del_element'(G,C,F1),
( F1==[] ->
E1 is D1/\ -9,
( E1==0 ->
del_attr(A,guard_entailment)
;
put_attr(A,guard_entailment,v(E1,D,E,F,[],H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
)
;
put_attr(A,guard_entailment,v(D1,D,E,F,F1,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
)
;
true
)
;
true
),
'detach_known/1_1_$special_nonvar/1/1'(B,C).
'attach_known/1_1_$special_var/1/1'([],_).
'attach_known/1_1_$special_var/1/1'([A|B],C) :-
( get_attr(A,guard_entailment,F1) ->
F1=v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1),
( D1/\16=:=16 ->
put_attr(A,guard_entailment,v(D1,D,E,F,G,[C|H],I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
;
E1 is D1\/16,
put_attr(A,guard_entailment,v(E1,D,E,F,G,[C],I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
)
;
put_attr(A,guard_entailment,v(16,[],[],[],[],[C],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]))
),
'attach_known/1_1_$special_var/1/1'(B,C).
'detach_known/1_1_$special_var/1/1'([],_).
'detach_known/1_1_$special_var/1/1'([A|B],C) :-
( get_attr(A,guard_entailment,G1) ->
G1=v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1),
( D1/\16=:=16 ->
'chr sbag_del_element'(H,C,F1),
( F1==[] ->
E1 is D1/\ -17,
( E1==0 ->
del_attr(A,guard_entailment)
;
put_attr(A,guard_entailment,v(E1,D,E,F,G,[],I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
)
;
put_attr(A,guard_entailment,v(D1,D,E,F,G,F1,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
)
;
true
)
;
true
),
'detach_known/1_1_$special_var/1/1'(B,C).
'attach_known/1_1_$special_atom/1/1'([],_).
'attach_known/1_1_$special_atom/1/1'([A|B],C) :-
( get_attr(A,guard_entailment,F1) ->
F1=v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1),
( D1/\32=:=32 ->
put_attr(A,guard_entailment,v(D1,D,E,F,G,H,[C|I],J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
;
E1 is D1\/32,
put_attr(A,guard_entailment,v(E1,D,E,F,G,H,[C],J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
)
;
put_attr(A,guard_entailment,v(32,[],[],[],[],[],[C],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]))
),
'attach_known/1_1_$special_atom/1/1'(B,C).
'detach_known/1_1_$special_atom/1/1'([],_).
'detach_known/1_1_$special_atom/1/1'([A|B],C) :-
( get_attr(A,guard_entailment,G1) ->
G1=v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1),
( D1/\32=:=32 ->
'chr sbag_del_element'(I,C,F1),
( F1==[] ->
E1 is D1/\ -33,
( E1==0 ->
del_attr(A,guard_entailment)
;
put_attr(A,guard_entailment,v(E1,D,E,F,G,H,[],J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
)
;
put_attr(A,guard_entailment,v(D1,D,E,F,G,H,F1,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
)
;
true
)
;
true
),
'detach_known/1_1_$special_atom/1/1'(B,C).
'attach_known/1_1_$special_atomic/1/1'([],_).
'attach_known/1_1_$special_atomic/1/1'([A|B],C) :-
( get_attr(A,guard_entailment,F1) ->
F1=v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1),
( D1/\64=:=64 ->
put_attr(A,guard_entailment,v(D1,D,E,F,G,H,I,[C|J],K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
;
E1 is D1\/64,
put_attr(A,guard_entailment,v(E1,D,E,F,G,H,I,[C],K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
)
;
put_attr(A,guard_entailment,v(64,[],[],[],[],[],[],[C],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]))
),
'attach_known/1_1_$special_atomic/1/1'(B,C).
'detach_known/1_1_$special_atomic/1/1'([],_).
'detach_known/1_1_$special_atomic/1/1'([A|B],C) :-
( get_attr(A,guard_entailment,G1) ->
G1=v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1),
( D1/\64=:=64 ->
'chr sbag_del_element'(J,C,F1),
( F1==[] ->
E1 is D1/\ -65,
( E1==0 ->
del_attr(A,guard_entailment)
;
put_attr(A,guard_entailment,v(E1,D,E,F,G,H,I,[],K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
)
;
put_attr(A,guard_entailment,v(D1,D,E,F,G,H,I,F1,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
)
;
true
)
;
true
),
'detach_known/1_1_$special_atomic/1/1'(B,C).
'attach_known/1_1_$special_compound/1/1'([],_).
'attach_known/1_1_$special_compound/1/1'([A|B],C) :-
( get_attr(A,guard_entailment,F1) ->
F1=v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1),
( D1/\128=:=128 ->
put_attr(A,guard_entailment,v(D1,D,E,F,G,H,I,J,[C|K],L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
;
E1 is D1\/128,
put_attr(A,guard_entailment,v(E1,D,E,F,G,H,I,J,[C],L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
)
;
put_attr(A,guard_entailment,v(128,[],[],[],[],[],[],[],[C],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]))
),
'attach_known/1_1_$special_compound/1/1'(B,C).
'detach_known/1_1_$special_compound/1/1'([],_).
'detach_known/1_1_$special_compound/1/1'([A|B],C) :-
( get_attr(A,guard_entailment,G1) ->
G1=v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1),
( D1/\128=:=128 ->
'chr sbag_del_element'(K,C,F1),
( F1==[] ->
E1 is D1/\ -129,
( E1==0 ->
del_attr(A,guard_entailment)
;
put_attr(A,guard_entailment,v(E1,D,E,F,G,H,I,J,[],L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
)
;
put_attr(A,guard_entailment,v(D1,D,E,F,G,H,I,J,F1,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
)
;
true
)
;
true
),
'detach_known/1_1_$special_compound/1/1'(B,C).
'attach_known/1_1_$special_ground/1/1'([],_).
'attach_known/1_1_$special_ground/1/1'([A|B],C) :-
( get_attr(A,guard_entailment,F1) ->
F1=v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1),
( D1/\256=:=256 ->
put_attr(A,guard_entailment,v(D1,D,E,F,G,H,I,J,K,[C|L],M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
;
E1 is D1\/256,
put_attr(A,guard_entailment,v(E1,D,E,F,G,H,I,J,K,[C],M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
)
;
put_attr(A,guard_entailment,v(256,[],[],[],[],[],[],[],[],[C],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]))
),
'attach_known/1_1_$special_ground/1/1'(B,C).
'detach_known/1_1_$special_ground/1/1'([],_).
'detach_known/1_1_$special_ground/1/1'([A|B],C) :-
( get_attr(A,guard_entailment,G1) ->
G1=v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1),
( D1/\256=:=256 ->
'chr sbag_del_element'(L,C,F1),
( F1==[] ->
E1 is D1/\ -257,
( E1==0 ->
del_attr(A,guard_entailment)
;
put_attr(A,guard_entailment,v(E1,D,E,F,G,H,I,J,K,[],M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
)
;
put_attr(A,guard_entailment,v(D1,D,E,F,G,H,I,J,K,F1,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
)
;
true
)
;
true
),
'detach_known/1_1_$special_ground/1/1'(B,C).
'attach_known/1_1_$special_integer/1/1'([],_).
'attach_known/1_1_$special_integer/1/1'([A|B],C) :-
( get_attr(A,guard_entailment,F1) ->
F1=v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1),
( D1/\512=:=512 ->
put_attr(A,guard_entailment,v(D1,D,E,F,G,H,I,J,K,L,[C|M],N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
;
E1 is D1\/512,
put_attr(A,guard_entailment,v(E1,D,E,F,G,H,I,J,K,L,[C],N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
)
;
put_attr(A,guard_entailment,v(512,[],[],[],[],[],[],[],[],[],[C],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]))
),
'attach_known/1_1_$special_integer/1/1'(B,C).
'detach_known/1_1_$special_integer/1/1'([],_).
'detach_known/1_1_$special_integer/1/1'([A|B],C) :-
( get_attr(A,guard_entailment,G1) ->
G1=v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1),
( D1/\512=:=512 ->
'chr sbag_del_element'(M,C,F1),
( F1==[] ->
E1 is D1/\ -513,
( E1==0 ->
del_attr(A,guard_entailment)
;
put_attr(A,guard_entailment,v(E1,D,E,F,G,H,I,J,K,L,[],N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
)
;
put_attr(A,guard_entailment,v(D1,D,E,F,G,H,I,J,K,L,F1,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
)
;
true
)
;
true
),
'detach_known/1_1_$special_integer/1/1'(B,C).
'attach_known/1_1_$special_float/1/1'([],_).
'attach_known/1_1_$special_float/1/1'([A|B],C) :-
( get_attr(A,guard_entailment,F1) ->
F1=v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1),
( D1/\1024=:=1024 ->
put_attr(A,guard_entailment,v(D1,D,E,F,G,H,I,J,K,L,M,[C|N],O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
;
E1 is D1\/1024,
put_attr(A,guard_entailment,v(E1,D,E,F,G,H,I,J,K,L,M,[C],O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
)
;
put_attr(A,guard_entailment,v(1024,[],[],[],[],[],[],[],[],[],[],[C],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]))
),
'attach_known/1_1_$special_float/1/1'(B,C).
'detach_known/1_1_$special_float/1/1'([],_).
'detach_known/1_1_$special_float/1/1'([A|B],C) :-
( get_attr(A,guard_entailment,G1) ->
G1=v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1),
( D1/\1024=:=1024 ->
'chr sbag_del_element'(N,C,F1),
( F1==[] ->
E1 is D1/\ -1025,
( E1==0 ->
del_attr(A,guard_entailment)
;
put_attr(A,guard_entailment,v(E1,D,E,F,G,H,I,J,K,L,M,[],O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
)
;
put_attr(A,guard_entailment,v(D1,D,E,F,G,H,I,J,K,L,M,F1,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
)
;
true
)
;
true
),
'detach_known/1_1_$special_float/1/1'(B,C).
'attach_known/1_1_$special_number/1/1'([],_).
'attach_known/1_1_$special_number/1/1'([A|B],C) :-
( get_attr(A,guard_entailment,F1) ->
F1=v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1),
( D1/\2048=:=2048 ->
put_attr(A,guard_entailment,v(D1,D,E,F,G,H,I,J,K,L,M,N,[C|O],P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
;
E1 is D1\/2048,
put_attr(A,guard_entailment,v(E1,D,E,F,G,H,I,J,K,L,M,N,[C],P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
)
;
put_attr(A,guard_entailment,v(2048,[],[],[],[],[],[],[],[],[],[],[],[C],[],[],[],[],[],[],[],[],[],[],[],[],[],[]))
),
'attach_known/1_1_$special_number/1/1'(B,C).
'detach_known/1_1_$special_number/1/1'([],_).
'detach_known/1_1_$special_number/1/1'([A|B],C) :-
( get_attr(A,guard_entailment,G1) ->
G1=v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1),
( D1/\2048=:=2048 ->
'chr sbag_del_element'(O,C,F1),
( F1==[] ->
E1 is D1/\ -2049,
( E1==0 ->
del_attr(A,guard_entailment)
;
put_attr(A,guard_entailment,v(E1,D,E,F,G,H,I,J,K,L,M,N,[],P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
)
;
put_attr(A,guard_entailment,v(D1,D,E,F,G,H,I,J,K,L,M,N,F1,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
)
;
true
)
;
true
),
'detach_known/1_1_$special_number/1/1'(B,C).
'attach_known/1_1_$special_=\\=/2/2'([],_).
'attach_known/1_1_$special_=\\=/2/2'([A|B],C) :-
( get_attr(A,guard_entailment,F1) ->
F1=v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1),
( D1/\4096=:=4096 ->
put_attr(A,guard_entailment,v(D1,D,E,F,G,H,I,J,K,L,M,N,O,[C|P],Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
;
E1 is D1\/4096,
put_attr(A,guard_entailment,v(E1,D,E,F,G,H,I,J,K,L,M,N,O,[C],Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
)
;
put_attr(A,guard_entailment,v(4096,[],[],[],[],[],[],[],[],[],[],[],[],[C],[],[],[],[],[],[],[],[],[],[],[],[],[]))
),
'attach_known/1_1_$special_=\\=/2/2'(B,C).
'detach_known/1_1_$special_=\\=/2/2'([],_).
'detach_known/1_1_$special_=\\=/2/2'([A|B],C) :-
( get_attr(A,guard_entailment,G1) ->
G1=v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1),
( D1/\4096=:=4096 ->
'chr sbag_del_element'(P,C,F1),
( F1==[] ->
E1 is D1/\ -4097,
( E1==0 ->
del_attr(A,guard_entailment)
;
put_attr(A,guard_entailment,v(E1,D,E,F,G,H,I,J,K,L,M,N,O,[],Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
)
;
put_attr(A,guard_entailment,v(D1,D,E,F,G,H,I,J,K,L,M,N,O,F1,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
)
;
true
)
;
true
),
'detach_known/1_1_$special_=\\=/2/2'(B,C).
'attach_known/1_1_$special_\\+/1/1'([],_).
'attach_known/1_1_$special_\\+/1/1'([A|B],C) :-
( get_attr(A,guard_entailment,F1) ->
F1=v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1),
( D1/\8192=:=8192 ->
put_attr(A,guard_entailment,v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,[C|Q],R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
;
E1 is D1\/8192,
put_attr(A,guard_entailment,v(E1,D,E,F,G,H,I,J,K,L,M,N,O,P,[C],R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
)
;
put_attr(A,guard_entailment,v(8192,[],[],[],[],[],[],[],[],[],[],[],[],[],[C],[],[],[],[],[],[],[],[],[],[],[],[]))
),
'attach_known/1_1_$special_\\+/1/1'(B,C).
'detach_known/1_1_$special_\\+/1/1'([],_).
'detach_known/1_1_$special_\\+/1/1'([A|B],C) :-
( get_attr(A,guard_entailment,G1) ->
G1=v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1),
( D1/\8192=:=8192 ->
'chr sbag_del_element'(Q,C,F1),
( F1==[] ->
E1 is D1/\ -8193,
( E1==0 ->
del_attr(A,guard_entailment)
;
put_attr(A,guard_entailment,v(E1,D,E,F,G,H,I,J,K,L,M,N,O,P,[],R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
)
;
put_attr(A,guard_entailment,v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,F1,R,S,T,U,V,W,X,Y,Z,A1,B1,C1))
)
;
true
)
;
true
),
'detach_known/1_1_$special_\\+/1/1'(B,C).
'attach_known/1_1_$special_functor/3/3'([],_).
'attach_known/1_1_$special_functor/3/3'([A|B],C) :-
( get_attr(A,guard_entailment,F1) ->
F1=v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1),
( D1/\16384=:=16384 ->
put_attr(A,guard_entailment,v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,[C|R],S,T,U,V,W,X,Y,Z,A1,B1,C1))
;
E1 is D1\/16384,
put_attr(A,guard_entailment,v(E1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,[C],S,T,U,V,W,X,Y,Z,A1,B1,C1))
)
;
put_attr(A,guard_entailment,v(16384,[],[],[],[],[],[],[],[],[],[],[],[],[],[],[C],[],[],[],[],[],[],[],[],[],[],[]))
),
'attach_known/1_1_$special_functor/3/3'(B,C).
'detach_known/1_1_$special_functor/3/3'([],_).
'detach_known/1_1_$special_functor/3/3'([A|B],C) :-
( get_attr(A,guard_entailment,G1) ->
G1=v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1),
( D1/\16384=:=16384 ->
'chr sbag_del_element'(R,C,F1),
( F1==[] ->
E1 is D1/\ -16385,
( E1==0 ->
del_attr(A,guard_entailment)
;
put_attr(A,guard_entailment,v(E1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,[],S,T,U,V,W,X,Y,Z,A1,B1,C1))
)
;
put_attr(A,guard_entailment,v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,F1,S,T,U,V,W,X,Y,Z,A1,B1,C1))
)
;
true
)
;
true
),
'detach_known/1_1_$special_functor/3/3'(B,C).
'attach_known/1_1_$special_\\=/2/2'([],_).
'attach_known/1_1_$special_\\=/2/2'([A|B],C) :-
( get_attr(A,guard_entailment,F1) ->
F1=v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1),
( D1/\32768=:=32768 ->
put_attr(A,guard_entailment,v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,[C|S],T,U,V,W,X,Y,Z,A1,B1,C1))
;
E1 is D1\/32768,
put_attr(A,guard_entailment,v(E1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,[C],T,U,V,W,X,Y,Z,A1,B1,C1))
)
;
put_attr(A,guard_entailment,v(32768,[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[C],[],[],[],[],[],[],[],[],[],[]))
),
'attach_known/1_1_$special_\\=/2/2'(B,C).
'detach_known/1_1_$special_\\=/2/2'([],_).
'detach_known/1_1_$special_\\=/2/2'([A|B],C) :-
( get_attr(A,guard_entailment,G1) ->
G1=v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1),
( D1/\32768=:=32768 ->
'chr sbag_del_element'(S,C,F1),
( F1==[] ->
E1 is D1/\ -32769,
( E1==0 ->
del_attr(A,guard_entailment)
;
put_attr(A,guard_entailment,v(E1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,[],T,U,V,W,X,Y,Z,A1,B1,C1))
)
;
put_attr(A,guard_entailment,v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,F1,T,U,V,W,X,Y,Z,A1,B1,C1))
)
;
true
)
;
true
),
'detach_known/1_1_$special_\\=/2/2'(B,C).
'attach_known/1_1_$special_=/2/2'([],_).
'attach_known/1_1_$special_=/2/2'([A|B],C) :-
( get_attr(A,guard_entailment,F1) ->
F1=v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1),
( D1/\65536=:=65536 ->
put_attr(A,guard_entailment,v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,[C|T],U,V,W,X,Y,Z,A1,B1,C1))
;
E1 is D1\/65536,
put_attr(A,guard_entailment,v(E1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,[C],U,V,W,X,Y,Z,A1,B1,C1))
)
;
put_attr(A,guard_entailment,v(65536,[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[C],[],[],[],[],[],[],[],[],[]))
),
'attach_known/1_1_$special_=/2/2'(B,C).
'detach_known/1_1_$special_=/2/2'([],_).
'detach_known/1_1_$special_=/2/2'([A|B],C) :-
( get_attr(A,guard_entailment,G1) ->
G1=v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1),
( D1/\65536=:=65536 ->
'chr sbag_del_element'(T,C,F1),
( F1==[] ->
E1 is D1/\ -65537,
( E1==0 ->
del_attr(A,guard_entailment)
;
put_attr(A,guard_entailment,v(E1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,[],U,V,W,X,Y,Z,A1,B1,C1))
)
;
put_attr(A,guard_entailment,v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,F1,U,V,W,X,Y,Z,A1,B1,C1))
)
;
true
)
;
true
),
'detach_known/1_1_$special_=/2/2'(B,C).
'attach_known/1_1_$special_,/2/2'([],_).
'attach_known/1_1_$special_,/2/2'([A|B],C) :-
( get_attr(A,guard_entailment,F1) ->
F1=v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1),
( D1/\131072=:=131072 ->
put_attr(A,guard_entailment,v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,[C|U],V,W,X,Y,Z,A1,B1,C1))
;
E1 is D1\/131072,
put_attr(A,guard_entailment,v(E1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,[C],V,W,X,Y,Z,A1,B1,C1))
)
;
put_attr(A,guard_entailment,v(131072,[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[C],[],[],[],[],[],[],[],[]))
),
'attach_known/1_1_$special_,/2/2'(B,C).
'detach_known/1_1_$special_,/2/2'([],_).
'detach_known/1_1_$special_,/2/2'([A|B],C) :-
( get_attr(A,guard_entailment,G1) ->
G1=v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1),
( D1/\131072=:=131072 ->
'chr sbag_del_element'(U,C,F1),
( F1==[] ->
E1 is D1/\ -131073,
( E1==0 ->
del_attr(A,guard_entailment)
;
put_attr(A,guard_entailment,v(E1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,[],V,W,X,Y,Z,A1,B1,C1))
)
;
put_attr(A,guard_entailment,v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,F1,V,W,X,Y,Z,A1,B1,C1))
)
;
true
)
;
true
),
'detach_known/1_1_$special_,/2/2'(B,C).
'attach_known/1_1_$special_\\==/2/2'([],_).
'attach_known/1_1_$special_\\==/2/2'([A|B],C) :-
( get_attr(A,guard_entailment,F1) ->
F1=v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1),
( D1/\262144=:=262144 ->
put_attr(A,guard_entailment,v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,[C|V],W,X,Y,Z,A1,B1,C1))
;
E1 is D1\/262144,
put_attr(A,guard_entailment,v(E1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,[C],W,X,Y,Z,A1,B1,C1))
)
;
put_attr(A,guard_entailment,v(262144,[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[C],[],[],[],[],[],[],[]))
),
'attach_known/1_1_$special_\\==/2/2'(B,C).
'detach_known/1_1_$special_\\==/2/2'([],_).
'detach_known/1_1_$special_\\==/2/2'([A|B],C) :-
( get_attr(A,guard_entailment,G1) ->
G1=v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1),
( D1/\262144=:=262144 ->
'chr sbag_del_element'(V,C,F1),
( F1==[] ->
E1 is D1/\ -262145,
( E1==0 ->
del_attr(A,guard_entailment)
;
put_attr(A,guard_entailment,v(E1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,[],W,X,Y,Z,A1,B1,C1))
)
;
put_attr(A,guard_entailment,v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,F1,W,X,Y,Z,A1,B1,C1))
)
;
true
)
;
true
),
'detach_known/1_1_$special_\\==/2/2'(B,C).
'attach_known/1_1_$special_==/2/2'([],_).
'attach_known/1_1_$special_==/2/2'([A|B],C) :-
( get_attr(A,guard_entailment,F1) ->
F1=v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1),
( D1/\524288=:=524288 ->
put_attr(A,guard_entailment,v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,[C|W],X,Y,Z,A1,B1,C1))
;
E1 is D1\/524288,
put_attr(A,guard_entailment,v(E1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,[C],X,Y,Z,A1,B1,C1))
)
;
put_attr(A,guard_entailment,v(524288,[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[C],[],[],[],[],[],[]))
),
'attach_known/1_1_$special_==/2/2'(B,C).
'detach_known/1_1_$special_==/2/2'([],_).
'detach_known/1_1_$special_==/2/2'([A|B],C) :-
( get_attr(A,guard_entailment,G1) ->
G1=v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1),
( D1/\524288=:=524288 ->
'chr sbag_del_element'(W,C,F1),
( F1==[] ->
E1 is D1/\ -524289,
( E1==0 ->
del_attr(A,guard_entailment)
;
put_attr(A,guard_entailment,v(E1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,[],X,Y,Z,A1,B1,C1))
)
;
put_attr(A,guard_entailment,v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,F1,X,Y,Z,A1,B1,C1))
)
;
true
)
;
true
),
'detach_known/1_1_$special_==/2/2'(B,C).
'attach_known/1_1_$special_is/2/2'([],_).
'attach_known/1_1_$special_is/2/2'([A|B],C) :-
( get_attr(A,guard_entailment,F1) ->
F1=v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1),
( D1/\1048576=:=1048576 ->
put_attr(A,guard_entailment,v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,[C|X],Y,Z,A1,B1,C1))
;
E1 is D1\/1048576,
put_attr(A,guard_entailment,v(E1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,[C],Y,Z,A1,B1,C1))
)
;
put_attr(A,guard_entailment,v(1048576,[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[C],[],[],[],[],[]))
),
'attach_known/1_1_$special_is/2/2'(B,C).
'detach_known/1_1_$special_is/2/2'([],_).
'detach_known/1_1_$special_is/2/2'([A|B],C) :-
( get_attr(A,guard_entailment,G1) ->
G1=v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1),
( D1/\1048576=:=1048576 ->
'chr sbag_del_element'(X,C,F1),
( F1==[] ->
E1 is D1/\ -1048577,
( E1==0 ->
del_attr(A,guard_entailment)
;
put_attr(A,guard_entailment,v(E1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,[],Y,Z,A1,B1,C1))
)
;
put_attr(A,guard_entailment,v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,F1,Y,Z,A1,B1,C1))
)
;
true
)
;
true
),
'detach_known/1_1_$special_is/2/2'(B,C).
'attach_known/1_1_$special_</2/2'([],_).
'attach_known/1_1_$special_</2/2'([A|B],C) :-
( get_attr(A,guard_entailment,F1) ->
F1=v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1),
( D1/\2097152=:=2097152 ->
put_attr(A,guard_entailment,v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,[C|Y],Z,A1,B1,C1))
;
E1 is D1\/2097152,
put_attr(A,guard_entailment,v(E1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,[C],Z,A1,B1,C1))
)
;
put_attr(A,guard_entailment,v(2097152,[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[C],[],[],[],[]))
),
'attach_known/1_1_$special_</2/2'(B,C).
'detach_known/1_1_$special_</2/2'([],_).
'detach_known/1_1_$special_</2/2'([A|B],C) :-
( get_attr(A,guard_entailment,G1) ->
G1=v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1),
( D1/\2097152=:=2097152 ->
'chr sbag_del_element'(Y,C,F1),
( F1==[] ->
E1 is D1/\ -2097153,
( E1==0 ->
del_attr(A,guard_entailment)
;
put_attr(A,guard_entailment,v(E1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,[],Z,A1,B1,C1))
)
;
put_attr(A,guard_entailment,v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,F1,Z,A1,B1,C1))
)
;
true
)
;
true
),
'detach_known/1_1_$special_</2/2'(B,C).
'attach_known/1_1_$special_>=/2/2'([],_).
'attach_known/1_1_$special_>=/2/2'([A|B],C) :-
( get_attr(A,guard_entailment,F1) ->
F1=v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1),
( D1/\4194304=:=4194304 ->
put_attr(A,guard_entailment,v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,[C|Z],A1,B1,C1))
;
E1 is D1\/4194304,
put_attr(A,guard_entailment,v(E1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,[C],A1,B1,C1))
)
;
put_attr(A,guard_entailment,v(4194304,[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[C],[],[],[]))
),
'attach_known/1_1_$special_>=/2/2'(B,C).
'detach_known/1_1_$special_>=/2/2'([],_).
'detach_known/1_1_$special_>=/2/2'([A|B],C) :-
( get_attr(A,guard_entailment,G1) ->
G1=v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1),
( D1/\4194304=:=4194304 ->
'chr sbag_del_element'(Z,C,F1),
( F1==[] ->
E1 is D1/\ -4194305,
( E1==0 ->
del_attr(A,guard_entailment)
;
put_attr(A,guard_entailment,v(E1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,[],A1,B1,C1))
)
;
put_attr(A,guard_entailment,v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,F1,A1,B1,C1))
)
;
true
)
;
true
),
'detach_known/1_1_$special_>=/2/2'(B,C).
'attach_known/1_1_$special_>/2/2'([],_).
'attach_known/1_1_$special_>/2/2'([A|B],C) :-
( get_attr(A,guard_entailment,F1) ->
F1=v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1),
( D1/\8388608=:=8388608 ->
put_attr(A,guard_entailment,v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,[C|A1],B1,C1))
;
E1 is D1\/8388608,
put_attr(A,guard_entailment,v(E1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,[C],B1,C1))
)
;
put_attr(A,guard_entailment,v(8388608,[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[C],[],[]))
),
'attach_known/1_1_$special_>/2/2'(B,C).
'detach_known/1_1_$special_>/2/2'([],_).
'detach_known/1_1_$special_>/2/2'([A|B],C) :-
( get_attr(A,guard_entailment,G1) ->
G1=v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1),
( D1/\8388608=:=8388608 ->
'chr sbag_del_element'(A1,C,F1),
( F1==[] ->
E1 is D1/\ -8388609,
( E1==0 ->
del_attr(A,guard_entailment)
;
put_attr(A,guard_entailment,v(E1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,[],B1,C1))
)
;
put_attr(A,guard_entailment,v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,F1,B1,C1))
)
;
true
)
;
true
),
'detach_known/1_1_$special_>/2/2'(B,C).
'attach_known/1_1_$special_=</2/2'([],_).
'attach_known/1_1_$special_=</2/2'([A|B],C) :-
( get_attr(A,guard_entailment,F1) ->
F1=v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1),
( D1/\16777216=:=16777216 ->
put_attr(A,guard_entailment,v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,[C|B1],C1))
;
E1 is D1\/16777216,
put_attr(A,guard_entailment,v(E1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,[C],C1))
)
;
put_attr(A,guard_entailment,v(16777216,[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[C],[]))
),
'attach_known/1_1_$special_=</2/2'(B,C).
'detach_known/1_1_$special_=</2/2'([],_).
'detach_known/1_1_$special_=</2/2'([A|B],C) :-
( get_attr(A,guard_entailment,G1) ->
G1=v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1),
( D1/\16777216=:=16777216 ->
'chr sbag_del_element'(B1,C,F1),
( F1==[] ->
E1 is D1/\ -16777217,
( E1==0 ->
del_attr(A,guard_entailment)
;
put_attr(A,guard_entailment,v(E1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,[],C1))
)
;
put_attr(A,guard_entailment,v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,F1,C1))
)
;
true
)
;
true
),
'detach_known/1_1_$special_=</2/2'(B,C).
'attach_known/1_1_$special_=:=/2/2'([],_).
'attach_known/1_1_$special_=:=/2/2'([A|B],C) :-
( get_attr(A,guard_entailment,F1) ->
F1=v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1),
( D1/\33554432=:=33554432 ->
put_attr(A,guard_entailment,v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,[C|C1]))
;
E1 is D1\/33554432,
put_attr(A,guard_entailment,v(E1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,[C]))
)
;
put_attr(A,guard_entailment,v(33554432,[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[C]))
),
'attach_known/1_1_$special_=:=/2/2'(B,C).
'detach_known/1_1_$special_=:=/2/2'([],_).
'detach_known/1_1_$special_=:=/2/2'([A|B],C) :-
( get_attr(A,guard_entailment,G1) ->
G1=v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,C1),
( D1/\33554432=:=33554432 ->
'chr sbag_del_element'(C1,C,F1),
( F1==[] ->
E1 is D1/\ -33554433,
( E1==0 ->
del_attr(A,guard_entailment)
;
put_attr(A,guard_entailment,v(E1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,[]))
)
;
put_attr(A,guard_entailment,v(D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1,B1,F1))
)
;
true
)
;
true
),
'detach_known/1_1_$special_=:=/2/2'(B,C).
'$indexed_variables'(B,A) :-
B=variables(_),
term_variables(B,A).
'$indexed_variables'(B,A) :-
B='known/1_1_$default'(_),
term_variables(B,A).
'$indexed_variables'(B,A) :-
B='known/1_1_$special_;/2'(_,_),
term_variables(B,A).
'$indexed_variables'(B,A) :-
B='known/1_1_$special_nonvar/1'(_),
term_variables(B,A).
'$indexed_variables'(B,A) :-
B='known/1_1_$special_var/1'(_),
term_variables(B,A).
'$indexed_variables'(B,A) :-
B='known/1_1_$special_atom/1'(_),
term_variables(B,A).
'$indexed_variables'(B,A) :-
B='known/1_1_$special_atomic/1'(_),
term_variables(B,A).
'$indexed_variables'(B,A) :-
B='known/1_1_$special_compound/1'(_),
term_variables(B,A).
'$indexed_variables'(B,A) :-
B='known/1_1_$special_ground/1'(_),
term_variables(B,A).
'$indexed_variables'(B,A) :-
B='known/1_1_$special_integer/1'(_),
term_variables(B,A).
'$indexed_variables'(B,A) :-
B='known/1_1_$special_float/1'(_),
term_variables(B,A).
'$indexed_variables'(B,A) :-
B='known/1_1_$special_number/1'(_),
term_variables(B,A).
'$indexed_variables'(B,A) :-
B='known/1_1_$special_=\\=/2'(_,_),
term_variables(B,A).
'$indexed_variables'(B,A) :-
B='known/1_1_$special_\\+/1'(_),
term_variables(B,A).
'$indexed_variables'(B,A) :-
B='known/1_1_$special_functor/3'(_,_,_),
term_variables(B,A).
'$indexed_variables'(B,A) :-
B='known/1_1_$special_\\=/2'(_,_),
term_variables(B,A).
'$indexed_variables'(B,A) :-
B='known/1_1_$special_=/2'(_,_),
term_variables(B,A).
'$indexed_variables'(B,A) :-
B='known/1_1_$special_,/2'(_,_),
term_variables(B,A).
'$indexed_variables'(B,A) :-
B='known/1_1_$special_\\==/2'(_,_),
term_variables(B,A).
'$indexed_variables'(B,A) :-
B='known/1_1_$special_==/2'(_,_),
term_variables(B,A).
'$indexed_variables'(B,A) :-
B='known/1_1_$special_is/2'(_,_),
term_variables(B,A).
'$indexed_variables'(B,A) :-
B='known/1_1_$special_</2'(_,_),
term_variables(B,A).
'$indexed_variables'(B,A) :-
B='known/1_1_$special_>=/2'(_,_),
term_variables(B,A).
'$indexed_variables'(B,A) :-
B='known/1_1_$special_>/2'(_,_),
term_variables(B,A).
'$indexed_variables'(B,A) :-
B='known/1_1_$special_=</2'(_,_),
term_variables(B,A).
'$indexed_variables'(B,A) :-
B='known/1_1_$special_=:=/2'(_,_),
term_variables(B,A).
'$indexed_variables'(B,A) :-
B='known/1_1_$special_fail/0',
A=[].
attach_increment([],_).
attach_increment([C2|D2],v(A1,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z)) :-
'chr not_locked'(C2),
( get_attr(C2,guard_entailment,F4) ->
F4=v(B2,B1,C1,D1,E1,F1,G1,H1,I1,J1,K1,L1,M1,N1,O1,P1,Q1,R1,S1,T1,U1,V1,W1,X1,Y1,Z1,A2),
sort(B1,E2),
'chr merge_attributes'(A,E2,F2),
sort(C1,G2),
'chr merge_attributes'(B,G2,H2),
sort(D1,I2),
'chr merge_attributes'(C,I2,J2),
sort(E1,K2),
'chr merge_attributes'(D,K2,L2),
sort(F1,M2),
'chr merge_attributes'(E,M2,N2),
sort(G1,O2),
'chr merge_attributes'(F,O2,P2),
sort(H1,Q2),
'chr merge_attributes'(G,Q2,R2),
sort(I1,S2),
'chr merge_attributes'(H,S2,T2),
sort(J1,U2),
'chr merge_attributes'(I,U2,V2),
sort(K1,W2),
'chr merge_attributes'(J,W2,X2),
sort(L1,Y2),
'chr merge_attributes'(K,Y2,Z2),
sort(M1,A3),
'chr merge_attributes'(L,A3,B3),
sort(N1,C3),
'chr merge_attributes'(M,C3,D3),
sort(O1,E3),
'chr merge_attributes'(N,E3,F3),
sort(P1,G3),
'chr merge_attributes'(O,G3,H3),
sort(Q1,I3),
'chr merge_attributes'(P,I3,J3),
sort(R1,K3),
'chr merge_attributes'(Q,K3,L3),
sort(S1,M3),
'chr merge_attributes'(R,M3,N3),
sort(T1,O3),
'chr merge_attributes'(S,O3,P3),
sort(U1,Q3),
'chr merge_attributes'(T,Q3,R3),
sort(V1,S3),
'chr merge_attributes'(U,S3,T3),
sort(W1,U3),
'chr merge_attributes'(V,U3,V3),
sort(X1,W3),
'chr merge_attributes'(W,W3,X3),
sort(Y1,Y3),
'chr merge_attributes'(X,Y3,Z3),
sort(Z1,A4),
'chr merge_attributes'(Y,A4,B4),
sort(A2,C4),
'chr merge_attributes'(Z,C4,D4),
E4 is A1\/B2,
put_attr(C2,guard_entailment,v(E4,F2,H2,J2,L2,N2,P2,R2,T2,V2,X2,Z2,B3,D3,F3,H3,J3,L3,N3,P3,R3,T3,V3,X3,Z3,B4,D4))
;
put_attr(C2,guard_entailment,v(A1,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z))
),
attach_increment(D2,v(A1,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z)).
attr_unify_hook(v(A1,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z),D5) :-
sort(A,C2),
sort(B,D2),
sort(C,E2),
sort(D,F2),
sort(E,G2),
sort(F,H2),
sort(G,I2),
sort(H,J2),
sort(I,K2),
sort(J,L2),
sort(K,M2),
sort(L,N2),
sort(M,O2),
sort(N,P2),
sort(O,Q2),
sort(P,R2),
sort(Q,S2),
sort(R,T2),
sort(S,U2),
sort(T,V2),
sort(U,W2),
sort(V,X2),
sort(W,Y2),
sort(X,Z2),
sort(Y,A3),
sort(Z,B3),
( var(D5) ->
( get_attr(D5,guard_entailment,E5) ->
E5=v(B2,B1,C1,D1,E1,F1,G1,H1,I1,J1,K1,L1,M1,N1,O1,P1,Q1,R1,S1,T1,U1,V1,W1,X1,Y1,Z1,A2),
sort(B1,C3),
'chr merge_attributes'(C2,C3,D3),
sort(C1,E3),
'chr merge_attributes'(D2,E3,F3),
sort(D1,G3),
'chr merge_attributes'(E2,G3,H3),
sort(E1,I3),
'chr merge_attributes'(F2,I3,J3),
sort(F1,K3),
'chr merge_attributes'(G2,K3,L3),
sort(G1,M3),
'chr merge_attributes'(H2,M3,N3),
sort(H1,O3),
'chr merge_attributes'(I2,O3,P3),
sort(I1,Q3),
'chr merge_attributes'(J2,Q3,R3),
sort(J1,S3),
'chr merge_attributes'(K2,S3,T3),
sort(K1,U3),
'chr merge_attributes'(L2,U3,V3),
sort(L1,W3),
'chr merge_attributes'(M2,W3,X3),
sort(M1,Y3),
'chr merge_attributes'(N2,Y3,Z3),
sort(N1,A4),
'chr merge_attributes'(O2,A4,B4),
sort(O1,C4),
'chr merge_attributes'(P2,C4,D4),
sort(P1,E4),
'chr merge_attributes'(Q2,E4,F4),
sort(Q1,G4),
'chr merge_attributes'(R2,G4,H4),
sort(R1,I4),
'chr merge_attributes'(S2,I4,J4),
sort(S1,K4),
'chr merge_attributes'(T2,K4,L4),
sort(T1,M4),
'chr merge_attributes'(U2,M4,N4),
sort(U1,O4),
'chr merge_attributes'(V2,O4,P4),
sort(V1,Q4),
'chr merge_attributes'(W2,Q4,R4),
sort(W1,S4),
'chr merge_attributes'(X2,S4,T4),
sort(X1,U4),
'chr merge_attributes'(Y2,U4,V4),
sort(Y1,W4),
'chr merge_attributes'(Z2,W4,X4),
sort(Z1,Y4),
'chr merge_attributes'(A3,Y4,Z4),
sort(A2,A5),
'chr merge_attributes'(B3,A5,B5),
C5 is A1\/B2,
put_attr(D5,guard_entailment,v(C5,D3,F3,H3,J3,L3,N3,P3,R3,T3,V3,X3,Z3,B4,D4,F4,H4,J4,L4,N4,P4,R4,T4,V4,X4,Z4,B5)),
'chr run_suspensions_loop'([D3,F3,H3,J3,L3,N3,P3,R3,T3,V3,X3,Z3,B4,D4,F4,H4,J4,L4,N4,P4,R4,T4,V4,X4,Z4,B5])
;
put_attr(D5,guard_entailment,v(A1,C2,D2,E2,F2,G2,H2,I2,J2,K2,L2,M2,N2,O2,P2,Q2,R2,S2,T2,U2,V2,W2,X2,Y2,Z2,A3,B3)),
'chr run_suspensions_loop'([C2,D2,E2,F2,G2,H2,I2,J2,K2,L2,M2,N2,O2,P2,Q2,R2,S2,T2,U2,V2,W2,X2,Y2,Z2,A3,B3])
)
;
( compound(D5) ->
term_variables(D5,F5),
attach_increment(F5,v(A1,C2,D2,E2,F2,G2,H2,I2,J2,K2,L2,M2,N2,O2,P2,Q2,R2,S2,T2,U2,V2,W2,X2,Y2,Z2,A3,B3))
;
true
),
'chr run_suspensions_loop'([C2,D2,E2,F2,G2,H2,I2,J2,K2,L2,M2,N2,O2,P2,Q2,R2,S2,T2,U2,V2,W2,X2,Y2,Z2,A3,B3])
).
remove_constraint_internal(A,B,C) :-
arg(2,A,D),
'chr get_mutable'(E,D),
'chr update_mutable'(removed,D),
( compound(E) ->
B=[],
C=no
;
( E==removed ->
B=[],
C=no
)
;
C=yes,
chr_indexed_variables(A,B)
).
activate_constraint(A,B,C,D) :-
arg(2,C,E),
'chr get_mutable'(F,E),
'chr update_mutable'(active,E),
( nonvar(D) ->
true
;
arg(4,C,G),
'chr get_mutable'(H,G),
D is H+1,
'chr update_mutable'(D,G)
),
( compound(F) ->
term_variables(F,B),
'chr none_locked'(B),
A=yes
;
( F==removed ->
chr_indexed_variables(C,B),
A=yes
)
;
B=[],
A=no
).
allocate_constraint(A,B,C,D) :-
B=..[suspension,E,F,A,G,H,C|D],
'chr create_mutable'(0,G),
'chr empty_history'(I),
'chr create_mutable'(I,H),
chr_indexed_variables(B,J),
'chr create_mutable'(passive(J),F),
'chr gen_id'(E).
chr_indexed_variables(A,C) :-
A=..[_,_,_,_,_,_,B|_],
'$indexed_variables'(B,C).
insert_constraint_internal(yes,A,B,C,D,E) :-
B=..[suspension,F,G,C,H,I,D|E],
chr_indexed_variables(B,A),
'chr none_locked'(A),
'chr create_mutable'(active,G),
'chr create_mutable'(0,H),
'chr empty_history'(J),
'chr create_mutable'(J,I),
'chr gen_id'(F).
'$insert_in_store_variables/1'(A) :-
'chr default_store'(D1),
( get_attr(D1,guard_entailment,E1) ->
E1=v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1),
( B1/\1=:=1 ->
put_attr(D1,guard_entailment,v(B1,[A|B],C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
;
C1 is B1\/1,
put_attr(D1,guard_entailment,v(C1,[A],C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
)
;
put_attr(D1,guard_entailment,v(1,[A],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]))
).
'$delete_from_store_variables/1'(A) :-
'chr default_store'(E1),
( get_attr(E1,guard_entailment,F1) ->
F1=v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1),
( B1/\1=:=1 ->
'chr sbag_del_element'(B,A,D1),
( D1==[] ->
C1 is B1/\ -2,
( C1==0 ->
del_attr(E1,guard_entailment)
;
put_attr(E1,guard_entailment,v(C1,[],C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
)
;
put_attr(E1,guard_entailment,v(B1,D1,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
)
;
true
)
;
true
).
'$insert_in_store_known/1_1_$default/1'(A) :-
'chr default_store'(D1),
( get_attr(D1,guard_entailment,E1) ->
E1=v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1),
( B1/\2=:=2 ->
put_attr(D1,guard_entailment,v(B1,B,[A|C],D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
;
C1 is B1\/2,
put_attr(D1,guard_entailment,v(C1,B,[A],D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
)
;
put_attr(D1,guard_entailment,v(2,[],[A],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]))
).
'$delete_from_store_known/1_1_$default/1'(A) :-
'chr default_store'(E1),
( get_attr(E1,guard_entailment,F1) ->
F1=v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1),
( B1/\2=:=2 ->
'chr sbag_del_element'(C,A,D1),
( D1==[] ->
C1 is B1/\ -3,
( C1==0 ->
del_attr(E1,guard_entailment)
;
put_attr(E1,guard_entailment,v(C1,B,[],D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
)
;
put_attr(E1,guard_entailment,v(B1,B,D1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
)
;
true
)
;
true
).
'$insert_in_store_known/1_1_$special_;/2/2'(A) :-
'chr default_store'(D1),
( get_attr(D1,guard_entailment,E1) ->
E1=v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1),
( B1/\4=:=4 ->
put_attr(D1,guard_entailment,v(B1,B,C,[A|D],E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
;
C1 is B1\/4,
put_attr(D1,guard_entailment,v(C1,B,C,[A],E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
)
;
put_attr(D1,guard_entailment,v(4,[],[],[A],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]))
).
'$delete_from_store_known/1_1_$special_;/2/2'(A) :-
'chr default_store'(E1),
( get_attr(E1,guard_entailment,F1) ->
F1=v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1),
( B1/\4=:=4 ->
'chr sbag_del_element'(D,A,D1),
( D1==[] ->
C1 is B1/\ -5,
( C1==0 ->
del_attr(E1,guard_entailment)
;
put_attr(E1,guard_entailment,v(C1,B,C,[],E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
)
;
put_attr(E1,guard_entailment,v(B1,B,C,D1,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
)
;
true
)
;
true
).
'$insert_in_store_known/1_1_$special_nonvar/1/1'(A) :-
'chr default_store'(D1),
( get_attr(D1,guard_entailment,E1) ->
E1=v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1),
( B1/\8=:=8 ->
put_attr(D1,guard_entailment,v(B1,B,C,D,[A|E],F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
;
C1 is B1\/8,
put_attr(D1,guard_entailment,v(C1,B,C,D,[A],F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
)
;
put_attr(D1,guard_entailment,v(8,[],[],[],[A],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]))
).
'$delete_from_store_known/1_1_$special_nonvar/1/1'(A) :-
'chr default_store'(E1),
( get_attr(E1,guard_entailment,F1) ->
F1=v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1),
( B1/\8=:=8 ->
'chr sbag_del_element'(E,A,D1),
( D1==[] ->
C1 is B1/\ -9,
( C1==0 ->
del_attr(E1,guard_entailment)
;
put_attr(E1,guard_entailment,v(C1,B,C,D,[],F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
)
;
put_attr(E1,guard_entailment,v(B1,B,C,D,D1,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
)
;
true
)
;
true
).
'$insert_in_store_known/1_1_$special_var/1/1'(A) :-
'chr default_store'(D1),
( get_attr(D1,guard_entailment,E1) ->
E1=v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1),
( B1/\16=:=16 ->
put_attr(D1,guard_entailment,v(B1,B,C,D,E,[A|F],G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
;
C1 is B1\/16,
put_attr(D1,guard_entailment,v(C1,B,C,D,E,[A],G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
)
;
put_attr(D1,guard_entailment,v(16,[],[],[],[],[A],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]))
).
'$delete_from_store_known/1_1_$special_var/1/1'(A) :-
'chr default_store'(E1),
( get_attr(E1,guard_entailment,F1) ->
F1=v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1),
( B1/\16=:=16 ->
'chr sbag_del_element'(F,A,D1),
( D1==[] ->
C1 is B1/\ -17,
( C1==0 ->
del_attr(E1,guard_entailment)
;
put_attr(E1,guard_entailment,v(C1,B,C,D,E,[],G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
)
;
put_attr(E1,guard_entailment,v(B1,B,C,D,E,D1,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
)
;
true
)
;
true
).
'$insert_in_store_known/1_1_$special_atom/1/1'(A) :-
'chr default_store'(D1),
( get_attr(D1,guard_entailment,E1) ->
E1=v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1),
( B1/\32=:=32 ->
put_attr(D1,guard_entailment,v(B1,B,C,D,E,F,[A|G],H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
;
C1 is B1\/32,
put_attr(D1,guard_entailment,v(C1,B,C,D,E,F,[A],H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
)
;
put_attr(D1,guard_entailment,v(32,[],[],[],[],[],[A],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]))
).
'$delete_from_store_known/1_1_$special_atom/1/1'(A) :-
'chr default_store'(E1),
( get_attr(E1,guard_entailment,F1) ->
F1=v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1),
( B1/\32=:=32 ->
'chr sbag_del_element'(G,A,D1),
( D1==[] ->
C1 is B1/\ -33,
( C1==0 ->
del_attr(E1,guard_entailment)
;
put_attr(E1,guard_entailment,v(C1,B,C,D,E,F,[],H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
)
;
put_attr(E1,guard_entailment,v(B1,B,C,D,E,F,D1,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
)
;
true
)
;
true
).
'$insert_in_store_known/1_1_$special_atomic/1/1'(A) :-
'chr default_store'(D1),
( get_attr(D1,guard_entailment,E1) ->
E1=v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1),
( B1/\64=:=64 ->
put_attr(D1,guard_entailment,v(B1,B,C,D,E,F,G,[A|H],I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
;
C1 is B1\/64,
put_attr(D1,guard_entailment,v(C1,B,C,D,E,F,G,[A],I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
)
;
put_attr(D1,guard_entailment,v(64,[],[],[],[],[],[],[A],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]))
).
'$delete_from_store_known/1_1_$special_atomic/1/1'(A) :-
'chr default_store'(E1),
( get_attr(E1,guard_entailment,F1) ->
F1=v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1),
( B1/\64=:=64 ->
'chr sbag_del_element'(H,A,D1),
( D1==[] ->
C1 is B1/\ -65,
( C1==0 ->
del_attr(E1,guard_entailment)
;
put_attr(E1,guard_entailment,v(C1,B,C,D,E,F,G,[],I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
)
;
put_attr(E1,guard_entailment,v(B1,B,C,D,E,F,G,D1,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
)
;
true
)
;
true
).
'$insert_in_store_known/1_1_$special_compound/1/1'(A) :-
'chr default_store'(D1),
( get_attr(D1,guard_entailment,E1) ->
E1=v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1),
( B1/\128=:=128 ->
put_attr(D1,guard_entailment,v(B1,B,C,D,E,F,G,H,[A|I],J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
;
C1 is B1\/128,
put_attr(D1,guard_entailment,v(C1,B,C,D,E,F,G,H,[A],J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
)
;
put_attr(D1,guard_entailment,v(128,[],[],[],[],[],[],[],[A],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]))
).
'$delete_from_store_known/1_1_$special_compound/1/1'(A) :-
'chr default_store'(E1),
( get_attr(E1,guard_entailment,F1) ->
F1=v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1),
( B1/\128=:=128 ->
'chr sbag_del_element'(I,A,D1),
( D1==[] ->
C1 is B1/\ -129,
( C1==0 ->
del_attr(E1,guard_entailment)
;
put_attr(E1,guard_entailment,v(C1,B,C,D,E,F,G,H,[],J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
)
;
put_attr(E1,guard_entailment,v(B1,B,C,D,E,F,G,H,D1,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
)
;
true
)
;
true
).
'$insert_in_store_known/1_1_$special_ground/1/1'(A) :-
'chr default_store'(D1),
( get_attr(D1,guard_entailment,E1) ->
E1=v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1),
( B1/\256=:=256 ->
put_attr(D1,guard_entailment,v(B1,B,C,D,E,F,G,H,I,[A|J],K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
;
C1 is B1\/256,
put_attr(D1,guard_entailment,v(C1,B,C,D,E,F,G,H,I,[A],K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
)
;
put_attr(D1,guard_entailment,v(256,[],[],[],[],[],[],[],[],[A],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]))
).
'$delete_from_store_known/1_1_$special_ground/1/1'(A) :-
'chr default_store'(E1),
( get_attr(E1,guard_entailment,F1) ->
F1=v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1),
( B1/\256=:=256 ->
'chr sbag_del_element'(J,A,D1),
( D1==[] ->
C1 is B1/\ -257,
( C1==0 ->
del_attr(E1,guard_entailment)
;
put_attr(E1,guard_entailment,v(C1,B,C,D,E,F,G,H,I,[],K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
)
;
put_attr(E1,guard_entailment,v(B1,B,C,D,E,F,G,H,I,D1,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
)
;
true
)
;
true
).
'$insert_in_store_known/1_1_$special_integer/1/1'(A) :-
'chr default_store'(D1),
( get_attr(D1,guard_entailment,E1) ->
E1=v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1),
( B1/\512=:=512 ->
put_attr(D1,guard_entailment,v(B1,B,C,D,E,F,G,H,I,J,[A|K],L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
;
C1 is B1\/512,
put_attr(D1,guard_entailment,v(C1,B,C,D,E,F,G,H,I,J,[A],L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
)
;
put_attr(D1,guard_entailment,v(512,[],[],[],[],[],[],[],[],[],[A],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]))
).
'$delete_from_store_known/1_1_$special_integer/1/1'(A) :-
'chr default_store'(E1),
( get_attr(E1,guard_entailment,F1) ->
F1=v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1),
( B1/\512=:=512 ->
'chr sbag_del_element'(K,A,D1),
( D1==[] ->
C1 is B1/\ -513,
( C1==0 ->
del_attr(E1,guard_entailment)
;
put_attr(E1,guard_entailment,v(C1,B,C,D,E,F,G,H,I,J,[],L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
)
;
put_attr(E1,guard_entailment,v(B1,B,C,D,E,F,G,H,I,J,D1,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
)
;
true
)
;
true
).
'$insert_in_store_known/1_1_$special_float/1/1'(A) :-
'chr default_store'(D1),
( get_attr(D1,guard_entailment,E1) ->
E1=v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1),
( B1/\1024=:=1024 ->
put_attr(D1,guard_entailment,v(B1,B,C,D,E,F,G,H,I,J,K,[A|L],M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
;
C1 is B1\/1024,
put_attr(D1,guard_entailment,v(C1,B,C,D,E,F,G,H,I,J,K,[A],M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
)
;
put_attr(D1,guard_entailment,v(1024,[],[],[],[],[],[],[],[],[],[],[A],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]))
).
'$delete_from_store_known/1_1_$special_float/1/1'(A) :-
'chr default_store'(E1),
( get_attr(E1,guard_entailment,F1) ->
F1=v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1),
( B1/\1024=:=1024 ->
'chr sbag_del_element'(L,A,D1),
( D1==[] ->
C1 is B1/\ -1025,
( C1==0 ->
del_attr(E1,guard_entailment)
;
put_attr(E1,guard_entailment,v(C1,B,C,D,E,F,G,H,I,J,K,[],M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
)
;
put_attr(E1,guard_entailment,v(B1,B,C,D,E,F,G,H,I,J,K,D1,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
)
;
true
)
;
true
).
'$insert_in_store_known/1_1_$special_number/1/1'(A) :-
'chr default_store'(D1),
( get_attr(D1,guard_entailment,E1) ->
E1=v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1),
( B1/\2048=:=2048 ->
put_attr(D1,guard_entailment,v(B1,B,C,D,E,F,G,H,I,J,K,L,[A|M],N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
;
C1 is B1\/2048,
put_attr(D1,guard_entailment,v(C1,B,C,D,E,F,G,H,I,J,K,L,[A],N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
)
;
put_attr(D1,guard_entailment,v(2048,[],[],[],[],[],[],[],[],[],[],[],[A],[],[],[],[],[],[],[],[],[],[],[],[],[],[]))
).
'$delete_from_store_known/1_1_$special_number/1/1'(A) :-
'chr default_store'(E1),
( get_attr(E1,guard_entailment,F1) ->
F1=v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1),
( B1/\2048=:=2048 ->
'chr sbag_del_element'(M,A,D1),
( D1==[] ->
C1 is B1/\ -2049,
( C1==0 ->
del_attr(E1,guard_entailment)
;
put_attr(E1,guard_entailment,v(C1,B,C,D,E,F,G,H,I,J,K,L,[],N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
)
;
put_attr(E1,guard_entailment,v(B1,B,C,D,E,F,G,H,I,J,K,L,D1,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
)
;
true
)
;
true
).
'$insert_in_store_known/1_1_$special_=\\=/2/2'(A) :-
'chr default_store'(D1),
( get_attr(D1,guard_entailment,E1) ->
E1=v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1),
( B1/\4096=:=4096 ->
put_attr(D1,guard_entailment,v(B1,B,C,D,E,F,G,H,I,J,K,L,M,[A|N],O,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
;
C1 is B1\/4096,
put_attr(D1,guard_entailment,v(C1,B,C,D,E,F,G,H,I,J,K,L,M,[A],O,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
)
;
put_attr(D1,guard_entailment,v(4096,[],[],[],[],[],[],[],[],[],[],[],[],[A],[],[],[],[],[],[],[],[],[],[],[],[],[]))
).
'$delete_from_store_known/1_1_$special_=\\=/2/2'(A) :-
'chr default_store'(E1),
( get_attr(E1,guard_entailment,F1) ->
F1=v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1),
( B1/\4096=:=4096 ->
'chr sbag_del_element'(N,A,D1),
( D1==[] ->
C1 is B1/\ -4097,
( C1==0 ->
del_attr(E1,guard_entailment)
;
put_attr(E1,guard_entailment,v(C1,B,C,D,E,F,G,H,I,J,K,L,M,[],O,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
)
;
put_attr(E1,guard_entailment,v(B1,B,C,D,E,F,G,H,I,J,K,L,M,D1,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
)
;
true
)
;
true
).
'$insert_in_store_known/1_1_$special_\\+/1/1'(A) :-
'chr default_store'(D1),
( get_attr(D1,guard_entailment,E1) ->
E1=v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1),
( B1/\8192=:=8192 ->
put_attr(D1,guard_entailment,v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,[A|O],P,Q,R,S,T,U,V,W,X,Y,Z,A1))
;
C1 is B1\/8192,
put_attr(D1,guard_entailment,v(C1,B,C,D,E,F,G,H,I,J,K,L,M,N,[A],P,Q,R,S,T,U,V,W,X,Y,Z,A1))
)
;
put_attr(D1,guard_entailment,v(8192,[],[],[],[],[],[],[],[],[],[],[],[],[],[A],[],[],[],[],[],[],[],[],[],[],[],[]))
).
'$delete_from_store_known/1_1_$special_\\+/1/1'(A) :-
'chr default_store'(E1),
( get_attr(E1,guard_entailment,F1) ->
F1=v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1),
( B1/\8192=:=8192 ->
'chr sbag_del_element'(O,A,D1),
( D1==[] ->
C1 is B1/\ -8193,
( C1==0 ->
del_attr(E1,guard_entailment)
;
put_attr(E1,guard_entailment,v(C1,B,C,D,E,F,G,H,I,J,K,L,M,N,[],P,Q,R,S,T,U,V,W,X,Y,Z,A1))
)
;
put_attr(E1,guard_entailment,v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,D1,P,Q,R,S,T,U,V,W,X,Y,Z,A1))
)
;
true
)
;
true
).
'$insert_in_store_known/1_1_$special_functor/3/3'(A) :-
'chr default_store'(D1),
( get_attr(D1,guard_entailment,E1) ->
E1=v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1),
( B1/\16384=:=16384 ->
put_attr(D1,guard_entailment,v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,[A|P],Q,R,S,T,U,V,W,X,Y,Z,A1))
;
C1 is B1\/16384,
put_attr(D1,guard_entailment,v(C1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,[A],Q,R,S,T,U,V,W,X,Y,Z,A1))
)
;
put_attr(D1,guard_entailment,v(16384,[],[],[],[],[],[],[],[],[],[],[],[],[],[],[A],[],[],[],[],[],[],[],[],[],[],[]))
).
'$delete_from_store_known/1_1_$special_functor/3/3'(A) :-
'chr default_store'(E1),
( get_attr(E1,guard_entailment,F1) ->
F1=v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1),
( B1/\16384=:=16384 ->
'chr sbag_del_element'(P,A,D1),
( D1==[] ->
C1 is B1/\ -16385,
( C1==0 ->
del_attr(E1,guard_entailment)
;
put_attr(E1,guard_entailment,v(C1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,[],Q,R,S,T,U,V,W,X,Y,Z,A1))
)
;
put_attr(E1,guard_entailment,v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,D1,Q,R,S,T,U,V,W,X,Y,Z,A1))
)
;
true
)
;
true
).
'$insert_in_store_known/1_1_$special_\\=/2/2'(A) :-
'chr default_store'(D1),
( get_attr(D1,guard_entailment,E1) ->
E1=v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1),
( B1/\32768=:=32768 ->
put_attr(D1,guard_entailment,v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,[A|Q],R,S,T,U,V,W,X,Y,Z,A1))
;
C1 is B1\/32768,
put_attr(D1,guard_entailment,v(C1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,[A],R,S,T,U,V,W,X,Y,Z,A1))
)
;
put_attr(D1,guard_entailment,v(32768,[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[A],[],[],[],[],[],[],[],[],[],[]))
).
'$delete_from_store_known/1_1_$special_\\=/2/2'(A) :-
'chr default_store'(E1),
( get_attr(E1,guard_entailment,F1) ->
F1=v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1),
( B1/\32768=:=32768 ->
'chr sbag_del_element'(Q,A,D1),
( D1==[] ->
C1 is B1/\ -32769,
( C1==0 ->
del_attr(E1,guard_entailment)
;
put_attr(E1,guard_entailment,v(C1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,[],R,S,T,U,V,W,X,Y,Z,A1))
)
;
put_attr(E1,guard_entailment,v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,D1,R,S,T,U,V,W,X,Y,Z,A1))
)
;
true
)
;
true
).
'$insert_in_store_known/1_1_$special_=/2/2'(A) :-
'chr default_store'(D1),
( get_attr(D1,guard_entailment,E1) ->
E1=v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1),
( B1/\65536=:=65536 ->
put_attr(D1,guard_entailment,v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,[A|R],S,T,U,V,W,X,Y,Z,A1))
;
C1 is B1\/65536,
put_attr(D1,guard_entailment,v(C1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,[A],S,T,U,V,W,X,Y,Z,A1))
)
;
put_attr(D1,guard_entailment,v(65536,[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[A],[],[],[],[],[],[],[],[],[]))
).
'$delete_from_store_known/1_1_$special_=/2/2'(A) :-
'chr default_store'(E1),
( get_attr(E1,guard_entailment,F1) ->
F1=v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1),
( B1/\65536=:=65536 ->
'chr sbag_del_element'(R,A,D1),
( D1==[] ->
C1 is B1/\ -65537,
( C1==0 ->
del_attr(E1,guard_entailment)
;
put_attr(E1,guard_entailment,v(C1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,[],S,T,U,V,W,X,Y,Z,A1))
)
;
put_attr(E1,guard_entailment,v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,D1,S,T,U,V,W,X,Y,Z,A1))
)
;
true
)
;
true
).
'$insert_in_store_known/1_1_$special_,/2/2'(A) :-
'chr default_store'(D1),
( get_attr(D1,guard_entailment,E1) ->
E1=v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1),
( B1/\131072=:=131072 ->
put_attr(D1,guard_entailment,v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,[A|S],T,U,V,W,X,Y,Z,A1))
;
C1 is B1\/131072,
put_attr(D1,guard_entailment,v(C1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,[A],T,U,V,W,X,Y,Z,A1))
)
;
put_attr(D1,guard_entailment,v(131072,[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[A],[],[],[],[],[],[],[],[]))
).
'$delete_from_store_known/1_1_$special_,/2/2'(A) :-
'chr default_store'(E1),
( get_attr(E1,guard_entailment,F1) ->
F1=v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1),
( B1/\131072=:=131072 ->
'chr sbag_del_element'(S,A,D1),
( D1==[] ->
C1 is B1/\ -131073,
( C1==0 ->
del_attr(E1,guard_entailment)
;
put_attr(E1,guard_entailment,v(C1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,[],T,U,V,W,X,Y,Z,A1))
)
;
put_attr(E1,guard_entailment,v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,D1,T,U,V,W,X,Y,Z,A1))
)
;
true
)
;
true
).
'$insert_in_store_known/1_1_$special_\\==/2/2'(A) :-
'chr default_store'(D1),
( get_attr(D1,guard_entailment,E1) ->
E1=v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1),
( B1/\262144=:=262144 ->
put_attr(D1,guard_entailment,v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,[A|T],U,V,W,X,Y,Z,A1))
;
C1 is B1\/262144,
put_attr(D1,guard_entailment,v(C1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,[A],U,V,W,X,Y,Z,A1))
)
;
put_attr(D1,guard_entailment,v(262144,[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[A],[],[],[],[],[],[],[]))
).
'$delete_from_store_known/1_1_$special_\\==/2/2'(A) :-
'chr default_store'(E1),
( get_attr(E1,guard_entailment,F1) ->
F1=v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1),
( B1/\262144=:=262144 ->
'chr sbag_del_element'(T,A,D1),
( D1==[] ->
C1 is B1/\ -262145,
( C1==0 ->
del_attr(E1,guard_entailment)
;
put_attr(E1,guard_entailment,v(C1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,[],U,V,W,X,Y,Z,A1))
)
;
put_attr(E1,guard_entailment,v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,D1,U,V,W,X,Y,Z,A1))
)
;
true
)
;
true
).
'$insert_in_store_known/1_1_$special_==/2/2'(A) :-
'chr default_store'(D1),
( get_attr(D1,guard_entailment,E1) ->
E1=v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1),
( B1/\524288=:=524288 ->
put_attr(D1,guard_entailment,v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,[A|U],V,W,X,Y,Z,A1))
;
C1 is B1\/524288,
put_attr(D1,guard_entailment,v(C1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,[A],V,W,X,Y,Z,A1))
)
;
put_attr(D1,guard_entailment,v(524288,[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[A],[],[],[],[],[],[]))
).
'$delete_from_store_known/1_1_$special_==/2/2'(A) :-
'chr default_store'(E1),
( get_attr(E1,guard_entailment,F1) ->
F1=v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1),
( B1/\524288=:=524288 ->
'chr sbag_del_element'(U,A,D1),
( D1==[] ->
C1 is B1/\ -524289,
( C1==0 ->
del_attr(E1,guard_entailment)
;
put_attr(E1,guard_entailment,v(C1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,[],V,W,X,Y,Z,A1))
)
;
put_attr(E1,guard_entailment,v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,D1,V,W,X,Y,Z,A1))
)
;
true
)
;
true
).
'$insert_in_store_known/1_1_$special_is/2/2'(A) :-
'chr default_store'(D1),
( get_attr(D1,guard_entailment,E1) ->
E1=v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1),
( B1/\1048576=:=1048576 ->
put_attr(D1,guard_entailment,v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,[A|V],W,X,Y,Z,A1))
;
C1 is B1\/1048576,
put_attr(D1,guard_entailment,v(C1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,[A],W,X,Y,Z,A1))
)
;
put_attr(D1,guard_entailment,v(1048576,[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[A],[],[],[],[],[]))
).
'$delete_from_store_known/1_1_$special_is/2/2'(A) :-
'chr default_store'(E1),
( get_attr(E1,guard_entailment,F1) ->
F1=v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1),
( B1/\1048576=:=1048576 ->
'chr sbag_del_element'(V,A,D1),
( D1==[] ->
C1 is B1/\ -1048577,
( C1==0 ->
del_attr(E1,guard_entailment)
;
put_attr(E1,guard_entailment,v(C1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,[],W,X,Y,Z,A1))
)
;
put_attr(E1,guard_entailment,v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,D1,W,X,Y,Z,A1))
)
;
true
)
;
true
).
'$insert_in_store_known/1_1_$special_</2/2'(A) :-
'chr default_store'(D1),
( get_attr(D1,guard_entailment,E1) ->
E1=v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1),
( B1/\2097152=:=2097152 ->
put_attr(D1,guard_entailment,v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,[A|W],X,Y,Z,A1))
;
C1 is B1\/2097152,
put_attr(D1,guard_entailment,v(C1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,[A],X,Y,Z,A1))
)
;
put_attr(D1,guard_entailment,v(2097152,[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[A],[],[],[],[]))
).
'$delete_from_store_known/1_1_$special_</2/2'(A) :-
'chr default_store'(E1),
( get_attr(E1,guard_entailment,F1) ->
F1=v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1),
( B1/\2097152=:=2097152 ->
'chr sbag_del_element'(W,A,D1),
( D1==[] ->
C1 is B1/\ -2097153,
( C1==0 ->
del_attr(E1,guard_entailment)
;
put_attr(E1,guard_entailment,v(C1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,[],X,Y,Z,A1))
)
;
put_attr(E1,guard_entailment,v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,D1,X,Y,Z,A1))
)
;
true
)
;
true
).
'$insert_in_store_known/1_1_$special_>=/2/2'(A) :-
'chr default_store'(D1),
( get_attr(D1,guard_entailment,E1) ->
E1=v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1),
( B1/\4194304=:=4194304 ->
put_attr(D1,guard_entailment,v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,[A|X],Y,Z,A1))
;
C1 is B1\/4194304,
put_attr(D1,guard_entailment,v(C1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,[A],Y,Z,A1))
)
;
put_attr(D1,guard_entailment,v(4194304,[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[A],[],[],[]))
).
'$delete_from_store_known/1_1_$special_>=/2/2'(A) :-
'chr default_store'(E1),
( get_attr(E1,guard_entailment,F1) ->
F1=v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1),
( B1/\4194304=:=4194304 ->
'chr sbag_del_element'(X,A,D1),
( D1==[] ->
C1 is B1/\ -4194305,
( C1==0 ->
del_attr(E1,guard_entailment)
;
put_attr(E1,guard_entailment,v(C1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,[],Y,Z,A1))
)
;
put_attr(E1,guard_entailment,v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,D1,Y,Z,A1))
)
;
true
)
;
true
).
'$insert_in_store_known/1_1_$special_>/2/2'(A) :-
'chr default_store'(D1),
( get_attr(D1,guard_entailment,E1) ->
E1=v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1),
( B1/\8388608=:=8388608 ->
put_attr(D1,guard_entailment,v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,[A|Y],Z,A1))
;
C1 is B1\/8388608,
put_attr(D1,guard_entailment,v(C1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,[A],Z,A1))
)
;
put_attr(D1,guard_entailment,v(8388608,[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[A],[],[]))
).
'$delete_from_store_known/1_1_$special_>/2/2'(A) :-
'chr default_store'(E1),
( get_attr(E1,guard_entailment,F1) ->
F1=v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1),
( B1/\8388608=:=8388608 ->
'chr sbag_del_element'(Y,A,D1),
( D1==[] ->
C1 is B1/\ -8388609,
( C1==0 ->
del_attr(E1,guard_entailment)
;
put_attr(E1,guard_entailment,v(C1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,[],Z,A1))
)
;
put_attr(E1,guard_entailment,v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,D1,Z,A1))
)
;
true
)
;
true
).
'$insert_in_store_known/1_1_$special_=</2/2'(A) :-
'chr default_store'(D1),
( get_attr(D1,guard_entailment,E1) ->
E1=v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1),
( B1/\16777216=:=16777216 ->
put_attr(D1,guard_entailment,v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,[A|Z],A1))
;
C1 is B1\/16777216,
put_attr(D1,guard_entailment,v(C1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,[A],A1))
)
;
put_attr(D1,guard_entailment,v(16777216,[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[A],[]))
).
'$delete_from_store_known/1_1_$special_=</2/2'(A) :-
'chr default_store'(E1),
( get_attr(E1,guard_entailment,F1) ->
F1=v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1),
( B1/\16777216=:=16777216 ->
'chr sbag_del_element'(Z,A,D1),
( D1==[] ->
C1 is B1/\ -16777217,
( C1==0 ->
del_attr(E1,guard_entailment)
;
put_attr(E1,guard_entailment,v(C1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,[],A1))
)
;
put_attr(E1,guard_entailment,v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,D1,A1))
)
;
true
)
;
true
).
'$insert_in_store_known/1_1_$special_=:=/2/2'(A) :-
'chr default_store'(D1),
( get_attr(D1,guard_entailment,E1) ->
E1=v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1),
( B1/\33554432=:=33554432 ->
put_attr(D1,guard_entailment,v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,[A|A1]))
;
C1 is B1\/33554432,
put_attr(D1,guard_entailment,v(C1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,[A]))
)
;
put_attr(D1,guard_entailment,v(33554432,[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[A]))
).
'$delete_from_store_known/1_1_$special_=:=/2/2'(A) :-
'chr default_store'(E1),
( get_attr(E1,guard_entailment,F1) ->
F1=v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,A1),
( B1/\33554432=:=33554432 ->
'chr sbag_del_element'(A1,A,D1),
( D1==[] ->
C1 is B1/\ -33554433,
( C1==0 ->
del_attr(E1,guard_entailment)
;
put_attr(E1,guard_entailment,v(C1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,[]))
)
;
put_attr(E1,guard_entailment,v(B1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,D1))
)
;
true
)
;
true
).
'$insert_in_store_known/1_1_$special_fail/0/0'(A) :-
nb_getval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',B),
b_setval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',[A|B]).
'$delete_from_store_known/1_1_$special_fail/0/0'(A) :-
nb_getval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',B),
'chr sbag_del_element'(B,A,C),
b_setval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',C).
'$enumerate_suspensions'(A) :-
(
'chr default_store'(B),
get_attr(B,guard_entailment,C),
arg(2,C,D),
'chr sbag_member'(A,D)
;
'chr default_store'(E),
get_attr(E,guard_entailment,F),
arg(3,F,G),
'chr sbag_member'(A,G)
;
'chr default_store'(H),
get_attr(H,guard_entailment,I),
arg(4,I,J),
'chr sbag_member'(A,J)
;
'chr default_store'(K),
get_attr(K,guard_entailment,L),
arg(5,L,M),
'chr sbag_member'(A,M)
;
'chr default_store'(N),
get_attr(N,guard_entailment,O),
arg(6,O,P),
'chr sbag_member'(A,P)
;
'chr default_store'(Q),
get_attr(Q,guard_entailment,R),
arg(7,R,S),
'chr sbag_member'(A,S)
;
'chr default_store'(T),
get_attr(T,guard_entailment,U),
arg(8,U,V),
'chr sbag_member'(A,V)
;
'chr default_store'(W),
get_attr(W,guard_entailment,X),
arg(9,X,Y),
'chr sbag_member'(A,Y)
;
'chr default_store'(Z),
get_attr(Z,guard_entailment,A1),
arg(10,A1,B1),
'chr sbag_member'(A,B1)
;
'chr default_store'(C1),
get_attr(C1,guard_entailment,D1),
arg(11,D1,E1),
'chr sbag_member'(A,E1)
;
'chr default_store'(F1),
get_attr(F1,guard_entailment,G1),
arg(12,G1,H1),
'chr sbag_member'(A,H1)
;
'chr default_store'(I1),
get_attr(I1,guard_entailment,J1),
arg(13,J1,K1),
'chr sbag_member'(A,K1)
;
'chr default_store'(L1),
get_attr(L1,guard_entailment,M1),
arg(14,M1,N1),
'chr sbag_member'(A,N1)
;
'chr default_store'(O1),
get_attr(O1,guard_entailment,P1),
arg(15,P1,Q1),
'chr sbag_member'(A,Q1)
;
'chr default_store'(R1),
get_attr(R1,guard_entailment,S1),
arg(16,S1,T1),
'chr sbag_member'(A,T1)
;
'chr default_store'(U1),
get_attr(U1,guard_entailment,V1),
arg(17,V1,W1),
'chr sbag_member'(A,W1)
;
'chr default_store'(X1),
get_attr(X1,guard_entailment,Y1),
arg(18,Y1,Z1),
'chr sbag_member'(A,Z1)
;
'chr default_store'(A2),
get_attr(A2,guard_entailment,B2),
arg(19,B2,C2),
'chr sbag_member'(A,C2)
;
'chr default_store'(D2),
get_attr(D2,guard_entailment,E2),
arg(20,E2,F2),
'chr sbag_member'(A,F2)
;
'chr default_store'(G2),
get_attr(G2,guard_entailment,H2),
arg(21,H2,I2),
'chr sbag_member'(A,I2)
;
'chr default_store'(J2),
get_attr(J2,guard_entailment,K2),
arg(22,K2,L2),
'chr sbag_member'(A,L2)
;
'chr default_store'(M2),
get_attr(M2,guard_entailment,N2),
arg(23,N2,O2),
'chr sbag_member'(A,O2)
;
'chr default_store'(P2),
get_attr(P2,guard_entailment,Q2),
arg(24,Q2,R2),
'chr sbag_member'(A,R2)
;
'chr default_store'(S2),
get_attr(S2,guard_entailment,T2),
arg(25,T2,U2),
'chr sbag_member'(A,U2)
;
'chr default_store'(V2),
get_attr(V2,guard_entailment,W2),
arg(26,W2,X2),
'chr sbag_member'(A,X2)
;
'chr default_store'(Y2),
get_attr(Y2,guard_entailment,Z2),
arg(27,Z2,A3),
'chr sbag_member'(A,A3)
;
nb_getval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',B3),
'chr sbag_member'(A,B3)
).
:-nb_setval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',[]).
known(A) :-
'known/1__0'(A,_).
'known/1__0'(A,_) :-
nonvar(A),
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
A=(B;C),
!,
'known/1_1_$special_;/2'(B,C)
;
A=nonvar(D),
!,
'known/1_1_$special_nonvar/1'(D)
)
;
A=var(E),
!,
'known/1_1_$special_var/1'(E)
)
;
A=atom(F),
!,
'known/1_1_$special_atom/1'(F)
)
;
A=atomic(G),
!,
'known/1_1_$special_atomic/1'(G)
)
;
A=compound(H),
!,
'known/1_1_$special_compound/1'(H)
)
;
A=ground(I),
!,
'known/1_1_$special_ground/1'(I)
)
;
A=integer(J),
!,
'known/1_1_$special_integer/1'(J)
)
;
A=float(K),
!,
'known/1_1_$special_float/1'(K)
)
;
A=number(L),
!,
'known/1_1_$special_number/1'(L)
)
;
A=(M=\=N),
!,
'known/1_1_$special_=\\=/2'(M,N)
)
;
A=(\+O),
!,
'known/1_1_$special_\\+/1'(O)
)
;
A=functor(P,Q,R),
!,
'known/1_1_$special_functor/3'(P,Q,R)
)
;
A=(S\=T),
!,
'known/1_1_$special_\\=/2'(S,T)
)
;
A=(U=V),
!,
'known/1_1_$special_=/2'(U,V)
)
;
A=(W,X),
!,
'known/1_1_$special_,/2'(W,X)
)
;
A=(Y\==Z),
!,
'known/1_1_$special_\\==/2'(Y,Z)
)
;
A=(A1==B1),
!,
'known/1_1_$special_==/2'(A1,B1)
)
;
A=(C1 is D1),
!,
'known/1_1_$special_is/2'(C1,D1)
)
;
A=(E1<F1),
!,
'known/1_1_$special_</2'(E1,F1)
)
;
A=(G1>=H1),
!,
'known/1_1_$special_>=/2'(G1,H1)
)
;
A=(I1>J1),
!,
'known/1_1_$special_>/2'(I1,J1)
)
;
A=(K1=<L1),
!,
'known/1_1_$special_=</2'(K1,L1)
)
;
A=(M1=:=N1),
!,
'known/1_1_$special_=:=/2'(M1,N1)
).
'known/1__0'(A,_) :-
A==fail,
!,
'known/1_1_$special_fail/0'.
'known/1__0'(A,_) :-
!,
'known/1_1_$default'(A).
test(A) :-
'test/1__0'(A,_).
'test/1__0'(A,_) :-
nonvar(A),
(
(
(
(
(
(
(
A=(B,C),
!,
'test/1_1_$special_,/2'(B,C)
;
A=(\+D),
!,
'test/1_1_$special_\\+/1'(D)
)
;
A=integer(E),
!,
'test/1_1_$special_integer/1'(E)
)
;
A=float(F),
!,
'test/1_1_$special_float/1'(F)
)
;
A=number(G),
!,
'test/1_1_$special_number/1'(G)
)
;
A=ground(H),
!,
'test/1_1_$special_ground/1'(H)
)
;
A=(I=:=J),
!,
'test/1_1_$special_=:=/2'(I,J)
)
;
A=(K==L),
!,
'test/1_1_$special_==/2'(K,L)
).
'test/1__0'(A,_) :-
A==true,
!,
'test/1_1_$special_true/0'.
'test/1__0'(A,_) :-
nonvar(A),
(
(
(
(
(
(
(
(
(
A=functor(B,C,D),
!,
'test/1_1_$special_functor/3'(B,C,D)
;
A=(E=F),
!,
'test/1_1_$special_=/2'(E,F)
)
;
A=(G;H),
!,
'test/1_1_$special_;/2'(G,H)
)
;
A=(I is J),
!,
'test/1_1_$special_is/2'(I,J)
)
;
A=(K<L),
!,
'test/1_1_$special_</2'(K,L)
)
;
A=(M>=N),
!,
'test/1_1_$special_>=/2'(M,N)
)
;
A=(O>P),
!,
'test/1_1_$special_>/2'(O,P)
)
;
A=(Q=\=R),
!,
'test/1_1_$special_=\\=/2'(Q,R)
)
;
A=(S=<T),
!,
'test/1_1_$special_=</2'(S,T)
)
;
A=(U\==V),
!,
'test/1_1_$special_\\==/2'(U,V)
).
'test/1__0'(A,_) :-
!,
'test/1_1_$default'(A).
cleanup :-
'cleanup/0__0'(_).
'cleanup/0__0'(A) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(D,_,_,E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
D/\4=:=4,
!,
'cleanup/0__0__0'(E,A).
'cleanup/0__0__0'([],A) :-
'cleanup/0__1'(A).
'cleanup/0__0__0'([A|B],C) :-
( A=suspension(_,D,_,_,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(A,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(A),
'detach_known/1_1_$special_;/2/2'(E,A)
;
true
),
'cleanup/0__0__0'(B,C)
;
'cleanup/0__0__0'(B,C)
).
'cleanup/0__0'(A) :-
'cleanup/0__1'(A).
'cleanup/0__1'(A) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(D,_,_,_,E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
D/\8=:=8,
!,
'cleanup/0__1__0'(E,A).
'cleanup/0__1__0'([],A) :-
'cleanup/0__2'(A).
'cleanup/0__1__0'([A|B],C) :-
( A=suspension(_,D,_,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(A,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_nonvar/1/1'(A),
'detach_known/1_1_$special_nonvar/1/1'(E,A)
;
true
),
'cleanup/0__1__0'(B,C)
;
'cleanup/0__1__0'(B,C)
).
'cleanup/0__1'(A) :-
'cleanup/0__2'(A).
'cleanup/0__2'(A) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(D,_,_,_,_,E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
D/\16=:=16,
!,
'cleanup/0__2__0'(E,A).
'cleanup/0__2__0'([],A) :-
'cleanup/0__3'(A).
'cleanup/0__2__0'([A|B],C) :-
( A=suspension(_,D,_,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(A,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_var/1/1'(A),
'detach_known/1_1_$special_var/1/1'(E,A)
;
true
),
'cleanup/0__2__0'(B,C)
;
'cleanup/0__2__0'(B,C)
).
'cleanup/0__2'(A) :-
'cleanup/0__3'(A).
'cleanup/0__3'(A) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(D,_,_,_,_,_,E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
D/\32=:=32,
!,
'cleanup/0__3__0'(E,A).
'cleanup/0__3__0'([],A) :-
'cleanup/0__4'(A).
'cleanup/0__3__0'([A|B],C) :-
( A=suspension(_,D,_,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(A,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_atom/1/1'(A),
'detach_known/1_1_$special_atom/1/1'(E,A)
;
true
),
'cleanup/0__3__0'(B,C)
;
'cleanup/0__3__0'(B,C)
).
'cleanup/0__3'(A) :-
'cleanup/0__4'(A).
'cleanup/0__4'(A) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(D,_,_,_,_,_,_,E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
D/\64=:=64,
!,
'cleanup/0__4__0'(E,A).
'cleanup/0__4__0'([],A) :-
'cleanup/0__5'(A).
'cleanup/0__4__0'([A|B],C) :-
( A=suspension(_,D,_,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(A,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_atomic/1/1'(A),
'detach_known/1_1_$special_atomic/1/1'(E,A)
;
true
),
'cleanup/0__4__0'(B,C)
;
'cleanup/0__4__0'(B,C)
).
'cleanup/0__4'(A) :-
'cleanup/0__5'(A).
'cleanup/0__5'(A) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(D,_,_,_,_,_,_,_,E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
D/\128=:=128,
!,
'cleanup/0__5__0'(E,A).
'cleanup/0__5__0'([],A) :-
'cleanup/0__6'(A).
'cleanup/0__5__0'([A|B],C) :-
( A=suspension(_,D,_,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(A,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_compound/1/1'(A),
'detach_known/1_1_$special_compound/1/1'(E,A)
;
true
),
'cleanup/0__5__0'(B,C)
;
'cleanup/0__5__0'(B,C)
).
'cleanup/0__5'(A) :-
'cleanup/0__6'(A).
'cleanup/0__6'(A) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(D,_,_,_,_,_,_,_,_,E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
D/\256=:=256,
!,
'cleanup/0__6__0'(E,A).
'cleanup/0__6__0'([],A) :-
'cleanup/0__7'(A).
'cleanup/0__6__0'([A|B],C) :-
( A=suspension(_,D,_,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(A,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_ground/1/1'(A),
'detach_known/1_1_$special_ground/1/1'(E,A)
;
true
),
'cleanup/0__6__0'(B,C)
;
'cleanup/0__6__0'(B,C)
).
'cleanup/0__6'(A) :-
'cleanup/0__7'(A).
'cleanup/0__7'(A) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(D,_,_,_,_,_,_,_,_,_,E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
D/\512=:=512,
!,
'cleanup/0__7__0'(E,A).
'cleanup/0__7__0'([],A) :-
'cleanup/0__8'(A).
'cleanup/0__7__0'([A|B],C) :-
( A=suspension(_,D,_,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(A,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_integer/1/1'(A),
'detach_known/1_1_$special_integer/1/1'(E,A)
;
true
),
'cleanup/0__7__0'(B,C)
;
'cleanup/0__7__0'(B,C)
).
'cleanup/0__7'(A) :-
'cleanup/0__8'(A).
'cleanup/0__8'(A) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(D,_,_,_,_,_,_,_,_,_,_,E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
D/\1024=:=1024,
!,
'cleanup/0__8__0'(E,A).
'cleanup/0__8__0'([],A) :-
'cleanup/0__9'(A).
'cleanup/0__8__0'([A|B],C) :-
( A=suspension(_,D,_,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(A,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_float/1/1'(A),
'detach_known/1_1_$special_float/1/1'(E,A)
;
true
),
'cleanup/0__8__0'(B,C)
;
'cleanup/0__8__0'(B,C)
).
'cleanup/0__8'(A) :-
'cleanup/0__9'(A).
'cleanup/0__9'(A) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(D,_,_,_,_,_,_,_,_,_,_,_,E,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
D/\2048=:=2048,
!,
'cleanup/0__9__0'(E,A).
'cleanup/0__9__0'([],A) :-
'cleanup/0__10'(A).
'cleanup/0__9__0'([A|B],C) :-
( A=suspension(_,D,_,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(A,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_number/1/1'(A),
'detach_known/1_1_$special_number/1/1'(E,A)
;
true
),
'cleanup/0__9__0'(B,C)
;
'cleanup/0__9__0'(B,C)
).
'cleanup/0__9'(A) :-
'cleanup/0__10'(A).
'cleanup/0__10'(A) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(D,_,_,_,_,_,_,_,_,_,_,_,_,E,_,_,_,_,_,_,_,_,_,_,_,_,_),
D/\4096=:=4096,
!,
'cleanup/0__10__0'(E,A).
'cleanup/0__10__0'([],A) :-
'cleanup/0__11'(A).
'cleanup/0__10__0'([A|B],C) :-
( A=suspension(_,D,_,_,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(A,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_=\\=/2/2'(A),
'detach_known/1_1_$special_=\\=/2/2'(E,A)
;
true
),
'cleanup/0__10__0'(B,C)
;
'cleanup/0__10__0'(B,C)
).
'cleanup/0__10'(A) :-
'cleanup/0__11'(A).
'cleanup/0__11'(A) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(D,_,_,_,_,_,_,_,_,_,_,_,_,_,E,_,_,_,_,_,_,_,_,_,_,_,_),
D/\8192=:=8192,
!,
'cleanup/0__11__0'(E,A).
'cleanup/0__11__0'([],A) :-
'cleanup/0__12'(A).
'cleanup/0__11__0'([A|B],C) :-
( A=suspension(_,D,_,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(A,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(A),
'detach_known/1_1_$special_\\+/1/1'(E,A)
;
true
),
'cleanup/0__11__0'(B,C)
;
'cleanup/0__11__0'(B,C)
).
'cleanup/0__11'(A) :-
'cleanup/0__12'(A).
'cleanup/0__12'(A) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(D,_,_,_,_,_,_,_,_,_,_,_,_,_,_,E,_,_,_,_,_,_,_,_,_,_,_),
D/\16384=:=16384,
!,
'cleanup/0__12__0'(E,A).
'cleanup/0__12__0'([],A) :-
'cleanup/0__13'(A).
'cleanup/0__12__0'([A|B],C) :-
( A=suspension(_,D,_,_,_,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(A,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_functor/3/3'(A),
'detach_known/1_1_$special_functor/3/3'(E,A)
;
true
),
'cleanup/0__12__0'(B,C)
;
'cleanup/0__12__0'(B,C)
).
'cleanup/0__12'(A) :-
'cleanup/0__13'(A).
'cleanup/0__13'(A) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(D,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,E,_,_,_,_,_,_,_,_,_,_),
D/\32768=:=32768,
!,
'cleanup/0__13__0'(E,A).
'cleanup/0__13__0'([],A) :-
'cleanup/0__14'(A).
'cleanup/0__13__0'([A|B],C) :-
( A=suspension(_,D,_,_,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(A,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_\\=/2/2'(A),
'detach_known/1_1_$special_\\=/2/2'(E,A)
;
true
),
'cleanup/0__13__0'(B,C)
;
'cleanup/0__13__0'(B,C)
).
'cleanup/0__13'(A) :-
'cleanup/0__14'(A).
'cleanup/0__14'(A) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(D,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,E,_,_,_,_,_,_,_,_,_),
D/\65536=:=65536,
!,
'cleanup/0__14__0'(E,A).
'cleanup/0__14__0'([],A) :-
'cleanup/0__15'(A).
'cleanup/0__14__0'([A|B],C) :-
( A=suspension(_,D,_,_,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(A,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_=/2/2'(A),
'detach_known/1_1_$special_=/2/2'(E,A)
;
true
),
'cleanup/0__14__0'(B,C)
;
'cleanup/0__14__0'(B,C)
).
'cleanup/0__14'(A) :-
'cleanup/0__15'(A).
'cleanup/0__15'(A) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(D,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,E,_,_,_,_,_,_,_,_),
D/\131072=:=131072,
!,
'cleanup/0__15__0'(E,A).
'cleanup/0__15__0'([],A) :-
'cleanup/0__16'(A).
'cleanup/0__15__0'([A|B],C) :-
( A=suspension(_,D,_,_,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(A,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_,/2/2'(A),
'detach_known/1_1_$special_,/2/2'(E,A)
;
true
),
'cleanup/0__15__0'(B,C)
;
'cleanup/0__15__0'(B,C)
).
'cleanup/0__15'(A) :-
'cleanup/0__16'(A).
'cleanup/0__16'(A) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(D,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,E,_,_,_,_,_,_,_),
D/\262144=:=262144,
!,
'cleanup/0__16__0'(E,A).
'cleanup/0__16__0'([],A) :-
'cleanup/0__17'(A).
'cleanup/0__16__0'([A|B],C) :-
( A=suspension(_,D,_,_,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(A,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_\\==/2/2'(A),
'detach_known/1_1_$special_\\==/2/2'(E,A)
;
true
),
'cleanup/0__16__0'(B,C)
;
'cleanup/0__16__0'(B,C)
).
'cleanup/0__16'(A) :-
'cleanup/0__17'(A).
'cleanup/0__17'(A) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(D,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,E,_,_,_,_,_,_),
D/\524288=:=524288,
!,
'cleanup/0__17__0'(E,A).
'cleanup/0__17__0'([],A) :-
'cleanup/0__18'(A).
'cleanup/0__17__0'([A|B],C) :-
( A=suspension(_,D,_,_,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(A,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_==/2/2'(A),
'detach_known/1_1_$special_==/2/2'(E,A)
;
true
),
'cleanup/0__17__0'(B,C)
;
'cleanup/0__17__0'(B,C)
).
'cleanup/0__17'(A) :-
'cleanup/0__18'(A).
'cleanup/0__18'(A) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(D,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,E,_,_,_,_,_),
D/\1048576=:=1048576,
!,
'cleanup/0__18__0'(E,A).
'cleanup/0__18__0'([],A) :-
'cleanup/0__19'(A).
'cleanup/0__18__0'([A|B],C) :-
( A=suspension(_,D,_,_,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(A,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_is/2/2'(A),
'detach_known/1_1_$special_is/2/2'(E,A)
;
true
),
'cleanup/0__18__0'(B,C)
;
'cleanup/0__18__0'(B,C)
).
'cleanup/0__18'(A) :-
'cleanup/0__19'(A).
'cleanup/0__19'(A) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(D,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,E,_,_,_,_),
D/\2097152=:=2097152,
!,
'cleanup/0__19__0'(E,A).
'cleanup/0__19__0'([],A) :-
'cleanup/0__20'(A).
'cleanup/0__19__0'([A|B],C) :-
( A=suspension(_,D,_,_,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(A,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_</2/2'(A),
'detach_known/1_1_$special_</2/2'(E,A)
;
true
),
'cleanup/0__19__0'(B,C)
;
'cleanup/0__19__0'(B,C)
).
'cleanup/0__19'(A) :-
'cleanup/0__20'(A).
'cleanup/0__20'(A) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(D,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,E,_,_,_),
D/\4194304=:=4194304,
!,
'cleanup/0__20__0'(E,A).
'cleanup/0__20__0'([],A) :-
'cleanup/0__21'(A).
'cleanup/0__20__0'([A|B],C) :-
( A=suspension(_,D,_,_,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(A,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_>=/2/2'(A),
'detach_known/1_1_$special_>=/2/2'(E,A)
;
true
),
'cleanup/0__20__0'(B,C)
;
'cleanup/0__20__0'(B,C)
).
'cleanup/0__20'(A) :-
'cleanup/0__21'(A).
'cleanup/0__21'(A) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(D,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,E,_,_),
D/\8388608=:=8388608,
!,
'cleanup/0__21__0'(E,A).
'cleanup/0__21__0'([],A) :-
'cleanup/0__22'(A).
'cleanup/0__21__0'([A|B],C) :-
( A=suspension(_,D,_,_,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(A,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_>/2/2'(A),
'detach_known/1_1_$special_>/2/2'(E,A)
;
true
),
'cleanup/0__21__0'(B,C)
;
'cleanup/0__21__0'(B,C)
).
'cleanup/0__21'(A) :-
'cleanup/0__22'(A).
'cleanup/0__22'(A) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(D,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,E,_),
D/\16777216=:=16777216,
!,
'cleanup/0__22__0'(E,A).
'cleanup/0__22__0'([],A) :-
'cleanup/0__23'(A).
'cleanup/0__22__0'([A|B],C) :-
( A=suspension(_,D,_,_,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(A,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_=</2/2'(A),
'detach_known/1_1_$special_=</2/2'(E,A)
;
true
),
'cleanup/0__22__0'(B,C)
;
'cleanup/0__22__0'(B,C)
).
'cleanup/0__22'(A) :-
'cleanup/0__23'(A).
'cleanup/0__23'(A) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(D,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,E),
D/\33554432=:=33554432,
!,
'cleanup/0__23__0'(E,A).
'cleanup/0__23__0'([],A) :-
'cleanup/0__24'(A).
'cleanup/0__23__0'([A|B],C) :-
( A=suspension(_,D,_,_,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(A,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_=:=/2/2'(A),
'detach_known/1_1_$special_=:=/2/2'(E,A)
;
true
),
'cleanup/0__23__0'(B,C)
;
'cleanup/0__23__0'(B,C)
).
'cleanup/0__23'(A) :-
'cleanup/0__24'(A).
'cleanup/0__24'(A) :-
nb_getval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',B),
!,
'cleanup/0__24__0'(B,A).
'cleanup/0__24__0'([],A) :-
'cleanup/0__25'(A).
'cleanup/0__24__0'([A|B],C) :-
( A=suspension(_,D,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(A,_,E),
( E==yes ->
'$delete_from_store_known/1_1_$special_fail/0/0'(A)
;
true
),
'cleanup/0__24__0'(B,C)
;
'cleanup/0__24__0'(B,C)
).
'cleanup/0__24'(A) :-
'cleanup/0__25'(A).
'cleanup/0__25'(A) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(D,_,E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
D/\2=:=2,
!,
'cleanup/0__25__0'(E,A).
'cleanup/0__25__0'([],A) :-
'cleanup/0__26'(A).
'cleanup/0__25__0'([A|B],C) :-
( A=suspension(_,D,_,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(A,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$default/1'(A),
'detach_known/1_1_$default/1'(E,A)
;
true
),
'cleanup/0__25__0'(B,C)
;
'cleanup/0__25__0'(B,C)
).
'cleanup/0__25'(A) :-
'cleanup/0__26'(A).
'cleanup/0__26'(A) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(D,E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
D/\1=:=1,
!,
'cleanup/0__26__0'(E,A).
'cleanup/0__26__0'([],A) :-
'cleanup/0__27'(A).
'cleanup/0__26__0'([A|B],C) :-
( A=suspension(_,D,_,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(A,E,F),
( F==yes ->
'$delete_from_store_variables/1'(A),
'detach_variables/1'(E,A)
;
true
),
'cleanup/0__26__0'(B,C)
;
'cleanup/0__26__0'(B,C)
).
'cleanup/0__26'(A) :-
'cleanup/0__27'(A).
'cleanup/0__27'(_) :-
!.
variables(A) :-
'variables/1__0'(A,_).
'variables/1__0'(A,B) :-
'chr default_store'(C),
get_attr(C,guard_entailment,D),
D=v(E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,F,_,_,_,_,_,_,_,_,_,_,_),
E/\16384=:=16384,
'chr sbag_member'(K,F),
K=suspension(_,G,_,_,_,_,H,I,J),
G=mutable(active),
ground(J),
ground(I),
var(H),
!,
remove_constraint_internal(K,N,O),
( O==yes ->
'$delete_from_store_known/1_1_$special_functor/3/3'(K),
'detach_known/1_1_$special_functor/3/3'(N,K)
;
true
),
( var(B) ->
true
;
remove_constraint_internal(B,P,Q),
( Q==yes ->
'$delete_from_store_variables/1'(B),
'detach_variables/1'(P,B)
;
true
)
),
functor(H,I,J),
H=..[_|L],
append(L,A,M),
variables(M).
'variables/1__0'(C,D) :-
( var(D) ->
insert_constraint_internal(A,B,D,guard_entailment:'variables/1__0'(C,D),variables(C),[C])
;
activate_constraint(A,B,D,_)
),
( A==yes ->
'$insert_in_store_variables/1'(D),
'attach_variables/1'(B,D)
;
true
).
'test/1_1_$default'(A) :-
'test/1_1_$default/1__0'(A,_).
'test/1_1_$default/1__0'(_,_) :-
nb_getval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',A),
'chr sbag_member'(C,A),
C=suspension(_,B,_,_,_,_),
B=mutable(active),
!.
'test/1_1_$default/1__0'(B,_) :-
nonvar(B),
(
(
(
(
(
B=nonvar(A),
'chr via_1'(A,C),
get_attr(C,guard_entailment,D),
D=v(E,_,_,_,F,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
E/\8=:=8,
'chr sbag_member'(I,F),
I=suspension(_,G,_,_,_,_,H),
G=mutable(active),
H==A,
!
;
B=var(J),
'chr via_1'(J,K),
get_attr(K,guard_entailment,L),
L=v(M,_,_,_,_,N,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
M/\16=:=16,
'chr sbag_member'(Q,N),
Q=suspension(_,O,_,_,_,_,P),
O=mutable(active),
P==J,
!
)
;
B=atom(R),
'chr via_1'(R,S),
get_attr(S,guard_entailment,T),
T=v(U,_,_,_,_,_,V,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
U/\32=:=32,
'chr sbag_member'(Y,V),
Y=suspension(_,W,_,_,_,_,X),
W=mutable(active),
X==R,
!
)
;
B=atomic(Z),
'chr via_1'(Z,A1),
get_attr(A1,guard_entailment,B1),
B1=v(C1,_,_,_,_,_,_,D1,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
C1/\64=:=64,
'chr sbag_member'(G1,D1),
G1=suspension(_,E1,_,_,_,_,F1),
E1=mutable(active),
F1==Z,
!
)
;
B=compound(H1),
'chr via_1'(H1,I1),
get_attr(I1,guard_entailment,J1),
J1=v(K1,_,_,_,_,_,_,_,L1,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
K1/\128=:=128,
'chr sbag_member'(O1,L1),
O1=suspension(_,M1,_,_,_,_,N1),
M1=mutable(active),
N1==H1,
!
)
;
B=(P1\=Q1),
'chr via_2'(P1,Q1,R1),
get_attr(R1,guard_entailment,S1),
S1=v(T1,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,U1,_,_,_,_,_,_,_,_,_,_),
T1/\32768=:=32768,
'chr sbag_member'(Y1,U1),
Y1=suspension(_,V1,_,_,_,_,W1,X1),
V1=mutable(active),
W1==P1,
X1==Q1,
!
).
'test/1_1_$default/1__0'(A,_) :-
A==fail,
nb_getval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',B),
'chr sbag_member'(D,B),
D=suspension(_,C,_,_,_,_),
C=mutable(active),
!.
'test/1_1_$default/1__0'(A,_) :-
'chr via_1'(A,B),
get_attr(B,guard_entailment,C),
C=v(D,_,E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
D/\2=:=2,
'chr sbag_member'(H,E),
H=suspension(_,F,_,_,_,_,G),
F=mutable(active),
G==A,
!.
'test/1_1_$default/1__0'(A,_) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(D,_,_,E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
D/\4=:=4,
'chr sbag_member'(I,E),
I=suspension(_,F,_,_,_,_,G,H),
F=mutable(active),
!,
remove_constraint_internal(I,K,L),
( L==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(I),
'detach_known/1_1_$special_;/2/2'(K,I)
;
true
),
\+try(G,A),
!,
negate_b(G,J),
known(J),
\+try(H,A).
'test/1_1_$default/1__0'(_,_) :-
!,
fail.
'test/1_1_$special_,/2'(A,B) :-
'test/1_1_$special_,/2/2__0'(A,B,_).
'test/1_1_$special_,/2/2__0'(_,_,_) :-
nb_getval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',A),
'chr sbag_member'(C,A),
C=suspension(_,B,_,_,_,_),
B=mutable(active),
!.
'test/1_1_$special_,/2/2__0'(A,B,_) :-
'chr via_2'(A,B,C),
get_attr(C,guard_entailment,D),
D=v(E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,F,_,_,_,_,_,_,_,_),
E/\131072=:=131072,
'chr sbag_member'(J,F),
J=suspension(_,G,_,_,_,_,H,I),
G=mutable(active),
H==A,
I==B,
!.
'test/1_1_$special_,/2/2__0'(A,B,_) :-
!,
test(A),
known(A),
test(B).
'test/1_1_$special_\\+/1'(A) :-
'test/1_1_$special_\\+/1/1__0'(A,_).
'test/1_1_$special_\\+/1/1__0'(_,_) :-
nb_getval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',A),
'chr sbag_member'(C,A),
C=suspension(_,B,_,_,_,_),
B=mutable(active),
!.
'test/1_1_$special_\\+/1/1__0'(A,_) :-
'chr via_1'(A,B),
get_attr(B,guard_entailment,C),
C=v(D,_,_,_,_,_,_,_,_,_,_,_,_,_,E,_,_,_,_,_,_,_,_,_,_,_,_),
D/\8192=:=8192,
'chr sbag_member'(H,E),
H=suspension(_,F,_,_,_,_,G),
F=mutable(active),
G==A,
!.
'test/1_1_$special_\\+/1/1__0'(A,_) :-
nonvar(A),
(
(
(
(
(
(
(
A=functor(B,C,D),
nonvar(B),
(
'chr lock'(B),
'chr lock'(C),
'chr lock'(D),
functor(B,C,D),
'chr unlock'(B),
'chr unlock'(C),
'chr unlock'(D),
!,
fail
;
!
)
;
A=ground(E),
ground(E),
!,
fail
)
;
A=number(F),
number(F),
!,
fail
)
;
A=float(G),
float(G),
!,
fail
)
;
A=integer(H),
integer(H),
!,
fail
)
;
A=number(I),
nonvar(I),
!
)
;
A=float(J),
nonvar(J),
!
)
;
A=integer(K),
nonvar(K),
!
).
'test/1_1_$special_\\+/1/1__0'(A,_) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(D,_,_,E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
D/\4=:=4,
'chr sbag_member'(I,E),
I=suspension(_,F,_,_,_,_,G,H),
F=mutable(active),
!,
remove_constraint_internal(I,K,L),
( L==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(I),
'detach_known/1_1_$special_;/2/2'(K,I)
;
true
),
\+try(G,\+A),
!,
negate_b(G,J),
known(J),
\+try(H,\+A).
'test/1_1_$special_\\+/1/1__0'(_,_) :-
!,
fail.
'test/1_1_$special_integer/1'(A) :-
'test/1_1_$special_integer/1/1__0'(A,_).
'test/1_1_$special_integer/1/1__0'(_,_) :-
nb_getval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',A),
'chr sbag_member'(C,A),
C=suspension(_,B,_,_,_,_),
B=mutable(active),
!.
'test/1_1_$special_integer/1/1__0'(A,_) :-
'chr via_1'(A,B),
get_attr(B,guard_entailment,C),
C=v(D,_,_,_,_,_,_,_,_,_,E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
D/\512=:=512,
'chr sbag_member'(H,E),
H=suspension(_,F,_,_,_,_,G),
F=mutable(active),
G==A,
!.
'test/1_1_$special_integer/1/1__0'(A,_) :-
integer(A),
!.
'test/1_1_$special_integer/1/1__0'(A,_) :-
nonvar(A),
!,
fail.
'test/1_1_$special_integer/1/1__0'(A,_) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(D,_,_,E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
D/\4=:=4,
'chr sbag_member'(I,E),
I=suspension(_,F,_,_,_,_,G,H),
F=mutable(active),
!,
remove_constraint_internal(I,K,L),
( L==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(I),
'detach_known/1_1_$special_;/2/2'(K,I)
;
true
),
\+try(G,integer(A)),
!,
negate_b(G,J),
known(J),
\+try(H,integer(A)).
'test/1_1_$special_integer/1/1__0'(_,_) :-
!,
fail.
'test/1_1_$special_float/1'(A) :-
'test/1_1_$special_float/1/1__0'(A,_).
'test/1_1_$special_float/1/1__0'(_,_) :-
nb_getval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',A),
'chr sbag_member'(C,A),
C=suspension(_,B,_,_,_,_),
B=mutable(active),
!.
'test/1_1_$special_float/1/1__0'(A,_) :-
'chr via_1'(A,B),
get_attr(B,guard_entailment,C),
C=v(D,_,_,_,_,_,_,_,_,_,_,E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
D/\1024=:=1024,
'chr sbag_member'(H,E),
H=suspension(_,F,_,_,_,_,G),
F=mutable(active),
G==A,
!.
'test/1_1_$special_float/1/1__0'(A,_) :-
float(A),
!.
'test/1_1_$special_float/1/1__0'(A,_) :-
nonvar(A),
!,
fail.
'test/1_1_$special_float/1/1__0'(A,_) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(D,_,_,E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
D/\4=:=4,
'chr sbag_member'(I,E),
I=suspension(_,F,_,_,_,_,G,H),
F=mutable(active),
!,
remove_constraint_internal(I,K,L),
( L==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(I),
'detach_known/1_1_$special_;/2/2'(K,I)
;
true
),
\+try(G,float(A)),
!,
negate_b(G,J),
known(J),
\+try(H,float(A)).
'test/1_1_$special_float/1/1__0'(_,_) :-
!,
fail.
'test/1_1_$special_number/1'(A) :-
'test/1_1_$special_number/1/1__0'(A,_).
'test/1_1_$special_number/1/1__0'(_,_) :-
nb_getval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',A),
'chr sbag_member'(C,A),
C=suspension(_,B,_,_,_,_),
B=mutable(active),
!.
'test/1_1_$special_number/1/1__0'(A,_) :-
'chr via_1'(A,B),
get_attr(B,guard_entailment,C),
C=v(D,_,_,_,_,_,_,_,_,_,_,_,E,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
D/\2048=:=2048,
'chr sbag_member'(H,E),
H=suspension(_,F,_,_,_,_,G),
F=mutable(active),
G==A,
!.
'test/1_1_$special_number/1/1__0'(A,_) :-
number(A),
!.
'test/1_1_$special_number/1/1__0'(A,_) :-
nonvar(A),
!,
fail.
'test/1_1_$special_number/1/1__0'(A,_) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(D,_,_,E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
D/\4=:=4,
'chr sbag_member'(I,E),
I=suspension(_,F,_,_,_,_,G,H),
F=mutable(active),
!,
remove_constraint_internal(I,K,L),
( L==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(I),
'detach_known/1_1_$special_;/2/2'(K,I)
;
true
),
\+try(G,number(A)),
!,
negate_b(G,J),
known(J),
\+try(H,number(A)).
'test/1_1_$special_number/1/1__0'(_,_) :-
!,
fail.
'test/1_1_$special_ground/1'(A) :-
'test/1_1_$special_ground/1/1__0'(A,_).
'test/1_1_$special_ground/1/1__0'(_,_) :-
nb_getval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',A),
'chr sbag_member'(C,A),
C=suspension(_,B,_,_,_,_),
B=mutable(active),
!.
'test/1_1_$special_ground/1/1__0'(A,_) :-
'chr via_1'(A,B),
get_attr(B,guard_entailment,C),
C=v(D,_,_,_,_,_,_,_,_,E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
D/\256=:=256,
'chr sbag_member'(H,E),
H=suspension(_,F,_,_,_,_,G),
F=mutable(active),
G==A,
!.
'test/1_1_$special_ground/1/1__0'(A,_) :-
ground(A),
!.
'test/1_1_$special_ground/1/1__0'(A,_) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(D,_,_,E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
D/\4=:=4,
'chr sbag_member'(I,E),
I=suspension(_,F,_,_,_,_,G,H),
F=mutable(active),
!,
remove_constraint_internal(I,K,L),
( L==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(I),
'detach_known/1_1_$special_;/2/2'(K,I)
;
true
),
\+try(G,ground(A)),
!,
negate_b(G,J),
known(J),
\+try(H,ground(A)).
'test/1_1_$special_ground/1/1__0'(_,_) :-
!,
fail.
'test/1_1_$special_=:=/2'(A,B) :-
'test/1_1_$special_=:=/2/2__0'(A,B,_).
'test/1_1_$special_=:=/2/2__0'(_,_,_) :-
nb_getval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',A),
'chr sbag_member'(C,A),
C=suspension(_,B,_,_,_,_),
B=mutable(active),
!.
'test/1_1_$special_=:=/2/2__0'(A,B,_) :-
'chr via_2'(A,B,C),
get_attr(C,guard_entailment,D),
D=v(E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,F),
E/\33554432=:=33554432,
'chr sbag_member'(J,F),
J=suspension(_,G,_,_,_,_,H,I),
G=mutable(active),
H==A,
I==B,
!.
'test/1_1_$special_=:=/2/2__0'(A,B,_) :-
A==B,
!.
'test/1_1_$special_=:=/2/2__0'(A,B,_) :-
ground(B),
ground(A),
(
A=:=B,
!
;
A=\=B,
!,
fail
).
'test/1_1_$special_=:=/2/2__0'(A,B,_) :-
'chr default_store'(C),
get_attr(C,guard_entailment,D),
D=v(E,_,_,F,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
E/\4=:=4,
'chr sbag_member'(J,F),
J=suspension(_,G,_,_,_,_,H,I),
G=mutable(active),
!,
remove_constraint_internal(J,L,M),
( M==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(J),
'detach_known/1_1_$special_;/2/2'(L,J)
;
true
),
\+try(H,A=:=B),
!,
negate_b(H,K),
known(K),
\+try(I,A=:=B).
'test/1_1_$special_=:=/2/2__0'(_,_,_) :-
!,
fail.
'test/1_1_$special_==/2'(A,B) :-
'test/1_1_$special_==/2/2__0'(A,B,_).
'test/1_1_$special_==/2/2__0'(_,_,_) :-
nb_getval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',A),
'chr sbag_member'(C,A),
C=suspension(_,B,_,_,_,_),
B=mutable(active),
!.
'test/1_1_$special_==/2/2__0'(A,B,_) :-
'chr via_2'(A,B,C),
get_attr(C,guard_entailment,D),
D=v(E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,F,_,_,_,_,_,_),
E/\524288=:=524288,
'chr sbag_member'(J,F),
J=suspension(_,G,_,_,_,_,H,I),
G=mutable(active),
H==A,
I==B,
!.
'test/1_1_$special_==/2/2__0'(A,B,_) :-
A==B,
!.
'test/1_1_$special_==/2/2__0'(A,B,_) :-
'chr default_store'(C),
get_attr(C,guard_entailment,D),
D=v(E,_,_,F,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
E/\4=:=4,
'chr sbag_member'(J,F),
J=suspension(_,G,_,_,_,_,H,I),
G=mutable(active),
!,
remove_constraint_internal(J,L,M),
( M==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(J),
'detach_known/1_1_$special_;/2/2'(L,J)
;
true
),
\+try(H,A==B),
!,
negate_b(H,K),
known(K),
\+try(I,A==B).
'test/1_1_$special_==/2/2__0'(_,_,_) :-
!,
fail.
'test/1_1_$special_true/0' :-
'test/1_1_$special_true/0/0__0'(_).
'test/1_1_$special_true/0/0__0'(_) :-
nb_getval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',A),
'chr sbag_member'(C,A),
C=suspension(_,B,_,_,_,_),
B=mutable(active),
!.
'test/1_1_$special_true/0/0__0'(_) :-
!.
'test/1_1_$special_functor/3'(A,B,C) :-
'test/1_1_$special_functor/3/3__0'(A,B,C,_).
'test/1_1_$special_functor/3/3__0'(_,_,_,_) :-
nb_getval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',B),
'chr sbag_member'(A,B),
A=suspension(_,C,_,_,_,_),
C=mutable(active),
!.
'test/1_1_$special_functor/3/3__0'(A,B,C,_) :-
'chr via'([A,B,C],E),
get_attr(E,guard_entailment,F),
F=v(H,_,_,_,_,_,_,_,_,_,_,_,_,_,_,G,_,_,_,_,_,_,_,_,_,_,_),
H/\16384=:=16384,
'chr sbag_member'(D,G),
D=suspension(_,L,_,_,_,_,I,J,K),
L=mutable(active),
I==A,
J==B,
K==C,
!.
'test/1_1_$special_functor/3/3__0'(A,B,C,_) :-
ground(C),
ground(B),
var(A),
'chr default_store'(E),
get_attr(E,guard_entailment,F),
F=v(H,G,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
H/\1=:=1,
'chr sbag_member'(D,G),
D=suspension(_,J,_,_,_,_,I),
J=mutable(active),
'chr lock'(A),
'chr lock'(I),
\+memberchk_eq(A,I),
'chr unlock'(A),
'chr unlock'(I),
!,
functor(A,B,C).
'test/1_1_$special_functor/3/3__0'(A,B,C,_) :-
nonvar(A),
(
'chr lock'(A),
'chr lock'(B),
'chr lock'(C),
functor(A,B,C),
'chr unlock'(A),
'chr unlock'(B),
'chr unlock'(C),
!
;
!,
fail
).
'test/1_1_$special_functor/3/3__0'(A,B,C,_) :-
'chr default_store'(E),
get_attr(E,guard_entailment,F),
F=v(H,_,_,G,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
H/\4=:=4,
'chr sbag_member'(D,G),
D=suspension(_,K,_,_,_,_,I,J),
K=mutable(active),
!,
remove_constraint_internal(D,M,N),
( N==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(D),
'detach_known/1_1_$special_;/2/2'(M,D)
;
true
),
\+try(I,functor(A,B,C)),
!,
negate_b(I,L),
known(L),
\+try(J,functor(A,B,C)).
'test/1_1_$special_functor/3/3__0'(_,_,_,_) :-
!,
fail.
'test/1_1_$special_=/2'(A,B) :-
'test/1_1_$special_=/2/2__0'(A,B,_).
'test/1_1_$special_=/2/2__0'(_,_,_) :-
nb_getval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',B),
'chr sbag_member'(A,B),
A=suspension(_,C,_,_,_,_),
C=mutable(active),
!.
'test/1_1_$special_=/2/2__0'(A,B,_) :-
'chr via_2'(A,B,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,F,_,_,_,_,_,_,_,_,_),
G/\65536=:=65536,
'chr sbag_member'(C,F),
C=suspension(_,J,_,_,_,_,H,I),
J=mutable(active),
H==A,
I==B,
!.
'test/1_1_$special_=/2/2__0'(A,B,_) :-
ground(B),
ground(A),
!,
A=B.
'test/1_1_$special_=/2/2__0'(A,B,_) :-
'chr default_store'(D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,F,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
G/\4=:=4,
'chr sbag_member'(C,F),
C=suspension(_,J,_,_,_,_,H,I),
J=mutable(active),
!,
remove_constraint_internal(C,L,M),
( M==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(L,C)
;
true
),
\+try(H,A=B),
!,
negate_b(H,K),
known(K),
\+try(I,A=B).
'test/1_1_$special_=/2/2__0'(_,_,_) :-
!,
fail.
'test/1_1_$special_;/2'(A,B) :-
'test/1_1_$special_;/2/2__0'(A,B,_).
'test/1_1_$special_;/2/2__0'(_,_,_) :-
nb_getval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',B),
'chr sbag_member'(A,B),
A=suspension(_,C,_,_,_,_),
C=mutable(active),
!.
'test/1_1_$special_;/2/2__0'(A,B,_) :-
'chr via_2'(A,B,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,F,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
G/\4=:=4,
'chr sbag_member'(C,F),
C=suspension(_,J,_,_,_,_,H,I),
J=mutable(active),
H==A,
I==B,
!.
'test/1_1_$special_;/2/2__0'(A,B,_) :-
A==fail,
!,
test(B).
'test/1_1_$special_;/2/2__0'(A,B,_) :-
B==fail,
!,
test(A).
'test/1_1_$special_;/2/2__0'(A,B,_) :-
!,
negate_b(A,C),
negate_b(B,D),
(
known(D),
test(A)
;
known(C),
test(B)
).
'test/1_1_$special_is/2'(A,B) :-
'test/1_1_$special_is/2/2__0'(A,B,_).
'test/1_1_$special_is/2/2__0'(_,_,_) :-
nb_getval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',B),
'chr sbag_member'(A,B),
A=suspension(_,C,_,_,_,_),
C=mutable(active),
!.
'test/1_1_$special_is/2/2__0'(A,B,_) :-
'chr via_2'(A,B,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,F,_,_,_,_,_),
G/\1048576=:=1048576,
'chr sbag_member'(C,F),
C=suspension(_,J,_,_,_,_,H,I),
J=mutable(active),
H==A,
I==B,
!.
'test/1_1_$special_is/2/2__0'(A,B,_) :-
!,
'test/1_1_$special_=:=/2'(A,B).
'test/1_1_$special_</2'(A,B) :-
'test/1_1_$special_</2/2__0'(A,B,_).
'test/1_1_$special_</2/2__0'(_,_,_) :-
nb_getval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',B),
'chr sbag_member'(A,B),
A=suspension(_,C,_,_,_,_),
C=mutable(active),
!.
'test/1_1_$special_</2/2__0'(A,B,_) :-
'chr via_2'(A,B,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,F,_,_,_,_),
G/\2097152=:=2097152,
'chr sbag_member'(C,F),
C=suspension(_,J,_,_,_,_,H,I),
J=mutable(active),
H==A,
I==B,
!.
'test/1_1_$special_</2/2__0'(A,B,_) :-
!,
'test/1_1_$special_,/2'(A=<B,A=\=B).
'test/1_1_$special_>=/2'(A,B) :-
'test/1_1_$special_>=/2/2__0'(A,B,_).
'test/1_1_$special_>=/2/2__0'(_,_,_) :-
nb_getval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',B),
'chr sbag_member'(A,B),
A=suspension(_,C,_,_,_,_),
C=mutable(active),
!.
'test/1_1_$special_>=/2/2__0'(A,B,_) :-
'chr via_2'(A,B,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,F,_,_,_),
G/\4194304=:=4194304,
'chr sbag_member'(C,F),
C=suspension(_,J,_,_,_,_,H,I),
J=mutable(active),
H==A,
I==B,
!.
'test/1_1_$special_>=/2/2__0'(A,B,_) :-
!,
'test/1_1_$special_=</2'(B,A).
'test/1_1_$special_>/2'(A,B) :-
'test/1_1_$special_>/2/2__0'(A,B,_).
'test/1_1_$special_>/2/2__0'(_,_,_) :-
nb_getval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',B),
'chr sbag_member'(A,B),
A=suspension(_,C,_,_,_,_),
C=mutable(active),
!.
'test/1_1_$special_>/2/2__0'(A,B,_) :-
'chr via_2'(A,B,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,F,_,_),
G/\8388608=:=8388608,
'chr sbag_member'(C,F),
C=suspension(_,J,_,_,_,_,H,I),
J=mutable(active),
H==A,
I==B,
!.
'test/1_1_$special_>/2/2__0'(A,B,_) :-
!,
'test/1_1_$special_</2'(B,A).
'test/1_1_$special_=\\=/2'(A,B) :-
'test/1_1_$special_=\\=/2/2__0'(A,B,_).
'test/1_1_$special_=\\=/2/2__0'(_,_,_) :-
nb_getval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',B),
'chr sbag_member'(A,B),
A=suspension(_,C,_,_,_,_),
C=mutable(active),
!.
'test/1_1_$special_=\\=/2/2__0'(A,B,_) :-
'chr via_2'(A,B,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,_,_,_,_,_,_,_,_,_,_,F,_,_,_,_,_,_,_,_,_,_,_,_,_),
G/\4096=:=4096,
'chr sbag_member'(C,F),
C=suspension(_,J,_,_,_,_,H,I),
J=mutable(active),
H==A,
I==B,
!.
'test/1_1_$special_=\\=/2/2__0'(A,B,_) :-
number(B),
'chr via_1'(A,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,F,_),
G/\16777216=:=16777216,
'chr sbag_member'(C,F),
C=suspension(_,J,_,_,_,_,H,I),
J=mutable(active),
(
H==A,
number(I),
B>I,
!
;
I==A,
number(H),
B<H,
!
).
'test/1_1_$special_=\\=/2/2__0'(A,B,_) :-
ground(B),
ground(A),
(
A=\=B,
!
;
A=:=B,
!,
fail
).
'test/1_1_$special_=\\=/2/2__0'(A,B,_) :-
'chr default_store'(D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,F,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
G/\4=:=4,
'chr sbag_member'(C,F),
C=suspension(_,J,_,_,_,_,H,I),
J=mutable(active),
!,
remove_constraint_internal(C,L,M),
( M==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(L,C)
;
true
),
\+try(H,A=\=B),
!,
negate_b(H,K),
known(K),
\+try(I,A=\=B).
'test/1_1_$special_=\\=/2/2__0'(_,_,_) :-
!,
fail.
'test/1_1_$special_=</2'(A,B) :-
'test/1_1_$special_=</2/2__0'(A,B,_).
'test/1_1_$special_=</2/2__0'(_,_,_) :-
nb_getval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',B),
'chr sbag_member'(A,B),
A=suspension(_,C,_,_,_,_),
C=mutable(active),
!.
'test/1_1_$special_=</2/2__0'(A,B,_) :-
'chr via_2'(A,B,D),
get_attr(D,guard_entailment,E),
E=v(H,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,F,G),
(
H/\16777216=:=16777216,
'chr sbag_member'(C,F),
C=suspension(_,K,_,_,_,_,I,J),
K=mutable(active),
I==A,
J==B,
!
;
H/\33554432=:=33554432,
'chr sbag_member'(L,G),
L=suspension(_,O,_,_,_,_,M,N),
O=mutable(active),
M==A,
N==B,
!
).
'test/1_1_$special_=</2/2__0'(A,B,_) :-
number(B),
'chr via_1'(A,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,F),
G/\33554432=:=33554432,
'chr sbag_member'(C,F),
C=suspension(_,J,_,_,_,_,H,I),
J=mutable(active),
H==A,
number(I),
I=<B,
!.
'test/1_1_$special_=</2/2__0'(A,B,_) :-
number(A),
'chr via_1'(B,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,F),
G/\33554432=:=33554432,
'chr sbag_member'(C,F),
C=suspension(_,J,_,_,_,_,H,I),
J=mutable(active),
H==B,
number(I),
A=<I,
!.
'test/1_1_$special_=</2/2__0'(A,B,_) :-
number(B),
'chr via_1'(A,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,F,_),
G/\16777216=:=16777216,
'chr sbag_member'(C,F),
C=suspension(_,J,_,_,_,_,H,I),
J=mutable(active),
H==A,
number(I),
I=<B,
!.
'test/1_1_$special_=</2/2__0'(A,B,_) :-
number(A),
'chr via_1'(B,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,F,_),
G/\16777216=:=16777216,
'chr sbag_member'(C,F),
C=suspension(_,J,_,_,_,_,H,I),
J=mutable(active),
I==B,
number(H),
A=<H,
!.
'test/1_1_$special_=</2/2__0'(A,B,_) :-
A==B,
!.
'test/1_1_$special_=</2/2__0'(A,B,_) :-
ground(B),
ground(A),
(
A=<B,
!
;
A>B,
!,
fail
).
'test/1_1_$special_=</2/2__0'(A,B,_) :-
'chr default_store'(D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,F,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
G/\4=:=4,
'chr sbag_member'(C,F),
C=suspension(_,J,_,_,_,_,H,I),
J=mutable(active),
!,
remove_constraint_internal(C,L,M),
( M==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(L,C)
;
true
),
\+try(H,A=<B),
!,
negate_b(H,K),
known(K),
\+try(I,A=<B).
'test/1_1_$special_=</2/2__0'(_,_,_) :-
!,
fail.
'test/1_1_$special_\\==/2'(A,B) :-
'test/1_1_$special_\\==/2/2__0'(A,B,_).
'test/1_1_$special_\\==/2/2__0'(_,_,_) :-
nb_getval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',B),
'chr sbag_member'(A,B),
A=suspension(_,C,_,_,_,_),
C=mutable(active),
!.
'test/1_1_$special_\\==/2/2__0'(A,B,_) :-
'chr via_2'(A,B,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,F,_,_,_,_,_,_,_),
G/\262144=:=262144,
'chr sbag_member'(C,F),
C=suspension(_,J,_,_,_,_,H,I),
J=mutable(active),
H==A,
I==B,
!.
'test/1_1_$special_\\==/2/2__0'(A,B,_) :-
nonvar(B),
'chr lock'(B),
functor(B,C,D),
'chr unlock'(B),
!,
B=..[_|E],
length(F,D),
G=..[C|F],
add_args_nmatch(F,E,H),
I=(\+functor(A,C,D);functor(A,C,D),A=G,H),
test(I).
'test/1_1_$special_\\==/2/2__0'(A,B,_) :-
nonvar(A),
!,
'test/1_1_$special_\\==/2'(B,A).
'test/1_1_$special_\\==/2/2__0'(A,B,_) :-
'chr default_store'(D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,F,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
G/\4=:=4,
'chr sbag_member'(C,F),
C=suspension(_,J,_,_,_,_,H,I),
J=mutable(active),
!,
remove_constraint_internal(C,L,M),
( M==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(L,C)
;
true
),
\+try(H,A\==B),
!,
negate_b(H,K),
known(K),
\+try(I,A\==B).
'test/1_1_$special_\\==/2/2__0'(_,_,_) :-
!,
fail.
'known/1_1_$default'(A) :-
'known/1_1_$default/1__0'(A,_).
'known/1_1_$default/1__0'(A,B) :-
'chr via_1'(A,D),
get_attr(D,guard_entailment,E),
E=v(G,_,F,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
G/\2=:=2,
(
'chr sbag_member'(C,F),
C=suspension(_,I,_,_,_,_,H),
I=mutable(active),
H==A,
!,
( var(B) ->
true
;
remove_constraint_internal(B,J,K),
( K==yes ->
'$delete_from_store_known/1_1_$default/1'(B),
'detach_known/1_1_$default/1'(J,B)
;
true
)
)
;
!,
( var(B) ->
allocate_constraint(guard_entailment:'known/1_1_$default/1__0'(A,B),B,'known/1_1_$default'(A),[A])
;
true
),
'known/1_1_$default/1__0__0'(F,A,B)
).
'known/1_1_$default/1__0__0'([],A,B) :-
'known/1_1_$default/1__1'(A,B).
'known/1_1_$default/1__0__0'([C|D],A,B) :-
( C=suspension(_,F,_,_,_,_,E),
F=mutable(active),
E==A ->
remove_constraint_internal(C,G,H),
( H==yes ->
'$delete_from_store_known/1_1_$default/1'(C),
'detach_known/1_1_$default/1'(G,C)
;
true
),
'known/1_1_$default/1__0__0'(D,A,B)
;
'known/1_1_$default/1__0__0'(D,A,B)
).
'known/1_1_$default/1__0'(A,B) :-
( var(B) ->
allocate_constraint(guard_entailment:'known/1_1_$default/1__0'(A,B),B,'known/1_1_$default'(A),[A])
;
true
),
'known/1_1_$default/1__1'(A,B).
'known/1_1_$default/1__1'(_,A) :-
nb_getval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',C),
'chr sbag_member'(B,C),
B=suspension(_,D,_,_,_,_),
D=mutable(active),
!,
( var(A) ->
true
;
remove_constraint_internal(A,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$default/1'(A),
'detach_known/1_1_$default/1'(E,A)
;
true
)
).
'known/1_1_$default/1__1'(A,B) :-
'chr via_1'(A,D),
get_attr(D,guard_entailment,E),
E=v(H,_,_,F,_,_,_,_,_,_,_,_,_,_,G,_,_,_,_,_,_,_,_,_,_,_,_),
(
H/\8192=:=8192,
'chr sbag_member'(C,G),
C=suspension(_,J,_,_,_,_,I),
J=mutable(active),
I==A,
!,
remove_constraint_internal(C,K,L),
( L==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(C),
'detach_known/1_1_$special_\\+/1/1'(K,C)
;
true
),
( var(B) ->
true
;
remove_constraint_internal(B,M,N),
( N==yes ->
'$delete_from_store_known/1_1_$default/1'(B),
'detach_known/1_1_$default/1'(M,B)
;
true
)
),
'known/1_1_$special_fail/0'
;
H/\4=:=4,
!,
'known/1_1_$default/1__1__0'(F,A,B)
).
'known/1_1_$default/1__1__0'([],A,B) :-
'known/1_1_$default/1__2'(A,B).
'known/1_1_$default/1__1__0'([C|D],A,B) :-
( C=suspension(_,H,_,_,_,_,E,F),
H=mutable(active),
nonvar(E),
E=(\+G),
G==A ->
remove_constraint_internal(C,I,J),
( J==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(I,C)
;
true
),
activate_constraint(L,K,B,M),
( L==yes ->
'$insert_in_store_known/1_1_$default/1'(B),
'attach_known/1_1_$default/1'(K,B)
;
true
),
known(F),
( B=suspension(_,N,_,O,_,_,_),
N=mutable(active),
O=mutable(M) ->
'chr update_mutable'(inactive,N),
'known/1_1_$default/1__1__0'(D,A,B)
;
true
)
;
'known/1_1_$default/1__1__0'(D,A,B)
).
'known/1_1_$default/1__1'(A,B) :-
'known/1_1_$default/1__2'(A,B).
'known/1_1_$default/1__2'(A,B) :-
'chr via_1'(A,C),
get_attr(C,guard_entailment,D),
D=v(F,_,_,E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
F/\4=:=4,
!,
'known/1_1_$default/1__2__0'(E,A,B).
'known/1_1_$default/1__2__0'([],A,B) :-
'known/1_1_$default/1__3'(A,B).
'known/1_1_$default/1__2__0'([C|D],A,B) :-
( C=suspension(_,I,_,_,_,_,E,F),
I=mutable(active),
nonvar(E),
E=(G,_),
nonvar(G),
G=(\+H),
H==A ->
remove_constraint_internal(C,J,K),
( K==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(J,C)
;
true
),
activate_constraint(M,L,B,N),
( M==yes ->
'$insert_in_store_known/1_1_$default/1'(B),
'attach_known/1_1_$default/1'(L,B)
;
true
),
known(F),
( B=suspension(_,O,_,P,_,_,_),
O=mutable(active),
P=mutable(N) ->
'chr update_mutable'(inactive,O),
'known/1_1_$default/1__2__0'(D,A,B)
;
true
)
;
'known/1_1_$default/1__2__0'(D,A,B)
).
'known/1_1_$default/1__2'(A,B) :-
'known/1_1_$default/1__3'(A,B).
'known/1_1_$default/1__3'(_,A) :-
activate_constraint(C,B,A,_),
( C==yes ->
'$insert_in_store_known/1_1_$default/1'(A),
'attach_known/1_1_$default/1'(B,A)
;
true
).
'known/1_1_$special_;/2'(A,B) :-
'known/1_1_$special_;/2/2__0'(A,B,_).
'known/1_1_$special_;/2/2__0'(A,B,C) :-
'chr via_2'(A,B,E),
get_attr(E,guard_entailment,F),
F=v(H,_,_,G,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
H/\4=:=4,
(
'chr sbag_member'(D,G),
D=suspension(_,K,_,_,_,_,I,J),
K=mutable(active),
I==A,
J==B,
!,
( var(C) ->
true
;
remove_constraint_internal(C,L,M),
( M==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(L,C)
;
true
)
)
;
!,
( var(C) ->
allocate_constraint(guard_entailment:'known/1_1_$special_;/2/2__0'(A,B,C),C,'known/1_1_$special_;/2'(A,B),[A,B])
;
true
),
'known/1_1_$special_;/2/2__0__0'(G,A,B,C)
).
'known/1_1_$special_;/2/2__0__0'([],A,B,C) :-
'known/1_1_$special_;/2/2__1'(A,B,C).
'known/1_1_$special_;/2/2__0__0'([D|E],A,B,C) :-
( D=suspension(_,H,_,_,_,_,F,G),
H=mutable(active),
F==A,
G==B ->
remove_constraint_internal(D,I,J),
( J==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(D),
'detach_known/1_1_$special_;/2/2'(I,D)
;
true
),
'known/1_1_$special_;/2/2__0__0'(E,A,B,C)
;
'known/1_1_$special_;/2/2__0__0'(E,A,B,C)
).
'known/1_1_$special_;/2/2__0'(A,B,C) :-
( var(C) ->
allocate_constraint(guard_entailment:'known/1_1_$special_;/2/2__0'(A,B,C),C,'known/1_1_$special_;/2'(A,B),[A,B])
;
true
),
'known/1_1_$special_;/2/2__1'(A,B,C).
'known/1_1_$special_;/2/2__1'(_,_,A) :-
nb_getval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',C),
'chr sbag_member'(B,C),
B=suspension(_,D,_,_,_,_),
D=mutable(active),
!,
( var(A) ->
true
;
remove_constraint_internal(A,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(A),
'detach_known/1_1_$special_;/2/2'(E,A)
;
true
)
).
'known/1_1_$special_;/2/2__1'(A,B,C) :-
'chr via_2'(A,B,E),
get_attr(E,guard_entailment,F),
F=v(H,_,_,_,_,_,_,_,_,_,_,_,_,_,G,_,_,_,_,_,_,_,_,_,_,_,_),
H/\8192=:=8192,
'chr sbag_member'(D,G),
D=suspension(_,L,_,_,_,_,I),
L=mutable(active),
nonvar(I),
I=(J;K),
J==A,
K==B,
!,
remove_constraint_internal(D,M,N),
( N==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(D),
'detach_known/1_1_$special_\\+/1/1'(M,D)
;
true
),
( var(C) ->
true
;
remove_constraint_internal(C,O,P),
( P==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(O,C)
;
true
)
),
'known/1_1_$special_fail/0'.
'known/1_1_$special_;/2/2__1'(A,B,C) :-
nonvar(A),
A=(\+D),
nonvar(D),
D=(E;F),
'chr via_2'(E,F,H),
get_attr(H,guard_entailment,I),
I=v(K,_,_,J,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
K/\4=:=4,
'chr sbag_member'(G,J),
G=suspension(_,N,_,_,_,_,L,M),
N=mutable(active),
L==E,
M==F,
!,
( var(C) ->
true
;
remove_constraint_internal(C,O,P),
( P==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(O,C)
;
true
)
),
known(B).
'known/1_1_$special_;/2/2__1'(A,B,C) :-
'chr via_2'(A,B,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,F,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
G/\4=:=4,
!,
'known/1_1_$special_;/2/2__1__0'(F,A,B,C).
'known/1_1_$special_;/2/2__1__0'([],A,B,C) :-
'known/1_1_$special_;/2/2__2'(A,B,C).
'known/1_1_$special_;/2/2__1__0'([D|E],A,B,C) :-
( D=suspension(_,K,_,_,_,_,F,G),
K=mutable(active),
nonvar(F),
F=(\+H),
nonvar(H),
H=(I;J),
I==A,
J==B ->
remove_constraint_internal(D,L,M),
( M==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(D),
'detach_known/1_1_$special_;/2/2'(L,D)
;
true
),
activate_constraint(O,N,C,P),
( O==yes ->
'$insert_in_store_known/1_1_$special_;/2/2'(C),
'attach_known/1_1_$special_;/2/2'(N,C)
;
true
),
known(G),
( C=suspension(_,Q,_,R,_,_,_,_),
Q=mutable(active),
R=mutable(P) ->
'chr update_mutable'(inactive,Q),
'known/1_1_$special_;/2/2__1__0'(E,A,B,C)
;
true
)
;
'known/1_1_$special_;/2/2__1__0'(E,A,B,C)
).
'known/1_1_$special_;/2/2__1'(A,B,C) :-
'known/1_1_$special_;/2/2__2'(A,B,C).
'known/1_1_$special_;/2/2__2'(A,B,C) :-
nonvar(A),
(
A=(\+D),
(
(
nonvar(D),
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
D=nonvar(E),
'chr via_1'(E,G),
get_attr(G,guard_entailment,H),
H=v(J,_,_,_,I,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
J/\8=:=8,
'chr sbag_member'(F,I),
F=suspension(_,L,_,_,_,_,K),
L=mutable(active),
K==E,
!,
( var(C) ->
true
;
remove_constraint_internal(C,M,N),
( N==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(M,C)
;
true
)
),
known(B)
;
D=var(O),
'chr via_1'(O,Q),
get_attr(Q,guard_entailment,R),
R=v(T,_,_,_,_,S,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
T/\16=:=16,
'chr sbag_member'(P,S),
P=suspension(_,V,_,_,_,_,U),
V=mutable(active),
U==O,
!,
( var(C) ->
true
;
remove_constraint_internal(C,W,X),
( X==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(W,C)
;
true
)
),
known(B)
)
;
D=atom(Y),
'chr via_1'(Y,A1),
get_attr(A1,guard_entailment,B1),
B1=v(D1,_,_,_,_,_,C1,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
D1/\32=:=32,
'chr sbag_member'(Z,C1),
Z=suspension(_,F1,_,_,_,_,E1),
F1=mutable(active),
E1==Y,
!,
( var(C) ->
true
;
remove_constraint_internal(C,G1,H1),
( H1==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(G1,C)
;
true
)
),
known(B)
)
;
D=atomic(I1),
'chr via_1'(I1,K1),
get_attr(K1,guard_entailment,L1),
L1=v(N1,_,_,_,_,_,_,M1,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
N1/\64=:=64,
'chr sbag_member'(J1,M1),
J1=suspension(_,P1,_,_,_,_,O1),
P1=mutable(active),
O1==I1,
!,
( var(C) ->
true
;
remove_constraint_internal(C,Q1,R1),
( R1==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(Q1,C)
;
true
)
),
known(B)
)
;
D=compound(S1),
'chr via_1'(S1,U1),
get_attr(U1,guard_entailment,V1),
V1=v(X1,_,_,_,_,_,_,_,W1,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
X1/\128=:=128,
'chr sbag_member'(T1,W1),
T1=suspension(_,Z1,_,_,_,_,Y1),
Z1=mutable(active),
Y1==S1,
!,
( var(C) ->
true
;
remove_constraint_internal(C,A2,B2),
( B2==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(A2,C)
;
true
)
),
known(B)
)
;
D=ground(C2),
'chr via_1'(C2,E2),
get_attr(E2,guard_entailment,F2),
F2=v(H2,_,_,_,_,_,_,_,_,G2,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
H2/\256=:=256,
'chr sbag_member'(D2,G2),
D2=suspension(_,J2,_,_,_,_,I2),
J2=mutable(active),
I2==C2,
!,
( var(C) ->
true
;
remove_constraint_internal(C,K2,L2),
( L2==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(K2,C)
;
true
)
),
known(B)
)
;
D=integer(M2),
'chr via_1'(M2,O2),
get_attr(O2,guard_entailment,P2),
P2=v(R2,_,_,_,_,_,_,_,_,_,Q2,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
R2/\512=:=512,
'chr sbag_member'(N2,Q2),
N2=suspension(_,T2,_,_,_,_,S2),
T2=mutable(active),
S2==M2,
!,
( var(C) ->
true
;
remove_constraint_internal(C,U2,V2),
( V2==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(U2,C)
;
true
)
),
known(B)
)
;
D=float(W2),
'chr via_1'(W2,Y2),
get_attr(Y2,guard_entailment,Z2),
Z2=v(B3,_,_,_,_,_,_,_,_,_,_,A3,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
B3/\1024=:=1024,
'chr sbag_member'(X2,A3),
X2=suspension(_,D3,_,_,_,_,C3),
D3=mutable(active),
C3==W2,
!,
( var(C) ->
true
;
remove_constraint_internal(C,E3,F3),
( F3==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(E3,C)
;
true
)
),
known(B)
)
;
D=number(G3),
'chr via_1'(G3,I3),
get_attr(I3,guard_entailment,J3),
J3=v(L3,_,_,_,_,_,_,_,_,_,_,_,K3,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
L3/\2048=:=2048,
'chr sbag_member'(H3,K3),
H3=suspension(_,N3,_,_,_,_,M3),
N3=mutable(active),
M3==G3,
!,
( var(C) ->
true
;
remove_constraint_internal(C,O3,P3),
( P3==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(O3,C)
;
true
)
),
known(B)
)
;
D=(Q3=\=R3),
'chr via_2'(Q3,R3,T3),
get_attr(T3,guard_entailment,U3),
U3=v(W3,_,_,_,_,_,_,_,_,_,_,_,_,V3,_,_,_,_,_,_,_,_,_,_,_,_,_),
W3/\4096=:=4096,
'chr sbag_member'(S3,V3),
S3=suspension(_,Z3,_,_,_,_,X3,Y3),
Z3=mutable(active),
X3==Q3,
Y3==R3,
!,
( var(C) ->
true
;
remove_constraint_internal(C,A4,B4),
( B4==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(A4,C)
;
true
)
),
known(B)
)
;
D=(\+C4),
'chr via_1'(C4,E4),
get_attr(E4,guard_entailment,F4),
F4=v(H4,_,_,_,_,_,_,_,_,_,_,_,_,_,G4,_,_,_,_,_,_,_,_,_,_,_,_),
H4/\8192=:=8192,
'chr sbag_member'(D4,G4),
D4=suspension(_,J4,_,_,_,_,I4),
J4=mutable(active),
I4==C4,
!,
( var(C) ->
true
;
remove_constraint_internal(C,K4,L4),
( L4==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(K4,C)
;
true
)
),
known(B)
)
;
D=functor(M4,N4,O4),
'chr via'([M4,N4,O4],Q4),
get_attr(Q4,guard_entailment,R4),
R4=v(T4,_,_,_,_,_,_,_,_,_,_,_,_,_,_,S4,_,_,_,_,_,_,_,_,_,_,_),
T4/\16384=:=16384,
'chr sbag_member'(P4,S4),
P4=suspension(_,X4,_,_,_,_,U4,V4,W4),
X4=mutable(active),
U4==M4,
V4==N4,
W4==O4,
!,
( var(C) ->
true
;
remove_constraint_internal(C,Y4,Z4),
( Z4==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(Y4,C)
;
true
)
),
known(B)
)
;
D=(A5\=B5),
'chr via_2'(A5,B5,D5),
get_attr(D5,guard_entailment,E5),
E5=v(G5,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,F5,_,_,_,_,_,_,_,_,_,_),
G5/\32768=:=32768,
'chr sbag_member'(C5,F5),
C5=suspension(_,J5,_,_,_,_,H5,I5),
J5=mutable(active),
H5==A5,
I5==B5,
!,
( var(C) ->
true
;
remove_constraint_internal(C,K5,L5),
( L5==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(K5,C)
;
true
)
),
known(B)
)
;
D=(M5=N5),
'chr via_2'(M5,N5,P5),
get_attr(P5,guard_entailment,Q5),
Q5=v(S5,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,R5,_,_,_,_,_,_,_,_,_),
S5/\65536=:=65536,
'chr sbag_member'(O5,R5),
O5=suspension(_,V5,_,_,_,_,T5,U5),
V5=mutable(active),
T5==M5,
U5==N5,
!,
( var(C) ->
true
;
remove_constraint_internal(C,W5,X5),
( X5==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(W5,C)
;
true
)
),
known(B)
)
;
D=(Y5,Z5),
'chr via_2'(Y5,Z5,B6),
get_attr(B6,guard_entailment,C6),
C6=v(E6,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,D6,_,_,_,_,_,_,_,_),
E6/\131072=:=131072,
'chr sbag_member'(A6,D6),
A6=suspension(_,H6,_,_,_,_,F6,G6),
H6=mutable(active),
F6==Y5,
G6==Z5,
!,
( var(C) ->
true
;
remove_constraint_internal(C,I6,J6),
( J6==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(I6,C)
;
true
)
),
known(B)
)
;
D=(K6\==L6),
'chr via_2'(K6,L6,N6),
get_attr(N6,guard_entailment,O6),
O6=v(Q6,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,P6,_,_,_,_,_,_,_),
Q6/\262144=:=262144,
'chr sbag_member'(M6,P6),
M6=suspension(_,T6,_,_,_,_,R6,S6),
T6=mutable(active),
R6==K6,
S6==L6,
!,
( var(C) ->
true
;
remove_constraint_internal(C,U6,V6),
( V6==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(U6,C)
;
true
)
),
known(B)
)
;
D=(W6==X6),
'chr via_2'(W6,X6,Z6),
get_attr(Z6,guard_entailment,A7),
A7=v(C7,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,B7,_,_,_,_,_,_),
C7/\524288=:=524288,
'chr sbag_member'(Y6,B7),
Y6=suspension(_,F7,_,_,_,_,D7,E7),
F7=mutable(active),
D7==W6,
E7==X6,
!,
( var(C) ->
true
;
remove_constraint_internal(C,G7,H7),
( H7==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(G7,C)
;
true
)
),
known(B)
)
;
D=(I7 is J7),
'chr via_2'(I7,J7,L7),
get_attr(L7,guard_entailment,M7),
M7=v(O7,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,N7,_,_,_,_,_),
O7/\1048576=:=1048576,
'chr sbag_member'(K7,N7),
K7=suspension(_,R7,_,_,_,_,P7,Q7),
R7=mutable(active),
P7==I7,
Q7==J7,
!,
( var(C) ->
true
;
remove_constraint_internal(C,S7,T7),
( T7==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(S7,C)
;
true
)
),
known(B)
)
;
D=(U7<V7),
'chr via_2'(U7,V7,X7),
get_attr(X7,guard_entailment,Y7),
Y7=v(A8,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,Z7,_,_,_,_),
A8/\2097152=:=2097152,
'chr sbag_member'(W7,Z7),
W7=suspension(_,D8,_,_,_,_,B8,C8),
D8=mutable(active),
B8==U7,
C8==V7,
!,
( var(C) ->
true
;
remove_constraint_internal(C,E8,F8),
( F8==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(E8,C)
;
true
)
),
known(B)
)
;
D=(G8>=H8),
'chr via_2'(G8,H8,J8),
get_attr(J8,guard_entailment,K8),
K8=v(M8,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,L8,_,_,_),
M8/\4194304=:=4194304,
'chr sbag_member'(I8,L8),
I8=suspension(_,P8,_,_,_,_,N8,O8),
P8=mutable(active),
N8==G8,
O8==H8,
!,
( var(C) ->
true
;
remove_constraint_internal(C,Q8,R8),
( R8==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(Q8,C)
;
true
)
),
known(B)
)
;
D=(S8>T8),
'chr via_2'(S8,T8,V8),
get_attr(V8,guard_entailment,W8),
W8=v(Y8,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,X8,_,_),
Y8/\8388608=:=8388608,
'chr sbag_member'(U8,X8),
U8=suspension(_,B9,_,_,_,_,Z8,A9),
B9=mutable(active),
Z8==S8,
A9==T8,
!,
( var(C) ->
true
;
remove_constraint_internal(C,C9,D9),
( D9==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(C9,C)
;
true
)
),
known(B)
)
;
D=(E9=<F9),
'chr via_2'(E9,F9,H9),
get_attr(H9,guard_entailment,I9),
I9=v(K9,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,J9,_),
K9/\16777216=:=16777216,
'chr sbag_member'(G9,J9),
G9=suspension(_,N9,_,_,_,_,L9,M9),
N9=mutable(active),
L9==E9,
M9==F9,
!,
( var(C) ->
true
;
remove_constraint_internal(C,O9,P9),
( P9==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(O9,C)
;
true
)
),
known(B)
)
;
D=(Q9=:=R9),
'chr via_2'(Q9,R9,T9),
get_attr(T9,guard_entailment,U9),
U9=v(W9,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,V9),
W9/\33554432=:=33554432,
'chr sbag_member'(S9,V9),
S9=suspension(_,Z9,_,_,_,_,X9,Y9),
Z9=mutable(active),
X9==Q9,
Y9==R9,
!,
( var(C) ->
true
;
remove_constraint_internal(C,A10,B10),
( B10==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(A10,C)
;
true
)
),
known(B)
)
;
D==fail,
nb_getval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',D10),
'chr sbag_member'(C10,D10),
C10=suspension(_,E10,_,_,_,_),
E10=mutable(active),
!,
( var(C) ->
true
;
remove_constraint_internal(C,F10,G10),
( G10==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(F10,C)
;
true
)
),
known(B)
)
;
'chr via_1'(D,I10),
get_attr(I10,guard_entailment,J10),
J10=v(L10,_,K10,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
L10/\2=:=2,
'chr sbag_member'(H10,K10),
H10=suspension(_,N10,_,_,_,_,M10),
N10=mutable(active),
M10==D,
!,
( var(C) ->
true
;
remove_constraint_internal(C,O10,P10),
( P10==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(O10,C)
;
true
)
),
known(B)
)
;
A=(Q10,_),
nonvar(Q10),
Q10=(\+R10),
nonvar(R10),
R10=(S10;T10),
'chr via_2'(S10,T10,V10),
get_attr(V10,guard_entailment,W10),
W10=v(Y10,_,_,X10,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
Y10/\4=:=4,
'chr sbag_member'(U10,X10),
U10=suspension(_,B11,_,_,_,_,Z10,A11),
B11=mutable(active),
Z10==S10,
A11==T10,
!,
( var(C) ->
true
;
remove_constraint_internal(C,C11,D11),
( D11==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(C11,C)
;
true
)
),
known(B)
).
'known/1_1_$special_;/2/2__2'(A,B,C) :-
'chr via_2'(A,B,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,F,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
G/\4=:=4,
!,
'known/1_1_$special_;/2/2__2__0'(F,A,B,C).
'known/1_1_$special_;/2/2__2__0'([],A,B,C) :-
'known/1_1_$special_;/2/2__3'(A,B,C).
'known/1_1_$special_;/2/2__2__0'([D|E],A,B,C) :-
( D=suspension(_,L,_,_,_,_,F,G),
L=mutable(active),
nonvar(F),
F=(H,_),
nonvar(H),
H=(\+I),
nonvar(I),
I=(J;K),
J==A,
K==B ->
remove_constraint_internal(D,M,N),
( N==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(D),
'detach_known/1_1_$special_;/2/2'(M,D)
;
true
),
activate_constraint(P,O,C,Q),
( P==yes ->
'$insert_in_store_known/1_1_$special_;/2/2'(C),
'attach_known/1_1_$special_;/2/2'(O,C)
;
true
),
known(G),
( C=suspension(_,R,_,S,_,_,_,_),
R=mutable(active),
S=mutable(Q) ->
'chr update_mutable'(inactive,R),
'known/1_1_$special_;/2/2__2__0'(E,A,B,C)
;
true
)
;
'known/1_1_$special_;/2/2__2__0'(E,A,B,C)
).
'known/1_1_$special_;/2/2__2'(A,B,C) :-
'known/1_1_$special_;/2/2__3'(A,B,C).
'known/1_1_$special_;/2/2__3'(A,B,C) :-
nonvar(A),
A=(D,_),
nonvar(D),
D=(\+E),
(
(
nonvar(E),
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
E=nonvar(F),
'chr via_1'(F,H),
get_attr(H,guard_entailment,I),
I=v(K,_,_,_,J,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
K/\8=:=8,
'chr sbag_member'(G,J),
G=suspension(_,M,_,_,_,_,L),
M=mutable(active),
L==F,
!,
( var(C) ->
true
;
remove_constraint_internal(C,N,O),
( O==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(N,C)
;
true
)
),
known(B)
;
E=var(P),
'chr via_1'(P,R),
get_attr(R,guard_entailment,S),
S=v(U,_,_,_,_,T,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
U/\16=:=16,
'chr sbag_member'(Q,T),
Q=suspension(_,W,_,_,_,_,V),
W=mutable(active),
V==P,
!,
( var(C) ->
true
;
remove_constraint_internal(C,X,Y),
( Y==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(X,C)
;
true
)
),
known(B)
)
;
E=atom(Z),
'chr via_1'(Z,B1),
get_attr(B1,guard_entailment,C1),
C1=v(E1,_,_,_,_,_,D1,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
E1/\32=:=32,
'chr sbag_member'(A1,D1),
A1=suspension(_,G1,_,_,_,_,F1),
G1=mutable(active),
F1==Z,
!,
( var(C) ->
true
;
remove_constraint_internal(C,H1,I1),
( I1==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(H1,C)
;
true
)
),
known(B)
)
;
E=atomic(J1),
'chr via_1'(J1,L1),
get_attr(L1,guard_entailment,M1),
M1=v(O1,_,_,_,_,_,_,N1,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
O1/\64=:=64,
'chr sbag_member'(K1,N1),
K1=suspension(_,Q1,_,_,_,_,P1),
Q1=mutable(active),
P1==J1,
!,
( var(C) ->
true
;
remove_constraint_internal(C,R1,S1),
( S1==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(R1,C)
;
true
)
),
known(B)
)
;
E=compound(T1),
'chr via_1'(T1,V1),
get_attr(V1,guard_entailment,W1),
W1=v(Y1,_,_,_,_,_,_,_,X1,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
Y1/\128=:=128,
'chr sbag_member'(U1,X1),
U1=suspension(_,A2,_,_,_,_,Z1),
A2=mutable(active),
Z1==T1,
!,
( var(C) ->
true
;
remove_constraint_internal(C,B2,C2),
( C2==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(B2,C)
;
true
)
),
known(B)
)
;
E=ground(D2),
'chr via_1'(D2,F2),
get_attr(F2,guard_entailment,G2),
G2=v(I2,_,_,_,_,_,_,_,_,H2,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
I2/\256=:=256,
'chr sbag_member'(E2,H2),
E2=suspension(_,K2,_,_,_,_,J2),
K2=mutable(active),
J2==D2,
!,
( var(C) ->
true
;
remove_constraint_internal(C,L2,M2),
( M2==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(L2,C)
;
true
)
),
known(B)
)
;
E=integer(N2),
'chr via_1'(N2,P2),
get_attr(P2,guard_entailment,Q2),
Q2=v(S2,_,_,_,_,_,_,_,_,_,R2,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
S2/\512=:=512,
'chr sbag_member'(O2,R2),
O2=suspension(_,U2,_,_,_,_,T2),
U2=mutable(active),
T2==N2,
!,
( var(C) ->
true
;
remove_constraint_internal(C,V2,W2),
( W2==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(V2,C)
;
true
)
),
known(B)
)
;
E=float(X2),
'chr via_1'(X2,Z2),
get_attr(Z2,guard_entailment,A3),
A3=v(C3,_,_,_,_,_,_,_,_,_,_,B3,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
C3/\1024=:=1024,
'chr sbag_member'(Y2,B3),
Y2=suspension(_,E3,_,_,_,_,D3),
E3=mutable(active),
D3==X2,
!,
( var(C) ->
true
;
remove_constraint_internal(C,F3,G3),
( G3==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(F3,C)
;
true
)
),
known(B)
)
;
E=number(H3),
'chr via_1'(H3,J3),
get_attr(J3,guard_entailment,K3),
K3=v(M3,_,_,_,_,_,_,_,_,_,_,_,L3,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
M3/\2048=:=2048,
'chr sbag_member'(I3,L3),
I3=suspension(_,O3,_,_,_,_,N3),
O3=mutable(active),
N3==H3,
!,
( var(C) ->
true
;
remove_constraint_internal(C,P3,Q3),
( Q3==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(P3,C)
;
true
)
),
known(B)
)
;
E=(R3=\=S3),
'chr via_2'(R3,S3,U3),
get_attr(U3,guard_entailment,V3),
V3=v(X3,_,_,_,_,_,_,_,_,_,_,_,_,W3,_,_,_,_,_,_,_,_,_,_,_,_,_),
X3/\4096=:=4096,
'chr sbag_member'(T3,W3),
T3=suspension(_,A4,_,_,_,_,Y3,Z3),
A4=mutable(active),
Y3==R3,
Z3==S3,
!,
( var(C) ->
true
;
remove_constraint_internal(C,B4,C4),
( C4==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(B4,C)
;
true
)
),
known(B)
)
;
E=(\+D4),
'chr via_1'(D4,F4),
get_attr(F4,guard_entailment,G4),
G4=v(I4,_,_,_,_,_,_,_,_,_,_,_,_,_,H4,_,_,_,_,_,_,_,_,_,_,_,_),
I4/\8192=:=8192,
'chr sbag_member'(E4,H4),
E4=suspension(_,K4,_,_,_,_,J4),
K4=mutable(active),
J4==D4,
!,
( var(C) ->
true
;
remove_constraint_internal(C,L4,M4),
( M4==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(L4,C)
;
true
)
),
known(B)
)
;
E=functor(N4,O4,P4),
'chr via'([N4,O4,P4],R4),
get_attr(R4,guard_entailment,S4),
S4=v(U4,_,_,_,_,_,_,_,_,_,_,_,_,_,_,T4,_,_,_,_,_,_,_,_,_,_,_),
U4/\16384=:=16384,
'chr sbag_member'(Q4,T4),
Q4=suspension(_,Y4,_,_,_,_,V4,W4,X4),
Y4=mutable(active),
V4==N4,
W4==O4,
X4==P4,
!,
( var(C) ->
true
;
remove_constraint_internal(C,Z4,A5),
( A5==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(Z4,C)
;
true
)
),
known(B)
)
;
E=(B5\=C5),
'chr via_2'(B5,C5,E5),
get_attr(E5,guard_entailment,F5),
F5=v(H5,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,G5,_,_,_,_,_,_,_,_,_,_),
H5/\32768=:=32768,
'chr sbag_member'(D5,G5),
D5=suspension(_,K5,_,_,_,_,I5,J5),
K5=mutable(active),
I5==B5,
J5==C5,
!,
( var(C) ->
true
;
remove_constraint_internal(C,L5,M5),
( M5==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(L5,C)
;
true
)
),
known(B)
)
;
E=(N5=O5),
'chr via_2'(N5,O5,Q5),
get_attr(Q5,guard_entailment,R5),
R5=v(T5,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,S5,_,_,_,_,_,_,_,_,_),
T5/\65536=:=65536,
'chr sbag_member'(P5,S5),
P5=suspension(_,W5,_,_,_,_,U5,V5),
W5=mutable(active),
U5==N5,
V5==O5,
!,
( var(C) ->
true
;
remove_constraint_internal(C,X5,Y5),
( Y5==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(X5,C)
;
true
)
),
known(B)
)
;
E=(Z5,A6),
'chr via_2'(Z5,A6,C6),
get_attr(C6,guard_entailment,D6),
D6=v(F6,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,E6,_,_,_,_,_,_,_,_),
F6/\131072=:=131072,
'chr sbag_member'(B6,E6),
B6=suspension(_,I6,_,_,_,_,G6,H6),
I6=mutable(active),
G6==Z5,
H6==A6,
!,
( var(C) ->
true
;
remove_constraint_internal(C,J6,K6),
( K6==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(J6,C)
;
true
)
),
known(B)
)
;
E=(L6\==M6),
'chr via_2'(L6,M6,O6),
get_attr(O6,guard_entailment,P6),
P6=v(R6,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,Q6,_,_,_,_,_,_,_),
R6/\262144=:=262144,
'chr sbag_member'(N6,Q6),
N6=suspension(_,U6,_,_,_,_,S6,T6),
U6=mutable(active),
S6==L6,
T6==M6,
!,
( var(C) ->
true
;
remove_constraint_internal(C,V6,W6),
( W6==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(V6,C)
;
true
)
),
known(B)
)
;
E=(X6==Y6),
'chr via_2'(X6,Y6,A7),
get_attr(A7,guard_entailment,B7),
B7=v(D7,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,C7,_,_,_,_,_,_),
D7/\524288=:=524288,
'chr sbag_member'(Z6,C7),
Z6=suspension(_,G7,_,_,_,_,E7,F7),
G7=mutable(active),
E7==X6,
F7==Y6,
!,
( var(C) ->
true
;
remove_constraint_internal(C,H7,I7),
( I7==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(H7,C)
;
true
)
),
known(B)
)
;
E=(J7 is K7),
'chr via_2'(J7,K7,M7),
get_attr(M7,guard_entailment,N7),
N7=v(P7,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,O7,_,_,_,_,_),
P7/\1048576=:=1048576,
'chr sbag_member'(L7,O7),
L7=suspension(_,S7,_,_,_,_,Q7,R7),
S7=mutable(active),
Q7==J7,
R7==K7,
!,
( var(C) ->
true
;
remove_constraint_internal(C,T7,U7),
( U7==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(T7,C)
;
true
)
),
known(B)
)
;
E=(V7<W7),
'chr via_2'(V7,W7,Y7),
get_attr(Y7,guard_entailment,Z7),
Z7=v(B8,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,A8,_,_,_,_),
B8/\2097152=:=2097152,
'chr sbag_member'(X7,A8),
X7=suspension(_,E8,_,_,_,_,C8,D8),
E8=mutable(active),
C8==V7,
D8==W7,
!,
( var(C) ->
true
;
remove_constraint_internal(C,F8,G8),
( G8==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(F8,C)
;
true
)
),
known(B)
)
;
E=(H8>=I8),
'chr via_2'(H8,I8,K8),
get_attr(K8,guard_entailment,L8),
L8=v(N8,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,M8,_,_,_),
N8/\4194304=:=4194304,
'chr sbag_member'(J8,M8),
J8=suspension(_,Q8,_,_,_,_,O8,P8),
Q8=mutable(active),
O8==H8,
P8==I8,
!,
( var(C) ->
true
;
remove_constraint_internal(C,R8,S8),
( S8==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(R8,C)
;
true
)
),
known(B)
)
;
E=(T8>U8),
'chr via_2'(T8,U8,W8),
get_attr(W8,guard_entailment,X8),
X8=v(Z8,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,Y8,_,_),
Z8/\8388608=:=8388608,
'chr sbag_member'(V8,Y8),
V8=suspension(_,C9,_,_,_,_,A9,B9),
C9=mutable(active),
A9==T8,
B9==U8,
!,
( var(C) ->
true
;
remove_constraint_internal(C,D9,E9),
( E9==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(D9,C)
;
true
)
),
known(B)
)
;
E=(F9=<G9),
'chr via_2'(F9,G9,I9),
get_attr(I9,guard_entailment,J9),
J9=v(L9,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,K9,_),
L9/\16777216=:=16777216,
'chr sbag_member'(H9,K9),
H9=suspension(_,O9,_,_,_,_,M9,N9),
O9=mutable(active),
M9==F9,
N9==G9,
!,
( var(C) ->
true
;
remove_constraint_internal(C,P9,Q9),
( Q9==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(P9,C)
;
true
)
),
known(B)
)
;
E=(R9=:=S9),
'chr via_2'(R9,S9,U9),
get_attr(U9,guard_entailment,V9),
V9=v(X9,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,W9),
X9/\33554432=:=33554432,
'chr sbag_member'(T9,W9),
T9=suspension(_,A10,_,_,_,_,Y9,Z9),
A10=mutable(active),
Y9==R9,
Z9==S9,
!,
( var(C) ->
true
;
remove_constraint_internal(C,B10,C10),
( C10==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(B10,C)
;
true
)
),
known(B)
)
;
E==fail,
nb_getval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',E10),
'chr sbag_member'(D10,E10),
D10=suspension(_,F10,_,_,_,_),
F10=mutable(active),
!,
( var(C) ->
true
;
remove_constraint_internal(C,G10,H10),
( H10==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(G10,C)
;
true
)
),
known(B)
)
;
'chr via_1'(E,J10),
get_attr(J10,guard_entailment,K10),
K10=v(M10,_,L10,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
M10/\2=:=2,
'chr sbag_member'(I10,L10),
I10=suspension(_,O10,_,_,_,_,N10),
O10=mutable(active),
N10==E,
!,
( var(C) ->
true
;
remove_constraint_internal(C,P10,Q10),
( Q10==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(P10,C)
;
true
)
),
known(B)
).
'known/1_1_$special_;/2/2__3'(A,B,C) :-
'chr via_1'(A,E),
get_attr(E,guard_entailment,F),
F=v(H,_,_,_,_,_,_,_,_,_,_,_,_,_,G,_,_,_,_,_,_,_,_,_,_,_,_),
H/\8192=:=8192,
'chr sbag_member'(D,G),
D=suspension(_,J,_,_,_,_,I),
J=mutable(active),
I==A,
!,
( var(C) ->
true
;
remove_constraint_internal(C,K,L),
( L==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(K,C)
;
true
)
),
known(B).
'known/1_1_$special_;/2/2__3'(A,B,C) :-
nonvar(A),
A=(D,_),
'chr via_1'(D,F),
get_attr(F,guard_entailment,G),
G=v(I,_,_,_,_,_,_,_,_,_,_,_,_,_,H,_,_,_,_,_,_,_,_,_,_,_,_),
I/\8192=:=8192,
'chr sbag_member'(E,H),
E=suspension(_,K,_,_,_,_,J),
K=mutable(active),
J==D,
!,
( var(C) ->
true
;
remove_constraint_internal(C,L,M),
( M==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(L,C)
;
true
)
),
known(B).
'known/1_1_$special_;/2/2__3'(A,B,C) :-
A==fail,
!,
( var(C) ->
true
;
remove_constraint_internal(C,D,E),
( E==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(D,C)
;
true
)
),
known(B).
'known/1_1_$special_;/2/2__3'(A,B,C) :-
B==fail,
!,
( var(C) ->
true
;
remove_constraint_internal(C,D,E),
( E==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(D,C)
;
true
)
),
known(A).
'known/1_1_$special_;/2/2__3'(A,_,B) :-
A==true,
!,
( var(B) ->
true
;
remove_constraint_internal(B,C,D),
( D==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(B),
'detach_known/1_1_$special_;/2/2'(C,B)
;
true
)
).
'known/1_1_$special_;/2/2__3'(_,A,B) :-
A==true,
!,
( var(B) ->
true
;
remove_constraint_internal(B,C,D),
( D==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(B),
'detach_known/1_1_$special_;/2/2'(C,B)
;
true
)
).
'known/1_1_$special_;/2/2__3'(A,B,C) :-
nonvar(A),
A=(\+D),
nonvar(D),
D=functor(E,F,G),
(
(
'chr via_1'(E,I),
get_attr(I,guard_entailment,J),
J=v(L,_,_,_,_,_,_,_,_,_,_,_,_,_,_,K,_,_,_,_,_,_,_,_,_,_,_),
L/\16384=:=16384,
'chr sbag_member'(H,K),
H=suspension(_,N,_,_,_,_,M,_,_),
N=mutable(active),
M==E,
!,
( var(C) ->
true
;
remove_constraint_internal(C,O,P),
( P==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(O,C)
;
true
)
)
;
nonvar(E),
'chr lock'(E),
'chr lock'(F),
'chr lock'(G),
functor(E,F,G),
'chr unlock'(E),
'chr unlock'(F),
'chr unlock'(G),
!,
( var(C) ->
true
;
remove_constraint_internal(C,Q,R),
( R==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(Q,C)
;
true
)
),
known(B)
)
;
nonvar(E),
'chr lock'(E),
'chr lock'(F),
'chr lock'(G),
\+functor(E,F,G),
'chr unlock'(E),
'chr unlock'(F),
'chr unlock'(G),
!,
( var(C) ->
true
;
remove_constraint_internal(C,S,T),
( T==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(S,C)
;
true
)
)
).
'known/1_1_$special_;/2/2__3'(_,_,A) :-
activate_constraint(C,B,A,_),
( C==yes ->
'$insert_in_store_known/1_1_$special_;/2/2'(A),
'attach_known/1_1_$special_;/2/2'(B,A)
;
true
).
'known/1_1_$special_nonvar/1'(A) :-
'known/1_1_$special_nonvar/1/1__0'(A,_).
'known/1_1_$special_nonvar/1/1__0'(A,B) :-
'chr via_1'(A,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,_,F,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
G/\8=:=8,
(
'chr sbag_member'(C,F),
C=suspension(_,I,_,_,_,_,H),
I=mutable(active),
H==A,
!,
( var(B) ->
true
;
remove_constraint_internal(B,J,K),
( K==yes ->
'$delete_from_store_known/1_1_$special_nonvar/1/1'(B),
'detach_known/1_1_$special_nonvar/1/1'(J,B)
;
true
)
)
;
!,
( var(B) ->
allocate_constraint(guard_entailment:'known/1_1_$special_nonvar/1/1__0'(A,B),B,'known/1_1_$special_nonvar/1'(A),[A])
;
true
),
'known/1_1_$special_nonvar/1/1__0__0'(F,A,B)
).
'known/1_1_$special_nonvar/1/1__0__0'([],A,B) :-
'known/1_1_$special_nonvar/1/1__1'(A,B).
'known/1_1_$special_nonvar/1/1__0__0'([C|D],A,B) :-
( C=suspension(_,F,_,_,_,_,E),
F=mutable(active),
E==A ->
remove_constraint_internal(C,G,H),
( H==yes ->
'$delete_from_store_known/1_1_$special_nonvar/1/1'(C),
'detach_known/1_1_$special_nonvar/1/1'(G,C)
;
true
),
'known/1_1_$special_nonvar/1/1__0__0'(D,A,B)
;
'known/1_1_$special_nonvar/1/1__0__0'(D,A,B)
).
'known/1_1_$special_nonvar/1/1__0'(A,B) :-
( var(B) ->
allocate_constraint(guard_entailment:'known/1_1_$special_nonvar/1/1__0'(A,B),B,'known/1_1_$special_nonvar/1'(A),[A])
;
true
),
'known/1_1_$special_nonvar/1/1__1'(A,B).
'known/1_1_$special_nonvar/1/1__1'(_,A) :-
nb_getval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',C),
'chr sbag_member'(B,C),
B=suspension(_,D,_,_,_,_),
D=mutable(active),
!,
( var(A) ->
true
;
remove_constraint_internal(A,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_nonvar/1/1'(A),
'detach_known/1_1_$special_nonvar/1/1'(E,A)
;
true
)
).
'known/1_1_$special_nonvar/1/1__1'(A,B) :-
'chr via_1'(A,D),
get_attr(D,guard_entailment,E),
E=v(I,_,_,F,_,G,_,_,_,_,_,_,_,_,H,_,_,_,_,_,_,_,_,_,_,_,_),
(
(
I/\8192=:=8192,
'chr sbag_member'(C,H),
C=suspension(_,L,_,_,_,_,J),
L=mutable(active),
nonvar(J),
J=nonvar(K),
K==A,
!,
remove_constraint_internal(C,M,N),
( N==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(C),
'detach_known/1_1_$special_\\+/1/1'(M,C)
;
true
),
( var(B) ->
true
;
remove_constraint_internal(B,O,P),
( P==yes ->
'$delete_from_store_known/1_1_$special_nonvar/1/1'(B),
'detach_known/1_1_$special_nonvar/1/1'(O,B)
;
true
)
),
'known/1_1_$special_fail/0'
;
I/\16=:=16,
'chr sbag_member'(Q,G),
Q=suspension(_,S,_,_,_,_,R),
S=mutable(active),
R==A,
!,
remove_constraint_internal(Q,T,U),
( U==yes ->
'$delete_from_store_known/1_1_$special_var/1/1'(Q),
'detach_known/1_1_$special_var/1/1'(T,Q)
;
true
),
( var(B) ->
true
;
remove_constraint_internal(B,V,W),
( W==yes ->
'$delete_from_store_known/1_1_$special_nonvar/1/1'(B),
'detach_known/1_1_$special_nonvar/1/1'(V,B)
;
true
)
),
'known/1_1_$special_fail/0'
)
;
I/\4=:=4,
!,
'known/1_1_$special_nonvar/1/1__1__0'(F,A,B)
).
'known/1_1_$special_nonvar/1/1__1__0'([],A,B) :-
'known/1_1_$special_nonvar/1/1__2'(A,B).
'known/1_1_$special_nonvar/1/1__1__0'([C|D],A,B) :-
( C=suspension(_,I,_,_,_,_,E,F),
I=mutable(active),
nonvar(E),
E=(\+G),
nonvar(G),
G=nonvar(H),
H==A ->
remove_constraint_internal(C,J,K),
( K==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(J,C)
;
true
),
activate_constraint(M,L,B,N),
( M==yes ->
'$insert_in_store_known/1_1_$special_nonvar/1/1'(B),
'attach_known/1_1_$special_nonvar/1/1'(L,B)
;
true
),
known(F),
( B=suspension(_,O,_,P,_,_,_),
O=mutable(active),
P=mutable(N) ->
'chr update_mutable'(inactive,O),
'known/1_1_$special_nonvar/1/1__1__0'(D,A,B)
;
true
)
;
'known/1_1_$special_nonvar/1/1__1__0'(D,A,B)
).
'known/1_1_$special_nonvar/1/1__1'(A,B) :-
'known/1_1_$special_nonvar/1/1__2'(A,B).
'known/1_1_$special_nonvar/1/1__2'(A,B) :-
'chr via_1'(A,C),
get_attr(C,guard_entailment,D),
D=v(F,_,_,E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
F/\4=:=4,
!,
'known/1_1_$special_nonvar/1/1__2__0'(E,A,B).
'known/1_1_$special_nonvar/1/1__2__0'([],A,B) :-
'known/1_1_$special_nonvar/1/1__3'(A,B).
'known/1_1_$special_nonvar/1/1__2__0'([C|D],A,B) :-
( C=suspension(_,J,_,_,_,_,E,F),
J=mutable(active),
nonvar(E),
E=(G,_),
nonvar(G),
G=(\+H),
nonvar(H),
H=nonvar(I),
I==A ->
remove_constraint_internal(C,K,L),
( L==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(K,C)
;
true
),
activate_constraint(N,M,B,O),
( N==yes ->
'$insert_in_store_known/1_1_$special_nonvar/1/1'(B),
'attach_known/1_1_$special_nonvar/1/1'(M,B)
;
true
),
known(F),
( B=suspension(_,P,_,Q,_,_,_),
P=mutable(active),
Q=mutable(O) ->
'chr update_mutable'(inactive,P),
'known/1_1_$special_nonvar/1/1__2__0'(D,A,B)
;
true
)
;
'known/1_1_$special_nonvar/1/1__2__0'(D,A,B)
).
'known/1_1_$special_nonvar/1/1__2'(A,B) :-
'known/1_1_$special_nonvar/1/1__3'(A,B).
'known/1_1_$special_nonvar/1/1__3'(_,A) :-
activate_constraint(C,B,A,_),
( C==yes ->
'$insert_in_store_known/1_1_$special_nonvar/1/1'(A),
'attach_known/1_1_$special_nonvar/1/1'(B,A)
;
true
).
'known/1_1_$special_var/1'(A) :-
'known/1_1_$special_var/1/1__0'(A,_).
'known/1_1_$special_var/1/1__0'(A,B) :-
'chr via_1'(A,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,_,_,F,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
G/\16=:=16,
(
'chr sbag_member'(C,F),
C=suspension(_,I,_,_,_,_,H),
I=mutable(active),
H==A,
!,
( var(B) ->
true
;
remove_constraint_internal(B,J,K),
( K==yes ->
'$delete_from_store_known/1_1_$special_var/1/1'(B),
'detach_known/1_1_$special_var/1/1'(J,B)
;
true
)
)
;
!,
( var(B) ->
allocate_constraint(guard_entailment:'known/1_1_$special_var/1/1__0'(A,B),B,'known/1_1_$special_var/1'(A),[A])
;
true
),
'known/1_1_$special_var/1/1__0__0'(F,A,B)
).
'known/1_1_$special_var/1/1__0__0'([],A,B) :-
'known/1_1_$special_var/1/1__1'(A,B).
'known/1_1_$special_var/1/1__0__0'([C|D],A,B) :-
( C=suspension(_,F,_,_,_,_,E),
F=mutable(active),
E==A ->
remove_constraint_internal(C,G,H),
( H==yes ->
'$delete_from_store_known/1_1_$special_var/1/1'(C),
'detach_known/1_1_$special_var/1/1'(G,C)
;
true
),
'known/1_1_$special_var/1/1__0__0'(D,A,B)
;
'known/1_1_$special_var/1/1__0__0'(D,A,B)
).
'known/1_1_$special_var/1/1__0'(A,B) :-
( var(B) ->
allocate_constraint(guard_entailment:'known/1_1_$special_var/1/1__0'(A,B),B,'known/1_1_$special_var/1'(A),[A])
;
true
),
'known/1_1_$special_var/1/1__1'(A,B).
'known/1_1_$special_var/1/1__1'(_,A) :-
nb_getval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',C),
'chr sbag_member'(B,C),
B=suspension(_,D,_,_,_,_),
D=mutable(active),
!,
( var(A) ->
true
;
remove_constraint_internal(A,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_var/1/1'(A),
'detach_known/1_1_$special_var/1/1'(E,A)
;
true
)
).
'known/1_1_$special_var/1/1__1'(A,B) :-
'chr via_1'(A,D),
get_attr(D,guard_entailment,E),
E=v(I,_,_,F,G,_,_,_,_,_,_,_,_,_,H,_,_,_,_,_,_,_,_,_,_,_,_),
(
(
I/\8192=:=8192,
'chr sbag_member'(C,H),
C=suspension(_,L,_,_,_,_,J),
L=mutable(active),
nonvar(J),
J=var(K),
K==A,
!,
remove_constraint_internal(C,M,N),
( N==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(C),
'detach_known/1_1_$special_\\+/1/1'(M,C)
;
true
),
( var(B) ->
true
;
remove_constraint_internal(B,O,P),
( P==yes ->
'$delete_from_store_known/1_1_$special_var/1/1'(B),
'detach_known/1_1_$special_var/1/1'(O,B)
;
true
)
),
'known/1_1_$special_fail/0'
;
I/\8=:=8,
'chr sbag_member'(Q,G),
Q=suspension(_,S,_,_,_,_,R),
S=mutable(active),
R==A,
!,
remove_constraint_internal(Q,T,U),
( U==yes ->
'$delete_from_store_known/1_1_$special_nonvar/1/1'(Q),
'detach_known/1_1_$special_nonvar/1/1'(T,Q)
;
true
),
( var(B) ->
true
;
remove_constraint_internal(B,V,W),
( W==yes ->
'$delete_from_store_known/1_1_$special_var/1/1'(B),
'detach_known/1_1_$special_var/1/1'(V,B)
;
true
)
),
'known/1_1_$special_fail/0'
)
;
I/\4=:=4,
!,
'known/1_1_$special_var/1/1__1__0'(F,A,B)
).
'known/1_1_$special_var/1/1__1__0'([],A,B) :-
'known/1_1_$special_var/1/1__2'(A,B).
'known/1_1_$special_var/1/1__1__0'([C|D],A,B) :-
( C=suspension(_,I,_,_,_,_,E,F),
I=mutable(active),
nonvar(E),
E=(\+G),
nonvar(G),
G=var(H),
H==A ->
remove_constraint_internal(C,J,K),
( K==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(J,C)
;
true
),
activate_constraint(M,L,B,N),
( M==yes ->
'$insert_in_store_known/1_1_$special_var/1/1'(B),
'attach_known/1_1_$special_var/1/1'(L,B)
;
true
),
known(F),
( B=suspension(_,O,_,P,_,_,_),
O=mutable(active),
P=mutable(N) ->
'chr update_mutable'(inactive,O),
'known/1_1_$special_var/1/1__1__0'(D,A,B)
;
true
)
;
'known/1_1_$special_var/1/1__1__0'(D,A,B)
).
'known/1_1_$special_var/1/1__1'(A,B) :-
'known/1_1_$special_var/1/1__2'(A,B).
'known/1_1_$special_var/1/1__2'(A,B) :-
'chr via_1'(A,C),
get_attr(C,guard_entailment,D),
D=v(F,_,_,E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
F/\4=:=4,
!,
'known/1_1_$special_var/1/1__2__0'(E,A,B).
'known/1_1_$special_var/1/1__2__0'([],A,B) :-
'known/1_1_$special_var/1/1__3'(A,B).
'known/1_1_$special_var/1/1__2__0'([C|D],A,B) :-
( C=suspension(_,J,_,_,_,_,E,F),
J=mutable(active),
nonvar(E),
E=(G,_),
nonvar(G),
G=(\+H),
nonvar(H),
H=var(I),
I==A ->
remove_constraint_internal(C,K,L),
( L==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(K,C)
;
true
),
activate_constraint(N,M,B,O),
( N==yes ->
'$insert_in_store_known/1_1_$special_var/1/1'(B),
'attach_known/1_1_$special_var/1/1'(M,B)
;
true
),
known(F),
( B=suspension(_,P,_,Q,_,_,_),
P=mutable(active),
Q=mutable(O) ->
'chr update_mutable'(inactive,P),
'known/1_1_$special_var/1/1__2__0'(D,A,B)
;
true
)
;
'known/1_1_$special_var/1/1__2__0'(D,A,B)
).
'known/1_1_$special_var/1/1__2'(A,B) :-
'known/1_1_$special_var/1/1__3'(A,B).
'known/1_1_$special_var/1/1__3'(_,A) :-
activate_constraint(C,B,A,_),
( C==yes ->
'$insert_in_store_known/1_1_$special_var/1/1'(A),
'attach_known/1_1_$special_var/1/1'(B,A)
;
true
).
'known/1_1_$special_atom/1'(A) :-
'known/1_1_$special_atom/1/1__0'(A,_).
'known/1_1_$special_atom/1/1__0'(A,B) :-
'chr via_1'(A,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,_,_,_,F,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
G/\32=:=32,
(
'chr sbag_member'(C,F),
C=suspension(_,I,_,_,_,_,H),
I=mutable(active),
H==A,
!,
( var(B) ->
true
;
remove_constraint_internal(B,J,K),
( K==yes ->
'$delete_from_store_known/1_1_$special_atom/1/1'(B),
'detach_known/1_1_$special_atom/1/1'(J,B)
;
true
)
)
;
!,
( var(B) ->
allocate_constraint(guard_entailment:'known/1_1_$special_atom/1/1__0'(A,B),B,'known/1_1_$special_atom/1'(A),[A])
;
true
),
'known/1_1_$special_atom/1/1__0__0'(F,A,B)
).
'known/1_1_$special_atom/1/1__0__0'([],A,B) :-
'known/1_1_$special_atom/1/1__1'(A,B).
'known/1_1_$special_atom/1/1__0__0'([C|D],A,B) :-
( C=suspension(_,F,_,_,_,_,E),
F=mutable(active),
E==A ->
remove_constraint_internal(C,G,H),
( H==yes ->
'$delete_from_store_known/1_1_$special_atom/1/1'(C),
'detach_known/1_1_$special_atom/1/1'(G,C)
;
true
),
'known/1_1_$special_atom/1/1__0__0'(D,A,B)
;
'known/1_1_$special_atom/1/1__0__0'(D,A,B)
).
'known/1_1_$special_atom/1/1__0'(A,B) :-
( var(B) ->
allocate_constraint(guard_entailment:'known/1_1_$special_atom/1/1__0'(A,B),B,'known/1_1_$special_atom/1'(A),[A])
;
true
),
'known/1_1_$special_atom/1/1__1'(A,B).
'known/1_1_$special_atom/1/1__1'(_,A) :-
nb_getval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',C),
'chr sbag_member'(B,C),
B=suspension(_,D,_,_,_,_),
D=mutable(active),
!,
( var(A) ->
true
;
remove_constraint_internal(A,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_atom/1/1'(A),
'detach_known/1_1_$special_atom/1/1'(E,A)
;
true
)
).
'known/1_1_$special_atom/1/1__1'(A,B) :-
'chr via_1'(A,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,_,_,_,_,_,_,_,_,_,_,_,F,_,_,_,_,_,_,_,_,_,_,_,_),
G/\8192=:=8192,
'chr sbag_member'(C,F),
C=suspension(_,J,_,_,_,_,H),
J=mutable(active),
nonvar(H),
H=atom(I),
I==A,
!,
remove_constraint_internal(C,K,L),
( L==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(C),
'detach_known/1_1_$special_\\+/1/1'(K,C)
;
true
),
( var(B) ->
true
;
remove_constraint_internal(B,M,N),
( N==yes ->
'$delete_from_store_known/1_1_$special_atom/1/1'(B),
'detach_known/1_1_$special_atom/1/1'(M,B)
;
true
)
),
'known/1_1_$special_fail/0'.
'known/1_1_$special_atom/1/1__1'(A,B) :-
'chr novel_production'(B,239),
!,
'chr extend_history'(B,239),
activate_constraint(D,C,B,E),
( D==yes ->
'$insert_in_store_known/1_1_$special_atom/1/1'(B),
'attach_known/1_1_$special_atom/1/1'(C,B)
;
true
),
'known/1_1_$special_nonvar/1'(A),
( B=suspension(_,F,_,G,_,_,_),
F=mutable(active),
G=mutable(E) ->
'chr update_mutable'(inactive,F),
'known/1_1_$special_atom/1/1__2'(A,B)
;
true
).
'known/1_1_$special_atom/1/1__1'(A,B) :-
'known/1_1_$special_atom/1/1__2'(A,B).
'known/1_1_$special_atom/1/1__2'(A,B) :-
'chr via_1'(A,C),
get_attr(C,guard_entailment,D),
D=v(F,_,_,E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
F/\4=:=4,
!,
'known/1_1_$special_atom/1/1__2__0'(E,A,B).
'known/1_1_$special_atom/1/1__2__0'([],A,B) :-
'known/1_1_$special_atom/1/1__3'(A,B).
'known/1_1_$special_atom/1/1__2__0'([C|D],A,B) :-
( C=suspension(_,I,_,_,_,_,E,F),
I=mutable(active),
nonvar(E),
E=(\+G),
nonvar(G),
G=atom(H),
H==A ->
remove_constraint_internal(C,J,K),
( K==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(J,C)
;
true
),
activate_constraint(M,L,B,N),
( M==yes ->
'$insert_in_store_known/1_1_$special_atom/1/1'(B),
'attach_known/1_1_$special_atom/1/1'(L,B)
;
true
),
known(F),
( B=suspension(_,O,_,P,_,_,_),
O=mutable(active),
P=mutable(N) ->
'chr update_mutable'(inactive,O),
'known/1_1_$special_atom/1/1__2__0'(D,A,B)
;
true
)
;
'known/1_1_$special_atom/1/1__2__0'(D,A,B)
).
'known/1_1_$special_atom/1/1__2'(A,B) :-
'known/1_1_$special_atom/1/1__3'(A,B).
'known/1_1_$special_atom/1/1__3'(A,B) :-
'chr via_1'(A,C),
get_attr(C,guard_entailment,D),
D=v(F,_,_,E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
F/\4=:=4,
!,
'known/1_1_$special_atom/1/1__3__0'(E,A,B).
'known/1_1_$special_atom/1/1__3__0'([],A,B) :-
'known/1_1_$special_atom/1/1__4'(A,B).
'known/1_1_$special_atom/1/1__3__0'([C|D],A,B) :-
( C=suspension(_,J,_,_,_,_,E,F),
J=mutable(active),
nonvar(E),
E=(G,_),
nonvar(G),
G=(\+H),
nonvar(H),
H=atom(I),
I==A ->
remove_constraint_internal(C,K,L),
( L==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(K,C)
;
true
),
activate_constraint(N,M,B,O),
( N==yes ->
'$insert_in_store_known/1_1_$special_atom/1/1'(B),
'attach_known/1_1_$special_atom/1/1'(M,B)
;
true
),
known(F),
( B=suspension(_,P,_,Q,_,_,_),
P=mutable(active),
Q=mutable(O) ->
'chr update_mutable'(inactive,P),
'known/1_1_$special_atom/1/1__3__0'(D,A,B)
;
true
)
;
'known/1_1_$special_atom/1/1__3__0'(D,A,B)
).
'known/1_1_$special_atom/1/1__3'(A,B) :-
'known/1_1_$special_atom/1/1__4'(A,B).
'known/1_1_$special_atom/1/1__4'(_,A) :-
activate_constraint(C,B,A,_),
( C==yes ->
'$insert_in_store_known/1_1_$special_atom/1/1'(A),
'attach_known/1_1_$special_atom/1/1'(B,A)
;
true
).
'known/1_1_$special_atomic/1'(A) :-
'known/1_1_$special_atomic/1/1__0'(A,_).
'known/1_1_$special_atomic/1/1__0'(A,B) :-
'chr via_1'(A,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,_,_,_,_,F,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
G/\64=:=64,
(
'chr sbag_member'(C,F),
C=suspension(_,I,_,_,_,_,H),
I=mutable(active),
H==A,
!,
( var(B) ->
true
;
remove_constraint_internal(B,J,K),
( K==yes ->
'$delete_from_store_known/1_1_$special_atomic/1/1'(B),
'detach_known/1_1_$special_atomic/1/1'(J,B)
;
true
)
)
;
!,
( var(B) ->
allocate_constraint(guard_entailment:'known/1_1_$special_atomic/1/1__0'(A,B),B,'known/1_1_$special_atomic/1'(A),[A])
;
true
),
'known/1_1_$special_atomic/1/1__0__0'(F,A,B)
).
'known/1_1_$special_atomic/1/1__0__0'([],A,B) :-
'known/1_1_$special_atomic/1/1__1'(A,B).
'known/1_1_$special_atomic/1/1__0__0'([C|D],A,B) :-
( C=suspension(_,F,_,_,_,_,E),
F=mutable(active),
E==A ->
remove_constraint_internal(C,G,H),
( H==yes ->
'$delete_from_store_known/1_1_$special_atomic/1/1'(C),
'detach_known/1_1_$special_atomic/1/1'(G,C)
;
true
),
'known/1_1_$special_atomic/1/1__0__0'(D,A,B)
;
'known/1_1_$special_atomic/1/1__0__0'(D,A,B)
).
'known/1_1_$special_atomic/1/1__0'(A,B) :-
( var(B) ->
allocate_constraint(guard_entailment:'known/1_1_$special_atomic/1/1__0'(A,B),B,'known/1_1_$special_atomic/1'(A),[A])
;
true
),
'known/1_1_$special_atomic/1/1__1'(A,B).
'known/1_1_$special_atomic/1/1__1'(_,A) :-
nb_getval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',C),
'chr sbag_member'(B,C),
B=suspension(_,D,_,_,_,_),
D=mutable(active),
!,
( var(A) ->
true
;
remove_constraint_internal(A,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_atomic/1/1'(A),
'detach_known/1_1_$special_atomic/1/1'(E,A)
;
true
)
).
'known/1_1_$special_atomic/1/1__1'(A,B) :-
'chr via_1'(A,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,_,_,_,_,_,_,_,_,_,_,_,F,_,_,_,_,_,_,_,_,_,_,_,_),
G/\8192=:=8192,
'chr sbag_member'(C,F),
C=suspension(_,J,_,_,_,_,H),
J=mutable(active),
nonvar(H),
H=atomic(I),
I==A,
!,
remove_constraint_internal(C,K,L),
( L==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(C),
'detach_known/1_1_$special_\\+/1/1'(K,C)
;
true
),
( var(B) ->
true
;
remove_constraint_internal(B,M,N),
( N==yes ->
'$delete_from_store_known/1_1_$special_atomic/1/1'(B),
'detach_known/1_1_$special_atomic/1/1'(M,B)
;
true
)
),
'known/1_1_$special_fail/0'.
'known/1_1_$special_atomic/1/1__1'(A,B) :-
'chr novel_production'(B,237),
!,
'chr extend_history'(B,237),
activate_constraint(D,C,B,E),
( D==yes ->
'$insert_in_store_known/1_1_$special_atomic/1/1'(B),
'attach_known/1_1_$special_atomic/1/1'(C,B)
;
true
),
'known/1_1_$special_nonvar/1'(A),
( B=suspension(_,F,_,G,_,_,_),
F=mutable(active),
G=mutable(E) ->
'chr update_mutable'(inactive,F),
'known/1_1_$special_atomic/1/1__2'(A,B)
;
true
).
'known/1_1_$special_atomic/1/1__1'(A,B) :-
'known/1_1_$special_atomic/1/1__2'(A,B).
'known/1_1_$special_atomic/1/1__2'(A,B) :-
'chr via_1'(A,C),
get_attr(C,guard_entailment,D),
D=v(F,_,_,E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
F/\4=:=4,
!,
'known/1_1_$special_atomic/1/1__2__0'(E,A,B).
'known/1_1_$special_atomic/1/1__2__0'([],A,B) :-
'known/1_1_$special_atomic/1/1__3'(A,B).
'known/1_1_$special_atomic/1/1__2__0'([C|D],A,B) :-
( C=suspension(_,I,_,_,_,_,E,F),
I=mutable(active),
nonvar(E),
E=(\+G),
nonvar(G),
G=atomic(H),
H==A ->
remove_constraint_internal(C,J,K),
( K==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(J,C)
;
true
),
activate_constraint(M,L,B,N),
( M==yes ->
'$insert_in_store_known/1_1_$special_atomic/1/1'(B),
'attach_known/1_1_$special_atomic/1/1'(L,B)
;
true
),
known(F),
( B=suspension(_,O,_,P,_,_,_),
O=mutable(active),
P=mutable(N) ->
'chr update_mutable'(inactive,O),
'known/1_1_$special_atomic/1/1__2__0'(D,A,B)
;
true
)
;
'known/1_1_$special_atomic/1/1__2__0'(D,A,B)
).
'known/1_1_$special_atomic/1/1__2'(A,B) :-
'known/1_1_$special_atomic/1/1__3'(A,B).
'known/1_1_$special_atomic/1/1__3'(A,B) :-
'chr via_1'(A,C),
get_attr(C,guard_entailment,D),
D=v(F,_,_,E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
F/\4=:=4,
!,
'known/1_1_$special_atomic/1/1__3__0'(E,A,B).
'known/1_1_$special_atomic/1/1__3__0'([],A,B) :-
'known/1_1_$special_atomic/1/1__4'(A,B).
'known/1_1_$special_atomic/1/1__3__0'([C|D],A,B) :-
( C=suspension(_,J,_,_,_,_,E,F),
J=mutable(active),
nonvar(E),
E=(G,_),
nonvar(G),
G=(\+H),
nonvar(H),
H=atomic(I),
I==A ->
remove_constraint_internal(C,K,L),
( L==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(K,C)
;
true
),
activate_constraint(N,M,B,O),
( N==yes ->
'$insert_in_store_known/1_1_$special_atomic/1/1'(B),
'attach_known/1_1_$special_atomic/1/1'(M,B)
;
true
),
known(F),
( B=suspension(_,P,_,Q,_,_,_),
P=mutable(active),
Q=mutable(O) ->
'chr update_mutable'(inactive,P),
'known/1_1_$special_atomic/1/1__3__0'(D,A,B)
;
true
)
;
'known/1_1_$special_atomic/1/1__3__0'(D,A,B)
).
'known/1_1_$special_atomic/1/1__3'(A,B) :-
'known/1_1_$special_atomic/1/1__4'(A,B).
'known/1_1_$special_atomic/1/1__4'(_,A) :-
activate_constraint(C,B,A,_),
( C==yes ->
'$insert_in_store_known/1_1_$special_atomic/1/1'(A),
'attach_known/1_1_$special_atomic/1/1'(B,A)
;
true
).
'known/1_1_$special_compound/1'(A) :-
'known/1_1_$special_compound/1/1__0'(A,_).
'known/1_1_$special_compound/1/1__0'(A,B) :-
'chr via_1'(A,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,_,_,_,_,_,F,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
G/\128=:=128,
(
'chr sbag_member'(C,F),
C=suspension(_,I,_,_,_,_,H),
I=mutable(active),
H==A,
!,
( var(B) ->
true
;
remove_constraint_internal(B,J,K),
( K==yes ->
'$delete_from_store_known/1_1_$special_compound/1/1'(B),
'detach_known/1_1_$special_compound/1/1'(J,B)
;
true
)
)
;
!,
( var(B) ->
allocate_constraint(guard_entailment:'known/1_1_$special_compound/1/1__0'(A,B),B,'known/1_1_$special_compound/1'(A),[A])
;
true
),
'known/1_1_$special_compound/1/1__0__0'(F,A,B)
).
'known/1_1_$special_compound/1/1__0__0'([],A,B) :-
'known/1_1_$special_compound/1/1__1'(A,B).
'known/1_1_$special_compound/1/1__0__0'([C|D],A,B) :-
( C=suspension(_,F,_,_,_,_,E),
F=mutable(active),
E==A ->
remove_constraint_internal(C,G,H),
( H==yes ->
'$delete_from_store_known/1_1_$special_compound/1/1'(C),
'detach_known/1_1_$special_compound/1/1'(G,C)
;
true
),
'known/1_1_$special_compound/1/1__0__0'(D,A,B)
;
'known/1_1_$special_compound/1/1__0__0'(D,A,B)
).
'known/1_1_$special_compound/1/1__0'(A,B) :-
( var(B) ->
allocate_constraint(guard_entailment:'known/1_1_$special_compound/1/1__0'(A,B),B,'known/1_1_$special_compound/1'(A),[A])
;
true
),
'known/1_1_$special_compound/1/1__1'(A,B).
'known/1_1_$special_compound/1/1__1'(_,A) :-
nb_getval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',C),
'chr sbag_member'(B,C),
B=suspension(_,D,_,_,_,_),
D=mutable(active),
!,
( var(A) ->
true
;
remove_constraint_internal(A,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_compound/1/1'(A),
'detach_known/1_1_$special_compound/1/1'(E,A)
;
true
)
).
'known/1_1_$special_compound/1/1__1'(A,B) :-
'chr via_1'(A,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,_,_,_,_,_,_,_,_,_,_,_,F,_,_,_,_,_,_,_,_,_,_,_,_),
G/\8192=:=8192,
'chr sbag_member'(C,F),
C=suspension(_,J,_,_,_,_,H),
J=mutable(active),
nonvar(H),
H=compound(I),
I==A,
!,
remove_constraint_internal(C,K,L),
( L==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(C),
'detach_known/1_1_$special_\\+/1/1'(K,C)
;
true
),
( var(B) ->
true
;
remove_constraint_internal(B,M,N),
( N==yes ->
'$delete_from_store_known/1_1_$special_compound/1/1'(B),
'detach_known/1_1_$special_compound/1/1'(M,B)
;
true
)
),
'known/1_1_$special_fail/0'.
'known/1_1_$special_compound/1/1__1'(A,B) :-
'chr novel_production'(B,236),
!,
'chr extend_history'(B,236),
activate_constraint(D,C,B,E),
( D==yes ->
'$insert_in_store_known/1_1_$special_compound/1/1'(B),
'attach_known/1_1_$special_compound/1/1'(C,B)
;
true
),
'known/1_1_$special_nonvar/1'(A),
( B=suspension(_,F,_,G,_,_,_),
F=mutable(active),
G=mutable(E) ->
'chr update_mutable'(inactive,F),
'known/1_1_$special_compound/1/1__2'(A,B)
;
true
).
'known/1_1_$special_compound/1/1__1'(A,B) :-
'known/1_1_$special_compound/1/1__2'(A,B).
'known/1_1_$special_compound/1/1__2'(A,B) :-
'chr via_1'(A,C),
get_attr(C,guard_entailment,D),
D=v(F,_,_,E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
F/\4=:=4,
!,
'known/1_1_$special_compound/1/1__2__0'(E,A,B).
'known/1_1_$special_compound/1/1__2__0'([],A,B) :-
'known/1_1_$special_compound/1/1__3'(A,B).
'known/1_1_$special_compound/1/1__2__0'([C|D],A,B) :-
( C=suspension(_,I,_,_,_,_,E,F),
I=mutable(active),
nonvar(E),
E=(\+G),
nonvar(G),
G=compound(H),
H==A ->
remove_constraint_internal(C,J,K),
( K==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(J,C)
;
true
),
activate_constraint(M,L,B,N),
( M==yes ->
'$insert_in_store_known/1_1_$special_compound/1/1'(B),
'attach_known/1_1_$special_compound/1/1'(L,B)
;
true
),
known(F),
( B=suspension(_,O,_,P,_,_,_),
O=mutable(active),
P=mutable(N) ->
'chr update_mutable'(inactive,O),
'known/1_1_$special_compound/1/1__2__0'(D,A,B)
;
true
)
;
'known/1_1_$special_compound/1/1__2__0'(D,A,B)
).
'known/1_1_$special_compound/1/1__2'(A,B) :-
'known/1_1_$special_compound/1/1__3'(A,B).
'known/1_1_$special_compound/1/1__3'(A,B) :-
'chr via_1'(A,C),
get_attr(C,guard_entailment,D),
D=v(F,_,_,E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
F/\4=:=4,
!,
'known/1_1_$special_compound/1/1__3__0'(E,A,B).
'known/1_1_$special_compound/1/1__3__0'([],A,B) :-
'known/1_1_$special_compound/1/1__4'(A,B).
'known/1_1_$special_compound/1/1__3__0'([C|D],A,B) :-
( C=suspension(_,J,_,_,_,_,E,F),
J=mutable(active),
nonvar(E),
E=(G,_),
nonvar(G),
G=(\+H),
nonvar(H),
H=compound(I),
I==A ->
remove_constraint_internal(C,K,L),
( L==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(K,C)
;
true
),
activate_constraint(N,M,B,O),
( N==yes ->
'$insert_in_store_known/1_1_$special_compound/1/1'(B),
'attach_known/1_1_$special_compound/1/1'(M,B)
;
true
),
known(F),
( B=suspension(_,P,_,Q,_,_,_),
P=mutable(active),
Q=mutable(O) ->
'chr update_mutable'(inactive,P),
'known/1_1_$special_compound/1/1__3__0'(D,A,B)
;
true
)
;
'known/1_1_$special_compound/1/1__3__0'(D,A,B)
).
'known/1_1_$special_compound/1/1__3'(A,B) :-
'known/1_1_$special_compound/1/1__4'(A,B).
'known/1_1_$special_compound/1/1__4'(_,A) :-
activate_constraint(C,B,A,_),
( C==yes ->
'$insert_in_store_known/1_1_$special_compound/1/1'(A),
'attach_known/1_1_$special_compound/1/1'(B,A)
;
true
).
'known/1_1_$special_ground/1'(A) :-
'known/1_1_$special_ground/1/1__0'(A,_).
'known/1_1_$special_ground/1/1__0'(A,B) :-
'chr via_1'(A,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,_,_,_,_,_,_,F,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
G/\256=:=256,
(
'chr sbag_member'(C,F),
C=suspension(_,I,_,_,_,_,H),
I=mutable(active),
H==A,
!,
( var(B) ->
true
;
remove_constraint_internal(B,J,K),
( K==yes ->
'$delete_from_store_known/1_1_$special_ground/1/1'(B),
'detach_known/1_1_$special_ground/1/1'(J,B)
;
true
)
)
;
!,
( var(B) ->
allocate_constraint(guard_entailment:'known/1_1_$special_ground/1/1__0'(A,B),B,'known/1_1_$special_ground/1'(A),[A])
;
true
),
'known/1_1_$special_ground/1/1__0__0'(F,A,B)
).
'known/1_1_$special_ground/1/1__0__0'([],A,B) :-
'known/1_1_$special_ground/1/1__1'(A,B).
'known/1_1_$special_ground/1/1__0__0'([C|D],A,B) :-
( C=suspension(_,F,_,_,_,_,E),
F=mutable(active),
E==A ->
remove_constraint_internal(C,G,H),
( H==yes ->
'$delete_from_store_known/1_1_$special_ground/1/1'(C),
'detach_known/1_1_$special_ground/1/1'(G,C)
;
true
),
'known/1_1_$special_ground/1/1__0__0'(D,A,B)
;
'known/1_1_$special_ground/1/1__0__0'(D,A,B)
).
'known/1_1_$special_ground/1/1__0'(A,B) :-
( var(B) ->
allocate_constraint(guard_entailment:'known/1_1_$special_ground/1/1__0'(A,B),B,'known/1_1_$special_ground/1'(A),[A])
;
true
),
'known/1_1_$special_ground/1/1__1'(A,B).
'known/1_1_$special_ground/1/1__1'(_,A) :-
nb_getval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',C),
'chr sbag_member'(B,C),
B=suspension(_,D,_,_,_,_),
D=mutable(active),
!,
( var(A) ->
true
;
remove_constraint_internal(A,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_ground/1/1'(A),
'detach_known/1_1_$special_ground/1/1'(E,A)
;
true
)
).
'known/1_1_$special_ground/1/1__1'(A,B) :-
'chr via_1'(A,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,_,_,_,_,_,_,_,_,_,_,_,F,_,_,_,_,_,_,_,_,_,_,_,_),
G/\8192=:=8192,
'chr sbag_member'(C,F),
C=suspension(_,J,_,_,_,_,H),
J=mutable(active),
nonvar(H),
H=ground(I),
I==A,
!,
remove_constraint_internal(C,K,L),
( L==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(C),
'detach_known/1_1_$special_\\+/1/1'(K,C)
;
true
),
( var(B) ->
true
;
remove_constraint_internal(B,M,N),
( N==yes ->
'$delete_from_store_known/1_1_$special_ground/1/1'(B),
'detach_known/1_1_$special_ground/1/1'(M,B)
;
true
)
),
'known/1_1_$special_fail/0'.
'known/1_1_$special_ground/1/1__1'(A,B) :-
'chr novel_production'(B,235),
!,
'chr extend_history'(B,235),
activate_constraint(D,C,B,E),
( D==yes ->
'$insert_in_store_known/1_1_$special_ground/1/1'(B),
'attach_known/1_1_$special_ground/1/1'(C,B)
;
true
),
'known/1_1_$special_nonvar/1'(A),
( B=suspension(_,F,_,G,_,_,_),
F=mutable(active),
G=mutable(E) ->
'chr update_mutable'(inactive,F),
'known/1_1_$special_ground/1/1__2'(A,B)
;
true
).
'known/1_1_$special_ground/1/1__1'(A,B) :-
'known/1_1_$special_ground/1/1__2'(A,B).
'known/1_1_$special_ground/1/1__2'(A,B) :-
'chr via_1'(A,C),
get_attr(C,guard_entailment,D),
D=v(F,_,_,E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
F/\4=:=4,
!,
'known/1_1_$special_ground/1/1__2__0'(E,A,B).
'known/1_1_$special_ground/1/1__2__0'([],A,B) :-
'known/1_1_$special_ground/1/1__3'(A,B).
'known/1_1_$special_ground/1/1__2__0'([C|D],A,B) :-
( C=suspension(_,I,_,_,_,_,E,F),
I=mutable(active),
nonvar(E),
E=(\+G),
nonvar(G),
G=ground(H),
H==A ->
remove_constraint_internal(C,J,K),
( K==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(J,C)
;
true
),
activate_constraint(M,L,B,N),
( M==yes ->
'$insert_in_store_known/1_1_$special_ground/1/1'(B),
'attach_known/1_1_$special_ground/1/1'(L,B)
;
true
),
known(F),
( B=suspension(_,O,_,P,_,_,_),
O=mutable(active),
P=mutable(N) ->
'chr update_mutable'(inactive,O),
'known/1_1_$special_ground/1/1__2__0'(D,A,B)
;
true
)
;
'known/1_1_$special_ground/1/1__2__0'(D,A,B)
).
'known/1_1_$special_ground/1/1__2'(A,B) :-
'known/1_1_$special_ground/1/1__3'(A,B).
'known/1_1_$special_ground/1/1__3'(A,B) :-
'chr via_1'(A,C),
get_attr(C,guard_entailment,D),
D=v(F,_,_,E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
F/\4=:=4,
!,
'known/1_1_$special_ground/1/1__3__0'(E,A,B).
'known/1_1_$special_ground/1/1__3__0'([],A,B) :-
'known/1_1_$special_ground/1/1__4'(A,B).
'known/1_1_$special_ground/1/1__3__0'([C|D],A,B) :-
( C=suspension(_,J,_,_,_,_,E,F),
J=mutable(active),
nonvar(E),
E=(G,_),
nonvar(G),
G=(\+H),
nonvar(H),
H=ground(I),
I==A ->
remove_constraint_internal(C,K,L),
( L==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(K,C)
;
true
),
activate_constraint(N,M,B,O),
( N==yes ->
'$insert_in_store_known/1_1_$special_ground/1/1'(B),
'attach_known/1_1_$special_ground/1/1'(M,B)
;
true
),
known(F),
( B=suspension(_,P,_,Q,_,_,_),
P=mutable(active),
Q=mutable(O) ->
'chr update_mutable'(inactive,P),
'known/1_1_$special_ground/1/1__3__0'(D,A,B)
;
true
)
;
'known/1_1_$special_ground/1/1__3__0'(D,A,B)
).
'known/1_1_$special_ground/1/1__3'(A,B) :-
'known/1_1_$special_ground/1/1__4'(A,B).
'known/1_1_$special_ground/1/1__4'(_,A) :-
activate_constraint(C,B,A,_),
( C==yes ->
'$insert_in_store_known/1_1_$special_ground/1/1'(A),
'attach_known/1_1_$special_ground/1/1'(B,A)
;
true
).
'known/1_1_$special_integer/1'(A) :-
'known/1_1_$special_integer/1/1__0'(A,_).
'known/1_1_$special_integer/1/1__0'(A,B) :-
'chr via_1'(A,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,_,_,_,_,_,_,_,F,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
G/\512=:=512,
(
'chr sbag_member'(C,F),
C=suspension(_,I,_,_,_,_,H),
I=mutable(active),
H==A,
!,
( var(B) ->
true
;
remove_constraint_internal(B,J,K),
( K==yes ->
'$delete_from_store_known/1_1_$special_integer/1/1'(B),
'detach_known/1_1_$special_integer/1/1'(J,B)
;
true
)
)
;
!,
( var(B) ->
allocate_constraint(guard_entailment:'known/1_1_$special_integer/1/1__0'(A,B),B,'known/1_1_$special_integer/1'(A),[A])
;
true
),
'known/1_1_$special_integer/1/1__0__0'(F,A,B)
).
'known/1_1_$special_integer/1/1__0__0'([],A,B) :-
'known/1_1_$special_integer/1/1__1'(A,B).
'known/1_1_$special_integer/1/1__0__0'([C|D],A,B) :-
( C=suspension(_,F,_,_,_,_,E),
F=mutable(active),
E==A ->
remove_constraint_internal(C,G,H),
( H==yes ->
'$delete_from_store_known/1_1_$special_integer/1/1'(C),
'detach_known/1_1_$special_integer/1/1'(G,C)
;
true
),
'known/1_1_$special_integer/1/1__0__0'(D,A,B)
;
'known/1_1_$special_integer/1/1__0__0'(D,A,B)
).
'known/1_1_$special_integer/1/1__0'(A,B) :-
( var(B) ->
allocate_constraint(guard_entailment:'known/1_1_$special_integer/1/1__0'(A,B),B,'known/1_1_$special_integer/1'(A),[A])
;
true
),
'known/1_1_$special_integer/1/1__1'(A,B).
'known/1_1_$special_integer/1/1__1'(_,A) :-
nb_getval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',C),
'chr sbag_member'(B,C),
B=suspension(_,D,_,_,_,_),
D=mutable(active),
!,
( var(A) ->
true
;
remove_constraint_internal(A,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_integer/1/1'(A),
'detach_known/1_1_$special_integer/1/1'(E,A)
;
true
)
).
'known/1_1_$special_integer/1/1__1'(A,B) :-
nonvar(A),
\+integer(A),
!,
( var(B) ->
true
;
remove_constraint_internal(B,C,D),
( D==yes ->
'$delete_from_store_known/1_1_$special_integer/1/1'(B),
'detach_known/1_1_$special_integer/1/1'(C,B)
;
true
)
),
'known/1_1_$special_fail/0'.
'known/1_1_$special_integer/1/1__1'(A,B) :-
'chr novel_production'(B,199),
!,
'chr extend_history'(B,199),
activate_constraint(D,C,B,E),
( D==yes ->
'$insert_in_store_known/1_1_$special_integer/1/1'(B),
'attach_known/1_1_$special_integer/1/1'(C,B)
;
true
),
'known/1_1_$special_number/1'(A),
( B=suspension(_,F,_,G,_,_,_),
F=mutable(active),
G=mutable(E) ->
'chr update_mutable'(inactive,F),
'known/1_1_$special_integer/1/1__2'(A,B)
;
true
).
'known/1_1_$special_integer/1/1__1'(A,B) :-
'known/1_1_$special_integer/1/1__2'(A,B).
'known/1_1_$special_integer/1/1__2'(A,B) :-
'chr via_1'(A,D),
get_attr(D,guard_entailment,E),
E=v(H,_,_,F,_,_,_,_,_,_,_,_,_,_,G,_,_,_,_,_,_,_,_,_,_,_,_),
(
H/\8192=:=8192,
'chr sbag_member'(C,G),
C=suspension(_,K,_,_,_,_,I),
K=mutable(active),
nonvar(I),
I=integer(J),
J==A,
!,
remove_constraint_internal(C,L,M),
( M==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(C),
'detach_known/1_1_$special_\\+/1/1'(L,C)
;
true
),
( var(B) ->
true
;
remove_constraint_internal(B,N,O),
( O==yes ->
'$delete_from_store_known/1_1_$special_integer/1/1'(B),
'detach_known/1_1_$special_integer/1/1'(N,B)
;
true
)
),
'known/1_1_$special_fail/0'
;
H/\4=:=4,
!,
'known/1_1_$special_integer/1/1__2__0'(F,A,B)
).
'known/1_1_$special_integer/1/1__2__0'([],A,B) :-
'known/1_1_$special_integer/1/1__3'(A,B).
'known/1_1_$special_integer/1/1__2__0'([C|D],A,B) :-
( C=suspension(_,I,_,_,_,_,E,F),
I=mutable(active),
nonvar(E),
E=(\+G),
nonvar(G),
G=integer(H),
H==A ->
remove_constraint_internal(C,J,K),
( K==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(J,C)
;
true
),
activate_constraint(M,L,B,N),
( M==yes ->
'$insert_in_store_known/1_1_$special_integer/1/1'(B),
'attach_known/1_1_$special_integer/1/1'(L,B)
;
true
),
known(F),
( B=suspension(_,O,_,P,_,_,_),
O=mutable(active),
P=mutable(N) ->
'chr update_mutable'(inactive,O),
'known/1_1_$special_integer/1/1__2__0'(D,A,B)
;
true
)
;
'known/1_1_$special_integer/1/1__2__0'(D,A,B)
).
'known/1_1_$special_integer/1/1__2'(A,B) :-
'known/1_1_$special_integer/1/1__3'(A,B).
'known/1_1_$special_integer/1/1__3'(A,B) :-
'chr via_1'(A,C),
get_attr(C,guard_entailment,D),
D=v(F,_,_,E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
F/\4=:=4,
!,
'known/1_1_$special_integer/1/1__3__0'(E,A,B).
'known/1_1_$special_integer/1/1__3__0'([],A,B) :-
'known/1_1_$special_integer/1/1__4'(A,B).
'known/1_1_$special_integer/1/1__3__0'([C|D],A,B) :-
( C=suspension(_,J,_,_,_,_,E,F),
J=mutable(active),
nonvar(E),
E=(G,_),
nonvar(G),
G=(\+H),
nonvar(H),
H=integer(I),
I==A ->
remove_constraint_internal(C,K,L),
( L==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(K,C)
;
true
),
activate_constraint(N,M,B,O),
( N==yes ->
'$insert_in_store_known/1_1_$special_integer/1/1'(B),
'attach_known/1_1_$special_integer/1/1'(M,B)
;
true
),
known(F),
( B=suspension(_,P,_,Q,_,_,_),
P=mutable(active),
Q=mutable(O) ->
'chr update_mutable'(inactive,P),
'known/1_1_$special_integer/1/1__3__0'(D,A,B)
;
true
)
;
'known/1_1_$special_integer/1/1__3__0'(D,A,B)
).
'known/1_1_$special_integer/1/1__3'(A,B) :-
'known/1_1_$special_integer/1/1__4'(A,B).
'known/1_1_$special_integer/1/1__4'(_,A) :-
activate_constraint(C,B,A,_),
( C==yes ->
'$insert_in_store_known/1_1_$special_integer/1/1'(A),
'attach_known/1_1_$special_integer/1/1'(B,A)
;
true
).
'known/1_1_$special_float/1'(A) :-
'known/1_1_$special_float/1/1__0'(A,_).
'known/1_1_$special_float/1/1__0'(A,B) :-
'chr via_1'(A,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,_,_,_,_,_,_,_,_,F,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
G/\1024=:=1024,
(
'chr sbag_member'(C,F),
C=suspension(_,I,_,_,_,_,H),
I=mutable(active),
H==A,
!,
( var(B) ->
true
;
remove_constraint_internal(B,J,K),
( K==yes ->
'$delete_from_store_known/1_1_$special_float/1/1'(B),
'detach_known/1_1_$special_float/1/1'(J,B)
;
true
)
)
;
!,
( var(B) ->
allocate_constraint(guard_entailment:'known/1_1_$special_float/1/1__0'(A,B),B,'known/1_1_$special_float/1'(A),[A])
;
true
),
'known/1_1_$special_float/1/1__0__0'(F,A,B)
).
'known/1_1_$special_float/1/1__0__0'([],A,B) :-
'known/1_1_$special_float/1/1__1'(A,B).
'known/1_1_$special_float/1/1__0__0'([C|D],A,B) :-
( C=suspension(_,F,_,_,_,_,E),
F=mutable(active),
E==A ->
remove_constraint_internal(C,G,H),
( H==yes ->
'$delete_from_store_known/1_1_$special_float/1/1'(C),
'detach_known/1_1_$special_float/1/1'(G,C)
;
true
),
'known/1_1_$special_float/1/1__0__0'(D,A,B)
;
'known/1_1_$special_float/1/1__0__0'(D,A,B)
).
'known/1_1_$special_float/1/1__0'(A,B) :-
( var(B) ->
allocate_constraint(guard_entailment:'known/1_1_$special_float/1/1__0'(A,B),B,'known/1_1_$special_float/1'(A),[A])
;
true
),
'known/1_1_$special_float/1/1__1'(A,B).
'known/1_1_$special_float/1/1__1'(_,A) :-
nb_getval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',C),
'chr sbag_member'(B,C),
B=suspension(_,D,_,_,_,_),
D=mutable(active),
!,
( var(A) ->
true
;
remove_constraint_internal(A,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_float/1/1'(A),
'detach_known/1_1_$special_float/1/1'(E,A)
;
true
)
).
'known/1_1_$special_float/1/1__1'(A,B) :-
nonvar(A),
\+float(A),
!,
( var(B) ->
true
;
remove_constraint_internal(B,C,D),
( D==yes ->
'$delete_from_store_known/1_1_$special_float/1/1'(B),
'detach_known/1_1_$special_float/1/1'(C,B)
;
true
)
),
'known/1_1_$special_fail/0'.
'known/1_1_$special_float/1/1__1'(A,B) :-
'chr novel_production'(B,200),
!,
'chr extend_history'(B,200),
activate_constraint(D,C,B,E),
( D==yes ->
'$insert_in_store_known/1_1_$special_float/1/1'(B),
'attach_known/1_1_$special_float/1/1'(C,B)
;
true
),
'known/1_1_$special_number/1'(A),
( B=suspension(_,F,_,G,_,_,_),
F=mutable(active),
G=mutable(E) ->
'chr update_mutable'(inactive,F),
'known/1_1_$special_float/1/1__2'(A,B)
;
true
).
'known/1_1_$special_float/1/1__1'(A,B) :-
'known/1_1_$special_float/1/1__2'(A,B).
'known/1_1_$special_float/1/1__2'(A,B) :-
'chr via_1'(A,D),
get_attr(D,guard_entailment,E),
E=v(H,_,_,F,_,_,_,_,_,_,_,_,_,_,G,_,_,_,_,_,_,_,_,_,_,_,_),
(
H/\8192=:=8192,
'chr sbag_member'(C,G),
C=suspension(_,K,_,_,_,_,I),
K=mutable(active),
nonvar(I),
I=float(J),
J==A,
!,
remove_constraint_internal(C,L,M),
( M==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(C),
'detach_known/1_1_$special_\\+/1/1'(L,C)
;
true
),
( var(B) ->
true
;
remove_constraint_internal(B,N,O),
( O==yes ->
'$delete_from_store_known/1_1_$special_float/1/1'(B),
'detach_known/1_1_$special_float/1/1'(N,B)
;
true
)
),
'known/1_1_$special_fail/0'
;
H/\4=:=4,
!,
'known/1_1_$special_float/1/1__2__0'(F,A,B)
).
'known/1_1_$special_float/1/1__2__0'([],A,B) :-
'known/1_1_$special_float/1/1__3'(A,B).
'known/1_1_$special_float/1/1__2__0'([C|D],A,B) :-
( C=suspension(_,I,_,_,_,_,E,F),
I=mutable(active),
nonvar(E),
E=(\+G),
nonvar(G),
G=float(H),
H==A ->
remove_constraint_internal(C,J,K),
( K==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(J,C)
;
true
),
activate_constraint(M,L,B,N),
( M==yes ->
'$insert_in_store_known/1_1_$special_float/1/1'(B),
'attach_known/1_1_$special_float/1/1'(L,B)
;
true
),
known(F),
( B=suspension(_,O,_,P,_,_,_),
O=mutable(active),
P=mutable(N) ->
'chr update_mutable'(inactive,O),
'known/1_1_$special_float/1/1__2__0'(D,A,B)
;
true
)
;
'known/1_1_$special_float/1/1__2__0'(D,A,B)
).
'known/1_1_$special_float/1/1__2'(A,B) :-
'known/1_1_$special_float/1/1__3'(A,B).
'known/1_1_$special_float/1/1__3'(A,B) :-
'chr via_1'(A,C),
get_attr(C,guard_entailment,D),
D=v(F,_,_,E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
F/\4=:=4,
!,
'known/1_1_$special_float/1/1__3__0'(E,A,B).
'known/1_1_$special_float/1/1__3__0'([],A,B) :-
'known/1_1_$special_float/1/1__4'(A,B).
'known/1_1_$special_float/1/1__3__0'([C|D],A,B) :-
( C=suspension(_,J,_,_,_,_,E,F),
J=mutable(active),
nonvar(E),
E=(G,_),
nonvar(G),
G=(\+H),
nonvar(H),
H=float(I),
I==A ->
remove_constraint_internal(C,K,L),
( L==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(K,C)
;
true
),
activate_constraint(N,M,B,O),
( N==yes ->
'$insert_in_store_known/1_1_$special_float/1/1'(B),
'attach_known/1_1_$special_float/1/1'(M,B)
;
true
),
known(F),
( B=suspension(_,P,_,Q,_,_,_),
P=mutable(active),
Q=mutable(O) ->
'chr update_mutable'(inactive,P),
'known/1_1_$special_float/1/1__3__0'(D,A,B)
;
true
)
;
'known/1_1_$special_float/1/1__3__0'(D,A,B)
).
'known/1_1_$special_float/1/1__3'(A,B) :-
'known/1_1_$special_float/1/1__4'(A,B).
'known/1_1_$special_float/1/1__4'(_,A) :-
activate_constraint(C,B,A,_),
( C==yes ->
'$insert_in_store_known/1_1_$special_float/1/1'(A),
'attach_known/1_1_$special_float/1/1'(B,A)
;
true
).
'known/1_1_$special_number/1'(A) :-
'known/1_1_$special_number/1/1__0'(A,_).
'known/1_1_$special_number/1/1__0'(A,B) :-
'chr via_1'(A,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,_,_,_,_,_,_,_,_,_,F,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
G/\2048=:=2048,
(
'chr sbag_member'(C,F),
C=suspension(_,I,_,_,_,_,H),
I=mutable(active),
H==A,
!,
( var(B) ->
true
;
remove_constraint_internal(B,J,K),
( K==yes ->
'$delete_from_store_known/1_1_$special_number/1/1'(B),
'detach_known/1_1_$special_number/1/1'(J,B)
;
true
)
)
;
!,
( var(B) ->
allocate_constraint(guard_entailment:'known/1_1_$special_number/1/1__0'(A,B),B,'known/1_1_$special_number/1'(A),[A])
;
true
),
'known/1_1_$special_number/1/1__0__0'(F,A,B)
).
'known/1_1_$special_number/1/1__0__0'([],A,B) :-
'known/1_1_$special_number/1/1__1'(A,B).
'known/1_1_$special_number/1/1__0__0'([C|D],A,B) :-
( C=suspension(_,F,_,_,_,_,E),
F=mutable(active),
E==A ->
remove_constraint_internal(C,G,H),
( H==yes ->
'$delete_from_store_known/1_1_$special_number/1/1'(C),
'detach_known/1_1_$special_number/1/1'(G,C)
;
true
),
'known/1_1_$special_number/1/1__0__0'(D,A,B)
;
'known/1_1_$special_number/1/1__0__0'(D,A,B)
).
'known/1_1_$special_number/1/1__0'(A,B) :-
( var(B) ->
allocate_constraint(guard_entailment:'known/1_1_$special_number/1/1__0'(A,B),B,'known/1_1_$special_number/1'(A),[A])
;
true
),
'known/1_1_$special_number/1/1__1'(A,B).
'known/1_1_$special_number/1/1__1'(_,A) :-
nb_getval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',C),
'chr sbag_member'(B,C),
B=suspension(_,D,_,_,_,_),
D=mutable(active),
!,
( var(A) ->
true
;
remove_constraint_internal(A,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_number/1/1'(A),
'detach_known/1_1_$special_number/1/1'(E,A)
;
true
)
).
'known/1_1_$special_number/1/1__1'(A,B) :-
nonvar(A),
\+number(A),
!,
( var(B) ->
true
;
remove_constraint_internal(B,C,D),
( D==yes ->
'$delete_from_store_known/1_1_$special_number/1/1'(B),
'detach_known/1_1_$special_number/1/1'(C,B)
;
true
)
),
'known/1_1_$special_fail/0'.
'known/1_1_$special_number/1/1__1'(A,B) :-
'chr via_1'(A,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,_,_,_,_,_,_,_,_,_,_,_,F,_,_,_,_,_,_,_,_,_,_,_,_),
G/\8192=:=8192,
'chr sbag_member'(C,F),
C=suspension(_,J,_,_,_,_,H),
J=mutable(active),
nonvar(H),
H=number(I),
I==A,
!,
remove_constraint_internal(C,K,L),
( L==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(C),
'detach_known/1_1_$special_\\+/1/1'(K,C)
;
true
),
( var(B) ->
true
;
remove_constraint_internal(B,M,N),
( N==yes ->
'$delete_from_store_known/1_1_$special_number/1/1'(B),
'detach_known/1_1_$special_number/1/1'(M,B)
;
true
)
),
'known/1_1_$special_fail/0'.
'known/1_1_$special_number/1/1__1'(A,B) :-
'chr novel_production'(B,238),
!,
'chr extend_history'(B,238),
activate_constraint(D,C,B,E),
( D==yes ->
'$insert_in_store_known/1_1_$special_number/1/1'(B),
'attach_known/1_1_$special_number/1/1'(C,B)
;
true
),
'known/1_1_$special_nonvar/1'(A),
( B=suspension(_,F,_,G,_,_,_),
F=mutable(active),
G=mutable(E) ->
'chr update_mutable'(inactive,F),
'known/1_1_$special_number/1/1__2'(A,B)
;
true
).
'known/1_1_$special_number/1/1__1'(A,B) :-
'known/1_1_$special_number/1/1__2'(A,B).
'known/1_1_$special_number/1/1__2'(A,B) :-
'chr via_1'(A,C),
get_attr(C,guard_entailment,D),
D=v(F,_,_,E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
F/\4=:=4,
!,
'known/1_1_$special_number/1/1__2__0'(E,A,B).
'known/1_1_$special_number/1/1__2__0'([],A,B) :-
'known/1_1_$special_number/1/1__3'(A,B).
'known/1_1_$special_number/1/1__2__0'([C|D],A,B) :-
( C=suspension(_,I,_,_,_,_,E,F),
I=mutable(active),
nonvar(E),
E=(\+G),
nonvar(G),
G=number(H),
H==A ->
remove_constraint_internal(C,J,K),
( K==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(J,C)
;
true
),
activate_constraint(M,L,B,N),
( M==yes ->
'$insert_in_store_known/1_1_$special_number/1/1'(B),
'attach_known/1_1_$special_number/1/1'(L,B)
;
true
),
known(F),
( B=suspension(_,O,_,P,_,_,_),
O=mutable(active),
P=mutable(N) ->
'chr update_mutable'(inactive,O),
'known/1_1_$special_number/1/1__2__0'(D,A,B)
;
true
)
;
'known/1_1_$special_number/1/1__2__0'(D,A,B)
).
'known/1_1_$special_number/1/1__2'(A,B) :-
'known/1_1_$special_number/1/1__3'(A,B).
'known/1_1_$special_number/1/1__3'(A,B) :-
'chr via_1'(A,C),
get_attr(C,guard_entailment,D),
D=v(F,_,_,E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
F/\4=:=4,
!,
'known/1_1_$special_number/1/1__3__0'(E,A,B).
'known/1_1_$special_number/1/1__3__0'([],A,B) :-
'known/1_1_$special_number/1/1__4'(A,B).
'known/1_1_$special_number/1/1__3__0'([C|D],A,B) :-
( C=suspension(_,J,_,_,_,_,E,F),
J=mutable(active),
nonvar(E),
E=(G,_),
nonvar(G),
G=(\+H),
nonvar(H),
H=number(I),
I==A ->
remove_constraint_internal(C,K,L),
( L==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(K,C)
;
true
),
activate_constraint(N,M,B,O),
( N==yes ->
'$insert_in_store_known/1_1_$special_number/1/1'(B),
'attach_known/1_1_$special_number/1/1'(M,B)
;
true
),
known(F),
( B=suspension(_,P,_,Q,_,_,_),
P=mutable(active),
Q=mutable(O) ->
'chr update_mutable'(inactive,P),
'known/1_1_$special_number/1/1__3__0'(D,A,B)
;
true
)
;
'known/1_1_$special_number/1/1__3__0'(D,A,B)
).
'known/1_1_$special_number/1/1__3'(A,B) :-
'known/1_1_$special_number/1/1__4'(A,B).
'known/1_1_$special_number/1/1__4'(_,A) :-
activate_constraint(C,B,A,_),
( C==yes ->
'$insert_in_store_known/1_1_$special_number/1/1'(A),
'attach_known/1_1_$special_number/1/1'(B,A)
;
true
).
'known/1_1_$special_=\\=/2'(A,B) :-
'known/1_1_$special_=\\=/2/2__0'(A,B,_).
'known/1_1_$special_=\\=/2/2__0'(A,B,C) :-
'chr via_2'(A,B,E),
get_attr(E,guard_entailment,F),
F=v(H,_,_,_,_,_,_,_,_,_,_,_,_,G,_,_,_,_,_,_,_,_,_,_,_,_,_),
H/\4096=:=4096,
(
'chr sbag_member'(D,G),
D=suspension(_,K,_,_,_,_,I,J),
K=mutable(active),
I==A,
J==B,
!,
( var(C) ->
true
;
remove_constraint_internal(C,L,M),
( M==yes ->
'$delete_from_store_known/1_1_$special_=\\=/2/2'(C),
'detach_known/1_1_$special_=\\=/2/2'(L,C)
;
true
)
)
;
!,
( var(C) ->
allocate_constraint(guard_entailment:'known/1_1_$special_=\\=/2/2__0'(A,B,C),C,'known/1_1_$special_=\\=/2'(A,B),[A,B])
;
true
),
'known/1_1_$special_=\\=/2/2__0__0'(G,A,B,C)
).
'known/1_1_$special_=\\=/2/2__0__0'([],A,B,C) :-
'known/1_1_$special_=\\=/2/2__1'(A,B,C).
'known/1_1_$special_=\\=/2/2__0__0'([D|E],A,B,C) :-
( D=suspension(_,H,_,_,_,_,F,G),
H=mutable(active),
F==A,
G==B ->
remove_constraint_internal(D,I,J),
( J==yes ->
'$delete_from_store_known/1_1_$special_=\\=/2/2'(D),
'detach_known/1_1_$special_=\\=/2/2'(I,D)
;
true
),
'known/1_1_$special_=\\=/2/2__0__0'(E,A,B,C)
;
'known/1_1_$special_=\\=/2/2__0__0'(E,A,B,C)
).
'known/1_1_$special_=\\=/2/2__0'(A,B,C) :-
( var(C) ->
allocate_constraint(guard_entailment:'known/1_1_$special_=\\=/2/2__0'(A,B,C),C,'known/1_1_$special_=\\=/2'(A,B),[A,B])
;
true
),
'known/1_1_$special_=\\=/2/2__1'(A,B,C).
'known/1_1_$special_=\\=/2/2__1'(_,_,A) :-
nb_getval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',C),
'chr sbag_member'(B,C),
B=suspension(_,D,_,_,_,_),
D=mutable(active),
!,
( var(A) ->
true
;
remove_constraint_internal(A,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_=\\=/2/2'(A),
'detach_known/1_1_$special_=\\=/2/2'(E,A)
;
true
)
).
'known/1_1_$special_=\\=/2/2__1'(A,B,C) :-
'chr via_1'(B,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,_,_,_,_,_,_,_,_,_,_,F,_,_,_,_,_,_,_,_,_,_,_,_,_),
G/\4096=:=4096,
!,
'known/1_1_$special_=\\=/2/2__1__0'(F,A,B,C).
'known/1_1_$special_=\\=/2/2__1__0'([],A,B,C) :-
'known/1_1_$special_=\\=/2/2__2'(A,B,C).
'known/1_1_$special_=\\=/2/2__1__0'([F|L],A,B,C) :-
( F=suspension(_,G,_,_,_,_,D,E),
G=mutable(active),
D==B,
'chr via_2'(A,B,H),
get_attr(H,guard_entailment,I),
I=v(K,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,J,_),
K/\16777216=:=16777216 ->
'known/1_1_$special_=\\=/2/2__1__1'(J,E,F,L,A,B,C)
;
'known/1_1_$special_=\\=/2/2__1__0'(L,A,B,C)
).
'known/1_1_$special_=\\=/2/2__1__1'([],_,_,D,A,B,C) :-
'known/1_1_$special_=\\=/2/2__1__0'(D,A,B,C).
'known/1_1_$special_=\\=/2/2__1__1'([I|O],E,A,F,B,C,D) :-
( I=suspension(_,J,_,_,_,_,G,H),
J=mutable(active),
G==B,
H==C,
'chr via_2'(C,E,K),
get_attr(K,guard_entailment,L),
L=v(N,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,M,_),
N/\16777216=:=16777216 ->
'known/1_1_$special_=\\=/2/2__1__2'(M,I,O,E,A,F,B,C,D)
;
'known/1_1_$special_=\\=/2/2__1__1'(O,E,A,F,B,C,D)
).
'known/1_1_$special_=\\=/2/2__1__2'([],_,G,D,E,F,A,B,C) :-
'known/1_1_$special_=\\=/2/2__1__1'(G,D,E,F,A,B,C).
'known/1_1_$special_=\\=/2/2__1__2'([L|M],A,H,F,B,G,C,D,E) :-
( L=suspension(_,K,_,_,_,_,I,J),
K=mutable(active),
L\==A,
I==D,
J==F,
S=t(188,B,E,A,L),
'chr novel_production'(B,S),
'chr novel_production'(E,S),
'chr novel_production'(A,S),
'chr novel_production'(L,S) ->
'chr extend_history'(E,S),
activate_constraint(O,N,E,P),
( O==yes ->
'$insert_in_store_known/1_1_$special_=\\=/2/2'(E),
'attach_known/1_1_$special_=\\=/2/2'(N,E)
;
true
),
'known/1_1_$special_=\\=/2'(C,F),
( E=suspension(_,Q,_,R,_,_,_,_),
Q=mutable(active),
R=mutable(P) ->
'chr update_mutable'(inactive,Q),
'known/1_1_$special_=\\=/2/2__1__2'(M,A,H,F,B,G,C,D,E)
;
true
)
;
'known/1_1_$special_=\\=/2/2__1__2'(M,A,H,F,B,G,C,D,E)
).
'known/1_1_$special_=\\=/2/2__1'(A,B,C) :-
'known/1_1_$special_=\\=/2/2__2'(A,B,C).
'known/1_1_$special_=\\=/2/2__2'(A,B,C) :-
'chr via_1'(A,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,_,_,_,_,_,_,_,_,_,_,F,_,_,_,_,_,_,_,_,_,_,_,_,_),
G/\4096=:=4096,
!,
'known/1_1_$special_=\\=/2/2__2__0'(F,A,B,C).
'known/1_1_$special_=\\=/2/2__2__0'([],A,B,C) :-
'known/1_1_$special_=\\=/2/2__3'(A,B,C).
'known/1_1_$special_=\\=/2/2__2__0'([F|L],A,B,C) :-
( F=suspension(_,G,_,_,_,_,D,E),
G=mutable(active),
E==A,
'chr via_2'(D,A,H),
get_attr(H,guard_entailment,I),
I=v(K,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,J,_),
K/\16777216=:=16777216 ->
'known/1_1_$special_=\\=/2/2__2__1'(J,D,F,L,A,B,C)
;
'known/1_1_$special_=\\=/2/2__2__0'(L,A,B,C)
).
'known/1_1_$special_=\\=/2/2__2__1'([],_,_,D,A,B,C) :-
'known/1_1_$special_=\\=/2/2__2__0'(D,A,B,C).
'known/1_1_$special_=\\=/2/2__2__1'([I|O],E,A,F,B,C,D) :-
( I=suspension(_,J,_,_,_,_,G,H),
J=mutable(active),
G==E,
H==B,
'chr via_2'(B,C,K),
get_attr(K,guard_entailment,L),
L=v(N,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,M,_),
N/\16777216=:=16777216 ->
'known/1_1_$special_=\\=/2/2__2__2'(M,I,O,E,A,F,B,C,D)
;
'known/1_1_$special_=\\=/2/2__2__1'(O,E,A,F,B,C,D)
).
'known/1_1_$special_=\\=/2/2__2__2'([],_,G,D,E,F,A,B,C) :-
'known/1_1_$special_=\\=/2/2__2__1'(G,D,E,F,A,B,C).
'known/1_1_$special_=\\=/2/2__2__2'([L|M],A,H,F,B,G,C,D,E) :-
( L=suspension(_,K,_,_,_,_,I,J),
K=mutable(active),
L\==A,
I==C,
J==D,
S=t(188,B,A,L,E),
'chr novel_production'(B,S),
'chr novel_production'(A,S),
'chr novel_production'(L,S),
'chr novel_production'(E,S) ->
'chr extend_history'(E,S),
activate_constraint(O,N,E,P),
( O==yes ->
'$insert_in_store_known/1_1_$special_=\\=/2/2'(E),
'attach_known/1_1_$special_=\\=/2/2'(N,E)
;
true
),
'known/1_1_$special_=\\=/2'(F,D),
( E=suspension(_,Q,_,R,_,_,_,_),
Q=mutable(active),
R=mutable(P) ->
'chr update_mutable'(inactive,Q),
'known/1_1_$special_=\\=/2/2__2__2'(M,A,H,F,B,G,C,D,E)
;
true
)
;
'known/1_1_$special_=\\=/2/2__2__2'(M,A,H,F,B,G,C,D,E)
).
'known/1_1_$special_=\\=/2/2__2'(A,B,C) :-
'known/1_1_$special_=\\=/2/2__3'(A,B,C).
'known/1_1_$special_=\\=/2/2__3'(A,B,C) :-
number(B),
number(A),
A=:=B,
!,
( var(C) ->
true
;
remove_constraint_internal(C,D,E),
( E==yes ->
'$delete_from_store_known/1_1_$special_=\\=/2/2'(C),
'detach_known/1_1_$special_=\\=/2/2'(D,C)
;
true
)
),
'known/1_1_$special_fail/0'.
'known/1_1_$special_=\\=/2/2__3'(A,B,C) :-
B==A,
!,
( var(C) ->
true
;
remove_constraint_internal(C,D,E),
( E==yes ->
'$delete_from_store_known/1_1_$special_=\\=/2/2'(C),
'detach_known/1_1_$special_=\\=/2/2'(D,C)
;
true
)
),
'known/1_1_$special_fail/0'.
'known/1_1_$special_=\\=/2/2__3'(A,B,C) :-
'chr via_2'(A,B,E),
get_attr(E,guard_entailment,F),
F=v(H,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,G),
H/\33554432=:=33554432,
'chr sbag_member'(D,G),
D=suspension(_,K,_,_,_,_,I,J),
K=mutable(active),
I==A,
J==B,
!,
remove_constraint_internal(D,L,M),
( M==yes ->
'$delete_from_store_known/1_1_$special_=:=/2/2'(D),
'detach_known/1_1_$special_=:=/2/2'(L,D)
;
true
),
( var(C) ->
true
;
remove_constraint_internal(C,N,O),
( O==yes ->
'$delete_from_store_known/1_1_$special_=\\=/2/2'(C),
'detach_known/1_1_$special_=\\=/2/2'(N,C)
;
true
)
),
'known/1_1_$special_fail/0'.
'known/1_1_$special_=\\=/2/2__3'(A,B,C) :-
'chr novel_production'(C,195),
!,
'chr extend_history'(C,195),
activate_constraint(E,D,C,F),
( E==yes ->
'$insert_in_store_known/1_1_$special_=\\=/2/2'(C),
'attach_known/1_1_$special_=\\=/2/2'(D,C)
;
true
),
'known/1_1_$special_=\\=/2'(B,A),
( C=suspension(_,G,_,H,_,_,_,_),
G=mutable(active),
H=mutable(F) ->
'chr update_mutable'(inactive,G),
'known/1_1_$special_=\\=/2/2__4'(A,B,C)
;
true
).
'known/1_1_$special_=\\=/2/2__3'(A,B,C) :-
'known/1_1_$special_=\\=/2/2__4'(A,B,C).
'known/1_1_$special_=\\=/2/2__4'(A,B,C) :-
'chr via_2'(A,B,E),
get_attr(E,guard_entailment,F),
F=v(I,_,_,G,_,_,_,_,_,_,_,_,_,_,H,_,_,_,_,_,_,_,_,_,_,_,_),
(
I/\8192=:=8192,
'chr sbag_member'(D,H),
D=suspension(_,M,_,_,_,_,J),
M=mutable(active),
nonvar(J),
J=(K=\=L),
K==A,
L==B,
!,
remove_constraint_internal(D,N,O),
( O==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(D),
'detach_known/1_1_$special_\\+/1/1'(N,D)
;
true
),
( var(C) ->
true
;
remove_constraint_internal(C,P,Q),
( Q==yes ->
'$delete_from_store_known/1_1_$special_=\\=/2/2'(C),
'detach_known/1_1_$special_=\\=/2/2'(P,C)
;
true
)
),
'known/1_1_$special_fail/0'
;
I/\4=:=4,
!,
'known/1_1_$special_=\\=/2/2__4__0'(G,A,B,C)
).
'known/1_1_$special_=\\=/2/2__4__0'([],A,B,C) :-
'known/1_1_$special_=\\=/2/2__5'(A,B,C).
'known/1_1_$special_=\\=/2/2__4__0'([D|E],A,B,C) :-
( D=suspension(_,K,_,_,_,_,F,G),
K=mutable(active),
nonvar(F),
F=(\+H),
nonvar(H),
H=(I=\=J),
I==A,
J==B ->
remove_constraint_internal(D,L,M),
( M==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(D),
'detach_known/1_1_$special_;/2/2'(L,D)
;
true
),
activate_constraint(O,N,C,P),
( O==yes ->
'$insert_in_store_known/1_1_$special_=\\=/2/2'(C),
'attach_known/1_1_$special_=\\=/2/2'(N,C)
;
true
),
known(G),
( C=suspension(_,Q,_,R,_,_,_,_),
Q=mutable(active),
R=mutable(P) ->
'chr update_mutable'(inactive,Q),
'known/1_1_$special_=\\=/2/2__4__0'(E,A,B,C)
;
true
)
;
'known/1_1_$special_=\\=/2/2__4__0'(E,A,B,C)
).
'known/1_1_$special_=\\=/2/2__4'(A,B,C) :-
'known/1_1_$special_=\\=/2/2__5'(A,B,C).
'known/1_1_$special_=\\=/2/2__5'(A,B,C) :-
'chr via_2'(A,B,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,F,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
G/\4=:=4,
!,
'known/1_1_$special_=\\=/2/2__5__0'(F,A,B,C).
'known/1_1_$special_=\\=/2/2__5__0'([],A,B,C) :-
'known/1_1_$special_=\\=/2/2__6'(A,B,C).
'known/1_1_$special_=\\=/2/2__5__0'([D|E],A,B,C) :-
( D=suspension(_,L,_,_,_,_,F,G),
L=mutable(active),
nonvar(F),
F=(H,_),
nonvar(H),
H=(\+I),
nonvar(I),
I=(J=\=K),
J==A,
K==B ->
remove_constraint_internal(D,M,N),
( N==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(D),
'detach_known/1_1_$special_;/2/2'(M,D)
;
true
),
activate_constraint(P,O,C,Q),
( P==yes ->
'$insert_in_store_known/1_1_$special_=\\=/2/2'(C),
'attach_known/1_1_$special_=\\=/2/2'(O,C)
;
true
),
known(G),
( C=suspension(_,R,_,S,_,_,_,_),
R=mutable(active),
S=mutable(Q) ->
'chr update_mutable'(inactive,R),
'known/1_1_$special_=\\=/2/2__5__0'(E,A,B,C)
;
true
)
;
'known/1_1_$special_=\\=/2/2__5__0'(E,A,B,C)
).
'known/1_1_$special_=\\=/2/2__5'(A,B,C) :-
'known/1_1_$special_=\\=/2/2__6'(A,B,C).
'known/1_1_$special_=\\=/2/2__6'(_,_,A) :-
activate_constraint(C,B,A,_),
( C==yes ->
'$insert_in_store_known/1_1_$special_=\\=/2/2'(A),
'attach_known/1_1_$special_=\\=/2/2'(B,A)
;
true
).
'known/1_1_$special_\\+/1'(A) :-
'known/1_1_$special_\\+/1/1__0'(A,_).
'known/1_1_$special_\\+/1/1__0'(A,B) :-
'chr via_1'(A,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,_,_,_,_,_,_,_,_,_,_,_,F,_,_,_,_,_,_,_,_,_,_,_,_),
G/\8192=:=8192,
(
'chr sbag_member'(C,F),
C=suspension(_,I,_,_,_,_,H),
I=mutable(active),
H==A,
!,
( var(B) ->
true
;
remove_constraint_internal(B,J,K),
( K==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(B),
'detach_known/1_1_$special_\\+/1/1'(J,B)
;
true
)
)
;
!,
( var(B) ->
allocate_constraint(guard_entailment:'known/1_1_$special_\\+/1/1__0'(A,B),B,'known/1_1_$special_\\+/1'(A),[A])
;
true
),
'known/1_1_$special_\\+/1/1__0__0'(F,A,B)
).
'known/1_1_$special_\\+/1/1__0__0'([],A,B) :-
'known/1_1_$special_\\+/1/1__1'(A,B).
'known/1_1_$special_\\+/1/1__0__0'([C|D],A,B) :-
( C=suspension(_,F,_,_,_,_,E),
F=mutable(active),
E==A ->
remove_constraint_internal(C,G,H),
( H==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(C),
'detach_known/1_1_$special_\\+/1/1'(G,C)
;
true
),
'known/1_1_$special_\\+/1/1__0__0'(D,A,B)
;
'known/1_1_$special_\\+/1/1__0__0'(D,A,B)
).
'known/1_1_$special_\\+/1/1__0'(A,B) :-
( var(B) ->
allocate_constraint(guard_entailment:'known/1_1_$special_\\+/1/1__0'(A,B),B,'known/1_1_$special_\\+/1'(A),[A])
;
true
),
'known/1_1_$special_\\+/1/1__1'(A,B).
'known/1_1_$special_\\+/1/1__1'(_,A) :-
nb_getval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',C),
'chr sbag_member'(B,C),
B=suspension(_,D,_,_,_,_),
D=mutable(active),
!,
( var(A) ->
true
;
remove_constraint_internal(A,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(A),
'detach_known/1_1_$special_\\+/1/1'(E,A)
;
true
)
).
'known/1_1_$special_\\+/1/1__1'(A,B) :-
nonvar(A),
(
(
(
(
(
(
(
(
(
(
(
A=functor(C,D,E),
nonvar(C),
'chr lock'(C),
'chr lock'(D),
'chr lock'(E),
functor(C,D,E),
'chr unlock'(C),
'chr unlock'(D),
'chr unlock'(E),
!,
( var(B) ->
true
;
remove_constraint_internal(B,F,G),
( G==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(B),
'detach_known/1_1_$special_\\+/1/1'(F,B)
;
true
)
),
'known/1_1_$special_fail/0'
;
A=(H;I),
'chr via_2'(H,I,K),
get_attr(K,guard_entailment,L),
L=v(N,_,_,M,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
N/\4=:=4,
'chr sbag_member'(J,M),
J=suspension(_,Q,_,_,_,_,O,P),
Q=mutable(active),
O==H,
P==I,
!,
remove_constraint_internal(J,R,S),
( S==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(J),
'detach_known/1_1_$special_;/2/2'(R,J)
;
true
),
( var(B) ->
true
;
remove_constraint_internal(B,T,U),
( U==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(B),
'detach_known/1_1_$special_\\+/1/1'(T,B)
;
true
)
),
'known/1_1_$special_fail/0'
)
;
A=nonvar(V),
'chr via_1'(V,X),
get_attr(X,guard_entailment,Y),
Y=v(A1,_,_,_,Z,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
A1/\8=:=8,
'chr sbag_member'(W,Z),
W=suspension(_,C1,_,_,_,_,B1),
C1=mutable(active),
B1==V,
!,
remove_constraint_internal(W,D1,E1),
( E1==yes ->
'$delete_from_store_known/1_1_$special_nonvar/1/1'(W),
'detach_known/1_1_$special_nonvar/1/1'(D1,W)
;
true
),
( var(B) ->
true
;
remove_constraint_internal(B,F1,G1),
( G1==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(B),
'detach_known/1_1_$special_\\+/1/1'(F1,B)
;
true
)
),
'known/1_1_$special_fail/0'
)
;
A=var(H1),
'chr via_1'(H1,J1),
get_attr(J1,guard_entailment,K1),
K1=v(M1,_,_,_,_,L1,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
M1/\16=:=16,
'chr sbag_member'(I1,L1),
I1=suspension(_,O1,_,_,_,_,N1),
O1=mutable(active),
N1==H1,
!,
remove_constraint_internal(I1,P1,Q1),
( Q1==yes ->
'$delete_from_store_known/1_1_$special_var/1/1'(I1),
'detach_known/1_1_$special_var/1/1'(P1,I1)
;
true
),
( var(B) ->
true
;
remove_constraint_internal(B,R1,S1),
( S1==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(B),
'detach_known/1_1_$special_\\+/1/1'(R1,B)
;
true
)
),
'known/1_1_$special_fail/0'
)
;
A=atom(T1),
'chr via_1'(T1,V1),
get_attr(V1,guard_entailment,W1),
W1=v(Y1,_,_,_,_,_,X1,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
Y1/\32=:=32,
'chr sbag_member'(U1,X1),
U1=suspension(_,A2,_,_,_,_,Z1),
A2=mutable(active),
Z1==T1,
!,
remove_constraint_internal(U1,B2,C2),
( C2==yes ->
'$delete_from_store_known/1_1_$special_atom/1/1'(U1),
'detach_known/1_1_$special_atom/1/1'(B2,U1)
;
true
),
( var(B) ->
true
;
remove_constraint_internal(B,D2,E2),
( E2==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(B),
'detach_known/1_1_$special_\\+/1/1'(D2,B)
;
true
)
),
'known/1_1_$special_fail/0'
)
;
A=atomic(F2),
'chr via_1'(F2,H2),
get_attr(H2,guard_entailment,I2),
I2=v(K2,_,_,_,_,_,_,J2,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
K2/\64=:=64,
'chr sbag_member'(G2,J2),
G2=suspension(_,M2,_,_,_,_,L2),
M2=mutable(active),
L2==F2,
!,
remove_constraint_internal(G2,N2,O2),
( O2==yes ->
'$delete_from_store_known/1_1_$special_atomic/1/1'(G2),
'detach_known/1_1_$special_atomic/1/1'(N2,G2)
;
true
),
( var(B) ->
true
;
remove_constraint_internal(B,P2,Q2),
( Q2==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(B),
'detach_known/1_1_$special_\\+/1/1'(P2,B)
;
true
)
),
'known/1_1_$special_fail/0'
)
;
A=compound(R2),
'chr via_1'(R2,T2),
get_attr(T2,guard_entailment,U2),
U2=v(W2,_,_,_,_,_,_,_,V2,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
W2/\128=:=128,
'chr sbag_member'(S2,V2),
S2=suspension(_,Y2,_,_,_,_,X2),
Y2=mutable(active),
X2==R2,
!,
remove_constraint_internal(S2,Z2,A3),
( A3==yes ->
'$delete_from_store_known/1_1_$special_compound/1/1'(S2),
'detach_known/1_1_$special_compound/1/1'(Z2,S2)
;
true
),
( var(B) ->
true
;
remove_constraint_internal(B,B3,C3),
( C3==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(B),
'detach_known/1_1_$special_\\+/1/1'(B3,B)
;
true
)
),
'known/1_1_$special_fail/0'
)
;
A=ground(D3),
'chr via_1'(D3,F3),
get_attr(F3,guard_entailment,G3),
G3=v(I3,_,_,_,_,_,_,_,_,H3,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
I3/\256=:=256,
'chr sbag_member'(E3,H3),
E3=suspension(_,K3,_,_,_,_,J3),
K3=mutable(active),
J3==D3,
!,
remove_constraint_internal(E3,L3,M3),
( M3==yes ->
'$delete_from_store_known/1_1_$special_ground/1/1'(E3),
'detach_known/1_1_$special_ground/1/1'(L3,E3)
;
true
),
( var(B) ->
true
;
remove_constraint_internal(B,N3,O3),
( O3==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(B),
'detach_known/1_1_$special_\\+/1/1'(N3,B)
;
true
)
),
'known/1_1_$special_fail/0'
)
;
A=integer(P3),
'chr via_1'(P3,R3),
get_attr(R3,guard_entailment,S3),
S3=v(U3,_,_,_,_,_,_,_,_,_,T3,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
U3/\512=:=512,
'chr sbag_member'(Q3,T3),
Q3=suspension(_,W3,_,_,_,_,V3),
W3=mutable(active),
V3==P3,
!,
remove_constraint_internal(Q3,X3,Y3),
( Y3==yes ->
'$delete_from_store_known/1_1_$special_integer/1/1'(Q3),
'detach_known/1_1_$special_integer/1/1'(X3,Q3)
;
true
),
( var(B) ->
true
;
remove_constraint_internal(B,Z3,A4),
( A4==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(B),
'detach_known/1_1_$special_\\+/1/1'(Z3,B)
;
true
)
),
'known/1_1_$special_fail/0'
)
;
A=float(B4),
'chr via_1'(B4,D4),
get_attr(D4,guard_entailment,E4),
E4=v(G4,_,_,_,_,_,_,_,_,_,_,F4,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
G4/\1024=:=1024,
'chr sbag_member'(C4,F4),
C4=suspension(_,I4,_,_,_,_,H4),
I4=mutable(active),
H4==B4,
!,
remove_constraint_internal(C4,J4,K4),
( K4==yes ->
'$delete_from_store_known/1_1_$special_float/1/1'(C4),
'detach_known/1_1_$special_float/1/1'(J4,C4)
;
true
),
( var(B) ->
true
;
remove_constraint_internal(B,L4,M4),
( M4==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(B),
'detach_known/1_1_$special_\\+/1/1'(L4,B)
;
true
)
),
'known/1_1_$special_fail/0'
)
;
A=number(N4),
'chr via_1'(N4,P4),
get_attr(P4,guard_entailment,Q4),
Q4=v(S4,_,_,_,_,_,_,_,_,_,_,_,R4,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
S4/\2048=:=2048,
'chr sbag_member'(O4,R4),
O4=suspension(_,U4,_,_,_,_,T4),
U4=mutable(active),
T4==N4,
!,
remove_constraint_internal(O4,V4,W4),
( W4==yes ->
'$delete_from_store_known/1_1_$special_number/1/1'(O4),
'detach_known/1_1_$special_number/1/1'(V4,O4)
;
true
),
( var(B) ->
true
;
remove_constraint_internal(B,X4,Y4),
( Y4==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(B),
'detach_known/1_1_$special_\\+/1/1'(X4,B)
;
true
)
),
'known/1_1_$special_fail/0'
)
;
A=(Z4=\=A5),
'chr via_2'(Z4,A5,C5),
get_attr(C5,guard_entailment,D5),
D5=v(F5,_,_,_,_,_,_,_,_,_,_,_,_,E5,_,_,_,_,_,_,_,_,_,_,_,_,_),
F5/\4096=:=4096,
'chr sbag_member'(B5,E5),
B5=suspension(_,I5,_,_,_,_,G5,H5),
I5=mutable(active),
G5==Z4,
H5==A5,
!,
remove_constraint_internal(B5,J5,K5),
( K5==yes ->
'$delete_from_store_known/1_1_$special_=\\=/2/2'(B5),
'detach_known/1_1_$special_=\\=/2/2'(J5,B5)
;
true
),
( var(B) ->
true
;
remove_constraint_internal(B,L5,M5),
( M5==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(B),
'detach_known/1_1_$special_\\+/1/1'(L5,B)
;
true
)
),
'known/1_1_$special_fail/0'
).
'known/1_1_$special_\\+/1/1__1'(A,B) :-
'chr via_1'(A,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,_,_,_,_,_,_,_,_,_,_,_,F,_,_,_,_,_,_,_,_,_,_,_,_),
G/\8192=:=8192,
'chr sbag_member'(C,F),
C=suspension(_,J,_,_,_,_,H),
J=mutable(active),
nonvar(H),
H=(\+I),
I==A,
!,
remove_constraint_internal(C,K,L),
( L==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(C),
'detach_known/1_1_$special_\\+/1/1'(K,C)
;
true
),
( var(B) ->
true
;
remove_constraint_internal(B,M,N),
( N==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(B),
'detach_known/1_1_$special_\\+/1/1'(M,B)
;
true
)
),
'known/1_1_$special_fail/0'.
'known/1_1_$special_\\+/1/1__1'(A,B) :-
nonvar(A),
(
(
(
(
(
(
(
(
(
(
(
(
A=(\+C),
'chr via_1'(C,E),
get_attr(E,guard_entailment,F),
F=v(H,_,_,_,_,_,_,_,_,_,_,_,_,_,G,_,_,_,_,_,_,_,_,_,_,_,_),
H/\8192=:=8192,
'chr sbag_member'(D,G),
D=suspension(_,J,_,_,_,_,I),
J=mutable(active),
I==C,
!,
remove_constraint_internal(D,K,L),
( L==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(D),
'detach_known/1_1_$special_\\+/1/1'(K,D)
;
true
),
( var(B) ->
true
;
remove_constraint_internal(B,M,N),
( N==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(B),
'detach_known/1_1_$special_\\+/1/1'(M,B)
;
true
)
),
'known/1_1_$special_fail/0'
;
A=functor(O,P,Q),
'chr via'([O,P,Q],S),
get_attr(S,guard_entailment,T),
T=v(V,_,_,_,_,_,_,_,_,_,_,_,_,_,_,U,_,_,_,_,_,_,_,_,_,_,_),
V/\16384=:=16384,
'chr sbag_member'(R,U),
R=suspension(_,Z,_,_,_,_,W,X,Y),
Z=mutable(active),
W==O,
X==P,
Y==Q,
!,
remove_constraint_internal(R,A1,B1),
( B1==yes ->
'$delete_from_store_known/1_1_$special_functor/3/3'(R),
'detach_known/1_1_$special_functor/3/3'(A1,R)
;
true
),
( var(B) ->
true
;
remove_constraint_internal(B,C1,D1),
( D1==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(B),
'detach_known/1_1_$special_\\+/1/1'(C1,B)
;
true
)
),
'known/1_1_$special_fail/0'
)
;
A=(E1\=F1),
'chr via_2'(E1,F1,H1),
get_attr(H1,guard_entailment,I1),
I1=v(K1,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,J1,_,_,_,_,_,_,_,_,_,_),
K1/\32768=:=32768,
'chr sbag_member'(G1,J1),
G1=suspension(_,N1,_,_,_,_,L1,M1),
N1=mutable(active),
L1==E1,
M1==F1,
!,
remove_constraint_internal(G1,O1,P1),
( P1==yes ->
'$delete_from_store_known/1_1_$special_\\=/2/2'(G1),
'detach_known/1_1_$special_\\=/2/2'(O1,G1)
;
true
),
( var(B) ->
true
;
remove_constraint_internal(B,Q1,R1),
( R1==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(B),
'detach_known/1_1_$special_\\+/1/1'(Q1,B)
;
true
)
),
'known/1_1_$special_fail/0'
)
;
A=(S1=T1),
'chr via_2'(S1,T1,V1),
get_attr(V1,guard_entailment,W1),
W1=v(Y1,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,X1,_,_,_,_,_,_,_,_,_),
Y1/\65536=:=65536,
'chr sbag_member'(U1,X1),
U1=suspension(_,B2,_,_,_,_,Z1,A2),
B2=mutable(active),
Z1==S1,
A2==T1,
!,
remove_constraint_internal(U1,C2,D2),
( D2==yes ->
'$delete_from_store_known/1_1_$special_=/2/2'(U1),
'detach_known/1_1_$special_=/2/2'(C2,U1)
;
true
),
( var(B) ->
true
;
remove_constraint_internal(B,E2,F2),
( F2==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(B),
'detach_known/1_1_$special_\\+/1/1'(E2,B)
;
true
)
),
'known/1_1_$special_fail/0'
)
;
A=(G2,H2),
'chr via_2'(G2,H2,J2),
get_attr(J2,guard_entailment,K2),
K2=v(M2,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,L2,_,_,_,_,_,_,_,_),
M2/\131072=:=131072,
'chr sbag_member'(I2,L2),
I2=suspension(_,P2,_,_,_,_,N2,O2),
P2=mutable(active),
N2==G2,
O2==H2,
!,
remove_constraint_internal(I2,Q2,R2),
( R2==yes ->
'$delete_from_store_known/1_1_$special_,/2/2'(I2),
'detach_known/1_1_$special_,/2/2'(Q2,I2)
;
true
),
( var(B) ->
true
;
remove_constraint_internal(B,S2,T2),
( T2==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(B),
'detach_known/1_1_$special_\\+/1/1'(S2,B)
;
true
)
),
'known/1_1_$special_fail/0'
)
;
A=(U2\==V2),
'chr via_2'(U2,V2,X2),
get_attr(X2,guard_entailment,Y2),
Y2=v(A3,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,Z2,_,_,_,_,_,_,_),
A3/\262144=:=262144,
'chr sbag_member'(W2,Z2),
W2=suspension(_,D3,_,_,_,_,B3,C3),
D3=mutable(active),
B3==U2,
C3==V2,
!,
remove_constraint_internal(W2,E3,F3),
( F3==yes ->
'$delete_from_store_known/1_1_$special_\\==/2/2'(W2),
'detach_known/1_1_$special_\\==/2/2'(E3,W2)
;
true
),
( var(B) ->
true
;
remove_constraint_internal(B,G3,H3),
( H3==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(B),
'detach_known/1_1_$special_\\+/1/1'(G3,B)
;
true
)
),
'known/1_1_$special_fail/0'
)
;
A=(I3==J3),
'chr via_2'(I3,J3,L3),
get_attr(L3,guard_entailment,M3),
M3=v(O3,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,N3,_,_,_,_,_,_),
O3/\524288=:=524288,
'chr sbag_member'(K3,N3),
K3=suspension(_,R3,_,_,_,_,P3,Q3),
R3=mutable(active),
P3==I3,
Q3==J3,
!,
remove_constraint_internal(K3,S3,T3),
( T3==yes ->
'$delete_from_store_known/1_1_$special_==/2/2'(K3),
'detach_known/1_1_$special_==/2/2'(S3,K3)
;
true
),
( var(B) ->
true
;
remove_constraint_internal(B,U3,V3),
( V3==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(B),
'detach_known/1_1_$special_\\+/1/1'(U3,B)
;
true
)
),
'known/1_1_$special_fail/0'
)
;
A=(W3 is X3),
'chr via_2'(W3,X3,Z3),
get_attr(Z3,guard_entailment,A4),
A4=v(C4,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,B4,_,_,_,_,_),
C4/\1048576=:=1048576,
'chr sbag_member'(Y3,B4),
Y3=suspension(_,F4,_,_,_,_,D4,E4),
F4=mutable(active),
D4==W3,
E4==X3,
!,
remove_constraint_internal(Y3,G4,H4),
( H4==yes ->
'$delete_from_store_known/1_1_$special_is/2/2'(Y3),
'detach_known/1_1_$special_is/2/2'(G4,Y3)
;
true
),
( var(B) ->
true
;
remove_constraint_internal(B,I4,J4),
( J4==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(B),
'detach_known/1_1_$special_\\+/1/1'(I4,B)
;
true
)
),
'known/1_1_$special_fail/0'
)
;
A=(K4<L4),
'chr via_2'(K4,L4,N4),
get_attr(N4,guard_entailment,O4),
O4=v(Q4,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,P4,_,_,_,_),
Q4/\2097152=:=2097152,
'chr sbag_member'(M4,P4),
M4=suspension(_,T4,_,_,_,_,R4,S4),
T4=mutable(active),
R4==K4,
S4==L4,
!,
remove_constraint_internal(M4,U4,V4),
( V4==yes ->
'$delete_from_store_known/1_1_$special_</2/2'(M4),
'detach_known/1_1_$special_</2/2'(U4,M4)
;
true
),
( var(B) ->
true
;
remove_constraint_internal(B,W4,X4),
( X4==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(B),
'detach_known/1_1_$special_\\+/1/1'(W4,B)
;
true
)
),
'known/1_1_$special_fail/0'
)
;
A=(Y4>=Z4),
'chr via_2'(Y4,Z4,B5),
get_attr(B5,guard_entailment,C5),
C5=v(E5,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,D5,_,_,_),
E5/\4194304=:=4194304,
'chr sbag_member'(A5,D5),
A5=suspension(_,H5,_,_,_,_,F5,G5),
H5=mutable(active),
F5==Y4,
G5==Z4,
!,
remove_constraint_internal(A5,I5,J5),
( J5==yes ->
'$delete_from_store_known/1_1_$special_>=/2/2'(A5),
'detach_known/1_1_$special_>=/2/2'(I5,A5)
;
true
),
( var(B) ->
true
;
remove_constraint_internal(B,K5,L5),
( L5==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(B),
'detach_known/1_1_$special_\\+/1/1'(K5,B)
;
true
)
),
'known/1_1_$special_fail/0'
)
;
A=(M5>N5),
'chr via_2'(M5,N5,P5),
get_attr(P5,guard_entailment,Q5),
Q5=v(S5,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,R5,_,_),
S5/\8388608=:=8388608,
'chr sbag_member'(O5,R5),
O5=suspension(_,V5,_,_,_,_,T5,U5),
V5=mutable(active),
T5==M5,
U5==N5,
!,
remove_constraint_internal(O5,W5,X5),
( X5==yes ->
'$delete_from_store_known/1_1_$special_>/2/2'(O5),
'detach_known/1_1_$special_>/2/2'(W5,O5)
;
true
),
( var(B) ->
true
;
remove_constraint_internal(B,Y5,Z5),
( Z5==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(B),
'detach_known/1_1_$special_\\+/1/1'(Y5,B)
;
true
)
),
'known/1_1_$special_fail/0'
)
;
A=(A6=<B6),
'chr via_2'(A6,B6,D6),
get_attr(D6,guard_entailment,E6),
E6=v(G6,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,F6,_),
G6/\16777216=:=16777216,
'chr sbag_member'(C6,F6),
C6=suspension(_,J6,_,_,_,_,H6,I6),
J6=mutable(active),
H6==A6,
I6==B6,
!,
remove_constraint_internal(C6,K6,L6),
( L6==yes ->
'$delete_from_store_known/1_1_$special_=</2/2'(C6),
'detach_known/1_1_$special_=</2/2'(K6,C6)
;
true
),
( var(B) ->
true
;
remove_constraint_internal(B,M6,N6),
( N6==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(B),
'detach_known/1_1_$special_\\+/1/1'(M6,B)
;
true
)
),
'known/1_1_$special_fail/0'
)
;
A=(O6=:=P6),
'chr via_2'(O6,P6,R6),
get_attr(R6,guard_entailment,S6),
S6=v(U6,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,T6),
U6/\33554432=:=33554432,
'chr sbag_member'(Q6,T6),
Q6=suspension(_,X6,_,_,_,_,V6,W6),
X6=mutable(active),
V6==O6,
W6==P6,
!,
remove_constraint_internal(Q6,Y6,Z6),
( Z6==yes ->
'$delete_from_store_known/1_1_$special_=:=/2/2'(Q6),
'detach_known/1_1_$special_=:=/2/2'(Y6,Q6)
;
true
),
( var(B) ->
true
;
remove_constraint_internal(B,A7,B7),
( B7==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(B),
'detach_known/1_1_$special_\\+/1/1'(A7,B)
;
true
)
),
'known/1_1_$special_fail/0'
).
'known/1_1_$special_\\+/1/1__1'(A,B) :-
A==fail,
nb_getval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',D),
'chr sbag_member'(C,D),
C=suspension(_,E,_,_,_,_),
E=mutable(active),
!,
remove_constraint_internal(C,_,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_fail/0/0'(C)
;
true
),
( var(B) ->
true
;
remove_constraint_internal(B,G,H),
( H==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(B),
'detach_known/1_1_$special_\\+/1/1'(G,B)
;
true
)
),
'known/1_1_$special_fail/0'.
'known/1_1_$special_\\+/1/1__1'(A,B) :-
'chr via_1'(A,D),
get_attr(D,guard_entailment,E),
E=v(H,_,F,G,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
(
H/\2=:=2,
'chr sbag_member'(C,F),
C=suspension(_,J,_,_,_,_,I),
J=mutable(active),
I==A,
!,
remove_constraint_internal(C,K,L),
( L==yes ->
'$delete_from_store_known/1_1_$default/1'(C),
'detach_known/1_1_$default/1'(K,C)
;
true
),
( var(B) ->
true
;
remove_constraint_internal(B,M,N),
( N==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(B),
'detach_known/1_1_$special_\\+/1/1'(M,B)
;
true
)
),
'known/1_1_$special_fail/0'
;
H/\4=:=4,
!,
'known/1_1_$special_\\+/1/1__1__0'(G,A,B)
).
'known/1_1_$special_\\+/1/1__1__0'([],A,B) :-
'known/1_1_$special_\\+/1/1__2'(A,B).
'known/1_1_$special_\\+/1/1__1__0'([C|D],A,B) :-
( C=suspension(_,I,_,_,_,_,E,F),
I=mutable(active),
nonvar(E),
E=(\+G),
nonvar(G),
G=(\+H),
H==A ->
remove_constraint_internal(C,J,K),
( K==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(J,C)
;
true
),
activate_constraint(M,L,B,N),
( M==yes ->
'$insert_in_store_known/1_1_$special_\\+/1/1'(B),
'attach_known/1_1_$special_\\+/1/1'(L,B)
;
true
),
known(F),
( B=suspension(_,O,_,P,_,_,_),
O=mutable(active),
P=mutable(N) ->
'chr update_mutable'(inactive,O),
'known/1_1_$special_\\+/1/1__1__0'(D,A,B)
;
true
)
;
'known/1_1_$special_\\+/1/1__1__0'(D,A,B)
).
'known/1_1_$special_\\+/1/1__1'(A,B) :-
'known/1_1_$special_\\+/1/1__2'(A,B).
'known/1_1_$special_\\+/1/1__2'(A,B) :-
'chr via_1'(A,C),
get_attr(C,guard_entailment,D),
D=v(F,_,_,E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
F/\4=:=4,
!,
'known/1_1_$special_\\+/1/1__2__0'(E,A,B).
'known/1_1_$special_\\+/1/1__2__0'([],A,B) :-
'known/1_1_$special_\\+/1/1__3'(A,B).
'known/1_1_$special_\\+/1/1__2__0'([C|D],A,B) :-
( C=suspension(_,J,_,_,_,_,E,F),
J=mutable(active),
nonvar(E),
E=(G,_),
nonvar(G),
G=(\+H),
nonvar(H),
H=(\+I),
I==A ->
remove_constraint_internal(C,K,L),
( L==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(K,C)
;
true
),
activate_constraint(N,M,B,O),
( N==yes ->
'$insert_in_store_known/1_1_$special_\\+/1/1'(B),
'attach_known/1_1_$special_\\+/1/1'(M,B)
;
true
),
known(F),
( B=suspension(_,P,_,Q,_,_,_),
P=mutable(active),
Q=mutable(O) ->
'chr update_mutable'(inactive,P),
'known/1_1_$special_\\+/1/1__2__0'(D,A,B)
;
true
)
;
'known/1_1_$special_\\+/1/1__2__0'(D,A,B)
).
'known/1_1_$special_\\+/1/1__2'(A,B) :-
'known/1_1_$special_\\+/1/1__3'(A,B).
'known/1_1_$special_\\+/1/1__3'(A,B) :-
'chr via_1'(A,C),
get_attr(C,guard_entailment,D),
D=v(F,_,_,E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
F/\4=:=4,
!,
'known/1_1_$special_\\+/1/1__3__0'(E,A,B).
'known/1_1_$special_\\+/1/1__3__0'([],A,B) :-
'known/1_1_$special_\\+/1/1__4'(A,B).
'known/1_1_$special_\\+/1/1__3__0'([C|D],A,B) :-
( C=suspension(_,G,_,_,_,_,E,F),
G=mutable(active),
E==A ->
remove_constraint_internal(C,H,I),
( I==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(H,C)
;
true
),
activate_constraint(K,J,B,L),
( K==yes ->
'$insert_in_store_known/1_1_$special_\\+/1/1'(B),
'attach_known/1_1_$special_\\+/1/1'(J,B)
;
true
),
known(F),
( B=suspension(_,M,_,N,_,_,_),
M=mutable(active),
N=mutable(L) ->
'chr update_mutable'(inactive,M),
'known/1_1_$special_\\+/1/1__3__0'(D,A,B)
;
true
)
;
'known/1_1_$special_\\+/1/1__3__0'(D,A,B)
).
'known/1_1_$special_\\+/1/1__3'(A,B) :-
'known/1_1_$special_\\+/1/1__4'(A,B).
'known/1_1_$special_\\+/1/1__4'(A,B) :-
'chr via_1'(A,C),
get_attr(C,guard_entailment,D),
D=v(F,_,_,E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
F/\4=:=4,
!,
'known/1_1_$special_\\+/1/1__4__0'(E,A,B).
'known/1_1_$special_\\+/1/1__4__0'([],A,B) :-
'known/1_1_$special_\\+/1/1__5'(A,B).
'known/1_1_$special_\\+/1/1__4__0'([C|D],A,B) :-
( C=suspension(_,H,_,_,_,_,E,F),
H=mutable(active),
nonvar(E),
E=(G,_),
G==A ->
remove_constraint_internal(C,I,J),
( J==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(C),
'detach_known/1_1_$special_;/2/2'(I,C)
;
true
),
activate_constraint(L,K,B,M),
( L==yes ->
'$insert_in_store_known/1_1_$special_\\+/1/1'(B),
'attach_known/1_1_$special_\\+/1/1'(K,B)
;
true
),
known(F),
( B=suspension(_,N,_,O,_,_,_),
N=mutable(active),
O=mutable(M) ->
'chr update_mutable'(inactive,N),
'known/1_1_$special_\\+/1/1__4__0'(D,A,B)
;
true
)
;
'known/1_1_$special_\\+/1/1__4__0'(D,A,B)
).
'known/1_1_$special_\\+/1/1__4'(A,B) :-
'known/1_1_$special_\\+/1/1__5'(A,B).
'known/1_1_$special_\\+/1/1__5'(_,A) :-
activate_constraint(C,B,A,_),
( C==yes ->
'$insert_in_store_known/1_1_$special_\\+/1/1'(A),
'attach_known/1_1_$special_\\+/1/1'(B,A)
;
true
).
'known/1_1_$special_functor/3'(A,B,C) :-
'known/1_1_$special_functor/3/3__0'(A,B,C,_).
'known/1_1_$special_functor/3/3__0'(A,B,C,D) :-
'chr via'([A,B,C],F),
get_attr(F,guard_entailment,G),
G=v(I,_,_,_,_,_,_,_,_,_,_,_,_,_,_,H,_,_,_,_,_,_,_,_,_,_,_),
I/\16384=:=16384,
(
'chr sbag_member'(E,H),
E=suspension(_,M,_,_,_,_,J,K,L),
M=mutable(active),
J==A,
K==B,
L==C,
!,
( var(D) ->
true
;
remove_constraint_internal(D,N,O),
( O==yes ->
'$delete_from_store_known/1_1_$special_functor/3/3'(D),
'detach_known/1_1_$special_functor/3/3'(N,D)
;
true
)
)
;
!,
( var(D) ->
allocate_constraint(guard_entailment:'known/1_1_$special_functor/3/3__0'(A,B,C,D),D,'known/1_1_$special_functor/3'(A,B,C),[A,B,C])
;
true
),
'known/1_1_$special_functor/3/3__0__0'(H,A,B,C,D)
).
'known/1_1_$special_functor/3/3__0__0'([],A,B,C,D) :-
'known/1_1_$special_functor/3/3__1'(A,B,C,D).
'known/1_1_$special_functor/3/3__0__0'([E|F],A,B,C,D) :-
( E=suspension(_,J,_,_,_,_,G,H,I),
J=mutable(active),
G==A,
H==B,
I==C ->
remove_constraint_internal(E,K,L),
( L==yes ->
'$delete_from_store_known/1_1_$special_functor/3/3'(E),
'detach_known/1_1_$special_functor/3/3'(K,E)
;
true
),
'known/1_1_$special_functor/3/3__0__0'(F,A,B,C,D)
;
'known/1_1_$special_functor/3/3__0__0'(F,A,B,C,D)
).
'known/1_1_$special_functor/3/3__0'(A,B,C,D) :-
( var(D) ->
allocate_constraint(guard_entailment:'known/1_1_$special_functor/3/3__0'(A,B,C,D),D,'known/1_1_$special_functor/3'(A,B,C),[A,B,C])
;
true
),
'known/1_1_$special_functor/3/3__1'(A,B,C,D).
'known/1_1_$special_functor/3/3__1'(_,_,_,A) :-
nb_getval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',C),
'chr sbag_member'(B,C),
B=suspension(_,D,_,_,_,_),
D=mutable(active),
!,
( var(A) ->
true
;
remove_constraint_internal(A,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_functor/3/3'(A),
'detach_known/1_1_$special_functor/3/3'(E,A)
;
true
)
).
'known/1_1_$special_functor/3/3__1'(A,B,C,D) :-
ground(C),
ground(B),
var(A),
'chr default_store'(F),
get_attr(F,guard_entailment,G),
G=v(I,H,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
I/\1=:=1,
'chr sbag_member'(E,H),
E=suspension(_,K,_,_,_,_,J),
K=mutable(active),
!,
remove_constraint_internal(E,N,O),
( O==yes ->
'$delete_from_store_variables/1'(E),
'detach_variables/1'(N,E)
;
true
),
( var(D) ->
true
;
remove_constraint_internal(D,P,Q),
( Q==yes ->
'$delete_from_store_known/1_1_$special_functor/3/3'(D),
'detach_known/1_1_$special_functor/3/3'(P,D)
;
true
)
),
functor(A,B,C),
A=..[_|L],
append(L,J,M),
variables(M).
'known/1_1_$special_functor/3/3__1'(A,B,C,D) :-
nonvar(A),
'chr lock'(A),
'chr lock'(B),
'chr lock'(C),
\+functor(A,B,C),
'chr unlock'(A),
'chr unlock'(B),
'chr unlock'(C),
!,
( var(D) ->
true
;
remove_constraint_internal(D,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_functor/3/3'(D),
'detach_known/1_1_$special_functor/3/3'(E,D)
;
true
)
),
'known/1_1_$special_fail/0'.
'known/1_1_$special_functor/3/3__1'(A,B,C,D) :-
nonvar(C),
nonvar(B),
'chr via_1'(A,F),
get_attr(F,guard_entailment,G),
G=v(I,_,_,_,_,_,_,_,_,_,_,_,_,_,_,H,_,_,_,_,_,_,_,_,_,_,_),
I/\16384=:=16384,
'chr sbag_member'(E,H),
E=suspension(_,M,_,_,_,_,J,K,L),
M=mutable(active),
J==A,
nonvar(L),
nonvar(K),
!,
remove_constraint_internal(E,N,O),
( O==yes ->
'$delete_from_store_known/1_1_$special_functor/3/3'(E),
'detach_known/1_1_$special_functor/3/3'(N,E)
;
true
),
( var(D) ->
true
;
remove_constraint_internal(D,P,Q),
( Q==yes ->
'$delete_from_store_known/1_1_$special_functor/3/3'(D),
'detach_known/1_1_$special_functor/3/3'(P,D)
;
true
)
),
'known/1_1_$special_fail/0'.
'known/1_1_$special_functor/3/3__1'(A,B,C,D) :-
'chr via'([A,B,C],F),
get_attr(F,guard_entailment,G),
G=v(J,_,_,H,_,_,_,_,_,_,_,_,_,_,I,_,_,_,_,_,_,_,_,_,_,_,_),
(
J/\8192=:=8192,
'chr sbag_member'(E,I),
E=suspension(_,O,_,_,_,_,K),
O=mutable(active),
nonvar(K),
K=functor(L,M,N),
L==A,
M==B,
N==C,
!,
remove_constraint_internal(E,P,Q),
( Q==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(E),
'detach_known/1_1_$special_\\+/1/1'(P,E)
;
true
),
( var(D) ->
true
;
remove_constraint_internal(D,R,S),
( S==yes ->
'$delete_from_store_known/1_1_$special_functor/3/3'(D),
'detach_known/1_1_$special_functor/3/3'(R,D)
;
true
)
),
'known/1_1_$special_fail/0'
;
J/\4=:=4,
!,
'known/1_1_$special_functor/3/3__1__0'(H,A,B,C,D)
).
'known/1_1_$special_functor/3/3__1__0'([],A,B,C,D) :-
'known/1_1_$special_functor/3/3__2'(A,B,C,D).
'known/1_1_$special_functor/3/3__1__0'([E|F],A,B,C,D) :-
( E=suspension(_,M,_,_,_,_,G,H),
M=mutable(active),
nonvar(G),
G=(\+I),
nonvar(I),
I=functor(J,K,L),
J==A,
K==B,
L==C ->
remove_constraint_internal(E,N,O),
( O==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(E),
'detach_known/1_1_$special_;/2/2'(N,E)
;
true
),
activate_constraint(Q,P,D,R),
( Q==yes ->
'$insert_in_store_known/1_1_$special_functor/3/3'(D),
'attach_known/1_1_$special_functor/3/3'(P,D)
;
true
),
known(H),
( D=suspension(_,S,_,T,_,_,_,_,_),
S=mutable(active),
T=mutable(R) ->
'chr update_mutable'(inactive,S),
'known/1_1_$special_functor/3/3__1__0'(F,A,B,C,D)
;
true
)
;
'known/1_1_$special_functor/3/3__1__0'(F,A,B,C,D)
).
'known/1_1_$special_functor/3/3__1'(A,B,C,D) :-
'known/1_1_$special_functor/3/3__2'(A,B,C,D).
'known/1_1_$special_functor/3/3__2'(A,B,C,D) :-
'chr via'([A,B,C],E),
get_attr(E,guard_entailment,F),
F=v(H,_,_,G,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
H/\4=:=4,
!,
'known/1_1_$special_functor/3/3__2__0'(G,A,B,C,D).
'known/1_1_$special_functor/3/3__2__0'([],A,B,C,D) :-
'known/1_1_$special_functor/3/3__3'(A,B,C,D).
'known/1_1_$special_functor/3/3__2__0'([E|F],A,B,C,D) :-
( E=suspension(_,N,_,_,_,_,G,H),
N=mutable(active),
nonvar(G),
G=(I,_),
nonvar(I),
I=(\+J),
nonvar(J),
J=functor(K,L,M),
K==A,
L==B,
M==C ->
remove_constraint_internal(E,O,P),
( P==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(E),
'detach_known/1_1_$special_;/2/2'(O,E)
;
true
),
activate_constraint(R,Q,D,S),
( R==yes ->
'$insert_in_store_known/1_1_$special_functor/3/3'(D),
'attach_known/1_1_$special_functor/3/3'(Q,D)
;
true
),
known(H),
( D=suspension(_,T,_,U,_,_,_,_,_),
T=mutable(active),
U=mutable(S) ->
'chr update_mutable'(inactive,T),
'known/1_1_$special_functor/3/3__2__0'(F,A,B,C,D)
;
true
)
;
'known/1_1_$special_functor/3/3__2__0'(F,A,B,C,D)
).
'known/1_1_$special_functor/3/3__2'(A,B,C,D) :-
'known/1_1_$special_functor/3/3__3'(A,B,C,D).
'known/1_1_$special_functor/3/3__3'(A,B,C,D) :-
'chr via_1'(A,E),
get_attr(E,guard_entailment,F),
F=v(H,_,_,G,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
H/\4=:=4,
!,
'known/1_1_$special_functor/3/3__3__0'(G,A,B,C,D).
'known/1_1_$special_functor/3/3__3__0'([],A,B,C,D) :-
'known/1_1_$special_functor/3/3__4'(A,B,C,D).
'known/1_1_$special_functor/3/3__3__0'([E|F],A,B,C,D) :-
( E=suspension(_,J,_,_,_,_,G,_),
J=mutable(active),
nonvar(G),
G=(\+H),
nonvar(H),
H=functor(I,_,_),
I==A ->
remove_constraint_internal(E,K,L),
( L==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(E),
'detach_known/1_1_$special_;/2/2'(K,E)
;
true
),
'known/1_1_$special_functor/3/3__3__0'(F,A,B,C,D)
;
'known/1_1_$special_functor/3/3__3__0'(F,A,B,C,D)
).
'known/1_1_$special_functor/3/3__3'(A,B,C,D) :-
'known/1_1_$special_functor/3/3__4'(A,B,C,D).
'known/1_1_$special_functor/3/3__4'(_,_,_,A) :-
activate_constraint(C,B,A,_),
( C==yes ->
'$insert_in_store_known/1_1_$special_functor/3/3'(A),
'attach_known/1_1_$special_functor/3/3'(B,A)
;
true
).
'known/1_1_$special_\\=/2'(A,B) :-
'known/1_1_$special_\\=/2/2__0'(A,B,_).
'known/1_1_$special_\\=/2/2__0'(A,B,C) :-
'chr via_2'(A,B,E),
get_attr(E,guard_entailment,F),
F=v(H,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,G,_,_,_,_,_,_,_,_,_,_),
H/\32768=:=32768,
(
'chr sbag_member'(D,G),
D=suspension(_,K,_,_,_,_,I,J),
K=mutable(active),
I==A,
J==B,
!,
( var(C) ->
true
;
remove_constraint_internal(C,L,M),
( M==yes ->
'$delete_from_store_known/1_1_$special_\\=/2/2'(C),
'detach_known/1_1_$special_\\=/2/2'(L,C)
;
true
)
)
;
!,
( var(C) ->
allocate_constraint(guard_entailment:'known/1_1_$special_\\=/2/2__0'(A,B,C),C,'known/1_1_$special_\\=/2'(A,B),[A,B])
;
true
),
'known/1_1_$special_\\=/2/2__0__0'(G,A,B,C)
).
'known/1_1_$special_\\=/2/2__0__0'([],A,B,C) :-
'known/1_1_$special_\\=/2/2__1'(A,B,C).
'known/1_1_$special_\\=/2/2__0__0'([D|E],A,B,C) :-
( D=suspension(_,H,_,_,_,_,F,G),
H=mutable(active),
F==A,
G==B ->
remove_constraint_internal(D,I,J),
( J==yes ->
'$delete_from_store_known/1_1_$special_\\=/2/2'(D),
'detach_known/1_1_$special_\\=/2/2'(I,D)
;
true
),
'known/1_1_$special_\\=/2/2__0__0'(E,A,B,C)
;
'known/1_1_$special_\\=/2/2__0__0'(E,A,B,C)
).
'known/1_1_$special_\\=/2/2__0'(A,B,C) :-
( var(C) ->
allocate_constraint(guard_entailment:'known/1_1_$special_\\=/2/2__0'(A,B,C),C,'known/1_1_$special_\\=/2'(A,B),[A,B])
;
true
),
'known/1_1_$special_\\=/2/2__1'(A,B,C).
'known/1_1_$special_\\=/2/2__1'(_,_,A) :-
nb_getval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',C),
'chr sbag_member'(B,C),
B=suspension(_,D,_,_,_,_),
D=mutable(active),
!,
( var(A) ->
true
;
remove_constraint_internal(A,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_\\=/2/2'(A),
'detach_known/1_1_$special_\\=/2/2'(E,A)
;
true
)
).
'known/1_1_$special_\\=/2/2__1'(A,B,C) :-
ground(B),
ground(A),
'chr lock'(A),
'chr lock'(B),
A=B,
'chr unlock'(A),
'chr unlock'(B),
!,
( var(C) ->
true
;
remove_constraint_internal(C,D,E),
( E==yes ->
'$delete_from_store_known/1_1_$special_\\=/2/2'(C),
'detach_known/1_1_$special_\\=/2/2'(D,C)
;
true
)
),
'known/1_1_$special_fail/0'.
'known/1_1_$special_\\=/2/2__1'(A,B,C) :-
B==A,
!,
( var(C) ->
true
;
remove_constraint_internal(C,D,E),
( E==yes ->
'$delete_from_store_known/1_1_$special_\\=/2/2'(C),
'detach_known/1_1_$special_\\=/2/2'(D,C)
;
true
)
),
'known/1_1_$special_fail/0'.
'known/1_1_$special_\\=/2/2__1'(A,B,C) :-
nonvar(B),
(
var(A),
'chr lock'(B),
functor(B,D,E),
E>0,
'chr unlock'(B),
!,
( var(C) ->
true
;
remove_constraint_internal(C,K,L),
( L==yes ->
'$delete_from_store_known/1_1_$special_\\=/2/2'(C),
'detach_known/1_1_$special_\\=/2/2'(K,C)
;
true
)
),
length(F,E),
B=..[D|G],
H=..[D|F],
add_args_nunif(G,F,I),
J=(\+functor(A,D,E);A=H,I),
known(J)
;
nonvar(A),
'chr lock'(A),
functor(A,M,N),
'chr unlock'(A),
!,
( var(C) ->
true
;
remove_constraint_internal(C,R,S),
( S==yes ->
'$delete_from_store_known/1_1_$special_\\=/2/2'(C),
'detach_known/1_1_$special_\\=/2/2'(R,C)
;
true
)
),
( functor(B,M,N) ->
A=..[M|O],
B=..[M|P],
add_args_nunif(O,P,Q),
known(Q)
;
true
)
).
'known/1_1_$special_\\=/2/2__1'(A,B,C) :-
'chr novel_production'(C,182),
!,
'chr extend_history'(C,182),
activate_constraint(E,D,C,F),
( E==yes ->
'$insert_in_store_known/1_1_$special_\\=/2/2'(C),
'attach_known/1_1_$special_\\=/2/2'(D,C)
;
true
),
'known/1_1_$special_\\=/2'(B,A),
( C=suspension(_,G,_,H,_,_,_,_),
G=mutable(active),
H=mutable(F) ->
'chr update_mutable'(inactive,G),
'known/1_1_$special_\\=/2/2__2'(A,B,C)
;
true
).
'known/1_1_$special_\\=/2/2__1'(A,B,C) :-
'known/1_1_$special_\\=/2/2__2'(A,B,C).
'known/1_1_$special_\\=/2/2__2'(A,B,C) :-
'chr via_2'(A,B,E),
get_attr(E,guard_entailment,F),
F=v(I,_,_,G,_,_,_,_,_,_,_,_,_,_,H,_,_,_,_,_,_,_,_,_,_,_,_),
(
I/\8192=:=8192,
'chr sbag_member'(D,H),
D=suspension(_,M,_,_,_,_,J),
M=mutable(active),
nonvar(J),
J=(K\=L),
K==A,
L==B,
!,
remove_constraint_internal(D,N,O),
( O==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(D),
'detach_known/1_1_$special_\\+/1/1'(N,D)
;
true
),
( var(C) ->
true
;
remove_constraint_internal(C,P,Q),
( Q==yes ->
'$delete_from_store_known/1_1_$special_\\=/2/2'(C),
'detach_known/1_1_$special_\\=/2/2'(P,C)
;
true
)
),
'known/1_1_$special_fail/0'
;
I/\4=:=4,
!,
'known/1_1_$special_\\=/2/2__2__0'(G,A,B,C)
).
'known/1_1_$special_\\=/2/2__2__0'([],A,B,C) :-
'known/1_1_$special_\\=/2/2__3'(A,B,C).
'known/1_1_$special_\\=/2/2__2__0'([D|E],A,B,C) :-
( D=suspension(_,K,_,_,_,_,F,G),
K=mutable(active),
nonvar(F),
F=(\+H),
nonvar(H),
H=(I\=J),
I==A,
J==B ->
remove_constraint_internal(D,L,M),
( M==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(D),
'detach_known/1_1_$special_;/2/2'(L,D)
;
true
),
activate_constraint(O,N,C,P),
( O==yes ->
'$insert_in_store_known/1_1_$special_\\=/2/2'(C),
'attach_known/1_1_$special_\\=/2/2'(N,C)
;
true
),
known(G),
( C=suspension(_,Q,_,R,_,_,_,_),
Q=mutable(active),
R=mutable(P) ->
'chr update_mutable'(inactive,Q),
'known/1_1_$special_\\=/2/2__2__0'(E,A,B,C)
;
true
)
;
'known/1_1_$special_\\=/2/2__2__0'(E,A,B,C)
).
'known/1_1_$special_\\=/2/2__2'(A,B,C) :-
'known/1_1_$special_\\=/2/2__3'(A,B,C).
'known/1_1_$special_\\=/2/2__3'(A,B,C) :-
'chr via_2'(A,B,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,F,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
G/\4=:=4,
!,
'known/1_1_$special_\\=/2/2__3__0'(F,A,B,C).
'known/1_1_$special_\\=/2/2__3__0'([],A,B,C) :-
'known/1_1_$special_\\=/2/2__4'(A,B,C).
'known/1_1_$special_\\=/2/2__3__0'([D|E],A,B,C) :-
( D=suspension(_,L,_,_,_,_,F,G),
L=mutable(active),
nonvar(F),
F=(H,_),
nonvar(H),
H=(\+I),
nonvar(I),
I=(J\=K),
J==A,
K==B ->
remove_constraint_internal(D,M,N),
( N==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(D),
'detach_known/1_1_$special_;/2/2'(M,D)
;
true
),
activate_constraint(P,O,C,Q),
( P==yes ->
'$insert_in_store_known/1_1_$special_\\=/2/2'(C),
'attach_known/1_1_$special_\\=/2/2'(O,C)
;
true
),
known(G),
( C=suspension(_,R,_,S,_,_,_,_),
R=mutable(active),
S=mutable(Q) ->
'chr update_mutable'(inactive,R),
'known/1_1_$special_\\=/2/2__3__0'(E,A,B,C)
;
true
)
;
'known/1_1_$special_\\=/2/2__3__0'(E,A,B,C)
).
'known/1_1_$special_\\=/2/2__3'(A,B,C) :-
'known/1_1_$special_\\=/2/2__4'(A,B,C).
'known/1_1_$special_\\=/2/2__4'(_,_,A) :-
activate_constraint(C,B,A,_),
( C==yes ->
'$insert_in_store_known/1_1_$special_\\=/2/2'(A),
'attach_known/1_1_$special_\\=/2/2'(B,A)
;
true
).
'known/1_1_$special_=/2'(A,B) :-
'known/1_1_$special_=/2/2__0'(A,B,_).
'known/1_1_$special_=/2/2__0'(A,B,C) :-
'chr via_2'(A,B,E),
get_attr(E,guard_entailment,F),
F=v(H,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,G,_,_,_,_,_,_,_,_,_),
H/\65536=:=65536,
(
'chr sbag_member'(D,G),
D=suspension(_,K,_,_,_,_,I,J),
K=mutable(active),
I==A,
J==B,
!,
( var(C) ->
true
;
remove_constraint_internal(C,L,M),
( M==yes ->
'$delete_from_store_known/1_1_$special_=/2/2'(C),
'detach_known/1_1_$special_=/2/2'(L,C)
;
true
)
)
;
!,
( var(C) ->
allocate_constraint(guard_entailment:'known/1_1_$special_=/2/2__0'(A,B,C),C,'known/1_1_$special_=/2'(A,B),[A,B])
;
true
),
'known/1_1_$special_=/2/2__0__0'(G,A,B,C)
).
'known/1_1_$special_=/2/2__0__0'([],A,B,C) :-
'known/1_1_$special_=/2/2__1'(A,B,C).
'known/1_1_$special_=/2/2__0__0'([D|E],A,B,C) :-
( D=suspension(_,H,_,_,_,_,F,G),
H=mutable(active),
F==A,
G==B ->
remove_constraint_internal(D,I,J),
( J==yes ->
'$delete_from_store_known/1_1_$special_=/2/2'(D),
'detach_known/1_1_$special_=/2/2'(I,D)
;
true
),
'known/1_1_$special_=/2/2__0__0'(E,A,B,C)
;
'known/1_1_$special_=/2/2__0__0'(E,A,B,C)
).
'known/1_1_$special_=/2/2__0'(A,B,C) :-
( var(C) ->
allocate_constraint(guard_entailment:'known/1_1_$special_=/2/2__0'(A,B,C),C,'known/1_1_$special_=/2'(A,B),[A,B])
;
true
),
'known/1_1_$special_=/2/2__1'(A,B,C).
'known/1_1_$special_=/2/2__1'(_,_,A) :-
nb_getval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',C),
'chr sbag_member'(B,C),
B=suspension(_,D,_,_,_,_),
D=mutable(active),
!,
( var(A) ->
true
;
remove_constraint_internal(A,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_=/2/2'(A),
'detach_known/1_1_$special_=/2/2'(E,A)
;
true
)
).
'known/1_1_$special_=/2/2__1'(A,B,C) :-
B==A,
!,
( var(C) ->
true
;
remove_constraint_internal(C,D,E),
( E==yes ->
'$delete_from_store_known/1_1_$special_=/2/2'(C),
'detach_known/1_1_$special_=/2/2'(D,C)
;
true
)
).
'known/1_1_$special_=/2/2__1'(A,B,C) :-
var(A),
!,
( var(C) ->
true
;
remove_constraint_internal(C,D,E),
( E==yes ->
'$delete_from_store_known/1_1_$special_=/2/2'(C),
'detach_known/1_1_$special_=/2/2'(D,C)
;
true
)
),
A=B.
'known/1_1_$special_=/2/2__1'(A,B,C) :-
var(B),
!,
( var(C) ->
true
;
remove_constraint_internal(C,D,E),
( E==yes ->
'$delete_from_store_known/1_1_$special_=/2/2'(C),
'detach_known/1_1_$special_=/2/2'(D,C)
;
true
)
),
A=B.
'known/1_1_$special_=/2/2__1'(A,B,C) :-
nonvar(B),
nonvar(A),
'chr lock'(A),
functor(A,D,E),
'chr unlock'(A),
!,
( var(C) ->
true
;
remove_constraint_internal(C,F,G),
( G==yes ->
'$delete_from_store_known/1_1_$special_=/2/2'(C),
'detach_known/1_1_$special_=/2/2'(F,C)
;
true
)
),
( functor(B,D,E),
A=B ->
true
;
'known/1_1_$special_fail/0'
).
'known/1_1_$special_=/2/2__1'(A,B,C) :-
'chr via_2'(A,B,E),
get_attr(E,guard_entailment,F),
F=v(I,_,_,G,_,_,_,_,_,_,_,_,_,_,H,_,_,_,_,_,_,_,_,_,_,_,_),
(
I/\8192=:=8192,
'chr sbag_member'(D,H),
D=suspension(_,M,_,_,_,_,J),
M=mutable(active),
nonvar(J),
J=(K=L),
K==A,
L==B,
!,
remove_constraint_internal(D,N,O),
( O==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(D),
'detach_known/1_1_$special_\\+/1/1'(N,D)
;
true
),
( var(C) ->
true
;
remove_constraint_internal(C,P,Q),
( Q==yes ->
'$delete_from_store_known/1_1_$special_=/2/2'(C),
'detach_known/1_1_$special_=/2/2'(P,C)
;
true
)
),
'known/1_1_$special_fail/0'
;
I/\4=:=4,
!,
'known/1_1_$special_=/2/2__1__0'(G,A,B,C)
).
'known/1_1_$special_=/2/2__1__0'([],A,B,C) :-
'known/1_1_$special_=/2/2__2'(A,B,C).
'known/1_1_$special_=/2/2__1__0'([D|E],A,B,C) :-
( D=suspension(_,K,_,_,_,_,F,G),
K=mutable(active),
nonvar(F),
F=(\+H),
nonvar(H),
H=(I=J),
I==A,
J==B ->
remove_constraint_internal(D,L,M),
( M==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(D),
'detach_known/1_1_$special_;/2/2'(L,D)
;
true
),
activate_constraint(O,N,C,P),
( O==yes ->
'$insert_in_store_known/1_1_$special_=/2/2'(C),
'attach_known/1_1_$special_=/2/2'(N,C)
;
true
),
known(G),
( C=suspension(_,Q,_,R,_,_,_,_),
Q=mutable(active),
R=mutable(P) ->
'chr update_mutable'(inactive,Q),
'known/1_1_$special_=/2/2__1__0'(E,A,B,C)
;
true
)
;
'known/1_1_$special_=/2/2__1__0'(E,A,B,C)
).
'known/1_1_$special_=/2/2__1'(A,B,C) :-
'known/1_1_$special_=/2/2__2'(A,B,C).
'known/1_1_$special_=/2/2__2'(A,B,C) :-
'chr via_2'(A,B,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,F,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
G/\4=:=4,
!,
'known/1_1_$special_=/2/2__2__0'(F,A,B,C).
'known/1_1_$special_=/2/2__2__0'([],A,B,C) :-
'known/1_1_$special_=/2/2__3'(A,B,C).
'known/1_1_$special_=/2/2__2__0'([D|E],A,B,C) :-
( D=suspension(_,L,_,_,_,_,F,G),
L=mutable(active),
nonvar(F),
F=(H,_),
nonvar(H),
H=(\+I),
nonvar(I),
I=(J=K),
J==A,
K==B ->
remove_constraint_internal(D,M,N),
( N==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(D),
'detach_known/1_1_$special_;/2/2'(M,D)
;
true
),
activate_constraint(P,O,C,Q),
( P==yes ->
'$insert_in_store_known/1_1_$special_=/2/2'(C),
'attach_known/1_1_$special_=/2/2'(O,C)
;
true
),
known(G),
( C=suspension(_,R,_,S,_,_,_,_),
R=mutable(active),
S=mutable(Q) ->
'chr update_mutable'(inactive,R),
'known/1_1_$special_=/2/2__2__0'(E,A,B,C)
;
true
)
;
'known/1_1_$special_=/2/2__2__0'(E,A,B,C)
).
'known/1_1_$special_=/2/2__2'(A,B,C) :-
'known/1_1_$special_=/2/2__3'(A,B,C).
'known/1_1_$special_=/2/2__3'(_,_,A) :-
activate_constraint(C,B,A,_),
( C==yes ->
'$insert_in_store_known/1_1_$special_=/2/2'(A),
'attach_known/1_1_$special_=/2/2'(B,A)
;
true
).
'known/1_1_$special_,/2'(A,B) :-
'known/1_1_$special_,/2/2__0'(A,B,_).
'known/1_1_$special_,/2/2__0'(A,B,C) :-
'chr via_2'(A,B,E),
get_attr(E,guard_entailment,F),
F=v(H,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,G,_,_,_,_,_,_,_,_),
H/\131072=:=131072,
(
'chr sbag_member'(D,G),
D=suspension(_,K,_,_,_,_,I,J),
K=mutable(active),
I==A,
J==B,
!,
( var(C) ->
true
;
remove_constraint_internal(C,L,M),
( M==yes ->
'$delete_from_store_known/1_1_$special_,/2/2'(C),
'detach_known/1_1_$special_,/2/2'(L,C)
;
true
)
)
;
!,
( var(C) ->
allocate_constraint(guard_entailment:'known/1_1_$special_,/2/2__0'(A,B,C),C,'known/1_1_$special_,/2'(A,B),[A,B])
;
true
),
'known/1_1_$special_,/2/2__0__0'(G,A,B,C)
).
'known/1_1_$special_,/2/2__0__0'([],A,B,C) :-
'known/1_1_$special_,/2/2__1'(A,B,C).
'known/1_1_$special_,/2/2__0__0'([D|E],A,B,C) :-
( D=suspension(_,H,_,_,_,_,F,G),
H=mutable(active),
F==A,
G==B ->
remove_constraint_internal(D,I,J),
( J==yes ->
'$delete_from_store_known/1_1_$special_,/2/2'(D),
'detach_known/1_1_$special_,/2/2'(I,D)
;
true
),
'known/1_1_$special_,/2/2__0__0'(E,A,B,C)
;
'known/1_1_$special_,/2/2__0__0'(E,A,B,C)
).
'known/1_1_$special_,/2/2__0'(A,B,C) :-
( var(C) ->
allocate_constraint(guard_entailment:'known/1_1_$special_,/2/2__0'(A,B,C),C,'known/1_1_$special_,/2'(A,B),[A,B])
;
true
),
'known/1_1_$special_,/2/2__1'(A,B,C).
'known/1_1_$special_,/2/2__1'(_,_,A) :-
nb_getval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',C),
'chr sbag_member'(B,C),
B=suspension(_,D,_,_,_,_),
D=mutable(active),
!,
( var(A) ->
true
;
remove_constraint_internal(A,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_,/2/2'(A),
'detach_known/1_1_$special_,/2/2'(E,A)
;
true
)
).
'known/1_1_$special_,/2/2__1'(A,B,C) :-
!,
( var(C) ->
true
;
remove_constraint_internal(C,D,E),
( E==yes ->
'$delete_from_store_known/1_1_$special_,/2/2'(C),
'detach_known/1_1_$special_,/2/2'(D,C)
;
true
)
),
known(A),
known(B).
'known/1_1_$special_,/2/2__1__0'([],A,B,C) :-
'known/1_1_$special_,/2/2__2'(A,B,C).
'known/1_1_$special_,/2/2__1__0'([D|E],A,B,C) :-
( D=suspension(_,K,_,_,_,_,F,G),
K=mutable(active),
nonvar(F),
F=(\+H),
nonvar(H),
H=(I,J),
I==A,
J==B ->
remove_constraint_internal(D,L,M),
( M==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(D),
'detach_known/1_1_$special_;/2/2'(L,D)
;
true
),
activate_constraint(O,N,C,P),
( O==yes ->
'$insert_in_store_known/1_1_$special_,/2/2'(C),
'attach_known/1_1_$special_,/2/2'(N,C)
;
true
),
known(G),
( C=suspension(_,Q,_,R,_,_,_,_),
Q=mutable(active),
R=mutable(P) ->
'chr update_mutable'(inactive,Q),
'known/1_1_$special_,/2/2__1__0'(E,A,B,C)
;
true
)
;
'known/1_1_$special_,/2/2__1__0'(E,A,B,C)
).
'known/1_1_$special_,/2/2__1'(A,B,C) :-
'known/1_1_$special_,/2/2__2'(A,B,C).
'known/1_1_$special_,/2/2__2'(A,B,C) :-
'chr via_2'(A,B,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,F,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
G/\4=:=4,
!,
'known/1_1_$special_,/2/2__2__0'(F,A,B,C).
'known/1_1_$special_,/2/2__2__0'([],A,B,C) :-
'known/1_1_$special_,/2/2__3'(A,B,C).
'known/1_1_$special_,/2/2__2__0'([D|E],A,B,C) :-
( D=suspension(_,L,_,_,_,_,F,G),
L=mutable(active),
nonvar(F),
F=(H,_),
nonvar(H),
H=(\+I),
nonvar(I),
I=(J,K),
J==A,
K==B ->
remove_constraint_internal(D,M,N),
( N==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(D),
'detach_known/1_1_$special_;/2/2'(M,D)
;
true
),
activate_constraint(P,O,C,Q),
( P==yes ->
'$insert_in_store_known/1_1_$special_,/2/2'(C),
'attach_known/1_1_$special_,/2/2'(O,C)
;
true
),
known(G),
( C=suspension(_,R,_,S,_,_,_,_),
R=mutable(active),
S=mutable(Q) ->
'chr update_mutable'(inactive,R),
'known/1_1_$special_,/2/2__2__0'(E,A,B,C)
;
true
)
;
'known/1_1_$special_,/2/2__2__0'(E,A,B,C)
).
'known/1_1_$special_,/2/2__2'(A,B,C) :-
'known/1_1_$special_,/2/2__3'(A,B,C).
'known/1_1_$special_,/2/2__3'(_,_,A) :-
activate_constraint(C,B,A,_),
( C==yes ->
'$insert_in_store_known/1_1_$special_,/2/2'(A),
'attach_known/1_1_$special_,/2/2'(B,A)
;
true
).
'known/1_1_$special_\\==/2'(A,B) :-
'known/1_1_$special_\\==/2/2__0'(A,B,_).
'known/1_1_$special_\\==/2/2__0'(A,B,C) :-
'chr via_2'(A,B,E),
get_attr(E,guard_entailment,F),
F=v(H,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,G,_,_,_,_,_,_,_),
H/\262144=:=262144,
(
'chr sbag_member'(D,G),
D=suspension(_,K,_,_,_,_,I,J),
K=mutable(active),
I==A,
J==B,
!,
( var(C) ->
true
;
remove_constraint_internal(C,L,M),
( M==yes ->
'$delete_from_store_known/1_1_$special_\\==/2/2'(C),
'detach_known/1_1_$special_\\==/2/2'(L,C)
;
true
)
)
;
!,
( var(C) ->
allocate_constraint(guard_entailment:'known/1_1_$special_\\==/2/2__0'(A,B,C),C,'known/1_1_$special_\\==/2'(A,B),[A,B])
;
true
),
'known/1_1_$special_\\==/2/2__0__0'(G,A,B,C)
).
'known/1_1_$special_\\==/2/2__0__0'([],A,B,C) :-
'known/1_1_$special_\\==/2/2__1'(A,B,C).
'known/1_1_$special_\\==/2/2__0__0'([D|E],A,B,C) :-
( D=suspension(_,H,_,_,_,_,F,G),
H=mutable(active),
F==A,
G==B ->
remove_constraint_internal(D,I,J),
( J==yes ->
'$delete_from_store_known/1_1_$special_\\==/2/2'(D),
'detach_known/1_1_$special_\\==/2/2'(I,D)
;
true
),
'known/1_1_$special_\\==/2/2__0__0'(E,A,B,C)
;
'known/1_1_$special_\\==/2/2__0__0'(E,A,B,C)
).
'known/1_1_$special_\\==/2/2__0'(A,B,C) :-
( var(C) ->
allocate_constraint(guard_entailment:'known/1_1_$special_\\==/2/2__0'(A,B,C),C,'known/1_1_$special_\\==/2'(A,B),[A,B])
;
true
),
'known/1_1_$special_\\==/2/2__1'(A,B,C).
'known/1_1_$special_\\==/2/2__1'(A,B,C) :-
'chr novel_production'(C,138),
number(A),
!,
'chr extend_history'(C,138),
activate_constraint(E,D,C,F),
( E==yes ->
'$insert_in_store_known/1_1_$special_\\==/2/2'(C),
'attach_known/1_1_$special_\\==/2/2'(D,C)
;
true
),
'known/1_1_$special_=\\=/2'(A,B),
( C=suspension(_,G,_,H,_,_,_,_),
G=mutable(active),
H=mutable(F) ->
'chr update_mutable'(inactive,G),
'known/1_1_$special_\\==/2/2__2'(A,B,C)
;
true
).
'known/1_1_$special_\\==/2/2__1'(A,B,C) :-
'known/1_1_$special_\\==/2/2__2'(A,B,C).
'known/1_1_$special_\\==/2/2__2'(A,B,C) :-
'chr novel_production'(C,139),
number(B),
!,
'chr extend_history'(C,139),
activate_constraint(E,D,C,F),
( E==yes ->
'$insert_in_store_known/1_1_$special_\\==/2/2'(C),
'attach_known/1_1_$special_\\==/2/2'(D,C)
;
true
),
'known/1_1_$special_=\\=/2'(A,B),
( C=suspension(_,G,_,H,_,_,_,_),
G=mutable(active),
H=mutable(F) ->
'chr update_mutable'(inactive,G),
'known/1_1_$special_\\==/2/2__3'(A,B,C)
;
true
).
'known/1_1_$special_\\==/2/2__2'(A,B,C) :-
'known/1_1_$special_\\==/2/2__3'(A,B,C).
'known/1_1_$special_\\==/2/2__3'(_,_,A) :-
nb_getval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',C),
'chr sbag_member'(B,C),
B=suspension(_,D,_,_,_,_),
D=mutable(active),
!,
( var(A) ->
true
;
remove_constraint_internal(A,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_\\==/2/2'(A),
'detach_known/1_1_$special_\\==/2/2'(E,A)
;
true
)
).
'known/1_1_$special_\\==/2/2__3'(A,B,C) :-
'chr via_2'(A,B,E),
get_attr(E,guard_entailment,F),
F=v(I,_,_,_,_,_,_,_,_,_,_,_,_,_,G,_,_,_,_,_,H,_,_,_,_,_,_),
(
I/\8192=:=8192,
'chr sbag_member'(D,G),
D=suspension(_,M,_,_,_,_,J),
M=mutable(active),
nonvar(J),
J=(K\==L),
K==A,
L==B,
!,
remove_constraint_internal(D,N,O),
( O==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(D),
'detach_known/1_1_$special_\\+/1/1'(N,D)
;
true
),
( var(C) ->
true
;
remove_constraint_internal(C,P,Q),
( Q==yes ->
'$delete_from_store_known/1_1_$special_\\==/2/2'(C),
'detach_known/1_1_$special_\\==/2/2'(P,C)
;
true
)
),
'known/1_1_$special_fail/0'
;
I/\524288=:=524288,
'chr sbag_member'(R,H),
R=suspension(_,U,_,_,_,_,S,T),
U=mutable(active),
S==A,
T==B,
!,
remove_constraint_internal(R,V,W),
( W==yes ->
'$delete_from_store_known/1_1_$special_==/2/2'(R),
'detach_known/1_1_$special_==/2/2'(V,R)
;
true
),
( var(C) ->
true
;
remove_constraint_internal(C,X,Y),
( Y==yes ->
'$delete_from_store_known/1_1_$special_\\==/2/2'(C),
'detach_known/1_1_$special_\\==/2/2'(X,C)
;
true
)
),
'known/1_1_$special_fail/0'
).
'known/1_1_$special_\\==/2/2__3'(A,B,C) :-
'chr via_1'(A,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,F,_,_,_,_,_,_),
G/\524288=:=524288,
!,
'known/1_1_$special_\\==/2/2__3__0'(F,A,B,C).
'known/1_1_$special_\\==/2/2__3__0'([],A,B,C) :-
'known/1_1_$special_\\==/2/2__4'(A,B,C).
'known/1_1_$special_\\==/2/2__3__0'([G|H],A,B,C) :-
( G=suspension(_,F,_,_,_,_,D,E),
F=mutable(active),
E==A,
N=t(229,G,C),
'chr novel_production'(G,N),
'chr novel_production'(C,N) ->
'chr extend_history'(C,N),
activate_constraint(J,I,C,K),
( J==yes ->
'$insert_in_store_known/1_1_$special_\\==/2/2'(C),
'attach_known/1_1_$special_\\==/2/2'(I,C)
;
true
),
'known/1_1_$special_\\==/2'(D,B),
( C=suspension(_,L,_,M,_,_,_,_),
L=mutable(active),
M=mutable(K) ->
'chr update_mutable'(inactive,L),
'known/1_1_$special_\\==/2/2__3__0'(H,A,B,C)
;
true
)
;
'known/1_1_$special_\\==/2/2__3__0'(H,A,B,C)
).
'known/1_1_$special_\\==/2/2__3'(A,B,C) :-
'known/1_1_$special_\\==/2/2__4'(A,B,C).
'known/1_1_$special_\\==/2/2__4'(A,B,C) :-
'chr novel_production'(C,231),
!,
'chr extend_history'(C,231),
activate_constraint(E,D,C,F),
( E==yes ->
'$insert_in_store_known/1_1_$special_\\==/2/2'(C),
'attach_known/1_1_$special_\\==/2/2'(D,C)
;
true
),
'known/1_1_$special_\\==/2'(B,A),
( C=suspension(_,G,_,H,_,_,_,_),
G=mutable(active),
H=mutable(F) ->
'chr update_mutable'(inactive,G),
'known/1_1_$special_\\==/2/2__5'(A,B,C)
;
true
).
'known/1_1_$special_\\==/2/2__4'(A,B,C) :-
'known/1_1_$special_\\==/2/2__5'(A,B,C).
'known/1_1_$special_\\==/2/2__5'(A,B,C) :-
B==A,
'chr novel_production'(C,232),
!,
'chr extend_history'(C,232),
activate_constraint(E,D,C,F),
( E==yes ->
'$insert_in_store_known/1_1_$special_\\==/2/2'(C),
'attach_known/1_1_$special_\\==/2/2'(D,C)
;
true
),
'known/1_1_$special_fail/0',
( C=suspension(_,G,_,H,_,_,_,_),
G=mutable(active),
H=mutable(F) ->
'chr update_mutable'(inactive,G),
'known/1_1_$special_\\==/2/2__6'(A,B,C)
;
true
).
'known/1_1_$special_\\==/2/2__5'(A,B,C) :-
'known/1_1_$special_\\==/2/2__6'(A,B,C).
'known/1_1_$special_\\==/2/2__6'(A,B,C) :-
nonvar(B),
nonvar(A),
'chr lock'(A),
functor(A,D,E),
'chr unlock'(A),
!,
( var(C) ->
true
;
remove_constraint_internal(C,I,J),
( J==yes ->
'$delete_from_store_known/1_1_$special_\\==/2/2'(C),
'detach_known/1_1_$special_\\==/2/2'(I,C)
;
true
)
),
( functor(B,D,E) ->
A=..[D|F],
B=..[D|G],
add_args_nmatch(F,G,H),
known(H)
;
true
).
'known/1_1_$special_\\==/2/2__6'(A,B,C) :-
'chr via_2'(A,B,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,F,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
G/\4=:=4,
!,
'known/1_1_$special_\\==/2/2__6__0'(F,A,B,C).
'known/1_1_$special_\\==/2/2__6__0'([],A,B,C) :-
'known/1_1_$special_\\==/2/2__7'(A,B,C).
'known/1_1_$special_\\==/2/2__6__0'([D|E],A,B,C) :-
( D=suspension(_,K,_,_,_,_,F,G),
K=mutable(active),
nonvar(F),
F=(\+H),
nonvar(H),
H=(I\==J),
I==A,
J==B ->
remove_constraint_internal(D,L,M),
( M==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(D),
'detach_known/1_1_$special_;/2/2'(L,D)
;
true
),
activate_constraint(O,N,C,P),
( O==yes ->
'$insert_in_store_known/1_1_$special_\\==/2/2'(C),
'attach_known/1_1_$special_\\==/2/2'(N,C)
;
true
),
known(G),
( C=suspension(_,Q,_,R,_,_,_,_),
Q=mutable(active),
R=mutable(P) ->
'chr update_mutable'(inactive,Q),
'known/1_1_$special_\\==/2/2__6__0'(E,A,B,C)
;
true
)
;
'known/1_1_$special_\\==/2/2__6__0'(E,A,B,C)
).
'known/1_1_$special_\\==/2/2__6'(A,B,C) :-
'known/1_1_$special_\\==/2/2__7'(A,B,C).
'known/1_1_$special_\\==/2/2__7'(A,B,C) :-
'chr via_2'(A,B,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,F,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
G/\4=:=4,
!,
'known/1_1_$special_\\==/2/2__7__0'(F,A,B,C).
'known/1_1_$special_\\==/2/2__7__0'([],A,B,C) :-
'known/1_1_$special_\\==/2/2__8'(A,B,C).
'known/1_1_$special_\\==/2/2__7__0'([D|E],A,B,C) :-
( D=suspension(_,L,_,_,_,_,F,G),
L=mutable(active),
nonvar(F),
F=(H,_),
nonvar(H),
H=(\+I),
nonvar(I),
I=(J\==K),
J==A,
K==B ->
remove_constraint_internal(D,M,N),
( N==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(D),
'detach_known/1_1_$special_;/2/2'(M,D)
;
true
),
activate_constraint(P,O,C,Q),
( P==yes ->
'$insert_in_store_known/1_1_$special_\\==/2/2'(C),
'attach_known/1_1_$special_\\==/2/2'(O,C)
;
true
),
known(G),
( C=suspension(_,R,_,S,_,_,_,_),
R=mutable(active),
S=mutable(Q) ->
'chr update_mutable'(inactive,R),
'known/1_1_$special_\\==/2/2__7__0'(E,A,B,C)
;
true
)
;
'known/1_1_$special_\\==/2/2__7__0'(E,A,B,C)
).
'known/1_1_$special_\\==/2/2__7'(A,B,C) :-
'known/1_1_$special_\\==/2/2__8'(A,B,C).
'known/1_1_$special_\\==/2/2__8'(_,_,A) :-
activate_constraint(C,B,A,_),
( C==yes ->
'$insert_in_store_known/1_1_$special_\\==/2/2'(A),
'attach_known/1_1_$special_\\==/2/2'(B,A)
;
true
).
'known/1_1_$special_==/2'(A,B) :-
'known/1_1_$special_==/2/2__0'(A,B,_).
'known/1_1_$special_==/2/2__0'(A,B,C) :-
'chr via_2'(A,B,E),
get_attr(E,guard_entailment,F),
F=v(H,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,G,_,_,_,_,_,_),
H/\524288=:=524288,
(
'chr sbag_member'(D,G),
D=suspension(_,K,_,_,_,_,I,J),
K=mutable(active),
I==A,
J==B,
!,
( var(C) ->
true
;
remove_constraint_internal(C,L,M),
( M==yes ->
'$delete_from_store_known/1_1_$special_==/2/2'(C),
'detach_known/1_1_$special_==/2/2'(L,C)
;
true
)
)
;
!,
( var(C) ->
allocate_constraint(guard_entailment:'known/1_1_$special_==/2/2__0'(A,B,C),C,'known/1_1_$special_==/2'(A,B),[A,B])
;
true
),
'known/1_1_$special_==/2/2__0__0'(G,A,B,C)
).
'known/1_1_$special_==/2/2__0__0'([],A,B,C) :-
'known/1_1_$special_==/2/2__1'(A,B,C).
'known/1_1_$special_==/2/2__0__0'([D|E],A,B,C) :-
( D=suspension(_,H,_,_,_,_,F,G),
H=mutable(active),
F==A,
G==B ->
remove_constraint_internal(D,I,J),
( J==yes ->
'$delete_from_store_known/1_1_$special_==/2/2'(D),
'detach_known/1_1_$special_==/2/2'(I,D)
;
true
),
'known/1_1_$special_==/2/2__0__0'(E,A,B,C)
;
'known/1_1_$special_==/2/2__0__0'(E,A,B,C)
).
'known/1_1_$special_==/2/2__0'(A,B,C) :-
( var(C) ->
allocate_constraint(guard_entailment:'known/1_1_$special_==/2/2__0'(A,B,C),C,'known/1_1_$special_==/2'(A,B),[A,B])
;
true
),
'known/1_1_$special_==/2/2__1'(A,B,C).
'known/1_1_$special_==/2/2__1'(A,B,C) :-
'chr novel_production'(C,136),
number(A),
!,
'chr extend_history'(C,136),
activate_constraint(E,D,C,F),
( E==yes ->
'$insert_in_store_known/1_1_$special_==/2/2'(C),
'attach_known/1_1_$special_==/2/2'(D,C)
;
true
),
'known/1_1_$special_=:=/2'(A,B),
( C=suspension(_,G,_,H,_,_,_,_),
G=mutable(active),
H=mutable(F) ->
'chr update_mutable'(inactive,G),
'known/1_1_$special_==/2/2__2'(A,B,C)
;
true
).
'known/1_1_$special_==/2/2__1'(A,B,C) :-
'known/1_1_$special_==/2/2__2'(A,B,C).
'known/1_1_$special_==/2/2__2'(A,B,C) :-
'chr novel_production'(C,137),
number(B),
!,
'chr extend_history'(C,137),
activate_constraint(E,D,C,F),
( E==yes ->
'$insert_in_store_known/1_1_$special_==/2/2'(C),
'attach_known/1_1_$special_==/2/2'(D,C)
;
true
),
'known/1_1_$special_=:=/2'(A,B),
( C=suspension(_,G,_,H,_,_,_,_),
G=mutable(active),
H=mutable(F) ->
'chr update_mutable'(inactive,G),
'known/1_1_$special_==/2/2__3'(A,B,C)
;
true
).
'known/1_1_$special_==/2/2__2'(A,B,C) :-
'known/1_1_$special_==/2/2__3'(A,B,C).
'known/1_1_$special_==/2/2__3'(_,_,A) :-
nb_getval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',C),
'chr sbag_member'(B,C),
B=suspension(_,D,_,_,_,_),
D=mutable(active),
!,
( var(A) ->
true
;
remove_constraint_internal(A,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_==/2/2'(A),
'detach_known/1_1_$special_==/2/2'(E,A)
;
true
)
).
'known/1_1_$special_==/2/2__3'(A,B,C) :-
B==A,
!,
( var(C) ->
true
;
remove_constraint_internal(C,D,E),
( E==yes ->
'$delete_from_store_known/1_1_$special_==/2/2'(C),
'detach_known/1_1_$special_==/2/2'(D,C)
;
true
)
).
'known/1_1_$special_==/2/2__3'(A,B,C) :-
'chr via_2'(A,B,E),
get_attr(E,guard_entailment,F),
F=v(I,_,_,_,_,_,_,_,_,_,_,_,_,_,G,_,_,_,_,H,_,_,_,_,_,_,_),
(
I/\8192=:=8192,
'chr sbag_member'(D,G),
D=suspension(_,M,_,_,_,_,J),
M=mutable(active),
nonvar(J),
J=(K==L),
K==A,
L==B,
!,
remove_constraint_internal(D,N,O),
( O==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(D),
'detach_known/1_1_$special_\\+/1/1'(N,D)
;
true
),
( var(C) ->
true
;
remove_constraint_internal(C,P,Q),
( Q==yes ->
'$delete_from_store_known/1_1_$special_==/2/2'(C),
'detach_known/1_1_$special_==/2/2'(P,C)
;
true
)
),
'known/1_1_$special_fail/0'
;
I/\262144=:=262144,
'chr sbag_member'(R,H),
R=suspension(_,U,_,_,_,_,S,T),
U=mutable(active),
S==A,
T==B,
!,
remove_constraint_internal(R,V,W),
( W==yes ->
'$delete_from_store_known/1_1_$special_\\==/2/2'(R),
'detach_known/1_1_$special_\\==/2/2'(V,R)
;
true
),
( var(C) ->
true
;
remove_constraint_internal(C,X,Y),
( Y==yes ->
'$delete_from_store_known/1_1_$special_==/2/2'(C),
'detach_known/1_1_$special_==/2/2'(X,C)
;
true
)
),
'known/1_1_$special_fail/0'
).
'known/1_1_$special_==/2/2__3'(A,B,C) :-
'chr via_1'(B,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,F,_,_,_,_,_,_),
G/\524288=:=524288,
!,
'known/1_1_$special_==/2/2__3__0'(F,A,B,C).
'known/1_1_$special_==/2/2__3__0'([],A,B,C) :-
'known/1_1_$special_==/2/2__4'(A,B,C).
'known/1_1_$special_==/2/2__3__0'([G|H],A,B,C) :-
( G=suspension(_,F,_,_,_,_,D,E),
F=mutable(active),
D==B,
N=t(228,C,G),
'chr novel_production'(C,N),
'chr novel_production'(G,N) ->
'chr extend_history'(C,N),
activate_constraint(J,I,C,K),
( J==yes ->
'$insert_in_store_known/1_1_$special_==/2/2'(C),
'attach_known/1_1_$special_==/2/2'(I,C)
;
true
),
'known/1_1_$special_==/2'(A,E),
( C=suspension(_,L,_,M,_,_,_,_),
L=mutable(active),
M=mutable(K) ->
'chr update_mutable'(inactive,L),
'known/1_1_$special_==/2/2__3__0'(H,A,B,C)
;
true
)
;
'known/1_1_$special_==/2/2__3__0'(H,A,B,C)
).
'known/1_1_$special_==/2/2__3'(A,B,C) :-
'known/1_1_$special_==/2/2__4'(A,B,C).
'known/1_1_$special_==/2/2__4'(A,B,C) :-
'chr via_1'(A,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,F,_,_,_,_,_,_),
G/\524288=:=524288,
!,
'known/1_1_$special_==/2/2__4__0'(F,A,B,C).
'known/1_1_$special_==/2/2__4__0'([],A,B,C) :-
'known/1_1_$special_==/2/2__5'(A,B,C).
'known/1_1_$special_==/2/2__4__0'([G|H],A,B,C) :-
( G=suspension(_,F,_,_,_,_,D,E),
F=mutable(active),
E==A,
N=t(228,G,C),
'chr novel_production'(G,N),
'chr novel_production'(C,N) ->
'chr extend_history'(C,N),
activate_constraint(J,I,C,K),
( J==yes ->
'$insert_in_store_known/1_1_$special_==/2/2'(C),
'attach_known/1_1_$special_==/2/2'(I,C)
;
true
),
'known/1_1_$special_==/2'(D,B),
( C=suspension(_,L,_,M,_,_,_,_),
L=mutable(active),
M=mutable(K) ->
'chr update_mutable'(inactive,L),
'known/1_1_$special_==/2/2__4__0'(H,A,B,C)
;
true
)
;
'known/1_1_$special_==/2/2__4__0'(H,A,B,C)
).
'known/1_1_$special_==/2/2__4'(A,B,C) :-
'known/1_1_$special_==/2/2__5'(A,B,C).
'known/1_1_$special_==/2/2__5'(A,B,C) :-
'chr via_1'(B,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,F,_,_,_,_,_,_,_),
G/\262144=:=262144,
!,
'known/1_1_$special_==/2/2__5__0'(F,A,B,C).
'known/1_1_$special_==/2/2__5__0'([],A,B,C) :-
'known/1_1_$special_==/2/2__6'(A,B,C).
'known/1_1_$special_==/2/2__5__0'([G|H],A,B,C) :-
( G=suspension(_,F,_,_,_,_,D,E),
F=mutable(active),
D==B,
N=t(229,C,G),
'chr novel_production'(C,N),
'chr novel_production'(G,N) ->
'chr extend_history'(C,N),
activate_constraint(J,I,C,K),
( J==yes ->
'$insert_in_store_known/1_1_$special_==/2/2'(C),
'attach_known/1_1_$special_==/2/2'(I,C)
;
true
),
'known/1_1_$special_\\==/2'(A,E),
( C=suspension(_,L,_,M,_,_,_,_),
L=mutable(active),
M=mutable(K) ->
'chr update_mutable'(inactive,L),
'known/1_1_$special_==/2/2__5__0'(H,A,B,C)
;
true
)
;
'known/1_1_$special_==/2/2__5__0'(H,A,B,C)
).
'known/1_1_$special_==/2/2__5'(A,B,C) :-
'known/1_1_$special_==/2/2__6'(A,B,C).
'known/1_1_$special_==/2/2__6'(A,B,C) :-
'chr novel_production'(C,230),
!,
'chr extend_history'(C,230),
activate_constraint(E,D,C,F),
( E==yes ->
'$insert_in_store_known/1_1_$special_==/2/2'(C),
'attach_known/1_1_$special_==/2/2'(D,C)
;
true
),
'known/1_1_$special_==/2'(B,A),
( C=suspension(_,G,_,H,_,_,_,_),
G=mutable(active),
H=mutable(F) ->
'chr update_mutable'(inactive,G),
'known/1_1_$special_==/2/2__7'(A,B,C)
;
true
).
'known/1_1_$special_==/2/2__6'(A,B,C) :-
'known/1_1_$special_==/2/2__7'(A,B,C).
'known/1_1_$special_==/2/2__7'(A,B,C) :-
'chr novel_production'(C,234),
!,
'chr extend_history'(C,234),
activate_constraint(E,D,C,F),
( E==yes ->
'$insert_in_store_known/1_1_$special_==/2/2'(C),
'attach_known/1_1_$special_==/2/2'(D,C)
;
true
),
'known/1_1_$special_=/2'(A,B),
( C=suspension(_,G,_,H,_,_,_,_),
G=mutable(active),
H=mutable(F) ->
'chr update_mutable'(inactive,G),
'known/1_1_$special_==/2/2__8'(A,B,C)
;
true
).
'known/1_1_$special_==/2/2__7'(A,B,C) :-
'known/1_1_$special_==/2/2__8'(A,B,C).
'known/1_1_$special_==/2/2__8'(A,B,C) :-
'chr via_2'(A,B,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,F,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
G/\4=:=4,
!,
'known/1_1_$special_==/2/2__8__0'(F,A,B,C).
'known/1_1_$special_==/2/2__8__0'([],A,B,C) :-
'known/1_1_$special_==/2/2__9'(A,B,C).
'known/1_1_$special_==/2/2__8__0'([D|E],A,B,C) :-
( D=suspension(_,K,_,_,_,_,F,G),
K=mutable(active),
nonvar(F),
F=(\+H),
nonvar(H),
H=(I==J),
I==A,
J==B ->
remove_constraint_internal(D,L,M),
( M==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(D),
'detach_known/1_1_$special_;/2/2'(L,D)
;
true
),
activate_constraint(O,N,C,P),
( O==yes ->
'$insert_in_store_known/1_1_$special_==/2/2'(C),
'attach_known/1_1_$special_==/2/2'(N,C)
;
true
),
known(G),
( C=suspension(_,Q,_,R,_,_,_,_),
Q=mutable(active),
R=mutable(P) ->
'chr update_mutable'(inactive,Q),
'known/1_1_$special_==/2/2__8__0'(E,A,B,C)
;
true
)
;
'known/1_1_$special_==/2/2__8__0'(E,A,B,C)
).
'known/1_1_$special_==/2/2__8'(A,B,C) :-
'known/1_1_$special_==/2/2__9'(A,B,C).
'known/1_1_$special_==/2/2__9'(A,B,C) :-
'chr via_2'(A,B,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,F,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
G/\4=:=4,
!,
'known/1_1_$special_==/2/2__9__0'(F,A,B,C).
'known/1_1_$special_==/2/2__9__0'([],A,B,C) :-
'known/1_1_$special_==/2/2__10'(A,B,C).
'known/1_1_$special_==/2/2__9__0'([D|E],A,B,C) :-
( D=suspension(_,L,_,_,_,_,F,G),
L=mutable(active),
nonvar(F),
F=(H,_),
nonvar(H),
H=(\+I),
nonvar(I),
I=(J==K),
J==A,
K==B ->
remove_constraint_internal(D,M,N),
( N==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(D),
'detach_known/1_1_$special_;/2/2'(M,D)
;
true
),
activate_constraint(P,O,C,Q),
( P==yes ->
'$insert_in_store_known/1_1_$special_==/2/2'(C),
'attach_known/1_1_$special_==/2/2'(O,C)
;
true
),
known(G),
( C=suspension(_,R,_,S,_,_,_,_),
R=mutable(active),
S=mutable(Q) ->
'chr update_mutable'(inactive,R),
'known/1_1_$special_==/2/2__9__0'(E,A,B,C)
;
true
)
;
'known/1_1_$special_==/2/2__9__0'(E,A,B,C)
).
'known/1_1_$special_==/2/2__9'(A,B,C) :-
'known/1_1_$special_==/2/2__10'(A,B,C).
'known/1_1_$special_==/2/2__10'(_,_,A) :-
activate_constraint(C,B,A,_),
( C==yes ->
'$insert_in_store_known/1_1_$special_==/2/2'(A),
'attach_known/1_1_$special_==/2/2'(B,A)
;
true
).
'known/1_1_$special_is/2'(A,B) :-
'known/1_1_$special_is/2/2__0'(A,B,_).
'known/1_1_$special_is/2/2__0'(A,B,C) :-
'chr via_2'(A,B,E),
get_attr(E,guard_entailment,F),
F=v(H,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,G,_,_,_,_,_),
H/\1048576=:=1048576,
(
'chr sbag_member'(D,G),
D=suspension(_,K,_,_,_,_,I,J),
K=mutable(active),
I==A,
J==B,
!,
( var(C) ->
true
;
remove_constraint_internal(C,L,M),
( M==yes ->
'$delete_from_store_known/1_1_$special_is/2/2'(C),
'detach_known/1_1_$special_is/2/2'(L,C)
;
true
)
)
;
!,
( var(C) ->
allocate_constraint(guard_entailment:'known/1_1_$special_is/2/2__0'(A,B,C),C,'known/1_1_$special_is/2'(A,B),[A,B])
;
true
),
'known/1_1_$special_is/2/2__0__0'(G,A,B,C)
).
'known/1_1_$special_is/2/2__0__0'([],A,B,C) :-
'known/1_1_$special_is/2/2__1'(A,B,C).
'known/1_1_$special_is/2/2__0__0'([D|E],A,B,C) :-
( D=suspension(_,H,_,_,_,_,F,G),
H=mutable(active),
F==A,
G==B ->
remove_constraint_internal(D,I,J),
( J==yes ->
'$delete_from_store_known/1_1_$special_is/2/2'(D),
'detach_known/1_1_$special_is/2/2'(I,D)
;
true
),
'known/1_1_$special_is/2/2__0__0'(E,A,B,C)
;
'known/1_1_$special_is/2/2__0__0'(E,A,B,C)
).
'known/1_1_$special_is/2/2__0'(A,B,C) :-
( var(C) ->
allocate_constraint(guard_entailment:'known/1_1_$special_is/2/2__0'(A,B,C),C,'known/1_1_$special_is/2'(A,B),[A,B])
;
true
),
'known/1_1_$special_is/2/2__1'(A,B,C).
'known/1_1_$special_is/2/2__1'(A,B,C) :-
!,
( var(C) ->
true
;
remove_constraint_internal(C,D,E),
( E==yes ->
'$delete_from_store_known/1_1_$special_is/2/2'(C),
'detach_known/1_1_$special_is/2/2'(D,C)
;
true
)
),
'known/1_1_$special_=:=/2'(A,B).
'known/1_1_$special_is/2/2__1__0'([],A,B,C) :-
'known/1_1_$special_is/2/2__2'(A,B,C).
'known/1_1_$special_is/2/2__1__0'([D|E],A,B,C) :-
( D=suspension(_,K,_,_,_,_,F,G),
K=mutable(active),
nonvar(F),
F=(\+H),
nonvar(H),
H=(I is J),
I==A,
J==B ->
remove_constraint_internal(D,L,M),
( M==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(D),
'detach_known/1_1_$special_;/2/2'(L,D)
;
true
),
activate_constraint(O,N,C,P),
( O==yes ->
'$insert_in_store_known/1_1_$special_is/2/2'(C),
'attach_known/1_1_$special_is/2/2'(N,C)
;
true
),
known(G),
( C=suspension(_,Q,_,R,_,_,_,_),
Q=mutable(active),
R=mutable(P) ->
'chr update_mutable'(inactive,Q),
'known/1_1_$special_is/2/2__1__0'(E,A,B,C)
;
true
)
;
'known/1_1_$special_is/2/2__1__0'(E,A,B,C)
).
'known/1_1_$special_is/2/2__1'(A,B,C) :-
'known/1_1_$special_is/2/2__2'(A,B,C).
'known/1_1_$special_is/2/2__2'(A,B,C) :-
'chr via_2'(A,B,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,F,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
G/\4=:=4,
!,
'known/1_1_$special_is/2/2__2__0'(F,A,B,C).
'known/1_1_$special_is/2/2__2__0'([],A,B,C) :-
'known/1_1_$special_is/2/2__3'(A,B,C).
'known/1_1_$special_is/2/2__2__0'([D|E],A,B,C) :-
( D=suspension(_,L,_,_,_,_,F,G),
L=mutable(active),
nonvar(F),
F=(H,_),
nonvar(H),
H=(\+I),
nonvar(I),
I=(J is K),
J==A,
K==B ->
remove_constraint_internal(D,M,N),
( N==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(D),
'detach_known/1_1_$special_;/2/2'(M,D)
;
true
),
activate_constraint(P,O,C,Q),
( P==yes ->
'$insert_in_store_known/1_1_$special_is/2/2'(C),
'attach_known/1_1_$special_is/2/2'(O,C)
;
true
),
known(G),
( C=suspension(_,R,_,S,_,_,_,_),
R=mutable(active),
S=mutable(Q) ->
'chr update_mutable'(inactive,R),
'known/1_1_$special_is/2/2__2__0'(E,A,B,C)
;
true
)
;
'known/1_1_$special_is/2/2__2__0'(E,A,B,C)
).
'known/1_1_$special_is/2/2__2'(A,B,C) :-
'known/1_1_$special_is/2/2__3'(A,B,C).
'known/1_1_$special_is/2/2__3'(_,_,A) :-
activate_constraint(C,B,A,_),
( C==yes ->
'$insert_in_store_known/1_1_$special_is/2/2'(A),
'attach_known/1_1_$special_is/2/2'(B,A)
;
true
).
'known/1_1_$special_</2'(A,B) :-
'known/1_1_$special_</2/2__0'(A,B,_).
'known/1_1_$special_</2/2__0'(A,B,C) :-
'chr via_2'(A,B,E),
get_attr(E,guard_entailment,F),
F=v(H,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,G,_,_,_,_),
H/\2097152=:=2097152,
(
'chr sbag_member'(D,G),
D=suspension(_,K,_,_,_,_,I,J),
K=mutable(active),
I==A,
J==B,
!,
( var(C) ->
true
;
remove_constraint_internal(C,L,M),
( M==yes ->
'$delete_from_store_known/1_1_$special_</2/2'(C),
'detach_known/1_1_$special_</2/2'(L,C)
;
true
)
)
;
!,
( var(C) ->
allocate_constraint(guard_entailment:'known/1_1_$special_</2/2__0'(A,B,C),C,'known/1_1_$special_</2'(A,B),[A,B])
;
true
),
'known/1_1_$special_</2/2__0__0'(G,A,B,C)
).
'known/1_1_$special_</2/2__0__0'([],A,B,C) :-
'known/1_1_$special_</2/2__1'(A,B,C).
'known/1_1_$special_</2/2__0__0'([D|E],A,B,C) :-
( D=suspension(_,H,_,_,_,_,F,G),
H=mutable(active),
F==A,
G==B ->
remove_constraint_internal(D,I,J),
( J==yes ->
'$delete_from_store_known/1_1_$special_</2/2'(D),
'detach_known/1_1_$special_</2/2'(I,D)
;
true
),
'known/1_1_$special_</2/2__0__0'(E,A,B,C)
;
'known/1_1_$special_</2/2__0__0'(E,A,B,C)
).
'known/1_1_$special_</2/2__0'(A,B,C) :-
( var(C) ->
allocate_constraint(guard_entailment:'known/1_1_$special_</2/2__0'(A,B,C),C,'known/1_1_$special_</2'(A,B),[A,B])
;
true
),
'known/1_1_$special_</2/2__1'(A,B,C).
'known/1_1_$special_</2/2__1'(A,B,C) :-
!,
( var(C) ->
true
;
remove_constraint_internal(C,D,E),
( E==yes ->
'$delete_from_store_known/1_1_$special_</2/2'(C),
'detach_known/1_1_$special_</2/2'(D,C)
;
true
)
),
'known/1_1_$special_=</2'(A,B),
'known/1_1_$special_=\\=/2'(A,B).
'known/1_1_$special_</2/2__1__0'([],A,B,C) :-
'known/1_1_$special_</2/2__2'(A,B,C).
'known/1_1_$special_</2/2__1__0'([D|E],A,B,C) :-
( D=suspension(_,K,_,_,_,_,F,G),
K=mutable(active),
nonvar(F),
F=(\+H),
nonvar(H),
H=(I<J),
I==A,
J==B ->
remove_constraint_internal(D,L,M),
( M==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(D),
'detach_known/1_1_$special_;/2/2'(L,D)
;
true
),
activate_constraint(O,N,C,P),
( O==yes ->
'$insert_in_store_known/1_1_$special_</2/2'(C),
'attach_known/1_1_$special_</2/2'(N,C)
;
true
),
known(G),
( C=suspension(_,Q,_,R,_,_,_,_),
Q=mutable(active),
R=mutable(P) ->
'chr update_mutable'(inactive,Q),
'known/1_1_$special_</2/2__1__0'(E,A,B,C)
;
true
)
;
'known/1_1_$special_</2/2__1__0'(E,A,B,C)
).
'known/1_1_$special_</2/2__1'(A,B,C) :-
'known/1_1_$special_</2/2__2'(A,B,C).
'known/1_1_$special_</2/2__2'(A,B,C) :-
'chr via_2'(A,B,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,F,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
G/\4=:=4,
!,
'known/1_1_$special_</2/2__2__0'(F,A,B,C).
'known/1_1_$special_</2/2__2__0'([],A,B,C) :-
'known/1_1_$special_</2/2__3'(A,B,C).
'known/1_1_$special_</2/2__2__0'([D|E],A,B,C) :-
( D=suspension(_,L,_,_,_,_,F,G),
L=mutable(active),
nonvar(F),
F=(H,_),
nonvar(H),
H=(\+I),
nonvar(I),
I=(J<K),
J==A,
K==B ->
remove_constraint_internal(D,M,N),
( N==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(D),
'detach_known/1_1_$special_;/2/2'(M,D)
;
true
),
activate_constraint(P,O,C,Q),
( P==yes ->
'$insert_in_store_known/1_1_$special_</2/2'(C),
'attach_known/1_1_$special_</2/2'(O,C)
;
true
),
known(G),
( C=suspension(_,R,_,S,_,_,_,_),
R=mutable(active),
S=mutable(Q) ->
'chr update_mutable'(inactive,R),
'known/1_1_$special_</2/2__2__0'(E,A,B,C)
;
true
)
;
'known/1_1_$special_</2/2__2__0'(E,A,B,C)
).
'known/1_1_$special_</2/2__2'(A,B,C) :-
'known/1_1_$special_</2/2__3'(A,B,C).
'known/1_1_$special_</2/2__3'(_,_,A) :-
activate_constraint(C,B,A,_),
( C==yes ->
'$insert_in_store_known/1_1_$special_</2/2'(A),
'attach_known/1_1_$special_</2/2'(B,A)
;
true
).
'known/1_1_$special_>=/2'(A,B) :-
'known/1_1_$special_>=/2/2__0'(A,B,_).
'known/1_1_$special_>=/2/2__0'(A,B,C) :-
'chr via_2'(A,B,E),
get_attr(E,guard_entailment,F),
F=v(H,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,G,_,_,_),
H/\4194304=:=4194304,
(
'chr sbag_member'(D,G),
D=suspension(_,K,_,_,_,_,I,J),
K=mutable(active),
I==A,
J==B,
!,
( var(C) ->
true
;
remove_constraint_internal(C,L,M),
( M==yes ->
'$delete_from_store_known/1_1_$special_>=/2/2'(C),
'detach_known/1_1_$special_>=/2/2'(L,C)
;
true
)
)
;
!,
( var(C) ->
allocate_constraint(guard_entailment:'known/1_1_$special_>=/2/2__0'(A,B,C),C,'known/1_1_$special_>=/2'(A,B),[A,B])
;
true
),
'known/1_1_$special_>=/2/2__0__0'(G,A,B,C)
).
'known/1_1_$special_>=/2/2__0__0'([],A,B,C) :-
'known/1_1_$special_>=/2/2__1'(A,B,C).
'known/1_1_$special_>=/2/2__0__0'([D|E],A,B,C) :-
( D=suspension(_,H,_,_,_,_,F,G),
H=mutable(active),
F==A,
G==B ->
remove_constraint_internal(D,I,J),
( J==yes ->
'$delete_from_store_known/1_1_$special_>=/2/2'(D),
'detach_known/1_1_$special_>=/2/2'(I,D)
;
true
),
'known/1_1_$special_>=/2/2__0__0'(E,A,B,C)
;
'known/1_1_$special_>=/2/2__0__0'(E,A,B,C)
).
'known/1_1_$special_>=/2/2__0'(A,B,C) :-
( var(C) ->
allocate_constraint(guard_entailment:'known/1_1_$special_>=/2/2__0'(A,B,C),C,'known/1_1_$special_>=/2'(A,B),[A,B])
;
true
),
'known/1_1_$special_>=/2/2__1'(A,B,C).
'known/1_1_$special_>=/2/2__1'(A,B,C) :-
!,
( var(C) ->
true
;
remove_constraint_internal(C,D,E),
( E==yes ->
'$delete_from_store_known/1_1_$special_>=/2/2'(C),
'detach_known/1_1_$special_>=/2/2'(D,C)
;
true
)
),
'known/1_1_$special_=</2'(B,A).
'known/1_1_$special_>=/2/2__1__0'([],A,B,C) :-
'known/1_1_$special_>=/2/2__2'(A,B,C).
'known/1_1_$special_>=/2/2__1__0'([D|E],A,B,C) :-
( D=suspension(_,K,_,_,_,_,F,G),
K=mutable(active),
nonvar(F),
F=(\+H),
nonvar(H),
H=(I>=J),
I==A,
J==B ->
remove_constraint_internal(D,L,M),
( M==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(D),
'detach_known/1_1_$special_;/2/2'(L,D)
;
true
),
activate_constraint(O,N,C,P),
( O==yes ->
'$insert_in_store_known/1_1_$special_>=/2/2'(C),
'attach_known/1_1_$special_>=/2/2'(N,C)
;
true
),
known(G),
( C=suspension(_,Q,_,R,_,_,_,_),
Q=mutable(active),
R=mutable(P) ->
'chr update_mutable'(inactive,Q),
'known/1_1_$special_>=/2/2__1__0'(E,A,B,C)
;
true
)
;
'known/1_1_$special_>=/2/2__1__0'(E,A,B,C)
).
'known/1_1_$special_>=/2/2__1'(A,B,C) :-
'known/1_1_$special_>=/2/2__2'(A,B,C).
'known/1_1_$special_>=/2/2__2'(A,B,C) :-
'chr via_2'(A,B,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,F,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
G/\4=:=4,
!,
'known/1_1_$special_>=/2/2__2__0'(F,A,B,C).
'known/1_1_$special_>=/2/2__2__0'([],A,B,C) :-
'known/1_1_$special_>=/2/2__3'(A,B,C).
'known/1_1_$special_>=/2/2__2__0'([D|E],A,B,C) :-
( D=suspension(_,L,_,_,_,_,F,G),
L=mutable(active),
nonvar(F),
F=(H,_),
nonvar(H),
H=(\+I),
nonvar(I),
I=(J>=K),
J==A,
K==B ->
remove_constraint_internal(D,M,N),
( N==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(D),
'detach_known/1_1_$special_;/2/2'(M,D)
;
true
),
activate_constraint(P,O,C,Q),
( P==yes ->
'$insert_in_store_known/1_1_$special_>=/2/2'(C),
'attach_known/1_1_$special_>=/2/2'(O,C)
;
true
),
known(G),
( C=suspension(_,R,_,S,_,_,_,_),
R=mutable(active),
S=mutable(Q) ->
'chr update_mutable'(inactive,R),
'known/1_1_$special_>=/2/2__2__0'(E,A,B,C)
;
true
)
;
'known/1_1_$special_>=/2/2__2__0'(E,A,B,C)
).
'known/1_1_$special_>=/2/2__2'(A,B,C) :-
'known/1_1_$special_>=/2/2__3'(A,B,C).
'known/1_1_$special_>=/2/2__3'(_,_,A) :-
activate_constraint(C,B,A,_),
( C==yes ->
'$insert_in_store_known/1_1_$special_>=/2/2'(A),
'attach_known/1_1_$special_>=/2/2'(B,A)
;
true
).
'known/1_1_$special_>/2'(A,B) :-
'known/1_1_$special_>/2/2__0'(A,B,_).
'known/1_1_$special_>/2/2__0'(A,B,C) :-
'chr via_2'(A,B,E),
get_attr(E,guard_entailment,F),
F=v(H,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,G,_,_),
H/\8388608=:=8388608,
(
'chr sbag_member'(D,G),
D=suspension(_,K,_,_,_,_,I,J),
K=mutable(active),
I==A,
J==B,
!,
( var(C) ->
true
;
remove_constraint_internal(C,L,M),
( M==yes ->
'$delete_from_store_known/1_1_$special_>/2/2'(C),
'detach_known/1_1_$special_>/2/2'(L,C)
;
true
)
)
;
!,
( var(C) ->
allocate_constraint(guard_entailment:'known/1_1_$special_>/2/2__0'(A,B,C),C,'known/1_1_$special_>/2'(A,B),[A,B])
;
true
),
'known/1_1_$special_>/2/2__0__0'(G,A,B,C)
).
'known/1_1_$special_>/2/2__0__0'([],A,B,C) :-
'known/1_1_$special_>/2/2__1'(A,B,C).
'known/1_1_$special_>/2/2__0__0'([D|E],A,B,C) :-
( D=suspension(_,H,_,_,_,_,F,G),
H=mutable(active),
F==A,
G==B ->
remove_constraint_internal(D,I,J),
( J==yes ->
'$delete_from_store_known/1_1_$special_>/2/2'(D),
'detach_known/1_1_$special_>/2/2'(I,D)
;
true
),
'known/1_1_$special_>/2/2__0__0'(E,A,B,C)
;
'known/1_1_$special_>/2/2__0__0'(E,A,B,C)
).
'known/1_1_$special_>/2/2__0'(A,B,C) :-
( var(C) ->
allocate_constraint(guard_entailment:'known/1_1_$special_>/2/2__0'(A,B,C),C,'known/1_1_$special_>/2'(A,B),[A,B])
;
true
),
'known/1_1_$special_>/2/2__1'(A,B,C).
'known/1_1_$special_>/2/2__1'(A,B,C) :-
!,
( var(C) ->
true
;
remove_constraint_internal(C,D,E),
( E==yes ->
'$delete_from_store_known/1_1_$special_>/2/2'(C),
'detach_known/1_1_$special_>/2/2'(D,C)
;
true
)
),
'known/1_1_$special_</2'(B,A).
'known/1_1_$special_>/2/2__1__0'([],A,B,C) :-
'known/1_1_$special_>/2/2__2'(A,B,C).
'known/1_1_$special_>/2/2__1__0'([D|E],A,B,C) :-
( D=suspension(_,K,_,_,_,_,F,G),
K=mutable(active),
nonvar(F),
F=(\+H),
nonvar(H),
H=(I>J),
I==A,
J==B ->
remove_constraint_internal(D,L,M),
( M==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(D),
'detach_known/1_1_$special_;/2/2'(L,D)
;
true
),
activate_constraint(O,N,C,P),
( O==yes ->
'$insert_in_store_known/1_1_$special_>/2/2'(C),
'attach_known/1_1_$special_>/2/2'(N,C)
;
true
),
known(G),
( C=suspension(_,Q,_,R,_,_,_,_),
Q=mutable(active),
R=mutable(P) ->
'chr update_mutable'(inactive,Q),
'known/1_1_$special_>/2/2__1__0'(E,A,B,C)
;
true
)
;
'known/1_1_$special_>/2/2__1__0'(E,A,B,C)
).
'known/1_1_$special_>/2/2__1'(A,B,C) :-
'known/1_1_$special_>/2/2__2'(A,B,C).
'known/1_1_$special_>/2/2__2'(A,B,C) :-
'chr via_2'(A,B,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,F,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
G/\4=:=4,
!,
'known/1_1_$special_>/2/2__2__0'(F,A,B,C).
'known/1_1_$special_>/2/2__2__0'([],A,B,C) :-
'known/1_1_$special_>/2/2__3'(A,B,C).
'known/1_1_$special_>/2/2__2__0'([D|E],A,B,C) :-
( D=suspension(_,L,_,_,_,_,F,G),
L=mutable(active),
nonvar(F),
F=(H,_),
nonvar(H),
H=(\+I),
nonvar(I),
I=(J>K),
J==A,
K==B ->
remove_constraint_internal(D,M,N),
( N==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(D),
'detach_known/1_1_$special_;/2/2'(M,D)
;
true
),
activate_constraint(P,O,C,Q),
( P==yes ->
'$insert_in_store_known/1_1_$special_>/2/2'(C),
'attach_known/1_1_$special_>/2/2'(O,C)
;
true
),
known(G),
( C=suspension(_,R,_,S,_,_,_,_),
R=mutable(active),
S=mutable(Q) ->
'chr update_mutable'(inactive,R),
'known/1_1_$special_>/2/2__2__0'(E,A,B,C)
;
true
)
;
'known/1_1_$special_>/2/2__2__0'(E,A,B,C)
).
'known/1_1_$special_>/2/2__2'(A,B,C) :-
'known/1_1_$special_>/2/2__3'(A,B,C).
'known/1_1_$special_>/2/2__3'(_,_,A) :-
activate_constraint(C,B,A,_),
( C==yes ->
'$insert_in_store_known/1_1_$special_>/2/2'(A),
'attach_known/1_1_$special_>/2/2'(B,A)
;
true
).
'known/1_1_$special_=</2'(A,B) :-
'known/1_1_$special_=</2/2__0'(A,B,_).
'known/1_1_$special_=</2/2__0'(A,B,C) :-
'chr via_2'(A,B,E),
get_attr(E,guard_entailment,F),
F=v(H,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,G,_),
H/\16777216=:=16777216,
(
'chr sbag_member'(D,G),
D=suspension(_,K,_,_,_,_,I,J),
K=mutable(active),
I==A,
J==B,
!,
( var(C) ->
true
;
remove_constraint_internal(C,L,M),
( M==yes ->
'$delete_from_store_known/1_1_$special_=</2/2'(C),
'detach_known/1_1_$special_=</2/2'(L,C)
;
true
)
)
;
!,
( var(C) ->
allocate_constraint(guard_entailment:'known/1_1_$special_=</2/2__0'(A,B,C),C,'known/1_1_$special_=</2'(A,B),[A,B])
;
true
),
'known/1_1_$special_=</2/2__0__0'(G,A,B,C)
).
'known/1_1_$special_=</2/2__0__0'([],A,B,C) :-
'known/1_1_$special_=</2/2__1'(A,B,C).
'known/1_1_$special_=</2/2__0__0'([D|E],A,B,C) :-
( D=suspension(_,H,_,_,_,_,F,G),
H=mutable(active),
F==A,
G==B ->
remove_constraint_internal(D,I,J),
( J==yes ->
'$delete_from_store_known/1_1_$special_=</2/2'(D),
'detach_known/1_1_$special_=</2/2'(I,D)
;
true
),
'known/1_1_$special_=</2/2__0__0'(E,A,B,C)
;
'known/1_1_$special_=</2/2__0__0'(E,A,B,C)
).
'known/1_1_$special_=</2/2__0'(A,B,C) :-
( var(C) ->
allocate_constraint(guard_entailment:'known/1_1_$special_=</2/2__0'(A,B,C),C,'known/1_1_$special_=</2'(A,B),[A,B])
;
true
),
'known/1_1_$special_=</2/2__1'(A,B,C).
'known/1_1_$special_=</2/2__1'(_,_,A) :-
nb_getval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',C),
'chr sbag_member'(B,C),
B=suspension(_,D,_,_,_,_),
D=mutable(active),
!,
( var(A) ->
true
;
remove_constraint_internal(A,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_=</2/2'(A),
'detach_known/1_1_$special_=</2/2'(E,A)
;
true
)
).
'known/1_1_$special_=</2/2__1'(A,B,C) :-
B==A,
!,
( var(C) ->
true
;
remove_constraint_internal(C,D,E),
( E==yes ->
'$delete_from_store_known/1_1_$special_=</2/2'(C),
'detach_known/1_1_$special_=</2/2'(D,C)
;
true
)
).
'known/1_1_$special_=</2/2__1'(A,B,C) :-
number(B),
(
number(A),
A>B,
!,
( var(C) ->
true
;
remove_constraint_internal(C,D,E),
( E==yes ->
'$delete_from_store_known/1_1_$special_=</2/2'(C),
'detach_known/1_1_$special_=</2/2'(D,C)
;
true
)
),
'known/1_1_$special_fail/0'
;
'chr via_1'(A,G),
get_attr(G,guard_entailment,H),
H=v(J,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,I,_),
J/\16777216=:=16777216,
'chr sbag_member'(F,I),
F=suspension(_,M,_,_,_,_,K,L),
M=mutable(active),
K==A,
number(L),
L=<B,
!,
( var(C) ->
true
;
remove_constraint_internal(C,N,O),
( O==yes ->
'$delete_from_store_known/1_1_$special_=</2/2'(C),
'detach_known/1_1_$special_=</2/2'(N,C)
;
true
)
)
).
'known/1_1_$special_=</2/2__1'(A,B,C) :-
'chr via_1'(A,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,F,_),
G/\16777216=:=16777216,
!,
'known/1_1_$special_=</2/2__1__0'(F,A,B,C).
'known/1_1_$special_=</2/2__1__0'([],A,B,C) :-
'known/1_1_$special_=</2/2__2'(A,B,C).
'known/1_1_$special_=</2/2__1__0'([D|E],A,B,C) :-
( D=suspension(_,H,_,_,_,_,F,G),
H=mutable(active),
F==A,
number(G),
number(B),
B=<G ->
remove_constraint_internal(D,I,J),
( J==yes ->
'$delete_from_store_known/1_1_$special_=</2/2'(D),
'detach_known/1_1_$special_=</2/2'(I,D)
;
true
),
'known/1_1_$special_=</2/2__1__0'(E,A,B,C)
;
'known/1_1_$special_=</2/2__1__0'(E,A,B,C)
).
'known/1_1_$special_=</2/2__1'(A,B,C) :-
'known/1_1_$special_=</2/2__2'(A,B,C).
'known/1_1_$special_=</2/2__2'(A,B,C) :-
number(A),
'chr via_1'(B,E),
get_attr(E,guard_entailment,F),
F=v(H,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,G,_),
H/\16777216=:=16777216,
'chr sbag_member'(D,G),
D=suspension(_,K,_,_,_,_,I,J),
K=mutable(active),
J==B,
number(I),
A=<I,
!,
( var(C) ->
true
;
remove_constraint_internal(C,L,M),
( M==yes ->
'$delete_from_store_known/1_1_$special_=</2/2'(C),
'detach_known/1_1_$special_=</2/2'(L,C)
;
true
)
).
'known/1_1_$special_=</2/2__2'(A,B,C) :-
'chr via_1'(B,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,F,_),
G/\16777216=:=16777216,
!,
'known/1_1_$special_=</2/2__2__0'(F,A,B,C).
'known/1_1_$special_=</2/2__2__0'([],A,B,C) :-
'known/1_1_$special_=</2/2__3'(A,B,C).
'known/1_1_$special_=</2/2__2__0'([D|E],A,B,C) :-
( D=suspension(_,H,_,_,_,_,F,G),
H=mutable(active),
G==B,
number(A),
number(F),
F=<A ->
remove_constraint_internal(D,I,J),
( J==yes ->
'$delete_from_store_known/1_1_$special_=</2/2'(D),
'detach_known/1_1_$special_=</2/2'(I,D)
;
true
),
'known/1_1_$special_=</2/2__2__0'(E,A,B,C)
;
'known/1_1_$special_=</2/2__2__0'(E,A,B,C)
).
'known/1_1_$special_=</2/2__2'(A,B,C) :-
'known/1_1_$special_=</2/2__3'(A,B,C).
'known/1_1_$special_=</2/2__3'(A,B,C) :-
'chr via_2'(B,A,E),
get_attr(E,guard_entailment,F),
F=v(H,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,G,_),
H/\16777216=:=16777216,
'chr sbag_member'(D,G),
D=suspension(_,K,_,_,_,_,I,J),
K=mutable(active),
I==B,
J==A,
!,
remove_constraint_internal(D,L,M),
( M==yes ->
'$delete_from_store_known/1_1_$special_=</2/2'(D),
'detach_known/1_1_$special_=</2/2'(L,D)
;
true
),
( var(C) ->
true
;
remove_constraint_internal(C,N,O),
( O==yes ->
'$delete_from_store_known/1_1_$special_=</2/2'(C),
'detach_known/1_1_$special_=</2/2'(N,C)
;
true
)
),
'known/1_1_$special_=:=/2'(A,B).
'known/1_1_$special_=</2/2__3'(A,B,C) :-
'chr via_1'(B,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,F,_),
G/\16777216=:=16777216,
!,
'known/1_1_$special_=</2/2__3__0'(F,A,B,C).
'known/1_1_$special_=</2/2__3__0'([],A,B,C) :-
'known/1_1_$special_=</2/2__4'(A,B,C).
'known/1_1_$special_=</2/2__3__0'([G|H],A,B,C) :-
( G=suspension(_,F,_,_,_,_,D,E),
F=mutable(active),
D==B,
N=t(187,C,G),
'chr novel_production'(C,N),
'chr novel_production'(G,N) ->
'chr extend_history'(C,N),
activate_constraint(J,I,C,K),
( J==yes ->
'$insert_in_store_known/1_1_$special_=</2/2'(C),
'attach_known/1_1_$special_=</2/2'(I,C)
;
true
),
'known/1_1_$special_=</2'(A,E),
( C=suspension(_,L,_,M,_,_,_,_),
L=mutable(active),
M=mutable(K) ->
'chr update_mutable'(inactive,L),
'known/1_1_$special_=</2/2__3__0'(H,A,B,C)
;
true
)
;
'known/1_1_$special_=</2/2__3__0'(H,A,B,C)
).
'known/1_1_$special_=</2/2__3'(A,B,C) :-
'known/1_1_$special_=</2/2__4'(A,B,C).
'known/1_1_$special_=</2/2__4'(A,B,C) :-
'chr via_1'(A,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,F,_),
G/\16777216=:=16777216,
!,
'known/1_1_$special_=</2/2__4__0'(F,A,B,C).
'known/1_1_$special_=</2/2__4__0'([],A,B,C) :-
'known/1_1_$special_=</2/2__5'(A,B,C).
'known/1_1_$special_=</2/2__4__0'([G|H],A,B,C) :-
( G=suspension(_,F,_,_,_,_,D,E),
F=mutable(active),
E==A,
N=t(187,G,C),
'chr novel_production'(G,N),
'chr novel_production'(C,N) ->
'chr extend_history'(C,N),
activate_constraint(J,I,C,K),
( J==yes ->
'$insert_in_store_known/1_1_$special_=</2/2'(C),
'attach_known/1_1_$special_=</2/2'(I,C)
;
true
),
'known/1_1_$special_=</2'(D,B),
( C=suspension(_,L,_,M,_,_,_,_),
L=mutable(active),
M=mutable(K) ->
'chr update_mutable'(inactive,L),
'known/1_1_$special_=</2/2__4__0'(H,A,B,C)
;
true
)
;
'known/1_1_$special_=</2/2__4__0'(H,A,B,C)
).
'known/1_1_$special_=</2/2__4'(A,B,C) :-
'known/1_1_$special_=</2/2__5'(A,B,C).
'known/1_1_$special_=</2/2__5'(A,B,C) :-
'chr via_1'(B,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,F,_),
G/\16777216=:=16777216,
!,
'known/1_1_$special_=</2/2__5__0'(F,A,B,C).
'known/1_1_$special_=</2/2__5__0'([],A,B,C) :-
'known/1_1_$special_=</2/2__6'(A,B,C).
'known/1_1_$special_=</2/2__5__0'([F|L],A,B,C) :-
( F=suspension(_,G,_,_,_,_,D,E),
G=mutable(active),
D==B,
'chr via_2'(B,E,H),
get_attr(H,guard_entailment,I),
I=v(K,_,_,_,_,_,_,_,_,_,_,_,_,J,_,_,_,_,_,_,_,_,_,_,_,_,_),
K/\4096=:=4096 ->
'known/1_1_$special_=</2/2__5__1'(J,E,F,L,A,B,C)
;
'known/1_1_$special_=</2/2__5__0'(L,A,B,C)
).
'known/1_1_$special_=</2/2__5__1'([],_,_,D,A,B,C) :-
'known/1_1_$special_=</2/2__5__0'(D,A,B,C).
'known/1_1_$special_=</2/2__5__1'([I|O],E,A,F,B,C,D) :-
( I=suspension(_,J,_,_,_,_,G,H),
J=mutable(active),
G==C,
H==E,
'chr via_2'(B,C,K),
get_attr(K,guard_entailment,L),
L=v(N,_,_,_,_,_,_,_,_,_,_,_,_,M,_,_,_,_,_,_,_,_,_,_,_,_,_),
N/\4096=:=4096 ->
'known/1_1_$special_=</2/2__5__2'(M,I,O,E,A,F,B,C,D)
;
'known/1_1_$special_=</2/2__5__1'(O,E,A,F,B,C,D)
).
'known/1_1_$special_=</2/2__5__2'([],_,G,D,E,F,A,B,C) :-
'known/1_1_$special_=</2/2__5__1'(G,D,E,F,A,B,C).
'known/1_1_$special_=</2/2__5__2'([L|M],A,H,F,B,G,C,D,E) :-
( L=suspension(_,K,_,_,_,_,I,J),
K=mutable(active),
L\==A,
I==C,
J==D,
S=t(188,E,B,A,L),
'chr novel_production'(E,S),
'chr novel_production'(B,S),
'chr novel_production'(A,S),
'chr novel_production'(L,S) ->
'chr extend_history'(E,S),
activate_constraint(O,N,E,P),
( O==yes ->
'$insert_in_store_known/1_1_$special_=</2/2'(E),
'attach_known/1_1_$special_=</2/2'(N,E)
;
true
),
'known/1_1_$special_=\\=/2'(C,F),
( E=suspension(_,Q,_,R,_,_,_,_),
Q=mutable(active),
R=mutable(P) ->
'chr update_mutable'(inactive,Q),
'known/1_1_$special_=</2/2__5__2'(M,A,H,F,B,G,C,D,E)
;
true
)
;
'known/1_1_$special_=</2/2__5__2'(M,A,H,F,B,G,C,D,E)
).
'known/1_1_$special_=</2/2__5'(A,B,C) :-
'known/1_1_$special_=</2/2__6'(A,B,C).
'known/1_1_$special_=</2/2__6'(A,B,C) :-
'chr via_1'(A,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,_,_,_,_,_,_,_,_,_,_,F,_,_,_,_,_,_,_,_,_,_,_,_,_),
G/\4096=:=4096,
!,
'known/1_1_$special_=</2/2__6__0'(F,A,B,C).
'known/1_1_$special_=</2/2__6__0'([],A,B,C) :-
'known/1_1_$special_=</2/2__7'(A,B,C).
'known/1_1_$special_=</2/2__6__0'([F|L],A,B,C) :-
( F=suspension(_,G,_,_,_,_,D,E),
G=mutable(active),
E==A,
'chr via_2'(D,A,H),
get_attr(H,guard_entailment,I),
I=v(K,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,J,_),
K/\16777216=:=16777216 ->
'known/1_1_$special_=</2/2__6__1'(J,D,F,L,A,B,C)
;
'known/1_1_$special_=</2/2__6__0'(L,A,B,C)
).
'known/1_1_$special_=</2/2__6__1'([],_,_,D,A,B,C) :-
'known/1_1_$special_=</2/2__6__0'(D,A,B,C).
'known/1_1_$special_=</2/2__6__1'([I|O],E,A,F,B,C,D) :-
( I=suspension(_,J,_,_,_,_,G,H),
J=mutable(active),
G==E,
H==B,
'chr via_2'(B,C,K),
get_attr(K,guard_entailment,L),
L=v(N,_,_,_,_,_,_,_,_,_,_,_,_,M,_,_,_,_,_,_,_,_,_,_,_,_,_),
N/\4096=:=4096 ->
'known/1_1_$special_=</2/2__6__2'(M,I,O,E,A,F,B,C,D)
;
'known/1_1_$special_=</2/2__6__1'(O,E,A,F,B,C,D)
).
'known/1_1_$special_=</2/2__6__2'([],_,G,D,E,F,A,B,C) :-
'known/1_1_$special_=</2/2__6__1'(G,D,E,F,A,B,C).
'known/1_1_$special_=</2/2__6__2'([L|M],A,H,F,B,G,C,D,E) :-
( L=suspension(_,K,_,_,_,_,I,J),
K=mutable(active),
L\==B,
I==C,
J==D,
S=t(188,B,A,E,L),
'chr novel_production'(B,S),
'chr novel_production'(A,S),
'chr novel_production'(E,S),
'chr novel_production'(L,S) ->
'chr extend_history'(E,S),
activate_constraint(O,N,E,P),
( O==yes ->
'$insert_in_store_known/1_1_$special_=</2/2'(E),
'attach_known/1_1_$special_=</2/2'(N,E)
;
true
),
'known/1_1_$special_=\\=/2'(F,D),
( E=suspension(_,Q,_,R,_,_,_,_),
Q=mutable(active),
R=mutable(P) ->
'chr update_mutable'(inactive,Q),
'known/1_1_$special_=</2/2__6__2'(M,A,H,F,B,G,C,D,E)
;
true
)
;
'known/1_1_$special_=</2/2__6__2'(M,A,H,F,B,G,C,D,E)
).
'known/1_1_$special_=</2/2__6'(A,B,C) :-
'known/1_1_$special_=</2/2__7'(A,B,C).
'known/1_1_$special_=</2/2__7'(A,B,C) :-
'chr via_2'(A,B,E),
get_attr(E,guard_entailment,F),
F=v(I,_,_,G,_,_,_,_,_,_,_,_,_,_,H,_,_,_,_,_,_,_,_,_,_,_,_),
(
I/\8192=:=8192,
'chr sbag_member'(D,H),
D=suspension(_,M,_,_,_,_,J),
M=mutable(active),
nonvar(J),
J=(K=<L),
K==A,
L==B,
!,
remove_constraint_internal(D,N,O),
( O==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(D),
'detach_known/1_1_$special_\\+/1/1'(N,D)
;
true
),
( var(C) ->
true
;
remove_constraint_internal(C,P,Q),
( Q==yes ->
'$delete_from_store_known/1_1_$special_=</2/2'(C),
'detach_known/1_1_$special_=</2/2'(P,C)
;
true
)
),
'known/1_1_$special_fail/0'
;
I/\4=:=4,
!,
'known/1_1_$special_=</2/2__7__0'(G,A,B,C)
).
'known/1_1_$special_=</2/2__7__0'([],A,B,C) :-
'known/1_1_$special_=</2/2__8'(A,B,C).
'known/1_1_$special_=</2/2__7__0'([D|E],A,B,C) :-
( D=suspension(_,K,_,_,_,_,F,G),
K=mutable(active),
nonvar(F),
F=(\+H),
nonvar(H),
H=(I=<J),
I==A,
J==B ->
remove_constraint_internal(D,L,M),
( M==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(D),
'detach_known/1_1_$special_;/2/2'(L,D)
;
true
),
activate_constraint(O,N,C,P),
( O==yes ->
'$insert_in_store_known/1_1_$special_=</2/2'(C),
'attach_known/1_1_$special_=</2/2'(N,C)
;
true
),
known(G),
( C=suspension(_,Q,_,R,_,_,_,_),
Q=mutable(active),
R=mutable(P) ->
'chr update_mutable'(inactive,Q),
'known/1_1_$special_=</2/2__7__0'(E,A,B,C)
;
true
)
;
'known/1_1_$special_=</2/2__7__0'(E,A,B,C)
).
'known/1_1_$special_=</2/2__7'(A,B,C) :-
'known/1_1_$special_=</2/2__8'(A,B,C).
'known/1_1_$special_=</2/2__8'(A,B,C) :-
'chr via_2'(A,B,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,F,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
G/\4=:=4,
!,
'known/1_1_$special_=</2/2__8__0'(F,A,B,C).
'known/1_1_$special_=</2/2__8__0'([],A,B,C) :-
'known/1_1_$special_=</2/2__9'(A,B,C).
'known/1_1_$special_=</2/2__8__0'([D|E],A,B,C) :-
( D=suspension(_,L,_,_,_,_,F,G),
L=mutable(active),
nonvar(F),
F=(H,_),
nonvar(H),
H=(\+I),
nonvar(I),
I=(J=<K),
J==A,
K==B ->
remove_constraint_internal(D,M,N),
( N==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(D),
'detach_known/1_1_$special_;/2/2'(M,D)
;
true
),
activate_constraint(P,O,C,Q),
( P==yes ->
'$insert_in_store_known/1_1_$special_=</2/2'(C),
'attach_known/1_1_$special_=</2/2'(O,C)
;
true
),
known(G),
( C=suspension(_,R,_,S,_,_,_,_),
R=mutable(active),
S=mutable(Q) ->
'chr update_mutable'(inactive,R),
'known/1_1_$special_=</2/2__8__0'(E,A,B,C)
;
true
)
;
'known/1_1_$special_=</2/2__8__0'(E,A,B,C)
).
'known/1_1_$special_=</2/2__8'(A,B,C) :-
'known/1_1_$special_=</2/2__9'(A,B,C).
'known/1_1_$special_=</2/2__9'(_,_,A) :-
activate_constraint(C,B,A,_),
( C==yes ->
'$insert_in_store_known/1_1_$special_=</2/2'(A),
'attach_known/1_1_$special_=</2/2'(B,A)
;
true
).
'known/1_1_$special_=:=/2'(A,B) :-
'known/1_1_$special_=:=/2/2__0'(A,B,_).
'known/1_1_$special_=:=/2/2__0'(A,B,C) :-
'chr via_2'(A,B,E),
get_attr(E,guard_entailment,F),
F=v(H,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,G),
H/\33554432=:=33554432,
(
'chr sbag_member'(D,G),
D=suspension(_,K,_,_,_,_,I,J),
K=mutable(active),
I==A,
J==B,
!,
( var(C) ->
true
;
remove_constraint_internal(C,L,M),
( M==yes ->
'$delete_from_store_known/1_1_$special_=:=/2/2'(C),
'detach_known/1_1_$special_=:=/2/2'(L,C)
;
true
)
)
;
!,
( var(C) ->
allocate_constraint(guard_entailment:'known/1_1_$special_=:=/2/2__0'(A,B,C),C,'known/1_1_$special_=:=/2'(A,B),[A,B])
;
true
),
'known/1_1_$special_=:=/2/2__0__0'(G,A,B,C)
).
'known/1_1_$special_=:=/2/2__0__0'([],A,B,C) :-
'known/1_1_$special_=:=/2/2__1'(A,B,C).
'known/1_1_$special_=:=/2/2__0__0'([D|E],A,B,C) :-
( D=suspension(_,H,_,_,_,_,F,G),
H=mutable(active),
F==A,
G==B ->
remove_constraint_internal(D,I,J),
( J==yes ->
'$delete_from_store_known/1_1_$special_=:=/2/2'(D),
'detach_known/1_1_$special_=:=/2/2'(I,D)
;
true
),
'known/1_1_$special_=:=/2/2__0__0'(E,A,B,C)
;
'known/1_1_$special_=:=/2/2__0__0'(E,A,B,C)
).
'known/1_1_$special_=:=/2/2__0'(A,B,C) :-
( var(C) ->
allocate_constraint(guard_entailment:'known/1_1_$special_=:=/2/2__0'(A,B,C),C,'known/1_1_$special_=:=/2'(A,B),[A,B])
;
true
),
'known/1_1_$special_=:=/2/2__1'(A,B,C).
'known/1_1_$special_=:=/2/2__1'(_,_,A) :-
nb_getval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',C),
'chr sbag_member'(B,C),
B=suspension(_,D,_,_,_,_),
D=mutable(active),
!,
( var(A) ->
true
;
remove_constraint_internal(A,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_=:=/2/2'(A),
'detach_known/1_1_$special_=:=/2/2'(E,A)
;
true
)
).
'known/1_1_$special_=:=/2/2__1'(A,B,C) :-
B==A,
!,
( var(C) ->
true
;
remove_constraint_internal(C,D,E),
( E==yes ->
'$delete_from_store_known/1_1_$special_=:=/2/2'(C),
'detach_known/1_1_$special_=:=/2/2'(D,C)
;
true
)
).
'known/1_1_$special_=:=/2/2__1'(A,B,C) :-
number(B),
number(A),
A=\=B,
!,
( var(C) ->
true
;
remove_constraint_internal(C,D,E),
( E==yes ->
'$delete_from_store_known/1_1_$special_=:=/2/2'(C),
'detach_known/1_1_$special_=:=/2/2'(D,C)
;
true
)
),
'known/1_1_$special_fail/0'.
'known/1_1_$special_=:=/2/2__1'(A,B,C) :-
'chr via_2'(A,B,E),
get_attr(E,guard_entailment,F),
F=v(H,_,_,_,_,_,_,_,_,_,_,_,_,G,_,_,_,_,_,_,_,_,_,_,_,_,_),
H/\4096=:=4096,
'chr sbag_member'(D,G),
D=suspension(_,K,_,_,_,_,I,J),
K=mutable(active),
I==A,
J==B,
!,
remove_constraint_internal(D,L,M),
( M==yes ->
'$delete_from_store_known/1_1_$special_=\\=/2/2'(D),
'detach_known/1_1_$special_=\\=/2/2'(L,D)
;
true
),
( var(C) ->
true
;
remove_constraint_internal(C,N,O),
( O==yes ->
'$delete_from_store_known/1_1_$special_=:=/2/2'(C),
'detach_known/1_1_$special_=:=/2/2'(N,C)
;
true
)
),
'known/1_1_$special_fail/0'.
'known/1_1_$special_=:=/2/2__1'(A,B,C) :-
'chr via_1'(B,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,F),
G/\33554432=:=33554432,
!,
'known/1_1_$special_=:=/2/2__1__0'(F,A,B,C).
'known/1_1_$special_=:=/2/2__1__0'([],A,B,C) :-
'known/1_1_$special_=:=/2/2__2'(A,B,C).
'known/1_1_$special_=:=/2/2__1__0'([G|H],A,B,C) :-
( G=suspension(_,F,_,_,_,_,D,E),
F=mutable(active),
D==B,
N=t(193,C,G),
'chr novel_production'(C,N),
'chr novel_production'(G,N),
A\==E ->
'chr extend_history'(C,N),
activate_constraint(J,I,C,K),
( J==yes ->
'$insert_in_store_known/1_1_$special_=:=/2/2'(C),
'attach_known/1_1_$special_=:=/2/2'(I,C)
;
true
),
'known/1_1_$special_=:=/2'(A,E),
( C=suspension(_,L,_,M,_,_,_,_),
L=mutable(active),
M=mutable(K) ->
'chr update_mutable'(inactive,L),
'known/1_1_$special_=:=/2/2__1__0'(H,A,B,C)
;
true
)
;
'known/1_1_$special_=:=/2/2__1__0'(H,A,B,C)
).
'known/1_1_$special_=:=/2/2__1'(A,B,C) :-
'known/1_1_$special_=:=/2/2__2'(A,B,C).
'known/1_1_$special_=:=/2/2__2'(A,B,C) :-
'chr via_1'(A,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,F),
G/\33554432=:=33554432,
!,
'known/1_1_$special_=:=/2/2__2__0'(F,A,B,C).
'known/1_1_$special_=:=/2/2__2__0'([],A,B,C) :-
'known/1_1_$special_=:=/2/2__3'(A,B,C).
'known/1_1_$special_=:=/2/2__2__0'([G|H],A,B,C) :-
( G=suspension(_,F,_,_,_,_,D,E),
F=mutable(active),
E==A,
N=t(193,G,C),
'chr novel_production'(G,N),
'chr novel_production'(C,N),
D\==B ->
'chr extend_history'(C,N),
activate_constraint(J,I,C,K),
( J==yes ->
'$insert_in_store_known/1_1_$special_=:=/2/2'(C),
'attach_known/1_1_$special_=:=/2/2'(I,C)
;
true
),
'known/1_1_$special_=:=/2'(D,B),
( C=suspension(_,L,_,M,_,_,_,_),
L=mutable(active),
M=mutable(K) ->
'chr update_mutable'(inactive,L),
'known/1_1_$special_=:=/2/2__2__0'(H,A,B,C)
;
true
)
;
'known/1_1_$special_=:=/2/2__2__0'(H,A,B,C)
).
'known/1_1_$special_=:=/2/2__2'(A,B,C) :-
'known/1_1_$special_=:=/2/2__3'(A,B,C).
'known/1_1_$special_=:=/2/2__3'(A,B,C) :-
'chr novel_production'(C,194),
!,
'chr extend_history'(C,194),
activate_constraint(E,D,C,F),
( E==yes ->
'$insert_in_store_known/1_1_$special_=:=/2/2'(C),
'attach_known/1_1_$special_=:=/2/2'(D,C)
;
true
),
'known/1_1_$special_=:=/2'(B,A),
( C=suspension(_,G,_,H,_,_,_,_),
G=mutable(active),
H=mutable(F) ->
'chr update_mutable'(inactive,G),
'known/1_1_$special_=:=/2/2__4'(A,B,C)
;
true
).
'known/1_1_$special_=:=/2/2__3'(A,B,C) :-
'known/1_1_$special_=:=/2/2__4'(A,B,C).
'known/1_1_$special_=:=/2/2__4'(A,B,C) :-
'chr via_2'(A,B,E),
get_attr(E,guard_entailment,F),
F=v(I,_,_,G,_,_,_,_,_,_,_,_,_,_,H,_,_,_,_,_,_,_,_,_,_,_,_),
(
I/\8192=:=8192,
'chr sbag_member'(D,H),
D=suspension(_,M,_,_,_,_,J),
M=mutable(active),
nonvar(J),
J=(K=:=L),
K==A,
L==B,
!,
remove_constraint_internal(D,N,O),
( O==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(D),
'detach_known/1_1_$special_\\+/1/1'(N,D)
;
true
),
( var(C) ->
true
;
remove_constraint_internal(C,P,Q),
( Q==yes ->
'$delete_from_store_known/1_1_$special_=:=/2/2'(C),
'detach_known/1_1_$special_=:=/2/2'(P,C)
;
true
)
),
'known/1_1_$special_fail/0'
;
I/\4=:=4,
!,
'known/1_1_$special_=:=/2/2__4__0'(G,A,B,C)
).
'known/1_1_$special_=:=/2/2__4__0'([],A,B,C) :-
'known/1_1_$special_=:=/2/2__5'(A,B,C).
'known/1_1_$special_=:=/2/2__4__0'([D|E],A,B,C) :-
( D=suspension(_,K,_,_,_,_,F,G),
K=mutable(active),
nonvar(F),
F=(\+H),
nonvar(H),
H=(I=:=J),
I==A,
J==B ->
remove_constraint_internal(D,L,M),
( M==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(D),
'detach_known/1_1_$special_;/2/2'(L,D)
;
true
),
activate_constraint(O,N,C,P),
( O==yes ->
'$insert_in_store_known/1_1_$special_=:=/2/2'(C),
'attach_known/1_1_$special_=:=/2/2'(N,C)
;
true
),
known(G),
( C=suspension(_,Q,_,R,_,_,_,_),
Q=mutable(active),
R=mutable(P) ->
'chr update_mutable'(inactive,Q),
'known/1_1_$special_=:=/2/2__4__0'(E,A,B,C)
;
true
)
;
'known/1_1_$special_=:=/2/2__4__0'(E,A,B,C)
).
'known/1_1_$special_=:=/2/2__4'(A,B,C) :-
'known/1_1_$special_=:=/2/2__5'(A,B,C).
'known/1_1_$special_=:=/2/2__5'(A,B,C) :-
'chr via_2'(A,B,D),
get_attr(D,guard_entailment,E),
E=v(G,_,_,F,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
G/\4=:=4,
!,
'known/1_1_$special_=:=/2/2__5__0'(F,A,B,C).
'known/1_1_$special_=:=/2/2__5__0'([],A,B,C) :-
'known/1_1_$special_=:=/2/2__6'(A,B,C).
'known/1_1_$special_=:=/2/2__5__0'([D|E],A,B,C) :-
( D=suspension(_,L,_,_,_,_,F,G),
L=mutable(active),
nonvar(F),
F=(H,_),
nonvar(H),
H=(\+I),
nonvar(I),
I=(J=:=K),
J==A,
K==B ->
remove_constraint_internal(D,M,N),
( N==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(D),
'detach_known/1_1_$special_;/2/2'(M,D)
;
true
),
activate_constraint(P,O,C,Q),
( P==yes ->
'$insert_in_store_known/1_1_$special_=:=/2/2'(C),
'attach_known/1_1_$special_=:=/2/2'(O,C)
;
true
),
known(G),
( C=suspension(_,R,_,S,_,_,_,_),
R=mutable(active),
S=mutable(Q) ->
'chr update_mutable'(inactive,R),
'known/1_1_$special_=:=/2/2__5__0'(E,A,B,C)
;
true
)
;
'known/1_1_$special_=:=/2/2__5__0'(E,A,B,C)
).
'known/1_1_$special_=:=/2/2__5'(A,B,C) :-
'known/1_1_$special_=:=/2/2__6'(A,B,C).
'known/1_1_$special_=:=/2/2__6'(_,_,A) :-
activate_constraint(C,B,A,_),
( C==yes ->
'$insert_in_store_known/1_1_$special_=:=/2/2'(A),
'attach_known/1_1_$special_=:=/2/2'(B,A)
;
true
).
'known/1_1_$special_fail/0' :-
'known/1_1_$special_fail/0/0__0'(_).
'known/1_1_$special_fail/0/0__0'(A) :-
nb_getval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',C),
(
'chr sbag_member'(B,C),
B=suspension(_,D,_,_,_,_),
D=mutable(active),
!
;
!,
allocate_constraint(guard_entailment:'known/1_1_$special_fail/0/0__0'(A),A,'known/1_1_$special_fail/0',[]),
'known/1_1_$special_fail/0/0__0__0'(C,A)
).
'known/1_1_$special_fail/0/0__0__0'([],A) :-
'known/1_1_$special_fail/0/0__1'(A).
'known/1_1_$special_fail/0/0__0__0'([B|C],A) :-
( B=suspension(_,D,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(B,_,E),
( E==yes ->
'$delete_from_store_known/1_1_$special_fail/0/0'(B)
;
true
),
'known/1_1_$special_fail/0/0__0__0'(C,A)
;
'known/1_1_$special_fail/0/0__0__0'(C,A)
).
'known/1_1_$special_fail/0/0__0'(A) :-
allocate_constraint(guard_entailment:'known/1_1_$special_fail/0/0__0'(A),A,'known/1_1_$special_fail/0',[]),
'known/1_1_$special_fail/0/0__1'(A).
'known/1_1_$special_fail/0/0__1'(A) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(E,_,_,D,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
E/\4=:=4,
!,
'known/1_1_$special_fail/0/0__1__0'(D,A).
'known/1_1_$special_fail/0/0__1__0'([],A) :-
'known/1_1_$special_fail/0/0__2'(A).
'known/1_1_$special_fail/0/0__1__0'([B|C],A) :-
( B=suspension(_,D,_,_,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(B,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(B),
'detach_known/1_1_$special_;/2/2'(E,B)
;
true
),
'known/1_1_$special_fail/0/0__1__0'(C,A)
;
'known/1_1_$special_fail/0/0__1__0'(C,A)
).
'known/1_1_$special_fail/0/0__1'(A) :-
'known/1_1_$special_fail/0/0__2'(A).
'known/1_1_$special_fail/0/0__2'(A) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(E,_,_,_,D,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
E/\8=:=8,
!,
'known/1_1_$special_fail/0/0__2__0'(D,A).
'known/1_1_$special_fail/0/0__2__0'([],A) :-
'known/1_1_$special_fail/0/0__3'(A).
'known/1_1_$special_fail/0/0__2__0'([B|C],A) :-
( B=suspension(_,D,_,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(B,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_nonvar/1/1'(B),
'detach_known/1_1_$special_nonvar/1/1'(E,B)
;
true
),
'known/1_1_$special_fail/0/0__2__0'(C,A)
;
'known/1_1_$special_fail/0/0__2__0'(C,A)
).
'known/1_1_$special_fail/0/0__2'(A) :-
'known/1_1_$special_fail/0/0__3'(A).
'known/1_1_$special_fail/0/0__3'(A) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(E,_,_,_,_,D,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
E/\16=:=16,
!,
'known/1_1_$special_fail/0/0__3__0'(D,A).
'known/1_1_$special_fail/0/0__3__0'([],A) :-
'known/1_1_$special_fail/0/0__4'(A).
'known/1_1_$special_fail/0/0__3__0'([B|C],A) :-
( B=suspension(_,D,_,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(B,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_var/1/1'(B),
'detach_known/1_1_$special_var/1/1'(E,B)
;
true
),
'known/1_1_$special_fail/0/0__3__0'(C,A)
;
'known/1_1_$special_fail/0/0__3__0'(C,A)
).
'known/1_1_$special_fail/0/0__3'(A) :-
'known/1_1_$special_fail/0/0__4'(A).
'known/1_1_$special_fail/0/0__4'(A) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(E,_,_,_,_,_,D,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
E/\32=:=32,
!,
'known/1_1_$special_fail/0/0__4__0'(D,A).
'known/1_1_$special_fail/0/0__4__0'([],A) :-
'known/1_1_$special_fail/0/0__5'(A).
'known/1_1_$special_fail/0/0__4__0'([B|C],A) :-
( B=suspension(_,D,_,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(B,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_atom/1/1'(B),
'detach_known/1_1_$special_atom/1/1'(E,B)
;
true
),
'known/1_1_$special_fail/0/0__4__0'(C,A)
;
'known/1_1_$special_fail/0/0__4__0'(C,A)
).
'known/1_1_$special_fail/0/0__4'(A) :-
'known/1_1_$special_fail/0/0__5'(A).
'known/1_1_$special_fail/0/0__5'(A) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(E,_,_,_,_,_,_,D,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
E/\64=:=64,
!,
'known/1_1_$special_fail/0/0__5__0'(D,A).
'known/1_1_$special_fail/0/0__5__0'([],A) :-
'known/1_1_$special_fail/0/0__6'(A).
'known/1_1_$special_fail/0/0__5__0'([B|C],A) :-
( B=suspension(_,D,_,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(B,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_atomic/1/1'(B),
'detach_known/1_1_$special_atomic/1/1'(E,B)
;
true
),
'known/1_1_$special_fail/0/0__5__0'(C,A)
;
'known/1_1_$special_fail/0/0__5__0'(C,A)
).
'known/1_1_$special_fail/0/0__5'(A) :-
'known/1_1_$special_fail/0/0__6'(A).
'known/1_1_$special_fail/0/0__6'(A) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(E,_,_,_,_,_,_,_,D,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
E/\128=:=128,
!,
'known/1_1_$special_fail/0/0__6__0'(D,A).
'known/1_1_$special_fail/0/0__6__0'([],A) :-
'known/1_1_$special_fail/0/0__7'(A).
'known/1_1_$special_fail/0/0__6__0'([B|C],A) :-
( B=suspension(_,D,_,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(B,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_compound/1/1'(B),
'detach_known/1_1_$special_compound/1/1'(E,B)
;
true
),
'known/1_1_$special_fail/0/0__6__0'(C,A)
;
'known/1_1_$special_fail/0/0__6__0'(C,A)
).
'known/1_1_$special_fail/0/0__6'(A) :-
'known/1_1_$special_fail/0/0__7'(A).
'known/1_1_$special_fail/0/0__7'(A) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(E,_,_,_,_,_,_,_,_,D,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
E/\256=:=256,
!,
'known/1_1_$special_fail/0/0__7__0'(D,A).
'known/1_1_$special_fail/0/0__7__0'([],A) :-
'known/1_1_$special_fail/0/0__8'(A).
'known/1_1_$special_fail/0/0__7__0'([B|C],A) :-
( B=suspension(_,D,_,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(B,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_ground/1/1'(B),
'detach_known/1_1_$special_ground/1/1'(E,B)
;
true
),
'known/1_1_$special_fail/0/0__7__0'(C,A)
;
'known/1_1_$special_fail/0/0__7__0'(C,A)
).
'known/1_1_$special_fail/0/0__7'(A) :-
'known/1_1_$special_fail/0/0__8'(A).
'known/1_1_$special_fail/0/0__8'(A) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(E,_,_,_,_,_,_,_,_,_,D,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
E/\512=:=512,
!,
'known/1_1_$special_fail/0/0__8__0'(D,A).
'known/1_1_$special_fail/0/0__8__0'([],A) :-
'known/1_1_$special_fail/0/0__9'(A).
'known/1_1_$special_fail/0/0__8__0'([B|C],A) :-
( B=suspension(_,D,_,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(B,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_integer/1/1'(B),
'detach_known/1_1_$special_integer/1/1'(E,B)
;
true
),
'known/1_1_$special_fail/0/0__8__0'(C,A)
;
'known/1_1_$special_fail/0/0__8__0'(C,A)
).
'known/1_1_$special_fail/0/0__8'(A) :-
'known/1_1_$special_fail/0/0__9'(A).
'known/1_1_$special_fail/0/0__9'(A) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(E,_,_,_,_,_,_,_,_,_,_,D,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
E/\1024=:=1024,
!,
'known/1_1_$special_fail/0/0__9__0'(D,A).
'known/1_1_$special_fail/0/0__9__0'([],A) :-
'known/1_1_$special_fail/0/0__10'(A).
'known/1_1_$special_fail/0/0__9__0'([B|C],A) :-
( B=suspension(_,D,_,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(B,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_float/1/1'(B),
'detach_known/1_1_$special_float/1/1'(E,B)
;
true
),
'known/1_1_$special_fail/0/0__9__0'(C,A)
;
'known/1_1_$special_fail/0/0__9__0'(C,A)
).
'known/1_1_$special_fail/0/0__9'(A) :-
'known/1_1_$special_fail/0/0__10'(A).
'known/1_1_$special_fail/0/0__10'(A) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(E,_,_,_,_,_,_,_,_,_,_,_,D,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
E/\2048=:=2048,
!,
'known/1_1_$special_fail/0/0__10__0'(D,A).
'known/1_1_$special_fail/0/0__10__0'([],A) :-
'known/1_1_$special_fail/0/0__11'(A).
'known/1_1_$special_fail/0/0__10__0'([B|C],A) :-
( B=suspension(_,D,_,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(B,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_number/1/1'(B),
'detach_known/1_1_$special_number/1/1'(E,B)
;
true
),
'known/1_1_$special_fail/0/0__10__0'(C,A)
;
'known/1_1_$special_fail/0/0__10__0'(C,A)
).
'known/1_1_$special_fail/0/0__10'(A) :-
'known/1_1_$special_fail/0/0__11'(A).
'known/1_1_$special_fail/0/0__11'(A) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(E,_,_,_,_,_,_,_,_,_,_,_,_,D,_,_,_,_,_,_,_,_,_,_,_,_,_),
E/\4096=:=4096,
!,
'known/1_1_$special_fail/0/0__11__0'(D,A).
'known/1_1_$special_fail/0/0__11__0'([],A) :-
'known/1_1_$special_fail/0/0__12'(A).
'known/1_1_$special_fail/0/0__11__0'([B|C],A) :-
( B=suspension(_,D,_,_,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(B,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_=\\=/2/2'(B),
'detach_known/1_1_$special_=\\=/2/2'(E,B)
;
true
),
'known/1_1_$special_fail/0/0__11__0'(C,A)
;
'known/1_1_$special_fail/0/0__11__0'(C,A)
).
'known/1_1_$special_fail/0/0__11'(A) :-
'known/1_1_$special_fail/0/0__12'(A).
'known/1_1_$special_fail/0/0__12'(A) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(E,_,_,_,_,_,_,_,_,_,_,_,_,_,D,_,_,_,_,_,_,_,_,_,_,_,_),
E/\8192=:=8192,
!,
'known/1_1_$special_fail/0/0__12__0'(D,A).
'known/1_1_$special_fail/0/0__12__0'([],A) :-
'known/1_1_$special_fail/0/0__13'(A).
'known/1_1_$special_fail/0/0__12__0'([B|C],A) :-
( B=suspension(_,D,_,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(B,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(B),
'detach_known/1_1_$special_\\+/1/1'(E,B)
;
true
),
'known/1_1_$special_fail/0/0__12__0'(C,A)
;
'known/1_1_$special_fail/0/0__12__0'(C,A)
).
'known/1_1_$special_fail/0/0__12'(A) :-
'known/1_1_$special_fail/0/0__13'(A).
'known/1_1_$special_fail/0/0__13'(A) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,D,_,_,_,_,_,_,_,_,_,_,_),
E/\16384=:=16384,
!,
'known/1_1_$special_fail/0/0__13__0'(D,A).
'known/1_1_$special_fail/0/0__13__0'([],A) :-
'known/1_1_$special_fail/0/0__14'(A).
'known/1_1_$special_fail/0/0__13__0'([B|C],A) :-
( B=suspension(_,D,_,_,_,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(B,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_functor/3/3'(B),
'detach_known/1_1_$special_functor/3/3'(E,B)
;
true
),
'known/1_1_$special_fail/0/0__13__0'(C,A)
;
'known/1_1_$special_fail/0/0__13__0'(C,A)
).
'known/1_1_$special_fail/0/0__13'(A) :-
'known/1_1_$special_fail/0/0__14'(A).
'known/1_1_$special_fail/0/0__14'(A) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,D,_,_,_,_,_,_,_,_,_,_),
E/\32768=:=32768,
!,
'known/1_1_$special_fail/0/0__14__0'(D,A).
'known/1_1_$special_fail/0/0__14__0'([],A) :-
'known/1_1_$special_fail/0/0__15'(A).
'known/1_1_$special_fail/0/0__14__0'([B|C],A) :-
( B=suspension(_,D,_,_,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(B,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_\\=/2/2'(B),
'detach_known/1_1_$special_\\=/2/2'(E,B)
;
true
),
'known/1_1_$special_fail/0/0__14__0'(C,A)
;
'known/1_1_$special_fail/0/0__14__0'(C,A)
).
'known/1_1_$special_fail/0/0__14'(A) :-
'known/1_1_$special_fail/0/0__15'(A).
'known/1_1_$special_fail/0/0__15'(A) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,D,_,_,_,_,_,_,_,_,_),
E/\65536=:=65536,
!,
'known/1_1_$special_fail/0/0__15__0'(D,A).
'known/1_1_$special_fail/0/0__15__0'([],A) :-
'known/1_1_$special_fail/0/0__16'(A).
'known/1_1_$special_fail/0/0__15__0'([B|C],A) :-
( B=suspension(_,D,_,_,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(B,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_=/2/2'(B),
'detach_known/1_1_$special_=/2/2'(E,B)
;
true
),
'known/1_1_$special_fail/0/0__15__0'(C,A)
;
'known/1_1_$special_fail/0/0__15__0'(C,A)
).
'known/1_1_$special_fail/0/0__15'(A) :-
'known/1_1_$special_fail/0/0__16'(A).
'known/1_1_$special_fail/0/0__16'(A) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,D,_,_,_,_,_,_,_,_),
E/\131072=:=131072,
!,
'known/1_1_$special_fail/0/0__16__0'(D,A).
'known/1_1_$special_fail/0/0__16__0'([],A) :-
'known/1_1_$special_fail/0/0__17'(A).
'known/1_1_$special_fail/0/0__16__0'([B|C],A) :-
( B=suspension(_,D,_,_,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(B,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_,/2/2'(B),
'detach_known/1_1_$special_,/2/2'(E,B)
;
true
),
'known/1_1_$special_fail/0/0__16__0'(C,A)
;
'known/1_1_$special_fail/0/0__16__0'(C,A)
).
'known/1_1_$special_fail/0/0__16'(A) :-
'known/1_1_$special_fail/0/0__17'(A).
'known/1_1_$special_fail/0/0__17'(A) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,D,_,_,_,_,_,_,_),
E/\262144=:=262144,
!,
'known/1_1_$special_fail/0/0__17__0'(D,A).
'known/1_1_$special_fail/0/0__17__0'([],A) :-
'known/1_1_$special_fail/0/0__18'(A).
'known/1_1_$special_fail/0/0__17__0'([B|C],A) :-
( B=suspension(_,D,_,_,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(B,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_\\==/2/2'(B),
'detach_known/1_1_$special_\\==/2/2'(E,B)
;
true
),
'known/1_1_$special_fail/0/0__17__0'(C,A)
;
'known/1_1_$special_fail/0/0__17__0'(C,A)
).
'known/1_1_$special_fail/0/0__17'(A) :-
'known/1_1_$special_fail/0/0__18'(A).
'known/1_1_$special_fail/0/0__18'(A) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,D,_,_,_,_,_,_),
E/\524288=:=524288,
!,
'known/1_1_$special_fail/0/0__18__0'(D,A).
'known/1_1_$special_fail/0/0__18__0'([],A) :-
'known/1_1_$special_fail/0/0__19'(A).
'known/1_1_$special_fail/0/0__18__0'([B|C],A) :-
( B=suspension(_,D,_,_,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(B,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_==/2/2'(B),
'detach_known/1_1_$special_==/2/2'(E,B)
;
true
),
'known/1_1_$special_fail/0/0__18__0'(C,A)
;
'known/1_1_$special_fail/0/0__18__0'(C,A)
).
'known/1_1_$special_fail/0/0__18'(A) :-
'known/1_1_$special_fail/0/0__19'(A).
'known/1_1_$special_fail/0/0__19'(A) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,D,_,_,_,_,_),
E/\1048576=:=1048576,
!,
'known/1_1_$special_fail/0/0__19__0'(D,A).
'known/1_1_$special_fail/0/0__19__0'([],A) :-
'known/1_1_$special_fail/0/0__20'(A).
'known/1_1_$special_fail/0/0__19__0'([B|C],A) :-
( B=suspension(_,D,_,_,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(B,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_is/2/2'(B),
'detach_known/1_1_$special_is/2/2'(E,B)
;
true
),
'known/1_1_$special_fail/0/0__19__0'(C,A)
;
'known/1_1_$special_fail/0/0__19__0'(C,A)
).
'known/1_1_$special_fail/0/0__19'(A) :-
'known/1_1_$special_fail/0/0__20'(A).
'known/1_1_$special_fail/0/0__20'(A) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,D,_,_,_,_),
E/\2097152=:=2097152,
!,
'known/1_1_$special_fail/0/0__20__0'(D,A).
'known/1_1_$special_fail/0/0__20__0'([],A) :-
'known/1_1_$special_fail/0/0__21'(A).
'known/1_1_$special_fail/0/0__20__0'([B|C],A) :-
( B=suspension(_,D,_,_,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(B,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_</2/2'(B),
'detach_known/1_1_$special_</2/2'(E,B)
;
true
),
'known/1_1_$special_fail/0/0__20__0'(C,A)
;
'known/1_1_$special_fail/0/0__20__0'(C,A)
).
'known/1_1_$special_fail/0/0__20'(A) :-
'known/1_1_$special_fail/0/0__21'(A).
'known/1_1_$special_fail/0/0__21'(A) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,D,_,_,_),
E/\4194304=:=4194304,
!,
'known/1_1_$special_fail/0/0__21__0'(D,A).
'known/1_1_$special_fail/0/0__21__0'([],A) :-
'known/1_1_$special_fail/0/0__22'(A).
'known/1_1_$special_fail/0/0__21__0'([B|C],A) :-
( B=suspension(_,D,_,_,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(B,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_>=/2/2'(B),
'detach_known/1_1_$special_>=/2/2'(E,B)
;
true
),
'known/1_1_$special_fail/0/0__21__0'(C,A)
;
'known/1_1_$special_fail/0/0__21__0'(C,A)
).
'known/1_1_$special_fail/0/0__21'(A) :-
'known/1_1_$special_fail/0/0__22'(A).
'known/1_1_$special_fail/0/0__22'(A) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,D,_,_),
E/\8388608=:=8388608,
!,
'known/1_1_$special_fail/0/0__22__0'(D,A).
'known/1_1_$special_fail/0/0__22__0'([],A) :-
'known/1_1_$special_fail/0/0__23'(A).
'known/1_1_$special_fail/0/0__22__0'([B|C],A) :-
( B=suspension(_,D,_,_,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(B,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_>/2/2'(B),
'detach_known/1_1_$special_>/2/2'(E,B)
;
true
),
'known/1_1_$special_fail/0/0__22__0'(C,A)
;
'known/1_1_$special_fail/0/0__22__0'(C,A)
).
'known/1_1_$special_fail/0/0__22'(A) :-
'known/1_1_$special_fail/0/0__23'(A).
'known/1_1_$special_fail/0/0__23'(A) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,D,_),
E/\16777216=:=16777216,
!,
'known/1_1_$special_fail/0/0__23__0'(D,A).
'known/1_1_$special_fail/0/0__23__0'([],A) :-
'known/1_1_$special_fail/0/0__24'(A).
'known/1_1_$special_fail/0/0__23__0'([B|C],A) :-
( B=suspension(_,D,_,_,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(B,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_=</2/2'(B),
'detach_known/1_1_$special_=</2/2'(E,B)
;
true
),
'known/1_1_$special_fail/0/0__23__0'(C,A)
;
'known/1_1_$special_fail/0/0__23__0'(C,A)
).
'known/1_1_$special_fail/0/0__23'(A) :-
'known/1_1_$special_fail/0/0__24'(A).
'known/1_1_$special_fail/0/0__24'(A) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(E,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,D),
E/\33554432=:=33554432,
!,
'known/1_1_$special_fail/0/0__24__0'(D,A).
'known/1_1_$special_fail/0/0__24__0'([],A) :-
'known/1_1_$special_fail/0/0__25'(A).
'known/1_1_$special_fail/0/0__24__0'([B|C],A) :-
( B=suspension(_,D,_,_,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(B,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$special_=:=/2/2'(B),
'detach_known/1_1_$special_=:=/2/2'(E,B)
;
true
),
'known/1_1_$special_fail/0/0__24__0'(C,A)
;
'known/1_1_$special_fail/0/0__24__0'(C,A)
).
'known/1_1_$special_fail/0/0__24'(A) :-
'known/1_1_$special_fail/0/0__25'(A).
'known/1_1_$special_fail/0/0__25'(A) :-
nb_getval('$chr_store_global_ground_guard_entailment:known/1_1_$special_fail/0/0',C),
(
'chr sbag_member'(B,C),
B=suspension(_,D,_,_,_,_),
D=mutable(active),
!,
( var(A) ->
true
;
remove_constraint_internal(A,_,E),
( E==yes ->
'$delete_from_store_known/1_1_$special_fail/0/0'(A)
;
true
)
)
;
!,
'known/1_1_$special_fail/0/0__25__0'(C,A)
).
'known/1_1_$special_fail/0/0__25__0'([],A) :-
'known/1_1_$special_fail/0/0__26'(A).
'known/1_1_$special_fail/0/0__25__0'([B|C],A) :-
( B=suspension(_,D,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(B,_,E),
( E==yes ->
'$delete_from_store_known/1_1_$special_fail/0/0'(B)
;
true
),
'known/1_1_$special_fail/0/0__25__0'(C,A)
;
'known/1_1_$special_fail/0/0__25__0'(C,A)
).
'known/1_1_$special_fail/0/0__25'(A) :-
'known/1_1_$special_fail/0/0__26'(A).
'known/1_1_$special_fail/0/0__26'(A) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(E,_,D,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
E/\2=:=2,
!,
'known/1_1_$special_fail/0/0__26__0'(D,A).
'known/1_1_$special_fail/0/0__26__0'([],A) :-
'known/1_1_$special_fail/0/0__27'(A).
'known/1_1_$special_fail/0/0__26__0'([B|C],A) :-
( B=suspension(_,D,_,_,_,_,_),
D=mutable(active) ->
remove_constraint_internal(B,E,F),
( F==yes ->
'$delete_from_store_known/1_1_$default/1'(B),
'detach_known/1_1_$default/1'(E,B)
;
true
),
'known/1_1_$special_fail/0/0__26__0'(C,A)
;
'known/1_1_$special_fail/0/0__26__0'(C,A)
).
'known/1_1_$special_fail/0/0__26'(A) :-
'known/1_1_$special_fail/0/0__27'(A).
'known/1_1_$special_fail/0/0__27'(A) :-
'chr default_store'(C),
get_attr(C,guard_entailment,D),
D=v(G,_,_,E,_,_,_,_,_,_,_,_,_,_,F,_,_,_,_,_,_,_,_,_,_,_,_),
(
G/\8192=:=8192,
'chr sbag_member'(B,F),
B=suspension(_,I,_,_,_,_,H),
I=mutable(active),
H==fail,
!,
remove_constraint_internal(B,J,K),
( K==yes ->
'$delete_from_store_known/1_1_$special_\\+/1/1'(B),
'detach_known/1_1_$special_\\+/1/1'(J,B)
;
true
),
( var(A) ->
true
;
remove_constraint_internal(A,_,L),
( L==yes ->
'$delete_from_store_known/1_1_$special_fail/0/0'(A)
;
true
)
),
'known/1_1_$special_fail/0'
;
G/\4=:=4,
!,
'known/1_1_$special_fail/0/0__27__0'(E,A)
).
'known/1_1_$special_fail/0/0__27__0'([],A) :-
'known/1_1_$special_fail/0/0__28'(A).
'known/1_1_$special_fail/0/0__27__0'([B|C],A) :-
( B=suspension(_,G,_,_,_,_,D,E),
G=mutable(active),
nonvar(D),
D=(\+F),
F==fail ->
remove_constraint_internal(B,H,I),
( I==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(B),
'detach_known/1_1_$special_;/2/2'(H,B)
;
true
),
activate_constraint(J,_,A,K),
( J==yes ->
'$insert_in_store_known/1_1_$special_fail/0/0'(A)
;
true
),
known(E),
( A=suspension(_,L,_,M,_,_),
L=mutable(active),
M=mutable(K) ->
'chr update_mutable'(inactive,L),
'known/1_1_$special_fail/0/0__27__0'(C,A)
;
true
)
;
'known/1_1_$special_fail/0/0__27__0'(C,A)
).
'known/1_1_$special_fail/0/0__27'(A) :-
'known/1_1_$special_fail/0/0__28'(A).
'known/1_1_$special_fail/0/0__28'(A) :-
'chr default_store'(B),
get_attr(B,guard_entailment,C),
C=v(E,_,_,D,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_),
E/\4=:=4,
!,
'known/1_1_$special_fail/0/0__28__0'(D,A).
'known/1_1_$special_fail/0/0__28__0'([],A) :-
'known/1_1_$special_fail/0/0__29'(A).
'known/1_1_$special_fail/0/0__28__0'([B|C],A) :-
( B=suspension(_,H,_,_,_,_,D,E),
H=mutable(active),
nonvar(D),
D=(F,_),
nonvar(F),
F=(\+G),
G==fail ->
remove_constraint_internal(B,I,J),
( J==yes ->
'$delete_from_store_known/1_1_$special_;/2/2'(B),
'detach_known/1_1_$special_;/2/2'(I,B)
;
true
),
activate_constraint(K,_,A,L),
( K==yes ->
'$insert_in_store_known/1_1_$special_fail/0/0'(A)
;
true
),
known(E),
( A=suspension(_,M,_,N,_,_),
M=mutable(active),
N=mutable(L) ->
'chr update_mutable'(inactive,M),
'known/1_1_$special_fail/0/0__28__0'(C,A)
;
true
)
;
'known/1_1_$special_fail/0/0__28__0'(C,A)
).
'known/1_1_$special_fail/0/0__28'(A) :-
'known/1_1_$special_fail/0/0__29'(A).
'known/1_1_$special_fail/0/0__29'(A) :-
activate_constraint(B,_,A,_),
( B==yes ->
'$insert_in_store_known/1_1_$special_fail/0/0'(A)
;
true
).
:-multifile chr:'$chr_module'/1.
chr:'$chr_module'(guard_entailment).