mirror of
https://github.com/Z3Prover/z3
synced 2025-04-14 21:08:46 +00:00
parent
e1fd167e01
commit
a2b18a37ec
|
@ -467,15 +467,15 @@ br_status arith_rewriter::mk_le_ge_eq_core(expr * arg1, expr * arg2, op_kind kin
|
||||||
case LE:
|
case LE:
|
||||||
result = m().mk_or(
|
result = m().mk_or(
|
||||||
m().mk_and(is_zero, m_util.mk_le(div0, arg2)),
|
m().mk_and(is_zero, m_util.mk_le(div0, arg2)),
|
||||||
m().mk_and(m_util.mk_gt(e2, zero), m_util.mk_le(e1, mul2)),
|
m().mk_and(m().mk_not(m_util.mk_le(e2, zero)), m_util.mk_le(e1, mul2)),
|
||||||
m().mk_and(m_util.mk_lt(e2, zero), m_util.mk_ge(e1, mul2)));
|
m().mk_and(m().mk_not(m_util.mk_ge(e2, zero)), m_util.mk_ge(e1, mul2)));
|
||||||
return BR_REWRITE2;
|
return BR_REWRITE_FULL;
|
||||||
case GE:
|
case GE:
|
||||||
result = m().mk_or(
|
result = m().mk_or(
|
||||||
m().mk_and(is_zero, m_util.mk_ge(div0, arg2)),
|
m().mk_and(is_zero, m_util.mk_ge(div0, arg2)),
|
||||||
m().mk_and(m_util.mk_gt(e2, zero), m_util.mk_ge(e1, mul2)),
|
m().mk_and(m().mk_not(m_util.mk_le(e2, zero)), m_util.mk_ge(e1, mul2)),
|
||||||
m().mk_and(m_util.mk_lt(e2, zero), m_util.mk_le(e1, mul2)));
|
m().mk_and(m().mk_not(m_util.mk_ge(e2, zero)), m_util.mk_le(e1, mul2)));
|
||||||
return BR_REWRITE2;
|
return BR_REWRITE_FULL;
|
||||||
case EQ:
|
case EQ:
|
||||||
result = m().mk_ite(is_zero, m().mk_eq(div0, arg2), m().mk_eq(e1, mul2));
|
result = m().mk_ite(is_zero, m().mk_eq(div0, arg2), m().mk_eq(e1, mul2));
|
||||||
return BR_REWRITE2;
|
return BR_REWRITE2;
|
||||||
|
|
Loading…
Reference in a new issue