Merge branch 'upgrade_proofs_coq_8_11_to_8_16' into 'master'
[why3.git] / bench / check-ce / loop_ce.mlw
blobd29b286fb2c65ef4883785d5726a82cc9a5f4592
2 module M1
4 use int.Int
6 let ref a = 0
8 let ref b = 0
10 let f () =
11   a <- -1;
12   a <- 1;
13   b <- 2;
14   while b < 10 do
15     variant { 10 - b }
16     invariant { b - a < 5 }
17     b <- b + a;
18   done
20 end
22 module M2
24 use int.Int
26 let g (ref a: int)
27   ensures { a = old a + 1 }
29   label X in
30   if a <> 10 then a <- a + 1;
31   assert { a = a at X }
33 end