mirror of
https://github.com/Z3Prover/z3
synced 2025-04-28 03:15:50 +00:00
working on #5614
there are some different sources for the performance regression illustrated by the example. The mitigations will be enabled separately: - m_bv_to_propagate is too expensive - lp_bound_propagator misses equalities in two different ways: - it resets row checks after backtracking even though they could still propagate - it misses equalities for fixed rows when the fixed constant value does not correspond to a fixed variable. FYI @levnach
This commit is contained in:
parent
a94e2e62af
commit
87d4ce2659
13 changed files with 422 additions and 385 deletions
|
@ -27,7 +27,7 @@ template bool lp::vectors_are_equal<lp::mpq>(vector<lp::mpq > const&, vector<lp:
|
|||
void lp::lp_settings::updt_params(params_ref const& _p) {
|
||||
smt_params_helper p(_p);
|
||||
m_enable_hnf = p.arith_enable_hnf();
|
||||
m_cheap_eqs = p.arith_propagate_eqs();
|
||||
m_propagate_eqs = p.arith_propagate_eqs();
|
||||
print_statistics = p.arith_print_stats();
|
||||
m_print_external_var_name = p.arith_print_ext_var_names();
|
||||
report_frequency = p.arith_rep_freq();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue