mirror of
https://github.com/Z3Prover/z3
synced 2025-11-03 13:07:53 +00:00
add clausal lookahead to arithmetic solver as part of portfolio
have legacy qfbv-sls solver use nnf pre-processing. It relies on it for correctness of the score updates.
This commit is contained in:
parent
a941f5ae84
commit
22e4054674
13 changed files with 678 additions and 92 deletions
|
|
@ -124,6 +124,8 @@ namespace sls {
|
|||
m_ddfw->reinit();
|
||||
}
|
||||
|
||||
void shift_weights() override { m_ddfw->shift_weights(); }
|
||||
|
||||
lbool on_save_model() override;
|
||||
|
||||
void on_model(model_ref& mdl) override {
|
||||
|
|
@ -131,6 +133,14 @@ namespace sls {
|
|||
m_sls_model = mdl;
|
||||
}
|
||||
|
||||
sat::bool_var bool_flip() override {
|
||||
return m_ddfw->bool_flip();
|
||||
}
|
||||
|
||||
bool is_external(sat::bool_var v) override {
|
||||
return m_context.is_external(v);
|
||||
}
|
||||
|
||||
void on_rescale() override {}
|
||||
|
||||
reslimit& rlimit() override { return m_ddfw->rlimit(); }
|
||||
|
|
@ -160,6 +170,8 @@ namespace sls {
|
|||
}
|
||||
unsigned num_vars() const override { return m_ddfw->num_vars(); }
|
||||
indexed_uint_set const& unsat() const override { return m_ddfw->unsat_set(); }
|
||||
indexed_uint_set const& unsat_vars() const override { return m_ddfw->unsat_vars(); }
|
||||
unsigned num_external_in_unsat_vars() const override { return m_ddfw->num_external_in_unsat_vars(); }
|
||||
sat::bool_var add_var() override {
|
||||
return m_ddfw->add_var();
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue