3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-06-07 06:33:23 +00:00

preparing for inf extension of arithmetic

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
Nikolaj Bjorner 2013-10-31 02:13:24 -07:00
parent 0b65aa83e8
commit 5106c74b3e
5 changed files with 8 additions and 7 deletions

View file

@ -43,7 +43,7 @@ Notes:
#include "optimize_objectives.h" #include "optimize_objectives.h"
#include "opt_solver.h" #include "opt_solver.h"
#include "arith_decl_plugin.h" #include "arith_decl_plugin.h"
#include "smt_context.h" #include "theory_arith.h"
namespace opt { namespace opt {
@ -115,6 +115,7 @@ namespace opt {
} }
lbool optimize_objectives::update_upper() { lbool optimize_objectives::update_upper() {
NOT_IMPLEMENTED_YET();
return l_undef; return l_undef;
} }

View file

@ -26,5 +26,5 @@ namespace smt {
// template class theory_arith<si_ext>; // template class theory_arith<si_ext>;
// template class theory_arith<smi_ext>; // template class theory_arith<smi_ext>;
// TBD: template class smt::theory_arith<inf_ext>; template class smt::theory_arith<inf_ext>;
}; };

View file

@ -432,7 +432,7 @@ namespace smt {
bool m_eager_gcd; // true if gcd should be applied at every add_row bool m_eager_gcd; // true if gcd should be applied at every add_row
unsigned m_final_check_idx; unsigned m_final_check_idx;
inf_rational m_objective_value; inf_eps_rational<inf_rational> m_objective_value;
// backtracking // backtracking
svector<bound_trail> m_bound_trail; svector<bound_trail> m_bound_trail;

View file

@ -999,7 +999,7 @@ namespace smt {
template<typename Ext> template<typename Ext>
inf_eps_rational<inf_rational> theory_arith<Ext>::get_objective_value(theory_var v) { inf_eps_rational<inf_rational> theory_arith<Ext>::get_objective_value(theory_var v) {
return inf_eps_rational<inf_rational>(m_objective_value); return m_objective_value;
} }
/** /**

View file

@ -143,15 +143,15 @@ class inf_eps_rational {
return m_infty; return m_infty;
} }
static const inf_eps_rational & zero() { static inf_eps_rational zero() {
return inf_eps_rational(Numeral::zero()); return inf_eps_rational(Numeral::zero());
} }
static const inf_eps_rational & one() { static inf_eps_rational one() {
return inf_eps_rational(Numeral::one()); return inf_eps_rational(Numeral::one());
} }
static const inf_eps_rational & minus_one() { static inf_eps_rational minus_one() {
return inf_eps_rational(Numeral::minus_one()); return inf_eps_rational(Numeral::minus_one());
} }