Project

General

Profile

Download (564 Bytes) Statistics
| Branch: | Tag: | Revision:
1

    
2
node bool6 (x:bool) returns (out:bool);
3
var a,b,c: bool;
4
let
5
  a = false -> not pre(a);
6
  b = false -> (not pre(c) and not pre(b) and pre(a)) or
7
           (pre(b) and not pre(a));
8
  c = false -> (pre(c) and not pre(a)) and (pre(b) and pre(a));
9
  out = a and c;
10
tel
11
node int6I (x:bool) returns (out:bool);
12
var time:int;
13
let
14
  time = 0 -> if pre time = 5 then 1
15
              else pre time -1+ 1;
16
  out = time = 5;
17
tel
18

    
19
--@ ensures OK;
20
node top (x:bool) returns (OK:bool);
21
var a,b:bool;
22
let
23
  OK = a=b;
24
  a = int6I(x);
25
  b = bool6(x);
26
--!k:2;
27
--!PROPERTY: OK;
28
tel
(1-1/31)