File: lambda54.gold

package info (click to toggle)
haskell-sbv 10.2-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 8,148 kB
  • sloc: haskell: 31,176; makefile: 4
file content (58 lines) | stat: -rw-r--r-- 1,864 bytes parent folder | download
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
** 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-logic ALL) ; has unbounded values, using catch-all.
[GOOD] ; --- uninterpreted sorts ---
[GOOD] ; --- tuples ---
[GOOD] ; --- sums ---
[GOOD] ; --- literal constants ---
[GOOD] ; --- top level inputs ---
[GOOD] (declare-fun s0 () Int)
[GOOD] ; --- constant tables ---
[GOOD] ; --- non-constant tables ---
[GOOD] ; --- arrays ---
[GOOD] ; --- uninterpreted constants ---
[GOOD] ; --- user defined functions ---
[GOOD] ; -- user given definition: bar
[GOOD] (define-fun bar ((l1_s0 Int)) Int
         (let ((l1_s1 1))
         (let ((l1_s2 (+ l1_s0 l1_s1)))
         l1_s2)))
[GOOD] ; -- user given definition: foo [Refers to: bar]
[GOOD] (define-fun foo ((l1_s0 Int)) Int
         (let ((l1_s2 1))
         (let ((l1_s1 (bar l1_s0)))
         (let ((l1_s3 (+ l1_s1 l1_s2)))
         l1_s3))))
[GOOD] ; --- assignments ---
[GOOD] (define-fun s1 () Int (bar s0))
[GOOD] (define-fun s2 () Int (foo s0))
[GOOD] (define-fun s3 () Int (+ s1 s2))
[GOOD] (define-fun s4 () Bool (= s0 s3))
[GOOD] ; --- arrayDelayeds ---
[GOOD] ; --- arraySetups ---
[GOOD] ; --- delayedEqualities ---
[GOOD] ; --- formula ---
[GOOD] (assert s4)
[GOOD] (declare-fun s5 () Int)
[GOOD] (define-fun s6 () Int (bar s5))
[GOOD] (define-fun s7 () Int (foo s5))
[GOOD] (define-fun s8 () Int (+ s6 s7))
[GOOD] (define-fun s9 () Bool (= s5 s8))
[GOOD] (assert s9)
[SEND] (check-sat)
[RECV] sat
[SEND] (get-value (s0))
[RECV] ((s0 (- 3)))
[SEND] (get-value (s5))
[RECV] ((s5 (- 3)))
*** Solver   : Z3
*** Exit code: ExitSuccess

RESULT:
  s0 = -3 :: Integer
  s5 = -3 :: Integer