summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorMorgan Deters <mdeters@cs.nyu.edu>2012-12-21 18:44:34 -0500
committerMorgan Deters <mdeters@cs.nyu.edu>2013-02-07 16:11:06 -0500
commit822d66189bac649d1f04208f8f4f80e292403d40 (patch)
treeb60231ff04bcef9af11cfb0a27ee76ba518efa38 /test
parent110376d88d2e317e24f2376de123521fbecc168d (diff)
More complete fix for bug 484 (includes fixes for records and tuples).
Diffstat (limited to 'test')
-rw-r--r--test/regress/regress0/Makefile.am1
-rw-r--r--test/regress/regress0/bug484.smt2111
2 files changed, 112 insertions, 0 deletions
diff --git a/test/regress/regress0/Makefile.am b/test/regress/regress0/Makefile.am
index 99cd6dbe6..4f473212c 100644
--- a/test/regress/regress0/Makefile.am
+++ b/test/regress/regress0/Makefile.am
@@ -144,6 +144,7 @@ BUG_TESTS = \
bug421b.smt2 \
bug425.cvc \
bug480.smt2 \
+ bug484.smt2 \
bug486.cvc
TESTS = $(SMT_TESTS) $(SMT2_TESTS) $(CVC_TESTS) $(TPTP_TESTS) $(BUG_TESTS)
diff --git a/test/regress/regress0/bug484.smt2 b/test/regress/regress0/bug484.smt2
new file mode 100644
index 000000000..afbd72420
--- /dev/null
+++ b/test/regress/regress0/bug484.smt2
@@ -0,0 +1,111 @@
+; Preamble --------------
+(set-logic ALL_SUPPORTED)
+(set-info :status sat)
+(declare-datatypes () ((UNIT (Unit))))
+(declare-datatypes () ((BOOL (Truth) (Falsity))))
+
+; Decls --------------
+(declare-sort A 0)
+(declare-sort B 0)
+(declare-sort C 0)
+(declare-sort D 0)
+(declare-datatypes () ((E (one) (two) (three))))
+(declare-datatypes () ((F (four) (five) (six))))
+(declare-datatypes () ((G (c_G (seven BOOL)))))
+
+(declare-datatypes ()
+ ((H
+ (c_H
+ (foo1 BOOL)
+ (foo2 A)
+ (foo3 B)
+ (foo4 B)
+ (foo5 Int)
+ )
+ ))
+)
+
+(declare-datatypes ()
+ ((I
+ (c_I
+ (bar1 E)
+ (bar2 Int)
+ (bar3 Int)
+ (bar4 A)
+ )
+ ))
+)
+
+(declare-datatypes ()
+ ((J
+ (c_J
+ (f1 BOOL)
+ (f2 Int)
+ (f3 Int)
+ (f4 Int)
+ (f5 I)
+ (f6 B)
+ (f7 C)
+ )
+ ))
+)
+
+(declare-datatypes ()
+ ((K
+ (c_K
+ (g1 BOOL)
+ (g2 F)
+ (g3 A)
+ (g4 BOOL)
+ )
+ ))
+)
+
+; Var Decls --------------
+(declare-fun s1 () (Array A J))
+(declare-fun s2 () (Array A J))
+(declare-fun e1 () (Array A K))
+(declare-fun e2 () (Array A K))
+(declare-fun x () A)
+(declare-fun y () A)
+(declare-fun foo (A) A)
+(declare-fun bar (A) C)
+
+
+; Asserts --------------
+(assert
+ (not
+ (=
+ (ite
+ (=>
+ (= y (g3 (select e1 x)))
+ (=>
+ (= s2
+ (store
+ s1
+ y
+ (let ((z (select s1 y)))
+ (c_J
+ (f1 z)
+ (f2 z)
+ (- (f3 (select s1 y)) 1)
+ (f4 z)
+ (f5 z)
+ (f6 z)
+ (f7 z)
+ )
+ )
+ )
+ )
+ (forall ((s A)) (= (g3 (select e2 s)) s))
+ )
+ )
+ Truth
+ Falsity
+ )
+ Truth
+ )
+ )
+)
+
+(check-sat)
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback