3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-29 20:05:51 +00:00
This commit is contained in:
Nikolaj Bjorner 2021-05-30 10:32:30 -07:00
parent 4d41db2920
commit b1606487f0
9 changed files with 88 additions and 41 deletions

View file

@ -66,7 +66,10 @@ public:
}
void display(std::ostream & out) override {
out << "(ackr-model-converter)\n";
out << "(ackr-model-converter";
if (abstr_model)
out << *abstr_model;
out << ")\n";
}
protected:
@ -102,16 +105,13 @@ void ackr_model_converter::convert_constants(model * source, model * destination
func_decl * const c = source->get_constant(i);
app * const term = info->find_term(c);
expr * value = source->get_const_interp(c);
TRACE("ackermannize", tout << mk_ismt2_pp(c, m) << " " << term << "\n";);
if (!term) {
TRACE("ackermannize", tout << mk_ismt2_pp(c, m) << " " << mk_ismt2_pp(term, m) << "\n";);
if (!term)
destination->register_decl(c, value);
}
else if (autil.is_select(term)) {
else if (autil.is_select(term))
add_entry(evaluator, term, value, array_interpretations);
}
else {
else
add_entry(evaluator, term, value, interpretations);
}
}
for (auto & kv : interpretations) {