/* PROOF OF CORRECTNESS: DIFF(X,Y): compute X - Y */ #include int diff(int x, int y) { int z, w; // PRE: y >= 0 z = x; w = y; // INVARIANT: while ( w > 0 ) { z = z - 1; w = w - 1; } // INVARIANT: and EXIT: // POST: z = x - y return z; } int main() { int x, y; scanf("%d %d",&x,&y); printf("diff(%d,%d)=%d\n",x,y,diff(x,y)); }