/* 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 A[10];
/*@ requires \forall integer i; 0 <= i < 9 ==> A[i] <= A[i + 1];
    
    behavior exists:
      assumes \exists integer j; 0 <= j < 10 && A[j] == elt;
      ensures \result == 1;
    
    behavior not_exists:
      assumes \forall integer j; 0 <= j < 10 ==> A[j] != elt;
      ensures \result == 0;
 */
int __gen_e_acsl_search(int elt);

int search(int elt)
{
  int __retres;
  int k;
  k = 0;
  {
    int __gen_e_acsl_forall;
    int __gen_e_acsl_i;
    int __gen_e_acsl_and;
    __e_acsl_assert_data_t __gen_e_acsl_assert_data = {.values = (void *)0};
    __gen_e_acsl_forall = 1;
    __gen_e_acsl_i = 0;
    while (1) {
      if (__gen_e_acsl_i < k) ; else break;
      {
        __e_acsl_assert_data_t __gen_e_acsl_assert_data_2 =
          {.values = (void *)0};
        __e_acsl_assert_register_int(& __gen_e_acsl_assert_data_2,
                                     "__gen_e_acsl_i",0,__gen_e_acsl_i);
        __gen_e_acsl_assert_data_2.blocking = 1;
        __gen_e_acsl_assert_data_2.kind = "RTE";
        __gen_e_acsl_assert_data_2.pred_txt = "__gen_e_acsl_i < 10";
        __gen_e_acsl_assert_data_2.file = "linear_search.i";
        __gen_e_acsl_assert_data_2.fct = "search";
        __gen_e_acsl_assert_data_2.line = 18;
        __gen_e_acsl_assert_data_2.name = "index_bound";
        __e_acsl_assert(__gen_e_acsl_i < 10,& __gen_e_acsl_assert_data_2);
        __e_acsl_assert_clean(& __gen_e_acsl_assert_data_2);
        __e_acsl_assert_data_t __gen_e_acsl_assert_data_3 =
          {.values = (void *)0};
        __e_acsl_assert_register_int(& __gen_e_acsl_assert_data_3,
                                     "__gen_e_acsl_i",0,__gen_e_acsl_i);
        __gen_e_acsl_assert_data_3.blocking = 1;
        __gen_e_acsl_assert_data_3.kind = "RTE";
        __gen_e_acsl_assert_data_3.pred_txt = "0 <= __gen_e_acsl_i";
        __gen_e_acsl_assert_data_3.file = "linear_search.i";
        __gen_e_acsl_assert_data_3.fct = "search";
        __gen_e_acsl_assert_data_3.line = 18;
        __gen_e_acsl_assert_data_3.name = "index_bound";
        __e_acsl_assert(0 <= __gen_e_acsl_i,& __gen_e_acsl_assert_data_3);
        __e_acsl_assert_clean(& __gen_e_acsl_assert_data_3);
        if (A[__gen_e_acsl_i] < elt) ;
        else {
          __gen_e_acsl_forall = 0;
          goto e_acsl_end_loop1;
        }
      }
      __gen_e_acsl_i ++;
    }
    e_acsl_end_loop1: ;
    __e_acsl_assert_register_int(& __gen_e_acsl_assert_data,
                                 "\\forall integer i; 0 <= i < k ==> A[i] < elt",
                                 0,__gen_e_acsl_forall);
    __gen_e_acsl_assert_data.blocking = 1;
    __gen_e_acsl_assert_data.kind = "Invariant";
    __gen_e_acsl_assert_data.pred_txt = "\\forall integer i; 0 <= i < k ==> A[i] < elt";
    __gen_e_acsl_assert_data.file = "linear_search.i";
    __gen_e_acsl_assert_data.fct = "search";
    __gen_e_acsl_assert_data.line = 18;
    __e_acsl_assert(__gen_e_acsl_forall,& __gen_e_acsl_assert_data);
    __e_acsl_assert_clean(& __gen_e_acsl_assert_data);
    __e_acsl_assert_data_t __gen_e_acsl_assert_data_4 =
      {.values = (void *)0};
    __e_acsl_assert_register_int(& __gen_e_acsl_assert_data_4,"k",0,k);
    if (0 <= k) {
      __e_acsl_assert_register_int(& __gen_e_acsl_assert_data_4,"k",0,k);
      __gen_e_acsl_and = k <= 10;
    }
    else __gen_e_acsl_and = 0;
    __gen_e_acsl_assert_data_4.blocking = 1;
    __gen_e_acsl_assert_data_4.kind = "Invariant";
    __gen_e_acsl_assert_data_4.pred_txt = "0 <= k <= 10";
    __gen_e_acsl_assert_data_4.file = "linear_search.i";
    __gen_e_acsl_assert_data_4.fct = "search";
    __gen_e_acsl_assert_data_4.line = 17;
    __e_acsl_assert(__gen_e_acsl_and,& __gen_e_acsl_assert_data_4);
    __e_acsl_assert_clean(& __gen_e_acsl_assert_data_4);
  }
  /*@ loop invariant 0 <= k <= 10;
      loop invariant \forall integer i; 0 <= i < k ==> A[i] < elt;
  */
  while (k < 10) {
    if (A[k] == elt) {
      __retres = 1;
      goto return_label;
    }
    else 
      if (A[k] > elt) {
        __retres = 0;
        goto return_label;
      }
    {
      int __gen_e_acsl_and_2;
      int __gen_e_acsl_forall_2;
      int __gen_e_acsl_i_2;
      k ++;
      __e_acsl_assert_data_t __gen_e_acsl_assert_data_5 =
        {.values = (void *)0};
      __e_acsl_assert_register_int(& __gen_e_acsl_assert_data_5,"k",0,k);
      if (0 <= k) {
        __e_acsl_assert_register_int(& __gen_e_acsl_assert_data_5,"k",0,k);
        __gen_e_acsl_and_2 = k <= 10;
      }
      else __gen_e_acsl_and_2 = 0;
      __gen_e_acsl_assert_data_5.blocking = 1;
      __gen_e_acsl_assert_data_5.kind = "Invariant";
      __gen_e_acsl_assert_data_5.pred_txt = "0 <= k <= 10";
      __gen_e_acsl_assert_data_5.file = "linear_search.i";
      __gen_e_acsl_assert_data_5.fct = "search";
      __gen_e_acsl_assert_data_5.line = 17;
      __e_acsl_assert(__gen_e_acsl_and_2,& __gen_e_acsl_assert_data_5);
      __e_acsl_assert_clean(& __gen_e_acsl_assert_data_5);
      __e_acsl_assert_data_t __gen_e_acsl_assert_data_6 =
        {.values = (void *)0};
      __gen_e_acsl_forall_2 = 1;
      __gen_e_acsl_i_2 = 0;
      while (1) {
        if (__gen_e_acsl_i_2 < k) ; else break;
        {
          __e_acsl_assert_data_t __gen_e_acsl_assert_data_7 =
            {.values = (void *)0};
          __e_acsl_assert_register_int(& __gen_e_acsl_assert_data_7,
                                       "__gen_e_acsl_i_2",0,__gen_e_acsl_i_2);
          __gen_e_acsl_assert_data_7.blocking = 1;
          __gen_e_acsl_assert_data_7.kind = "RTE";
          __gen_e_acsl_assert_data_7.pred_txt = "__gen_e_acsl_i_2 < 10";
          __gen_e_acsl_assert_data_7.file = "linear_search.i";
          __gen_e_acsl_assert_data_7.fct = "search";
          __gen_e_acsl_assert_data_7.line = 18;
          __gen_e_acsl_assert_data_7.name = "index_bound";
          __e_acsl_assert(__gen_e_acsl_i_2 < 10,& __gen_e_acsl_assert_data_7);
          __e_acsl_assert_clean(& __gen_e_acsl_assert_data_7);
          __e_acsl_assert_data_t __gen_e_acsl_assert_data_8 =
            {.values = (void *)0};
          __e_acsl_assert_register_int(& __gen_e_acsl_assert_data_8,
                                       "__gen_e_acsl_i_2",0,__gen_e_acsl_i_2);
          __gen_e_acsl_assert_data_8.blocking = 1;
          __gen_e_acsl_assert_data_8.kind = "RTE";
          __gen_e_acsl_assert_data_8.pred_txt = "0 <= __gen_e_acsl_i_2";
          __gen_e_acsl_assert_data_8.file = "linear_search.i";
          __gen_e_acsl_assert_data_8.fct = "search";
          __gen_e_acsl_assert_data_8.line = 18;
          __gen_e_acsl_assert_data_8.name = "index_bound";
          __e_acsl_assert(0 <= __gen_e_acsl_i_2,& __gen_e_acsl_assert_data_8);
          __e_acsl_assert_clean(& __gen_e_acsl_assert_data_8);
          if (A[__gen_e_acsl_i_2] < elt) ;
          else {
            __gen_e_acsl_forall_2 = 0;
            goto e_acsl_end_loop2;
          }
        }
        __gen_e_acsl_i_2 ++;
      }
      e_acsl_end_loop2: ;
      __e_acsl_assert_register_int(& __gen_e_acsl_assert_data_6,
                                   "\\forall integer i; 0 <= i < k ==> A[i] < elt",
                                   0,__gen_e_acsl_forall_2);
      __gen_e_acsl_assert_data_6.blocking = 1;
      __gen_e_acsl_assert_data_6.kind = "Invariant";
      __gen_e_acsl_assert_data_6.pred_txt = "\\forall integer i; 0 <= i < k ==> A[i] < elt";
      __gen_e_acsl_assert_data_6.file = "linear_search.i";
      __gen_e_acsl_assert_data_6.fct = "search";
      __gen_e_acsl_assert_data_6.line = 18;
      __e_acsl_assert(__gen_e_acsl_forall_2,& __gen_e_acsl_assert_data_6);
      __e_acsl_assert_clean(& __gen_e_acsl_assert_data_6);
    }
  }
  __retres = 0;
  return_label: return __retres;
}

int main(void)
{
  int __retres;
  int found;
  __e_acsl_memory_init((int *)0,(char ***)0,8UL);
  {
    int i = 0;
    while (i < 10) {
      A[i] = i * i;
      i ++;
    }
  }
  found = __gen_e_acsl_search(36);
  {
    __e_acsl_assert_data_t __gen_e_acsl_assert_data = {.values = (void *)0};
    __e_acsl_assert_register_int(& __gen_e_acsl_assert_data,"found",0,found);
    __gen_e_acsl_assert_data.blocking = 1;
    __gen_e_acsl_assert_data.kind = "Assertion";
    __gen_e_acsl_assert_data.pred_txt = "found == 1";
    __gen_e_acsl_assert_data.file = "linear_search.i";
    __gen_e_acsl_assert_data.fct = "main";
    __gen_e_acsl_assert_data.line = 34;
    __e_acsl_assert(found == 1,& __gen_e_acsl_assert_data);
    __e_acsl_assert_clean(& __gen_e_acsl_assert_data);
  }
  /*@ assert found == 1; */ ;
  found = __gen_e_acsl_search(5);
  {
    __e_acsl_assert_data_t __gen_e_acsl_assert_data_2 =
      {.values = (void *)0};
    __e_acsl_assert_register_int(& __gen_e_acsl_assert_data_2,"found",0,
                                 found);
    __gen_e_acsl_assert_data_2.blocking = 1;
    __gen_e_acsl_assert_data_2.kind = "Assertion";
    __gen_e_acsl_assert_data_2.pred_txt = "found == 0";
    __gen_e_acsl_assert_data_2.file = "linear_search.i";
    __gen_e_acsl_assert_data_2.fct = "main";
    __gen_e_acsl_assert_data_2.line = 37;
    __e_acsl_assert(found == 0,& __gen_e_acsl_assert_data_2);
    __e_acsl_assert_clean(& __gen_e_acsl_assert_data_2);
  }
  /*@ assert found == 0; */ ;
  __retres = 0;
  __e_acsl_memory_clean();
  return __retres;
}

/*@ requires \forall integer i; 0 <= i < 9 ==> A[i] <= A[i + 1];
    
    behavior exists:
      assumes \exists integer j; 0 <= j < 10 && A[j] == elt;
      ensures \result == 1;
    
    behavior not_exists:
      assumes \forall integer j; 0 <= j < 10 ==> A[j] != elt;
      ensures \result == 0;
 */
int __gen_e_acsl_search(int elt)
{
  __e_acsl_contract_t *__gen_e_acsl_contract;
  int __retres;
  {
    int __gen_e_acsl_forall;
    int __gen_e_acsl_i;
    int __gen_e_acsl_exists;
    int __gen_e_acsl_j;
    int __gen_e_acsl_forall_2;
    int __gen_e_acsl_j_2;
    __gen_e_acsl_contract = __e_acsl_contract_init(2UL);
    __e_acsl_assert_data_t __gen_e_acsl_assert_data = {.values = (void *)0};
    __gen_e_acsl_forall = 1;
    __gen_e_acsl_i = 0;
    while (1) {
      if (__gen_e_acsl_i < 9) ; else break;
      {
        __e_acsl_assert_data_t __gen_e_acsl_assert_data_2 =
          {.values = (void *)0};
        __e_acsl_assert_register_int(& __gen_e_acsl_assert_data_2,
                                     "__gen_e_acsl_i",0,__gen_e_acsl_i);
        __gen_e_acsl_assert_data_2.blocking = 1;
        __gen_e_acsl_assert_data_2.kind = "RTE";
        __gen_e_acsl_assert_data_2.pred_txt = "(int)(__gen_e_acsl_i + 1) < 10";
        __gen_e_acsl_assert_data_2.file = "linear_search.i";
        __gen_e_acsl_assert_data_2.fct = "search";
        __gen_e_acsl_assert_data_2.line = 7;
        __gen_e_acsl_assert_data_2.name = "index_bound";
        __e_acsl_assert((int)(__gen_e_acsl_i + 1L) < 10,
                        & __gen_e_acsl_assert_data_2);
        __e_acsl_assert_clean(& __gen_e_acsl_assert_data_2);
        __e_acsl_assert_data_t __gen_e_acsl_assert_data_3 =
          {.values = (void *)0};
        __e_acsl_assert_register_int(& __gen_e_acsl_assert_data_3,
                                     "__gen_e_acsl_i",0,__gen_e_acsl_i);
        __gen_e_acsl_assert_data_3.blocking = 1;
        __gen_e_acsl_assert_data_3.kind = "RTE";
        __gen_e_acsl_assert_data_3.pred_txt = "0 <= (int)(__gen_e_acsl_i + 1)";
        __gen_e_acsl_assert_data_3.file = "linear_search.i";
        __gen_e_acsl_assert_data_3.fct = "search";
        __gen_e_acsl_assert_data_3.line = 7;
        __gen_e_acsl_assert_data_3.name = "index_bound";
        __e_acsl_assert(0 <= (int)(__gen_e_acsl_i + 1L),
                        & __gen_e_acsl_assert_data_3);
        __e_acsl_assert_clean(& __gen_e_acsl_assert_data_3);
        __e_acsl_assert_data_t __gen_e_acsl_assert_data_4 =
          {.values = (void *)0};
        __e_acsl_assert_register_int(& __gen_e_acsl_assert_data_4,
                                     "__gen_e_acsl_i",0,__gen_e_acsl_i);
        __gen_e_acsl_assert_data_4.blocking = 1;
        __gen_e_acsl_assert_data_4.kind = "RTE";
        __gen_e_acsl_assert_data_4.pred_txt = "__gen_e_acsl_i < 10";
        __gen_e_acsl_assert_data_4.file = "linear_search.i";
        __gen_e_acsl_assert_data_4.fct = "search";
        __gen_e_acsl_assert_data_4.line = 7;
        __gen_e_acsl_assert_data_4.name = "index_bound";
        __e_acsl_assert(__gen_e_acsl_i < 10,& __gen_e_acsl_assert_data_4);
        __e_acsl_assert_clean(& __gen_e_acsl_assert_data_4);
        __e_acsl_assert_data_t __gen_e_acsl_assert_data_5 =
          {.values = (void *)0};
        __e_acsl_assert_register_int(& __gen_e_acsl_assert_data_5,
                                     "__gen_e_acsl_i",0,__gen_e_acsl_i);
        __gen_e_acsl_assert_data_5.blocking = 1;
        __gen_e_acsl_assert_data_5.kind = "RTE";
        __gen_e_acsl_assert_data_5.pred_txt = "0 <= __gen_e_acsl_i";
        __gen_e_acsl_assert_data_5.file = "linear_search.i";
        __gen_e_acsl_assert_data_5.fct = "search";
        __gen_e_acsl_assert_data_5.line = 7;
        __gen_e_acsl_assert_data_5.name = "index_bound";
        __e_acsl_assert(0 <= __gen_e_acsl_i,& __gen_e_acsl_assert_data_5);
        __e_acsl_assert_clean(& __gen_e_acsl_assert_data_5);
        if (A[__gen_e_acsl_i] <= A[__gen_e_acsl_i + 1]) ;
        else {
          __gen_e_acsl_forall = 0;
          goto e_acsl_end_loop3;
        }
      }
      __gen_e_acsl_i ++;
    }
    e_acsl_end_loop3: ;
    __e_acsl_assert_register_int(& __gen_e_acsl_assert_data,
                                 "\\forall integer i; 0 <= i < 9 ==> A[i] <= A[i + 1]",
                                 0,__gen_e_acsl_forall);
    __gen_e_acsl_assert_data.blocking = 1;
    __gen_e_acsl_assert_data.kind = "Precondition";
    __gen_e_acsl_assert_data.pred_txt = "\\forall integer i; 0 <= i < 9 ==> A[i] <= A[i + 1]";
    __gen_e_acsl_assert_data.file = "linear_search.i";
    __gen_e_acsl_assert_data.fct = "search";
    __gen_e_acsl_assert_data.line = 7;
    __e_acsl_assert(__gen_e_acsl_forall,& __gen_e_acsl_assert_data);
    __e_acsl_assert_clean(& __gen_e_acsl_assert_data);
    __gen_e_acsl_exists = 0;
    __gen_e_acsl_j = 0;
    while (1) {
      if (__gen_e_acsl_j < 10) ; else break;
      {
        __e_acsl_assert_data_t __gen_e_acsl_assert_data_6 =
          {.values = (void *)0};
        __e_acsl_assert_register_int(& __gen_e_acsl_assert_data_6,
                                     "__gen_e_acsl_j",0,__gen_e_acsl_j);
        __gen_e_acsl_assert_data_6.blocking = 1;
        __gen_e_acsl_assert_data_6.kind = "RTE";
        __gen_e_acsl_assert_data_6.pred_txt = "__gen_e_acsl_j < 10";
        __gen_e_acsl_assert_data_6.file = "linear_search.i";
        __gen_e_acsl_assert_data_6.fct = "search";
        __gen_e_acsl_assert_data_6.line = 9;
        __gen_e_acsl_assert_data_6.name = "index_bound";
        __e_acsl_assert(__gen_e_acsl_j < 10,& __gen_e_acsl_assert_data_6);
        __e_acsl_assert_clean(& __gen_e_acsl_assert_data_6);
        __e_acsl_assert_data_t __gen_e_acsl_assert_data_7 =
          {.values = (void *)0};
        __e_acsl_assert_register_int(& __gen_e_acsl_assert_data_7,
                                     "__gen_e_acsl_j",0,__gen_e_acsl_j);
        __gen_e_acsl_assert_data_7.blocking = 1;
        __gen_e_acsl_assert_data_7.kind = "RTE";
        __gen_e_acsl_assert_data_7.pred_txt = "0 <= __gen_e_acsl_j";
        __gen_e_acsl_assert_data_7.file = "linear_search.i";
        __gen_e_acsl_assert_data_7.fct = "search";
        __gen_e_acsl_assert_data_7.line = 9;
        __gen_e_acsl_assert_data_7.name = "index_bound";
        __e_acsl_assert(0 <= __gen_e_acsl_j,& __gen_e_acsl_assert_data_7);
        __e_acsl_assert_clean(& __gen_e_acsl_assert_data_7);
        if (! (A[__gen_e_acsl_j] == elt)) ;
        else {
          __gen_e_acsl_exists = 1;
          goto e_acsl_end_loop4;
        }
      }
      __gen_e_acsl_j ++;
    }
    e_acsl_end_loop4: ;
    __e_acsl_contract_set_behavior_assumes(__gen_e_acsl_contract,0UL,
                                           __gen_e_acsl_exists);
    __gen_e_acsl_forall_2 = 1;
    __gen_e_acsl_j_2 = 0;
    while (1) {
      if (__gen_e_acsl_j_2 < 10) ; else break;
      {
        __e_acsl_assert_data_t __gen_e_acsl_assert_data_8 =
          {.values = (void *)0};
        __e_acsl_assert_register_int(& __gen_e_acsl_assert_data_8,
                                     "__gen_e_acsl_j_2",0,__gen_e_acsl_j_2);
        __gen_e_acsl_assert_data_8.blocking = 1;
        __gen_e_acsl_assert_data_8.kind = "RTE";
        __gen_e_acsl_assert_data_8.pred_txt = "__gen_e_acsl_j_2 < 10";
        __gen_e_acsl_assert_data_8.file = "linear_search.i";
        __gen_e_acsl_assert_data_8.fct = "search";
        __gen_e_acsl_assert_data_8.line = 12;
        __gen_e_acsl_assert_data_8.name = "index_bound";
        __e_acsl_assert(__gen_e_acsl_j_2 < 10,& __gen_e_acsl_assert_data_8);
        __e_acsl_assert_clean(& __gen_e_acsl_assert_data_8);
        __e_acsl_assert_data_t __gen_e_acsl_assert_data_9 =
          {.values = (void *)0};
        __e_acsl_assert_register_int(& __gen_e_acsl_assert_data_9,
                                     "__gen_e_acsl_j_2",0,__gen_e_acsl_j_2);
        __gen_e_acsl_assert_data_9.blocking = 1;
        __gen_e_acsl_assert_data_9.kind = "RTE";
        __gen_e_acsl_assert_data_9.pred_txt = "0 <= __gen_e_acsl_j_2";
        __gen_e_acsl_assert_data_9.file = "linear_search.i";
        __gen_e_acsl_assert_data_9.fct = "search";
        __gen_e_acsl_assert_data_9.line = 12;
        __gen_e_acsl_assert_data_9.name = "index_bound";
        __e_acsl_assert(0 <= __gen_e_acsl_j_2,& __gen_e_acsl_assert_data_9);
        __e_acsl_assert_clean(& __gen_e_acsl_assert_data_9);
        if (A[__gen_e_acsl_j_2] != elt) ;
        else {
          __gen_e_acsl_forall_2 = 0;
          goto e_acsl_end_loop5;
        }
      }
      __gen_e_acsl_j_2 ++;
    }
    e_acsl_end_loop5: ;
    __e_acsl_contract_set_behavior_assumes(__gen_e_acsl_contract,1UL,
                                           __gen_e_acsl_forall_2);
  }
  __retres = search(elt);
  {
    int __gen_e_acsl_assumes_value;
    __gen_e_acsl_assumes_value = __e_acsl_contract_get_behavior_assumes
    ((__e_acsl_contract_t const *)__gen_e_acsl_contract,0UL);
    if (__gen_e_acsl_assumes_value) {
      __e_acsl_assert_data_t __gen_e_acsl_assert_data_10 =
        {.values = (void *)0};
      __e_acsl_assert_register_int(& __gen_e_acsl_assert_data_10,"\\result",
                                   0,__retres);
      __gen_e_acsl_assert_data_10.blocking = 1;
      __gen_e_acsl_assert_data_10.kind = "Postcondition";
      __gen_e_acsl_assert_data_10.pred_txt = "\\result == 1";
      __gen_e_acsl_assert_data_10.file = "linear_search.i";
      __gen_e_acsl_assert_data_10.fct = "search";
      __gen_e_acsl_assert_data_10.line = 10;
      __gen_e_acsl_assert_data_10.name = "exists";
      __e_acsl_assert(__retres == 1,& __gen_e_acsl_assert_data_10);
      __e_acsl_assert_clean(& __gen_e_acsl_assert_data_10);
    }
    __gen_e_acsl_assumes_value = __e_acsl_contract_get_behavior_assumes
    ((__e_acsl_contract_t const *)__gen_e_acsl_contract,1UL);
    if (__gen_e_acsl_assumes_value) {
      __e_acsl_assert_data_t __gen_e_acsl_assert_data_11 =
        {.values = (void *)0};
      __e_acsl_assert_register_int(& __gen_e_acsl_assert_data_11,"\\result",
                                   0,__retres);
      __gen_e_acsl_assert_data_11.blocking = 1;
      __gen_e_acsl_assert_data_11.kind = "Postcondition";
      __gen_e_acsl_assert_data_11.pred_txt = "\\result == 0";
      __gen_e_acsl_assert_data_11.file = "linear_search.i";
      __gen_e_acsl_assert_data_11.fct = "search";
      __gen_e_acsl_assert_data_11.line = 13;
      __gen_e_acsl_assert_data_11.name = "not_exists";
      __e_acsl_assert(__retres == 0,& __gen_e_acsl_assert_data_11);
      __e_acsl_assert_clean(& __gen_e_acsl_assert_data_11);
    }
    __e_acsl_contract_clean(__gen_e_acsl_contract);
    return __retres;
  }
}


