mirror of
https://github.com/Z3Prover/z3
synced 2025-04-24 09:35:32 +00:00
add hiding to auxiliary declarations created in mc
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
parent
19b1248e5e
commit
f04e805fa4
8 changed files with 20 additions and 11 deletions
|
@ -28,9 +28,12 @@ Notes:
|
|||
#include "model/model_evaluator.h"
|
||||
|
||||
|
||||
generic_model_converter::~generic_model_converter() {
|
||||
}
|
||||
|
||||
void generic_model_converter::add(func_decl * d, expr* e) {
|
||||
VERIFY(e);
|
||||
struct entry et(d, e, m, ADD);
|
||||
entry et(d, e, m, ADD);
|
||||
VERIFY(d->get_range() == m.get_sort(e));
|
||||
m_first_idx.insert_if_not_there(et.m_f, m_entries.size());
|
||||
m_entries.push_back(et);
|
||||
|
@ -169,7 +172,7 @@ void generic_model_converter::operator()(expr_ref& fml) {
|
|||
}
|
||||
unsigned j = min_idx;
|
||||
for (unsigned i = min_idx; i < m_entries.size(); ++i) {
|
||||
entry const& e = m_entries[i];
|
||||
entry& e = m_entries[i];
|
||||
if (e.m_instruction == instruction::HIDE) {
|
||||
if (i != j) {
|
||||
m_entries[j] = e;
|
||||
|
|
|
@ -48,7 +48,7 @@ class generic_model_converter : public model_converter {
|
|||
public:
|
||||
generic_model_converter(ast_manager & m, char const* orig) : m(m), m_orig(orig) {}
|
||||
|
||||
virtual ~generic_model_converter() { }
|
||||
virtual ~generic_model_converter();
|
||||
|
||||
void hide(expr* e) { SASSERT(is_app(e) && to_app(e)->get_num_args() == 0); hide(to_app(e)->get_decl()); }
|
||||
|
||||
|
|
|
@ -24,7 +24,7 @@ Notes:
|
|||
* Add or overwrite value in model.
|
||||
*/
|
||||
void model_converter::display_add(std::ostream& out, ast_manager& m, func_decl* f, expr* e) const {
|
||||
VERIFY(e);
|
||||
VERIFY(e);
|
||||
smt2_pp_environment_dbg env(m);
|
||||
smt2_pp_environment* _env = m_env ? m_env : &env;
|
||||
VERIFY(f->get_range() == m.get_sort(e));
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue