summaryrefslogtreecommitdiff
path: root/test/regress/regress0
diff options
context:
space:
mode:
authorajreynol <andrew.j.reynolds@gmail.com>2015-09-26 14:35:40 +0200
committerajreynol <andrew.j.reynolds@gmail.com>2015-09-26 14:35:40 +0200
commit51aa945e59ecf3354192f40c3f645d8b221e34a9 (patch)
treeefd08ada86eaaefe42f371a6744dcf681266e6a6 /test/regress/regress0
parente61a79df77924c66e8f6ff3141172bda49301475 (diff)
Lazy preprocessing of extended operators in strings. Add regressions. Fixes bug 613.
Diffstat (limited to 'test/regress/regress0')
-rw-r--r--test/regress/regress0/strings/Makefile.am6
-rw-r--r--test/regress/regress0/strings/bug613.smt29
-rwxr-xr-xtest/regress/regress0/strings/ilc-like.smt214
-rwxr-xr-xtest/regress/regress0/strings/indexof-sym-simp.smt210
4 files changed, 37 insertions, 2 deletions
diff --git a/test/regress/regress0/strings/Makefile.am b/test/regress/regress0/strings/Makefile.am
index eb88df905..b796fc80b 100644
--- a/test/regress/regress0/strings/Makefile.am
+++ b/test/regress/regress0/strings/Makefile.am
@@ -50,8 +50,10 @@ TESTS = \
loop008.smt2 \
loop009.smt2 \
reloop.smt2 \
- unsound-0908.smt2
-
+ unsound-0908.smt2 \
+ ilc-like.smt2 \
+ indexof-sym-simp.smt2 \
+ bug613.smt2
FAILING_TESTS =
diff --git a/test/regress/regress0/strings/bug613.smt2 b/test/regress/regress0/strings/bug613.smt2
new file mode 100644
index 000000000..506076cd6
--- /dev/null
+++ b/test/regress/regress0/strings/bug613.smt2
@@ -0,0 +1,9 @@
+(set-logic QF_S)
+(set-info :status sat)
+(set-option :strings-exp true)
+
+(declare-fun s () String)
+(assert (= s "<a></a>"))
+(assert (< (str.indexof s "<a>" 0) (str.indexof s "</a>" 0)))
+
+(check-sat)
diff --git a/test/regress/regress0/strings/ilc-like.smt2 b/test/regress/regress0/strings/ilc-like.smt2
new file mode 100755
index 000000000..a711c215c
--- /dev/null
+++ b/test/regress/regress0/strings/ilc-like.smt2
@@ -0,0 +1,14 @@
+(set-logic ALL_SUPPORTED)
+(set-info :status sat)
+(set-option :strings-exp true)
+
+(declare-fun s () String)
+(assert (= s "I like cookies."))
+
+(declare-fun target () String)
+(assert (= target "like"))
+
+(declare-fun location () Int)
+(assert (= location (str.indexof s target 0)))
+
+(check-sat) \ No newline at end of file
diff --git a/test/regress/regress0/strings/indexof-sym-simp.smt2 b/test/regress/regress0/strings/indexof-sym-simp.smt2
new file mode 100755
index 000000000..7ae60f2db
--- /dev/null
+++ b/test/regress/regress0/strings/indexof-sym-simp.smt2
@@ -0,0 +1,10 @@
+(set-logic ALL_SUPPORTED)
+(set-info :status unsat)
+(set-option :strings-exp true)
+(declare-fun s () String)
+(declare-fun t () String)
+(declare-fun r () String)
+; solvable if we do equality reasoning over str.indexof
+(assert (= t s))
+(assert (not (= (str.indexof t r 0) (str.indexof s r 0))))
+(check-sat) \ No newline at end of file
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback