Project

General

Profile

Statistics
| Branch: | Tag: | Revision:

lustrec / optim / oversampling / out / typed / g_step_assert.coq @ 6a93d814

History | View | Annotate | Download (1.64 KB)

1 6a93d814 xthirioux
(* ---------------------------------------------------------- *)
2
(* --- Assertion (file oversampling0_4.c, line 340)       --- *)
3
(* ---------------------------------------------------------- *)
4
Require Import ZArith.
5
Require Import Reals.
6
Require Import BuiltIn.
7
Require Import bool.Bool.
8
Require Import int.Int.
9
Require Import int.Abs.
10
Require Import int.ComputerDivision.
11
Require Import real.Real.
12
Require Import real.RealInfix.
13
Require Import real.FromInt.
14
Require Import map.Map.
15
Require Import Qedlib.
16
Require Import Qed.
17
18
Require Import Axiomatic.
19
Require Import S_g_mem_pack.
20
Require Import Memory.
21
Require Import Compound.
22
Require Import Cint.
23
24
Goal
25
  forall (t : array Z),
26
  forall (t_1 : farray addr Z),
27
  forall (t_2 : farray addr addr),
28
  forall (a_1 a : addr),
29
  forall (g_1 g : S_g_mem_pack),
30
  let a_2 := t_2.[ (shiftfield_F_g_mem_ni_1 a_1) ] in
31
  let a_3 := t_2.[ (shiftfield_F_g_mem_ni_0 a_1) ] in
32
  let a_4 := t_2.[ (shiftfield_F_f_mem_ni_2 a_3) ] in
33
  (P_g_pack0) ->
34
  ((IsS_g_mem_pack g)) ->
35
  ((IsS_g_mem_pack g_1)) ->
36
  ((framed t_2)) ->
37
  ((linked t)) ->
38
  (a <> a_2) ->
39
  ((valid_rw t a 1%Z)) ->
40
  ((P_valid_g t t_2 a_1)) ->
41
  ((((region ((base a))%Z)) <= 0)%Z) ->
42
  ((((region ((base a_1))%Z)) <= 0)%Z) ->
43
  ((separated a_1 3%Z a 1%Z)) ->
44
  ((P_g_pack3 t_2 t_1 g_1 a_1)) ->
45
  (a <> a_4) ->
46
  (a_2 <> a_4) ->
47
  ((separated a 1%Z a_3 2%Z)) ->
48
  ((separated a_1 3%Z a_3 2%Z)) ->
49
  ((separated a_1 3%Z a_2 1%Z)) ->
50
  ((separated a_3 2%Z a_2 1%Z)) ->
51
  ((is_uint32
52
     (t_1.[ (shiftfield_F__arrow_reg__first
53
              ((shiftfield_F__arrow_mem__reg a_2))) ])%Z)) ->
54
  ((separated a_1 3%Z a_4 1%Z)) ->
55
  ((separated a_3 2%Z a_4 1%Z)) ->
56
  (P_trans_gA).