// verifast_options{disable_overflow_check target:ILP32}


void reach_error(void) 
//@ requires false;
//@ ensures true;
{((void) sizeof ((0) ? 1 : 0), __extension__ ({ if (0) ; else __assert_fail ("0", "benchmark11_linear.c", 2, __extension__ __PRETTY_FUNCTION__); }));}extern int __VERIFIER_nondet_int(void);
//@ requires true;
//@ ensures true;
extern bool __VERIFIER_nondet_bool(void);
//@ requires true;
//@ ensures true;
void __VERIFIER_assert(int cond) 
//@ requires (1 <= cond);
//@ ensures (1 <= cond);
{  if (!cond) {
    reach_error();
  }
}
int main() 
//@ requires module(benchmark11_linear__verifast_instrumented, true);
//@ ensures junk();
{
    //@ open_module(); 
  int x = __VERIFIER_nondet_int();
  int n = __VERIFIER_nondet_int();
  if (!(x==0 && n>0)) return 0;
while (x<n)
//@ invariant (x < (n + 1));
    {
    x++;
  }
  __VERIFIER_assert(x==n);
  return 0;
}