3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-06-06 14:13:23 +00:00
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
Nikolaj Bjorner 2024-08-23 16:44:44 -07:00
parent 0b8177c7d6
commit b2bc51e9ac

View file

@ -556,6 +556,7 @@ expr_ref arith_rewriter::remove_factor(expr* s, expr* t) {
return expr_ref(m_util.mk_mul(r.size(), r.data()), m); return expr_ref(m_util.mk_mul(r.size(), r.data()), m);
} }
} }
if (m_util.is_add(t)) {
expr_ref_vector sum(m); expr_ref_vector sum(m);
sum.push_back(t); sum.push_back(t);
for (unsigned i = 0; i < sum.size(); ++i) { for (unsigned i = 0; i < sum.size(); ++i) {
@ -573,6 +574,11 @@ expr_ref arith_rewriter::remove_factor(expr* s, expr* t) {
return expr_ref(sum.get(0), m); return expr_ref(sum.get(0), m);
else else
return expr_ref(m_util.mk_add(sum.size(), sum.data()), m); return expr_ref(m_util.mk_add(sum.size(), sum.data()), m);
}
else {
SASSERT(s == t);
return expr_ref(m_util.mk_numeral(rational(1), m_util.is_int(t)), m);
}
} }