diff options
author | yoni206 <yoni206@users.noreply.github.com> | 2021-01-05 11:19:34 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-01-05 11:19:34 -0800 |
commit | 2d2ee68b75d1fd3ea0d523b44815d2dc63529e54 (patch) | |
tree | 4bf0a6aee2eb88d1358b77c3454ebce92c0d8595 /test/regress/regress0 | |
parent | a026f19e6472a252286f2c5cde9e9d71b835fc95 (diff) |
Adding str.len to triggers (#5746)
This PR adds str.len to symbols that are considered for instantiations.
It is motivated by a benchmark that originated from Boogie.
A minimized version of that benchmark is added as a regression.
Diffstat (limited to 'test/regress/regress0')
-rw-r--r-- | test/regress/regress0/seq/quant_len_trigger.smt2 | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/test/regress/regress0/seq/quant_len_trigger.smt2 b/test/regress/regress0/seq/quant_len_trigger.smt2 new file mode 100644 index 000000000..08fdb4a43 --- /dev/null +++ b/test/regress/regress0/seq/quant_len_trigger.smt2 @@ -0,0 +1,13 @@ +; EXPECT: unsat + +(set-option :strings-exp true) +(set-logic ALL) + +(assert (forall ((x (Seq Int)) (xx (Seq Int)) ) (=> (and (= (seq.len x) (seq.len xx)) (forall ((i Int) ) (=> (and (<= 0 i) (< i (seq.len x))) (= (seq.nth x i) (seq.nth xx i))))) (= x xx)))) + +(declare-fun x () (Seq Int)) +(declare-fun y () (Seq Int)) + +(assert (not (=> (= (seq.len x) (seq.len y)) (=> (forall ((i Int) ) (=> (and (<= 0 i) (< i (seq.len x))) (= (seq.nth x i) (seq.nth y i)))) (= x y))))) + +(check-sat) |