diff --git a/src/plugins/e-acsl/TODO b/src/plugins/e-acsl/TODO
index 6b2b9ea9597f42cd0b432852baf9c2e4b1f433e5..196b0a77559158d1a6c4a55aefeb863f7a77544e 100644
--- a/src/plugins/e-acsl/TODO
+++ b/src/plugins/e-acsl/TODO
@@ -32,7 +32,7 @@
 - [Bernard] avoir une fonction
   e_acsl_trace_behavior(char *bhv_name) {}
 ‡ appeler dËs qu'un behavior est activÈ
-- meilleur schÈma de compilation des assumes:
+- meilleur schÈma de compilation des assumes (not possible in multi-bhv?):
   if (assume_bhv) {
     e_acsl_trace_behavior(bhv_name);
     requires_bhv;
diff --git a/src/plugins/e-acsl/env.ml b/src/plugins/e-acsl/env.ml
index bff968f74d48293892329b001a17536d29835c57..79e4f7e58653bc18601b41fd1bd7f75fed04ae0d 100644
--- a/src/plugins/e-acsl/env.ml
+++ b/src/plugins/e-acsl/env.ml
@@ -172,9 +172,7 @@ module Logic_binding = struct
   let add env logic_v =
   let v_ref = ref Varinfo.dummy in
   let mk v _ = v_ref := v; [] in
-  let ty = 
-    (* TODO: yet incorrect. Waiting for the type system... *)
-    match logic_v.lv_type with
+  let ty = match logic_v.lv_type with
     | Ctype ty -> ty
     | Linteger -> Mpz.t
     | Ltype _ | Lvar _ | Lreal | Larrow _ -> assert false
@@ -228,7 +226,7 @@ let extend_stmt_in_place env stmt ~pre block =
     env
 
 let push env = 
-  (*  Options.feedback "push";*)
+(*  Options.feedback "push (was %d)" (List.length env.env_stack);*)
   let local_env = { block_info = empty_block; mpz_tbl = empty_mpz_tbl } in
   { env with env_stack = local_env :: env.env_stack }
 
@@ -239,7 +237,7 @@ let pop env =
 
 type where = Before | Middle | After
 let pop_and_get env stmt ~global_clear where =
-(*  Options.feedback "pop_and_get";*)
+  (*  Options.feedback "pop_and_get (%d)" (List.length env.env_stack); *)
   let local_env, tl = top env in
   let clear = 
     if global_clear then 
diff --git a/src/plugins/e-acsl/misc.mli b/src/plugins/e-acsl/misc.mli
index cc77f4e29a9b8a2520f3a848ba3b2b2f685b8bda..4af901ca135cf59b2b60fce1f53cca8f727a87f9 100644
--- a/src/plugins/e-acsl/misc.mli
+++ b/src/plugins/e-acsl/misc.mli
@@ -33,6 +33,7 @@ val new_lval: ?loc:Location.t -> varinfo -> exp
 (* [TODO] put it in the Frama-C kernel? *)
 
 val mk_call: ?loc:Location.t -> ?result:lval -> string -> exp list -> stmt
+
 val mk_e_acsl_guard: ?reverse:bool -> exp -> predicate named -> stmt
 val e_acsl_header: unit -> global
 
diff --git a/src/plugins/e-acsl/mpz.ml b/src/plugins/e-acsl/mpz.ml
index 76d08e0940efd8468f22af218762063a48dbe5df..68bdfa58b23d1533464d0c67cb8c37c2c8cfc90c 100644
--- a/src/plugins/e-acsl/mpz.ml
+++ b/src/plugins/e-acsl/mpz.ml
@@ -39,23 +39,33 @@ let apply_on_var funname e = Misc.mk_call ("__gmpz_" ^ funname) [ e ]
 let init = apply_on_var "init"
 let clear = apply_on_var "clear"
 
-let init_set v e =
+let get_set_suffix_and_arg e = 
   let ty = typeOf e in
-  if is_t ty then
-    Misc.mk_call "__gmpz_init_set" [ v; e ]
+  if is_t ty then "", [ e ]
   else
-    let fname, args = match ty with
-      | TInt((IBool | IChar | IUChar | IUInt | IUShort | IULong), _) ->
-	"ui", [ e ]
-      | TInt((ISChar | IShort | IInt | ILong), _) -> "si", [ e ]
-      | TInt((ILongLong | IULongLong), _) -> assert false
-      | TPtr(TInt(IChar, _), _) ->
-	"str",
+    match unrollType ty with
+    | TInt(IChar, _) -> 
+      (if theMachine.char_is_unsigned then "_ui" else "_si"), [ e ]
+    | TInt((IBool | IUChar | IUInt | IUShort | IULong), _) ->
+      "_ui", [ e ]
+    | TInt((ISChar | IShort | IInt | ILong), _) -> "_si", [ e ]
+    | TInt((ILongLong | IULongLong), _) -> assert false
+    | TPtr(TInt(IChar, _), _) ->
+      "_str",
 	(* decimal base for the number given as string *)
-	[ e; integer ~loc:Location.unknown 10 ]
-      | _ -> assert false
-    in
-    Misc.mk_call ("__gmpz_init_set_" ^ fname) (v :: args)
+      [ e; integer ~loc:Location.unknown 10 ]
+    | _ -> assert false
+
+let generic_affect fname lv ev e =
+  let ty = typeOf ev in
+  if is_t ty then 
+    let suf, args = get_set_suffix_and_arg e in
+    Misc.mk_call (fname ^ suf) (ev :: args)
+  else
+    mkStmtOneInstr ~valid_sid:true (Set(lv, e, Location.unknown))
+
+let init_set = generic_affect "__gmpz_init_set"
+let affect = generic_affect "__gmpz_set"
 
 (*
 Local Variables:
diff --git a/src/plugins/e-acsl/mpz.mli b/src/plugins/e-acsl/mpz.mli
index 71693cbb5b74a493c00fa21c573bd99c8a473b78..beed2b87abd63e3de5ca09ef955cd1ac68526347 100644
--- a/src/plugins/e-acsl/mpz.mli
+++ b/src/plugins/e-acsl/mpz.mli
@@ -36,13 +36,17 @@ val is_t: typ -> bool
 val init: exp -> stmt
   (** build stmt "mpz_init(v)" *)
 
-val init_set: exp -> exp -> stmt
-  (** build stmt "mpz_init_set*(v, e)" with the good function 'set' according
-      to the type of e *)
+val init_set: lval -> exp -> exp -> stmt
+(** [init_set x_as_lv x_as_exp e] builds stmt [x = e] or [mpz_init_set*(v, e)]
+    with the good function 'set' according to the type of e *)
 
 val clear: exp -> stmt
 (** build stmt "mpz_clear(v)" *)
 
+val affect: lval -> exp -> exp -> stmt
+(** [affect x_as_lv x_as_exp e] builds stmt [x = e] or [mpz_set*(e)] with the
+    good function 'set' according to the type of e *)
+
 (*
 Local Variables:
 compile-command: "make"
diff --git a/src/plugins/e-acsl/options.ml b/src/plugins/e-acsl/options.ml
index 180d23a406c3c17b4520a0a5e14815fd26cbc957..0a1c37de2582967cda8353a6136ab82a1a8bf82c 100644
--- a/src/plugins/e-acsl/options.ml
+++ b/src/plugins/e-acsl/options.ml
@@ -33,7 +33,7 @@ module Check =
   False
     (struct
       let option_name = "-e-acsl-check"
-      let help = "abort on E-ACSL type checking error"
+      let help = "only type check E-ACSL annotated program"
       let kind = `Correctness
      end)
 
diff --git a/src/plugins/e-acsl/share/e-acsl/e_acsl_gmp.h b/src/plugins/e-acsl/share/e-acsl/e_acsl_gmp.h
index 8c12937a548de97bb059238f0c9e0331b0f54e36..fd3290860b2e460b2f30876d3acf5fc7f42227f6 100644
--- a/src/plugins/e-acsl/share/e-acsl/e_acsl_gmp.h
+++ b/src/plugins/e-acsl/share/e-acsl/e_acsl_gmp.h
@@ -20,17 +20,20 @@
 /*                                                                        */
 /**************************************************************************/
 
-/*****************/
-/* GMP functions */
-/*****************/
+/******************/
+/* GMP prototypes */
+/******************/
 
-// initilializers
+/****************/
+/* Initializers */
+/****************/
 
 /*@ ensures \valid(x);
   @ assigns *x; */
 extern void __gmpz_init(mpz_t x);
 
-/*@ ensures \valid(z);
+/*@ requires \valid(z_orig);
+  @ ensures \valid(z);
   @ assigns *z; */
 extern void __gmpz_init_set(mpz_t z, const mpz_t z_orig);
 
@@ -46,19 +49,44 @@ extern void __gmpz_init_set_si(mpz_t z, signed long int n);
   @ assigns *z; */
 extern int __gmpz_init_set_str(mpz_t z, const char *str, int base);
 
-// finalizer
+/***************/
+/* Assignments */
+/***************/
+
+/*@ requires \valid(z_orig);
+  @ requires \valid(z);
+  @ assigns *z; */
+extern void __gmpz_set(mpz_t z, const mpz_t z_orig);
+
+/*@ requires \valid(z);
+  @ assigns *z \from n; */
+extern void __gmpz_set_ui(mpz_t z, unsigned long int n);
+
+/*@ requires \valid(z);
+  @ assigns *z \from n; */
+extern void __gmpz_set_si(mpz_t z, signed long int n);
+
+/*************/
+/* Finalizer */
+/*************/
 
 /*@ requires \valid(x);
   @ assigns *x; */
 extern void __gmpz_clear(mpz_t x);
 
-// logical and arithmetic operators
+/********************/
+/* Logical operator */
+/********************/
 
 /*@ requires \valid(z1);
   @ requires \valid(z2);
   @ assigns \nothing; */
 extern int __gmpz_cmp(const mpz_t z1, const mpz_t z2);
 
+/***********************/
+/* Arithmetic operator */
+/***********************/
+
 /*@ requires \valid(z1);
   @ requires \valid(z2);
   @ assigns *z1; */
@@ -99,7 +127,9 @@ extern void __gmpz_tdiv_q(mpz_t z1, const mpz_t z2, const mpz_t z3);
   @ assigns *z1; */
 extern void __gmpz_tdiv_r(mpz_t z1, const mpz_t z2, const mpz_t z3);
 
-// coercions to C int
+/************************/
+/* Coercions to C types */
+/************************/
 
 /*@ requires \valid(z); 
   @ assigns \nothing; */
diff --git a/src/plugins/e-acsl/tests/e-acsl-reject/oracle/quantif.res.oracle b/src/plugins/e-acsl/tests/e-acsl-reject/oracle/quantif.res.oracle
index bd9b453acb56403ec5f54d77505bc0d74b92da03..5d9fd0a9eda87a6b8e7693521378e90ca73e6f4d 100644
--- a/src/plugins/e-acsl/tests/e-acsl-reject/oracle/quantif.res.oracle
+++ b/src/plugins/e-acsl/tests/e-acsl-reject/oracle/quantif.res.oracle
@@ -14,7 +14,7 @@ tests/e-acsl-reject/quantif.i:10:[e-acsl] warning: invalid E-ACSL construct
                   (∀ ℤ x, ℤ y; 0 ≤ x ∧ x ≤ 3 ⇒ x ≥ 0)'.
                   Ignoring annotation.
 tests/e-acsl-reject/quantif.i:11:[e-acsl] warning: invalid E-ACSL construct
-                  `unquantified variable z in quantification
+                  `too much constraint(s) in quantification
                   (∀ ℤ x; (0 ≤ x ∧ x ≤ 3) ∧ (0 ≤ z ∧ z ≤ 3) ⇒ x ≥ 0)'.
                   Ignoring annotation.
 tests/e-acsl-reject/quantif.i:12:[e-acsl] warning: invalid E-ACSL construct
@@ -25,5 +25,15 @@ tests/e-acsl-reject/quantif.i:12:[e-acsl] warning: invalid E-ACSL construct
 tests/e-acsl-reject/quantif.i:13:[e-acsl] warning: invalid E-ACSL construct
                   `invalid binder x+1 in quantification (∀ int x; 0 ≤ x+1 ∧ x+1 ≤ 3 ⇒ x ≥ 0)'.
                   Ignoring annotation.
-[e-acsl] 7 annotations were ignored, being untypable.
+tests/e-acsl-reject/quantif.i:14:[e-acsl] warning: invalid E-ACSL construct
+                  `too much constraint(s) in quantification
+                  (∀ ℤ x; (0 ≤ x ∧ x < 10) ∧ (9 ≤ x ∧ x < 20) ⇒ x > z)'.
+                  Ignoring annotation.
+tests/e-acsl-reject/quantif.i:15:[e-acsl] warning: invalid E-ACSL construct
+                  `invalid binder y in quantification
+                  (∀ ℤ x, ℤ z, ℤ y;
+                    ((0 ≤ x ∧ x < 2) ∧ (0 ≤ y ∧ y < 5)) ∧ (0 ≤ z ∧ z ≤ y) ⇒
+                    x+z ≤ y+1)'.
+                  Ignoring annotation.
+[e-acsl] 9 annotations were ignored, being untypable.
 [e-acsl] 1 annotation was ignored, being unsupported.
diff --git a/src/plugins/e-acsl/tests/e-acsl-reject/quantif.i b/src/plugins/e-acsl/tests/e-acsl-reject/quantif.i
index 3e460b7e88f193bf24f321db6d5dabcba1a8c9f5..399d330d0eafbbc0c11ca72afed5d3639b0df6c2 100644
--- a/src/plugins/e-acsl/tests/e-acsl-reject/quantif.i
+++ b/src/plugins/e-acsl/tests/e-acsl-reject/quantif.i
@@ -11,5 +11,8 @@ int main(void) {
   /*@ assert \forall integer x; 0 <= x <= 3 && 0 <= z <= 3 ==> x >= 0; */
   /*@ assert \forall integer x,y; 0 <= x <= 3 || 0 <= y <= 3 ==> x >= 0; */
   /*@ assert \forall int x; 0 <= x+1 <= 3 ==> x >= 0; */
+  /*@ assert \forall integer x; 0 <= x < 10 && 9 <= x < 20 ==> x > z; */
+  /*@ assert \forall integer x,z,y; 0 <= x < 2 && 0 <= y < 5 && 0 <= z <= y
+    ==> x+z <= y+1; */ 
   return 0;
 }
diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/addrOf.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/addrOf.res.oracle
index c9325f8777a75d84a78ca4205aea7e70f7b2a186..04ddc6bdc8fc3d7f49b1fd35176b2ec4ce392f85 100644
--- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/addrOf.res.oracle
+++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/addrOf.res.oracle
@@ -2,7 +2,7 @@
 [value] Computing initial state
 [value] Initial state computed
 [value] Values of globals at initialization
-PROJECT_FILE.i:200:[value] Assertion got status valid.
+PROJECT_FILE.i:230:[value] Assertion got status valid.
 [value] Recording results for main
 [value] done for function main
 [value] ====== VALUES COMPUTED ======
diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/arith.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/arith.res.oracle
index 496ec7bebca85b7e57a776f3e15ce798f6dba8f3..8625bcd3fd5284f76d619f2b5f9aa8d74052451c 100644
--- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/arith.res.oracle
+++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/arith.res.oracle
@@ -3,808 +3,808 @@
 [value] Computing initial state
 [value] Initial state computed
 [value] Values of globals at initialization
-PROJECT_FILE.i:202:[value] Assertion got status valid.
+PROJECT_FILE.i:232:[value] Assertion got status valid.
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:208.
-PROJECT_FILE.i:75:[value] Function __gmpz_init_set_si: postcondition got status valid.
+        Called from PROJECT_FILE.i:238.
+PROJECT_FILE.i:78:[value] Function __gmpz_init_set_si: postcondition got status valid.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init <- main.
-        Called from PROJECT_FILE.i:209.
-PROJECT_FILE.i:63:[value] Function __gmpz_init: postcondition got status valid.
+        Called from PROJECT_FILE.i:239.
+PROJECT_FILE.i:65:[value] Function __gmpz_init: postcondition got status valid.
 [value] Done for function __gmpz_init
 [value] computing for function __gmpz_neg <- main.
-        Called from PROJECT_FILE.i:210.
-PROJECT_FILE.i:101:[value] Function __gmpz_neg: precondition got status valid.
-PROJECT_FILE.i:102:[value] Function __gmpz_neg: precondition got status valid.
+        Called from PROJECT_FILE.i:240.
+PROJECT_FILE.i:129:[value] Function __gmpz_neg: precondition got status valid.
+PROJECT_FILE.i:130:[value] Function __gmpz_neg: precondition got status valid.
 [value] Done for function __gmpz_neg
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:211.
+        Called from PROJECT_FILE.i:241.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:212.
-PROJECT_FILE.i:91:[value] Function __gmpz_cmp: precondition got status valid.
-PROJECT_FILE.i:92:[value] Function __gmpz_cmp: precondition got status valid.
+        Called from PROJECT_FILE.i:242.
+PROJECT_FILE.i:115:[value] Function __gmpz_cmp: precondition got status valid.
+PROJECT_FILE.i:116:[value] Function __gmpz_cmp: precondition got status valid.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:213.
+        Called from PROJECT_FILE.i:243.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
-PROJECT_FILE.i:183:[value] Function exit: postcondition got status invalid.
+        Called from PROJECT_FILE.i:223.
+PROJECT_FILE.i:213:[value] Function exit: postcondition got status invalid.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:214.
-PROJECT_FILE.i:85:[value] Function __gmpz_clear: precondition got status valid.
+        Called from PROJECT_FILE.i:244.
+PROJECT_FILE.i:107:[value] Function __gmpz_clear: precondition got status valid.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:215.
+        Called from PROJECT_FILE.i:245.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:216.
+        Called from PROJECT_FILE.i:246.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:220:[value] Assertion got status valid.
+PROJECT_FILE.i:250:[value] Assertion got status valid.
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:226.
+        Called from PROJECT_FILE.i:256.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:227.
+        Called from PROJECT_FILE.i:257.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init <- main.
-        Called from PROJECT_FILE.i:228.
+        Called from PROJECT_FILE.i:258.
 [value] Done for function __gmpz_init
 [value] computing for function __gmpz_neg <- main.
-        Called from PROJECT_FILE.i:229.
+        Called from PROJECT_FILE.i:259.
 [value] Done for function __gmpz_neg
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:230.
+        Called from PROJECT_FILE.i:260.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:231.
+        Called from PROJECT_FILE.i:261.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:232.
+        Called from PROJECT_FILE.i:262.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:233.
+        Called from PROJECT_FILE.i:263.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:234.
+        Called from PROJECT_FILE.i:264.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:238:[value] Assertion got status valid.
+PROJECT_FILE.i:268:[value] Assertion got status valid.
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:243.
+        Called from PROJECT_FILE.i:273.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init <- main.
-        Called from PROJECT_FILE.i:244.
+        Called from PROJECT_FILE.i:274.
 [value] Done for function __gmpz_init
 [value] computing for function __gmpz_com <- main.
-        Called from PROJECT_FILE.i:245.
+        Called from PROJECT_FILE.i:275.
 [kernel] warning: No code for function __gmpz_com, default assigns generated
 [value] Done for function __gmpz_com
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:246.
+        Called from PROJECT_FILE.i:276.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:247.
+        Called from PROJECT_FILE.i:277.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:248.
+        Called from PROJECT_FILE.i:278.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:249.
+        Called from PROJECT_FILE.i:279.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:253:[value] Assertion got status valid.
+PROJECT_FILE.i:283:[value] Assertion got status valid.
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:261.
+        Called from PROJECT_FILE.i:291.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:262.
+        Called from PROJECT_FILE.i:292.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init <- main.
-        Called from PROJECT_FILE.i:263.
+        Called from PROJECT_FILE.i:293.
 [value] Done for function __gmpz_init
 [value] computing for function __gmpz_add <- main.
-        Called from PROJECT_FILE.i:264.
-PROJECT_FILE.i:106:[value] Function __gmpz_add: precondition got status valid.
-PROJECT_FILE.i:107:[value] Function __gmpz_add: precondition got status valid.
-PROJECT_FILE.i:108:[value] Function __gmpz_add: precondition got status valid.
+        Called from PROJECT_FILE.i:294.
+PROJECT_FILE.i:134:[value] Function __gmpz_add: precondition got status valid.
+PROJECT_FILE.i:135:[value] Function __gmpz_add: precondition got status valid.
+PROJECT_FILE.i:136:[value] Function __gmpz_add: precondition got status valid.
 [value] Done for function __gmpz_add
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:265.
+        Called from PROJECT_FILE.i:295.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init <- main.
-        Called from PROJECT_FILE.i:266.
+        Called from PROJECT_FILE.i:296.
 [value] Done for function __gmpz_init
 [value] computing for function __gmpz_neg <- main.
-        Called from PROJECT_FILE.i:267.
+        Called from PROJECT_FILE.i:297.
 [value] Done for function __gmpz_neg
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:268.
+        Called from PROJECT_FILE.i:298.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:269.
+        Called from PROJECT_FILE.i:299.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:270.
+        Called from PROJECT_FILE.i:300.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:271.
+        Called from PROJECT_FILE.i:301.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:272.
+        Called from PROJECT_FILE.i:302.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:273.
+        Called from PROJECT_FILE.i:303.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:274.
+        Called from PROJECT_FILE.i:304.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:278:[value] Assertion got status valid.
+PROJECT_FILE.i:308:[value] Assertion got status valid.
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:286.
+        Called from PROJECT_FILE.i:316.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:287.
+        Called from PROJECT_FILE.i:317.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init <- main.
-        Called from PROJECT_FILE.i:288.
+        Called from PROJECT_FILE.i:318.
 [value] Done for function __gmpz_init
 [value] computing for function __gmpz_sub <- main.
-        Called from PROJECT_FILE.i:289.
-PROJECT_FILE.i:112:[value] Function __gmpz_sub: precondition got status valid.
-PROJECT_FILE.i:113:[value] Function __gmpz_sub: precondition got status valid.
-PROJECT_FILE.i:114:[value] Function __gmpz_sub: precondition got status valid.
+        Called from PROJECT_FILE.i:319.
+PROJECT_FILE.i:140:[value] Function __gmpz_sub: precondition got status valid.
+PROJECT_FILE.i:141:[value] Function __gmpz_sub: precondition got status valid.
+PROJECT_FILE.i:142:[value] Function __gmpz_sub: precondition got status valid.
 [value] Done for function __gmpz_sub
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:290.
+        Called from PROJECT_FILE.i:320.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init <- main.
-        Called from PROJECT_FILE.i:291.
+        Called from PROJECT_FILE.i:321.
 [value] Done for function __gmpz_init
 [value] computing for function __gmpz_neg <- main.
-        Called from PROJECT_FILE.i:292.
+        Called from PROJECT_FILE.i:322.
 [value] Done for function __gmpz_neg
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:293.
+        Called from PROJECT_FILE.i:323.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:294.
+        Called from PROJECT_FILE.i:324.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:295.
+        Called from PROJECT_FILE.i:325.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:296.
+        Called from PROJECT_FILE.i:326.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:297.
+        Called from PROJECT_FILE.i:327.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:298.
+        Called from PROJECT_FILE.i:328.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:299.
+        Called from PROJECT_FILE.i:329.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:303:[value] Assertion got status valid.
+PROJECT_FILE.i:333:[value] Assertion got status valid.
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:311.
+        Called from PROJECT_FILE.i:341.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:312.
+        Called from PROJECT_FILE.i:342.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init <- main.
-        Called from PROJECT_FILE.i:313.
+        Called from PROJECT_FILE.i:343.
 [value] Done for function __gmpz_init
 [value] computing for function __gmpz_mul <- main.
-        Called from PROJECT_FILE.i:314.
-PROJECT_FILE.i:118:[value] Function __gmpz_mul: precondition got status valid.
-PROJECT_FILE.i:119:[value] Function __gmpz_mul: precondition got status valid.
-PROJECT_FILE.i:120:[value] Function __gmpz_mul: precondition got status valid.
+        Called from PROJECT_FILE.i:344.
+PROJECT_FILE.i:146:[value] Function __gmpz_mul: precondition got status valid.
+PROJECT_FILE.i:147:[value] Function __gmpz_mul: precondition got status valid.
+PROJECT_FILE.i:148:[value] Function __gmpz_mul: precondition got status valid.
 [value] Done for function __gmpz_mul
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:315.
+        Called from PROJECT_FILE.i:345.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init <- main.
-        Called from PROJECT_FILE.i:316.
+        Called from PROJECT_FILE.i:346.
 [value] Done for function __gmpz_init
 [value] computing for function __gmpz_neg <- main.
-        Called from PROJECT_FILE.i:317.
+        Called from PROJECT_FILE.i:347.
 [value] Done for function __gmpz_neg
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:318.
+        Called from PROJECT_FILE.i:348.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:319.
+        Called from PROJECT_FILE.i:349.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:320.
+        Called from PROJECT_FILE.i:350.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:321.
+        Called from PROJECT_FILE.i:351.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:322.
+        Called from PROJECT_FILE.i:352.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:323.
+        Called from PROJECT_FILE.i:353.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:324.
+        Called from PROJECT_FILE.i:354.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:328:[value] Assertion got status valid.
+PROJECT_FILE.i:358:[value] Assertion got status valid.
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:337.
+        Called from PROJECT_FILE.i:367.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:338.
+        Called from PROJECT_FILE.i:368.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_get_si <- main.
-        Called from PROJECT_FILE.i:339.
-PROJECT_FILE.i:138:[value] Function __gmpz_get_si: precondition got status valid.
+        Called from PROJECT_FILE.i:369.
+PROJECT_FILE.i:168:[value] Function __gmpz_get_si: precondition got status valid.
 [value] Done for function __gmpz_get_si
 [value] computing for function __gmpz_init <- main.
-        Called from PROJECT_FILE.i:340.
+        Called from PROJECT_FILE.i:370.
 [value] Done for function __gmpz_init
-PROJECT_FILE.i:341:[value] Assertion got status valid.
+PROJECT_FILE.i:371:[value] Assertion got status valid.
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:342.
+        Called from PROJECT_FILE.i:372.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_tdiv_q <- main.
-        Called from PROJECT_FILE.i:343.
-PROJECT_FILE.i:124:[value] Function __gmpz_tdiv_q: precondition got status valid.
-PROJECT_FILE.i:125:[value] Function __gmpz_tdiv_q: precondition got status valid.
-PROJECT_FILE.i:126:[value] Function __gmpz_tdiv_q: precondition got status valid.
+        Called from PROJECT_FILE.i:373.
+PROJECT_FILE.i:152:[value] Function __gmpz_tdiv_q: precondition got status valid.
+PROJECT_FILE.i:153:[value] Function __gmpz_tdiv_q: precondition got status valid.
+PROJECT_FILE.i:154:[value] Function __gmpz_tdiv_q: precondition got status valid.
 [value] Done for function __gmpz_tdiv_q
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:344.
+        Called from PROJECT_FILE.i:374.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init <- main.
-        Called from PROJECT_FILE.i:345.
+        Called from PROJECT_FILE.i:375.
 [value] Done for function __gmpz_init
 [value] computing for function __gmpz_neg <- main.
-        Called from PROJECT_FILE.i:346.
+        Called from PROJECT_FILE.i:376.
 [value] Done for function __gmpz_neg
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:347.
+        Called from PROJECT_FILE.i:377.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:348.
+        Called from PROJECT_FILE.i:378.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:349.
+        Called from PROJECT_FILE.i:379.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:350.
+        Called from PROJECT_FILE.i:380.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:351.
+        Called from PROJECT_FILE.i:381.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:352.
+        Called from PROJECT_FILE.i:382.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:353.
+        Called from PROJECT_FILE.i:383.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:357:[value] Assertion got status valid.
+PROJECT_FILE.i:387:[value] Assertion got status valid.
 [value] computing for function __gmpz_init_set_str <- main.
-        Called from PROJECT_FILE.i:365.
-PROJECT_FILE.i:79:[value] Function __gmpz_init_set_str: postcondition got status valid.
+        Called from PROJECT_FILE.i:395.
+PROJECT_FILE.i:82:[value] Function __gmpz_init_set_str: postcondition got status valid.
 [value] Done for function __gmpz_init_set_str
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:366.
+        Called from PROJECT_FILE.i:396.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:367.
+        Called from PROJECT_FILE.i:397.
 [value] Done for function __gmpz_cmp
 [value] computing for function __gmpz_init <- main.
-        Called from PROJECT_FILE.i:368.
+        Called from PROJECT_FILE.i:398.
 [value] Done for function __gmpz_init
-PROJECT_FILE.i:369:[value] Assertion got status valid.
+PROJECT_FILE.i:399:[value] Assertion got status valid.
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:370.
+        Called from PROJECT_FILE.i:400.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_tdiv_q <- main.
-        Called from PROJECT_FILE.i:371.
+        Called from PROJECT_FILE.i:401.
 [value] Done for function __gmpz_tdiv_q
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:372.
+        Called from PROJECT_FILE.i:402.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:373.
+        Called from PROJECT_FILE.i:403.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:375.
+        Called from PROJECT_FILE.i:405.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:377.
+        Called from PROJECT_FILE.i:407.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:378.
+        Called from PROJECT_FILE.i:408.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:379.
+        Called from PROJECT_FILE.i:409.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:380.
+        Called from PROJECT_FILE.i:410.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:384:[value] Assertion got status valid.
+PROJECT_FILE.i:414:[value] Assertion got status valid.
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:393.
+        Called from PROJECT_FILE.i:423.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:394.
+        Called from PROJECT_FILE.i:424.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_get_si <- main.
-        Called from PROJECT_FILE.i:395.
+        Called from PROJECT_FILE.i:425.
 [value] Done for function __gmpz_get_si
 [value] computing for function __gmpz_init <- main.
-        Called from PROJECT_FILE.i:396.
+        Called from PROJECT_FILE.i:426.
 [value] Done for function __gmpz_init
-PROJECT_FILE.i:397:[value] Assertion got status valid.
+PROJECT_FILE.i:427:[value] Assertion got status valid.
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:398.
+        Called from PROJECT_FILE.i:428.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_tdiv_r <- main.
-        Called from PROJECT_FILE.i:399.
-PROJECT_FILE.i:130:[value] Function __gmpz_tdiv_r: precondition got status valid.
-PROJECT_FILE.i:131:[value] Function __gmpz_tdiv_r: precondition got status valid.
-PROJECT_FILE.i:132:[value] Function __gmpz_tdiv_r: precondition got status valid.
+        Called from PROJECT_FILE.i:429.
+PROJECT_FILE.i:158:[value] Function __gmpz_tdiv_r: precondition got status valid.
+PROJECT_FILE.i:159:[value] Function __gmpz_tdiv_r: precondition got status valid.
+PROJECT_FILE.i:160:[value] Function __gmpz_tdiv_r: precondition got status valid.
 [value] Done for function __gmpz_tdiv_r
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:400.
+        Called from PROJECT_FILE.i:430.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init <- main.
-        Called from PROJECT_FILE.i:401.
+        Called from PROJECT_FILE.i:431.
 [value] Done for function __gmpz_init
 [value] computing for function __gmpz_neg <- main.
-        Called from PROJECT_FILE.i:402.
+        Called from PROJECT_FILE.i:432.
 [value] Done for function __gmpz_neg
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:403.
+        Called from PROJECT_FILE.i:433.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:404.
+        Called from PROJECT_FILE.i:434.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:405.
+        Called from PROJECT_FILE.i:435.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:406.
+        Called from PROJECT_FILE.i:436.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:407.
+        Called from PROJECT_FILE.i:437.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:408.
+        Called from PROJECT_FILE.i:438.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:409.
+        Called from PROJECT_FILE.i:439.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:413:[value] Assertion got status valid.
+PROJECT_FILE.i:443:[value] Assertion got status valid.
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:425.
+        Called from PROJECT_FILE.i:455.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init <- main.
-        Called from PROJECT_FILE.i:426.
+        Called from PROJECT_FILE.i:456.
 [value] Done for function __gmpz_init
 [value] computing for function __gmpz_neg <- main.
-        Called from PROJECT_FILE.i:427.
+        Called from PROJECT_FILE.i:457.
 [value] Done for function __gmpz_neg
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:428.
+        Called from PROJECT_FILE.i:458.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init <- main.
-        Called from PROJECT_FILE.i:429.
+        Called from PROJECT_FILE.i:459.
 [value] Done for function __gmpz_init
 [value] computing for function __gmpz_neg <- main.
-        Called from PROJECT_FILE.i:430.
+        Called from PROJECT_FILE.i:460.
 [value] Done for function __gmpz_neg
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:431.
+        Called from PROJECT_FILE.i:461.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:432.
+        Called from PROJECT_FILE.i:462.
 [value] Done for function __gmpz_cmp
 [value] computing for function __gmpz_init <- main.
-        Called from PROJECT_FILE.i:433.
+        Called from PROJECT_FILE.i:463.
 [value] Done for function __gmpz_init
-PROJECT_FILE.i:434:[value] Assertion got status valid.
+PROJECT_FILE.i:464:[value] Assertion got status valid.
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:435.
+        Called from PROJECT_FILE.i:465.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_tdiv_r <- main.
-        Called from PROJECT_FILE.i:436.
+        Called from PROJECT_FILE.i:466.
 [value] Done for function __gmpz_tdiv_r
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:437.
+        Called from PROJECT_FILE.i:467.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init <- main.
-        Called from PROJECT_FILE.i:438.
+        Called from PROJECT_FILE.i:468.
 [value] Done for function __gmpz_init
 [value] computing for function __gmpz_neg <- main.
-        Called from PROJECT_FILE.i:439.
+        Called from PROJECT_FILE.i:469.
 [value] Done for function __gmpz_neg
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:440.
+        Called from PROJECT_FILE.i:470.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:441.
+        Called from PROJECT_FILE.i:471.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:442.
+        Called from PROJECT_FILE.i:472.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:443.
+        Called from PROJECT_FILE.i:473.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:444.
+        Called from PROJECT_FILE.i:474.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:445.
+        Called from PROJECT_FILE.i:475.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:446.
+        Called from PROJECT_FILE.i:476.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:447.
+        Called from PROJECT_FILE.i:477.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:448.
+        Called from PROJECT_FILE.i:478.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:449.
+        Called from PROJECT_FILE.i:479.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:453:[value] Assertion got status valid.
+PROJECT_FILE.i:483:[value] Assertion got status valid.
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:463.
+        Called from PROJECT_FILE.i:493.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:464.
+        Called from PROJECT_FILE.i:494.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init <- main.
-        Called from PROJECT_FILE.i:465.
+        Called from PROJECT_FILE.i:495.
 [value] Done for function __gmpz_init
 [value] computing for function __gmpz_neg <- main.
-        Called from PROJECT_FILE.i:466.
+        Called from PROJECT_FILE.i:496.
 [value] Done for function __gmpz_neg
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:467.
+        Called from PROJECT_FILE.i:497.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:468.
+        Called from PROJECT_FILE.i:498.
 [value] Done for function __gmpz_cmp
 [value] computing for function __gmpz_init <- main.
-        Called from PROJECT_FILE.i:469.
+        Called from PROJECT_FILE.i:499.
 [value] Done for function __gmpz_init
-PROJECT_FILE.i:470:[value] Assertion got status valid.
+PROJECT_FILE.i:500:[value] Assertion got status valid.
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:471.
+        Called from PROJECT_FILE.i:501.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_tdiv_r <- main.
-        Called from PROJECT_FILE.i:472.
+        Called from PROJECT_FILE.i:502.
 [value] Done for function __gmpz_tdiv_r
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:473.
+        Called from PROJECT_FILE.i:503.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:474.
+        Called from PROJECT_FILE.i:504.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:475.
+        Called from PROJECT_FILE.i:505.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:476.
+        Called from PROJECT_FILE.i:506.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:477.
+        Called from PROJECT_FILE.i:507.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:478.
+        Called from PROJECT_FILE.i:508.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:479.
+        Called from PROJECT_FILE.i:509.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:480.
+        Called from PROJECT_FILE.i:510.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:481.
+        Called from PROJECT_FILE.i:511.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:485:[value] Assertion got status valid.
+PROJECT_FILE.i:515:[value] Assertion got status valid.
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:501.
+        Called from PROJECT_FILE.i:531.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:502.
+        Called from PROJECT_FILE.i:532.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init <- main.
-        Called from PROJECT_FILE.i:503.
+        Called from PROJECT_FILE.i:533.
 [value] Done for function __gmpz_init
 [value] computing for function __gmpz_mul <- main.
-        Called from PROJECT_FILE.i:504.
+        Called from PROJECT_FILE.i:534.
 [value] Done for function __gmpz_mul
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:505.
+        Called from PROJECT_FILE.i:535.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:506.
+        Called from PROJECT_FILE.i:536.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init <- main.
-        Called from PROJECT_FILE.i:507.
+        Called from PROJECT_FILE.i:537.
 [value] Done for function __gmpz_init
 [value] computing for function __gmpz_add <- main.
-        Called from PROJECT_FILE.i:508.
+        Called from PROJECT_FILE.i:538.
 [value] Done for function __gmpz_add
 [value] computing for function __gmpz_init <- main.
-        Called from PROJECT_FILE.i:509.
+        Called from PROJECT_FILE.i:539.
 [value] Done for function __gmpz_init
 [value] computing for function __gmpz_add <- main.
-        Called from PROJECT_FILE.i:510.
+        Called from PROJECT_FILE.i:540.
 [value] Done for function __gmpz_add
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:511.
+        Called from PROJECT_FILE.i:541.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init <- main.
-        Called from PROJECT_FILE.i:512.
+        Called from PROJECT_FILE.i:542.
 [value] Done for function __gmpz_init
 [value] computing for function __gmpz_sub <- main.
-        Called from PROJECT_FILE.i:513.
+        Called from PROJECT_FILE.i:543.
 [value] Done for function __gmpz_sub
 [value] computing for function __gmpz_init <- main.
-        Called from PROJECT_FILE.i:514.
+        Called from PROJECT_FILE.i:544.
 [value] Done for function __gmpz_init
 [value] computing for function __gmpz_sub <- main.
-        Called from PROJECT_FILE.i:515.
+        Called from PROJECT_FILE.i:545.
 [value] Done for function __gmpz_sub
 [value] computing for function __gmpz_init <- main.
-        Called from PROJECT_FILE.i:516.
+        Called from PROJECT_FILE.i:546.
 [value] Done for function __gmpz_init
 [value] computing for function __gmpz_add <- main.
-        Called from PROJECT_FILE.i:517.
+        Called from PROJECT_FILE.i:547.
 [value] Done for function __gmpz_add
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:518.
+        Called from PROJECT_FILE.i:548.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init <- main.
-        Called from PROJECT_FILE.i:519.
+        Called from PROJECT_FILE.i:549.
 [value] Done for function __gmpz_init
 [value] computing for function __gmpz_neg <- main.
-        Called from PROJECT_FILE.i:520.
+        Called from PROJECT_FILE.i:550.
 [value] Done for function __gmpz_neg
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:521.
+        Called from PROJECT_FILE.i:551.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:522.
+        Called from PROJECT_FILE.i:552.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:524.
+        Called from PROJECT_FILE.i:554.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:525.
+        Called from PROJECT_FILE.i:555.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:526.
+        Called from PROJECT_FILE.i:556.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:527.
+        Called from PROJECT_FILE.i:557.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:528.
+        Called from PROJECT_FILE.i:558.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:529.
+        Called from PROJECT_FILE.i:559.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:530.
+        Called from PROJECT_FILE.i:560.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:531.
+        Called from PROJECT_FILE.i:561.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:532.
+        Called from PROJECT_FILE.i:562.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:533.
+        Called from PROJECT_FILE.i:563.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:534.
+        Called from PROJECT_FILE.i:564.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:535.
+        Called from PROJECT_FILE.i:565.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:536.
+        Called from PROJECT_FILE.i:566.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:540:[value] Assertion got status valid.
-PROJECT_FILE.i:543:[value] Assertion got status valid.
+PROJECT_FILE.i:570:[value] Assertion got status valid.
+PROJECT_FILE.i:573:[value] Assertion got status valid.
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:549.
+        Called from PROJECT_FILE.i:579.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:550.
+        Called from PROJECT_FILE.i:580.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init <- main.
-        Called from PROJECT_FILE.i:551.
+        Called from PROJECT_FILE.i:581.
 [value] Done for function __gmpz_init
 [value] computing for function __gmpz_neg <- main.
-        Called from PROJECT_FILE.i:552.
+        Called from PROJECT_FILE.i:582.
 [value] Done for function __gmpz_neg
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:553.
+        Called from PROJECT_FILE.i:583.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:554.
+        Called from PROJECT_FILE.i:584.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:556.
+        Called from PROJECT_FILE.i:586.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:557.
+        Called from PROJECT_FILE.i:587.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:558.
+        Called from PROJECT_FILE.i:588.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:562:[value] Assertion got status valid.
+PROJECT_FILE.i:592:[value] Assertion got status valid.
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:568.
+        Called from PROJECT_FILE.i:598.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:569.
+        Called from PROJECT_FILE.i:599.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init <- main.
-        Called from PROJECT_FILE.i:570.
+        Called from PROJECT_FILE.i:600.
 [value] Done for function __gmpz_init
 [value] computing for function __gmpz_neg <- main.
-        Called from PROJECT_FILE.i:571.
+        Called from PROJECT_FILE.i:601.
 [value] Done for function __gmpz_neg
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:572.
+        Called from PROJECT_FILE.i:602.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:574.
+        Called from PROJECT_FILE.i:604.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:576.
+        Called from PROJECT_FILE.i:606.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:577.
+        Called from PROJECT_FILE.i:607.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:578.
+        Called from PROJECT_FILE.i:608.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:582:[value] Assertion got status valid.
-PROJECT_FILE.i:585:[value] Assertion got status valid.
+PROJECT_FILE.i:612:[value] Assertion got status valid.
+PROJECT_FILE.i:615:[value] Assertion got status valid.
 [value] Recording results for main
 [value] done for function main
 [value] ====== VALUES COMPUTED ======
diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/array.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/array.res.oracle
index e66926fef9fa81daae8246d1887050d33d7981f3..c606c5fd4ec9075774972f07347b9f939749713d 100644
--- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/array.res.oracle
+++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/array.res.oracle
@@ -8,29 +8,29 @@ tests/e-acsl-runtime/array.i:14:[e-acsl] warning: missing guard for ensuring tha
 [value] Values of globals at initialization
         T1[0..2] ‚àà {0}
         T2[0..3] ‚àà {0}
-PROJECT_FILE.i:202:[value] entering loop for the first time
-PROJECT_FILE.i:206:[value] assigning non deterministic value for the first time
-PROJECT_FILE.i:211:[value] entering loop for the first time
-PROJECT_FILE.i:218:[value] Assertion got status unknown.
+PROJECT_FILE.i:232:[value] entering loop for the first time
+PROJECT_FILE.i:236:[value] assigning non deterministic value for the first time
+PROJECT_FILE.i:241:[value] entering loop for the first time
+PROJECT_FILE.i:248:[value] Assertion got status unknown.
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:219.
+        Called from PROJECT_FILE.i:249.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
-PROJECT_FILE.i:183:[value] Function exit: postcondition got status invalid.
+        Called from PROJECT_FILE.i:223.
+PROJECT_FILE.i:213:[value] Function exit: postcondition got status invalid.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
-PROJECT_FILE.i:221:[value] Assertion got status unknown.
+PROJECT_FILE.i:251:[value] Assertion got status unknown.
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:222.
+        Called from PROJECT_FILE.i:252.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/at.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/at.res.oracle
index 9a11dfeb7334619e0dcc5f30236ace10d333b4bb..221b28c7ca8753cd0be69f248463bc3b67956b61 100644
--- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/at.res.oracle
+++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/at.res.oracle
@@ -10,338 +10,339 @@ tests/e-acsl-runtime/at.i:33:[e-acsl] warning: missing guard for ensuring that p
 [value] Values of globals at initialization
         A ‚àà {0}
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:355.
-PROJECT_FILE.i:75:[value] Function __gmpz_init_set_si: postcondition got status valid.
+        Called from PROJECT_FILE.i:385.
+PROJECT_FILE.i:78:[value] Function __gmpz_init_set_si: postcondition got status valid.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:356.
+        Called from PROJECT_FILE.i:386.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init <- main.
-        Called from PROJECT_FILE.i:357.
-PROJECT_FILE.i:63:[value] Function __gmpz_init: postcondition got status valid.
+        Called from PROJECT_FILE.i:387.
+PROJECT_FILE.i:65:[value] Function __gmpz_init: postcondition got status valid.
 [value] Done for function __gmpz_init
 [value] computing for function __gmpz_add <- main.
-        Called from PROJECT_FILE.i:358.
-PROJECT_FILE.i:106:[value] Function __gmpz_add: precondition got status valid.
-PROJECT_FILE.i:107:[value] Function __gmpz_add: precondition got status valid.
-PROJECT_FILE.i:108:[value] Function __gmpz_add: precondition got status valid.
+        Called from PROJECT_FILE.i:388.
+PROJECT_FILE.i:134:[value] Function __gmpz_add: precondition got status valid.
+PROJECT_FILE.i:135:[value] Function __gmpz_add: precondition got status valid.
+PROJECT_FILE.i:136:[value] Function __gmpz_add: precondition got status valid.
 [value] Done for function __gmpz_add
 [value] computing for function __gmpz_init_set <- main.
-        Called from PROJECT_FILE.i:359.
-PROJECT_FILE.i:67:[value] Function __gmpz_init_set: postcondition got status valid.
+        Called from PROJECT_FILE.i:389.
+PROJECT_FILE.i:69:[value] Function __gmpz_init_set: precondition got status valid.
+PROJECT_FILE.i:70:[value] Function __gmpz_init_set: postcondition got status valid.
 [value] Done for function __gmpz_init_set
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:360.
-PROJECT_FILE.i:85:[value] Function __gmpz_clear: precondition got status valid.
+        Called from PROJECT_FILE.i:390.
+PROJECT_FILE.i:107:[value] Function __gmpz_clear: precondition got status valid.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:361.
+        Called from PROJECT_FILE.i:391.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:362.
+        Called from PROJECT_FILE.i:392.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:366:[value] Assertion got status valid.
+PROJECT_FILE.i:396:[value] Assertion got status valid.
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:371.
+        Called from PROJECT_FILE.i:401.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:372.
+        Called from PROJECT_FILE.i:402.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:373.
-PROJECT_FILE.i:91:[value] Function __gmpz_cmp: precondition got status valid.
-PROJECT_FILE.i:92:[value] Function __gmpz_cmp: precondition got status valid.
+        Called from PROJECT_FILE.i:403.
+PROJECT_FILE.i:115:[value] Function __gmpz_cmp: precondition got status valid.
+PROJECT_FILE.i:116:[value] Function __gmpz_cmp: precondition got status valid.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:374.
+        Called from PROJECT_FILE.i:404.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
-PROJECT_FILE.i:183:[value] Function exit: postcondition got status invalid.
+        Called from PROJECT_FILE.i:223.
+PROJECT_FILE.i:213:[value] Function exit: postcondition got status invalid.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:375.
+        Called from PROJECT_FILE.i:405.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:376.
+        Called from PROJECT_FILE.i:406.
 [value] Done for function __gmpz_clear
 [value] computing for function f <- main.
-        Called from PROJECT_FILE.i:382.
-PROJECT_FILE.i:212:[value] Assertion got status valid.
+        Called from PROJECT_FILE.i:412.
+PROJECT_FILE.i:242:[value] Assertion got status valid.
 [value] computing for function __gmpz_init_set_si <- f <- main.
-        Called from PROJECT_FILE.i:217.
+        Called from PROJECT_FILE.i:247.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- f <- main.
-        Called from PROJECT_FILE.i:218.
+        Called from PROJECT_FILE.i:248.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- f <- main.
-        Called from PROJECT_FILE.i:219.
+        Called from PROJECT_FILE.i:249.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- f <- main.
-        Called from PROJECT_FILE.i:220.
+        Called from PROJECT_FILE.i:250.
 [value] computing for function printf <- e_acsl_fail <- f <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- f <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- f <- main.
-        Called from PROJECT_FILE.i:221.
+        Called from PROJECT_FILE.i:251.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- f <- main.
-        Called from PROJECT_FILE.i:222.
+        Called from PROJECT_FILE.i:252.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:226:[value] Assertion got status unknown.
+PROJECT_FILE.i:256:[value] Assertion got status unknown.
 [value] computing for function __gmpz_init_set_si <- f <- main.
-        Called from PROJECT_FILE.i:231.
+        Called from PROJECT_FILE.i:261.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- f <- main.
-        Called from PROJECT_FILE.i:232.
+        Called from PROJECT_FILE.i:262.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- f <- main.
-        Called from PROJECT_FILE.i:233.
+        Called from PROJECT_FILE.i:263.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- f <- main.
-        Called from PROJECT_FILE.i:234.
+        Called from PROJECT_FILE.i:264.
 [value] computing for function printf <- e_acsl_fail <- f <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- f <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- f <- main.
-        Called from PROJECT_FILE.i:235.
+        Called from PROJECT_FILE.i:265.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- f <- main.
-        Called from PROJECT_FILE.i:236.
+        Called from PROJECT_FILE.i:266.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:240:[value] Assertion got status valid.
+PROJECT_FILE.i:270:[value] Assertion got status valid.
 [value] computing for function __gmpz_init_set_si <- f <- main.
-        Called from PROJECT_FILE.i:246.
+        Called from PROJECT_FILE.i:276.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- f <- main.
-        Called from PROJECT_FILE.i:247.
+        Called from PROJECT_FILE.i:277.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- f <- main.
-        Called from PROJECT_FILE.i:248.
+        Called from PROJECT_FILE.i:278.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- f <- main.
-        Called from PROJECT_FILE.i:249.
+        Called from PROJECT_FILE.i:279.
 [value] computing for function printf <- e_acsl_fail <- f <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- f <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- f <- main.
-        Called from PROJECT_FILE.i:250.
+        Called from PROJECT_FILE.i:280.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- f <- main.
-        Called from PROJECT_FILE.i:251.
+        Called from PROJECT_FILE.i:281.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:255:[value] Assertion got status unknown.
+PROJECT_FILE.i:285:[value] Assertion got status unknown.
 [value] computing for function __gmpz_init_set_si <- f <- main.
-        Called from PROJECT_FILE.i:260.
+        Called from PROJECT_FILE.i:290.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- f <- main.
-        Called from PROJECT_FILE.i:261.
+        Called from PROJECT_FILE.i:291.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- f <- main.
-        Called from PROJECT_FILE.i:262.
+        Called from PROJECT_FILE.i:292.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- f <- main.
-        Called from PROJECT_FILE.i:263.
+        Called from PROJECT_FILE.i:293.
 [value] computing for function printf <- e_acsl_fail <- f <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- f <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- f <- main.
-        Called from PROJECT_FILE.i:264.
+        Called from PROJECT_FILE.i:294.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- f <- main.
-        Called from PROJECT_FILE.i:265.
+        Called from PROJECT_FILE.i:295.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_init_set_si <- f <- main.
-        Called from PROJECT_FILE.i:275.
+        Called from PROJECT_FILE.i:305.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- f <- main.
-        Called from PROJECT_FILE.i:276.
+        Called from PROJECT_FILE.i:306.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- f <- main.
-        Called from PROJECT_FILE.i:277.
+        Called from PROJECT_FILE.i:307.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- f <- main.
-        Called from PROJECT_FILE.i:278.
+        Called from PROJECT_FILE.i:308.
 [value] computing for function printf <- e_acsl_fail <- f <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- f <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- f <- main.
-        Called from PROJECT_FILE.i:279.
+        Called from PROJECT_FILE.i:309.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- f <- main.
-        Called from PROJECT_FILE.i:280.
+        Called from PROJECT_FILE.i:310.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:196:[value] Function f: postcondition got status valid.
+PROJECT_FILE.i:226:[value] Function f: postcondition got status valid.
 [value] Recording results for f
 [value] Done for function f
-PROJECT_FILE.i:383:[value] Assertion got status unknown.
+PROJECT_FILE.i:413:[value] Assertion got status unknown.
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:388.
+        Called from PROJECT_FILE.i:418.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:389.
+        Called from PROJECT_FILE.i:419.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:390.
+        Called from PROJECT_FILE.i:420.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:391.
+        Called from PROJECT_FILE.i:421.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:392.
+        Called from PROJECT_FILE.i:422.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:393.
+        Called from PROJECT_FILE.i:423.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:397:[value] Assertion got status unknown.
+PROJECT_FILE.i:427:[value] Assertion got status unknown.
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:401.
+        Called from PROJECT_FILE.i:431.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:402.
+        Called from PROJECT_FILE.i:432.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:403.
+        Called from PROJECT_FILE.i:433.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:404.
+        Called from PROJECT_FILE.i:434.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:408:[value] Assertion got status unknown.
+PROJECT_FILE.i:438:[value] Assertion got status unknown.
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:414.
+        Called from PROJECT_FILE.i:444.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:415.
+        Called from PROJECT_FILE.i:445.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init <- main.
-        Called from PROJECT_FILE.i:416.
+        Called from PROJECT_FILE.i:446.
 [value] Done for function __gmpz_init
 [value] computing for function __gmpz_add <- main.
-        Called from PROJECT_FILE.i:417.
+        Called from PROJECT_FILE.i:447.
 [value] Done for function __gmpz_add
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:418.
+        Called from PROJECT_FILE.i:448.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:419.
+        Called from PROJECT_FILE.i:449.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:420.
+        Called from PROJECT_FILE.i:450.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:421.
+        Called from PROJECT_FILE.i:451.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:422.
+        Called from PROJECT_FILE.i:452.
 [value] Done for function __gmpz_clear
 [value] computing for function g <- main.
-        Called from PROJECT_FILE.i:426.
-PROJECT_FILE.i:304:[value] Assertion got status unknown.
+        Called from PROJECT_FILE.i:456.
+PROJECT_FILE.i:334:[value] Assertion got status unknown.
 [value] computing for function __gmpz_init_set_si <- g <- main.
-        Called from PROJECT_FILE.i:309.
+        Called from PROJECT_FILE.i:339.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- g <- main.
-        Called from PROJECT_FILE.i:310.
+        Called from PROJECT_FILE.i:340.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- g <- main.
-        Called from PROJECT_FILE.i:311.
+        Called from PROJECT_FILE.i:341.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- g <- main.
-        Called from PROJECT_FILE.i:312.
+        Called from PROJECT_FILE.i:342.
 [value] computing for function printf <- e_acsl_fail <- g <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- g <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- g <- main.
-        Called from PROJECT_FILE.i:314.
+        Called from PROJECT_FILE.i:344.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- g <- main.
-        Called from PROJECT_FILE.i:315.
+        Called from PROJECT_FILE.i:345.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:320:[value] Assertion got status unknown.
+PROJECT_FILE.i:350:[value] Assertion got status unknown.
 [value] computing for function __gmpz_init_set_si <- g <- main.
-        Called from PROJECT_FILE.i:326.
+        Called from PROJECT_FILE.i:356.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- g <- main.
-        Called from PROJECT_FILE.i:327.
+        Called from PROJECT_FILE.i:357.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- g <- main.
-        Called from PROJECT_FILE.i:328.
+        Called from PROJECT_FILE.i:358.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- g <- main.
-        Called from PROJECT_FILE.i:330.
+        Called from PROJECT_FILE.i:360.
 [value] computing for function printf <- e_acsl_fail <- g <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- g <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- g <- main.
-        Called from PROJECT_FILE.i:332.
+        Called from PROJECT_FILE.i:362.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- g <- main.
-        Called from PROJECT_FILE.i:333.
+        Called from PROJECT_FILE.i:363.
 [value] Done for function __gmpz_clear
 [value] Recording results for g
 [value] Done for function g
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:428.
+        Called from PROJECT_FILE.i:458.
 [value] Done for function __gmpz_clear
 [value] Recording results for main
 [value] done for function main
@@ -385,7 +386,8 @@ typedef __mpz_struct mpz_t[1];
 /*@ ensures \valid(\old(x));
     assigns *x;  */
 extern void __gmpz_init(__mpz_struct * /*[1]*/ x);
-/*@ ensures \valid(\old(z));
+/*@ requires \valid(z_orig);
+    ensures \valid(\old(z));
     assigns *z;  */
 extern void __gmpz_init_set(__mpz_struct * /*[1]*/ z,
                             __mpz_struct const * /*[1]*/ z_orig);
diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/cast.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/cast.res.oracle
index 5fcbe123afc371672f2ab6a9bf0b9ff980df7614..2f2725ee17bbb3e12796a49af1445ebf91d91cf7 100644
--- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/cast.res.oracle
+++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/cast.res.oracle
@@ -4,50 +4,50 @@ tests/e-acsl-runtime/cast.i:18:[e-acsl] warning: missing guard for ensuring that
 [value] Computing initial state
 [value] Initial state computed
 [value] Values of globals at initialization
-PROJECT_FILE.i:202:[value] Assertion got status valid.
+PROJECT_FILE.i:232:[value] Assertion got status valid.
 [value] computing for function __gmpz_init_set_str <- main.
-        Called from PROJECT_FILE.i:206.
-PROJECT_FILE.i:79:[value] Function __gmpz_init_set_str: postcondition got status valid.
+        Called from PROJECT_FILE.i:236.
+PROJECT_FILE.i:82:[value] Function __gmpz_init_set_str: postcondition got status valid.
 [value] Done for function __gmpz_init_set_str
 [value] computing for function __gmpz_get_si <- main.
-        Called from PROJECT_FILE.i:207.
-PROJECT_FILE.i:138:[value] Function __gmpz_get_si: precondition got status valid.
+        Called from PROJECT_FILE.i:237.
+PROJECT_FILE.i:168:[value] Function __gmpz_get_si: precondition got status valid.
 [value] Done for function __gmpz_get_si
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:208.
+        Called from PROJECT_FILE.i:238.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
-PROJECT_FILE.i:183:[value] Function exit: postcondition got status invalid.
+        Called from PROJECT_FILE.i:223.
+PROJECT_FILE.i:213:[value] Function exit: postcondition got status invalid.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:209.
-PROJECT_FILE.i:85:[value] Function __gmpz_clear: precondition got status valid.
+        Called from PROJECT_FILE.i:239.
+PROJECT_FILE.i:107:[value] Function __gmpz_clear: precondition got status valid.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:213:[value] Assertion got status valid.
+PROJECT_FILE.i:243:[value] Assertion got status valid.
 [value] computing for function __gmpz_init_set_str <- main.
-        Called from PROJECT_FILE.i:217.
+        Called from PROJECT_FILE.i:247.
 [value] Done for function __gmpz_init_set_str
 [value] computing for function __gmpz_get_ui <- main.
-        Called from PROJECT_FILE.i:218.
-PROJECT_FILE.i:142:[value] Function __gmpz_get_ui: precondition got status valid.
+        Called from PROJECT_FILE.i:248.
+PROJECT_FILE.i:172:[value] Function __gmpz_get_ui: precondition got status valid.
 [value] Done for function __gmpz_get_ui
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:220.
+        Called from PROJECT_FILE.i:250.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:222.
+        Called from PROJECT_FILE.i:252.
 [value] Done for function __gmpz_clear
 [value] Recording results for main
 [value] done for function main
diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/comparison.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/comparison.res.oracle
index 71c0bf369078ac748405bf6832bc082724f2ff63..7516ab5f3a175889b9bb4a24442817c1ede99f45 100644
--- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/comparison.res.oracle
+++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/comparison.res.oracle
@@ -2,279 +2,279 @@
 [value] Computing initial state
 [value] Initial state computed
 [value] Values of globals at initialization
-PROJECT_FILE.i:203:[value] Assertion got status valid.
-PROJECT_FILE.i:206:[value] Assertion got status valid.
-PROJECT_FILE.i:209:[value] Assertion got status valid.
+PROJECT_FILE.i:233:[value] Assertion got status valid.
+PROJECT_FILE.i:236:[value] Assertion got status valid.
+PROJECT_FILE.i:239:[value] Assertion got status valid.
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:214.
-PROJECT_FILE.i:75:[value] Function __gmpz_init_set_si: postcondition got status valid.
+        Called from PROJECT_FILE.i:244.
+PROJECT_FILE.i:78:[value] Function __gmpz_init_set_si: postcondition got status valid.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:215.
+        Called from PROJECT_FILE.i:245.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:216.
-PROJECT_FILE.i:91:[value] Function __gmpz_cmp: precondition got status valid.
-PROJECT_FILE.i:92:[value] Function __gmpz_cmp: precondition got status valid.
+        Called from PROJECT_FILE.i:246.
+PROJECT_FILE.i:115:[value] Function __gmpz_cmp: precondition got status valid.
+PROJECT_FILE.i:116:[value] Function __gmpz_cmp: precondition got status valid.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:217.
+        Called from PROJECT_FILE.i:247.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
-PROJECT_FILE.i:183:[value] Function exit: postcondition got status invalid.
+        Called from PROJECT_FILE.i:223.
+PROJECT_FILE.i:213:[value] Function exit: postcondition got status invalid.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:218.
-PROJECT_FILE.i:85:[value] Function __gmpz_clear: precondition got status valid.
+        Called from PROJECT_FILE.i:248.
+PROJECT_FILE.i:107:[value] Function __gmpz_clear: precondition got status valid.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:219.
+        Called from PROJECT_FILE.i:249.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:223:[value] Assertion got status valid.
+PROJECT_FILE.i:253:[value] Assertion got status valid.
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:228.
+        Called from PROJECT_FILE.i:258.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:229.
+        Called from PROJECT_FILE.i:259.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:230.
+        Called from PROJECT_FILE.i:260.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:231.
+        Called from PROJECT_FILE.i:261.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:232.
+        Called from PROJECT_FILE.i:262.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:233.
+        Called from PROJECT_FILE.i:263.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:238:[value] Assertion got status valid.
-PROJECT_FILE.i:241:[value] Assertion got status unknown.
-PROJECT_FILE.i:244:[value] Assertion got status valid.
-PROJECT_FILE.i:247:[value] Assertion got status valid.
-PROJECT_FILE.i:250:[value] Assertion got status valid.
-PROJECT_FILE.i:253:[value] Assertion got status valid.
-PROJECT_FILE.i:256:[value] Assertion got status valid.
-PROJECT_FILE.i:259:[value] Assertion got status valid.
-PROJECT_FILE.i:262:[value] Assertion got status valid.
+PROJECT_FILE.i:268:[value] Assertion got status valid.
+PROJECT_FILE.i:271:[value] Assertion got status unknown.
+PROJECT_FILE.i:274:[value] Assertion got status valid.
+PROJECT_FILE.i:277:[value] Assertion got status valid.
+PROJECT_FILE.i:280:[value] Assertion got status valid.
+PROJECT_FILE.i:283:[value] Assertion got status valid.
+PROJECT_FILE.i:286:[value] Assertion got status valid.
+PROJECT_FILE.i:289:[value] Assertion got status valid.
+PROJECT_FILE.i:292:[value] Assertion got status valid.
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:268.
+        Called from PROJECT_FILE.i:298.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init <- main.
-        Called from PROJECT_FILE.i:269.
-PROJECT_FILE.i:63:[value] Function __gmpz_init: postcondition got status valid.
+        Called from PROJECT_FILE.i:299.
+PROJECT_FILE.i:65:[value] Function __gmpz_init: postcondition got status valid.
 [value] Done for function __gmpz_init
 [value] computing for function __gmpz_neg <- main.
-        Called from PROJECT_FILE.i:270.
-PROJECT_FILE.i:101:[value] Function __gmpz_neg: precondition got status valid.
-PROJECT_FILE.i:102:[value] Function __gmpz_neg: precondition got status valid.
+        Called from PROJECT_FILE.i:300.
+PROJECT_FILE.i:129:[value] Function __gmpz_neg: precondition got status valid.
+PROJECT_FILE.i:130:[value] Function __gmpz_neg: precondition got status valid.
 [value] Done for function __gmpz_neg
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:271.
+        Called from PROJECT_FILE.i:301.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:272.
+        Called from PROJECT_FILE.i:302.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:273.
+        Called from PROJECT_FILE.i:303.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:274.
+        Called from PROJECT_FILE.i:304.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:275.
+        Called from PROJECT_FILE.i:305.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:276.
+        Called from PROJECT_FILE.i:306.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:280:[value] Assertion got status valid.
+PROJECT_FILE.i:310:[value] Assertion got status valid.
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:286.
+        Called from PROJECT_FILE.i:316.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:287.
+        Called from PROJECT_FILE.i:317.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init <- main.
-        Called from PROJECT_FILE.i:288.
+        Called from PROJECT_FILE.i:318.
 [value] Done for function __gmpz_init
 [value] computing for function __gmpz_neg <- main.
-        Called from PROJECT_FILE.i:289.
+        Called from PROJECT_FILE.i:319.
 [value] Done for function __gmpz_neg
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:290.
+        Called from PROJECT_FILE.i:320.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:291.
+        Called from PROJECT_FILE.i:321.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:292.
+        Called from PROJECT_FILE.i:322.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:293.
+        Called from PROJECT_FILE.i:323.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:294.
+        Called from PROJECT_FILE.i:324.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:298:[value] Assertion got status valid.
+PROJECT_FILE.i:328:[value] Assertion got status valid.
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:304.
+        Called from PROJECT_FILE.i:334.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init <- main.
-        Called from PROJECT_FILE.i:305.
+        Called from PROJECT_FILE.i:335.
 [value] Done for function __gmpz_init
 [value] computing for function __gmpz_neg <- main.
-        Called from PROJECT_FILE.i:306.
+        Called from PROJECT_FILE.i:336.
 [value] Done for function __gmpz_neg
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:307.
+        Called from PROJECT_FILE.i:337.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:308.
+        Called from PROJECT_FILE.i:338.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:309.
+        Called from PROJECT_FILE.i:339.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:310.
+        Called from PROJECT_FILE.i:340.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:311.
+        Called from PROJECT_FILE.i:341.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:312.
+        Called from PROJECT_FILE.i:342.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:316:[value] Assertion got status valid.
+PROJECT_FILE.i:346:[value] Assertion got status valid.
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:322.
+        Called from PROJECT_FILE.i:352.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:323.
+        Called from PROJECT_FILE.i:353.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init <- main.
-        Called from PROJECT_FILE.i:324.
+        Called from PROJECT_FILE.i:354.
 [value] Done for function __gmpz_init
 [value] computing for function __gmpz_neg <- main.
-        Called from PROJECT_FILE.i:325.
+        Called from PROJECT_FILE.i:355.
 [value] Done for function __gmpz_neg
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:326.
+        Called from PROJECT_FILE.i:356.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:327.
+        Called from PROJECT_FILE.i:357.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:328.
+        Called from PROJECT_FILE.i:358.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:329.
+        Called from PROJECT_FILE.i:359.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:330.
+        Called from PROJECT_FILE.i:360.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:334:[value] Assertion got status valid.
+PROJECT_FILE.i:364:[value] Assertion got status valid.
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:339.
+        Called from PROJECT_FILE.i:369.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init <- main.
-        Called from PROJECT_FILE.i:340.
+        Called from PROJECT_FILE.i:370.
 [value] Done for function __gmpz_init
 [value] computing for function __gmpz_neg <- main.
-        Called from PROJECT_FILE.i:341.
+        Called from PROJECT_FILE.i:371.
 [value] Done for function __gmpz_neg
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:342.
+        Called from PROJECT_FILE.i:372.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:343.
+        Called from PROJECT_FILE.i:373.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:344.
+        Called from PROJECT_FILE.i:374.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:345.
+        Called from PROJECT_FILE.i:375.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:349:[value] Assertion got status valid.
+PROJECT_FILE.i:379:[value] Assertion got status valid.
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:355.
+        Called from PROJECT_FILE.i:385.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:356.
+        Called from PROJECT_FILE.i:386.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init <- main.
-        Called from PROJECT_FILE.i:357.
+        Called from PROJECT_FILE.i:387.
 [value] Done for function __gmpz_init
 [value] computing for function __gmpz_neg <- main.
-        Called from PROJECT_FILE.i:358.
+        Called from PROJECT_FILE.i:388.
 [value] Done for function __gmpz_neg
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:359.
+        Called from PROJECT_FILE.i:389.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:360.
+        Called from PROJECT_FILE.i:390.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:361.
+        Called from PROJECT_FILE.i:391.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:362.
+        Called from PROJECT_FILE.i:392.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:363.
+        Called from PROJECT_FILE.i:393.
 [value] Done for function __gmpz_clear
 [value] Recording results for main
 [value] done for function main
diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/function_contract.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/function_contract.res.oracle
index 9a1de3a6a922d9991fe38d97fa2bd55c951de116..84ac5cd9e153f98743e38fa0892d2a3890b18b69 100644
--- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/function_contract.res.oracle
+++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/function_contract.res.oracle
@@ -5,535 +5,535 @@
         X ‚àà {0}
         Y ‚àà {2}
 [value] computing for function f <- main.
-        Called from PROJECT_FILE.i:509.
+        Called from PROJECT_FILE.i:539.
 [value] computing for function __gmpz_init_set_si <- f <- main.
-        Called from PROJECT_FILE.i:205.
-PROJECT_FILE.i:75:[value] Function __gmpz_init_set_si: postcondition got status valid.
+        Called from PROJECT_FILE.i:235.
+PROJECT_FILE.i:78:[value] Function __gmpz_init_set_si: postcondition got status valid.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- f <- main.
-        Called from PROJECT_FILE.i:206.
+        Called from PROJECT_FILE.i:236.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- f <- main.
-        Called from PROJECT_FILE.i:207.
-PROJECT_FILE.i:91:[value] Function __gmpz_cmp: precondition got status valid.
-PROJECT_FILE.i:92:[value] Function __gmpz_cmp: precondition got status valid.
+        Called from PROJECT_FILE.i:237.
+PROJECT_FILE.i:115:[value] Function __gmpz_cmp: precondition got status valid.
+PROJECT_FILE.i:116:[value] Function __gmpz_cmp: precondition got status valid.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- f <- main.
-        Called from PROJECT_FILE.i:208.
+        Called from PROJECT_FILE.i:238.
 [value] computing for function printf <- e_acsl_fail <- f <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- f <- main.
-        Called from PROJECT_FILE.i:193.
-PROJECT_FILE.i:183:[value] Function exit: postcondition got status invalid.
+        Called from PROJECT_FILE.i:223.
+PROJECT_FILE.i:213:[value] Function exit: postcondition got status invalid.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- f <- main.
-        Called from PROJECT_FILE.i:209.
-PROJECT_FILE.i:85:[value] Function __gmpz_clear: precondition got status valid.
+        Called from PROJECT_FILE.i:239.
+PROJECT_FILE.i:107:[value] Function __gmpz_clear: precondition got status valid.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- f <- main.
-        Called from PROJECT_FILE.i:210.
+        Called from PROJECT_FILE.i:240.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:197:[value] Function f: postcondition got status valid.
+PROJECT_FILE.i:227:[value] Function f: postcondition got status valid.
 [value] Recording results for f
 [value] Done for function f
 [value] computing for function g <- main.
-        Called from PROJECT_FILE.i:510.
+        Called from PROJECT_FILE.i:540.
 [value] computing for function __gmpz_init_set_si <- g <- main.
-        Called from PROJECT_FILE.i:227.
+        Called from PROJECT_FILE.i:257.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- g <- main.
-        Called from PROJECT_FILE.i:228.
+        Called from PROJECT_FILE.i:258.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- g <- main.
-        Called from PROJECT_FILE.i:229.
+        Called from PROJECT_FILE.i:259.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- g <- main.
-        Called from PROJECT_FILE.i:230.
+        Called from PROJECT_FILE.i:260.
 [value] computing for function printf <- e_acsl_fail <- g <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- g <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_init_set_si <- g <- main.
-        Called from PROJECT_FILE.i:231.
+        Called from PROJECT_FILE.i:261.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- g <- main.
-        Called from PROJECT_FILE.i:232.
+        Called from PROJECT_FILE.i:262.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- g <- main.
-        Called from PROJECT_FILE.i:233.
+        Called from PROJECT_FILE.i:263.
 [value] computing for function printf <- e_acsl_fail <- g <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- g <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- g <- main.
-        Called from PROJECT_FILE.i:234.
+        Called from PROJECT_FILE.i:264.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- g <- main.
-        Called from PROJECT_FILE.i:235.
+        Called from PROJECT_FILE.i:265.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- g <- main.
-        Called from PROJECT_FILE.i:236.
+        Called from PROJECT_FILE.i:266.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:216:[value] Function g: postcondition got status valid.
-PROJECT_FILE.i:217:[value] Function g: postcondition got status valid.
+PROJECT_FILE.i:246:[value] Function g: postcondition got status valid.
+PROJECT_FILE.i:247:[value] Function g: postcondition got status valid.
 [value] Recording results for g
 [value] Done for function g
 [value] computing for function h <- main.
-        Called from PROJECT_FILE.i:511.
-PROJECT_FILE.i:242:[value] Function h: precondition got status valid.
+        Called from PROJECT_FILE.i:541.
+PROJECT_FILE.i:272:[value] Function h: precondition got status valid.
 [value] computing for function __gmpz_init_set_si <- h <- main.
-        Called from PROJECT_FILE.i:249.
+        Called from PROJECT_FILE.i:279.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- h <- main.
-        Called from PROJECT_FILE.i:250.
+        Called from PROJECT_FILE.i:280.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- h <- main.
-        Called from PROJECT_FILE.i:251.
+        Called from PROJECT_FILE.i:281.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- h <- main.
-        Called from PROJECT_FILE.i:252.
+        Called from PROJECT_FILE.i:282.
 [value] computing for function printf <- e_acsl_fail <- h <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- h <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- h <- main.
-        Called from PROJECT_FILE.i:253.
+        Called from PROJECT_FILE.i:283.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- h <- main.
-        Called from PROJECT_FILE.i:254.
+        Called from PROJECT_FILE.i:284.
 [value] Done for function __gmpz_clear
 [value] Recording results for h
 [value] Done for function h
 [value] computing for function i <- main.
-        Called from PROJECT_FILE.i:512.
-PROJECT_FILE.i:261:[value] Function i: precondition got status valid.
-PROJECT_FILE.i:262:[value] Function i: precondition got status valid.
+        Called from PROJECT_FILE.i:542.
+PROJECT_FILE.i:291:[value] Function i: precondition got status valid.
+PROJECT_FILE.i:292:[value] Function i: precondition got status valid.
 [value] computing for function __gmpz_init_set_si <- i <- main.
-        Called from PROJECT_FILE.i:272.
+        Called from PROJECT_FILE.i:302.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- i <- main.
-        Called from PROJECT_FILE.i:273.
+        Called from PROJECT_FILE.i:303.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- i <- main.
-        Called from PROJECT_FILE.i:274.
+        Called from PROJECT_FILE.i:304.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- i <- main.
-        Called from PROJECT_FILE.i:275.
+        Called from PROJECT_FILE.i:305.
 [value] computing for function printf <- e_acsl_fail <- i <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- i <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_init_set_si <- i <- main.
-        Called from PROJECT_FILE.i:276.
+        Called from PROJECT_FILE.i:306.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- i <- main.
-        Called from PROJECT_FILE.i:277.
+        Called from PROJECT_FILE.i:307.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- i <- main.
-        Called from PROJECT_FILE.i:278.
+        Called from PROJECT_FILE.i:308.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- i <- main.
-        Called from PROJECT_FILE.i:279.
+        Called from PROJECT_FILE.i:309.
 [value] computing for function printf <- e_acsl_fail <- i <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- i <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- i <- main.
-        Called from PROJECT_FILE.i:280.
+        Called from PROJECT_FILE.i:310.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- i <- main.
-        Called from PROJECT_FILE.i:281.
+        Called from PROJECT_FILE.i:311.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- i <- main.
-        Called from PROJECT_FILE.i:282.
+        Called from PROJECT_FILE.i:312.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- i <- main.
-        Called from PROJECT_FILE.i:283.
+        Called from PROJECT_FILE.i:313.
 [value] Done for function __gmpz_clear
 [value] Recording results for i
 [value] Done for function i
 [value] computing for function j <- main.
-        Called from PROJECT_FILE.i:513.
-PROJECT_FILE.i:291:[value] Function j, behavior b1: precondition got status valid.
-PROJECT_FILE.i:295:[value] Function j, behavior b2: precondition got status valid.
-PROJECT_FILE.i:296:[value] Function j, behavior b2: precondition got status valid.
+        Called from PROJECT_FILE.i:543.
+PROJECT_FILE.i:321:[value] Function j, behavior b1: precondition got status valid.
+PROJECT_FILE.i:325:[value] Function j, behavior b2: precondition got status valid.
+PROJECT_FILE.i:326:[value] Function j, behavior b2: precondition got status valid.
 [value] computing for function __gmpz_init_set_si <- j <- main.
-        Called from PROJECT_FILE.i:313.
+        Called from PROJECT_FILE.i:343.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- j <- main.
-        Called from PROJECT_FILE.i:314.
+        Called from PROJECT_FILE.i:344.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- j <- main.
-        Called from PROJECT_FILE.i:315.
+        Called from PROJECT_FILE.i:345.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- j <- main.
-        Called from PROJECT_FILE.i:316.
+        Called from PROJECT_FILE.i:346.
 [value] computing for function printf <- e_acsl_fail <- j <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- j <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_init_set_si <- j <- main.
-        Called from PROJECT_FILE.i:317.
+        Called from PROJECT_FILE.i:347.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- j <- main.
-        Called from PROJECT_FILE.i:318.
+        Called from PROJECT_FILE.i:348.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init <- j <- main.
-        Called from PROJECT_FILE.i:319.
-PROJECT_FILE.i:63:[value] Function __gmpz_init: postcondition got status valid.
+        Called from PROJECT_FILE.i:349.
+PROJECT_FILE.i:65:[value] Function __gmpz_init: postcondition got status valid.
 [value] Done for function __gmpz_init
 [value] computing for function __gmpz_add <- j <- main.
-        Called from PROJECT_FILE.i:320.
-PROJECT_FILE.i:106:[value] Function __gmpz_add: precondition got status valid.
-PROJECT_FILE.i:107:[value] Function __gmpz_add: precondition got status valid.
-PROJECT_FILE.i:108:[value] Function __gmpz_add: precondition got status valid.
+        Called from PROJECT_FILE.i:350.
+PROJECT_FILE.i:134:[value] Function __gmpz_add: precondition got status valid.
+PROJECT_FILE.i:135:[value] Function __gmpz_add: precondition got status valid.
+PROJECT_FILE.i:136:[value] Function __gmpz_add: precondition got status valid.
 [value] Done for function __gmpz_add
 [value] computing for function __gmpz_cmp <- j <- main.
-        Called from PROJECT_FILE.i:321.
+        Called from PROJECT_FILE.i:351.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- j <- main.
-        Called from PROJECT_FILE.i:322.
+        Called from PROJECT_FILE.i:352.
 [value] computing for function printf <- e_acsl_fail <- j <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- j <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_init_set_si <- j <- main.
-        Called from PROJECT_FILE.i:323.
+        Called from PROJECT_FILE.i:353.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- j <- main.
-        Called from PROJECT_FILE.i:324.
+        Called from PROJECT_FILE.i:354.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- j <- main.
-        Called from PROJECT_FILE.i:325.
+        Called from PROJECT_FILE.i:355.
 [value] computing for function printf <- e_acsl_fail <- j <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- j <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- j <- main.
-        Called from PROJECT_FILE.i:326.
+        Called from PROJECT_FILE.i:356.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- j <- main.
-        Called from PROJECT_FILE.i:327.
+        Called from PROJECT_FILE.i:357.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- j <- main.
-        Called from PROJECT_FILE.i:328.
+        Called from PROJECT_FILE.i:358.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- j <- main.
-        Called from PROJECT_FILE.i:329.
+        Called from PROJECT_FILE.i:359.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- j <- main.
-        Called from PROJECT_FILE.i:330.
+        Called from PROJECT_FILE.i:360.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- j <- main.
-        Called from PROJECT_FILE.i:331.
+        Called from PROJECT_FILE.i:361.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_init_set_si <- j <- main.
-        Called from PROJECT_FILE.i:343.
+        Called from PROJECT_FILE.i:373.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- j <- main.
-        Called from PROJECT_FILE.i:344.
+        Called from PROJECT_FILE.i:374.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- j <- main.
-        Called from PROJECT_FILE.i:345.
+        Called from PROJECT_FILE.i:375.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- j <- main.
-        Called from PROJECT_FILE.i:346.
+        Called from PROJECT_FILE.i:376.
 [value] computing for function printf <- e_acsl_fail <- j <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- j <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_init_set_si <- j <- main.
-        Called from PROJECT_FILE.i:347.
+        Called from PROJECT_FILE.i:377.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- j <- main.
-        Called from PROJECT_FILE.i:348.
+        Called from PROJECT_FILE.i:378.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init <- j <- main.
-        Called from PROJECT_FILE.i:349.
+        Called from PROJECT_FILE.i:379.
 [value] Done for function __gmpz_init
 [value] computing for function __gmpz_add <- j <- main.
-        Called from PROJECT_FILE.i:350.
+        Called from PROJECT_FILE.i:380.
 [value] Done for function __gmpz_add
 [value] computing for function __gmpz_cmp <- j <- main.
-        Called from PROJECT_FILE.i:351.
+        Called from PROJECT_FILE.i:381.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- j <- main.
-        Called from PROJECT_FILE.i:352.
+        Called from PROJECT_FILE.i:382.
 [value] computing for function printf <- e_acsl_fail <- j <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- j <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- j <- main.
-        Called from PROJECT_FILE.i:353.
+        Called from PROJECT_FILE.i:383.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- j <- main.
-        Called from PROJECT_FILE.i:354.
+        Called from PROJECT_FILE.i:384.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- j <- main.
-        Called from PROJECT_FILE.i:355.
+        Called from PROJECT_FILE.i:385.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- j <- main.
-        Called from PROJECT_FILE.i:356.
+        Called from PROJECT_FILE.i:386.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- j <- main.
-        Called from PROJECT_FILE.i:357.
+        Called from PROJECT_FILE.i:387.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:292:[value] Function j, behavior b1: postcondition got status valid.
-PROJECT_FILE.i:297:[value] Function j, behavior b2: postcondition got status valid.
+PROJECT_FILE.i:322:[value] Function j, behavior b1: postcondition got status valid.
+PROJECT_FILE.i:327:[value] Function j, behavior b2: postcondition got status valid.
 [value] Recording results for j
 [value] Done for function j
 [value] computing for function k <- main.
-        Called from PROJECT_FILE.i:514.
-PROJECT_FILE.i:365:[value] Function k, behavior b1: assumption got status invalid; precondition not evaluated.
-PROJECT_FILE.i:370:[value] Function k, behavior b2: precondition got status valid.
-PROJECT_FILE.i:371:[value] Function k, behavior b2: precondition got status valid.
+        Called from PROJECT_FILE.i:544.
+PROJECT_FILE.i:395:[value] Function k, behavior b1: assumption got status invalid; precondition not evaluated.
+PROJECT_FILE.i:400:[value] Function k, behavior b2: precondition got status valid.
+PROJECT_FILE.i:401:[value] Function k, behavior b2: precondition got status valid.
 [value] computing for function __gmpz_init_set_si <- k <- main.
-        Called from PROJECT_FILE.i:389.
+        Called from PROJECT_FILE.i:419.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- k <- main.
-        Called from PROJECT_FILE.i:390.
+        Called from PROJECT_FILE.i:420.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- k <- main.
-        Called from PROJECT_FILE.i:391.
+        Called from PROJECT_FILE.i:421.
 [value] Done for function __gmpz_cmp
 [value] computing for function __gmpz_init_set_si <- k <- main.
-        Called from PROJECT_FILE.i:397.
+        Called from PROJECT_FILE.i:427.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- k <- main.
-        Called from PROJECT_FILE.i:398.
+        Called from PROJECT_FILE.i:428.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- k <- main.
-        Called from PROJECT_FILE.i:399.
+        Called from PROJECT_FILE.i:429.
 [value] Done for function __gmpz_cmp
-PROJECT_FILE.i:400:[value] assigning non deterministic value for the first time
+PROJECT_FILE.i:430:[value] assigning non deterministic value for the first time
 [value] computing for function __gmpz_clear <- k <- main.
-        Called from PROJECT_FILE.i:401.
+        Called from PROJECT_FILE.i:431.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- k <- main.
-        Called from PROJECT_FILE.i:402.
+        Called from PROJECT_FILE.i:432.
 [value] Done for function __gmpz_clear
 [value] computing for function e_acsl_fail <- k <- main.
-        Called from PROJECT_FILE.i:404.
+        Called from PROJECT_FILE.i:434.
 [value] computing for function printf <- e_acsl_fail <- k <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- k <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_init_set_si <- k <- main.
-        Called from PROJECT_FILE.i:405.
+        Called from PROJECT_FILE.i:435.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- k <- main.
-        Called from PROJECT_FILE.i:406.
+        Called from PROJECT_FILE.i:436.
 [value] Done for function __gmpz_cmp
 [value] computing for function __gmpz_init_set_si <- k <- main.
-        Called from PROJECT_FILE.i:411.
+        Called from PROJECT_FILE.i:441.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- k <- main.
-        Called from PROJECT_FILE.i:412.
+        Called from PROJECT_FILE.i:442.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- k <- main.
-        Called from PROJECT_FILE.i:413.
+        Called from PROJECT_FILE.i:443.
 [value] Done for function __gmpz_cmp
 [value] computing for function __gmpz_clear <- k <- main.
-        Called from PROJECT_FILE.i:415.
+        Called from PROJECT_FILE.i:445.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- k <- main.
-        Called from PROJECT_FILE.i:416.
+        Called from PROJECT_FILE.i:446.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_init_set_si <- k <- main.
-        Called from PROJECT_FILE.i:424.
+        Called from PROJECT_FILE.i:454.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- k <- main.
-        Called from PROJECT_FILE.i:425.
+        Called from PROJECT_FILE.i:455.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- k <- main.
-        Called from PROJECT_FILE.i:426.
+        Called from PROJECT_FILE.i:456.
 [value] Done for function __gmpz_cmp
 [value] computing for function __gmpz_clear <- k <- main.
-        Called from PROJECT_FILE.i:428.
+        Called from PROJECT_FILE.i:458.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- k <- main.
-        Called from PROJECT_FILE.i:429.
+        Called from PROJECT_FILE.i:459.
 [value] Done for function __gmpz_clear
 [value] computing for function e_acsl_fail <- k <- main.
-        Called from PROJECT_FILE.i:431.
+        Called from PROJECT_FILE.i:461.
 [value] computing for function printf <- e_acsl_fail <- k <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- k <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_cmp <- k <- main.
-        Called from PROJECT_FILE.i:432.
+        Called from PROJECT_FILE.i:462.
 [value] Done for function __gmpz_cmp
 [value] computing for function __gmpz_init_set_si <- k <- main.
-        Called from PROJECT_FILE.i:437.
+        Called from PROJECT_FILE.i:467.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- k <- main.
-        Called from PROJECT_FILE.i:438.
+        Called from PROJECT_FILE.i:468.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- k <- main.
-        Called from PROJECT_FILE.i:439.
+        Called from PROJECT_FILE.i:469.
 [value] Done for function __gmpz_cmp
 [value] computing for function __gmpz_clear <- k <- main.
-        Called from PROJECT_FILE.i:441.
+        Called from PROJECT_FILE.i:471.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- k <- main.
-        Called from PROJECT_FILE.i:442.
+        Called from PROJECT_FILE.i:472.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_init_set_si <- k <- main.
-        Called from PROJECT_FILE.i:452.
+        Called from PROJECT_FILE.i:482.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- k <- main.
-        Called from PROJECT_FILE.i:453.
+        Called from PROJECT_FILE.i:483.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init <- k <- main.
-        Called from PROJECT_FILE.i:454.
+        Called from PROJECT_FILE.i:484.
 [value] Done for function __gmpz_init
 [value] computing for function __gmpz_add <- k <- main.
-        Called from PROJECT_FILE.i:455.
+        Called from PROJECT_FILE.i:485.
 [value] Done for function __gmpz_add
 [value] computing for function __gmpz_init_set_si <- k <- main.
-        Called from PROJECT_FILE.i:456.
+        Called from PROJECT_FILE.i:486.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- k <- main.
-        Called from PROJECT_FILE.i:457.
+        Called from PROJECT_FILE.i:487.
 [value] Done for function __gmpz_cmp
 [value] computing for function __gmpz_clear <- k <- main.
-        Called from PROJECT_FILE.i:459.
+        Called from PROJECT_FILE.i:489.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- k <- main.
-        Called from PROJECT_FILE.i:460.
+        Called from PROJECT_FILE.i:490.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- k <- main.
-        Called from PROJECT_FILE.i:461.
+        Called from PROJECT_FILE.i:491.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- k <- main.
-        Called from PROJECT_FILE.i:462.
+        Called from PROJECT_FILE.i:492.
 [value] Done for function __gmpz_clear
 [value] computing for function e_acsl_fail <- k <- main.
-        Called from PROJECT_FILE.i:464.
+        Called from PROJECT_FILE.i:494.
 [value] computing for function printf <- e_acsl_fail <- k <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- k <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- k <- main.
-        Called from PROJECT_FILE.i:465.
+        Called from PROJECT_FILE.i:495.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- k <- main.
-        Called from PROJECT_FILE.i:466.
+        Called from PROJECT_FILE.i:496.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- k <- main.
-        Called from PROJECT_FILE.i:467.
+        Called from PROJECT_FILE.i:497.
 [value] Done for function __gmpz_clear
 [value] Recording results for k
 [value] Done for function k
 [value] computing for function l <- main.
-        Called from PROJECT_FILE.i:515.
-PROJECT_FILE.i:477:[value] Assertion got status valid.
+        Called from PROJECT_FILE.i:545.
+PROJECT_FILE.i:507:[value] Assertion got status valid.
 [value] computing for function __gmpz_init_set_si <- l <- main.
-        Called from PROJECT_FILE.i:482.
+        Called from PROJECT_FILE.i:512.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- l <- main.
-        Called from PROJECT_FILE.i:483.
+        Called from PROJECT_FILE.i:513.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- l <- main.
-        Called from PROJECT_FILE.i:484.
+        Called from PROJECT_FILE.i:514.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- l <- main.
-        Called from PROJECT_FILE.i:485.
+        Called from PROJECT_FILE.i:515.
 [value] computing for function printf <- e_acsl_fail <- l <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- l <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- l <- main.
-        Called from PROJECT_FILE.i:486.
+        Called from PROJECT_FILE.i:516.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- l <- main.
-        Called from PROJECT_FILE.i:487.
+        Called from PROJECT_FILE.i:517.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_init_set_si <- l <- main.
-        Called from PROJECT_FILE.i:495.
+        Called from PROJECT_FILE.i:525.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- l <- main.
-        Called from PROJECT_FILE.i:496.
+        Called from PROJECT_FILE.i:526.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- l <- main.
-        Called from PROJECT_FILE.i:497.
+        Called from PROJECT_FILE.i:527.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- l <- main.
-        Called from PROJECT_FILE.i:498.
+        Called from PROJECT_FILE.i:528.
 [value] computing for function printf <- e_acsl_fail <- l <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- l <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- l <- main.
-        Called from PROJECT_FILE.i:499.
+        Called from PROJECT_FILE.i:529.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- l <- main.
-        Called from PROJECT_FILE.i:500.
+        Called from PROJECT_FILE.i:530.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:474:[value] Function l: postcondition got status valid.
+PROJECT_FILE.i:504:[value] Function l: postcondition got status valid.
 [value] Recording results for l
 [value] Done for function l
 [value] Recording results for main
diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_at.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_at.c
index aa989e82a16e9aaa1a0e83faedcfe2503ced15a4..3c8f1eefdaf931da65cdabc7f021352ecee4baf8 100644
--- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_at.c
+++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_at.c
@@ -9,7 +9,8 @@ typedef __mpz_struct mpz_t[1];
 /*@ ensures \valid(\old(x));
     assigns *x;  */
 extern void __gmpz_init(__mpz_struct * /*[1]*/ x);
-/*@ ensures \valid(\old(z));
+/*@ requires \valid(z_orig);
+    ensures \valid(\old(z));
     assigns *z;  */
 extern void __gmpz_init_set(__mpz_struct * /*[1]*/ z,
                             __mpz_struct const * /*[1]*/ z_orig);
diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_quantif.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_quantif.c
new file mode 100644
index 0000000000000000000000000000000000000000..e0eccda5044fae0035a39903dc5eed6c151d6099
--- /dev/null
+++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_quantif.c
@@ -0,0 +1,458 @@
+/* Generated by Frama-C */
+struct __anonstruct___mpz_struct_1 {
+   int _mp_alloc ;
+   int _mp_size ;
+   unsigned long *_mp_d ;
+};
+typedef struct __anonstruct___mpz_struct_1 __mpz_struct;
+typedef __mpz_struct mpz_t[1];
+/*@ ensures \valid(\old(x));
+    assigns *x;  */
+extern void __gmpz_init(__mpz_struct * /*[1]*/ x);
+/*@ ensures \valid(\old(z));
+    assigns *z;
+    assigns *z \from n;  */
+extern void __gmpz_init_set_si(__mpz_struct * /*[1]*/ z, long n);
+/*@ requires \valid(z_orig);
+    requires \valid(z);
+    assigns *z;  */
+extern void __gmpz_set(__mpz_struct * /*[1]*/ z,
+                       __mpz_struct const * /*[1]*/ z_orig);
+/*@ requires \valid(x);
+    assigns *x;  */
+extern void __gmpz_clear(__mpz_struct * /*[1]*/ x);
+/*@ requires \valid(z1);
+    requires \valid(z2);
+    assigns \nothing;  */
+extern int __gmpz_cmp(__mpz_struct const * /*[1]*/ z1,
+                      __mpz_struct const * /*[1]*/ z2);
+/*@ requires \valid(z1);
+    requires \valid(z2);
+    requires \valid(z3);
+    assigns *z1; 
+*/
+extern void __gmpz_add(__mpz_struct * /*[1]*/ z1,
+                       __mpz_struct const * /*[1]*/ z2,
+                       __mpz_struct const * /*[1]*/ z3);
+/*@ terminates \false;
+    ensures \false;
+    assigns \nothing;  */
+extern void exit(int status);
+/*@ assigns \nothing;  */
+extern int printf(char const * , ...);
+void e_acsl_fail(char *msg)
+{
+  printf("%s\n",msg);
+  exit(1);
+  return;
+}
+
+int main(void)
+{
+  int __retres;
+  int a;
+  a = -1;
+  /*@ assert ∀ ℤ x; 0 ≤ x ∧ x ≤ 1 ⇒ x ≡ 0 ∨ x ≡ 1; */ ;
+  {
+    mpz_t e_acsl_1;
+    int e_acsl_2;
+    e_acsl_2 = 1;
+    __gmpz_init((__mpz_struct *)(e_acsl_1));
+    {
+      mpz_t e_acsl_8;
+      __gmpz_init_set_si((__mpz_struct *)(e_acsl_8),(long)0);
+      __gmpz_set((__mpz_struct *)(e_acsl_1),(__mpz_struct const *)(e_acsl_8));
+      __gmpz_clear((__mpz_struct *)(e_acsl_8));
+    }
+    
+    while (1) {
+      {
+        mpz_t e_acsl_9;
+        int e_acsl_10;
+        __gmpz_init_set_si((__mpz_struct *)(e_acsl_9),(long)1);
+        e_acsl_10 = __gmpz_cmp((__mpz_struct const *)(e_acsl_1),
+                               (__mpz_struct const *)(e_acsl_9));
+        if (! (e_acsl_10 <= 0)) { break; }
+        __gmpz_clear((__mpz_struct *)(e_acsl_9));
+      }
+      
+      {
+        mpz_t e_acsl_3;
+        int e_acsl_4;
+        int e_acsl_7;
+        __gmpz_init_set_si((__mpz_struct *)(e_acsl_3),(long)0);
+        e_acsl_4 = __gmpz_cmp((__mpz_struct const *)(e_acsl_1),
+                              (__mpz_struct const *)(e_acsl_3));
+        if (e_acsl_4 == 0) { e_acsl_7 = 1; }
+        else {
+          mpz_t e_acsl_5;
+          int e_acsl_6;
+          __gmpz_init_set_si((__mpz_struct *)(e_acsl_5),(long)1);
+          e_acsl_6 = __gmpz_cmp((__mpz_struct const *)(e_acsl_1),
+                                (__mpz_struct const *)(e_acsl_5));
+          e_acsl_7 = e_acsl_6 == 0;
+          __gmpz_clear((__mpz_struct *)(e_acsl_5));
+        }
+        __gmpz_clear((__mpz_struct *)(e_acsl_3));
+        if (! e_acsl_7) {
+          e_acsl_2 = 0;
+          goto e_acsl_end_loop1; }
+      }
+      
+      {
+        mpz_t e_acsl_11;
+        mpz_t e_acsl_12;
+        __gmpz_init_set_si((__mpz_struct *)(e_acsl_11),(long)((char)1));
+        __gmpz_init((__mpz_struct *)(e_acsl_12));
+        __gmpz_add((__mpz_struct *)(e_acsl_12),
+                   (__mpz_struct const *)(e_acsl_1),
+                   (__mpz_struct const *)(e_acsl_11));
+        __gmpz_set((__mpz_struct *)(e_acsl_1),
+                   (__mpz_struct const *)(e_acsl_12));
+        __gmpz_clear((__mpz_struct *)(e_acsl_11));
+        __gmpz_clear((__mpz_struct *)(e_acsl_12));
+      }
+      
+    }
+    e_acsl_end_loop1: ;
+    if (! e_acsl_2) {
+      e_acsl_fail((char *)"(\\forall integer x; 0 <= x && x <= 1 ==> x == 0 || x == 1)");
+    }
+    __gmpz_clear((__mpz_struct *)(e_acsl_1));
+  }
+  
+  /*@ assert ∀ ℤ x; 0 < x ∧ x ≤ 1 ⇒ x ≡ 1; */ ;
+  {
+    mpz_t e_acsl_13;
+    int e_acsl_14;
+    e_acsl_14 = 1;
+    __gmpz_init((__mpz_struct *)(e_acsl_13));
+    {
+      mpz_t e_acsl_17;
+      mpz_t e_acsl_18;
+      mpz_t e_acsl_19;
+      __gmpz_init_set_si((__mpz_struct *)(e_acsl_17),(long)0);
+      __gmpz_init_set_si((__mpz_struct *)(e_acsl_18),(long)((char)1));
+      __gmpz_init((__mpz_struct *)(e_acsl_19));
+      __gmpz_add((__mpz_struct *)(e_acsl_19),
+                 (__mpz_struct const *)(e_acsl_17),
+                 (__mpz_struct const *)(e_acsl_18));
+      __gmpz_set((__mpz_struct *)(e_acsl_13),
+                 (__mpz_struct const *)(e_acsl_19));
+      __gmpz_clear((__mpz_struct *)(e_acsl_17));
+      __gmpz_clear((__mpz_struct *)(e_acsl_18));
+      __gmpz_clear((__mpz_struct *)(e_acsl_19));
+    }
+    
+    while (1) {
+      {
+        mpz_t e_acsl_20;
+        int e_acsl_21;
+        __gmpz_init_set_si((__mpz_struct *)(e_acsl_20),(long)1);
+        e_acsl_21 = __gmpz_cmp((__mpz_struct const *)(e_acsl_13),
+                               (__mpz_struct const *)(e_acsl_20));
+        if (! (e_acsl_21 <= 0)) { break; }
+        __gmpz_clear((__mpz_struct *)(e_acsl_20));
+      }
+      
+      {
+        mpz_t e_acsl_15;
+        int e_acsl_16;
+        __gmpz_init_set_si((__mpz_struct *)(e_acsl_15),(long)1);
+        e_acsl_16 = __gmpz_cmp((__mpz_struct const *)(e_acsl_13),
+                               (__mpz_struct const *)(e_acsl_15));
+        __gmpz_clear((__mpz_struct *)(e_acsl_15));
+        if (! (e_acsl_16 == 0)) {
+          e_acsl_14 = 0;
+          goto e_acsl_end_loop2; }
+      }
+      
+      {
+        mpz_t e_acsl_22;
+        mpz_t e_acsl_23;
+        __gmpz_init_set_si((__mpz_struct *)(e_acsl_22),(long)((char)1));
+        __gmpz_init((__mpz_struct *)(e_acsl_23));
+        __gmpz_add((__mpz_struct *)(e_acsl_23),
+                   (__mpz_struct const *)(e_acsl_13),
+                   (__mpz_struct const *)(e_acsl_22));
+        __gmpz_set((__mpz_struct *)(e_acsl_13),
+                   (__mpz_struct const *)(e_acsl_23));
+        __gmpz_clear((__mpz_struct *)(e_acsl_22));
+        __gmpz_clear((__mpz_struct *)(e_acsl_23));
+      }
+      
+    }
+    e_acsl_end_loop2: ;
+    if (! e_acsl_14) {
+      e_acsl_fail((char *)"(\\forall integer x; 0 < x && x <= 1 ==> x == 1)");
+    }
+    __gmpz_clear((__mpz_struct *)(e_acsl_13));
+  }
+  
+  /*@ assert ∀ ℤ x; 0 < x ∧ x < 1 ⇒ \false; */ ;
+  {
+    mpz_t e_acsl_24;
+    int e_acsl_25;
+    e_acsl_25 = 1;
+    __gmpz_init((__mpz_struct *)(e_acsl_24));
+    {
+      mpz_t e_acsl_26;
+      mpz_t e_acsl_27;
+      mpz_t e_acsl_28;
+      __gmpz_init_set_si((__mpz_struct *)(e_acsl_26),(long)0);
+      __gmpz_init_set_si((__mpz_struct *)(e_acsl_27),(long)((char)1));
+      __gmpz_init((__mpz_struct *)(e_acsl_28));
+      __gmpz_add((__mpz_struct *)(e_acsl_28),
+                 (__mpz_struct const *)(e_acsl_26),
+                 (__mpz_struct const *)(e_acsl_27));
+      __gmpz_set((__mpz_struct *)(e_acsl_24),
+                 (__mpz_struct const *)(e_acsl_28));
+      __gmpz_clear((__mpz_struct *)(e_acsl_26));
+      __gmpz_clear((__mpz_struct *)(e_acsl_27));
+      __gmpz_clear((__mpz_struct *)(e_acsl_28));
+    }
+    
+    while (1) {
+      {
+        mpz_t e_acsl_29;
+        int e_acsl_30;
+        __gmpz_init_set_si((__mpz_struct *)(e_acsl_29),(long)1);
+        e_acsl_30 = __gmpz_cmp((__mpz_struct const *)(e_acsl_24),
+                               (__mpz_struct const *)(e_acsl_29));
+        if (! (e_acsl_30 < 0)) { break; }
+        __gmpz_clear((__mpz_struct *)(e_acsl_29));
+      }
+      
+      e_acsl_25 = 0;
+      goto e_acsl_end_loop3;
+      {
+        mpz_t e_acsl_31;
+        mpz_t e_acsl_32;
+        __gmpz_init_set_si((__mpz_struct *)(e_acsl_31),(long)((char)1));
+        __gmpz_init((__mpz_struct *)(e_acsl_32));
+        __gmpz_add((__mpz_struct *)(e_acsl_32),
+                   (__mpz_struct const *)(e_acsl_24),
+                   (__mpz_struct const *)(e_acsl_31));
+        __gmpz_set((__mpz_struct *)(e_acsl_24),
+                   (__mpz_struct const *)(e_acsl_32));
+        __gmpz_clear((__mpz_struct *)(e_acsl_31));
+        __gmpz_clear((__mpz_struct *)(e_acsl_32));
+      }
+      
+    }
+    e_acsl_end_loop3: ;
+    if (! e_acsl_25) {
+      e_acsl_fail((char *)"(\\forall integer x; 0 < x && x < 1 ==> \\false)");
+    }
+    __gmpz_clear((__mpz_struct *)(e_acsl_24));
+  }
+  
+  /*@ assert ∀ ℤ x; 0 ≤ x ∧ x < 1 ⇒ x ≡ 0; */ ;
+  {
+    mpz_t e_acsl_33;
+    int e_acsl_34;
+    e_acsl_34 = 1;
+    __gmpz_init((__mpz_struct *)(e_acsl_33));
+    {
+      mpz_t e_acsl_37;
+      __gmpz_init_set_si((__mpz_struct *)(e_acsl_37),(long)0);
+      __gmpz_set((__mpz_struct *)(e_acsl_33),
+                 (__mpz_struct const *)(e_acsl_37));
+      __gmpz_clear((__mpz_struct *)(e_acsl_37));
+    }
+    
+    while (1) {
+      {
+        mpz_t e_acsl_38;
+        int e_acsl_39;
+        __gmpz_init_set_si((__mpz_struct *)(e_acsl_38),(long)1);
+        e_acsl_39 = __gmpz_cmp((__mpz_struct const *)(e_acsl_33),
+                               (__mpz_struct const *)(e_acsl_38));
+        if (! (e_acsl_39 < 0)) { break; }
+        __gmpz_clear((__mpz_struct *)(e_acsl_38));
+      }
+      
+      {
+        mpz_t e_acsl_35;
+        int e_acsl_36;
+        __gmpz_init_set_si((__mpz_struct *)(e_acsl_35),(long)0);
+        e_acsl_36 = __gmpz_cmp((__mpz_struct const *)(e_acsl_33),
+                               (__mpz_struct const *)(e_acsl_35));
+        __gmpz_clear((__mpz_struct *)(e_acsl_35));
+        if (! (e_acsl_36 == 0)) {
+          e_acsl_34 = 0;
+          goto e_acsl_end_loop4; }
+      }
+      
+      {
+        mpz_t e_acsl_40;
+        mpz_t e_acsl_41;
+        __gmpz_init_set_si((__mpz_struct *)(e_acsl_40),(long)((char)1));
+        __gmpz_init((__mpz_struct *)(e_acsl_41));
+        __gmpz_add((__mpz_struct *)(e_acsl_41),
+                   (__mpz_struct const *)(e_acsl_33),
+                   (__mpz_struct const *)(e_acsl_40));
+        __gmpz_set((__mpz_struct *)(e_acsl_33),
+                   (__mpz_struct const *)(e_acsl_41));
+        __gmpz_clear((__mpz_struct *)(e_acsl_40));
+        __gmpz_clear((__mpz_struct *)(e_acsl_41));
+      }
+      
+    }
+    e_acsl_end_loop4: ;
+    if (! e_acsl_34) {
+      e_acsl_fail((char *)"(\\forall integer x; 0 <= x && x < 1 ==> x == 0)");
+    }
+    __gmpz_clear((__mpz_struct *)(e_acsl_33));
+  }
+  
+  /*@
+  assert ∀ ℤ x, ℤ y, ℤ z;
+  ((0 ≤ x ∧ x < 2) ∧ (0 ≤ y ∧ y < 5)) ∧ (0 ≤ z ∧ z ≤ y) ⇒
+  x+z ≤ y+1; */ ;
+  {
+    mpz_t e_acsl_42;
+    mpz_t e_acsl_43;
+    mpz_t e_acsl_44;
+    int e_acsl_45;
+    e_acsl_45 = 1;
+    __gmpz_init((__mpz_struct *)(e_acsl_44));
+    __gmpz_init((__mpz_struct *)(e_acsl_43));
+    __gmpz_init((__mpz_struct *)(e_acsl_42));
+    {
+      mpz_t e_acsl_59;
+      __gmpz_init_set_si((__mpz_struct *)(e_acsl_59),(long)0);
+      __gmpz_set((__mpz_struct *)(e_acsl_42),
+                 (__mpz_struct const *)(e_acsl_59));
+      __gmpz_clear((__mpz_struct *)(e_acsl_59));
+    }
+    
+    while (1) {
+      {
+        mpz_t e_acsl_60;
+        int e_acsl_61;
+        __gmpz_init_set_si((__mpz_struct *)(e_acsl_60),(long)2);
+        e_acsl_61 = __gmpz_cmp((__mpz_struct const *)(e_acsl_42),
+                               (__mpz_struct const *)(e_acsl_60));
+        if (! (e_acsl_61 < 0)) { break; }
+        __gmpz_clear((__mpz_struct *)(e_acsl_60));
+      }
+      
+      {
+        mpz_t e_acsl_54;
+        __gmpz_init_set_si((__mpz_struct *)(e_acsl_54),(long)0);
+        __gmpz_set((__mpz_struct *)(e_acsl_43),
+                   (__mpz_struct const *)(e_acsl_54));
+        __gmpz_clear((__mpz_struct *)(e_acsl_54));
+      }
+      
+      while (1) {
+        {
+          mpz_t e_acsl_55;
+          int e_acsl_56;
+          __gmpz_init_set_si((__mpz_struct *)(e_acsl_55),(long)5);
+          e_acsl_56 = __gmpz_cmp((__mpz_struct const *)(e_acsl_43),
+                                 (__mpz_struct const *)(e_acsl_55));
+          if (! (e_acsl_56 < 0)) { break; }
+          __gmpz_clear((__mpz_struct *)(e_acsl_55));
+        }
+        
+        {
+          mpz_t e_acsl_50;
+          __gmpz_init_set_si((__mpz_struct *)(e_acsl_50),(long)0);
+          __gmpz_set((__mpz_struct *)(e_acsl_44),
+                     (__mpz_struct const *)(e_acsl_50));
+          __gmpz_clear((__mpz_struct *)(e_acsl_50));
+        }
+        
+        while (1) {
+          {
+            int e_acsl_51;
+            e_acsl_51 = __gmpz_cmp((__mpz_struct const *)(e_acsl_44),
+                                   (__mpz_struct const *)(e_acsl_43));
+            if (! (e_acsl_51 <= 0)) { break; }
+          }
+          
+          {
+            mpz_t e_acsl_46;
+            mpz_t e_acsl_47;
+            mpz_t e_acsl_48;
+            int e_acsl_49;
+            __gmpz_init((__mpz_struct *)(e_acsl_46));
+            __gmpz_add((__mpz_struct *)(e_acsl_46),
+                       (__mpz_struct const *)(e_acsl_42),
+                       (__mpz_struct const *)(e_acsl_44));
+            __gmpz_init_set_si((__mpz_struct *)(e_acsl_47),(long)1);
+            __gmpz_init((__mpz_struct *)(e_acsl_48));
+            __gmpz_add((__mpz_struct *)(e_acsl_48),
+                       (__mpz_struct const *)(e_acsl_43),
+                       (__mpz_struct const *)(e_acsl_47));
+            e_acsl_49 = __gmpz_cmp((__mpz_struct const *)(e_acsl_46),
+                                   (__mpz_struct const *)(e_acsl_48));
+            __gmpz_clear((__mpz_struct *)(e_acsl_46));
+            __gmpz_clear((__mpz_struct *)(e_acsl_47));
+            __gmpz_clear((__mpz_struct *)(e_acsl_48));
+            if (! (e_acsl_49 <= 0)) {
+              e_acsl_45 = 0;
+              goto e_acsl_end_loop5; }
+          }
+          
+          {
+            mpz_t e_acsl_52;
+            mpz_t e_acsl_53;
+            __gmpz_init_set_si((__mpz_struct *)(e_acsl_52),(long)((char)1));
+            __gmpz_init((__mpz_struct *)(e_acsl_53));
+            __gmpz_add((__mpz_struct *)(e_acsl_53),
+                       (__mpz_struct const *)(e_acsl_44),
+                       (__mpz_struct const *)(e_acsl_52));
+            __gmpz_set((__mpz_struct *)(e_acsl_44),
+                       (__mpz_struct const *)(e_acsl_53));
+            __gmpz_clear((__mpz_struct *)(e_acsl_52));
+            __gmpz_clear((__mpz_struct *)(e_acsl_53));
+          }
+          
+        }
+        {
+          mpz_t e_acsl_57;
+          mpz_t e_acsl_58;
+          __gmpz_init_set_si((__mpz_struct *)(e_acsl_57),(long)((char)1));
+          __gmpz_init((__mpz_struct *)(e_acsl_58));
+          __gmpz_add((__mpz_struct *)(e_acsl_58),
+                     (__mpz_struct const *)(e_acsl_43),
+                     (__mpz_struct const *)(e_acsl_57));
+          __gmpz_set((__mpz_struct *)(e_acsl_43),
+                     (__mpz_struct const *)(e_acsl_58));
+          __gmpz_clear((__mpz_struct *)(e_acsl_57));
+          __gmpz_clear((__mpz_struct *)(e_acsl_58));
+        }
+        
+      }
+      {
+        mpz_t e_acsl_62;
+        mpz_t e_acsl_63;
+        __gmpz_init_set_si((__mpz_struct *)(e_acsl_62),(long)((char)1));
+        __gmpz_init((__mpz_struct *)(e_acsl_63));
+        __gmpz_add((__mpz_struct *)(e_acsl_63),
+                   (__mpz_struct const *)(e_acsl_42),
+                   (__mpz_struct const *)(e_acsl_62));
+        __gmpz_set((__mpz_struct *)(e_acsl_42),
+                   (__mpz_struct const *)(e_acsl_63));
+        __gmpz_clear((__mpz_struct *)(e_acsl_62));
+        __gmpz_clear((__mpz_struct *)(e_acsl_63));
+      }
+      
+    }
+    e_acsl_end_loop5: ;
+    if (! e_acsl_45) {
+      e_acsl_fail((char *)"(\\forall integer x, integer y, integer z;\n  ((0 <= x && x < 2) && (0 <= y && y < 5)) && (0 <= z && z <= y) ==>\n  x+z <= y+1)");
+    }
+    __gmpz_clear((__mpz_struct *)(e_acsl_42));
+    __gmpz_clear((__mpz_struct *)(e_acsl_43));
+    __gmpz_clear((__mpz_struct *)(e_acsl_44));
+  }
+  
+  __retres = 0;
+  return (__retres);
+}
+
+
diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_typedef.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_typedef.c
new file mode 100644
index 0000000000000000000000000000000000000000..4df98a9641bd485ff3ab3bcf7332345b748490d9
--- /dev/null
+++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_typedef.c
@@ -0,0 +1,62 @@
+/* Generated by Frama-C */
+struct __anonstruct___mpz_struct_1 {
+   int _mp_alloc ;
+   int _mp_size ;
+   unsigned long *_mp_d ;
+};
+typedef struct __anonstruct___mpz_struct_1 __mpz_struct;
+typedef __mpz_struct mpz_t[1];
+typedef unsigned char uint8;
+/*@ ensures \valid(\old(z));
+    assigns *z;
+    assigns *z \from n;  */
+extern void __gmpz_init_set_ui(__mpz_struct * /*[1]*/ z, unsigned long n);
+/*@ ensures \valid(\old(z));
+    assigns *z;
+    assigns *z \from n;  */
+extern void __gmpz_init_set_si(__mpz_struct * /*[1]*/ z, long n);
+/*@ requires \valid(x);
+    assigns *x;  */
+extern void __gmpz_clear(__mpz_struct * /*[1]*/ x);
+/*@ requires \valid(z1);
+    requires \valid(z2);
+    assigns \nothing;  */
+extern int __gmpz_cmp(__mpz_struct const * /*[1]*/ z1,
+                      __mpz_struct const * /*[1]*/ z2);
+/*@ terminates \false;
+    ensures \false;
+    assigns \nothing;  */
+extern void exit(int status);
+/*@ assigns \nothing;  */
+extern int printf(char const * , ...);
+void e_acsl_fail(char *msg)
+{
+  printf("%s\n",msg);
+  exit(1);
+  return;
+}
+
+int main(void)
+{
+  int __retres;
+  uint8 x;
+  x = (unsigned char)0;
+  /*@ assert x ≡ 0; */ ;
+  {
+    mpz_t e_acsl_1;
+    mpz_t e_acsl_2;
+    int e_acsl_3;
+    __gmpz_init_set_ui((__mpz_struct *)(e_acsl_1),(unsigned long)x);
+    __gmpz_init_set_si((__mpz_struct *)(e_acsl_2),(long)0);
+    e_acsl_3 = __gmpz_cmp((__mpz_struct const *)(e_acsl_1),
+                          (__mpz_struct const *)(e_acsl_2));
+    if (! (e_acsl_3 == 0)) { e_acsl_fail((char *)"(x == 0)"); }
+    __gmpz_clear((__mpz_struct *)(e_acsl_1));
+    __gmpz_clear((__mpz_struct *)(e_acsl_2));
+  }
+  
+  __retres = 0;
+  return (__retres);
+}
+
+
diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/integer_constant.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/integer_constant.res.oracle
index eccc463971b391cb43689c3b183d56576d6bd35a..612808fe393949291fc4442f470bff79978af460 100644
--- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/integer_constant.res.oracle
+++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/integer_constant.res.oracle
@@ -2,32 +2,32 @@
 [value] Computing initial state
 [value] Initial state computed
 [value] Values of globals at initialization
-PROJECT_FILE.i:199:[value] Assertion got status valid.
-PROJECT_FILE.i:203:[value] Assertion got status valid.
-PROJECT_FILE.i:206:[value] Assertion got status valid.
+PROJECT_FILE.i:229:[value] Assertion got status valid.
+PROJECT_FILE.i:233:[value] Assertion got status valid.
+PROJECT_FILE.i:236:[value] Assertion got status valid.
 [value] computing for function __gmpz_init_set_str <- main.
-        Called from PROJECT_FILE.i:210.
-PROJECT_FILE.i:79:[value] Function __gmpz_init_set_str: postcondition got status valid.
+        Called from PROJECT_FILE.i:240.
+PROJECT_FILE.i:82:[value] Function __gmpz_init_set_str: postcondition got status valid.
 [value] Done for function __gmpz_init_set_str
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:211.
-PROJECT_FILE.i:91:[value] Function __gmpz_cmp: precondition got status valid.
-PROJECT_FILE.i:92:[value] Function __gmpz_cmp: precondition got status valid.
+        Called from PROJECT_FILE.i:241.
+PROJECT_FILE.i:115:[value] Function __gmpz_cmp: precondition got status valid.
+PROJECT_FILE.i:116:[value] Function __gmpz_cmp: precondition got status valid.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:213.
+        Called from PROJECT_FILE.i:243.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
-PROJECT_FILE.i:183:[value] Function exit: postcondition got status invalid.
+        Called from PROJECT_FILE.i:223.
+PROJECT_FILE.i:213:[value] Function exit: postcondition got status invalid.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:215.
-PROJECT_FILE.i:85:[value] Function __gmpz_clear: precondition got status valid.
+        Called from PROJECT_FILE.i:245.
+PROJECT_FILE.i:107:[value] Function __gmpz_clear: precondition got status valid.
 [value] Done for function __gmpz_clear
 [value] Recording results for main
 [value] done for function main
diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/lazy.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/lazy.res.oracle
index 05717c8c1317e4e8cdcacb84eadb2ba93342cb64..48a7728e324ed647390416513a2ab174fd63b504 100644
--- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/lazy.res.oracle
+++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/lazy.res.oracle
@@ -2,194 +2,194 @@
 [value] Computing initial state
 [value] Initial state computed
 [value] Values of globals at initialization
-PROJECT_FILE.i:202:[value] Assertion got status valid.
+PROJECT_FILE.i:232:[value] Assertion got status valid.
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:208.
-PROJECT_FILE.i:75:[value] Function __gmpz_init_set_si: postcondition got status valid.
+        Called from PROJECT_FILE.i:238.
+PROJECT_FILE.i:78:[value] Function __gmpz_init_set_si: postcondition got status valid.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:209.
+        Called from PROJECT_FILE.i:239.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:210.
-PROJECT_FILE.i:91:[value] Function __gmpz_cmp: precondition got status valid.
-PROJECT_FILE.i:92:[value] Function __gmpz_cmp: precondition got status valid.
+        Called from PROJECT_FILE.i:240.
+PROJECT_FILE.i:115:[value] Function __gmpz_cmp: precondition got status valid.
+PROJECT_FILE.i:116:[value] Function __gmpz_cmp: precondition got status valid.
 [value] Done for function __gmpz_cmp
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:215.
+        Called from PROJECT_FILE.i:245.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:216.
+        Called from PROJECT_FILE.i:246.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:217.
+        Called from PROJECT_FILE.i:247.
 [value] Done for function __gmpz_cmp
-PROJECT_FILE.i:218:[value] assigning non deterministic value for the first time
+PROJECT_FILE.i:248:[value] assigning non deterministic value for the first time
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:219.
-PROJECT_FILE.i:85:[value] Function __gmpz_clear: precondition got status valid.
+        Called from PROJECT_FILE.i:249.
+PROJECT_FILE.i:107:[value] Function __gmpz_clear: precondition got status valid.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:220.
+        Called from PROJECT_FILE.i:250.
 [value] Done for function __gmpz_clear
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:223.
+        Called from PROJECT_FILE.i:253.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
-PROJECT_FILE.i:183:[value] Function exit: postcondition got status invalid.
+        Called from PROJECT_FILE.i:223.
+PROJECT_FILE.i:213:[value] Function exit: postcondition got status invalid.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:224.
+        Called from PROJECT_FILE.i:254.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:225.
+        Called from PROJECT_FILE.i:255.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:229:[value] Assertion got status valid.
+PROJECT_FILE.i:259:[value] Assertion got status valid.
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:235.
+        Called from PROJECT_FILE.i:265.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:236.
+        Called from PROJECT_FILE.i:266.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:237.
+        Called from PROJECT_FILE.i:267.
 [value] Done for function __gmpz_cmp
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:243.
+        Called from PROJECT_FILE.i:273.
 [value] Done for function __gmpz_init_set_si
-PROJECT_FILE.i:244:[value] Assertion got status invalid (stopping propagation).
+PROJECT_FILE.i:274:[value] Assertion got status invalid (stopping propagation).
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:255.
+        Called from PROJECT_FILE.i:285.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:256.
+        Called from PROJECT_FILE.i:286.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:260:[value] Assertion got status valid.
+PROJECT_FILE.i:290:[value] Assertion got status valid.
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:266.
+        Called from PROJECT_FILE.i:296.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:267.
+        Called from PROJECT_FILE.i:297.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:268.
+        Called from PROJECT_FILE.i:298.
 [value] Done for function __gmpz_cmp
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:274.
+        Called from PROJECT_FILE.i:304.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:275.
+        Called from PROJECT_FILE.i:305.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:276.
+        Called from PROJECT_FILE.i:306.
 [value] Done for function __gmpz_cmp
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:278.
+        Called from PROJECT_FILE.i:308.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:279.
+        Called from PROJECT_FILE.i:309.
 [value] Done for function __gmpz_clear
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:281.
+        Called from PROJECT_FILE.i:311.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:282.
+        Called from PROJECT_FILE.i:312.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:283.
+        Called from PROJECT_FILE.i:313.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:287:[value] Assertion got status valid.
+PROJECT_FILE.i:317:[value] Assertion got status valid.
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:293.
+        Called from PROJECT_FILE.i:323.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:294.
+        Called from PROJECT_FILE.i:324.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:295.
+        Called from PROJECT_FILE.i:325.
 [value] Done for function __gmpz_cmp
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:302.
+        Called from PROJECT_FILE.i:332.
 [value] Done for function __gmpz_init_set_si
-PROJECT_FILE.i:303:[value] Assertion got status invalid (stopping propagation).
+PROJECT_FILE.i:333:[value] Assertion got status invalid (stopping propagation).
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:313.
+        Called from PROJECT_FILE.i:343.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:314.
+        Called from PROJECT_FILE.i:344.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:318:[value] Assertion got status valid.
+PROJECT_FILE.i:348:[value] Assertion got status valid.
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:324.
+        Called from PROJECT_FILE.i:354.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:325.
+        Called from PROJECT_FILE.i:355.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:326.
+        Called from PROJECT_FILE.i:356.
 [value] Done for function __gmpz_cmp
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:332.
+        Called from PROJECT_FILE.i:362.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:333.
+        Called from PROJECT_FILE.i:363.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:334.
+        Called from PROJECT_FILE.i:364.
 [value] Done for function __gmpz_cmp
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:336.
+        Called from PROJECT_FILE.i:366.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:337.
+        Called from PROJECT_FILE.i:367.
 [value] Done for function __gmpz_clear
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:339.
+        Called from PROJECT_FILE.i:369.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:340.
+        Called from PROJECT_FILE.i:370.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:341.
+        Called from PROJECT_FILE.i:371.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:345:[value] Assertion got status valid.
+PROJECT_FILE.i:375:[value] Assertion got status valid.
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:351.
+        Called from PROJECT_FILE.i:381.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:352.
+        Called from PROJECT_FILE.i:382.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:353.
+        Called from PROJECT_FILE.i:383.
 [value] Done for function __gmpz_cmp
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:360.
+        Called from PROJECT_FILE.i:390.
 [value] Done for function __gmpz_init_set_si
-PROJECT_FILE.i:361:[value] Assertion got status invalid (stopping propagation).
+PROJECT_FILE.i:391:[value] Assertion got status invalid (stopping propagation).
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:371.
+        Called from PROJECT_FILE.i:401.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:372.
+        Called from PROJECT_FILE.i:402.
 [value] Done for function __gmpz_clear
 [value] Recording results for main
 [value] done for function main
diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/nested_code_annot.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/nested_code_annot.res.oracle
index cd3a70c4d8e6fad5e27a64d17fd5c1eeaa504a59..f86c268944d7f635a8f0128b691471ed786fd562 100644
--- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/nested_code_annot.res.oracle
+++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/nested_code_annot.res.oracle
@@ -2,161 +2,161 @@
 [value] Computing initial state
 [value] Initial state computed
 [value] Values of globals at initialization
-PROJECT_FILE.i:202:[value] Assertion got status valid.
+PROJECT_FILE.i:232:[value] Assertion got status valid.
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:215.
-PROJECT_FILE.i:75:[value] Function __gmpz_init_set_si: postcondition got status valid.
+        Called from PROJECT_FILE.i:245.
+PROJECT_FILE.i:78:[value] Function __gmpz_init_set_si: postcondition got status valid.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:216.
+        Called from PROJECT_FILE.i:246.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:217.
-PROJECT_FILE.i:91:[value] Function __gmpz_cmp: precondition got status valid.
-PROJECT_FILE.i:92:[value] Function __gmpz_cmp: precondition got status valid.
+        Called from PROJECT_FILE.i:247.
+PROJECT_FILE.i:115:[value] Function __gmpz_cmp: precondition got status valid.
+PROJECT_FILE.i:116:[value] Function __gmpz_cmp: precondition got status valid.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:218.
+        Called from PROJECT_FILE.i:248.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
-PROJECT_FILE.i:183:[value] Function exit: postcondition got status invalid.
+        Called from PROJECT_FILE.i:223.
+PROJECT_FILE.i:213:[value] Function exit: postcondition got status invalid.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:219.
-PROJECT_FILE.i:85:[value] Function __gmpz_clear: precondition got status valid.
+        Called from PROJECT_FILE.i:249.
+PROJECT_FILE.i:107:[value] Function __gmpz_clear: precondition got status valid.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:220.
+        Called from PROJECT_FILE.i:250.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:236.
+        Called from PROJECT_FILE.i:266.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:237.
+        Called from PROJECT_FILE.i:267.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:238.
+        Called from PROJECT_FILE.i:268.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:239.
+        Called from PROJECT_FILE.i:269.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:240.
+        Called from PROJECT_FILE.i:270.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:241.
+        Called from PROJECT_FILE.i:271.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:245.
+        Called from PROJECT_FILE.i:275.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:246.
+        Called from PROJECT_FILE.i:276.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:247.
+        Called from PROJECT_FILE.i:277.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:248.
+        Called from PROJECT_FILE.i:278.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:249.
+        Called from PROJECT_FILE.i:279.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:250.
+        Called from PROJECT_FILE.i:280.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:264.
+        Called from PROJECT_FILE.i:294.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:265.
+        Called from PROJECT_FILE.i:295.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:266.
+        Called from PROJECT_FILE.i:296.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:267.
+        Called from PROJECT_FILE.i:297.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:268.
+        Called from PROJECT_FILE.i:298.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:269.
+        Called from PROJECT_FILE.i:299.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:273.
+        Called from PROJECT_FILE.i:303.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:274.
+        Called from PROJECT_FILE.i:304.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:275.
+        Called from PROJECT_FILE.i:305.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:276.
+        Called from PROJECT_FILE.i:306.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:277.
+        Called from PROJECT_FILE.i:307.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:278.
+        Called from PROJECT_FILE.i:308.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:289.
+        Called from PROJECT_FILE.i:319.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:290.
+        Called from PROJECT_FILE.i:320.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:291.
+        Called from PROJECT_FILE.i:321.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:292.
+        Called from PROJECT_FILE.i:322.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:293.
+        Called from PROJECT_FILE.i:323.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:294.
+        Called from PROJECT_FILE.i:324.
 [value] Done for function __gmpz_clear
 [value] Recording results for main
 [value] done for function main
diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/not.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/not.res.oracle
index d19f37d6739a76cf28815ffb90d8e47d3575935a..7c8f936c3fe9dff70a8034f4184a4f222872e9f4 100644
--- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/not.res.oracle
+++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/not.res.oracle
@@ -2,7 +2,7 @@
 [value] Computing initial state
 [value] Initial state computed
 [value] Values of globals at initialization
-PROJECT_FILE.i:200:[value] Assertion got status valid.
+PROJECT_FILE.i:230:[value] Assertion got status valid.
 [value] Recording results for main
 [value] done for function main
 [value] ====== VALUES COMPUTED ======
diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/null.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/null.res.oracle
index ec190615b97fba29e799131600b15178bbef1cc9..c1ac03952d2b442b0cc3dcf51948df61e64d6dda 100644
--- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/null.res.oracle
+++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/null.res.oracle
@@ -2,7 +2,7 @@
 [value] Computing initial state
 [value] Initial state computed
 [value] Values of globals at initialization
-PROJECT_FILE.i:198:[value] Assertion got status unknown.
+PROJECT_FILE.i:228:[value] Assertion got status unknown.
 [value] Recording results for main
 [value] done for function main
 [value] ====== VALUES COMPUTED ======
diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/other_constants.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/other_constants.res.oracle
index ea37edf7c2ca4b5c2eb459bc61198a35e7edc8d5..7ab45fc79d91dc777ffc7aa6a8b0b578d86e31f2 100644
--- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/other_constants.res.oracle
+++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/other_constants.res.oracle
@@ -2,33 +2,33 @@
 [value] Computing initial state
 [value] Initial state computed
 [value] Values of globals at initialization
-PROJECT_FILE.i:202:[value] Assertion got status unknown.
-PROJECT_FILE.i:205:[value] Assertion got status valid.
+PROJECT_FILE.i:232:[value] Assertion got status unknown.
+PROJECT_FILE.i:235:[value] Assertion got status valid.
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:209.
-PROJECT_FILE.i:75:[value] Function __gmpz_init_set_si: postcondition got status valid.
+        Called from PROJECT_FILE.i:239.
+PROJECT_FILE.i:78:[value] Function __gmpz_init_set_si: postcondition got status valid.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:210.
-PROJECT_FILE.i:91:[value] Function __gmpz_cmp: precondition got status valid.
-PROJECT_FILE.i:92:[value] Function __gmpz_cmp: precondition got status valid.
+        Called from PROJECT_FILE.i:240.
+PROJECT_FILE.i:115:[value] Function __gmpz_cmp: precondition got status valid.
+PROJECT_FILE.i:116:[value] Function __gmpz_cmp: precondition got status valid.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:211.
+        Called from PROJECT_FILE.i:241.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
-PROJECT_FILE.i:183:[value] Function exit: postcondition got status invalid.
+        Called from PROJECT_FILE.i:223.
+PROJECT_FILE.i:213:[value] Function exit: postcondition got status invalid.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:212.
-PROJECT_FILE.i:85:[value] Function __gmpz_clear: precondition got status valid.
+        Called from PROJECT_FILE.i:242.
+PROJECT_FILE.i:107:[value] Function __gmpz_clear: precondition got status valid.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:216:[value] Assertion got status valid.
+PROJECT_FILE.i:246:[value] Assertion got status valid.
 [value] Recording results for main
 [value] done for function main
 [value] ====== VALUES COMPUTED ======
diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/ptr.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/ptr.res.oracle
index a630f5884f78721a76e96de1854b4cf24e43c298..b87c8ae5fe2c0935eb4e999c455008a90b361b6d 100644
--- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/ptr.res.oracle
+++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/ptr.res.oracle
@@ -15,502 +15,502 @@ tests/e-acsl-runtime/ptr.i:26:[e-acsl] warning: missing guard for ensuring that
 [value] Computing initial state
 [value] Initial state computed
 [value] Values of globals at initialization
-PROJECT_FILE.i:206:[value] Assertion got status valid.
+PROJECT_FILE.i:236:[value] Assertion got status valid.
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:211.
-PROJECT_FILE.i:75:[value] Function __gmpz_init_set_si: postcondition got status valid.
+        Called from PROJECT_FILE.i:241.
+PROJECT_FILE.i:78:[value] Function __gmpz_init_set_si: postcondition got status valid.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:212.
+        Called from PROJECT_FILE.i:242.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:213.
-PROJECT_FILE.i:91:[value] Function __gmpz_cmp: precondition got status valid.
-PROJECT_FILE.i:92:[value] Function __gmpz_cmp: precondition got status valid.
+        Called from PROJECT_FILE.i:243.
+PROJECT_FILE.i:115:[value] Function __gmpz_cmp: precondition got status valid.
+PROJECT_FILE.i:116:[value] Function __gmpz_cmp: precondition got status valid.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:214.
+        Called from PROJECT_FILE.i:244.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
-PROJECT_FILE.i:183:[value] Function exit: postcondition got status invalid.
+        Called from PROJECT_FILE.i:223.
+PROJECT_FILE.i:213:[value] Function exit: postcondition got status invalid.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:215.
-PROJECT_FILE.i:85:[value] Function __gmpz_clear: precondition got status valid.
+        Called from PROJECT_FILE.i:245.
+PROJECT_FILE.i:107:[value] Function __gmpz_clear: precondition got status valid.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:216.
+        Called from PROJECT_FILE.i:246.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:220:[value] Assertion got status valid.
+PROJECT_FILE.i:250:[value] Assertion got status valid.
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:225.
+        Called from PROJECT_FILE.i:255.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:226.
+        Called from PROJECT_FILE.i:256.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:227.
+        Called from PROJECT_FILE.i:257.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:228.
+        Called from PROJECT_FILE.i:258.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:229.
+        Called from PROJECT_FILE.i:259.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:230.
+        Called from PROJECT_FILE.i:260.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:234:[value] Assertion got status valid.
+PROJECT_FILE.i:264:[value] Assertion got status valid.
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:239.
+        Called from PROJECT_FILE.i:269.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:240.
+        Called from PROJECT_FILE.i:270.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:241.
+        Called from PROJECT_FILE.i:271.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:242.
+        Called from PROJECT_FILE.i:272.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:243.
+        Called from PROJECT_FILE.i:273.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:244.
+        Called from PROJECT_FILE.i:274.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:248:[value] Assertion got status valid.
+PROJECT_FILE.i:278:[value] Assertion got status valid.
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:261.
+        Called from PROJECT_FILE.i:291.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:262.
+        Called from PROJECT_FILE.i:292.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init <- main.
-        Called from PROJECT_FILE.i:263.
-PROJECT_FILE.i:63:[value] Function __gmpz_init: postcondition got status valid.
+        Called from PROJECT_FILE.i:293.
+PROJECT_FILE.i:65:[value] Function __gmpz_init: postcondition got status valid.
 [value] Done for function __gmpz_init
 [value] computing for function __gmpz_mul <- main.
-        Called from PROJECT_FILE.i:264.
-PROJECT_FILE.i:118:[value] Function __gmpz_mul: precondition got status valid.
-PROJECT_FILE.i:119:[value] Function __gmpz_mul: precondition got status valid.
-PROJECT_FILE.i:120:[value] Function __gmpz_mul: precondition got status valid.
+        Called from PROJECT_FILE.i:294.
+PROJECT_FILE.i:146:[value] Function __gmpz_mul: precondition got status valid.
+PROJECT_FILE.i:147:[value] Function __gmpz_mul: precondition got status valid.
+PROJECT_FILE.i:148:[value] Function __gmpz_mul: precondition got status valid.
 [value] Done for function __gmpz_mul
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:265.
+        Called from PROJECT_FILE.i:295.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:266.
+        Called from PROJECT_FILE.i:296.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:267.
+        Called from PROJECT_FILE.i:297.
 [value] Done for function __gmpz_cmp
 [value] computing for function __gmpz_init <- main.
-        Called from PROJECT_FILE.i:268.
+        Called from PROJECT_FILE.i:298.
 [value] Done for function __gmpz_init
-PROJECT_FILE.i:269:[value] Assertion got status valid.
+PROJECT_FILE.i:299:[value] Assertion got status valid.
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:270.
+        Called from PROJECT_FILE.i:300.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_tdiv_q <- main.
-        Called from PROJECT_FILE.i:271.
-PROJECT_FILE.i:124:[value] Function __gmpz_tdiv_q: precondition got status valid.
-PROJECT_FILE.i:125:[value] Function __gmpz_tdiv_q: precondition got status valid.
-PROJECT_FILE.i:126:[value] Function __gmpz_tdiv_q: precondition got status valid.
+        Called from PROJECT_FILE.i:301.
+PROJECT_FILE.i:152:[value] Function __gmpz_tdiv_q: precondition got status valid.
+PROJECT_FILE.i:153:[value] Function __gmpz_tdiv_q: precondition got status valid.
+PROJECT_FILE.i:154:[value] Function __gmpz_tdiv_q: precondition got status valid.
 [value] Done for function __gmpz_tdiv_q
 [value] computing for function __gmpz_get_si <- main.
-        Called from PROJECT_FILE.i:272.
-PROJECT_FILE.i:138:[value] Function __gmpz_get_si: precondition got status valid.
+        Called from PROJECT_FILE.i:302.
+PROJECT_FILE.i:168:[value] Function __gmpz_get_si: precondition got status valid.
 [value] Done for function __gmpz_get_si
-PROJECT_FILE.i:273:[kernel] warning: accessing out of bounds index [-2147483648..2147483647].
+PROJECT_FILE.i:303:[kernel] warning: accessing out of bounds index [-2147483648..2147483647].
                   assert 0 ≤ e_acsl_17 ∧ e_acsl_17 < 3;
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:273.
+        Called from PROJECT_FILE.i:303.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:274.
+        Called from PROJECT_FILE.i:304.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:275.
+        Called from PROJECT_FILE.i:305.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:277.
+        Called from PROJECT_FILE.i:307.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:279.
+        Called from PROJECT_FILE.i:309.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:280.
+        Called from PROJECT_FILE.i:310.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:281.
+        Called from PROJECT_FILE.i:311.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:282.
+        Called from PROJECT_FILE.i:312.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:283.
+        Called from PROJECT_FILE.i:313.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:284.
+        Called from PROJECT_FILE.i:314.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:285.
+        Called from PROJECT_FILE.i:315.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:286.
+        Called from PROJECT_FILE.i:316.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:293:[value] entering loop for the first time
-PROJECT_FILE.i:296:[value] Assertion got status valid.
+PROJECT_FILE.i:323:[value] entering loop for the first time
+PROJECT_FILE.i:326:[value] Assertion got status valid.
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:303.
+        Called from PROJECT_FILE.i:333.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:304.
+        Called from PROJECT_FILE.i:334.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:305.
+        Called from PROJECT_FILE.i:335.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init <- main.
-        Called from PROJECT_FILE.i:306.
+        Called from PROJECT_FILE.i:336.
 [value] Done for function __gmpz_init
 [value] computing for function __gmpz_add <- main.
-        Called from PROJECT_FILE.i:307.
-PROJECT_FILE.i:106:[value] Function __gmpz_add: precondition got status valid.
-PROJECT_FILE.i:107:[value] Function __gmpz_add: precondition got status valid.
-PROJECT_FILE.i:108:[value] Function __gmpz_add: precondition got status valid.
+        Called from PROJECT_FILE.i:337.
+PROJECT_FILE.i:134:[value] Function __gmpz_add: precondition got status valid.
+PROJECT_FILE.i:135:[value] Function __gmpz_add: precondition got status valid.
+PROJECT_FILE.i:136:[value] Function __gmpz_add: precondition got status valid.
 [value] Done for function __gmpz_add
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:308.
+        Called from PROJECT_FILE.i:338.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:309.
+        Called from PROJECT_FILE.i:339.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:310.
+        Called from PROJECT_FILE.i:340.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:311.
+        Called from PROJECT_FILE.i:341.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:312.
+        Called from PROJECT_FILE.i:342.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:313.
+        Called from PROJECT_FILE.i:343.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:317:[value] Assertion got status valid.
+PROJECT_FILE.i:347:[value] Assertion got status valid.
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:327.
+        Called from PROJECT_FILE.i:357.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:328.
+        Called from PROJECT_FILE.i:358.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init <- main.
-        Called from PROJECT_FILE.i:329.
+        Called from PROJECT_FILE.i:359.
 [value] Done for function __gmpz_init
 [value] computing for function __gmpz_sub <- main.
-        Called from PROJECT_FILE.i:330.
-PROJECT_FILE.i:112:[value] Function __gmpz_sub: precondition got status valid.
-PROJECT_FILE.i:113:[value] Function __gmpz_sub: precondition got status valid.
-PROJECT_FILE.i:114:[value] Function __gmpz_sub: precondition got status valid.
+        Called from PROJECT_FILE.i:360.
+PROJECT_FILE.i:140:[value] Function __gmpz_sub: precondition got status valid.
+PROJECT_FILE.i:141:[value] Function __gmpz_sub: precondition got status valid.
+PROJECT_FILE.i:142:[value] Function __gmpz_sub: precondition got status valid.
 [value] Done for function __gmpz_sub
 [value] computing for function __gmpz_get_si <- main.
-        Called from PROJECT_FILE.i:331.
+        Called from PROJECT_FILE.i:361.
 [value] Done for function __gmpz_get_si
-PROJECT_FILE.i:332:[kernel] warning: accessing out of bounds index [-2147483648..2147483647].
+PROJECT_FILE.i:362:[kernel] warning: accessing out of bounds index [-2147483648..2147483647].
                   assert 0 ≤ e_acsl_29 ∧ e_acsl_29 < 3;
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:332.
+        Called from PROJECT_FILE.i:362.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:333.
+        Called from PROJECT_FILE.i:363.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init <- main.
-        Called from PROJECT_FILE.i:334.
+        Called from PROJECT_FILE.i:364.
 [value] Done for function __gmpz_init
 [value] computing for function __gmpz_sub <- main.
-        Called from PROJECT_FILE.i:335.
+        Called from PROJECT_FILE.i:365.
 [value] Done for function __gmpz_sub
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:336.
+        Called from PROJECT_FILE.i:366.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:337.
+        Called from PROJECT_FILE.i:367.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:338.
+        Called from PROJECT_FILE.i:368.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:339.
+        Called from PROJECT_FILE.i:369.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:340.
+        Called from PROJECT_FILE.i:370.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:341.
+        Called from PROJECT_FILE.i:371.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:342.
+        Called from PROJECT_FILE.i:372.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:343.
+        Called from PROJECT_FILE.i:373.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:347:[value] Assertion got status valid.
+PROJECT_FILE.i:377:[value] Assertion got status valid.
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:354.
+        Called from PROJECT_FILE.i:384.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:355.
+        Called from PROJECT_FILE.i:385.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:356.
+        Called from PROJECT_FILE.i:386.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init <- main.
-        Called from PROJECT_FILE.i:357.
+        Called from PROJECT_FILE.i:387.
 [value] Done for function __gmpz_init
 [value] computing for function __gmpz_sub <- main.
-        Called from PROJECT_FILE.i:358.
+        Called from PROJECT_FILE.i:388.
 [value] Done for function __gmpz_sub
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:359.
+        Called from PROJECT_FILE.i:389.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:360.
+        Called from PROJECT_FILE.i:390.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:361.
+        Called from PROJECT_FILE.i:391.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:362.
+        Called from PROJECT_FILE.i:392.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:363.
+        Called from PROJECT_FILE.i:393.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:364.
+        Called from PROJECT_FILE.i:394.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:296:[value] Assertion got status unknown.
+PROJECT_FILE.i:326:[value] Assertion got status unknown.
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:303.
+        Called from PROJECT_FILE.i:333.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:304.
+        Called from PROJECT_FILE.i:334.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:305.
+        Called from PROJECT_FILE.i:335.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init <- main.
-        Called from PROJECT_FILE.i:306.
+        Called from PROJECT_FILE.i:336.
 [value] Done for function __gmpz_init
 [value] computing for function __gmpz_add <- main.
-        Called from PROJECT_FILE.i:307.
+        Called from PROJECT_FILE.i:337.
 [value] Done for function __gmpz_add
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:308.
+        Called from PROJECT_FILE.i:338.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:309.
+        Called from PROJECT_FILE.i:339.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:310.
+        Called from PROJECT_FILE.i:340.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:311.
+        Called from PROJECT_FILE.i:341.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:312.
+        Called from PROJECT_FILE.i:342.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:313.
+        Called from PROJECT_FILE.i:343.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:317:[value] Assertion got status unknown.
+PROJECT_FILE.i:347:[value] Assertion got status unknown.
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:327.
+        Called from PROJECT_FILE.i:357.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:328.
+        Called from PROJECT_FILE.i:358.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init <- main.
-        Called from PROJECT_FILE.i:329.
+        Called from PROJECT_FILE.i:359.
 [value] Done for function __gmpz_init
 [value] computing for function __gmpz_sub <- main.
-        Called from PROJECT_FILE.i:330.
+        Called from PROJECT_FILE.i:360.
 [value] Done for function __gmpz_sub
 [value] computing for function __gmpz_get_si <- main.
-        Called from PROJECT_FILE.i:331.
+        Called from PROJECT_FILE.i:361.
 [value] Done for function __gmpz_get_si
-PROJECT_FILE.i:332:[value] Assertion got status unknown.
+PROJECT_FILE.i:362:[value] Assertion got status unknown.
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:332.
+        Called from PROJECT_FILE.i:362.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:333.
+        Called from PROJECT_FILE.i:363.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init <- main.
-        Called from PROJECT_FILE.i:334.
+        Called from PROJECT_FILE.i:364.
 [value] Done for function __gmpz_init
 [value] computing for function __gmpz_sub <- main.
-        Called from PROJECT_FILE.i:335.
+        Called from PROJECT_FILE.i:365.
 [value] Done for function __gmpz_sub
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:336.
+        Called from PROJECT_FILE.i:366.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:337.
+        Called from PROJECT_FILE.i:367.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:338.
+        Called from PROJECT_FILE.i:368.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:339.
+        Called from PROJECT_FILE.i:369.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:340.
+        Called from PROJECT_FILE.i:370.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:341.
+        Called from PROJECT_FILE.i:371.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:342.
+        Called from PROJECT_FILE.i:372.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:343.
+        Called from PROJECT_FILE.i:373.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:347:[value] Assertion got status unknown.
+PROJECT_FILE.i:377:[value] Assertion got status unknown.
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:354.
+        Called from PROJECT_FILE.i:384.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:355.
+        Called from PROJECT_FILE.i:385.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:356.
+        Called from PROJECT_FILE.i:386.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init <- main.
-        Called from PROJECT_FILE.i:357.
+        Called from PROJECT_FILE.i:387.
 [value] Done for function __gmpz_init
 [value] computing for function __gmpz_sub <- main.
-        Called from PROJECT_FILE.i:358.
+        Called from PROJECT_FILE.i:388.
 [value] Done for function __gmpz_sub
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:359.
+        Called from PROJECT_FILE.i:389.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:360.
+        Called from PROJECT_FILE.i:390.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:361.
+        Called from PROJECT_FILE.i:391.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:362.
+        Called from PROJECT_FILE.i:392.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:363.
+        Called from PROJECT_FILE.i:393.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:364.
+        Called from PROJECT_FILE.i:394.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:368:[value] assigning non deterministic value for the first time
-PROJECT_FILE.i:374:[value] Assertion got status valid.
+PROJECT_FILE.i:398:[value] assigning non deterministic value for the first time
+PROJECT_FILE.i:404:[value] Assertion got status valid.
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:379.
+        Called from PROJECT_FILE.i:409.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:380.
+        Called from PROJECT_FILE.i:410.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:381.
+        Called from PROJECT_FILE.i:411.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:382.
+        Called from PROJECT_FILE.i:412.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:383.
+        Called from PROJECT_FILE.i:413.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:384.
+        Called from PROJECT_FILE.i:414.
 [value] Done for function __gmpz_clear
 [value] Recording results for main
 [value] done for function main
diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/quantif.err.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/quantif.err.oracle
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/quantif.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/quantif.res.oracle
new file mode 100644
index 0000000000000000000000000000000000000000..cefa30ae81a9055272c7187b45674e636ba45fa9
--- /dev/null
+++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/quantif.res.oracle
@@ -0,0 +1,910 @@
+[value] Analyzing a complete application starting at main
+[value] Computing initial state
+[value] Initial state computed
+[value] Values of globals at initialization
+PROJECT_FILE.i:230:[value] Assertion got status unknown.
+[value] computing for function __gmpz_init <- main.
+        Called from PROJECT_FILE.i:235.
+PROJECT_FILE.i:65:[value] Function __gmpz_init: postcondition got status valid.
+[value] Done for function __gmpz_init
+[value] computing for function __gmpz_init_set_si <- main.
+        Called from PROJECT_FILE.i:238.
+PROJECT_FILE.i:78:[value] Function __gmpz_init_set_si: postcondition got status valid.
+[value] Done for function __gmpz_init_set_si
+[value] computing for function __gmpz_set <- main.
+        Called from PROJECT_FILE.i:239.
+PROJECT_FILE.i:90:[value] Function __gmpz_set: precondition got status valid.
+PROJECT_FILE.i:91:[value] Function __gmpz_set: precondition got status valid.
+[value] Done for function __gmpz_set
+[value] computing for function __gmpz_clear <- main.
+        Called from PROJECT_FILE.i:240.
+PROJECT_FILE.i:107:[value] Function __gmpz_clear: precondition got status valid.
+[value] Done for function __gmpz_clear
+PROJECT_FILE.i:243:[value] entering loop for the first time
+[value] computing for function __gmpz_init_set_si <- main.
+        Called from PROJECT_FILE.i:247.
+[value] Done for function __gmpz_init_set_si
+[value] computing for function __gmpz_cmp <- main.
+        Called from PROJECT_FILE.i:248.
+PROJECT_FILE.i:115:[value] Function __gmpz_cmp: precondition got status valid.
+PROJECT_FILE.i:116:[value] Function __gmpz_cmp: precondition got status valid.
+[value] Done for function __gmpz_cmp
+[value] computing for function __gmpz_clear <- main.
+        Called from PROJECT_FILE.i:250.
+[value] Done for function __gmpz_clear
+[value] computing for function __gmpz_init_set_si <- main.
+        Called from PROJECT_FILE.i:257.
+[value] Done for function __gmpz_init_set_si
+[value] computing for function __gmpz_cmp <- main.
+        Called from PROJECT_FILE.i:258.
+[value] Done for function __gmpz_cmp
+[value] computing for function __gmpz_init_set_si <- main.
+        Called from PROJECT_FILE.i:263.
+[value] Done for function __gmpz_init_set_si
+[value] computing for function __gmpz_clear <- main.
+        Called from PROJECT_FILE.i:268.
+[value] Done for function __gmpz_clear
+[value] computing for function __gmpz_cmp <- main.
+        Called from PROJECT_FILE.i:264.
+[value] Done for function __gmpz_cmp
+PROJECT_FILE.i:265:[value] assigning non deterministic value for the first time
+[value] computing for function __gmpz_clear <- main.
+        Called from PROJECT_FILE.i:266.
+[value] Done for function __gmpz_clear
+[value] computing for function __gmpz_init_set_si <- main.
+        Called from PROJECT_FILE.i:278.
+[value] Done for function __gmpz_init_set_si
+[value] computing for function __gmpz_clear <- main.
+        Called from PROJECT_FILE.i:268.
+[value] Done for function __gmpz_clear
+[value] computing for function __gmpz_init <- main.
+        Called from PROJECT_FILE.i:279.
+[value] Done for function __gmpz_init
+[value] computing for function __gmpz_add <- main.
+        Called from PROJECT_FILE.i:280.
+PROJECT_FILE.i:134:[value] Function __gmpz_add: precondition got status valid.
+PROJECT_FILE.i:135:[value] Function __gmpz_add: precondition got status valid.
+PROJECT_FILE.i:136:[value] Function __gmpz_add: precondition got status valid.
+[value] Done for function __gmpz_add
+[value] computing for function __gmpz_set <- main.
+        Called from PROJECT_FILE.i:281.
+[value] Done for function __gmpz_set
+[value] computing for function __gmpz_clear <- main.
+        Called from PROJECT_FILE.i:282.
+[value] Done for function __gmpz_clear
+[value] computing for function __gmpz_clear <- main.
+        Called from PROJECT_FILE.i:283.
+[value] Done for function __gmpz_clear
+[value] computing for function e_acsl_fail <- main.
+        Called from PROJECT_FILE.i:289.
+[value] computing for function printf <- e_acsl_fail <- main.
+        Called from PROJECT_FILE.i:223.
+[value] Done for function printf
+[value] computing for function exit <- e_acsl_fail <- main.
+        Called from PROJECT_FILE.i:223.
+PROJECT_FILE.i:213:[value] Function exit: postcondition got status invalid.
+[value] Done for function exit
+[value] Recording results for e_acsl_fail
+[value] Done for function e_acsl_fail
+[value] computing for function __gmpz_clear <- main.
+        Called from PROJECT_FILE.i:291.
+[value] Done for function __gmpz_clear
+PROJECT_FILE.i:295:[value] Assertion got status unknown.
+[value] computing for function __gmpz_init <- main.
+        Called from PROJECT_FILE.i:300.
+[value] Done for function __gmpz_init
+[value] computing for function __gmpz_init_set_si <- main.
+        Called from PROJECT_FILE.i:305.
+[value] Done for function __gmpz_init_set_si
+[value] computing for function __gmpz_init_set_si <- main.
+        Called from PROJECT_FILE.i:306.
+[value] Done for function __gmpz_init_set_si
+[value] computing for function __gmpz_init <- main.
+        Called from PROJECT_FILE.i:307.
+[value] Done for function __gmpz_init
+[value] computing for function __gmpz_add <- main.
+        Called from PROJECT_FILE.i:308.
+[value] Done for function __gmpz_add
+[value] computing for function __gmpz_set <- main.
+        Called from PROJECT_FILE.i:309.
+[value] Done for function __gmpz_set
+[value] computing for function __gmpz_clear <- main.
+        Called from PROJECT_FILE.i:310.
+[value] Done for function __gmpz_clear
+[value] computing for function __gmpz_clear <- main.
+        Called from PROJECT_FILE.i:311.
+[value] Done for function __gmpz_clear
+[value] computing for function __gmpz_clear <- main.
+        Called from PROJECT_FILE.i:312.
+[value] Done for function __gmpz_clear
+PROJECT_FILE.i:315:[value] entering loop for the first time
+[value] computing for function __gmpz_init_set_si <- main.
+        Called from PROJECT_FILE.i:319.
+[value] Done for function __gmpz_init_set_si
+[value] computing for function __gmpz_cmp <- main.
+        Called from PROJECT_FILE.i:320.
+[value] Done for function __gmpz_cmp
+[value] computing for function __gmpz_clear <- main.
+        Called from PROJECT_FILE.i:322.
+[value] Done for function __gmpz_clear
+[value] computing for function __gmpz_init_set_si <- main.
+        Called from PROJECT_FILE.i:328.
+[value] Done for function __gmpz_init_set_si
+[value] computing for function __gmpz_cmp <- main.
+        Called from PROJECT_FILE.i:329.
+[value] Done for function __gmpz_cmp
+[value] computing for function __gmpz_clear <- main.
+        Called from PROJECT_FILE.i:330.
+[value] Done for function __gmpz_clear
+[value] computing for function __gmpz_init_set_si <- main.
+        Called from PROJECT_FILE.i:340.
+[value] Done for function __gmpz_init_set_si
+[value] computing for function __gmpz_init <- main.
+        Called from PROJECT_FILE.i:341.
+[value] Done for function __gmpz_init
+[value] computing for function __gmpz_add <- main.
+        Called from PROJECT_FILE.i:342.
+[value] Done for function __gmpz_add
+[value] computing for function __gmpz_set <- main.
+        Called from PROJECT_FILE.i:343.
+[value] Done for function __gmpz_set
+[value] computing for function __gmpz_clear <- main.
+        Called from PROJECT_FILE.i:344.
+[value] Done for function __gmpz_clear
+[value] computing for function __gmpz_clear <- main.
+        Called from PROJECT_FILE.i:345.
+[value] Done for function __gmpz_clear
+[value] computing for function e_acsl_fail <- main.
+        Called from PROJECT_FILE.i:351.
+[value] computing for function printf <- e_acsl_fail <- main.
+        Called from PROJECT_FILE.i:223.
+[value] Done for function printf
+[value] computing for function exit <- e_acsl_fail <- main.
+        Called from PROJECT_FILE.i:223.
+[value] Done for function exit
+[value] Recording results for e_acsl_fail
+[value] Done for function e_acsl_fail
+[value] computing for function __gmpz_clear <- main.
+        Called from PROJECT_FILE.i:353.
+[value] Done for function __gmpz_clear
+PROJECT_FILE.i:357:[value] Assertion got status unknown.
+[value] computing for function __gmpz_init <- main.
+        Called from PROJECT_FILE.i:362.
+[value] Done for function __gmpz_init
+[value] computing for function __gmpz_init_set_si <- main.
+        Called from PROJECT_FILE.i:367.
+[value] Done for function __gmpz_init_set_si
+[value] computing for function __gmpz_init_set_si <- main.
+        Called from PROJECT_FILE.i:368.
+[value] Done for function __gmpz_init_set_si
+[value] computing for function __gmpz_init <- main.
+        Called from PROJECT_FILE.i:369.
+[value] Done for function __gmpz_init
+[value] computing for function __gmpz_add <- main.
+        Called from PROJECT_FILE.i:370.
+[value] Done for function __gmpz_add
+[value] computing for function __gmpz_set <- main.
+        Called from PROJECT_FILE.i:371.
+[value] Done for function __gmpz_set
+[value] computing for function __gmpz_clear <- main.
+        Called from PROJECT_FILE.i:372.
+[value] Done for function __gmpz_clear
+[value] computing for function __gmpz_clear <- main.
+        Called from PROJECT_FILE.i:373.
+[value] Done for function __gmpz_clear
+[value] computing for function __gmpz_clear <- main.
+        Called from PROJECT_FILE.i:374.
+[value] Done for function __gmpz_clear
+PROJECT_FILE.i:377:[value] entering loop for the first time
+[value] computing for function __gmpz_init_set_si <- main.
+        Called from PROJECT_FILE.i:381.
+[value] Done for function __gmpz_init_set_si
+[value] computing for function __gmpz_cmp <- main.
+        Called from PROJECT_FILE.i:382.
+[value] Done for function __gmpz_cmp
+[value] computing for function __gmpz_clear <- main.
+        Called from PROJECT_FILE.i:384.
+[value] Done for function __gmpz_clear
+[value] computing for function e_acsl_fail <- main.
+        Called from PROJECT_FILE.i:405.
+[value] computing for function printf <- e_acsl_fail <- main.
+        Called from PROJECT_FILE.i:223.
+[value] Done for function printf
+[value] computing for function exit <- e_acsl_fail <- main.
+        Called from PROJECT_FILE.i:223.
+[value] Done for function exit
+[value] Recording results for e_acsl_fail
+[value] Done for function e_acsl_fail
+[value] computing for function __gmpz_clear <- main.
+        Called from PROJECT_FILE.i:407.
+[value] Done for function __gmpz_clear
+PROJECT_FILE.i:411:[value] Assertion got status unknown.
+[value] computing for function __gmpz_init <- main.
+        Called from PROJECT_FILE.i:416.
+[value] Done for function __gmpz_init
+[value] computing for function __gmpz_init_set_si <- main.
+        Called from PROJECT_FILE.i:419.
+[value] Done for function __gmpz_init_set_si
+[value] computing for function __gmpz_set <- main.
+        Called from PROJECT_FILE.i:420.
+[value] Done for function __gmpz_set
+[value] computing for function __gmpz_clear <- main.
+        Called from PROJECT_FILE.i:421.
+[value] Done for function __gmpz_clear
+PROJECT_FILE.i:424:[value] entering loop for the first time
+[value] computing for function __gmpz_init_set_si <- main.
+        Called from PROJECT_FILE.i:428.
+[value] Done for function __gmpz_init_set_si
+[value] computing for function __gmpz_cmp <- main.
+        Called from PROJECT_FILE.i:429.
+[value] Done for function __gmpz_cmp
+[value] computing for function __gmpz_clear <- main.
+        Called from PROJECT_FILE.i:431.
+[value] Done for function __gmpz_clear
+[value] computing for function __gmpz_init_set_si <- main.
+        Called from PROJECT_FILE.i:437.
+[value] Done for function __gmpz_init_set_si
+[value] computing for function __gmpz_cmp <- main.
+        Called from PROJECT_FILE.i:438.
+[value] Done for function __gmpz_cmp
+[value] computing for function __gmpz_clear <- main.
+        Called from PROJECT_FILE.i:439.
+[value] Done for function __gmpz_clear
+[value] computing for function __gmpz_init_set_si <- main.
+        Called from PROJECT_FILE.i:449.
+[value] Done for function __gmpz_init_set_si
+[value] computing for function __gmpz_init <- main.
+        Called from PROJECT_FILE.i:450.
+[value] Done for function __gmpz_init
+[value] computing for function __gmpz_add <- main.
+        Called from PROJECT_FILE.i:451.
+[value] Done for function __gmpz_add
+[value] computing for function __gmpz_set <- main.
+        Called from PROJECT_FILE.i:452.
+[value] Done for function __gmpz_set
+[value] computing for function __gmpz_clear <- main.
+        Called from PROJECT_FILE.i:453.
+[value] Done for function __gmpz_clear
+[value] computing for function __gmpz_clear <- main.
+        Called from PROJECT_FILE.i:454.
+[value] Done for function __gmpz_clear
+[value] computing for function e_acsl_fail <- main.
+        Called from PROJECT_FILE.i:460.
+[value] computing for function printf <- e_acsl_fail <- main.
+        Called from PROJECT_FILE.i:223.
+[value] Done for function printf
+[value] computing for function exit <- e_acsl_fail <- main.
+        Called from PROJECT_FILE.i:223.
+[value] Done for function exit
+[value] Recording results for e_acsl_fail
+[value] Done for function e_acsl_fail
+[value] computing for function __gmpz_clear <- main.
+        Called from PROJECT_FILE.i:462.
+[value] Done for function __gmpz_clear
+PROJECT_FILE.i:466:[value] Assertion got status unknown.
+[value] computing for function __gmpz_init <- main.
+        Called from PROJECT_FILE.i:476.
+[value] Done for function __gmpz_init
+[value] computing for function __gmpz_init <- main.
+        Called from PROJECT_FILE.i:477.
+[value] Done for function __gmpz_init
+[value] computing for function __gmpz_init <- main.
+        Called from PROJECT_FILE.i:478.
+[value] Done for function __gmpz_init
+[value] computing for function __gmpz_init_set_si <- main.
+        Called from PROJECT_FILE.i:481.
+[value] Done for function __gmpz_init_set_si
+[value] computing for function __gmpz_set <- main.
+        Called from PROJECT_FILE.i:482.
+[value] Done for function __gmpz_set
+[value] computing for function __gmpz_clear <- main.
+        Called from PROJECT_FILE.i:483.
+[value] Done for function __gmpz_clear
+PROJECT_FILE.i:486:[value] entering loop for the first time
+[value] computing for function __gmpz_init_set_si <- main.
+        Called from PROJECT_FILE.i:490.
+[value] Done for function __gmpz_init_set_si
+[value] computing for function __gmpz_cmp <- main.
+        Called from PROJECT_FILE.i:491.
+[value] Done for function __gmpz_cmp
+[value] computing for function __gmpz_clear <- main.
+        Called from PROJECT_FILE.i:493.
+[value] Done for function __gmpz_clear
+[value] computing for function __gmpz_init_set_si <- main.
+        Called from PROJECT_FILE.i:498.
+[value] Done for function __gmpz_init_set_si
+[value] computing for function __gmpz_set <- main.
+        Called from PROJECT_FILE.i:499.
+[value] Done for function __gmpz_set
+[value] computing for function __gmpz_clear <- main.
+        Called from PROJECT_FILE.i:500.
+[value] Done for function __gmpz_clear
+PROJECT_FILE.i:503:[value] entering loop for the first time
+[value] computing for function __gmpz_init_set_si <- main.
+        Called from PROJECT_FILE.i:507.
+[value] Done for function __gmpz_init_set_si
+[value] computing for function __gmpz_cmp <- main.
+        Called from PROJECT_FILE.i:508.
+[value] Done for function __gmpz_cmp
+[value] computing for function __gmpz_clear <- main.
+        Called from PROJECT_FILE.i:510.
+[value] Done for function __gmpz_clear
+[value] computing for function __gmpz_init_set_si <- main.
+        Called from PROJECT_FILE.i:515.
+[value] Done for function __gmpz_init_set_si
+[value] computing for function __gmpz_init_set_si <- main.
+        Called from PROJECT_FILE.i:574.
+[value] Done for function __gmpz_init_set_si
+[value] computing for function __gmpz_set <- main.
+        Called from PROJECT_FILE.i:516.
+[value] Done for function __gmpz_set
+[value] computing for function __gmpz_init <- main.
+        Called from PROJECT_FILE.i:575.
+[value] Done for function __gmpz_init
+[value] computing for function __gmpz_clear <- main.
+        Called from PROJECT_FILE.i:517.
+[value] Done for function __gmpz_clear
+[value] computing for function __gmpz_add <- main.
+        Called from PROJECT_FILE.i:576.
+[value] Done for function __gmpz_add
+PROJECT_FILE.i:520:[value] entering loop for the first time
+[value] computing for function __gmpz_set <- main.
+        Called from PROJECT_FILE.i:577.
+[value] Done for function __gmpz_set
+[value] computing for function __gmpz_clear <- main.
+        Called from PROJECT_FILE.i:578.
+[value] Done for function __gmpz_clear
+[value] computing for function __gmpz_clear <- main.
+        Called from PROJECT_FILE.i:579.
+[value] Done for function __gmpz_clear
+[value] computing for function __gmpz_cmp <- main.
+        Called from PROJECT_FILE.i:523.
+[value] Done for function __gmpz_cmp
+[value] computing for function __gmpz_init <- main.
+        Called from PROJECT_FILE.i:532.
+[value] Done for function __gmpz_init
+[value] computing for function __gmpz_add <- main.
+        Called from PROJECT_FILE.i:533.
+[value] Done for function __gmpz_add
+[value] computing for function __gmpz_init_set_si <- main.
+        Called from PROJECT_FILE.i:562.
+[value] Done for function __gmpz_init_set_si
+[value] computing for function __gmpz_init_set_si <- main.
+        Called from PROJECT_FILE.i:534.
+[value] Done for function __gmpz_init_set_si
+[value] computing for function __gmpz_init <- main.
+        Called from PROJECT_FILE.i:563.
+[value] Done for function __gmpz_init
+[value] computing for function __gmpz_init <- main.
+        Called from PROJECT_FILE.i:535.
+[value] Done for function __gmpz_init
+[value] computing for function __gmpz_add <- main.
+        Called from PROJECT_FILE.i:564.
+[value] Done for function __gmpz_add
+[value] computing for function __gmpz_add <- main.
+        Called from PROJECT_FILE.i:536.
+[value] Done for function __gmpz_add
+[value] computing for function __gmpz_set <- main.
+        Called from PROJECT_FILE.i:565.
+[value] Done for function __gmpz_set
+[value] computing for function __gmpz_cmp <- main.
+        Called from PROJECT_FILE.i:537.
+[value] Done for function __gmpz_cmp
+[value] computing for function __gmpz_clear <- main.
+        Called from PROJECT_FILE.i:566.
+[value] Done for function __gmpz_clear
+[value] computing for function __gmpz_clear <- main.
+        Called from PROJECT_FILE.i:538.
+[value] Done for function __gmpz_clear
+[value] computing for function __gmpz_clear <- main.
+        Called from PROJECT_FILE.i:567.
+[value] Done for function __gmpz_clear
+[value] computing for function __gmpz_clear <- main.
+        Called from PROJECT_FILE.i:539.
+[value] Done for function __gmpz_clear
+[value] computing for function __gmpz_clear <- main.
+        Called from PROJECT_FILE.i:540.
+[value] Done for function __gmpz_clear
+[value] computing for function __gmpz_init_set_si <- main.
+        Called from PROJECT_FILE.i:550.
+[value] Done for function __gmpz_init_set_si
+[value] computing for function __gmpz_init <- main.
+        Called from PROJECT_FILE.i:551.
+[value] Done for function __gmpz_init
+[value] computing for function __gmpz_add <- main.
+        Called from PROJECT_FILE.i:552.
+[value] Done for function __gmpz_add
+[value] computing for function __gmpz_set <- main.
+        Called from PROJECT_FILE.i:553.
+[value] Done for function __gmpz_set
+[value] computing for function __gmpz_clear <- main.
+        Called from PROJECT_FILE.i:554.
+[value] Done for function __gmpz_clear
+[value] computing for function __gmpz_clear <- main.
+        Called from PROJECT_FILE.i:555.
+[value] Done for function __gmpz_clear
+[value] computing for function e_acsl_fail <- main.
+        Called from PROJECT_FILE.i:585.
+[value] computing for function printf <- e_acsl_fail <- main.
+        Called from PROJECT_FILE.i:223.
+[value] Done for function printf
+[value] computing for function exit <- e_acsl_fail <- main.
+        Called from PROJECT_FILE.i:223.
+[value] Done for function exit
+[value] Recording results for e_acsl_fail
+[value] Done for function e_acsl_fail
+[value] computing for function __gmpz_clear <- main.
+        Called from PROJECT_FILE.i:587.
+[value] Done for function __gmpz_clear
+[value] computing for function __gmpz_clear <- main.
+        Called from PROJECT_FILE.i:588.
+[value] Done for function __gmpz_clear
+[value] computing for function __gmpz_clear <- main.
+        Called from PROJECT_FILE.i:589.
+[value] Done for function __gmpz_clear
+[value] Recording results for main
+[value] done for function main
+[value] ====== VALUES COMPUTED ======
+[value] Values at end of function e_acsl_fail:
+          NON TERMINATING FUNCTION
+[value] Values at end of function main:
+          __retres ‚àà {0}
+          a ‚àà {-1}
+/* Generated by Frama-C */
+struct __anonstruct___mpz_struct_1 {
+   int _mp_alloc ;
+   int _mp_size ;
+   unsigned long *_mp_d ;
+};
+typedef struct __anonstruct___mpz_struct_1 __mpz_struct;
+typedef __mpz_struct mpz_t[1];
+/*@ ensures \valid(\old(x));
+    assigns *x;  */
+extern void __gmpz_init(__mpz_struct * /*[1]*/ x);
+/*@ ensures \valid(\old(z));
+    assigns *z;
+    assigns *z \from n;  */
+extern void __gmpz_init_set_si(__mpz_struct * /*[1]*/ z, long n);
+/*@ requires \valid(z_orig);
+    requires \valid(z);
+    assigns *z;  */
+extern void __gmpz_set(__mpz_struct * /*[1]*/ z,
+                       __mpz_struct const * /*[1]*/ z_orig);
+/*@ requires \valid(x);
+    assigns *x;  */
+extern void __gmpz_clear(__mpz_struct * /*[1]*/ x);
+/*@ requires \valid(z1);
+    requires \valid(z2);
+    assigns \nothing;  */
+extern int __gmpz_cmp(__mpz_struct const * /*[1]*/ z1,
+                      __mpz_struct const * /*[1]*/ z2);
+/*@ requires \valid(z1);
+    requires \valid(z2);
+    requires \valid(z3);
+    assigns *z1; 
+*/
+extern void __gmpz_add(__mpz_struct * /*[1]*/ z1,
+                       __mpz_struct const * /*[1]*/ z2,
+                       __mpz_struct const * /*[1]*/ z3);
+/*@ terminates \false;
+    ensures \false;
+    assigns \nothing;  */
+extern void exit(int status);
+/*@ assigns \nothing;  */
+extern int printf(char const * , ...);
+void e_acsl_fail(char *msg)
+{
+  printf("%s\n",msg);
+  exit(1);
+  return;
+}
+
+int main(void)
+{
+  int __retres;
+  int a;
+  a = -1;
+  /*@ assert ∀ ℤ x; 0 ≤ x ∧ x ≤ 1 ⇒ x ≡ 0 ∨ x ≡ 1; */ ;
+  {
+    mpz_t e_acsl_1;
+    int e_acsl_2;
+    e_acsl_2 = 1;
+    __gmpz_init((__mpz_struct *)(e_acsl_1));
+    {
+      mpz_t e_acsl_8;
+      __gmpz_init_set_si((__mpz_struct *)(e_acsl_8),(long)0);
+      __gmpz_set((__mpz_struct *)(e_acsl_1),(__mpz_struct const *)(e_acsl_8));
+      __gmpz_clear((__mpz_struct *)(e_acsl_8));
+    }
+    
+    while (1) {
+      {
+        mpz_t e_acsl_9;
+        int e_acsl_10;
+        __gmpz_init_set_si((__mpz_struct *)(e_acsl_9),(long)1);
+        e_acsl_10 = __gmpz_cmp((__mpz_struct const *)(e_acsl_1),
+                               (__mpz_struct const *)(e_acsl_9));
+        if (! (e_acsl_10 <= 0)) { break; }
+        __gmpz_clear((__mpz_struct *)(e_acsl_9));
+      }
+      
+      {
+        mpz_t e_acsl_3;
+        int e_acsl_4;
+        int e_acsl_7;
+        __gmpz_init_set_si((__mpz_struct *)(e_acsl_3),(long)0);
+        e_acsl_4 = __gmpz_cmp((__mpz_struct const *)(e_acsl_1),
+                              (__mpz_struct const *)(e_acsl_3));
+        if (e_acsl_4 == 0) { e_acsl_7 = 1; }
+        else {
+          mpz_t e_acsl_5;
+          int e_acsl_6;
+          __gmpz_init_set_si((__mpz_struct *)(e_acsl_5),(long)1);
+          e_acsl_6 = __gmpz_cmp((__mpz_struct const *)(e_acsl_1),
+                                (__mpz_struct const *)(e_acsl_5));
+          e_acsl_7 = e_acsl_6 == 0;
+          __gmpz_clear((__mpz_struct *)(e_acsl_5));
+        }
+        __gmpz_clear((__mpz_struct *)(e_acsl_3));
+        if (! e_acsl_7) {
+          e_acsl_2 = 0;
+          goto e_acsl_end_loop1; }
+      }
+      
+      {
+        mpz_t e_acsl_11;
+        mpz_t e_acsl_12;
+        __gmpz_init_set_si((__mpz_struct *)(e_acsl_11),(long)((char)1));
+        __gmpz_init((__mpz_struct *)(e_acsl_12));
+        __gmpz_add((__mpz_struct *)(e_acsl_12),
+                   (__mpz_struct const *)(e_acsl_1),
+                   (__mpz_struct const *)(e_acsl_11));
+        __gmpz_set((__mpz_struct *)(e_acsl_1),
+                   (__mpz_struct const *)(e_acsl_12));
+        __gmpz_clear((__mpz_struct *)(e_acsl_11));
+        __gmpz_clear((__mpz_struct *)(e_acsl_12));
+      }
+      
+    }
+    e_acsl_end_loop1: ;
+    if (! e_acsl_2) {
+      e_acsl_fail((char *)"(\\forall integer x; 0 <= x && x <= 1 ==> x == 0 || x == 1)");
+    }
+    __gmpz_clear((__mpz_struct *)(e_acsl_1));
+  }
+  
+  /*@ assert ∀ ℤ x; 0 < x ∧ x ≤ 1 ⇒ x ≡ 1; */ ;
+  {
+    mpz_t e_acsl_13;
+    int e_acsl_14;
+    e_acsl_14 = 1;
+    __gmpz_init((__mpz_struct *)(e_acsl_13));
+    {
+      mpz_t e_acsl_17;
+      mpz_t e_acsl_18;
+      mpz_t e_acsl_19;
+      __gmpz_init_set_si((__mpz_struct *)(e_acsl_17),(long)0);
+      __gmpz_init_set_si((__mpz_struct *)(e_acsl_18),(long)((char)1));
+      __gmpz_init((__mpz_struct *)(e_acsl_19));
+      __gmpz_add((__mpz_struct *)(e_acsl_19),
+                 (__mpz_struct const *)(e_acsl_17),
+                 (__mpz_struct const *)(e_acsl_18));
+      __gmpz_set((__mpz_struct *)(e_acsl_13),
+                 (__mpz_struct const *)(e_acsl_19));
+      __gmpz_clear((__mpz_struct *)(e_acsl_17));
+      __gmpz_clear((__mpz_struct *)(e_acsl_18));
+      __gmpz_clear((__mpz_struct *)(e_acsl_19));
+    }
+    
+    while (1) {
+      {
+        mpz_t e_acsl_20;
+        int e_acsl_21;
+        __gmpz_init_set_si((__mpz_struct *)(e_acsl_20),(long)1);
+        e_acsl_21 = __gmpz_cmp((__mpz_struct const *)(e_acsl_13),
+                               (__mpz_struct const *)(e_acsl_20));
+        if (! (e_acsl_21 <= 0)) { break; }
+        __gmpz_clear((__mpz_struct *)(e_acsl_20));
+      }
+      
+      {
+        mpz_t e_acsl_15;
+        int e_acsl_16;
+        __gmpz_init_set_si((__mpz_struct *)(e_acsl_15),(long)1);
+        e_acsl_16 = __gmpz_cmp((__mpz_struct const *)(e_acsl_13),
+                               (__mpz_struct const *)(e_acsl_15));
+        __gmpz_clear((__mpz_struct *)(e_acsl_15));
+        if (! (e_acsl_16 == 0)) {
+          e_acsl_14 = 0;
+          goto e_acsl_end_loop2; }
+      }
+      
+      {
+        mpz_t e_acsl_22;
+        mpz_t e_acsl_23;
+        __gmpz_init_set_si((__mpz_struct *)(e_acsl_22),(long)((char)1));
+        __gmpz_init((__mpz_struct *)(e_acsl_23));
+        __gmpz_add((__mpz_struct *)(e_acsl_23),
+                   (__mpz_struct const *)(e_acsl_13),
+                   (__mpz_struct const *)(e_acsl_22));
+        __gmpz_set((__mpz_struct *)(e_acsl_13),
+                   (__mpz_struct const *)(e_acsl_23));
+        __gmpz_clear((__mpz_struct *)(e_acsl_22));
+        __gmpz_clear((__mpz_struct *)(e_acsl_23));
+      }
+      
+    }
+    e_acsl_end_loop2: ;
+    if (! e_acsl_14) {
+      e_acsl_fail((char *)"(\\forall integer x; 0 < x && x <= 1 ==> x == 1)");
+    }
+    __gmpz_clear((__mpz_struct *)(e_acsl_13));
+  }
+  
+  /*@ assert ∀ ℤ x; 0 < x ∧ x < 1 ⇒ \false; */ ;
+  {
+    mpz_t e_acsl_24;
+    int e_acsl_25;
+    e_acsl_25 = 1;
+    __gmpz_init((__mpz_struct *)(e_acsl_24));
+    {
+      mpz_t e_acsl_26;
+      mpz_t e_acsl_27;
+      mpz_t e_acsl_28;
+      __gmpz_init_set_si((__mpz_struct *)(e_acsl_26),(long)0);
+      __gmpz_init_set_si((__mpz_struct *)(e_acsl_27),(long)((char)1));
+      __gmpz_init((__mpz_struct *)(e_acsl_28));
+      __gmpz_add((__mpz_struct *)(e_acsl_28),
+                 (__mpz_struct const *)(e_acsl_26),
+                 (__mpz_struct const *)(e_acsl_27));
+      __gmpz_set((__mpz_struct *)(e_acsl_24),
+                 (__mpz_struct const *)(e_acsl_28));
+      __gmpz_clear((__mpz_struct *)(e_acsl_26));
+      __gmpz_clear((__mpz_struct *)(e_acsl_27));
+      __gmpz_clear((__mpz_struct *)(e_acsl_28));
+    }
+    
+    while (1) {
+      {
+        mpz_t e_acsl_29;
+        int e_acsl_30;
+        __gmpz_init_set_si((__mpz_struct *)(e_acsl_29),(long)1);
+        e_acsl_30 = __gmpz_cmp((__mpz_struct const *)(e_acsl_24),
+                               (__mpz_struct const *)(e_acsl_29));
+        if (! (e_acsl_30 < 0)) { break; }
+        __gmpz_clear((__mpz_struct *)(e_acsl_29));
+      }
+      
+      e_acsl_25 = 0;
+      goto e_acsl_end_loop3;
+      {
+        mpz_t e_acsl_31;
+        mpz_t e_acsl_32;
+        __gmpz_init_set_si((__mpz_struct *)(e_acsl_31),(long)((char)1));
+        __gmpz_init((__mpz_struct *)(e_acsl_32));
+        __gmpz_add((__mpz_struct *)(e_acsl_32),
+                   (__mpz_struct const *)(e_acsl_24),
+                   (__mpz_struct const *)(e_acsl_31));
+        __gmpz_set((__mpz_struct *)(e_acsl_24),
+                   (__mpz_struct const *)(e_acsl_32));
+        __gmpz_clear((__mpz_struct *)(e_acsl_31));
+        __gmpz_clear((__mpz_struct *)(e_acsl_32));
+      }
+      
+    }
+    e_acsl_end_loop3: ;
+    if (! e_acsl_25) {
+      e_acsl_fail((char *)"(\\forall integer x; 0 < x && x < 1 ==> \\false)");
+    }
+    __gmpz_clear((__mpz_struct *)(e_acsl_24));
+  }
+  
+  /*@ assert ∀ ℤ x; 0 ≤ x ∧ x < 1 ⇒ x ≡ 0; */ ;
+  {
+    mpz_t e_acsl_33;
+    int e_acsl_34;
+    e_acsl_34 = 1;
+    __gmpz_init((__mpz_struct *)(e_acsl_33));
+    {
+      mpz_t e_acsl_37;
+      __gmpz_init_set_si((__mpz_struct *)(e_acsl_37),(long)0);
+      __gmpz_set((__mpz_struct *)(e_acsl_33),
+                 (__mpz_struct const *)(e_acsl_37));
+      __gmpz_clear((__mpz_struct *)(e_acsl_37));
+    }
+    
+    while (1) {
+      {
+        mpz_t e_acsl_38;
+        int e_acsl_39;
+        __gmpz_init_set_si((__mpz_struct *)(e_acsl_38),(long)1);
+        e_acsl_39 = __gmpz_cmp((__mpz_struct const *)(e_acsl_33),
+                               (__mpz_struct const *)(e_acsl_38));
+        if (! (e_acsl_39 < 0)) { break; }
+        __gmpz_clear((__mpz_struct *)(e_acsl_38));
+      }
+      
+      {
+        mpz_t e_acsl_35;
+        int e_acsl_36;
+        __gmpz_init_set_si((__mpz_struct *)(e_acsl_35),(long)0);
+        e_acsl_36 = __gmpz_cmp((__mpz_struct const *)(e_acsl_33),
+                               (__mpz_struct const *)(e_acsl_35));
+        __gmpz_clear((__mpz_struct *)(e_acsl_35));
+        if (! (e_acsl_36 == 0)) {
+          e_acsl_34 = 0;
+          goto e_acsl_end_loop4; }
+      }
+      
+      {
+        mpz_t e_acsl_40;
+        mpz_t e_acsl_41;
+        __gmpz_init_set_si((__mpz_struct *)(e_acsl_40),(long)((char)1));
+        __gmpz_init((__mpz_struct *)(e_acsl_41));
+        __gmpz_add((__mpz_struct *)(e_acsl_41),
+                   (__mpz_struct const *)(e_acsl_33),
+                   (__mpz_struct const *)(e_acsl_40));
+        __gmpz_set((__mpz_struct *)(e_acsl_33),
+                   (__mpz_struct const *)(e_acsl_41));
+        __gmpz_clear((__mpz_struct *)(e_acsl_40));
+        __gmpz_clear((__mpz_struct *)(e_acsl_41));
+      }
+      
+    }
+    e_acsl_end_loop4: ;
+    if (! e_acsl_34) {
+      e_acsl_fail((char *)"(\\forall integer x; 0 <= x && x < 1 ==> x == 0)");
+    }
+    __gmpz_clear((__mpz_struct *)(e_acsl_33));
+  }
+  
+  /*@
+  assert ∀ ℤ x, ℤ y, ℤ z;
+  ((0 ≤ x ∧ x < 2) ∧ (0 ≤ y ∧ y < 5)) ∧ (0 ≤ z ∧ z ≤ y) ⇒
+  x+z ≤ y+1; */ ;
+  {
+    mpz_t e_acsl_42;
+    mpz_t e_acsl_43;
+    mpz_t e_acsl_44;
+    int e_acsl_45;
+    e_acsl_45 = 1;
+    __gmpz_init((__mpz_struct *)(e_acsl_44));
+    __gmpz_init((__mpz_struct *)(e_acsl_43));
+    __gmpz_init((__mpz_struct *)(e_acsl_42));
+    {
+      mpz_t e_acsl_59;
+      __gmpz_init_set_si((__mpz_struct *)(e_acsl_59),(long)0);
+      __gmpz_set((__mpz_struct *)(e_acsl_42),
+                 (__mpz_struct const *)(e_acsl_59));
+      __gmpz_clear((__mpz_struct *)(e_acsl_59));
+    }
+    
+    while (1) {
+      {
+        mpz_t e_acsl_60;
+        int e_acsl_61;
+        __gmpz_init_set_si((__mpz_struct *)(e_acsl_60),(long)2);
+        e_acsl_61 = __gmpz_cmp((__mpz_struct const *)(e_acsl_42),
+                               (__mpz_struct const *)(e_acsl_60));
+        if (! (e_acsl_61 < 0)) { break; }
+        __gmpz_clear((__mpz_struct *)(e_acsl_60));
+      }
+      
+      {
+        mpz_t e_acsl_54;
+        __gmpz_init_set_si((__mpz_struct *)(e_acsl_54),(long)0);
+        __gmpz_set((__mpz_struct *)(e_acsl_43),
+                   (__mpz_struct const *)(e_acsl_54));
+        __gmpz_clear((__mpz_struct *)(e_acsl_54));
+      }
+      
+      while (1) {
+        {
+          mpz_t e_acsl_55;
+          int e_acsl_56;
+          __gmpz_init_set_si((__mpz_struct *)(e_acsl_55),(long)5);
+          e_acsl_56 = __gmpz_cmp((__mpz_struct const *)(e_acsl_43),
+                                 (__mpz_struct const *)(e_acsl_55));
+          if (! (e_acsl_56 < 0)) { break; }
+          __gmpz_clear((__mpz_struct *)(e_acsl_55));
+        }
+        
+        {
+          mpz_t e_acsl_50;
+          __gmpz_init_set_si((__mpz_struct *)(e_acsl_50),(long)0);
+          __gmpz_set((__mpz_struct *)(e_acsl_44),
+                     (__mpz_struct const *)(e_acsl_50));
+          __gmpz_clear((__mpz_struct *)(e_acsl_50));
+        }
+        
+        while (1) {
+          {
+            int e_acsl_51;
+            e_acsl_51 = __gmpz_cmp((__mpz_struct const *)(e_acsl_44),
+                                   (__mpz_struct const *)(e_acsl_43));
+            if (! (e_acsl_51 <= 0)) { break; }
+          }
+          
+          {
+            mpz_t e_acsl_46;
+            mpz_t e_acsl_47;
+            mpz_t e_acsl_48;
+            int e_acsl_49;
+            __gmpz_init((__mpz_struct *)(e_acsl_46));
+            __gmpz_add((__mpz_struct *)(e_acsl_46),
+                       (__mpz_struct const *)(e_acsl_42),
+                       (__mpz_struct const *)(e_acsl_44));
+            __gmpz_init_set_si((__mpz_struct *)(e_acsl_47),(long)1);
+            __gmpz_init((__mpz_struct *)(e_acsl_48));
+            __gmpz_add((__mpz_struct *)(e_acsl_48),
+                       (__mpz_struct const *)(e_acsl_43),
+                       (__mpz_struct const *)(e_acsl_47));
+            e_acsl_49 = __gmpz_cmp((__mpz_struct const *)(e_acsl_46),
+                                   (__mpz_struct const *)(e_acsl_48));
+            __gmpz_clear((__mpz_struct *)(e_acsl_46));
+            __gmpz_clear((__mpz_struct *)(e_acsl_47));
+            __gmpz_clear((__mpz_struct *)(e_acsl_48));
+            if (! (e_acsl_49 <= 0)) {
+              e_acsl_45 = 0;
+              goto e_acsl_end_loop5; }
+          }
+          
+          {
+            mpz_t e_acsl_52;
+            mpz_t e_acsl_53;
+            __gmpz_init_set_si((__mpz_struct *)(e_acsl_52),(long)((char)1));
+            __gmpz_init((__mpz_struct *)(e_acsl_53));
+            __gmpz_add((__mpz_struct *)(e_acsl_53),
+                       (__mpz_struct const *)(e_acsl_44),
+                       (__mpz_struct const *)(e_acsl_52));
+            __gmpz_set((__mpz_struct *)(e_acsl_44),
+                       (__mpz_struct const *)(e_acsl_53));
+            __gmpz_clear((__mpz_struct *)(e_acsl_52));
+            __gmpz_clear((__mpz_struct *)(e_acsl_53));
+          }
+          
+        }
+        {
+          mpz_t e_acsl_57;
+          mpz_t e_acsl_58;
+          __gmpz_init_set_si((__mpz_struct *)(e_acsl_57),(long)((char)1));
+          __gmpz_init((__mpz_struct *)(e_acsl_58));
+          __gmpz_add((__mpz_struct *)(e_acsl_58),
+                     (__mpz_struct const *)(e_acsl_43),
+                     (__mpz_struct const *)(e_acsl_57));
+          __gmpz_set((__mpz_struct *)(e_acsl_43),
+                     (__mpz_struct const *)(e_acsl_58));
+          __gmpz_clear((__mpz_struct *)(e_acsl_57));
+          __gmpz_clear((__mpz_struct *)(e_acsl_58));
+        }
+        
+      }
+      {
+        mpz_t e_acsl_62;
+        mpz_t e_acsl_63;
+        __gmpz_init_set_si((__mpz_struct *)(e_acsl_62),(long)((char)1));
+        __gmpz_init((__mpz_struct *)(e_acsl_63));
+        __gmpz_add((__mpz_struct *)(e_acsl_63),
+                   (__mpz_struct const *)(e_acsl_42),
+                   (__mpz_struct const *)(e_acsl_62));
+        __gmpz_set((__mpz_struct *)(e_acsl_42),
+                   (__mpz_struct const *)(e_acsl_63));
+        __gmpz_clear((__mpz_struct *)(e_acsl_62));
+        __gmpz_clear((__mpz_struct *)(e_acsl_63));
+      }
+      
+    }
+    e_acsl_end_loop5: ;
+    if (! e_acsl_45) {
+      e_acsl_fail((char *)"(\\forall integer x, integer y, integer z;\n  ((0 <= x && x < 2) && (0 <= y && y < 5)) && (0 <= z && z <= y) ==>\n  x+z <= y+1)");
+    }
+    __gmpz_clear((__mpz_struct *)(e_acsl_42));
+    __gmpz_clear((__mpz_struct *)(e_acsl_43));
+    __gmpz_clear((__mpz_struct *)(e_acsl_44));
+  }
+  
+  __retres = 0;
+  return (__retres);
+}
+
+
diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/result.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/result.res.oracle
index 55ca70cc6bffd4b9d482f4f947d0b73cb809c5fe..73b4c1240a2e9832bb440b414c2d36955313a390 100644
--- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/result.res.oracle
+++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/result.res.oracle
@@ -5,81 +5,81 @@ tests/e-acsl-runtime/result.i:6:[e-acsl] warning: missing guard for ensuring tha
 [value] Values of globals at initialization
         Y ‚àà {1}
 [value] computing for function f <- main.
-        Called from PROJECT_FILE.i:252.
+        Called from PROJECT_FILE.i:282.
 [value] computing for function __gmpz_init_set_si <- f <- main.
-        Called from PROJECT_FILE.i:207.
-PROJECT_FILE.i:75:[value] Function __gmpz_init_set_si: postcondition got status valid.
+        Called from PROJECT_FILE.i:237.
+PROJECT_FILE.i:78:[value] Function __gmpz_init_set_si: postcondition got status valid.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init <- f <- main.
-        Called from PROJECT_FILE.i:208.
-PROJECT_FILE.i:63:[value] Function __gmpz_init: postcondition got status valid.
+        Called from PROJECT_FILE.i:238.
+PROJECT_FILE.i:65:[value] Function __gmpz_init: postcondition got status valid.
 [value] Done for function __gmpz_init
 [value] computing for function __gmpz_sub <- f <- main.
-        Called from PROJECT_FILE.i:209.
-PROJECT_FILE.i:112:[value] Function __gmpz_sub: precondition got status valid.
-PROJECT_FILE.i:113:[value] Function __gmpz_sub: precondition got status valid.
-PROJECT_FILE.i:114:[value] Function __gmpz_sub: precondition got status valid.
+        Called from PROJECT_FILE.i:239.
+PROJECT_FILE.i:140:[value] Function __gmpz_sub: precondition got status valid.
+PROJECT_FILE.i:141:[value] Function __gmpz_sub: precondition got status valid.
+PROJECT_FILE.i:142:[value] Function __gmpz_sub: precondition got status valid.
 [value] Done for function __gmpz_sub
 [value] computing for function __gmpz_get_si <- f <- main.
-        Called from PROJECT_FILE.i:210.
-PROJECT_FILE.i:138:[value] Function __gmpz_get_si: precondition got status valid.
+        Called from PROJECT_FILE.i:240.
+PROJECT_FILE.i:168:[value] Function __gmpz_get_si: precondition got status valid.
 [value] Done for function __gmpz_get_si
 [value] computing for function e_acsl_fail <- f <- main.
-        Called from PROJECT_FILE.i:212.
+        Called from PROJECT_FILE.i:242.
 [value] computing for function printf <- e_acsl_fail <- f <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- f <- main.
-        Called from PROJECT_FILE.i:193.
-PROJECT_FILE.i:183:[value] Function exit: postcondition got status invalid.
+        Called from PROJECT_FILE.i:223.
+PROJECT_FILE.i:213:[value] Function exit: postcondition got status invalid.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- f <- main.
-        Called from PROJECT_FILE.i:214.
-PROJECT_FILE.i:85:[value] Function __gmpz_clear: precondition got status valid.
+        Called from PROJECT_FILE.i:244.
+PROJECT_FILE.i:107:[value] Function __gmpz_clear: precondition got status valid.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- f <- main.
-        Called from PROJECT_FILE.i:215.
+        Called from PROJECT_FILE.i:245.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:195:[value] Function f: postcondition got status valid.
+PROJECT_FILE.i:225:[value] Function f: postcondition got status valid.
 [value] Recording results for f
 [value] Done for function f
 [value] computing for function g <- main.
-        Called from PROJECT_FILE.i:253.
-PROJECT_FILE.i:222:[value] Function g: postcondition got status valid.
+        Called from PROJECT_FILE.i:283.
+PROJECT_FILE.i:252:[value] Function g: postcondition got status valid.
 [value] Recording results for g
 [value] Done for function g
 [value] computing for function h <- main.
-        Called from PROJECT_FILE.i:254.
+        Called from PROJECT_FILE.i:284.
 [value] computing for function __gmpz_init_set_si <- h <- main.
-        Called from PROJECT_FILE.i:238.
+        Called from PROJECT_FILE.i:268.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- h <- main.
-        Called from PROJECT_FILE.i:239.
+        Called from PROJECT_FILE.i:269.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- h <- main.
-        Called from PROJECT_FILE.i:240.
-PROJECT_FILE.i:91:[value] Function __gmpz_cmp: precondition got status valid.
-PROJECT_FILE.i:92:[value] Function __gmpz_cmp: precondition got status valid.
+        Called from PROJECT_FILE.i:270.
+PROJECT_FILE.i:115:[value] Function __gmpz_cmp: precondition got status valid.
+PROJECT_FILE.i:116:[value] Function __gmpz_cmp: precondition got status valid.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- h <- main.
-        Called from PROJECT_FILE.i:241.
+        Called from PROJECT_FILE.i:271.
 [value] computing for function printf <- e_acsl_fail <- h <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- h <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- h <- main.
-        Called from PROJECT_FILE.i:242.
+        Called from PROJECT_FILE.i:272.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- h <- main.
-        Called from PROJECT_FILE.i:243.
+        Called from PROJECT_FILE.i:273.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:229:[value] Function h: postcondition got status valid.
+PROJECT_FILE.i:259:[value] Function h: postcondition got status valid.
 [value] Recording results for h
 [value] Done for function h
 [value] Recording results for main
diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/sizeof.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/sizeof.res.oracle
index 466a48e0381fcbc6cd29a51f16aada5260ee3a03..36a661cff89fcef0b9ad4b21e830111d0ff05f4e 100644
--- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/sizeof.res.oracle
+++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/sizeof.res.oracle
@@ -2,62 +2,62 @@
 [value] Computing initial state
 [value] Initial state computed
 [value] Values of globals at initialization
-PROJECT_FILE.i:200:[value] Assertion got status valid.
+PROJECT_FILE.i:230:[value] Assertion got status valid.
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:205.
-PROJECT_FILE.i:75:[value] Function __gmpz_init_set_si: postcondition got status valid.
+        Called from PROJECT_FILE.i:235.
+PROJECT_FILE.i:78:[value] Function __gmpz_init_set_si: postcondition got status valid.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:206.
+        Called from PROJECT_FILE.i:236.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:207.
-PROJECT_FILE.i:91:[value] Function __gmpz_cmp: precondition got status valid.
-PROJECT_FILE.i:92:[value] Function __gmpz_cmp: precondition got status valid.
+        Called from PROJECT_FILE.i:237.
+PROJECT_FILE.i:115:[value] Function __gmpz_cmp: precondition got status valid.
+PROJECT_FILE.i:116:[value] Function __gmpz_cmp: precondition got status valid.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:208.
+        Called from PROJECT_FILE.i:238.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
-PROJECT_FILE.i:183:[value] Function exit: postcondition got status invalid.
+        Called from PROJECT_FILE.i:223.
+PROJECT_FILE.i:213:[value] Function exit: postcondition got status invalid.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:209.
-PROJECT_FILE.i:85:[value] Function __gmpz_clear: precondition got status valid.
+        Called from PROJECT_FILE.i:239.
+PROJECT_FILE.i:107:[value] Function __gmpz_clear: precondition got status valid.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:210.
+        Called from PROJECT_FILE.i:240.
 [value] Done for function __gmpz_clear
-PROJECT_FILE.i:214:[value] Assertion got status valid.
+PROJECT_FILE.i:244:[value] Assertion got status valid.
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:219.
+        Called from PROJECT_FILE.i:249.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:220.
+        Called from PROJECT_FILE.i:250.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:221.
+        Called from PROJECT_FILE.i:251.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:223.
+        Called from PROJECT_FILE.i:253.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:225.
+        Called from PROJECT_FILE.i:255.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:226.
+        Called from PROJECT_FILE.i:256.
 [value] Done for function __gmpz_clear
 [value] Recording results for main
 [value] done for function main
diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/stmt_contract.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/stmt_contract.res.oracle
index 155078ff222c95fc3c6cfad6e789be5341c7e694..638ac44d5a5389caf47a4d3b43dffbf84e4ab5d3 100644
--- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/stmt_contract.res.oracle
+++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/stmt_contract.res.oracle
@@ -3,542 +3,542 @@
 [value] Initial state computed
 [value] Values of globals at initialization
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:208.
-PROJECT_FILE.i:75:[value] Function __gmpz_init_set_si: postcondition got status valid.
+        Called from PROJECT_FILE.i:238.
+PROJECT_FILE.i:78:[value] Function __gmpz_init_set_si: postcondition got status valid.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:209.
+        Called from PROJECT_FILE.i:239.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:210.
-PROJECT_FILE.i:91:[value] Function __gmpz_cmp: precondition got status valid.
-PROJECT_FILE.i:92:[value] Function __gmpz_cmp: precondition got status valid.
+        Called from PROJECT_FILE.i:240.
+PROJECT_FILE.i:115:[value] Function __gmpz_cmp: precondition got status valid.
+PROJECT_FILE.i:116:[value] Function __gmpz_cmp: precondition got status valid.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:211.
+        Called from PROJECT_FILE.i:241.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
-PROJECT_FILE.i:183:[value] Function exit: postcondition got status invalid.
+        Called from PROJECT_FILE.i:223.
+PROJECT_FILE.i:213:[value] Function exit: postcondition got status invalid.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:212.
-PROJECT_FILE.i:85:[value] Function __gmpz_clear: precondition got status valid.
+        Called from PROJECT_FILE.i:242.
+PROJECT_FILE.i:107:[value] Function __gmpz_clear: precondition got status valid.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:213.
+        Called from PROJECT_FILE.i:243.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:225.
+        Called from PROJECT_FILE.i:255.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:226.
+        Called from PROJECT_FILE.i:256.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:227.
+        Called from PROJECT_FILE.i:257.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:228.
+        Called from PROJECT_FILE.i:258.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:229.
+        Called from PROJECT_FILE.i:259.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:230.
+        Called from PROJECT_FILE.i:260.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:231.
+        Called from PROJECT_FILE.i:261.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:232.
+        Called from PROJECT_FILE.i:262.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:233.
+        Called from PROJECT_FILE.i:263.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:234.
+        Called from PROJECT_FILE.i:264.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:242.
+        Called from PROJECT_FILE.i:272.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:243.
+        Called from PROJECT_FILE.i:273.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:244.
+        Called from PROJECT_FILE.i:274.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:245.
+        Called from PROJECT_FILE.i:275.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:246.
+        Called from PROJECT_FILE.i:276.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:247.
+        Called from PROJECT_FILE.i:277.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:260.
+        Called from PROJECT_FILE.i:290.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:261.
+        Called from PROJECT_FILE.i:291.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:262.
+        Called from PROJECT_FILE.i:292.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:263.
+        Called from PROJECT_FILE.i:293.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:264.
+        Called from PROJECT_FILE.i:294.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:265.
+        Called from PROJECT_FILE.i:295.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:266.
+        Called from PROJECT_FILE.i:296.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:267.
+        Called from PROJECT_FILE.i:297.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:268.
+        Called from PROJECT_FILE.i:298.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:269.
+        Called from PROJECT_FILE.i:299.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:270.
+        Called from PROJECT_FILE.i:300.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:271.
+        Called from PROJECT_FILE.i:301.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:303.
+        Called from PROJECT_FILE.i:333.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:304.
+        Called from PROJECT_FILE.i:334.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:305.
+        Called from PROJECT_FILE.i:335.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:306.
+        Called from PROJECT_FILE.i:336.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:307.
+        Called from PROJECT_FILE.i:337.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:308.
+        Called from PROJECT_FILE.i:338.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init <- main.
-        Called from PROJECT_FILE.i:309.
-PROJECT_FILE.i:63:[value] Function __gmpz_init: postcondition got status valid.
+        Called from PROJECT_FILE.i:339.
+PROJECT_FILE.i:65:[value] Function __gmpz_init: postcondition got status valid.
 [value] Done for function __gmpz_init
 [value] computing for function __gmpz_add <- main.
-        Called from PROJECT_FILE.i:310.
-PROJECT_FILE.i:106:[value] Function __gmpz_add: precondition got status valid.
-PROJECT_FILE.i:107:[value] Function __gmpz_add: precondition got status valid.
-PROJECT_FILE.i:108:[value] Function __gmpz_add: precondition got status valid.
+        Called from PROJECT_FILE.i:340.
+PROJECT_FILE.i:134:[value] Function __gmpz_add: precondition got status valid.
+PROJECT_FILE.i:135:[value] Function __gmpz_add: precondition got status valid.
+PROJECT_FILE.i:136:[value] Function __gmpz_add: precondition got status valid.
 [value] Done for function __gmpz_add
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:311.
+        Called from PROJECT_FILE.i:341.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:312.
+        Called from PROJECT_FILE.i:342.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:313.
+        Called from PROJECT_FILE.i:343.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:314.
+        Called from PROJECT_FILE.i:344.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:315.
+        Called from PROJECT_FILE.i:345.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:316.
+        Called from PROJECT_FILE.i:346.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:317.
+        Called from PROJECT_FILE.i:347.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:318.
+        Called from PROJECT_FILE.i:348.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:319.
+        Called from PROJECT_FILE.i:349.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:320.
+        Called from PROJECT_FILE.i:350.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:321.
+        Called from PROJECT_FILE.i:351.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:325.
+        Called from PROJECT_FILE.i:355.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:326.
+        Called from PROJECT_FILE.i:356.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:327.
+        Called from PROJECT_FILE.i:357.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:328.
+        Called from PROJECT_FILE.i:358.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:329.
+        Called from PROJECT_FILE.i:359.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:330.
+        Called from PROJECT_FILE.i:360.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init <- main.
-        Called from PROJECT_FILE.i:331.
+        Called from PROJECT_FILE.i:361.
 [value] Done for function __gmpz_init
 [value] computing for function __gmpz_add <- main.
-        Called from PROJECT_FILE.i:332.
+        Called from PROJECT_FILE.i:362.
 [value] Done for function __gmpz_add
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:333.
+        Called from PROJECT_FILE.i:363.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:334.
+        Called from PROJECT_FILE.i:364.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:335.
+        Called from PROJECT_FILE.i:365.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:336.
+        Called from PROJECT_FILE.i:366.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:337.
+        Called from PROJECT_FILE.i:367.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:338.
+        Called from PROJECT_FILE.i:368.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:339.
+        Called from PROJECT_FILE.i:369.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:365.
+        Called from PROJECT_FILE.i:395.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:366.
+        Called from PROJECT_FILE.i:396.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:367.
+        Called from PROJECT_FILE.i:397.
 [value] Done for function __gmpz_cmp
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:373.
+        Called from PROJECT_FILE.i:403.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:374.
+        Called from PROJECT_FILE.i:404.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:375.
+        Called from PROJECT_FILE.i:405.
 [value] Done for function __gmpz_cmp
-PROJECT_FILE.i:376:[value] assigning non deterministic value for the first time
+PROJECT_FILE.i:406:[value] assigning non deterministic value for the first time
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:377.
+        Called from PROJECT_FILE.i:407.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:378.
+        Called from PROJECT_FILE.i:408.
 [value] Done for function __gmpz_clear
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:380.
+        Called from PROJECT_FILE.i:410.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:381.
+        Called from PROJECT_FILE.i:411.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:382.
+        Called from PROJECT_FILE.i:412.
 [value] Done for function __gmpz_cmp
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:387.
+        Called from PROJECT_FILE.i:417.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:388.
+        Called from PROJECT_FILE.i:418.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:389.
+        Called from PROJECT_FILE.i:419.
 [value] Done for function __gmpz_cmp
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:391.
+        Called from PROJECT_FILE.i:421.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:392.
+        Called from PROJECT_FILE.i:422.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:400.
+        Called from PROJECT_FILE.i:430.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:401.
+        Called from PROJECT_FILE.i:431.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:402.
+        Called from PROJECT_FILE.i:432.
 [value] Done for function __gmpz_cmp
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:404.
+        Called from PROJECT_FILE.i:434.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:405.
+        Called from PROJECT_FILE.i:435.
 [value] Done for function __gmpz_clear
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:407.
+        Called from PROJECT_FILE.i:437.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:408.
+        Called from PROJECT_FILE.i:438.
 [value] Done for function __gmpz_cmp
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:413.
+        Called from PROJECT_FILE.i:443.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:414.
+        Called from PROJECT_FILE.i:444.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:415.
+        Called from PROJECT_FILE.i:445.
 [value] Done for function __gmpz_cmp
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:417.
+        Called from PROJECT_FILE.i:447.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:418.
+        Called from PROJECT_FILE.i:448.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:428.
+        Called from PROJECT_FILE.i:458.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:429.
+        Called from PROJECT_FILE.i:459.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init <- main.
-        Called from PROJECT_FILE.i:430.
+        Called from PROJECT_FILE.i:460.
 [value] Done for function __gmpz_init
 [value] computing for function __gmpz_add <- main.
-        Called from PROJECT_FILE.i:431.
+        Called from PROJECT_FILE.i:461.
 [value] Done for function __gmpz_add
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:432.
+        Called from PROJECT_FILE.i:462.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:433.
+        Called from PROJECT_FILE.i:463.
 [value] Done for function __gmpz_cmp
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:435.
+        Called from PROJECT_FILE.i:465.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:436.
+        Called from PROJECT_FILE.i:466.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:437.
+        Called from PROJECT_FILE.i:467.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:438.
+        Called from PROJECT_FILE.i:468.
 [value] Done for function __gmpz_clear
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:440.
+        Called from PROJECT_FILE.i:470.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:441.
+        Called from PROJECT_FILE.i:471.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:442.
+        Called from PROJECT_FILE.i:472.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:443.
+        Called from PROJECT_FILE.i:473.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:452.
+        Called from PROJECT_FILE.i:482.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:453.
+        Called from PROJECT_FILE.i:483.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:454.
+        Called from PROJECT_FILE.i:484.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:455.
+        Called from PROJECT_FILE.i:485.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:456.
+        Called from PROJECT_FILE.i:486.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:457.
+        Called from PROJECT_FILE.i:487.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:463.
+        Called from PROJECT_FILE.i:493.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:464.
+        Called from PROJECT_FILE.i:494.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:465.
+        Called from PROJECT_FILE.i:495.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:466.
+        Called from PROJECT_FILE.i:496.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:467.
+        Called from PROJECT_FILE.i:497.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:468.
+        Called from PROJECT_FILE.i:498.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:483.
+        Called from PROJECT_FILE.i:513.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:484.
+        Called from PROJECT_FILE.i:514.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:485.
+        Called from PROJECT_FILE.i:515.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:486.
+        Called from PROJECT_FILE.i:516.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:487.
+        Called from PROJECT_FILE.i:517.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:488.
+        Called from PROJECT_FILE.i:518.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:492.
+        Called from PROJECT_FILE.i:522.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:493.
+        Called from PROJECT_FILE.i:523.
 [value] Done for function __gmpz_init_set_si
 [value] computing for function __gmpz_cmp <- main.
-        Called from PROJECT_FILE.i:494.
+        Called from PROJECT_FILE.i:524.
 [value] Done for function __gmpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:495.
+        Called from PROJECT_FILE.i:525.
 [value] computing for function printf <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function printf
 [value] computing for function exit <- e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:496.
+        Called from PROJECT_FILE.i:526.
 [value] Done for function __gmpz_clear
 [value] computing for function __gmpz_clear <- main.
-        Called from PROJECT_FILE.i:497.
+        Called from PROJECT_FILE.i:527.
 [value] Done for function __gmpz_clear
 [value] Recording results for main
 [value] done for function main
diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/true.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/true.res.oracle
index befe0072061d5447eaa1fe6f1bd9857025357010..b1b27c539b6661de30d3c66c3e0d5d5210accb6b 100644
--- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/true.res.oracle
+++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/true.res.oracle
@@ -2,7 +2,7 @@
 [value] Computing initial state
 [value] Initial state computed
 [value] Values of globals at initialization
-PROJECT_FILE.i:200:[value] Assertion got status valid.
+PROJECT_FILE.i:230:[value] Assertion got status valid.
 [value] Recording results for main
 [value] done for function main
 [value] ====== VALUES COMPUTED ======
diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/typedef.err.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/typedef.err.oracle
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/typedef.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/typedef.res.oracle
new file mode 100644
index 0000000000000000000000000000000000000000..ac463d4ccd1cf3aab4fa7724d3ec3fdb3c2f092a
--- /dev/null
+++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/typedef.res.oracle
@@ -0,0 +1,106 @@
+[value] Analyzing a complete application starting at main
+[value] Computing initial state
+[value] Initial state computed
+[value] Values of globals at initialization
+PROJECT_FILE.i:231:[value] Assertion got status valid.
+[value] computing for function __gmpz_init_set_ui <- main.
+        Called from PROJECT_FILE.i:236.
+PROJECT_FILE.i:74:[value] Function __gmpz_init_set_ui: postcondition got status valid.
+[value] Done for function __gmpz_init_set_ui
+[value] computing for function __gmpz_init_set_si <- main.
+        Called from PROJECT_FILE.i:237.
+PROJECT_FILE.i:78:[value] Function __gmpz_init_set_si: postcondition got status valid.
+[value] Done for function __gmpz_init_set_si
+[value] computing for function __gmpz_cmp <- main.
+        Called from PROJECT_FILE.i:238.
+PROJECT_FILE.i:115:[value] Function __gmpz_cmp: precondition got status valid.
+PROJECT_FILE.i:116:[value] Function __gmpz_cmp: precondition got status valid.
+[value] Done for function __gmpz_cmp
+[value] computing for function e_acsl_fail <- main.
+        Called from PROJECT_FILE.i:239.
+[value] computing for function printf <- e_acsl_fail <- main.
+        Called from PROJECT_FILE.i:223.
+[value] Done for function printf
+[value] computing for function exit <- e_acsl_fail <- main.
+        Called from PROJECT_FILE.i:223.
+PROJECT_FILE.i:213:[value] Function exit: postcondition got status invalid.
+[value] Done for function exit
+[value] Recording results for e_acsl_fail
+[value] Done for function e_acsl_fail
+[value] computing for function __gmpz_clear <- main.
+        Called from PROJECT_FILE.i:240.
+PROJECT_FILE.i:107:[value] Function __gmpz_clear: precondition got status valid.
+[value] Done for function __gmpz_clear
+[value] computing for function __gmpz_clear <- main.
+        Called from PROJECT_FILE.i:241.
+[value] Done for function __gmpz_clear
+[value] Recording results for main
+[value] done for function main
+[value] ====== VALUES COMPUTED ======
+[value] Values at end of function e_acsl_fail:
+          NON TERMINATING FUNCTION
+[value] Values at end of function main:
+          __retres ‚àà {0}
+          x ‚àà {0}
+/* Generated by Frama-C */
+struct __anonstruct___mpz_struct_1 {
+   int _mp_alloc ;
+   int _mp_size ;
+   unsigned long *_mp_d ;
+};
+typedef struct __anonstruct___mpz_struct_1 __mpz_struct;
+typedef __mpz_struct mpz_t[1];
+typedef unsigned char uint8;
+/*@ ensures \valid(\old(z));
+    assigns *z;
+    assigns *z \from n;  */
+extern void __gmpz_init_set_ui(__mpz_struct * /*[1]*/ z, unsigned long n);
+/*@ ensures \valid(\old(z));
+    assigns *z;
+    assigns *z \from n;  */
+extern void __gmpz_init_set_si(__mpz_struct * /*[1]*/ z, long n);
+/*@ requires \valid(x);
+    assigns *x;  */
+extern void __gmpz_clear(__mpz_struct * /*[1]*/ x);
+/*@ requires \valid(z1);
+    requires \valid(z2);
+    assigns \nothing;  */
+extern int __gmpz_cmp(__mpz_struct const * /*[1]*/ z1,
+                      __mpz_struct const * /*[1]*/ z2);
+/*@ terminates \false;
+    ensures \false;
+    assigns \nothing;  */
+extern void exit(int status);
+/*@ assigns \nothing;  */
+extern int printf(char const * , ...);
+void e_acsl_fail(char *msg)
+{
+  printf("%s\n",msg);
+  exit(1);
+  return;
+}
+
+int main(void)
+{
+  int __retres;
+  uint8 x;
+  x = (unsigned char)0;
+  /*@ assert x ≡ 0; */ ;
+  {
+    mpz_t e_acsl_1;
+    mpz_t e_acsl_2;
+    int e_acsl_3;
+    __gmpz_init_set_ui((__mpz_struct *)(e_acsl_1),(unsigned long)x);
+    __gmpz_init_set_si((__mpz_struct *)(e_acsl_2),(long)0);
+    e_acsl_3 = __gmpz_cmp((__mpz_struct const *)(e_acsl_1),
+                          (__mpz_struct const *)(e_acsl_2));
+    if (! (e_acsl_3 == 0)) { e_acsl_fail((char *)"(x == 0)"); }
+    __gmpz_clear((__mpz_struct *)(e_acsl_1));
+    __gmpz_clear((__mpz_struct *)(e_acsl_2));
+  }
+  
+  __retres = 0;
+  return (__retres);
+}
+
+
diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/quantif.i b/src/plugins/e-acsl/tests/e-acsl-runtime/quantif.i
new file mode 100644
index 0000000000000000000000000000000000000000..ccbfd23acaf8a93bc822f5e3a7031f35ef9481e3
--- /dev/null
+++ b/src/plugins/e-acsl/tests/e-acsl-runtime/quantif.i
@@ -0,0 +1,22 @@
+/* run.config
+   COMMENT: quantifiers
+   EXECNOW: LOG gen_quantif.c BIN gen_quantif.out FRAMAC_SHARE=./share @frama-c@ ./tests/e-acsl-runtime/quantif.i -e-acsl -then-on e-acsl -print -ocode ./tests/e-acsl-runtime/result/gen_quantif.c > /dev/null && gcc -pedantic -o ./tests/e-acsl-runtime/result/gen_quantif.out ./tests/e-acsl-runtime/result/gen_quantif.c -lgmp && ./tests/e-acsl-runtime/result/gen_quantif.out
+*/
+
+int main(void) {
+
+  int a = -1;
+
+  // simple universal quantifications
+
+  /*@ assert \forall integer x; 0 <= x <= 1 ==> x == 0 || x == 1; */
+  /*@ assert \forall integer x; 0 < x <= 1 ==> x == 1; */
+  /*@ assert \forall integer x; 0 < x < 1 ==> \false; */
+  /*@ assert \forall integer x; 0 <= x < 1 ==> x == 0; */
+
+  // multiple universal quantifications
+  /*@ assert \forall integer x,y,z; 0 <= x < 2 && 0 <= y < 5 && 0 <= z <= y
+    ==> x+z <= y+1; */ 
+  
+  return 0;
+}
diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/typedef.i b/src/plugins/e-acsl/tests/e-acsl-runtime/typedef.i
new file mode 100644
index 0000000000000000000000000000000000000000..3bb307b037807792514056872e87452b9d37e87d
--- /dev/null
+++ b/src/plugins/e-acsl/tests/e-acsl-runtime/typedef.i
@@ -0,0 +1,12 @@
+/* run.config
+   COMMENT: typedef (from a Bernard's bug report)
+   EXECNOW: LOG gen_typedef.c BIN gen_typedef.out FRAMAC_SHARE=./share @frama-c@ ./tests/e-acsl-runtime/typedef.i -e-acsl -then-on e-acsl -print -ocode ./tests/e-acsl-runtime/result/gen_typedef.c > /dev/null && gcc -pedantic -o ./tests/e-acsl-runtime/result/gen_typedef.out ./tests/e-acsl-runtime/result/gen_typedef.c -lgmp && ./tests/e-acsl-runtime/result/gen_typedef.out
+*/
+
+typedef unsigned char uint8;
+
+int main(void) {
+  uint8 x = 0;
+  /*@ assert x == 0; */ ;
+  return 0;
+}
diff --git a/src/plugins/e-acsl/visit.ml b/src/plugins/e-acsl/visit.ml
index 0e4355f4d0d82ba546d646a59b73e08b25de862e..ac7c267ad64fa38c2ac71dc381217c12fa7e7c3d 100644
--- a/src/plugins/e-acsl/visit.ml
+++ b/src/plugins/e-acsl/visit.ml
@@ -37,7 +37,7 @@ let compatible_type ty ty' =
 let context_sensitive ?loc env ctx is_mpz_string t_opt e = 
   let ty = typeOf e in
   let mk_mpz env e = 
-    Env.new_var env t_opt Mpz.t (fun _ v -> [ Mpz.init_set v e ]) 
+    Env.new_var env t_opt Mpz.t (fun lv v -> [ Mpz.init_set (var lv) v e ]) 
   in
   let do_int_ctx ty' =
     let e, env = if is_mpz_string then mk_mpz env e else e, env in
@@ -84,10 +84,14 @@ let principal_type ty ty' = match ty, ty' with
     assert (isIntegralType ty');
     Ctype (arithmeticConversion ty ty')
   | Ctype ty, Linteger | Linteger, Ctype ty when isIntegralType ty -> Linteger
+  (* both cases below should be unified, but it is not possible because of
+     caml bts #5432 *)
+  | Ctype ty1, Ctype ty2 when Mpz.is_t ty1 && isIntegralType ty2 -> Linteger
+  | Ctype ty2, Ctype ty1 when Mpz.is_t ty1 && isIntegralType ty2 -> Linteger
   | Ctype tty, Ctype tty' -> 
     assert (compatible_type tty tty');
     ty
-  | Ctype _, Linteger | Linteger, Ctype _ -> assert false
+  | Ctype _, Linteger | Linteger, Ctype _ -> Linteger
   | Linteger, Linteger -> Linteger
   | (Ltype _ | Lvar _ | Lreal | Larrow _), _
   | _, (Ltype _ | Lvar _ | Lreal | Larrow _) -> 
@@ -110,7 +114,7 @@ let principal_type_from_term t1 t2 =
       (* for direct C terms, should be able to infer the corresponding C type *)
       ty
   in
-  principal_type (typ t1) (typ t2)
+  principal_type (typ t1) (typ t2) 
 
 (* ************************************************************************** *)
 (* Transforming terms and predicates into C expressions (if any) *)
@@ -149,62 +153,50 @@ let compute_quantif_guards quantif bounded_vars hyps =
     in
     Error.untypable (msg1 ^ msg2)
   in
-  let vars = 
-    let h = Logic_var.Hashtbl.create 7 in
-    List.iter
-      (fun v -> 
-	(* only allow quantification over integers *)
-	(match v.lv_type with
-	| Ctype ty when isIntegralType ty -> ()
-	| Linteger -> ()
-	| Ctype _ | Ltype _ | Lvar _ | Lreal | Larrow _ -> 
-	  error "@[non integer variable %a@]" d_logic_var v);
-	Logic_var.Hashtbl.add h v ()) 
-      bounded_vars;
-    h
-  in
-  let used_vars = Logic_var.Hashtbl.create 7 in
-  let get_guards p =
-    let rec aux acc p = match p.content with
-      | Pand({ content = Prel((Rlt | Rle) as r1, t11, t12) },
-	     { content = Prel((Rlt | Rle) as r2, t21, t22) }) ->
-	(match t12.term_node, t21.term_node with
-	| TLval(TVar x1, TNoOffset), TLval(TVar x2, TNoOffset) -> 
-	  if Logic_var.equal x1 x2 then
-	    if Logic_var.Hashtbl.mem vars x1 then begin
-	      Logic_var.Hashtbl.replace used_vars x1 ();
-	      (t11, r1, x1, r2, t22) :: acc
-	    end else 
-	      error "@[unquantified variable %a@]" d_logic_var x1
-	  else  
-	    error "@[invalid binder %a@]" d_term t21
-	| TLval _, _ -> error "@[invalid binder %a@]" d_term t21
-	| _, _ -> error "@[invalid binder %a@]" d_term t12)
-      | Pand(p1, p2) -> aux (aux acc p2) p1
-      | _ -> error "@[invalid guard %a@]" d_predicate_named p
-    in 
-    aux [] p
-  in
-  let guards = get_guards hyps in
-  (* check that all quantifiers are guarded *)
-  Logic_var.Hashtbl.iter
-    (fun v () -> Logic_var.Hashtbl.remove vars v) 
-    used_vars;
-  let len = Logic_var.Hashtbl.length vars in
-  if len > 0 then begin
+  let rec aux acc vars p = 
+    match p.content with
+    | Pand({ content = Prel((Rlt | Rle) as r1, t11, t12) },
+	   { content = Prel((Rlt | Rle) as r2, t21, t22) }) ->
+      (match t12.term_node, t21.term_node with
+      | TLval(TVar x1, TNoOffset), TLval(TVar x2, TNoOffset) -> 
+	let v, vars = match vars with
+	  | [] -> error "@[too much constraint(s)%a@]" (fun _ () -> ()) ()
+	  | v :: tl -> 
+	    match v.lv_type with
+	    | Ctype ty when isIntegralType ty -> v, tl
+	    | Linteger -> v, tl
+	    | Ctype _ | Ltype _ | Lvar _ | Lreal | Larrow _ -> 
+	      error "@[non integer variable %a@]" d_logic_var v
+	in
+	if Logic_var.equal x1 x2 && Logic_var.equal x1 v then
+	  (t11, r1, x1, r2, t22) :: acc, vars
+	else
+	  error "@[invalid binder %a@]" d_term t21
+      | TLval _, _ -> error "@[invalid binder %a@]" d_term t21
+      | _, _ -> error "@[invalid binder %a@]" d_term t12)
+    | Pand(p1, p2) -> 
+      let acc, vars = aux acc vars p1 in
+      aux acc vars p2
+    | _ -> error "@[invalid guard %a@]" d_predicate_named p
+  in 
+  let acc, vars = aux [] bounded_vars hyps in
+  (match vars with
+  | [] -> ()
+  | _ :: _ ->
     let msg = 
       Pretty_utils.sfprintf
 	"@[unguarded variable%s %tin quantification@ %a@]" 
-	(if len = 1 then "" else "s") 
+	(if List.length vars = 1 then "" else "s") 
 	(fun fmt -> 
-	  Logic_var.Hashtbl.iter
-	    (fun v () -> Format.fprintf fmt "@[%a @]" d_logic_var v)
-	    vars)
+	  List.iter (fun v -> Format.fprintf fmt "@[%a @]" d_logic_var v) vars)
 	d_predicate_named quantif
     in
-    Error.untypable msg
-  end;
-  guards
+    Error.untypable msg);
+  List.rev acc
+
+
+module Label_ids = 
+  State_builder.Counter(struct let name = "E_ACSL.Label_ids" end)
 
 let constant_to_exp ?(loc=Location.unknown) = function
   | CInt64(n, k, s) ->
@@ -407,13 +399,7 @@ and context_insensitive_term_to_exp env t =
 	let new_lv, new_e = Extlib.the !new_v in
 	  (* either a standard C affectation or an mpz one according to type of
 	     [e] *) 
-	let new_stmt =
-	  if Mpz.is_t (typeOf new_e) then
-	    Mpz.init_set new_e e
-	  else
-	    mkStmtOneInstr ~valid_sid:true
-	      (Set((Var new_lv, NoOffset), e, Location.unknown))
-	in
+	let new_stmt = Mpz.init_set (var new_lv) new_e e in
 	assert (!env_ref == new_env);
 	  (* generate the new block of code for the labeled statement and the
 	     corresponding environment *)
@@ -566,6 +552,8 @@ let rec named_predicate_to_exp env p =
 	let test, env = named_predicate_to_exp (Env.push env) goal in
  	let then_block = mkBlock [ mkEmptyStmt ~loc () ] in
 	let else_block = 
+	  (* use a 'goto', not a simple 'break' in order to handle 'forall' with
+	     multiple binders (leading to imbricated loops) *)
 	  mkBlock
 	    [ mkStmtOneInstr
 		~valid_sid:true (Set(var !var_res, zero ~loc, loc));
@@ -593,76 +581,104 @@ let rec named_predicate_to_exp env p =
 	  | Rle -> t1
 	  | Rgt | Rge | Req | Rneq -> assert false
 	in
-	let t2, t2', bop2 = match rel2 with
-	  | Rlt -> t2, (*t_plus_one*) (* TODO: again, after implementing case
-					 Linteger  *) t2, Lt
-	  | Rle -> let t2' = t_plus_one t2 in t2', t2', Le
+	let bop2 = match rel2 with
+	  | Rlt -> Lt
+	  | Rle -> Le
 	  | Rgt | Rge | Req | Rneq -> assert false
 	in
-	let ty = principal_type_from_term t1 t2' in
-	let e1, env = term_to_exp (Env.push env) ty t1 in
-	let e2, env = term_to_exp env ty t2 in
+	(* we increment the loop counter one more time (at the end of the
+	   loop). Thus to prevent  overflow, check the type of [t2 + 1] instead
+	   of [t2]. *) 
+	let ty = principal_type_from_term t1 (t_plus_one t2) in
+	let ty = principal_type ty logic_x.lv_type in
+	(* loop counter corresponding to the quantified variable *)
 	let var_x = Env.Logic_binding.get env logic_x in
-	let x = Misc.new_lval var_x in
 	let lv_x = var var_x in
-	(* we increment the loop counter one more time than the value of [t2]
-	   if the relation is [<=]. Thus to prevent overflow, check the type
-	   of [t2 + 1] instead of [t2] *)
-	match ty with
-	| Ctype _cty ->
-	  (* loop counter corresponding to the quantified variable *)
-	  let init_blk, env = 
-	    Env.pop_and_get 
-	      env
-	      (mkStmtOneInstr ~valid_sid:true (Set(lv_x, e1, loc)))
-	      ~global_clear:false
-	      Env.Middle
-	  in
-	  let guard = mkBinOp ~loc bop2 x e2 in
-	  let tlv = Logic_const.tvar ~loc (cvar_to_lvar var_x) in
-	    (* [ty] is ok wrt the risk of overflow when computing [x+1]. See
-	       above comment. *)
-	  let incr, env = 
-	    term_to_exp (Env.push env) ty (t_plus_one tlv) 
-	  in
-	  let next_blk, env = 
-	    Env.pop_and_get
-	      env
-	      (mkStmtOneInstr ~valid_sid:true (Set(lv_x, incr, loc)))
-	      ~global_clear:false
-	      Env.Middle
-	  in
-	  let stmts_block b = [ mkStmt ~valid_sid:true (Block b) ] in
-	  let start = stmts_block init_blk in
-	  let next = stmts_block next_blk in
-	  mkFor ~start ~guard ~next ~body, env
-	| Linteger -> 
-	  (* TODO: similar translation than the case [Ctype _], but using GMP
-	     operations instead of arithmetic ones. *)
-	  assert false
-	| Ltype _ | Lvar _ | Lreal | Larrow _ -> assert false
+	let x = new_exp ~loc (Lval lv_x) in
+	let env = match ty with
+	  | Ctype ty when isIntegralType ty -> 
+	    var_x.vtype <- ty;
+	    env
+	  | Linteger -> 
+	    var_x.vtype <- Mpz.t;
+	    Env.add_stmt env (Mpz.init x)
+	  | Ctype _ | Ltype _ | Lvar _ | Lreal | Larrow _ -> assert false
+	in
+	(* initialize the loop counter to [t1] *)
+	let e1, env = term_to_exp (Env.push env) ty t1 in
+	let init_blk, env = 
+	  Env.pop_and_get 
+	    env
+	    (Mpz.affect lv_x x e1)
+	    ~global_clear:false
+	    Env.Middle
+	in
+	(* generate the guard [x bop t2] *)
+	let stmts_block b = [ mkStmt ~valid_sid:true (Block b) ] in
+	let tlv = Logic_const.tvar ~loc (cvar_to_lvar var_x) in
+	let guard_exp, env = 
+	  term_to_exp
+	    (Env.push env)
+	    (Ctype intType)
+	    (Logic_const.term (TBinOp(bop2, tlv, t2)) ty)
+	in
+	let break_stmt = mkStmt ~valid_sid:true (Break guard_exp.eloc) in
+	let guard_blk, env =
+	  Env.pop_and_get
+	    env
+	    (mkStmt ~valid_sid:true
+	       (If(guard_exp,
+		   mkBlock [ mkEmptyStmt () ],
+		   mkBlock [ break_stmt ], 
+		   guard_exp.eloc)))
+	    ~global_clear:false
+	    Env.Middle
+	in
+	let guard = stmts_block guard_blk in
+	(* increment the loop counter [x++] *)
+	let incr, env = term_to_exp (Env.push env) ty (t_plus_one tlv) in
+	let next_blk, env = 
+	  Env.pop_and_get
+	    env
+	    (Mpz.affect lv_x x incr)
+	    ~global_clear:false
+	    Env.Middle
+	in
+	(* generate the whole loop *)
+	let start = stmts_block init_blk in
+	let next = stmts_block next_blk in
+	start @
+	  [ mkStmt ~valid_sid:true
+	      (Loop ([],
+		     mkBlock (guard @ body @ next),
+		     loc, 
+		     None, 
+		     Some break_stmt)) ], 
+	env
     in
     let stmts, env = mk_for_loop env guards in
     let env = 
       Env.add_stmt env (mkStmt ~valid_sid:true (Block (mkBlock stmts))) 
     in
+    (* where to jump to go out of the loop *)
     let end_loop = mkEmptyStmt ~loc () in
-    let label = Label("e_acsl_end_loop", loc, false) in
+    let label_name = "e_acsl_end_loop" ^ string_of_int (Label_ids.next ()) in
+    let label = Label(label_name, loc, false) in
     end_loop.labels <- label :: end_loop.labels;
     end_loop_ref := end_loop;
     let env = Env.add_stmt env end_loop in
     let env = List.fold_left Env.Logic_binding.remove env bounded_vars in
     res, env
   | Pforall _ -> Error.not_yet "unguarded \\forall quantification"
-(*  | Pexists(bounded_vars, { content = Pand(hyps, _goal) }) -> 
-    let guards = compute_quantif_guards p bounded_vars hyps in
-    List.iter 
+  (*  | Pexists(bounded_vars, { content = Pand(hyps, _goal) }) -> 
+      let guards = compute_quantif_guards p bounded_vars hyps in
+      List.iter 
       (fun (t1, _, x, _, t2) -> 
-	Options.feedback
-	  "getting %a OP %a OP %a"  
-	  d_term t1 d_logic_var x d_term t2)
+      Options.feedback
+      "getting %a OP %a OP %a"  
+      d_term t1 d_logic_var x d_term t2)
       guards;
-    assert false*)
+      assert false*)
   | Pexists _ -> Error.not_yet "unguarded \\exists quantification"
   | Pat _ -> Error.not_yet "\\at"
   | Pvalid _ -> Error.not_yet "\\valid"