mirror of
https://github.com/Z3Prover/z3
synced 2025-07-19 02:42:02 +00:00
working on upper bound optimziation
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
parent
e5698119d7
commit
c0de1e34ac
17 changed files with 343 additions and 125 deletions
|
@ -34,6 +34,7 @@ namespace opt {
|
|||
vector<inf_eps> m_lower;
|
||||
vector<inf_eps> m_upper;
|
||||
svector<smt::theory_var> m_vars;
|
||||
symbol m_engine;
|
||||
public:
|
||||
optimize_objectives(ast_manager& m): m(m), s(0), m_cancel(false) {}
|
||||
|
||||
|
@ -41,13 +42,17 @@ namespace opt {
|
|||
|
||||
void set_cancel(bool f);
|
||||
|
||||
void set_engine(symbol const& e) { m_engine = e; }
|
||||
|
||||
private:
|
||||
|
||||
lbool basic_opt(app_ref_vector& objectives);
|
||||
lbool basic_opt();
|
||||
|
||||
lbool farkas_opt();
|
||||
|
||||
void set_max(vector<inf_eps>& dst, vector<inf_eps> const& src);
|
||||
|
||||
lbool update_lower();
|
||||
void update_lower();
|
||||
|
||||
lbool update_upper();
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue