mirror of
https://github.com/Z3Prover/z3
synced 2025-04-22 16:45:31 +00:00
fixes to githup issue #133 and stackoverflow reported bug on assertion violation in poly_simplifier_plugin
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
parent
45d2ffa38c
commit
e7385d60fb
2 changed files with 11 additions and 3 deletions
|
@ -69,14 +69,20 @@ expr * poly_simplifier_plugin::mk_mul(unsigned num_args, expr * const * args) {
|
|||
}
|
||||
|
||||
expr * poly_simplifier_plugin::mk_mul(numeral const & c, expr * body) {
|
||||
numeral c_prime;
|
||||
numeral c_prime, d;
|
||||
c_prime = norm(c);
|
||||
if (c_prime.is_zero())
|
||||
return 0;
|
||||
if (body == 0)
|
||||
return mk_numeral(c_prime);
|
||||
if (c_prime.is_one())
|
||||
return body;
|
||||
return body;
|
||||
if (is_numeral(body, d)) {
|
||||
c_prime = norm(c_prime*d);
|
||||
if (c_prime.is_zero())
|
||||
return 0;
|
||||
return mk_numeral(c_prime);
|
||||
}
|
||||
set_curr_sort(body);
|
||||
expr * args[2] = { mk_numeral(c_prime), body };
|
||||
return mk_mul(2, args);
|
||||
|
|
|
@ -46,7 +46,9 @@ namespace opt {
|
|||
m_dump_benchmarks(false),
|
||||
m_first(true) {
|
||||
m_params.updt_params(p);
|
||||
m_params.m_relevancy_lvl = 0;
|
||||
if (m_params.m_case_split_strategy == CS_ACTIVITY_DELAY_NEW) {
|
||||
m_params.m_relevancy_lvl = 0;
|
||||
}
|
||||
}
|
||||
|
||||
unsigned opt_solver::m_dump_count = 0;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue