void abort() { }; /*@ requires ((1 <= cond)) && (cond != 0); ensures ((1 <= cond)) && (1); @*/ void __VERIFIER_assert(int cond) { if (!(cond)) { ERROR: {/*@ assert(0); */;abort();} } return; } int __VERIFIER_nondet_int(); int main() { unsigned int SIZE=1; unsigned int j,k; int array[SIZE], menor; menor = __VERIFIER_nondet_int(); /*@ loop invariant ((((j == 1) && (SIZE == 1)) || ((j == 0) && (SIZE == 1)))); @*/ for(j=0;j<SIZE;j++) { array[j] = __VERIFIER_nondet_int(); if(array[j]<=menor) menor = array[j]; } __VERIFIER_assert(array[0]>=menor); return 0; }