mirror of
https://github.com/Z3Prover/z3
synced 2025-08-11 05:30:51 +00:00
re-factoring
This commit is contained in:
parent
7f7185ce02
commit
bcab9a3600
7 changed files with 29 additions and 26 deletions
|
@ -29,8 +29,6 @@ Notes:
|
|||
#include"aig_tactic.h"
|
||||
#include"sat_tactic.h"
|
||||
#include"ackermannize_tactic.h"
|
||||
#include"ackr_bound_probe.h"
|
||||
#include"qfbv_tactic_params.hpp"
|
||||
|
||||
#define MEMLIMIT 300
|
||||
|
||||
|
@ -49,21 +47,10 @@ tactic * mk_qfbv_preamble(ast_manager& m, params_ref const& p) {
|
|||
simp2_p.set_bool("flat", true); // required by som
|
||||
simp2_p.set_bool("hoist_mul", false); // required by som
|
||||
|
||||
|
||||
qfbv_tactic_params my_params(p);
|
||||
|
||||
params_ref hoist_p;
|
||||
hoist_p.set_bool("hoist_mul", true);
|
||||
hoist_p.set_bool("som", false);
|
||||
|
||||
const double should_ackermannize = static_cast<double>(my_params.div0ackermann());
|
||||
const double ackermannize_limit = static_cast<double>(my_params.div0_ackermann_limit());
|
||||
probe * const should_ackermann_p = mk_and(
|
||||
mk_const_probe(should_ackermannize),
|
||||
mk_lt(mk_ackr_bound_probe(), mk_const_probe(ackermannize_limit))
|
||||
);
|
||||
|
||||
|
||||
return
|
||||
and_then(
|
||||
mk_simplify_tactic(m),
|
||||
|
@ -80,7 +67,7 @@ tactic * mk_qfbv_preamble(ast_manager& m, params_ref const& p) {
|
|||
//
|
||||
using_params(mk_simplify_tactic(m), hoist_p),
|
||||
mk_max_bv_sharing_tactic(m),
|
||||
when(should_ackermann_p, mk_ackermannize_tactic(m,p))
|
||||
mk_ackermannize_bounded_tactic(m,p)
|
||||
);
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue