mirror of
https://github.com/c-cube/sidekick.git
synced 2025-12-06 03:05:31 -05:00
feat(lra): bugfixes
This commit is contained in:
parent
93b56618f1
commit
7c3c88d6f6
2 changed files with 7 additions and 3 deletions
|
|
@ -237,8 +237,12 @@ module Make(A : ARG) : S with module A = A = struct
|
|||
| exception Not_found -> ()
|
||||
| (pred, a, b) ->
|
||||
let pred = if sign then pred else FM.Pred.neg pred in
|
||||
let c = FM_A.Constr.mk ~tag:lit pred a b in
|
||||
FM_A.assert_c fm c;
|
||||
if pred = Neq then (
|
||||
Log.debugf 50 (fun k->k "skip neq in %a" T.pp t);
|
||||
) else (
|
||||
let c = FM_A.Constr.mk ~tag:lit pred a b in
|
||||
FM_A.assert_c fm c;
|
||||
)
|
||||
end)
|
||||
end;
|
||||
Log.debug 5 "lra: call arith solver";
|
||||
|
|
|
|||
|
|
@ -248,7 +248,7 @@ module Make(A : ARG)
|
|||
}
|
||||
|
||||
let add_sys (sys:system) (c:Constr.t) : system =
|
||||
assert (match c.pred with Eq|Neq|Lt -> true | _ -> false);
|
||||
assert (match c.pred with Eq|Leq|Lt -> true | _ -> false);
|
||||
if Constr.is_trivial c then (
|
||||
Log.debugf 10 (fun k->k"(@[FM.drop-trivial@ %a@])" Constr.pp c);
|
||||
sys
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue