Skip to content

Commit 72b9567

Browse files
committed
Eager quantifier elimination: support empty ranges
conjunction(...) and disjunction(...) helper functions produce the appropriate result for empty operand sequences.
1 parent 6f628d8 commit 72b9567

File tree

2 files changed

+2
-7
lines changed

2 files changed

+2
-7
lines changed
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,11 @@
1-
KNOWNBUG broken-smt-backend
1+
CORE no-new-smt
22
main.c
33

44
^\*\* Results:$
5-
^\*\* 0 of 1 failed
5+
^\*\* 0 of \d+ failed
66
^VERIFICATION SUCCESSFUL$
77
^EXIT=0$
88
^SIGNAL=0$
99
--
1010
^warning: ignoring
1111
--
12-
This produces the expected verification result, but actually ignores some
13-
quantifiers.

src/solvers/flattening/boolbv_quantifier.cpp

-3
Original file line numberDiff line numberDiff line change
@@ -210,9 +210,6 @@ static std::optional<exprt> eager_quantifier_instantiation(
210210
mp_integer lb = numeric_cast_v<mp_integer>(min_i.value());
211211
mp_integer ub = numeric_cast_v<mp_integer>(max_i.value());
212212

213-
if(lb > ub)
214-
return {};
215-
216213
auto expr_simplified =
217214
quantifier_exprt(expr.id(), expr.variables(), where_simplified);
218215

0 commit comments

Comments
 (0)