diff options
Diffstat (limited to 'test/regress/regress0/rewriterules/relation.smt2')
-rw-r--r-- | test/regress/regress0/rewriterules/relation.smt2 | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/test/regress/regress0/rewriterules/relation.smt2 b/test/regress/regress0/rewriterules/relation.smt2 new file mode 100644 index 000000000..a327a90a4 --- /dev/null +++ b/test/regress/regress0/rewriterules/relation.smt2 @@ -0,0 +1,27 @@ +(set-logic AUFLIA) +(set-info :status unsat) + +;; don't use a datatypes for currently focusing in uf +(declare-sort elt 0) + +(declare-fun R (elt elt) Bool) + +;; reflexive +(assert-rewrite ((x elt)) () (R x x) true ()) + +;; transitive +(assert-propagation ((x elt) (y elt) (z elt)) () ((R x y) (R y z)) (R x z) ()) + +;; anti-symmetric +(assert-propagation ((x elt) (y elt)) () ((R x y) (R y x)) (= x y) ()) + +(declare-fun e1 () elt) +(declare-fun e2 () elt) +(declare-fun e3 () elt) +(declare-fun e4 () elt) + +(assert (not (=> (and (R e1 e2) (R e2 e3) (R e3 e4) (R e4 e1)) (= e1 e4)))) + +(check-sat) + +(exit)
\ No newline at end of file |