/* 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_ 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_ 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'([],_). '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_= 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_= 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_= 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_= 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_ 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_ 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_= 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_= 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=H1), !, 'known/1_1_$special_>=/2'(G1,H1) ) ; A=(I1>J1), !, 'known/1_1_$special_>/2'(I1,J1) ) ; A=(K1==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= 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_ 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_= 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/\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'(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_I, ! ; I==A, number(H), B '$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_=B, !, fail ). 'test/1_1_$special_= '$delete_from_store_known/1_1_$special_;/2/2'(C), 'detach_known/1_1_$special_;/2/2'(L,C) ; true ), \+try(H,A= '$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 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= 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 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= 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 '$delete_from_store_known/1_1_$special_ 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= '$delete_from_store_known/1_1_$special_= 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_ true ; remove_constraint_internal(C,L,M), ( M==yes -> '$delete_from_store_known/1_1_$special_ allocate_constraint(guard_entailment:'known/1_1_$special_ remove_constraint_internal(D,I,J), ( J==yes -> '$delete_from_store_known/1_1_$special_ allocate_constraint(guard_entailment:'known/1_1_$special_ true ; remove_constraint_internal(C,D,E), ( E==yes -> '$delete_from_store_known/1_1_$special_ 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_ 'chr update_mutable'(inactive,Q), 'known/1_1_$special_ 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_ 'chr update_mutable'(inactive,R), 'known/1_1_$special_ '$insert_in_store_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/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/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_= true ; remove_constraint_internal(C,L,M), ( M==yes -> '$delete_from_store_known/1_1_$special_= allocate_constraint(guard_entailment:'known/1_1_$special_= remove_constraint_internal(D,I,J), ( J==yes -> '$delete_from_store_known/1_1_$special_= allocate_constraint(guard_entailment:'known/1_1_$special_= true ; remove_constraint_internal(A,E,F), ( F==yes -> '$delete_from_store_known/1_1_$special_= true ; remove_constraint_internal(C,D,E), ( E==yes -> '$delete_from_store_known/1_1_$special_=B, !, ( var(C) -> true ; remove_constraint_internal(C,D,E), ( E==yes -> '$delete_from_store_known/1_1_$special_= true ; remove_constraint_internal(C,N,O), ( O==yes -> '$delete_from_store_known/1_1_$special_= remove_constraint_internal(D,I,J), ( J==yes -> '$delete_from_store_known/1_1_$special_= true ; remove_constraint_internal(C,L,M), ( M==yes -> '$delete_from_store_known/1_1_$special_= remove_constraint_internal(D,I,J), ( J==yes -> '$delete_from_store_known/1_1_$special_= '$delete_from_store_known/1_1_$special_= true ; remove_constraint_internal(C,N,O), ( O==yes -> '$delete_from_store_known/1_1_$special_= 'chr extend_history'(C,N), activate_constraint(J,I,C,K), ( J==yes -> '$insert_in_store_known/1_1_$special_= 'chr update_mutable'(inactive,L), 'known/1_1_$special_= 'chr extend_history'(C,N), activate_constraint(J,I,C,K), ( J==yes -> '$insert_in_store_known/1_1_$special_= 'chr update_mutable'(inactive,L), 'known/1_1_$special_= 'known/1_1_$special_= 'known/1_1_$special_= 'chr extend_history'(E,S), activate_constraint(O,N,E,P), ( O==yes -> '$insert_in_store_known/1_1_$special_= 'chr update_mutable'(inactive,Q), 'known/1_1_$special_= 'known/1_1_$special_= 'known/1_1_$special_= 'chr extend_history'(E,S), activate_constraint(O,N,E,P), ( O==yes -> '$insert_in_store_known/1_1_$special_= 'chr update_mutable'(inactive,Q), 'known/1_1_$special_= '$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_= 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_= 'chr update_mutable'(inactive,Q), 'known/1_1_$special_= 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_= 'chr update_mutable'(inactive,R), 'known/1_1_$special_= '$insert_in_store_known/1_1_$special_= 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_ 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_= 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).