mirror of
https://github.com/Z3Prover/z3
synced 2025-04-15 13:28:47 +00:00
fixing the build
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
This commit is contained in:
parent
041458f97a
commit
b90d571d9a
|
@ -1,4 +1,5 @@
|
||||||
namespace lp {
|
namespace lp {
|
||||||
|
#include "util/lp/lp_utils.h"
|
||||||
struct gomory_test {
|
struct gomory_test {
|
||||||
gomory_test(
|
gomory_test(
|
||||||
std::function<std::string (unsigned)> name_function_p,
|
std::function<std::string (unsigned)> name_function_p,
|
||||||
|
@ -88,7 +89,7 @@ struct gomory_test {
|
||||||
lp_assert(is_int(x_j));
|
lp_assert(is_int(x_j));
|
||||||
lp_assert(!a.is_int());
|
lp_assert(!a.is_int());
|
||||||
lp_assert(f_0 > zero_of_type<mpq>() && f_0 < one_of_type<mpq>());
|
lp_assert(f_0 > zero_of_type<mpq>() && f_0 < one_of_type<mpq>());
|
||||||
mpq f_j = int_solver::fractional_part(a);
|
mpq f_j = fractional_part(a);
|
||||||
TRACE("gomory_cut_detail",
|
TRACE("gomory_cut_detail",
|
||||||
tout << a << " x_j = " << x_j << ", k = " << k << "\n";
|
tout << a << " x_j = " << x_j << ", k = " << k << "\n";
|
||||||
tout << "f_j: " << f_j << "\n";
|
tout << "f_j: " << f_j << "\n";
|
||||||
|
@ -206,7 +207,7 @@ struct gomory_test {
|
||||||
unsigned x_j;
|
unsigned x_j;
|
||||||
mpq a;
|
mpq a;
|
||||||
bool some_int_columns = false;
|
bool some_int_columns = false;
|
||||||
mpq f_0 = int_solver::fractional_part(get_value(inf_col));
|
mpq f_0 = fractional_part(get_value(inf_col));
|
||||||
mpq one_min_f_0 = 1 - f_0;
|
mpq one_min_f_0 = 1 - f_0;
|
||||||
for ( auto pp : row) {
|
for ( auto pp : row) {
|
||||||
a = pp.first;
|
a = pp.first;
|
||||||
|
|
|
@ -20,19 +20,10 @@
|
||||||
#include "util/lp/gomory.h"
|
#include "util/lp/gomory.h"
|
||||||
#include "util/lp/int_solver.h"
|
#include "util/lp/int_solver.h"
|
||||||
#include "util/lp/lar_solver.h"
|
#include "util/lp/lar_solver.h"
|
||||||
|
#include "util/lp/lp_utils.h"
|
||||||
namespace lp {
|
namespace lp {
|
||||||
|
|
||||||
class gomory::imp {
|
class gomory::imp {
|
||||||
inline static bool is_rational(const impq & n) { return is_zero(n.y); }
|
|
||||||
|
|
||||||
inline static mpq fractional_part(const impq & n) {
|
|
||||||
lp_assert(is_rational(n));
|
|
||||||
return n.x - floor(n.x);
|
|
||||||
}
|
|
||||||
inline static mpq fractional_part(const mpq & n) {
|
|
||||||
return n - floor(n);
|
|
||||||
}
|
|
||||||
|
|
||||||
lar_term & m_t; // the term to return in the cut
|
lar_term & m_t; // the term to return in the cut
|
||||||
mpq & m_k; // the right side of the cut
|
mpq & m_k; // the right side of the cut
|
||||||
explanation& m_ex; // the conflict explanation
|
explanation& m_ex; // the conflict explanation
|
||||||
|
|
|
@ -433,7 +433,15 @@ inline void ensure_increasing(vector<unsigned> & v) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
inline static bool is_rational(const impq & n) { return is_zero(n.y); }
|
||||||
|
|
||||||
|
inline static mpq fractional_part(const impq & n) {
|
||||||
|
lp_assert(is_rational(n));
|
||||||
|
return n.x - floor(n.x);
|
||||||
|
}
|
||||||
|
inline static mpq fractional_part(const mpq & n) {
|
||||||
|
return n - floor(n);
|
||||||
|
}
|
||||||
|
|
||||||
#if Z3DEBUG
|
#if Z3DEBUG
|
||||||
bool D();
|
bool D();
|
||||||
|
|
Loading…
Reference in a new issue