3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-29 03:45:51 +00:00

interleave linear solver calls

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
Nikolaj Bjorner 2021-05-14 11:31:35 -07:00
parent 118dc0f3b4
commit 17fcf79c04
4 changed files with 26 additions and 7 deletions

View file

@ -32,8 +32,10 @@ Author:
namespace polysat {
class solver;
class linear_solver {
reslimit& m_lim;
solver& s;
ptr_vector<fixplex_base> m_fix;
unsigned_vector m_var2ext;
unsigned_vector m_ext2var;
@ -45,13 +47,13 @@ namespace polysat {
// removing rows from fixplex
//
public:
linear_solver(reslimit& lim):
m_lim(lim)
linear_solver(solver& s):
s(s)
{}
void push();
void pop(unsigned n);
void internalize_constraint(constraint& c);
void new_constraint(constraint& c);
void set_value(pvar v, rational const& value);
void set_bound(pvar v, rational const& lo, rational const& hi);
void activate_constraint(constraint& c);