switch1Initialization1.smt 1.92 KB
  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
;;Proof Obligations of Module in Harvey/SMT Language
(benchmark switch1Initialization1
:logic UNKNOWN
:extrafuns ( (normal Int )
(reverse Int )
(void Int )
(actual_pos Int ))
:extrapreds ( (POSITION Int ))
:extramacros ((in (lambda (?x ELEMENT) (?p (ELEMENT boolean)) . (?p ?x)))
(emptyset (lambda (?v ELEMENT) . false))
(omega (lambda (?x ELEMENT) . true))
(singleton (lambda (?x ELEMENT) . (lambda (?y ELEMENT) . (= ?x ?y))))
(intersection (lambda (?p (ELEMENT boolean)) (?q (ELEMENT boolean)) .
(lambda (?x ELEMENT) . (and (?p ?x) (?q ?x)))))
(union (lambda (?p (ELEMENT boolean)) (?q (ELEMENT boolean)) .
(lambda (?x ELEMENT) . (or (?p ?x) (?q ?x)))))
(difference (lambda (?p (ELEMENT boolean)) (?q (ELEMENT boolean)) .
(lambda (?x ELEMENT) .
(and (?p ?x) (not (?q ?x))))))
(symmetric_difference
(lambda (?p (ELEMENT boolean)) (?q (ELEMENT boolean)) .
(lambda (?x ELEMENT) .
(or (and (?p ?x) (not (?q ?x)))
(and (?q ?x) (not (?p ?x)))))))
(subset (lambda (?p (ELEMENT boolean)) (?q (ELEMENT boolean)) .
(forall (?x ELEMENT) . (implies (?p ?x) (?q ?x))))))

:assumption (and (in normal POSITION)(in reverse POSITION)(in void POSITION)(distinct normal reverse void )(forall (e2 Int)(implies (in e2 POSITION)(or (= e2 normal)(= e2 reverse)(= e2 void)) ) ) )
:assumption (and (not (= normal reverse)) (not (= normal void)) (not (= reverse void)))
:assumption (in actual_pos POSITION)
;;INITIALIZATION
:formula (not
(implies ((and (not (= normal reverse)) (not (= normal void)) (not (= reverse void)))) (forall
(actual_pos1 Int)
(implies (in actual_pos1 POSITION) (in POSITION POSITION))))
)
)