mirror of
https://github.com/Z3Prover/z3
synced 2025-08-02 17:30:23 +00:00
Pr (#7654)
* add prd Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com> * missing text Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com> * fix Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com> * fix #7647 * fix #7647 - with respect to scope level * initial stab at randomizer Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com> * Create prd.yml * missing text Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com> * fix Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com> * Update prd.yml * allows setting simplifier factory independently of whether solver has been allocated. Instances, such as #7484 can be solved faster by either having authors rewrite benchmarks or by using incremental pre-processing. You can add incremental pre-processing to the SMT solver by using the command ``` (set-simplifier (then simplify propagate-values solve-eqs elim-unconstrained simplify)) ``` This command can be invoked any time prior to push or adding assertions. The effect of the command is that it adds an incremental pre-processing pass to check-sat invocations that is potentially more powerful than the default pre-processing. The default pre-processing functionality is not touched mainly to avoid instability against functionality that is already built around its behavior. * remove experiment from pr --------- Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
parent
8d67feef9f
commit
c2098b41d6
3 changed files with 9 additions and 2 deletions
|
@ -1493,7 +1493,8 @@ void cmd_context::insert_aux_pdecl(pdecl * p) {
|
|||
m_aux_pdecls.push_back(p);
|
||||
}
|
||||
|
||||
void cmd_context::reset(bool finalize) {
|
||||
void cmd_context::reset(bool finalize) {
|
||||
m_simplifier_factory = nullptr;
|
||||
m_logic = symbol::null;
|
||||
m_check_sat_result = nullptr;
|
||||
m_numeral_as_real = false;
|
||||
|
@ -2260,6 +2261,8 @@ void cmd_context::mk_solver() {
|
|||
m_params.get_solver_params(p, proofs_enabled, models_enabled, unsat_core_enabled);
|
||||
m_solver = (*m_solver_factory)(m(), p, proofs_enabled, models_enabled, unsat_core_enabled, m_logic);
|
||||
m_solver = mk_slice_solver(m_solver.get());
|
||||
if (m_simplifier_factory)
|
||||
m_solver = mk_simplifier_solver(m_solver.get(), &m_simplifier_factory);
|
||||
}
|
||||
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue