Skip to content

Commit 9c52d4e

Browse files
debugging #4169
1 parent 68f1f1e commit 9c52d4e

File tree

3 files changed

+18
-16
lines changed

3 files changed

+18
-16
lines changed

src/smt/smt_context.cpp

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -763,7 +763,6 @@ namespace smt {
763763
// Common case: r2 and r1 have at most one theory var.
764764
theory_id t2 = r2->m_th_var_list.get_th_id();
765765
theory_id t1 = r1->m_th_var_list.get_th_id();
766-
// verbose_stream() << "[merge_theory_vars] t2: " << t2 << ", t1: " << t1 << "\n";
767766
theory_var v2 = m_fparams.m_new_core2th_eq ? get_closest_var(n2, t2) : r2->m_th_var_list.get_th_var();
768767
theory_var v1 = m_fparams.m_new_core2th_eq ? get_closest_var(n1, t1) : r1->m_th_var_list.get_th_var();
769768
TRACE("merge_theory_vars",
@@ -1422,8 +1421,8 @@ namespace smt {
14221421
TRACE("push_new_th_diseqs", tout << m.get_family_name(th->get_id()) << " not using diseqs\n";);
14231422
return;
14241423
}
1425-
TRACE("push_new_th_diseqs", tout << "#" << r->get_owner_id() << " v" << v << "\n";);
14261424
theory_id th_id = th->get_id();
1425+
TRACE("push_new_th_diseqs", tout << "#" << r->get_owner_id() << " " << mk_bounded_pp(r->get_owner(), m) << " v" << v << " th: " << th_id << "\n";);
14271426
for (enode * parent : r->get_parents()) {
14281427
CTRACE("parent_bug", parent == 0, tout << "#" << r->get_owner_id() << ", num_parents: " << r->get_num_parents() << "\n"; display(tout););
14291428
if (parent->is_eq()) {
@@ -1601,6 +1600,11 @@ namespace smt {
16011600
if (inconsistent())
16021601
return false;
16031602
}
1603+
#if 0
1604+
if (at_search_level() && induction::should_try(*this)) {
1605+
get_induction()();
1606+
}
1607+
#endif
16041608
return true;
16051609
}
16061610

src/smt/smt_context_inv.cpp

Lines changed: 7 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -291,8 +291,6 @@ namespace smt {
291291
if (eq.m_th_id == th_id) {
292292
enode * lhs_prime = th->get_enode(eq.m_lhs)->get_root();
293293
enode * rhs_prime = th->get_enode(eq.m_rhs)->get_root();
294-
TRACE("check_th_diseq_propagation",
295-
tout << m.get_family_name(eq.m_th_id) << "\n";);
296294

297295
if ((lhs == lhs_prime && rhs == rhs_prime) ||
298296
(rhs == lhs_prime && lhs == rhs_prime)) {
@@ -302,15 +300,13 @@ namespace smt {
302300
}
303301
}
304302
}
305-
if (!found) {
306-
// missed theory diseq propagation
307-
display(std::cout);
308-
std::cout << "checking theory: " << m.get_family_name(th_id) << "\n";
309-
std::cout << "root: #" << n->get_root()->get_owner_id() << " node: #" << n->get_owner_id() << "\n";
310-
std::cout << mk_pp(n->get_owner(), m) << "\n";
311-
std::cout << "lhs: #" << lhs->get_owner_id() << ", rhs: #" << rhs->get_owner_id() << "\n";
312-
std::cout << mk_bounded_pp(lhs->get_owner(), m) << " " << mk_bounded_pp(rhs->get_owner(), m) << "\n";
313-
}
303+
CTRACE("check_th_diseq_propagation", !found,
304+
tout
305+
<< "checking theory: " << m.get_family_name(th_id) << "\n"
306+
<< "root: #" << n->get_root()->get_owner_id() << " node: #" << n->get_owner_id() << "\n"
307+
<< mk_pp(n->get_owner(), m) << "\n"
308+
<< "lhs: #" << lhs->get_owner_id() << ", rhs: #" << rhs->get_owner_id() << "\n"
309+
<< mk_bounded_pp(lhs->get_owner(), m) << " " << mk_bounded_pp(rhs->get_owner(), m) << "\n";);
314310
VERIFY(found);
315311
}
316312
l = l->get_next();

src/smt/theory_array.cpp

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -312,12 +312,14 @@ namespace smt {
312312

313313
void theory_array::new_diseq_eh(theory_var v1, theory_var v2) {
314314
v1 = find(v1);
315-
v2 = find(v2);
315+
v2 = find(v2);
316316
var_data * d1 = m_var_data[v1];
317+
TRACE("ext", tout << "extensionality: " << d1->m_is_array << "\n"
318+
<< mk_bounded_pp(get_enode(v1)->get_owner(), get_manager(), 5) << "\n"
319+
<< mk_bounded_pp(get_enode(v2)->get_owner(), get_manager(), 5) << "\n";);
320+
317321
if (d1->m_is_array) {
318322
SASSERT(m_var_data[v2]->m_is_array);
319-
TRACE("ext", tout << "extensionality:\n" << mk_bounded_pp(get_enode(v1)->get_owner(), get_manager(), 5) << "\n" <<
320-
mk_bounded_pp(get_enode(v2)->get_owner(), get_manager(), 5) << "\n";);
321323
instantiate_extensionality(get_enode(v1), get_enode(v2));
322324
}
323325
}

0 commit comments

Comments
 (0)