void abort() { }; extern int __VERIFIER_nondet_int(); extern _Bool __VERIFIER_nondet_bool(); /*@ requires ((\old(cond) != 0)) && (cond != 0); ensures ((\old(cond) != 0)) && (1); @*/ void __VERIFIER_assert(int cond) { if (!cond) { /*@ assert(0); */; } } int main() { int x = __VERIFIER_nondet_int(); if (!(x>=0)) return 0; /*@ loop invariant ((0 < ((long long) x + 1))); @*/ while ((x>=0) && (x<10)) { x=x+1; } __VERIFIER_assert(x>=10); return 0; }