summaryrefslogtreecommitdiff
path: root/test/regress
diff options
context:
space:
mode:
Diffstat (limited to 'test/regress')
-rw-r--r--test/regress/CMakeLists.txt1
-rw-r--r--test/regress/regress1/strings/re-mod-eq.smt213
2 files changed, 14 insertions, 0 deletions
diff --git a/test/regress/CMakeLists.txt b/test/regress/CMakeLists.txt
index 9874100b3..90641fe2f 100644
--- a/test/regress/CMakeLists.txt
+++ b/test/regress/CMakeLists.txt
@@ -1583,6 +1583,7 @@ set(regress_1_tests
regress1/strings/re-agg-total1.smt2
regress1/strings/re-agg-total2.smt2
regress1/strings/re-elim-exact.smt2
+ regress1/strings/re-mod-eq.smt2
regress1/strings/re-neg-concat-reduct.smt2
regress1/strings/re-neg-unfold-rev-a.smt2
regress1/strings/re-unsound-080718.smt2
diff --git a/test/regress/regress1/strings/re-mod-eq.smt2 b/test/regress/regress1/strings/re-mod-eq.smt2
new file mode 100644
index 000000000..531556e6d
--- /dev/null
+++ b/test/regress/regress1/strings/re-mod-eq.smt2
@@ -0,0 +1,13 @@
+(set-info :smt-lib-version 2.5)
+(set-logic QF_SLIA)
+(set-option :strings-exp true)
+(set-info :status unsat)
+(declare-fun x () String)
+(declare-fun y () String)
+(declare-fun z () String)
+(assert (or (= x y)(= x z)))
+(assert (str.in.re x (re.++ (str.to.re "A") (re.* (str.to.re "BAA")))))
+(assert (str.in.re y (re.++ (str.to.re "AB") (re.* (str.to.re "AAB")) (str.to.re "A"))))
+(assert (str.in.re z (re.++ (str.to.re "AB") (re.* (str.to.re "AAB")) (str.to.re "A"))))
+; requires RE solver to reason modulo string equalties
+(check-sat)
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback