Skip to content

Commit 4d06c39

Browse files
committed
replace DEBUG_CODE by #ifdef Z3DEBUG in nlsat
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
1 parent f1d97c7 commit 4d06c39

File tree

5 files changed

+70
-61
lines changed

5 files changed

+70
-61
lines changed

src/nlsat/nlsat_evaluator.cpp

+18-17
Original file line numberDiff line numberDiff line change
@@ -286,23 +286,24 @@ namespace nlsat {
286286
}
287287

288288
bool check_invariant() const {
289-
DEBUG_CODE(
290-
SASSERT(m_sections.size() == m_sorted_sections.size());
291-
for (unsigned i = 0; i < m_sorted_sections.size(); i++) {
292-
SASSERT(m_sorted_sections[i] < m_sections.size());
293-
SASSERT(m_sections[m_sorted_sections[i]].m_pos == i);
294-
}
295-
unsigned total_num_sections = 0;
296-
unsigned total_num_signs = 0;
297-
for (unsigned i = 0; i < m_info.size(); i++) {
298-
SASSERT(m_info[i].m_first_section <= m_poly_sections.size());
299-
SASSERT(m_info[i].m_num_roots == 0 || m_info[i].m_first_section < m_poly_sections.size());
300-
SASSERT(m_info[i].m_first_sign < m_poly_signs.size());
301-
total_num_sections += m_info[i].m_num_roots;
302-
total_num_signs += m_info[i].m_num_roots + 1;
303-
}
304-
SASSERT(total_num_sections == m_poly_sections.size());
305-
SASSERT(total_num_signs == m_poly_signs.size()););
289+
#ifdef Z3DEBUG
290+
SASSERT(m_sections.size() == m_sorted_sections.size());
291+
for (unsigned i = 0; i < m_sorted_sections.size(); i++) {
292+
SASSERT(m_sorted_sections[i] < m_sections.size());
293+
SASSERT(m_sections[m_sorted_sections[i]].m_pos == i);
294+
}
295+
unsigned total_num_sections = 0;
296+
unsigned total_num_signs = 0;
297+
for (unsigned i = 0; i < m_info.size(); i++) {
298+
SASSERT(m_info[i].m_first_section <= m_poly_sections.size());
299+
SASSERT(m_info[i].m_num_roots == 0 || m_info[i].m_first_section < m_poly_sections.size());
300+
SASSERT(m_info[i].m_first_sign < m_poly_signs.size());
301+
total_num_sections += m_info[i].m_num_roots;
302+
total_num_signs += m_info[i].m_num_roots + 1;
303+
}
304+
SASSERT(total_num_sections == m_poly_sections.size());
305+
SASSERT(total_num_signs == m_poly_signs.size());
306+
#endif
306307
return true;
307308
}
308309

src/nlsat/nlsat_explain.cpp

+14-13
Original file line numberDiff line numberDiff line change
@@ -1531,12 +1531,13 @@ namespace nlsat {
15311531
m_solver.display(tout, num, ls);
15321532
m_solver.display(tout););
15331533

1534-
DEBUG_CODE(
1535-
for (unsigned i = 0; i < num; ++i) {
1536-
SASSERT(m_solver.value(ls[i]) == l_true);
1537-
atom* a = m_atoms[ls[i].var()];
1538-
SASSERT(!a || m_evaluator.eval(a, ls[i].sign()));
1539-
});
1534+
#ifdef Z3DEBUG
1535+
for (unsigned i = 0; i < num; ++i) {
1536+
SASSERT(m_solver.value(ls[i]) == l_true);
1537+
atom* a = m_atoms[ls[i].var()];
1538+
SASSERT(!a || m_evaluator.eval(a, ls[i].sign()));
1539+
}
1540+
#endif
15401541
split_literals(x, num, ls, lits);
15411542
collect_polys(lits.size(), lits.data(), m_ps);
15421543
var mx_var = max_var(m_ps);
@@ -1571,13 +1572,13 @@ namespace nlsat {
15711572
for (unsigned i = 0; i < result.size(); ++i) {
15721573
result.set(i, ~result[i]);
15731574
}
1574-
DEBUG_CODE(
1575-
TRACE("nlsat", m_solver.display(tout, result.size(), result.data()) << "\n"; );
1576-
for (literal l : result) {
1577-
CTRACE("nlsat", l_true != m_solver.value(l), m_solver.display(tout, l) << " " << m_solver.value(l) << "\n";);
1578-
SASSERT(l_true == m_solver.value(l));
1579-
});
1580-
1575+
#ifdef Z3DEBUG
1576+
TRACE("nlsat", m_solver.display(tout, result.size(), result.data()) << "\n"; );
1577+
for (literal l : result) {
1578+
CTRACE("nlsat", l_true != m_solver.value(l), m_solver.display(tout, l) << " " << m_solver.value(l) << "\n";);
1579+
SASSERT(l_true == m_solver.value(l));
1580+
}
1581+
#endif
15811582
}
15821583

15831584
void split_literals(var x, unsigned n, literal const* ls, svector<literal>& lits) {

src/nlsat/nlsat_interval_set.cpp

+7-6
Original file line numberDiff line numberDiff line change
@@ -98,12 +98,13 @@ namespace nlsat {
9898

9999
// Check if the intervals are valid, ordered, and are disjoint.
100100
bool check_interval_set(anum_manager & am, unsigned sz, interval const * ints) {
101-
DEBUG_CODE(
102-
for (unsigned i = 0; i < sz; i++) {
103-
interval const & curr = ints[i];
104-
SASSERT(check_interval(am, curr));
105-
SASSERT(i >= sz - 1 || check_no_overlap(am, curr, ints[i+1]));
106-
});
101+
#ifdef Z3DEBUG
102+
for (unsigned i = 0; i < sz; i++) {
103+
interval const & curr = ints[i];
104+
SASSERT(check_interval(am, curr));
105+
SASSERT(i >= sz - 1 || check_no_overlap(am, curr, ints[i+1]));
106+
}
107+
#endif
107108
return true;
108109
}
109110

src/nlsat/nlsat_solver.cpp

+28-24
Original file line numberDiff line numberDiff line change
@@ -1868,7 +1868,8 @@ namespace nlsat {
18681868
m_valids.push_back(mk_clause_core(m_lazy_clause.size(), m_lazy_clause.data(), false, nullptr));
18691869
}
18701870

1871-
DEBUG_CODE({
1871+
#ifdef Z3DEBUG
1872+
{
18721873
unsigned sz = m_lazy_clause.size();
18731874
for (unsigned i = 0; i < sz; i++) {
18741875
literal l = m_lazy_clause[i];
@@ -1881,7 +1882,8 @@ namespace nlsat {
18811882
SASSERT(l.sign() || m_bvalues[b] == l_true);
18821883
}
18831884
}
1884-
});
1885+
}
1886+
#endif
18851887
checkpoint();
18861888
resolve_clause(b, m_lazy_clause.size(), m_lazy_clause.data());
18871889

@@ -2191,19 +2193,20 @@ namespace nlsat {
21912193
// -----------------------
21922194

21932195
bool check_watches() const {
2194-
DEBUG_CODE(
2195-
for (var x = 0; x < num_vars(); x++) {
2196+
#ifdef Z3DEBUG
2197+
for (var x = 0; x < num_vars(); x++) {
21962198
clause_vector const & cs = m_watches[x];
21972199
unsigned sz = cs.size();
21982200
for (unsigned i = 0; i < sz; i++) {
21992201
SASSERT(max_var(*(cs[i])) == x);
22002202
}
2201-
});
2203+
}
2204+
#endif
22022205
return true;
22032206
}
22042207

22052208
bool check_bwatches() const {
2206-
DEBUG_CODE(
2209+
#ifdef Z3DEBUG
22072210
for (bool_var b = 0; b < m_bwatches.size(); b++) {
22082211
clause_vector const & cs = m_bwatches[b];
22092212
unsigned sz = cs.size();
@@ -2212,7 +2215,8 @@ namespace nlsat {
22122215
SASSERT(max_var(c) == null_var);
22132216
SASSERT(max_bvar(c) == b);
22142217
}
2215-
});
2218+
}
2219+
#endif
22162220
return true;
22172221
}
22182222

@@ -2432,11 +2436,11 @@ namespace nlsat {
24322436
// undo_until_size(0)
24332437
undo_until_stage(null_var);
24342438
m_cache.reset();
2435-
DEBUG_CODE({
2436-
for (var x = 0; x < num_vars(); x++) {
2437-
SASSERT(m_watches[x].empty());
2438-
}
2439-
});
2439+
#ifdef Z3DEBUG
2440+
for (var x = 0; x < num_vars(); x++) {
2441+
SASSERT(m_watches[x].empty());
2442+
}
2443+
#endif
24402444
// update m_perm mapping
24412445
for (unsigned ext_x = 0; ext_x < sz; ext_x++) {
24422446
// p: internal -> new pos
@@ -2452,12 +2456,12 @@ namespace nlsat {
24522456
SASSERT(m_infeasible[x] == 0);
24532457
}
24542458
m_inv_perm.swap(new_inv_perm);
2455-
DEBUG_CODE({
2456-
for (var x = 0; x < num_vars(); x++) {
2457-
SASSERT(x == m_inv_perm[m_perm[x]]);
2458-
SASSERT(m_watches[x].empty());
2459-
}
2460-
});
2459+
#ifdef Z3DEBUG
2460+
for (var x = 0; x < num_vars(); x++) {
2461+
SASSERT(x == m_inv_perm[m_perm[x]]);
2462+
SASSERT(m_watches[x].empty());
2463+
}
2464+
#endif
24612465
m_pm.rename(sz, p);
24622466
TRACE("nlsat_bool_assignment_bug", tout << "before reinit cache\n"; display_bool_assignment(tout););
24632467
reinit_cache();
@@ -2477,12 +2481,12 @@ namespace nlsat {
24772481
var_vector p;
24782482
p.append(m_perm);
24792483
reorder(p.size(), p.data());
2480-
DEBUG_CODE({
2481-
for (var x = 0; x < num_vars(); x++) {
2482-
SASSERT(m_perm[x] == x);
2483-
SASSERT(m_inv_perm[x] == x);
2484-
}
2485-
});
2484+
#ifdef Z3DEBUG
2485+
for (var x = 0; x < num_vars(); x++) {
2486+
SASSERT(m_perm[x] == x);
2487+
SASSERT(m_inv_perm[x] == x);
2488+
}
2489+
#endif
24862490
}
24872491

24882492
/**

src/nlsat/tactic/nlsat_tactic.cpp

+3-1
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,9 @@ class nlsat_tactic : public tactic {
125125
continue; // don't care
126126
md->register_decl(to_app(a)->get_decl(), val == l_true ? m.mk_true() : m.mk_false());
127127
}
128-
DEBUG_CODE(eval_model(*md.get(), g););
128+
#ifdef Z3DEBUG
129+
eval_model(*md.get(), g);
130+
#endif
129131
// VERIFY(eval_model(*md.get(), g));
130132
mc = model2model_converter(md.get());
131133
return ok;

0 commit comments

Comments
 (0)