mirror of
https://github.com/Z3Prover/z3
synced 2025-04-23 09:05:31 +00:00
finish is-fixed
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
parent
e5767bf2b8
commit
c00591daaf
8 changed files with 35 additions and 4 deletions
|
@ -2922,7 +2922,7 @@ namespace smt {
|
|||
while (l) {
|
||||
theory_id tid = l->get_id();
|
||||
auto* p = m_theories.get_plugin(tid);
|
||||
if (p && p->is_fixed(l->get_var(), val, explain))
|
||||
if (p && p->is_fixed_propagated(l->get_var(), val, explain))
|
||||
return true;
|
||||
l = l->get_next();
|
||||
}
|
||||
|
|
|
@ -620,7 +620,7 @@ namespace smt {
|
|||
/**
|
||||
* \brief theory plugin for fixed values.
|
||||
*/
|
||||
virtual bool is_fixed(theory_var v, expr_ref& val, literal_vector & explain) { return false; }
|
||||
virtual bool is_fixed_propagated(theory_var v, expr_ref& val, literal_vector & explain) { return false; }
|
||||
};
|
||||
|
||||
};
|
||||
|
|
|
@ -519,7 +519,7 @@ namespace smt {
|
|||
}
|
||||
}
|
||||
|
||||
bool theory_bv::is_fixed(theory_var v, expr_ref& val, literal_vector& lits) {
|
||||
bool theory_bv::is_fixed_propagated(theory_var v, expr_ref& val, literal_vector& lits) {
|
||||
numeral r;
|
||||
enode* n = get_enode(v);
|
||||
if (!get_fixed_value(v, r))
|
||||
|
|
|
@ -282,7 +282,7 @@ namespace smt {
|
|||
void collect_statistics(::statistics & st) const override;
|
||||
|
||||
bool get_fixed_value(app* x, numeral & result) const;
|
||||
bool is_fixed(theory_var v, expr_ref& val, literal_vector& explain) override;
|
||||
bool is_fixed_propagated(theory_var v, expr_ref& val, literal_vector& explain) override;
|
||||
|
||||
bool check_assignment(theory_var v);
|
||||
bool check_invariant();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue