blob: 6ee155877d4f14a3240ac6bbcff146665de3e5ca (
plain) (
blame)
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
|
node follow(a: real) returns (probe f: real)
var
probe pf: real;
let
assume h1: a >= 0. and a <= 1.;
guarantee g1: f >= 0. and f <= 1.;
guarantee g2: pf >= 0. and pf <= 1.;
pf = 0. -> pre f;
f = (pf + a) / 2.0;
tel
node test(i: int) returns (a, b, c: int; exit: bool)
var
probe u, v: real;
let
u = real(i mod 10) / 10.;
v = follow(u);
a = int(u * 1000.);
b = int(v * 1000.);
c = 0;
exit = (i > 100);
tel
|