sbv-8.2: SBVTestSuite/GoldFiles/sumMaybe.gold
** Calling: z3 -nw -in -smt2
[GOOD] ; Automatically generated by SBV. Do not edit.
[GOOD] (set-option :print-success true)
[GOOD] (set-option :global-declarations true)
[GOOD] (set-option :smtlib2_compliant true)
[GOOD] (set-option :diagnostic-output-channel "stdout")
[GOOD] (set-option :produce-models true)
[GOOD] (set-option :pp.max_depth 4294967295)
[GOOD] (set-option :pp.min_alias_size 4294967295)
[GOOD] (set-logic ALL) ; has unbounded values, using catch-all.
[GOOD] ; --- uninterpreted sorts ---
[GOOD] ; --- tuples ---
[GOOD] ; --- sums ---
[GOOD] (declare-datatypes ((SBVMaybe 1)) ((par (T)
((nothing_SBVMaybe)
(just_SBVMaybe (get_just_SBVMaybe T))))))
[GOOD] ; --- literal constants ---
[GOOD] (define-fun s5 () Int 1)
[GOOD] (define-fun s15 () Int 0)
[GOOD] (define-fun s3 () (SBVMaybe Int) (as nothing_SBVMaybe (SBVMaybe Int)))
[GOOD] ; --- skolem constants ---
[GOOD] (declare-fun s0 () (SBVMaybe Int)) ; tracks user variable "x"
[GOOD] ; --- constant tables ---
[GOOD] ; --- skolemized tables ---
[GOOD] ; --- arrays ---
[GOOD] ; --- uninterpreted constants ---
[GOOD] ; --- user given axioms ---
[GOOD] ; --- formula ---
[GOOD] (define-fun s1 () Bool ((_ is (nothing_SBVMaybe () (SBVMaybe Int))) s0))
[GOOD] (define-fun s2 () Bool (ite s1 true false))
[GOOD] (define-fun s4 () Int (get_just_SBVMaybe s0))
[GOOD] (define-fun s6 () Int (+ s4 s5))
[GOOD] (define-fun s7 () (SBVMaybe Int) ((as just_SBVMaybe (SBVMaybe Int)) s6))
[GOOD] (define-fun s8 () (SBVMaybe Int) (ite s1 s3 s7))
[GOOD] (define-fun s9 () Bool ((_ is (nothing_SBVMaybe () (SBVMaybe Int))) s8))
[GOOD] (define-fun s10 () Bool (ite s9 true false))
[GOOD] (define-fun s11 () Bool (= s2 s10))
[GOOD] (define-fun s12 () Bool (ite s1 false true))
[GOOD] (define-fun s13 () Bool (ite s9 false true))
[GOOD] (define-fun s14 () Bool (= s12 s13))
[GOOD] (define-fun s16 () Int (ite s1 s15 s4))
[GOOD] (define-fun s17 () Int (get_just_SBVMaybe s8))
[GOOD] (define-fun s18 () Int (ite s9 s15 s17))
[GOOD] (define-fun s19 () Int (- s18 s5))
[GOOD] (define-fun s20 () Bool (= s16 s19))
[GOOD] (assert s11)
[GOOD] (assert s14)
[GOOD] (assert s20)
[SEND] (check-sat)
[RECV] sat
[SEND] (get-value (s0))
[RECV] ((s0 (just_SBVMaybe 0)))
MODEL: SMTModel {modelObjectives = [], modelBindings = Nothing, modelAssocs = [("x",Just 0 :: Maybe Integer)], modelUIFuns = []}
DONE.*** Solver : Z3
*** Exit code: ExitSuccess