diff options
author | Morgan Deters <mdeters@cs.nyu.edu> | 2014-03-08 15:33:46 -0500 |
---|---|---|
committer | Morgan Deters <mdeters@cs.nyu.edu> | 2014-03-08 15:33:46 -0500 |
commit | b61f6f4a23bb3b8650fbb0fe6b96bb27012a6139 (patch) | |
tree | da7419f9ba82bbaf28d0fdcf0f615b6e954d15d8 /src/theory | |
parent | bbb8637c877a312759547d6159be38866f47eb21 (diff) |
Re-fix bug 551 by adding a check to the arith ITE simplifier to ignore non-ground ITEs also.
Diffstat (limited to 'src/theory')
-rw-r--r-- | src/theory/arith/arith_static_learner.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/theory/arith/arith_static_learner.cpp b/src/theory/arith/arith_static_learner.cpp index 3854188e0..b9260c906 100644 --- a/src/theory/arith/arith_static_learner.cpp +++ b/src/theory/arith/arith_static_learner.cpp @@ -109,6 +109,12 @@ void ArithStaticLearner::process(TNode n, NodeBuilder<>& learned, const TNodeSet switch(n.getKind()){ case ITE: + if(n.hasBoundVar()) { + // Unsafe with non-ground ITEs; do nothing + Debug("arith::static") << "(potentially) non-ground ITE, ignoring..." << endl; + break; + } + if(n[0].getKind() != EQUAL && isRelationOperator(n[0].getKind()) ){ iteMinMax(n, learned); |