3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2026-03-02 11:46:55 +00:00

implementing model updates

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
Nikolaj Bjorner 2017-10-30 16:11:51 -05:00
parent 92b5301b7f
commit 3de8c193ea
63 changed files with 482 additions and 294 deletions

View file

@ -24,6 +24,7 @@ Notes:
#include "util/params.h"
class solver;
class model_converter;
class solver_factory {
public:
@ -184,25 +185,17 @@ public:
virtual expr_ref cube() = 0;
#if 0
/**
\brief extract a lookahead candidates for branching.
*/
virtual expr_ref lookahead(expr_ref_vector const& assumptions, expr_ref_vector const& candidates) = 0;
/**
\brief extract learned lemmas.
*/
virtual void get_lemmas(expr_ref_vector& lemmas) {}
#endif
/**
\brief Display the content of this solver.
*/
virtual std::ostream& display(std::ostream & out) const;
/**
\brief expose model converter when solver produces partially reduced set of assertions.
*/
virtual model_converter_ref get_model_converter() const { return m_mc0; }
class scoped_push {
solver& s;
bool m_nopop;