mirror of
https://github.com/Z3Prover/z3
synced 2025-04-24 17:45:32 +00:00
more scaffolding
This commit is contained in:
parent
a1f484fa35
commit
2fef6dc502
16 changed files with 476 additions and 152 deletions
|
@ -470,7 +470,7 @@ class elim_uncnstr_tactic : public tactic {
|
|||
if (num == 2 &&
|
||||
uncnstr(args[1]) &&
|
||||
m_bv_util.is_numeral(args[0], val, bv_size) &&
|
||||
m_bv_util.mult_inverse(val, bv_size, inv)) {
|
||||
val.mult_inverse(bv_size, inv)) {
|
||||
app * r;
|
||||
if (!mk_fresh_uncnstr_var_for(f, num, args, r))
|
||||
return r;
|
||||
|
|
|
@ -342,7 +342,7 @@ private:
|
|||
ensure_mc(mc);
|
||||
expr_ref def(m);
|
||||
rational inv_r;
|
||||
VERIFY(m_bv.mult_inverse(r, sz, inv_r));
|
||||
VERIFY(r.mult_inverse(sz, inv_r));
|
||||
def = m_bv.mk_bv_mul(m_bv.mk_numeral(inv_r, sz), v);
|
||||
(*mc)->add(v, def);
|
||||
TRACE("invertible_tactic", tout << def << "\n";);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue