[YICES-HELP] mk-record question
Mido
mido.wakil at gmail.com
Fri Apr 10 19:41:30 PDT 2009
Dear All,
I was expecting the two formulae below to produce the same solution (i.e.
SAT and x=70).
That does not happen as formula 2 produces UNSAT.
There is one difference there which is t2 has a mk-record.
Why mk-record changed the behavior of the 2nd formula?
Thanks!
;;Formula 1:
(define-type myrec (record ix::int idx::int value::int aflag::bool))
(define t::myrec (mk-record ix::100 idx::10 value::20 aflag::true) )
(define t2::myrec )
(define x::int )
(define u::bool (= t2 (update t ix 30)))
(define y::int (+ x (select t2 ix)))
(define b::bool (= (select t ix) y))
(assert+ u)
(assert+ b)
(check)
;;Formula 2:
(define-type myrec (record ix::int idx::int value::int aflag::bool))
(define t::myrec (mk-record ix::100 idx::10 value::20 aflag::true) )
(define t2::myrec (mk-record ix::100 idx::10 value::20 aflag::true) )
(define x::int )
(define u::bool (= t2 (update t ix 30)))
(define y::int (+ x (select t2 ix)))
(define b::bool (= (select t ix) y))
(assert+ u)
(assert+ b)
(check)
More information about the YICES-HELP
mailing list