3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-15 05:18:44 +00:00

debug refactor of smon

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
This commit is contained in:
Lev Nachmanson 2019-04-23 10:43:05 -07:00
parent 53cc8048f7
commit 9411911cf3
3 changed files with 7 additions and 7 deletions

View file

@ -575,7 +575,7 @@ public:
}
std::ostream& print_column_info(unsigned j, std::ostream & out) const {
out << "j = " << j << ",\tname = "<< column_name(j) << "\t";
out << "[" << j << "],\tname = "<< column_name(j) << "\t";
switch (m_column_types[j]) {
case column_type::fixed:
case column_type::boxed:

View file

@ -57,7 +57,7 @@ void basics::generate_zero_lemmas(const monomial& m) {
TRACE("nla_solver_details", tout << "zero_j = " << zero_j << ", sign = " << sign << "\n";);
if (sign == 0) { // have to generate a non-convex lemma
add_trival_zero_lemma(zero_j, m);
} else {
} else { // here we know the sign of zero_j
generate_strict_case_zero_lemma(m, zero_j, sign);
}
for (lpvar j : fixed_zeros)
@ -88,7 +88,7 @@ void basics::get_non_strict_sign(lpvar j, int& sign) const {
void basics::basic_sign_lemma_model_based_one_mon(const monomial& m, int product_sign) {
if (product_sign == 0) {
TRACE("nla_solver_bl", tout << "zero product sign\n";);
TRACE("nla_solver_bl", tout << "zero product sign: " << pp_mon(_(), m)<< "\n"; );
generate_zero_lemmas(m);
} else {
add_empty_lemma();
@ -188,7 +188,7 @@ void basics::generate_strict_case_zero_lemma(const monomial& m, unsigned zero_j,
// we know all the signs
add_empty_lemma();
c().mk_ineq(zero_j, (sign_of_zj == 1? llc::GT : llc::LT));
for (unsigned j : m.rvars()){
for (unsigned j : m.vars()){
if (j != zero_j) {
negate_strict_sign(j);
}
@ -203,7 +203,7 @@ void basics::add_fixed_zero_lemma(const monomial& m, lpvar j) {
TRACE("nla_solver", c().print_lemma(tout););
}
void basics::negate_strict_sign(lpvar j) {
TRACE("nla_solver_details", c().print_var(j, tout););
TRACE("nla_solver_details", tout << pp_var(c(), j) << "\n";);
if (!vvr(j).is_zero()) {
int sign = nla::rat_sign(vvr(j));
c().mk_ineq(j, (sign == 1? llc::LE : llc::GE));
@ -494,7 +494,7 @@ void basics::basic_lemma_for_mon_zero_model_based(const monomial& rm, const fact
}
void basics::basic_lemma_for_mon_model_based(const monomial& rm) {
TRACE("nla_solver_bl", tout << "rm = " << rm;);
TRACE("nla_solver_bl", tout << "rm = " << pp_mon(_(), rm) << "\n";);
if (vvr(rm).is_zero()) {
for (auto factorization : factorization_factory_imp(rm, c())) {
if (factorization.is_empty())

View file

@ -108,7 +108,7 @@ void order::order_lemma_on_factor_binomial_rm(const monomial& ac, bool k, const
void order::order_lemma_on_binomial_ac_bd(const monomial& ac, bool k, const monomial& bd, const factor& b, lpvar d) {
TRACE("nla_solver",
tout << "ac=" << pp_mon(c(), ac) << "\nrm= " << bd << ", b= " << pp_fac(c(), b) << ", d= " << pp_var(c(), d) << "\n";);
tout << "ac=" << pp_mon(_(), ac) << "\nrm= " << pp_mon(_(), bd) << ", b= " << pp_fac(_(), b) << ", d= " << pp_var(_(), d) << "\n";);
bool p = !k;
lpvar a = ac.vars()[p];
lpvar c = ac.vars()[k];