mirror of
https://github.com/Z3Prover/z3
synced 2025-06-28 08:58:44 +00:00
temporary fix
This commit is contained in:
parent
1d9322b5ae
commit
6e9f07e7c5
1 changed files with 6 additions and 0 deletions
|
@ -600,6 +600,7 @@ namespace {
|
||||||
rational new_val2 = extend_by_bits<!FORWARD>(v_pdd, val, fixed, justifications, ne->src, ne->side_cond, ne->refined);
|
rational new_val2 = extend_by_bits<!FORWARD>(v_pdd, val, fixed, justifications, ne->src, ne->side_cond, ne->refined);
|
||||||
|
|
||||||
ne->coeff = 1;
|
ne->coeff = 1;
|
||||||
|
ne->bit_width = s.size(v);
|
||||||
if (FORWARD) {
|
if (FORWARD) {
|
||||||
LOG("refine-bits FORWARD for v" << v << " = " << val << " to [" << new_val2 << ", " << new_val << "[");
|
LOG("refine-bits FORWARD for v" << v << " = " << val << " to [" << new_val2 << ", " << new_val << "[");
|
||||||
ne->interval = eval_interval::proper(v_pdd.manager().mk_val(new_val2), new_val2, v_pdd.manager().mk_val(new_val), new_val);
|
ne->interval = eval_interval::proper(v_pdd.manager().mk_val(new_val2), new_val2, v_pdd.manager().mk_val(new_val), new_val);
|
||||||
|
@ -662,6 +663,7 @@ namespace {
|
||||||
ne->src = e->src;
|
ne->src = e->src;
|
||||||
ne->side_cond = e->side_cond;
|
ne->side_cond = e->side_cond;
|
||||||
ne->coeff = 1;
|
ne->coeff = 1;
|
||||||
|
ne->bit_width = e->bit_width;
|
||||||
ne->interval = eval_interval::full();
|
ne->interval = eval_interval::full();
|
||||||
intersect(v, ne);
|
intersect(v, ne);
|
||||||
return false;
|
return false;
|
||||||
|
@ -679,6 +681,7 @@ namespace {
|
||||||
ne->src = e->src;
|
ne->src = e->src;
|
||||||
ne->side_cond = e->side_cond;
|
ne->side_cond = e->side_cond;
|
||||||
ne->coeff = 1;
|
ne->coeff = 1;
|
||||||
|
ne->bit_width = e->bit_width;
|
||||||
ne->interval = eval_interval::proper(m.mk_val(lo), lo, m.mk_val(hi), hi);
|
ne->interval = eval_interval::proper(m.mk_val(lo), lo, m.mk_val(hi), hi);
|
||||||
SASSERT(ne->interval.currently_contains(val));
|
SASSERT(ne->interval.currently_contains(val));
|
||||||
intersect(v, ne);
|
intersect(v, ne);
|
||||||
|
@ -711,6 +714,7 @@ namespace {
|
||||||
ne->src = e->src;
|
ne->src = e->src;
|
||||||
ne->side_cond = e->side_cond;
|
ne->side_cond = e->side_cond;
|
||||||
ne->coeff = 1;
|
ne->coeff = 1;
|
||||||
|
ne->bit_width = e->bit_width;
|
||||||
ne->interval = eval_interval::proper(m.mk_val(lo), lo, m.mk_val(hi), hi);
|
ne->interval = eval_interval::proper(m.mk_val(lo), lo, m.mk_val(hi), hi);
|
||||||
SASSERT(ne->interval.currently_contains(val));
|
SASSERT(ne->interval.currently_contains(val));
|
||||||
intersect(v, ne);
|
intersect(v, ne);
|
||||||
|
@ -739,6 +743,7 @@ namespace {
|
||||||
ne->src = e->src;
|
ne->src = e->src;
|
||||||
ne->side_cond = e->side_cond;
|
ne->side_cond = e->side_cond;
|
||||||
ne->coeff = 1;
|
ne->coeff = 1;
|
||||||
|
ne->bit_width = e->bit_width;
|
||||||
if (full)
|
if (full)
|
||||||
ne->interval = eval_interval::full();
|
ne->interval = eval_interval::full();
|
||||||
else
|
else
|
||||||
|
@ -838,6 +843,7 @@ namespace {
|
||||||
ne->src = e->src;
|
ne->src = e->src;
|
||||||
ne->side_cond = e->side_cond;
|
ne->side_cond = e->side_cond;
|
||||||
ne->coeff = 1;
|
ne->coeff = 1;
|
||||||
|
ne->bit_width = e->bit_width;
|
||||||
ne->interval = eval_interval::proper(lop, lo, hip, hi);
|
ne->interval = eval_interval::proper(lop, lo, hip, hi);
|
||||||
intersect(v, ne);
|
intersect(v, ne);
|
||||||
return false;
|
return false;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue