/* Generated by Frama-C */
#include "pthread.h"
#include "sched.h"
#include "signal.h"
#include "stddef.h"
#include "stdint.h"
#include "stdio.h"
#include "time.h"
extern  __attribute__((__FC_BUILTIN__)) int __e_acsl_sound_verdict;

int main(void)
{
  int __retres;
  __e_acsl_memory_init((int *)0,(char ***)0,8UL);
  unsigned long x = (unsigned long)4294967295U;
  int y = 10;
  {
    int __gen_e_acsl_k;
    int __gen_e_acsl_one;
    int __gen_e_acsl_cond;
    int __gen_e_acsl_lambda;
    int __gen_e_acsl_accumulator;
    __e_acsl_assert_data_t __gen_e_acsl_assert_data = {.values = (void *)0};
    __gen_e_acsl_one = 1;
    __gen_e_acsl_cond = 0;
    __gen_e_acsl_lambda = 0;
    __gen_e_acsl_accumulator = 0;
    __gen_e_acsl_k = 2;
    while (1) {
      __gen_e_acsl_cond = __gen_e_acsl_k > 10;
      if (__gen_e_acsl_cond) break;
      else {
        /*@ assert Eva: signed_overflow: 2 * __gen_e_acsl_k <= 2147483647; */
        __gen_e_acsl_lambda = 2 * __gen_e_acsl_k;
        /*@ assert
            Eva: signed_overflow:
              __gen_e_acsl_accumulator + __gen_e_acsl_lambda <= 2147483647;
        */
        __gen_e_acsl_accumulator += __gen_e_acsl_lambda;
        /*@ assert
            Eva: signed_overflow:
              __gen_e_acsl_k + __gen_e_acsl_one <= 2147483647;
        */
        __gen_e_acsl_k += __gen_e_acsl_one;
      }
    }
    __e_acsl_assert_register_int(& __gen_e_acsl_assert_data,
                                 "\\sum(2, 10, \\lambda integer k; 2 * k)",0,
                                 __gen_e_acsl_accumulator);
    __gen_e_acsl_assert_data.blocking = 1;
    __gen_e_acsl_assert_data.kind = "Assertion";
    __gen_e_acsl_assert_data.pred_txt = "\\sum(2, 10, \\lambda integer k; 2 * k) == 108";
    __gen_e_acsl_assert_data.file = "extended_quantifiers.c";
    __gen_e_acsl_assert_data.fct = "main";
    __gen_e_acsl_assert_data.line = 11;
    __e_acsl_assert(__gen_e_acsl_accumulator == 108,
                    & __gen_e_acsl_assert_data);
    __e_acsl_assert_clean(& __gen_e_acsl_assert_data);
  }
  /*@ assert \sum(2, 10, \lambda integer k; 2 * k) == 108; */ ;
  {
    int __gen_e_acsl_k_2;
    int __gen_e_acsl_one_2;
    int __gen_e_acsl_cond_2;
    __e_acsl_mpz_t __gen_e_acsl_lambda_2;
    __e_acsl_mpz_t __gen_e_acsl_accumulator_2;
    __e_acsl_mpz_t __gen_e_acsl__2;
    int __gen_e_acsl_ne;
    __e_acsl_assert_data_t __gen_e_acsl_assert_data_2 =
      {.values = (void *)0};
    __gen_e_acsl_one_2 = 1;
    __gen_e_acsl_cond_2 = 0;
    __gmpz_init_set_si(__gen_e_acsl_lambda_2,0L);
    __gmpz_init_set_si(__gen_e_acsl_accumulator_2,0L);
    __gen_e_acsl_k_2 = 2;
    while (1) {
      __gen_e_acsl_cond_2 = __gen_e_acsl_k_2 > 35;
      if (__gen_e_acsl_cond_2) break;
      else {
        {
          __e_acsl_mpz_t __gen_e_acsl_;
          __gmpz_init_set_str(__gen_e_acsl_,"18446744073709551615",10);
          __gmpz_set(__gen_e_acsl_lambda_2,
                     (__e_acsl_mpz_struct const *)(__gen_e_acsl_));
          __gmpz_clear(__gen_e_acsl_);
        }
        __gmpz_add(__gen_e_acsl_accumulator_2,
                   (__e_acsl_mpz_struct const *)(__gen_e_acsl_accumulator_2),
                   (__e_acsl_mpz_struct const *)(__gen_e_acsl_lambda_2));
        /*@ assert
            Eva: signed_overflow:
              __gen_e_acsl_k_2 + __gen_e_acsl_one_2 <= 2147483647;
        */
        __gen_e_acsl_k_2 += __gen_e_acsl_one_2;
      }
    }
    __e_acsl_assert_register_mpz(& __gen_e_acsl_assert_data_2,
                                 "\\sum(2, 35, \\lambda integer k; 18446744073709551615ULL)",
                                 0,
                                 (__e_acsl_mpz_struct const *)(__gen_e_acsl_accumulator_2));
    __gmpz_init_set_si(__gen_e_acsl__2,0L);
    __gen_e_acsl_ne = __gmpz_cmp((__e_acsl_mpz_struct const *)(__gen_e_acsl_accumulator_2),
                                 (__e_acsl_mpz_struct const *)(__gen_e_acsl__2));
    __gen_e_acsl_assert_data_2.blocking = 1;
    __gen_e_acsl_assert_data_2.kind = "Assertion";
    __gen_e_acsl_assert_data_2.pred_txt = "\\sum(2, 35, \\lambda integer k; 18446744073709551615ULL) != 0";
    __gen_e_acsl_assert_data_2.file = "extended_quantifiers.c";
    __gen_e_acsl_assert_data_2.fct = "main";
    __gen_e_acsl_assert_data_2.line = 12;
    __e_acsl_assert(__gen_e_acsl_ne != 0,& __gen_e_acsl_assert_data_2);
    __e_acsl_assert_clean(& __gen_e_acsl_assert_data_2);
    __gmpz_clear(__gen_e_acsl_lambda_2);
    __gmpz_clear(__gen_e_acsl_accumulator_2);
    __gmpz_clear(__gen_e_acsl__2);
  }
  /*@ assert \sum(2, 35, \lambda integer k; 18446744073709551615ULL) != 0; */
  ;
  {
    int __gen_e_acsl_k_3;
    int __gen_e_acsl_one_3;
    int __gen_e_acsl_cond_3;
    int __gen_e_acsl_lambda_3;
    int __gen_e_acsl_accumulator_3;
    __e_acsl_assert_data_t __gen_e_acsl_assert_data_3 =
      {.values = (void *)0};
    __gen_e_acsl_one_3 = 1;
    __gen_e_acsl_cond_3 = 0;
    __gen_e_acsl_lambda_3 = 0;
    __gen_e_acsl_accumulator_3 = 0;
    __gen_e_acsl_k_3 = 10;
    while (1) {
      __gen_e_acsl_cond_3 = __gen_e_acsl_k_3 > 2;
      if (__gen_e_acsl_cond_3) break;
      else {
        __gen_e_acsl_lambda_3 = __gen_e_acsl_k_3;
        __gen_e_acsl_accumulator_3 += __gen_e_acsl_lambda_3;
        __gen_e_acsl_k_3 += __gen_e_acsl_one_3;
      }
    }
    __e_acsl_assert_register_int(& __gen_e_acsl_assert_data_3,
                                 "\\sum(10, 2, \\lambda integer k; k)",0,
                                 __gen_e_acsl_accumulator_3);
    __gen_e_acsl_assert_data_3.blocking = 1;
    __gen_e_acsl_assert_data_3.kind = "Assertion";
    __gen_e_acsl_assert_data_3.pred_txt = "\\sum(10, 2, \\lambda integer k; k) == 0";
    __gen_e_acsl_assert_data_3.file = "extended_quantifiers.c";
    __gen_e_acsl_assert_data_3.fct = "main";
    __gen_e_acsl_assert_data_3.line = 13;
    __e_acsl_assert(__gen_e_acsl_accumulator_3 == 0,
                    & __gen_e_acsl_assert_data_3);
    __e_acsl_assert_clean(& __gen_e_acsl_assert_data_3);
  }
  /*@ assert \sum(10, 2, \lambda integer k; k) == 0; */ ;
  {
    __e_acsl_mpz_t __gen_e_acsl_x;
    __e_acsl_mpz_t __gen_e_acsl_mul;
    __e_acsl_mpz_t __gen_e_acsl__3;
    __e_acsl_mpz_t __gen_e_acsl_k_4;
    __e_acsl_mpz_t __gen_e_acsl_one_4;
    int __gen_e_acsl_cond_4;
    __e_acsl_mpz_t __gen_e_acsl_lambda_4;
    __e_acsl_mpz_t __gen_e_acsl_accumulator_4;
    __e_acsl_mpz_t __gen_e_acsl__4;
    int __gen_e_acsl_eq;
    __e_acsl_assert_data_t __gen_e_acsl_assert_data_4 =
      {.values = (void *)0};
    __e_acsl_assert_register_ulong(& __gen_e_acsl_assert_data_4,"x",0,x);
    __gmpz_init_set_ui(__gen_e_acsl_x,x);
    __e_acsl_assert_register_ulong(& __gen_e_acsl_assert_data_4,"x",0,x);
    __gmpz_init(__gen_e_acsl_mul);
    __gmpz_mul(__gen_e_acsl_mul,
               (__e_acsl_mpz_struct const *)(__gen_e_acsl_x),
               (__e_acsl_mpz_struct const *)(__gen_e_acsl_x));
    __gmpz_init_set_si(__gen_e_acsl__3,2L);
    __gmpz_init_set_si(__gen_e_acsl_one_4,1L);
    __gen_e_acsl_cond_4 = 0;
    __gmpz_init_set_si(__gen_e_acsl_lambda_4,0L);
    __gmpz_init_set_si(__gen_e_acsl_accumulator_4,0L);
    __gmpz_init_set(__gen_e_acsl_k_4,
                    (__e_acsl_mpz_struct const *)(__gen_e_acsl_mul));
    while (1) {
      __gen_e_acsl_cond_4 = __gmpz_cmp((__e_acsl_mpz_struct const *)(__gen_e_acsl_k_4),
                                       (__e_acsl_mpz_struct const *)(__gen_e_acsl__3));
      if (__gen_e_acsl_cond_4 > 0) break;
      else {
        __gmpz_set(__gen_e_acsl_lambda_4,
                   (__e_acsl_mpz_struct const *)(__gen_e_acsl_k_4));
        __gmpz_add(__gen_e_acsl_accumulator_4,
                   (__e_acsl_mpz_struct const *)(__gen_e_acsl_accumulator_4),
                   (__e_acsl_mpz_struct const *)(__gen_e_acsl_lambda_4));
        __gmpz_add(__gen_e_acsl_k_4,
                   (__e_acsl_mpz_struct const *)(__gen_e_acsl_k_4),
                   (__e_acsl_mpz_struct const *)(__gen_e_acsl_one_4));
      }
    }
    __e_acsl_assert_register_mpz(& __gen_e_acsl_assert_data_4,
                                 "\\sum(x * x, 2, \\lambda integer k; k)",0,
                                 (__e_acsl_mpz_struct const *)(__gen_e_acsl_accumulator_4));
    __gmpz_init_set_si(__gen_e_acsl__4,0L);
    __gen_e_acsl_eq = __gmpz_cmp((__e_acsl_mpz_struct const *)(__gen_e_acsl_accumulator_4),
                                 (__e_acsl_mpz_struct const *)(__gen_e_acsl__4));
    __gen_e_acsl_assert_data_4.blocking = 1;
    __gen_e_acsl_assert_data_4.kind = "Assertion";
    __gen_e_acsl_assert_data_4.pred_txt = "\\sum(x * x, 2, \\lambda integer k; k) == 0";
    __gen_e_acsl_assert_data_4.file = "extended_quantifiers.c";
    __gen_e_acsl_assert_data_4.fct = "main";
    __gen_e_acsl_assert_data_4.line = 14;
    __e_acsl_assert(__gen_e_acsl_eq == 0,& __gen_e_acsl_assert_data_4);
    __e_acsl_assert_clean(& __gen_e_acsl_assert_data_4);
    __gmpz_clear(__gen_e_acsl_x);
    __gmpz_clear(__gen_e_acsl_mul);
    __gmpz_clear(__gen_e_acsl__3);
    __gmpz_clear(__gen_e_acsl_k_4);
    __gmpz_clear(__gen_e_acsl_one_4);
    __gmpz_clear(__gen_e_acsl_lambda_4);
    __gmpz_clear(__gen_e_acsl_accumulator_4);
    __gmpz_clear(__gen_e_acsl__4);
  }
  /*@ assert \sum(x * x, 2, \lambda integer k; k) == 0; */ ;
  {
    __e_acsl_mpz_t __gen_e_acsl__5;
    __e_acsl_mpz_t __gen_e_acsl__6;
    __e_acsl_mpz_t __gen_e_acsl_k_5;
    __e_acsl_mpz_t __gen_e_acsl_one_5;
    int __gen_e_acsl_cond_5;
    int __gen_e_acsl_lambda_5;
    int __gen_e_acsl_accumulator_5;
    __e_acsl_assert_data_t __gen_e_acsl_assert_data_5 =
      {.values = (void *)0};
    __gmpz_init_set_ui(__gen_e_acsl__5,18446744073709551615UL - 5UL);
    __gmpz_init_set_ui(__gen_e_acsl__6,18446744073709551615UL);
    __gmpz_init_set_si(__gen_e_acsl_one_5,1L);
    __gen_e_acsl_cond_5 = 0;
    __gen_e_acsl_lambda_5 = 0;
    __gen_e_acsl_accumulator_5 = 0;
    __gmpz_init_set(__gen_e_acsl_k_5,
                    (__e_acsl_mpz_struct const *)(__gen_e_acsl__5));
    while (1) {
      __gen_e_acsl_cond_5 = __gmpz_cmp((__e_acsl_mpz_struct const *)(__gen_e_acsl_k_5),
                                       (__e_acsl_mpz_struct const *)(__gen_e_acsl__6));
      if (__gen_e_acsl_cond_5 > 0) break;
      else {
        __gen_e_acsl_lambda_5 = 1;
        /*@ assert
            Eva: signed_overflow:
              __gen_e_acsl_accumulator_5 + __gen_e_acsl_lambda_5 <=
              2147483647;
        */
        __gen_e_acsl_accumulator_5 += __gen_e_acsl_lambda_5;
        __gmpz_add(__gen_e_acsl_k_5,
                   (__e_acsl_mpz_struct const *)(__gen_e_acsl_k_5),
                   (__e_acsl_mpz_struct const *)(__gen_e_acsl_one_5));
      }
    }
    __e_acsl_assert_register_int(& __gen_e_acsl_assert_data_5,
                                 "\\sum(18446744073709551615ULL - 5, 18446744073709551615ULL,\n    \\lambda integer k; 1)",
                                 0,__gen_e_acsl_accumulator_5);
    __gen_e_acsl_assert_data_5.blocking = 1;
    __gen_e_acsl_assert_data_5.kind = "Assertion";
    __gen_e_acsl_assert_data_5.pred_txt = "\\sum(18446744073709551615ULL - 5, 18446744073709551615ULL,\n    \\lambda integer k; 1)\n== 6";
    __gen_e_acsl_assert_data_5.file = "extended_quantifiers.c";
    __gen_e_acsl_assert_data_5.fct = "main";
    __gen_e_acsl_assert_data_5.line = 15;
    __e_acsl_assert(__gen_e_acsl_accumulator_5 == 6,
                    & __gen_e_acsl_assert_data_5);
    __e_acsl_assert_clean(& __gen_e_acsl_assert_data_5);
    __gmpz_clear(__gen_e_acsl__5);
    __gmpz_clear(__gen_e_acsl__6);
    __gmpz_clear(__gen_e_acsl_k_5);
    __gmpz_clear(__gen_e_acsl_one_5);
  }
  /*@
  assert
  \sum(18446744073709551615ULL - 5, 18446744073709551615ULL,
      \lambda integer k; 1)
  == 6; */
  ;
  {
    unsigned int __gen_e_acsl_k_6;
    unsigned int __gen_e_acsl_one_6;
    int __gen_e_acsl_cond_6;
    unsigned int __gen_e_acsl_lambda_6;
    unsigned int __gen_e_acsl_accumulator_6;
    __e_acsl_assert_data_t __gen_e_acsl_assert_data_6 =
      {.values = (void *)0};
    __gen_e_acsl_one_6 = 1;
    __gen_e_acsl_cond_6 = 0;
    __gen_e_acsl_lambda_6 = 0;
    __gen_e_acsl_accumulator_6 = 0;
    __gen_e_acsl_k_6 = 2147483647U;
    while (1) {
      __gen_e_acsl_cond_6 = __gen_e_acsl_k_6 > 2147483647U;
      if (__gen_e_acsl_cond_6) break;
      else {
        __gen_e_acsl_lambda_6 = __gen_e_acsl_k_6;
        __gen_e_acsl_accumulator_6 += __gen_e_acsl_lambda_6;
        __gen_e_acsl_k_6 += __gen_e_acsl_one_6;
      }
    }
    __e_acsl_assert_register_uint(& __gen_e_acsl_assert_data_6,
                                  "\\sum(2147483647, 2147483647, \\lambda integer k; k)",
                                  0,__gen_e_acsl_accumulator_6);
    __gen_e_acsl_assert_data_6.blocking = 1;
    __gen_e_acsl_assert_data_6.kind = "Assertion";
    __gen_e_acsl_assert_data_6.pred_txt = "\\sum(2147483647, 2147483647, \\lambda integer k; k) + 1 > 2147483647";
    __gen_e_acsl_assert_data_6.file = "extended_quantifiers.c";
    __gen_e_acsl_assert_data_6.fct = "main";
    __gen_e_acsl_assert_data_6.line = 16;
    __e_acsl_assert(__gen_e_acsl_accumulator_6 + 1U > 2147483647U,
                    & __gen_e_acsl_assert_data_6);
    __e_acsl_assert_clean(& __gen_e_acsl_assert_data_6);
  }
  /*@
  assert \sum(2147483647, 2147483647, \lambda integer k; k) + 1 > 2147483647;
   */
  ;
  {
    int __gen_e_acsl_x_2;
    int __gen_e_acsl_k_7;
    int __gen_e_acsl_one_7;
    int __gen_e_acsl_cond_7;
    long __gen_e_acsl_lambda_7;
    long __gen_e_acsl_accumulator_7;
    __e_acsl_assert_data_t __gen_e_acsl_assert_data_7 =
      {.values = (void *)0};
    __gen_e_acsl_x_2 = 1;
    __e_acsl_assert_register_int(& __gen_e_acsl_assert_data_7,"x",0,
                                 __gen_e_acsl_x_2);
    __gen_e_acsl_one_7 = 1;
    __gen_e_acsl_cond_7 = 0;
    __gen_e_acsl_lambda_7 = 0;
    __gen_e_acsl_accumulator_7 = 0;
    __gen_e_acsl_k_7 = __gen_e_acsl_x_2;
    while (1) {
      __gen_e_acsl_cond_7 = __gen_e_acsl_k_7 > 10;
      if (__gen_e_acsl_cond_7) break;
      else {
        __gen_e_acsl_lambda_7 = -2147483647 - 1;
        /*@ assert
            Eva: signed_overflow:
              -9223372036854775808 <=
              __gen_e_acsl_accumulator_7 + __gen_e_acsl_lambda_7;
        */
        __gen_e_acsl_accumulator_7 += __gen_e_acsl_lambda_7;
        /*@ assert
            Eva: signed_overflow:
              __gen_e_acsl_k_7 + __gen_e_acsl_one_7 <= 2147483647;
        */
        __gen_e_acsl_k_7 += __gen_e_acsl_one_7;
      }
    }
    __e_acsl_assert_register_long(& __gen_e_acsl_assert_data_7,
                                  "\\sum(x, 10, \\lambda integer k; -2147483647 - 1)",
                                  0,__gen_e_acsl_accumulator_7);
    __gen_e_acsl_assert_data_7.blocking = 1;
    __gen_e_acsl_assert_data_7.kind = "Assertion";
    __gen_e_acsl_assert_data_7.pred_txt = "\\let x = 0 == 0? 1: 10; \\sum(x, 10, \\lambda integer k; -2147483647 - 1) < 0";
    __gen_e_acsl_assert_data_7.file = "extended_quantifiers.c";
    __gen_e_acsl_assert_data_7.fct = "main";
    __gen_e_acsl_assert_data_7.line = 17;
    __e_acsl_assert(__gen_e_acsl_accumulator_7 < 0L,
                    & __gen_e_acsl_assert_data_7);
    __e_acsl_assert_clean(& __gen_e_acsl_assert_data_7);
  }
  /*@
  assert
  \let x = 0 == 0? 1: 10; \sum(x, 10, \lambda integer k; -2147483647 - 1) < 0;
   */
  ;
  {
    int __gen_e_acsl_k_8;
    int __gen_e_acsl_one_8;
    int __gen_e_acsl_cond_8;
    int __gen_e_acsl_lambda_8;
    int __gen_e_acsl_accumulator_8;
    __e_acsl_assert_data_t __gen_e_acsl_assert_data_8 =
      {.values = (void *)0};
    __gen_e_acsl_one_8 = 1;
    __gen_e_acsl_cond_8 = 0;
    __gen_e_acsl_lambda_8 = 0;
    __gen_e_acsl_accumulator_8 = 0;
    __gen_e_acsl_k_8 = 2;
    while (1) {
      __gen_e_acsl_cond_8 = __gen_e_acsl_k_8 > 10;
      if (__gen_e_acsl_cond_8) break;
      else {
        {
          int __gen_e_acsl_if;
          if (__gen_e_acsl_k_8 - 2 >= 0) __gen_e_acsl_if = 1;
          else __gen_e_acsl_if = 0;
          __gen_e_acsl_lambda_8 = __gen_e_acsl_if;
        }
        /*@ assert
            Eva: signed_overflow:
              __gen_e_acsl_accumulator_8 + __gen_e_acsl_lambda_8 <=
              2147483647;
        */
        __gen_e_acsl_accumulator_8 += __gen_e_acsl_lambda_8;
        /*@ assert
            Eva: signed_overflow:
              __gen_e_acsl_k_8 + __gen_e_acsl_one_8 <= 2147483647;
        */
        __gen_e_acsl_k_8 += __gen_e_acsl_one_8;
      }
    }
    __e_acsl_assert_register_int(& __gen_e_acsl_assert_data_8,
                                 "\\sum(2, 10, \\lambda integer k; k - 2 >= 0? 1: 0)",
                                 0,__gen_e_acsl_accumulator_8);
    __gen_e_acsl_assert_data_8.blocking = 1;
    __gen_e_acsl_assert_data_8.kind = "Assertion";
    __gen_e_acsl_assert_data_8.pred_txt = "\\numof(2, 10, \\lambda integer k; k - 2 >= 0) == 9";
    __gen_e_acsl_assert_data_8.file = "extended_quantifiers.c";
    __gen_e_acsl_assert_data_8.fct = "main";
    __gen_e_acsl_assert_data_8.line = 20;
    __e_acsl_assert(__gen_e_acsl_accumulator_8 == 9,
                    & __gen_e_acsl_assert_data_8);
    __e_acsl_assert_clean(& __gen_e_acsl_assert_data_8);
  }
  /*@ assert \numof(2, 10, \lambda integer k; k - 2 >= 0) == 9; */ ;
  {
    unsigned long __gen_e_acsl_k_9;
    unsigned long __gen_e_acsl_one_9;
    int __gen_e_acsl_cond_9;
    int __gen_e_acsl_lambda_9;
    int __gen_e_acsl_accumulator_9;
    __e_acsl_assert_data_t __gen_e_acsl_assert_data_9 =
      {.values = (void *)0};
    __gen_e_acsl_one_9 = 1;
    __gen_e_acsl_cond_9 = 0;
    __gen_e_acsl_lambda_9 = 0;
    __gen_e_acsl_accumulator_9 = 0;
    __gen_e_acsl_k_9 = 4294967295U - 5U;
    while (1) {
      __gen_e_acsl_cond_9 = __gen_e_acsl_k_9 > 4294967295UL;
      if (__gen_e_acsl_cond_9) break;
      else {
        {
          int __gen_e_acsl_if_2;
          if ((int)(__gen_e_acsl_k_9 % 2UL) == 1) __gen_e_acsl_if_2 = 1;
          else __gen_e_acsl_if_2 = 0;
          __gen_e_acsl_lambda_9 = __gen_e_acsl_if_2;
        }
        /*@ assert
            Eva: signed_overflow:
              __gen_e_acsl_accumulator_9 + __gen_e_acsl_lambda_9 <=
              2147483647;
        */
        __gen_e_acsl_accumulator_9 += __gen_e_acsl_lambda_9;
        __gen_e_acsl_k_9 += __gen_e_acsl_one_9;
      }
    }
    __e_acsl_assert_register_int(& __gen_e_acsl_assert_data_9,
                                 "\\sum(4294967295U - 5, 4294967295U, \\lambda integer k; k % 2 == 1? 1: 0)",
                                 0,__gen_e_acsl_accumulator_9);
    __gen_e_acsl_assert_data_9.blocking = 1;
    __gen_e_acsl_assert_data_9.kind = "Assertion";
    __gen_e_acsl_assert_data_9.pred_txt = "\\numof(4294967295U - 5, 4294967295U, \\lambda integer k; k % 2 == 1) == 3";
    __gen_e_acsl_assert_data_9.file = "extended_quantifiers.c";
    __gen_e_acsl_assert_data_9.fct = "main";
    __gen_e_acsl_assert_data_9.line = 21;
    __e_acsl_assert(__gen_e_acsl_accumulator_9 == 3,
                    & __gen_e_acsl_assert_data_9);
    __e_acsl_assert_clean(& __gen_e_acsl_assert_data_9);
  }
  /*@
  assert
  \numof(4294967295U - 5, 4294967295U, \lambda integer k; k % 2 == 1) == 3;
   */
  ;
  {
    int __gen_e_acsl_k_10;
    int __gen_e_acsl_one_10;
    int __gen_e_acsl_cond_10;
    __e_acsl_mpz_t __gen_e_acsl_lambda_10;
    __e_acsl_mpz_t __gen_e_acsl_accumulator_10;
    __e_acsl_mpz_t __gen_e_acsl__7;
    int __gen_e_acsl_ge;
    __e_acsl_assert_data_t __gen_e_acsl_assert_data_10 =
      {.values = (void *)0};
    __gen_e_acsl_one_10 = 1;
    __gen_e_acsl_cond_10 = 0;
    __gmpz_init_set_si(__gen_e_acsl_lambda_10,0L);
    __gmpz_init_set_si(__gen_e_acsl_accumulator_10,1L);
    __gen_e_acsl_k_10 = 1;
    while (1) {
      __gen_e_acsl_cond_10 = __gen_e_acsl_k_10 > 100;
      if (__gen_e_acsl_cond_10) break;
      else {
        __gmpz_set_si(__gen_e_acsl_lambda_10,(long)__gen_e_acsl_k_10);
        __gmpz_mul(__gen_e_acsl_accumulator_10,
                   (__e_acsl_mpz_struct const *)(__gen_e_acsl_accumulator_10),
                   (__e_acsl_mpz_struct const *)(__gen_e_acsl_lambda_10));
        /*@ assert
            Eva: signed_overflow:
              __gen_e_acsl_k_10 + __gen_e_acsl_one_10 <= 2147483647;
        */
        __gen_e_acsl_k_10 += __gen_e_acsl_one_10;
      }
    }
    __e_acsl_assert_register_mpz(& __gen_e_acsl_assert_data_10,
                                 "\\product(1, 100, \\lambda integer k; k)",
                                 0,
                                 (__e_acsl_mpz_struct const *)(__gen_e_acsl_accumulator_10));
    __gmpz_init_set_ui(__gen_e_acsl__7,3628800UL);
    __gen_e_acsl_ge = __gmpz_cmp((__e_acsl_mpz_struct const *)(__gen_e_acsl_accumulator_10),
                                 (__e_acsl_mpz_struct const *)(__gen_e_acsl__7));
    __gen_e_acsl_assert_data_10.blocking = 1;
    __gen_e_acsl_assert_data_10.kind = "Assertion";
    __gen_e_acsl_assert_data_10.pred_txt = "\\product(1, 100, \\lambda integer k; k) >= 3628800";
    __gen_e_acsl_assert_data_10.file = "extended_quantifiers.c";
    __gen_e_acsl_assert_data_10.fct = "main";
    __gen_e_acsl_assert_data_10.line = 25;
    __e_acsl_assert(__gen_e_acsl_ge >= 0,& __gen_e_acsl_assert_data_10);
    __e_acsl_assert_clean(& __gen_e_acsl_assert_data_10);
    __gmpz_clear(__gen_e_acsl_lambda_10);
    __gmpz_clear(__gen_e_acsl_accumulator_10);
    __gmpz_clear(__gen_e_acsl__7);
  }
  /*@ assert \product(1, 100, \lambda integer k; k) >= 3628800; */ ;
  {
    int __gen_e_acsl_k_11;
    int __gen_e_acsl_one_11;
    int __gen_e_acsl_cond_11;
    unsigned long __gen_e_acsl_lambda_11;
    unsigned long __gen_e_acsl_accumulator_11;
    __e_acsl_assert_data_t __gen_e_acsl_assert_data_11 =
      {.values = (void *)0};
    __gen_e_acsl_one_11 = 1;
    __gen_e_acsl_cond_11 = 0;
    __gen_e_acsl_lambda_11 = 0;
    __gen_e_acsl_accumulator_11 = 1;
    __gen_e_acsl_k_11 = 1;
    while (1) {
      __gen_e_acsl_cond_11 = __gen_e_acsl_k_11 > 10;
      if (__gen_e_acsl_cond_11) break;
      else {
        __gen_e_acsl_lambda_11 = (unsigned long)__gen_e_acsl_k_11;
        __gen_e_acsl_accumulator_11 *= __gen_e_acsl_lambda_11;
        /*@ assert
            Eva: signed_overflow:
              __gen_e_acsl_k_11 + __gen_e_acsl_one_11 <= 2147483647;
        */
        __gen_e_acsl_k_11 += __gen_e_acsl_one_11;
      }
    }
    __e_acsl_assert_register_ulong(& __gen_e_acsl_assert_data_11,
                                   "\\product(1, 10, \\lambda integer k; k)",
                                   0,__gen_e_acsl_accumulator_11);
    __gen_e_acsl_assert_data_11.blocking = 1;
    __gen_e_acsl_assert_data_11.kind = "Assertion";
    __gen_e_acsl_assert_data_11.pred_txt = "\\product(1, 10, \\lambda integer k; k) == 3628800";
    __gen_e_acsl_assert_data_11.file = "extended_quantifiers.c";
    __gen_e_acsl_assert_data_11.fct = "main";
    __gen_e_acsl_assert_data_11.line = 26;
    __e_acsl_assert(__gen_e_acsl_accumulator_11 == 3628800UL,
                    & __gen_e_acsl_assert_data_11);
    __e_acsl_assert_clean(& __gen_e_acsl_assert_data_11);
  }
  /*@ assert \product(1, 10, \lambda integer k; k) == 3628800; */ ;
  {
    int __gen_e_acsl_k_12;
    int __gen_e_acsl_one_12;
    int __gen_e_acsl_cond_12;
    __e_acsl_mpz_t __gen_e_acsl_lambda_12;
    __e_acsl_mpz_t __gen_e_acsl_accumulator_12;
    __e_acsl_mpz_t __gen_e_acsl__8;
    int __gen_e_acsl_eq_2;
    __e_acsl_assert_data_t __gen_e_acsl_assert_data_12 =
      {.values = (void *)0};
    __gen_e_acsl_one_12 = 1;
    __gen_e_acsl_cond_12 = 0;
    __gmpz_init_set_si(__gen_e_acsl_lambda_12,0L);
    __gmpz_init_set_si(__gen_e_acsl_accumulator_12,1L);
    __gen_e_acsl_k_12 = -10;
    while (1) {
      __gen_e_acsl_cond_12 = __gen_e_acsl_k_12 > 10;
      if (__gen_e_acsl_cond_12) break;
      else {
        __gmpz_set_si(__gen_e_acsl_lambda_12,(long)__gen_e_acsl_k_12);
        __gmpz_mul(__gen_e_acsl_accumulator_12,
                   (__e_acsl_mpz_struct const *)(__gen_e_acsl_accumulator_12),
                   (__e_acsl_mpz_struct const *)(__gen_e_acsl_lambda_12));
        /*@ assert
            Eva: signed_overflow:
              __gen_e_acsl_k_12 + __gen_e_acsl_one_12 <= 2147483647;
        */
        __gen_e_acsl_k_12 += __gen_e_acsl_one_12;
      }
    }
    __e_acsl_assert_register_mpz(& __gen_e_acsl_assert_data_12,
                                 "\\product(-10, 10, \\lambda integer k; k)",
                                 0,
                                 (__e_acsl_mpz_struct const *)(__gen_e_acsl_accumulator_12));
    __gmpz_init_set_si(__gen_e_acsl__8,0L);
    __gen_e_acsl_eq_2 = __gmpz_cmp((__e_acsl_mpz_struct const *)(__gen_e_acsl_accumulator_12),
                                   (__e_acsl_mpz_struct const *)(__gen_e_acsl__8));
    __gen_e_acsl_assert_data_12.blocking = 1;
    __gen_e_acsl_assert_data_12.kind = "Assertion";
    __gen_e_acsl_assert_data_12.pred_txt = "\\product(-10, 10, \\lambda integer k; k) == 0";
    __gen_e_acsl_assert_data_12.file = "extended_quantifiers.c";
    __gen_e_acsl_assert_data_12.fct = "main";
    __gen_e_acsl_assert_data_12.line = 27;
    __e_acsl_assert(__gen_e_acsl_eq_2 == 0,& __gen_e_acsl_assert_data_12);
    __e_acsl_assert_clean(& __gen_e_acsl_assert_data_12);
    __gmpz_clear(__gen_e_acsl_lambda_12);
    __gmpz_clear(__gen_e_acsl_accumulator_12);
    __gmpz_clear(__gen_e_acsl__8);
  }
  /*@ assert \product(-10, 10, \lambda integer k; k) == 0; */ ;
  {
    int __gen_e_acsl_k_13;
    int __gen_e_acsl_one_13;
    int __gen_e_acsl_cond_13;
    __e_acsl_mpz_t __gen_e_acsl_lambda_13;
    __e_acsl_mpz_t __gen_e_acsl_accumulator_13;
    int __gen_e_acsl_k_14;
    int __gen_e_acsl_one_14;
    int __gen_e_acsl_cond_14;
    __e_acsl_mpz_t __gen_e_acsl_lambda_14;
    __e_acsl_mpz_t __gen_e_acsl_accumulator_14;
    int __gen_e_acsl_eq_3;
    __e_acsl_assert_data_t __gen_e_acsl_assert_data_13 =
      {.values = (void *)0};
    __gen_e_acsl_one_13 = 1;
    __gen_e_acsl_cond_13 = 0;
    __gmpz_init_set_si(__gen_e_acsl_lambda_13,0L);
    __gmpz_init_set_si(__gen_e_acsl_accumulator_13,1L);
    __gen_e_acsl_k_13 = -20;
    while (1) {
      __gen_e_acsl_cond_13 = __gen_e_acsl_k_13 > -1;
      if (__gen_e_acsl_cond_13) break;
      else {
        {
          __e_acsl_mpz_t __gen_e_acsl__9;
          /*@ assert
              Eva: signed_overflow: 2 * __gen_e_acsl_k_13 <= 2147483647;
          */
          __gmpz_init_set_si(__gen_e_acsl__9,(long)(2 * __gen_e_acsl_k_13));
          __gmpz_set(__gen_e_acsl_lambda_13,
                     (__e_acsl_mpz_struct const *)(__gen_e_acsl__9));
          __gmpz_clear(__gen_e_acsl__9);
        }
        __gmpz_mul(__gen_e_acsl_accumulator_13,
                   (__e_acsl_mpz_struct const *)(__gen_e_acsl_accumulator_13),
                   (__e_acsl_mpz_struct const *)(__gen_e_acsl_lambda_13));
        /*@ assert
            Eva: signed_overflow:
              __gen_e_acsl_k_13 + __gen_e_acsl_one_13 <= 2147483647;
        */
        __gen_e_acsl_k_13 += __gen_e_acsl_one_13;
      }
    }
    __e_acsl_assert_register_mpz(& __gen_e_acsl_assert_data_13,
                                 "\\product(-20, -1, \\lambda integer k; 2 * k)",
                                 0,
                                 (__e_acsl_mpz_struct const *)(__gen_e_acsl_accumulator_13));
    __gen_e_acsl_one_14 = 1;
    __gen_e_acsl_cond_14 = 0;
    __gmpz_init_set_si(__gen_e_acsl_lambda_14,0L);
    __gmpz_init_set_si(__gen_e_acsl_accumulator_14,1L);
    __gen_e_acsl_k_14 = 1;
    while (1) {
      __gen_e_acsl_cond_14 = __gen_e_acsl_k_14 > 20;
      if (__gen_e_acsl_cond_14) break;
      else {
        {
          __e_acsl_mpz_t __gen_e_acsl__10;
          /*@ assert
              Eva: signed_overflow: 2 * __gen_e_acsl_k_14 <= 2147483647;
          */
          __gmpz_init_set_si(__gen_e_acsl__10,(long)(2 * __gen_e_acsl_k_14));
          __gmpz_set(__gen_e_acsl_lambda_14,
                     (__e_acsl_mpz_struct const *)(__gen_e_acsl__10));
          __gmpz_clear(__gen_e_acsl__10);
        }
        __gmpz_mul(__gen_e_acsl_accumulator_14,
                   (__e_acsl_mpz_struct const *)(__gen_e_acsl_accumulator_14),
                   (__e_acsl_mpz_struct const *)(__gen_e_acsl_lambda_14));
        /*@ assert
            Eva: signed_overflow:
              __gen_e_acsl_k_14 + __gen_e_acsl_one_14 <= 2147483647;
        */
        __gen_e_acsl_k_14 += __gen_e_acsl_one_14;
      }
    }
    __e_acsl_assert_register_mpz(& __gen_e_acsl_assert_data_13,
                                 "\\product(1, 20, \\lambda integer k; 2 * k)",
                                 0,
                                 (__e_acsl_mpz_struct const *)(__gen_e_acsl_accumulator_14));
    __gen_e_acsl_eq_3 = __gmpz_cmp((__e_acsl_mpz_struct const *)(__gen_e_acsl_accumulator_13),
                                   (__e_acsl_mpz_struct const *)(__gen_e_acsl_accumulator_14));
    __gen_e_acsl_assert_data_13.blocking = 1;
    __gen_e_acsl_assert_data_13.kind = "Assertion";
    __gen_e_acsl_assert_data_13.pred_txt = "\\product(-20, -1, \\lambda integer k; 2 * k) ==\n\\product(1, 20, \\lambda integer k; 2 * k)";
    __gen_e_acsl_assert_data_13.file = "extended_quantifiers.c";
    __gen_e_acsl_assert_data_13.fct = "main";
    __gen_e_acsl_assert_data_13.line = 28;
    __e_acsl_assert(__gen_e_acsl_eq_3 == 0,& __gen_e_acsl_assert_data_13);
    __e_acsl_assert_clean(& __gen_e_acsl_assert_data_13);
    __gmpz_clear(__gen_e_acsl_lambda_13);
    __gmpz_clear(__gen_e_acsl_accumulator_13);
    __gmpz_clear(__gen_e_acsl_lambda_14);
    __gmpz_clear(__gen_e_acsl_accumulator_14);
  }
  /*@
  assert
  \product(-20, -1, \lambda integer k; 2 * k) ==
  \product(1, 20, \lambda integer k; 2 * k); */
  ;
  __retres = 0;
  __e_acsl_memory_clean();
  return __retres;
}


