mirror of
https://github.com/Z3Prover/z3
synced 2025-08-11 13:40:52 +00:00
Added decide-callback to user-propagator (#5978)
* Fixed registering expressions in push/pop * Reused existing function * Reverted reusing can_propagate * Added decide-callback to user-propagator * Refactoring * Fixed index
This commit is contained in:
parent
9ecd4f8406
commit
e11496bc65
16 changed files with 284 additions and 87 deletions
|
@ -260,6 +260,9 @@ namespace smt {
|
|||
|
||||
smt_params const& params() const;
|
||||
public:
|
||||
|
||||
typedef std::pair<enode*, unsigned> var_enode_pos;
|
||||
|
||||
theory_bv(context& ctx);
|
||||
~theory_bv() override;
|
||||
|
||||
|
@ -284,6 +287,9 @@ namespace smt {
|
|||
bool get_fixed_value(app* x, numeral & result) const;
|
||||
bool is_fixed_propagated(theory_var v, expr_ref& val, literal_vector& explain) override;
|
||||
|
||||
var_enode_pos get_bv_with_theory(bool_var v, theory_id id) const;
|
||||
bool_var get_first_unassigned(unsigned start_bit, enode* n) const;
|
||||
|
||||
bool check_assignment(theory_var v);
|
||||
bool check_invariant();
|
||||
bool check_zero_one_bits(theory_var v);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue