3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-05-11 17:54:43 +00:00

Enable model construction and evaluation for theory functions that may be uninterpreted. To fix issue #237

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
Nikolaj Bjorner 2015-11-02 10:18:25 -08:00
parent 7169fc469e
commit feba64b739
5 changed files with 75 additions and 52 deletions

View file

@ -400,7 +400,12 @@ namespace smt {
\brief Return true if the interpretation of the function should be included in the model.
*/
bool model_generator::include_func_interp(func_decl * f) const {
return f->get_family_id() == null_family_id;
family_id fid = f->get_family_id();
if (fid == null_family_id) return true;
if (fid == m_manager.get_basic_family_id()) return false;
theory * th = m_context->get_theory(fid);
if (!th) return true;
return th->include_func_interp(f);
}
/**