mirror of
https://github.com/Z3Prover/z3
synced 2025-04-24 01:25:31 +00:00
adding div0
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
parent
1048abfd9f
commit
6cf7d8e523
6 changed files with 86 additions and 14 deletions
|
@ -334,6 +334,21 @@ struct evaluator_cfg : public default_rewriter_cfg {
|
|||
|
||||
func_interp * fi = m_model.get_func_interp(f);
|
||||
|
||||
|
||||
func_decl_ref f_ui(m);
|
||||
if (!fi && m_au.is_considered_uninterpreted(f, num, args, f_ui)) {
|
||||
if (f_ui) {
|
||||
fi = m_model.get_func_interp(f);
|
||||
}
|
||||
if (!fi) {
|
||||
result = m_au.mk_numeral(rational(0), f->get_range());
|
||||
return BR_DONE;
|
||||
}
|
||||
}
|
||||
else if (!fi && m_fpau.is_considered_uninterpreted(f, num, args)) {
|
||||
result = m.get_some_value(f->get_range());
|
||||
return BR_DONE;
|
||||
}
|
||||
if (fi) {
|
||||
if (fi->is_partial())
|
||||
fi->set_else(m.get_some_value(f->get_range()));
|
||||
|
@ -343,14 +358,6 @@ struct evaluator_cfg : public default_rewriter_cfg {
|
|||
return BR_REWRITE_FULL;
|
||||
}
|
||||
|
||||
if (m_au.is_considered_uninterpreted(f, num, args)) {
|
||||
result = m_au.mk_numeral(rational(0), f->get_range());
|
||||
return BR_DONE;
|
||||
}
|
||||
else if (m_fpau.is_considered_uninterpreted(f, num, args)) {
|
||||
result = m.get_some_value(f->get_range());
|
||||
return BR_DONE;
|
||||
}
|
||||
return BR_FAILED;
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue