summaryrefslogtreecommitdiff
path: root/test/regress/regress1/sygus/once_2.sy
blob: af6d56aaf838b98ca8803b1d4ead5093d286020b (plain)
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
; EXPECT: unsat
; COMMAND-LINE: --lang=sygus2 --sygus-out=status
(set-logic BV)

(define-sort Stream () (_ BitVec 2))

(define-fun BV_ONE () Stream (_ bv1 2))

(define-fun
  O ( (X Stream) ) Stream
  (bvneg (bvand X (bvnot (bvsub X BV_ONE))))
)

(synth-fun op ((x Stream)) Stream
  (( y_term Stream))
  (( y_term Stream (
    ( Constant Stream)
    ( Variable Stream)
    ( bvnot y_term )
    ( bvand y_term y_term )
    ( bvor y_term y_term )
    ( bvneg y_term )
    ( bvadd y_term y_term )
    ( bvsub y_term y_term )
    ( bvmul y_term y_term )
    ( bvudiv y_term y_term )
    ( bvurem y_term y_term )
    ( bvshl y_term y_term )
    ( bvlshr y_term y_term )
  ))
))

(define-fun C ((x Stream)) Bool
  (= (op x) (O x))
)

(constraint (and
(C (_ bv0 2))
(C (_ bv1 2))
(C (_ bv2 2))
(C (_ bv3 2))
))

(check-synth)
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback