From: Markus Triska Date: Fri, 8 Sep 2023 21:19:10 +0000 (+0200) Subject: remove more attributes so that they do not appear in residual goals X-Git-Tag: remove~104^2~1 X-Git-Url: https://git.sagredo.dev/?a=commitdiff_plain;h=6fe85c5779d3ac81cdea1020852a1535697fde7c;p=scryer-prolog.git remove more attributes so that they do not appear in residual goals --- diff --git a/src/lib/clpb.pl b/src/lib/clpb.pl index ec31b298..213d684a 100644 --- a/src/lib/clpb.pl +++ b/src/lib/clpb.pl @@ -1729,7 +1729,8 @@ attribute_goals(Var) --> del_clpb(Var) :- del_attr(Var, clpb), - del_attr(Var, clpb_hash). + del_attr(Var, clpb_hash), + del_attr(Var, clpb_atom). /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - To make residual projection work with recorded constraints, the @@ -1883,7 +1884,8 @@ booleans([B|Bs]) --> boolean(B), booleans(Bs). boolean(Var) --> { del_clpb(Var) }, - ( { get_attr(Var, clpb_omit_boolean, true) } -> [] + ( { get_attr(Var, clpb_omit_boolean, true) } -> + { put_atts(Var, -clpb_omit_boolean(_)) } ; [clpb:sat(Var =:= Var)] ).