3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-23 17:15:31 +00:00

skip on_merge for equality nodes

This commit is contained in:
Jakob Rath 2023-10-23 15:24:02 +02:00
parent 83aeba9ef4
commit 482e4da4d7

View file

@ -838,9 +838,13 @@ namespace polysat {
}
void slicing::egraph_on_merge(enode* root, enode* other) {
LOG("on_merge: root " << slice_pp(*this, root) << "other " << slice_pp(*this, other));
LOG("on_merge: root " << slice_pp(*this, root) << " other " << slice_pp(*this, other));
if (root->interpreted())
return;
if (root->is_equality()) {
SASSERT(other->is_equality());
return;
}
SASSERT(!other->interpreted()); // by convention, interpreted nodes are always chosen as root
SASSERT(root != other);
SASSERT_EQ(root, root->get_root());