diff options
Diffstat (limited to 'test/regress/regress1/push-pop/bug-fmf-fun-skolem.smt2')
-rw-r--r-- | test/regress/regress1/push-pop/bug-fmf-fun-skolem.smt2 | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/test/regress/regress1/push-pop/bug-fmf-fun-skolem.smt2 b/test/regress/regress1/push-pop/bug-fmf-fun-skolem.smt2 new file mode 100644 index 000000000..229a5e17a --- /dev/null +++ b/test/regress/regress1/push-pop/bug-fmf-fun-skolem.smt2 @@ -0,0 +1,25 @@ +; COMMAND-LINE: --incremental --fmf-fun +(set-logic ALL_SUPPORTED) +(declare-datatypes ((Lst 0)) (((cons (head Int) (tail Lst)) (nil)))) +(define-fun-rec sum ((l Lst)) Int (ite (is-nil l) 0 (+ (head l) (sum (tail l))))) + +(declare-fun input () Int) +(declare-fun p () Bool) +(declare-fun acc () Lst) +(assert (and (= acc (ite (>= input 0) (cons input nil) nil)) + (= p (>= (sum acc) 0)))) + + +; EXPECT: unsat +(push 1) +(assert (not p)) +(check-sat) +(pop 1) + +; EXPECT: unsat +(push 1) +(assert (not p)) +(check-sat) +(pop 1) + + |