projects
/
cvc5.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
b712a12
)
No diamond-breaking under quantifiers (resolves bug #550).
author
Morgan Deters
<mdeters@cs.nyu.edu>
Fri, 21 Feb 2014 22:15:43 +0000
(17:15 -0500)
committer
Morgan Deters
<mdeters@cs.nyu.edu>
Fri, 21 Feb 2014 23:15:56 +0000
(18:15 -0500)
src/theory/uf/theory_uf.cpp
patch
|
blob
|
history
diff --git
a/src/theory/uf/theory_uf.cpp
b/src/theory/uf/theory_uf.cpp
index 1045c5a249a8dfcdaf8f2cf0fdd42f45e71383ac..2bce77451cd52f309991a3be633d097e73b6b822 100644
(file)
--- a/
src/theory/uf/theory_uf.cpp
+++ b/
src/theory/uf/theory_uf.cpp
@@
-243,6
+243,13
@@
void TheoryUF::ppStaticLearn(TNode n, NodeBuilder<>& learned) {
while(!workList.empty()) {
n = workList.back();
+ if(n.getKind() == kind::FORALL || n.getKind() == kind::EXISTS) {
+ // unsafe to go under quantifiers; we might pull bound vars out of scope!
+ processed.insert(n);
+ workList.pop_back();
+ continue;
+ }
+
bool unprocessedChildren = false;
for(TNode::iterator i = n.begin(), iend = n.end(); i != iend; ++i) {
if(processed.find(*i) == processed.end()) {