blob: 899a7ff180aed278e14937d8303fbf10f01b5dc4 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
|
// McCarthy 91 function
procedure F(n: int) returns (r: int)
ensures 100 < n ==> r == n - 10;
ensures n <= 100 ==> r == 91;
{
if (100 < n) {
r := n - 10;
} else {
call r := F(n + 11);
call r := F(r);
}
}
|