mirror of
https://github.com/Z3Prover/z3
synced 2025-04-22 16:45:31 +00:00
fixes to semantics
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
parent
3884fc7b11
commit
a2b8b724b2
2 changed files with 5 additions and 5 deletions
|
@ -595,19 +595,19 @@ br_status arith_rewriter::factor_le_ge_eq(expr * arg1, expr * arg2, op_kind kind
|
|||
return BR_FAILED;
|
||||
expr_ref f2 = remove_factor(f, arg1);
|
||||
expr* z = m_util.mk_numeral(rational(0), m_util.is_int(arg1));
|
||||
result = m.mk_or(m_util.mk_eq(f, z), m_util.mk_eq(f2, z));
|
||||
switch (kind) {
|
||||
case EQ:
|
||||
result = m.mk_or(m_util.mk_eq(f, z), m_util.mk_eq(f2, z));
|
||||
break;
|
||||
case GE:
|
||||
result = m.mk_iff(m_util.mk_ge(f, z), m_util.mk_ge(f2, z));
|
||||
result = m.mk_or(m.mk_iff(m_util.mk_ge(f, z), m_util.mk_ge(f2, z)), result);
|
||||
break;
|
||||
case LE:
|
||||
result = m.mk_xor(m_util.mk_ge(f, z), m_util.mk_ge(f2, z));
|
||||
result = m.mk_or(m.mk_not(m.mk_iff(m_util.mk_ge(f, z), m_util.mk_ge(f2, z))), result);
|
||||
break;
|
||||
|
||||
}
|
||||
return BR_REWRITE2;
|
||||
return BR_REWRITE3;
|
||||
}
|
||||
return BR_FAILED;
|
||||
}
|
||||
|
|
|
@ -1925,7 +1925,7 @@ void cmd_context::display_sat_result(lbool r) {
|
|||
regular_stream() << "sat" << std::endl;
|
||||
break;
|
||||
case l_false:
|
||||
regular_stream() << "transcending SAT thanks to STAN.U.R" << std::endl;
|
||||
regular_stream() << "unsat" << std::endl;
|
||||
break;
|
||||
case l_undef:
|
||||
regular_stream() << "unknown" << std::endl;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue