3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-08-13 14:40:55 +00:00
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
Nikolaj Bjorner 2017-07-06 22:12:18 -07:00
parent da263601e6
commit 53c38f02d5
5 changed files with 340 additions and 169 deletions

View file

@ -29,12 +29,19 @@ namespace sat {
CR_DONE, CR_CONTINUE, CR_GIVEUP
};
class literal_occs_fun {
public:
virtual double operator()(literal l) = 0;
};
class extension {
public:
virtual ~extension() {}
virtual void set_solver(solver* s) = 0;
virtual void set_lookahead(lookahead* s) = 0;
virtual bool propagate(literal l, ext_constraint_idx idx) = 0;
virtual double get_reward(literal l, ext_constraint_idx idx, literal_occs_fun& occs) const = 0;
virtual void get_antecedents(literal l, ext_justification_idx idx, literal_vector & r) = 0;
virtual void asserted(literal l) = 0;
virtual check_result check() = 0;