mirror of
https://github.com/Z3Prover/z3
synced 2025-04-24 01:25:31 +00:00
parent
f2a7bcaf5d
commit
092c25d596
10 changed files with 62 additions and 20 deletions
|
@ -468,6 +468,10 @@ expr_ref model::operator()(expr* t) {
|
|||
return m_mev(t);
|
||||
}
|
||||
|
||||
void model::set_solver(expr_solver* s) {
|
||||
m_mev.set_solver(s);
|
||||
}
|
||||
|
||||
expr_ref_vector model::operator()(expr_ref_vector const& ts) {
|
||||
expr_ref_vector rs(m);
|
||||
for (expr* t : ts) rs.push_back((*this)(t));
|
||||
|
|
|
@ -95,6 +95,7 @@ public:
|
|||
bool is_false(expr* t);
|
||||
bool is_true(expr_ref_vector const& ts);
|
||||
void reset_eval_cache();
|
||||
void set_solver(expr_solver* solver);
|
||||
|
||||
class scoped_model_completion {
|
||||
bool m_old_completion;
|
||||
|
|
|
@ -627,3 +627,7 @@ bool model_evaluator::eval(expr_ref_vector const& ts, expr_ref& r, bool model_co
|
|||
tmp = mk_and(ts);
|
||||
return eval(tmp, r, model_completion);
|
||||
}
|
||||
|
||||
void model_evaluator::set_solver(expr_solver* solver) {
|
||||
m_imp->m_cfg.m_seq_rw.set_solver(solver);
|
||||
}
|
||||
|
|
|
@ -25,6 +25,7 @@ Revision History:
|
|||
|
||||
class model;
|
||||
class model_core;
|
||||
class expr_solver;
|
||||
|
||||
typedef rewriter_exception model_evaluator_exception;
|
||||
|
||||
|
@ -55,6 +56,8 @@ public:
|
|||
bool is_false(expr * t);
|
||||
bool is_true(expr_ref_vector const& ts);
|
||||
|
||||
void set_solver(expr_solver* solver);
|
||||
|
||||
/**
|
||||
* best effort evaluator of extensional array equality.
|
||||
*/
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue