52 lines
1.1 KiB
Text
52 lines
1.1 KiB
Text
(set-option :verbose true)
|
|
(set-option :use_locals)
|
|
(declare-const m Int)
|
|
(declare-const n Int)
|
|
(declare-const p Int)
|
|
|
|
(assert (= 1 2))
|
|
(assert (= m (- m)))
|
|
(assert (= m (- m n)))
|
|
(assert (= (+ m m) (+ m m m) (+ m m m m)))
|
|
(assert (= (* m m) (* m m m) (* m m m m)))
|
|
(assert (= (mod m n) (div n p)))
|
|
(assert (= m (abs m)))
|
|
(assert (< m n))
|
|
(assert (< m n p))
|
|
(assert (< m n p p))
|
|
(assert (<= m n))
|
|
(assert (<= m n p))
|
|
(assert (<= m n p p))
|
|
(assert (> m n))
|
|
(assert (> m n p))
|
|
(assert (> m n p p))
|
|
(assert (>= m n))
|
|
(assert (>= m n p))
|
|
(assert (>= m n p p))
|
|
|
|
(declare-const x Real)
|
|
(declare-const y Real)
|
|
(declare-const z Real)
|
|
|
|
(assert (= 1.0 2.0))
|
|
(assert (= x (- x)))
|
|
(assert (= x (- x y)))
|
|
(assert (= (+ x x) (+ x x x) (+ x x x x)))
|
|
(assert (= (* x x) (* x x x) (* x x x x)))
|
|
(assert (= (/ x y) z))
|
|
(assert (< x y))
|
|
(assert (< x y z))
|
|
(assert (< x y z z))
|
|
(assert (<= x y))
|
|
(assert (<= x y z))
|
|
(assert (<= x y z z))
|
|
(assert (> x y))
|
|
(assert (> x y z))
|
|
(assert (> x y z z))
|
|
(assert (>= x y))
|
|
(assert (>= x y z))
|
|
(assert (>= x y z z))
|
|
|
|
(assert (= (to_real (+ m n)) (+ x y)))
|
|
(assert (is_int x))
|
|
(assert (= (to_int (+ x y)) (+ m n)))
|