3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-24 17:45:32 +00:00
This commit is contained in:
Nikolaj Bjorner 2021-05-10 10:33:43 -07:00
parent 28328e63fd
commit a61e9d6b49
2 changed files with 3 additions and 1 deletions

View file

@ -62,7 +62,7 @@ br_status bool_rewriter::mk_app_core(func_decl * f, unsigned num_args, expr * co
return BR_DONE;
case OP_XOR:
switch (num_args) {
case 0: return BR_FAILED;
case 0: result = m().mk_false(); return BR_DONE;
case 1: result = args[0]; return BR_DONE;
case 2: mk_xor(args[0], args[1], result); return BR_DONE;
default: UNREACHABLE(); return BR_FAILED;

View file

@ -577,6 +577,8 @@ struct goal2sat::imp : public sat::sat_internalizer {
}
void convert_iff2(app * t, bool root, bool sign) {
if (t->get_num_args() != 2)
throw default_exception("unexpected number of arguments to xor");
SASSERT(t->get_num_args() == 2);
unsigned sz = m_result_stack.size();
SASSERT(sz >= 2);