mirror of
https://github.com/AdaCore/why3.git
synced 2026-02-12 12:34:55 -08:00
update sessions
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
(* This file is generated by Why3's Coq driver *)
|
||||
(* This file is generated by Why3's Coq 8.4 driver *)
|
||||
(* Beware! Only edit allowed sections below *)
|
||||
Require Import BuiltIn.
|
||||
Require BuiltIn.
|
||||
@@ -6,7 +6,7 @@ Require int.Int.
|
||||
Require map.Map.
|
||||
|
||||
(* Why3 assumption *)
|
||||
Definition unit := unit.
|
||||
Definition unit := unit.
|
||||
|
||||
(* Why3 assumption *)
|
||||
Inductive ref (a:Type) {a_WT:WhyType a} :=
|
||||
@@ -16,52 +16,54 @@ Existing Instance ref_WhyType.
|
||||
Implicit Arguments mk_ref [[a] [a_WT]].
|
||||
|
||||
(* Why3 assumption *)
|
||||
Definition contents {a:Type} {a_WT:WhyType a}(v:(ref a)): a :=
|
||||
Definition contents {a:Type} {a_WT:WhyType a} (v:(@ref a a_WT)): a :=
|
||||
match v with
|
||||
| (mk_ref x) => x
|
||||
end.
|
||||
|
||||
(* Why3 assumption *)
|
||||
Inductive array (a:Type) {a_WT:WhyType a} :=
|
||||
| mk_array : Z -> (map.Map.map Z a) -> array a.
|
||||
Inductive array
|
||||
(a:Type) {a_WT:WhyType a} :=
|
||||
| mk_array : Z -> (@map.Map.map Z _ a a_WT) -> array a.
|
||||
Axiom array_WhyType : forall (a:Type) {a_WT:WhyType a}, WhyType (array a).
|
||||
Existing Instance array_WhyType.
|
||||
Implicit Arguments mk_array [[a] [a_WT]].
|
||||
|
||||
(* Why3 assumption *)
|
||||
Definition elts {a:Type} {a_WT:WhyType a}(v:(array a)): (map.Map.map Z a) :=
|
||||
match v with
|
||||
Definition elts {a:Type} {a_WT:WhyType a} (v:(@array a a_WT)): (@map.Map.map
|
||||
Z _ a a_WT) := match v with
|
||||
| (mk_array x x1) => x1
|
||||
end.
|
||||
|
||||
(* Why3 assumption *)
|
||||
Definition length {a:Type} {a_WT:WhyType a}(v:(array a)): Z :=
|
||||
Definition length {a:Type} {a_WT:WhyType a} (v:(@array a a_WT)): Z :=
|
||||
match v with
|
||||
| (mk_array x x1) => x
|
||||
end.
|
||||
|
||||
(* Why3 assumption *)
|
||||
Definition get {a:Type} {a_WT:WhyType a}(a1:(array a)) (i:Z): a :=
|
||||
Definition get {a:Type} {a_WT:WhyType a} (a1:(@array a a_WT)) (i:Z): a :=
|
||||
(map.Map.get (elts a1) i).
|
||||
|
||||
(* Why3 assumption *)
|
||||
Definition set {a:Type} {a_WT:WhyType a}(a1:(array a)) (i:Z) (v:a): (array
|
||||
a) := (mk_array (length a1) (map.Map.set (elts a1) i v)).
|
||||
Definition set {a:Type} {a_WT:WhyType a} (a1:(@array a a_WT)) (i:Z)
|
||||
(v:a): (@array a a_WT) := (mk_array (length a1) (map.Map.set (elts a1) i
|
||||
v)).
|
||||
|
||||
(* Why3 assumption *)
|
||||
Definition make {a:Type} {a_WT:WhyType a}(n:Z) (v:a): (array a) :=
|
||||
(mk_array n (map.Map.const v:(map.Map.map Z a))).
|
||||
Definition make {a:Type} {a_WT:WhyType a} (n:Z) (v:a): (@array a a_WT) :=
|
||||
(mk_array n (map.Map.const v:(@map.Map.map Z _ a a_WT))).
|
||||
|
||||
(* Why3 assumption *)
|
||||
Definition decrease1(a:(array Z)): Prop := forall (i:Z), ((0%Z <= i)%Z /\
|
||||
Definition decrease1 (a:(@array Z _)): Prop := forall (i:Z), ((0%Z <= i)%Z /\
|
||||
(i < ((length a) - 1%Z)%Z)%Z) -> (((get a i) - 1%Z)%Z <= (get a
|
||||
(i + 1%Z)%Z))%Z.
|
||||
|
||||
|
||||
(* Why3 goal *)
|
||||
Theorem decrease1_induction : forall (a:(array Z)), (decrease1 a) ->
|
||||
forall (i:Z) (j:Z), (((0%Z <= i)%Z /\ (i <= j)%Z) /\ (j < (length a))%Z) ->
|
||||
Theorem decrease1_induction : forall (a:(@array Z _)), (decrease1 a) ->
|
||||
forall (i:Z) (j:Z), ((0%Z <= i)%Z /\ ((i <= j)%Z /\ (j < (length a))%Z)) ->
|
||||
((((get a i) + i)%Z - j)%Z <= (get a j))%Z.
|
||||
(* Why3 intros a h1 i j (h2,(h3,h4)). *)
|
||||
(* YOU MAY EDIT THE PROOF BELOW *)
|
||||
unfold decrease1.
|
||||
intros a Ha i j Hij.
|
||||
@@ -70,18 +72,17 @@ apply (Zlt_lower_bound_ind _ i).
|
||||
2: omega.
|
||||
intuition.
|
||||
assert (x = i \/ i < x)%Z by omega.
|
||||
destruct H4.
|
||||
destruct H5.
|
||||
subst x.
|
||||
ring_simplify.
|
||||
omega.
|
||||
apply Zle_trans with (get a (x-1) - 1)%Z.
|
||||
assert (i <= x-1 < x)%Z by omega.
|
||||
assert (0 <= i <= x-1 /\ x-1 < length a)%Z by omega.
|
||||
generalize (H (x-1)%Z H8 H9); clear H; intuition.
|
||||
assert (0 <= i /\ i <= x-1 < length a)%Z by omega.
|
||||
generalize (H0 (x-1)%Z H8 H9); clear H0; intuition.
|
||||
apply Zle_trans with (get a (x-1+1))%Z.
|
||||
apply (Ha (x-1)%Z); omega.
|
||||
ring_simplify (x-1+1)%Z.
|
||||
omega.
|
||||
Qed.
|
||||
|
||||
|
||||
|
||||
@@ -47,7 +47,7 @@
|
||||
name="decrease1_induction"
|
||||
locfile="../decrease1.mlw"
|
||||
loclnum="17" loccnumb="8" loccnume="27"
|
||||
sum="321f64e0ee2b082f25f0f3ce1ef13fd4"
|
||||
sum="274102e8bb58aeb99d9f9e45aa7882cf"
|
||||
proved="true"
|
||||
expanded="true"
|
||||
shape="ainfix >=amixfix []V0V2ainfix -ainfix +amixfix []V0V1V1V2Iainfix <V2alengthV0Aainfix <=V1V2Aainfix <=c0V1FIadecrease1V0F">
|
||||
@@ -58,7 +58,7 @@
|
||||
edited="decrease1_Decrease1_decrease1_induction_2.v"
|
||||
obsolete="false"
|
||||
archived="false">
|
||||
<result status="valid" time="1.24"/>
|
||||
<result status="valid" time="1.10"/>
|
||||
</proof>
|
||||
</goal>
|
||||
<goal
|
||||
@@ -66,7 +66,7 @@
|
||||
locfile="../decrease1.mlw"
|
||||
loclnum="23" loccnumb="6" loccnume="12"
|
||||
expl="VC for search"
|
||||
sum="6143b67dabd75891e759f9926b6d1e18"
|
||||
sum="d985d523fcbd66a1ee7e526dc975b55f"
|
||||
proved="true"
|
||||
expanded="true"
|
||||
shape="iNainfix =agetV1V4c0Iainfix <V4V3Aainfix <=c0V4FAainfix =agetV1V3c0Aainfix <V3V0Aainfix <=c0V3ONainfix =agetV1V5c0Iainfix <V5V0Aainfix <=c0V5FAainfix =V3aprefix -c1Laprefix -c1iiainfix <ainfix -V0V6ainfix -V0V2Aainfix <=c0ainfix -V0V2ANainfix =agetV1V7c0Iainfix <V7V0Iainfix <V7V6Aainfix <=c0V7FAainfix <=c0V6Iainfix =V6ainfix +V2c1Fainfix <ainfix -V0V8ainfix -V0V2Aainfix <=c0ainfix -V0V2ANainfix =agetV1V9c0Iainfix <V9V0Iainfix <V9V8Aainfix <=c0V9FAainfix <=c0V8Iainfix =V8ainfix +V2agetV1V2FAainfix <V2V0Aainfix <=c0V2ainfix >agetV1V2c0Aainfix <V2V0Aainfix <=c0V2Nainfix =agetV1V10c0Iainfix <V10V2Aainfix <=c0V10FAainfix =agetV1V2c0Aainfix <V2V0Aainfix <=c0V2ONainfix =agetV1V11c0Iainfix <V11V0Aainfix <=c0V11FAainfix =V2aprefix -c1ainfix =agetV1V2c0Aainfix <V2V0Aainfix <=c0V2ainfix <V2V0INainfix =agetV1V12c0Iainfix <V12V0Iainfix <V12V2Aainfix <=c0V12FAainfix <=c0V2FANainfix =agetV1V13c0Iainfix <V13V0Iainfix <V13c0Aainfix <=c0V13FAainfix <=c0c0Iadecrease1amk arrayV0V1Aainfix <=c0V0F">
|
||||
@@ -81,7 +81,7 @@
|
||||
locfile="../decrease1.mlw"
|
||||
loclnum="23" loccnumb="6" loccnume="12"
|
||||
expl="1. loop invariant init"
|
||||
sum="919b21aed97efa3341c3b96d41f05114"
|
||||
sum="8bab3234524833f0453d36498f8da677"
|
||||
proved="true"
|
||||
expanded="true"
|
||||
shape="loop invariant initainfix <=c0c0Iadecrease1amk arrayV0V1Aainfix <=c0V0F">
|
||||
@@ -125,7 +125,7 @@
|
||||
locfile="../decrease1.mlw"
|
||||
loclnum="23" loccnumb="6" loccnume="12"
|
||||
expl="2. loop invariant init"
|
||||
sum="b0539167e792edefc54f573416637244"
|
||||
sum="7381bc35c201179c9434cc584c9abea6"
|
||||
proved="true"
|
||||
expanded="true"
|
||||
shape="loop invariant initNainfix =agetV1V2c0Iainfix <V2V0Iainfix <V2c0Aainfix <=c0V2FIadecrease1amk arrayV0V1Aainfix <=c0V0F">
|
||||
@@ -185,7 +185,7 @@
|
||||
locfile="../decrease1.mlw"
|
||||
loclnum="23" loccnumb="6" loccnume="12"
|
||||
expl="3. precondition"
|
||||
sum="220d5ade351c2070cde725138458d640"
|
||||
sum="c772310d66b3a095ea579484b458c462"
|
||||
proved="true"
|
||||
expanded="true"
|
||||
shape="preconditionainfix <V2V0Aainfix <=c0V2Iainfix <V2V0INainfix =agetV1V3c0Iainfix <V3V0Iainfix <V3V2Aainfix <=c0V3FAainfix <=c0V2FIadecrease1amk arrayV0V1Aainfix <=c0V0F">
|
||||
@@ -245,7 +245,7 @@
|
||||
locfile="../decrease1.mlw"
|
||||
loclnum="23" loccnumb="6" loccnume="12"
|
||||
expl="4. postcondition"
|
||||
sum="8f02dc8507bc91cb6f93e52408b0b033"
|
||||
sum="44a5a3d91a4cec98e6c0c9fd4ab34d00"
|
||||
proved="true"
|
||||
expanded="true"
|
||||
shape="postconditionNainfix =agetV1V3c0Iainfix <V3V2Aainfix <=c0V3FAainfix =agetV1V2c0Aainfix <V2V0Aainfix <=c0V2ONainfix =agetV1V4c0Iainfix <V4V0Aainfix <=c0V4FAainfix =V2aprefix -c1Iainfix =agetV1V2c0Iainfix <V2V0Aainfix <=c0V2Iainfix <V2V0INainfix =agetV1V5c0Iainfix <V5V0Iainfix <V5V2Aainfix <=c0V5FAainfix <=c0V2FIadecrease1amk arrayV0V1Aainfix <=c0V0F">
|
||||
@@ -305,7 +305,7 @@
|
||||
locfile="../decrease1.mlw"
|
||||
loclnum="23" loccnumb="6" loccnume="12"
|
||||
expl="5. precondition"
|
||||
sum="e9f8602d61c8a04462efa18a247bee58"
|
||||
sum="953b4bc6b6bd4590a13007821b20445a"
|
||||
proved="true"
|
||||
expanded="true"
|
||||
shape="preconditionainfix <V2V0Aainfix <=c0V2INainfix =agetV1V2c0Iainfix <V2V0Aainfix <=c0V2Iainfix <V2V0INainfix =agetV1V3c0Iainfix <V3V0Iainfix <V3V2Aainfix <=c0V3FAainfix <=c0V2FIadecrease1amk arrayV0V1Aainfix <=c0V0F">
|
||||
@@ -365,7 +365,7 @@
|
||||
locfile="../decrease1.mlw"
|
||||
loclnum="23" loccnumb="6" loccnume="12"
|
||||
expl="6. precondition"
|
||||
sum="510292e90305d80ba9fa3d435633580c"
|
||||
sum="693c8e7722764eb800f1f8be22eb9af9"
|
||||
proved="true"
|
||||
expanded="true"
|
||||
shape="preconditionainfix <V2V0Aainfix <=c0V2Iainfix >agetV1V2c0Iainfix <V2V0Aainfix <=c0V2INainfix =agetV1V2c0Iainfix <V2V0Aainfix <=c0V2Iainfix <V2V0INainfix =agetV1V3c0Iainfix <V3V0Iainfix <V3V2Aainfix <=c0V3FAainfix <=c0V2FIadecrease1amk arrayV0V1Aainfix <=c0V0F">
|
||||
@@ -425,7 +425,7 @@
|
||||
locfile="../decrease1.mlw"
|
||||
loclnum="23" loccnumb="6" loccnume="12"
|
||||
expl="7. loop invariant preservation"
|
||||
sum="033f4841915cd121d147e8ef0706ed02"
|
||||
sum="a128a0815ea6c9c03f1b5c3776769e2d"
|
||||
proved="true"
|
||||
expanded="true"
|
||||
shape="loop invariant preservationainfix <=c0V3Iainfix =V3ainfix +V2agetV1V2FIainfix <V2V0Aainfix <=c0V2Iainfix >agetV1V2c0Iainfix <V2V0Aainfix <=c0V2INainfix =agetV1V2c0Iainfix <V2V0Aainfix <=c0V2Iainfix <V2V0INainfix =agetV1V4c0Iainfix <V4V0Iainfix <V4V2Aainfix <=c0V4FAainfix <=c0V2FIadecrease1amk arrayV0V1Aainfix <=c0V0F">
|
||||
@@ -469,7 +469,7 @@
|
||||
locfile="../decrease1.mlw"
|
||||
loclnum="23" loccnumb="6" loccnume="12"
|
||||
expl="8. loop invariant preservation"
|
||||
sum="37148a856a4160e201bf7b3a71341e97"
|
||||
sum="99be841da51729f612f431477b9120d3"
|
||||
proved="true"
|
||||
expanded="true"
|
||||
shape="loop invariant preservationNainfix =agetV1V4c0Iainfix <V4V0Iainfix <V4V3Aainfix <=c0V4FIainfix =V3ainfix +V2agetV1V2FIainfix <V2V0Aainfix <=c0V2Iainfix >agetV1V2c0Iainfix <V2V0Aainfix <=c0V2INainfix =agetV1V2c0Iainfix <V2V0Aainfix <=c0V2Iainfix <V2V0INainfix =agetV1V5c0Iainfix <V5V0Iainfix <V5V2Aainfix <=c0V5FAainfix <=c0V2FIadecrease1amk arrayV0V1Aainfix <=c0V0F">
|
||||
@@ -505,7 +505,7 @@
|
||||
locfile="../decrease1.mlw"
|
||||
loclnum="23" loccnumb="6" loccnume="12"
|
||||
expl="9. loop variant decrease"
|
||||
sum="d9037f7e25fc854f657c9b100135a988"
|
||||
sum="b572823b417e83a4e57845239b841aed"
|
||||
proved="true"
|
||||
expanded="true"
|
||||
shape="loop variant decreaseainfix <ainfix -V0V3ainfix -V0V2Aainfix <=c0ainfix -V0V2Iainfix =V3ainfix +V2agetV1V2FIainfix <V2V0Aainfix <=c0V2Iainfix >agetV1V2c0Iainfix <V2V0Aainfix <=c0V2INainfix =agetV1V2c0Iainfix <V2V0Aainfix <=c0V2Iainfix <V2V0INainfix =agetV1V4c0Iainfix <V4V0Iainfix <V4V2Aainfix <=c0V4FAainfix <=c0V2FIadecrease1amk arrayV0V1Aainfix <=c0V0F">
|
||||
@@ -565,7 +565,7 @@
|
||||
locfile="../decrease1.mlw"
|
||||
loclnum="23" loccnumb="6" loccnume="12"
|
||||
expl="10. loop invariant preservation"
|
||||
sum="12292aa67dc3e399f5a7f05be2d8ea1c"
|
||||
sum="cc7b2c53d485c769f2086813884b53b0"
|
||||
proved="true"
|
||||
expanded="true"
|
||||
shape="loop invariant preservationainfix <=c0V3Iainfix =V3ainfix +V2c1FINainfix >agetV1V2c0Iainfix <V2V0Aainfix <=c0V2INainfix =agetV1V2c0Iainfix <V2V0Aainfix <=c0V2Iainfix <V2V0INainfix =agetV1V4c0Iainfix <V4V0Iainfix <V4V2Aainfix <=c0V4FAainfix <=c0V2FIadecrease1amk arrayV0V1Aainfix <=c0V0F">
|
||||
@@ -609,7 +609,7 @@
|
||||
locfile="../decrease1.mlw"
|
||||
loclnum="23" loccnumb="6" loccnume="12"
|
||||
expl="11. loop invariant preservation"
|
||||
sum="c5cf9dcbd57d6e087a146f780c3c31bf"
|
||||
sum="6720b470c6a4264b81f0b12fe88976e8"
|
||||
proved="true"
|
||||
expanded="true"
|
||||
shape="loop invariant preservationNainfix =agetV1V4c0Iainfix <V4V0Iainfix <V4V3Aainfix <=c0V4FIainfix =V3ainfix +V2c1FINainfix >agetV1V2c0Iainfix <V2V0Aainfix <=c0V2INainfix =agetV1V2c0Iainfix <V2V0Aainfix <=c0V2Iainfix <V2V0INainfix =agetV1V5c0Iainfix <V5V0Iainfix <V5V2Aainfix <=c0V5FAainfix <=c0V2FIadecrease1amk arrayV0V1Aainfix <=c0V0F">
|
||||
@@ -653,7 +653,7 @@
|
||||
locfile="../decrease1.mlw"
|
||||
loclnum="23" loccnumb="6" loccnume="12"
|
||||
expl="12. loop variant decrease"
|
||||
sum="b4d8169d0c721c567f0be49f785a9b06"
|
||||
sum="2cc3d9117c50f384d56ae00cfb79a6e5"
|
||||
proved="true"
|
||||
expanded="true"
|
||||
shape="loop variant decreaseainfix <ainfix -V0V3ainfix -V0V2Aainfix <=c0ainfix -V0V2Iainfix =V3ainfix +V2c1FINainfix >agetV1V2c0Iainfix <V2V0Aainfix <=c0V2INainfix =agetV1V2c0Iainfix <V2V0Aainfix <=c0V2Iainfix <V2V0INainfix =agetV1V4c0Iainfix <V4V0Iainfix <V4V2Aainfix <=c0V4FAainfix <=c0V2FIadecrease1amk arrayV0V1Aainfix <=c0V0F">
|
||||
@@ -713,7 +713,7 @@
|
||||
locfile="../decrease1.mlw"
|
||||
loclnum="23" loccnumb="6" loccnume="12"
|
||||
expl="13. postcondition"
|
||||
sum="d93665d085b2ade1b4a4af40b0f41dc8"
|
||||
sum="f30f4d74c833c561cf1990390ed9dbdc"
|
||||
proved="true"
|
||||
expanded="true"
|
||||
shape="postconditionNainfix =agetV1V4c0Iainfix <V4V3Aainfix <=c0V4FAainfix =agetV1V3c0Aainfix <V3V0Aainfix <=c0V3ONainfix =agetV1V5c0Iainfix <V5V0Aainfix <=c0V5FAainfix =V3aprefix -c1Laprefix -c1INainfix <V2V0INainfix =agetV1V6c0Iainfix <V6V0Iainfix <V6V2Aainfix <=c0V6FAainfix <=c0V2FIadecrease1amk arrayV0V1Aainfix <=c0V0F">
|
||||
@@ -775,7 +775,7 @@
|
||||
locfile="../decrease1.mlw"
|
||||
loclnum="43" loccnumb="10" loccnume="20"
|
||||
expl="VC for search_rec"
|
||||
sum="d5b4dd7a8682850d20d44d679e01c2d3"
|
||||
sum="c5b279e4b45fc745609c63cfbc40f369"
|
||||
proved="true"
|
||||
expanded="true"
|
||||
shape="iNainfix =agetV1V5c0Iainfix <V5V4Aainfix <=V2V5FAainfix =agetV1V4c0Aainfix <V4V0Aainfix <=V2V4ONainfix =agetV1V6c0Iainfix <V6V0Aainfix <=V2V6FAainfix =V4aprefix -c1Laprefix -c1iiNainfix =agetV1V9c0Iainfix <V9V8Aainfix <=V2V9FAainfix =agetV1V8c0Aainfix <V8V0Aainfix <=V2V8ONainfix =agetV1V10c0Iainfix <V10V0Aainfix <=V2V10FAainfix =V8aprefix -c1INainfix =agetV1V11c0Iainfix <V11V8Aainfix <=V7V11FAainfix =agetV1V8c0Aainfix <V8V0Aainfix <=V7V8ONainfix =agetV1V12c0Iainfix <V12V0Aainfix <=V7V12FAainfix =V8aprefix -c1FAainfix <=c0V7Aadecrease1V3Lainfix +V2c1Nainfix =agetV1V15c0Iainfix <V15V14Aainfix <=V2V15FAainfix =agetV1V14c0Aainfix <V14V0Aainfix <=V2V14ONainfix =agetV1V16c0Iainfix <V16V0Aainfix <=V2V16FAainfix =V14aprefix -c1INainfix =agetV1V17c0Iainfix <V17V14Aainfix <=V13V17FAainfix =agetV1V14c0Aainfix <V14V0Aainfix <=V13V14ONainfix =agetV1V18c0Iainfix <V18V0Aainfix <=V13V18FAainfix =V14aprefix -c1FAainfix <=c0V13Aadecrease1V3Lainfix +V2agetV1V2Aainfix <V2V0Aainfix <=c0V2ainfix >agetV1V2c0Aainfix <V2V0Aainfix <=c0V2Nainfix =agetV1V19c0Iainfix <V19V2Aainfix <=V2V19FAainfix =agetV1V2c0Aainfix <V2V0Aainfix <=V2V2ONainfix =agetV1V20c0Iainfix <V20V0Aainfix <=V2V20FAainfix =V2aprefix -c1ainfix =agetV1V2c0Aainfix <V2V0Aainfix <=c0V2ainfix <V2V0Iainfix <=c0V2Aadecrease1V3Aainfix <=c0V0Lamk arrayV0V1F">
|
||||
@@ -790,7 +790,7 @@
|
||||
locfile="../decrease1.mlw"
|
||||
loclnum="43" loccnumb="10" loccnume="20"
|
||||
expl="1. precondition"
|
||||
sum="ac62e81db8bdf840bbc26d6eb050c20a"
|
||||
sum="2861bbb30bb355e64c19b4bbd6d70f54"
|
||||
proved="true"
|
||||
expanded="true"
|
||||
shape="preconditionainfix <V2V0Aainfix <=c0V2Iainfix <V2V0Iainfix <=c0V2Aadecrease1V3Aainfix <=c0V0Lamk arrayV0V1F">
|
||||
@@ -850,7 +850,7 @@
|
||||
locfile="../decrease1.mlw"
|
||||
loclnum="43" loccnumb="10" loccnume="20"
|
||||
expl="2. postcondition"
|
||||
sum="85e9ba8c411a82c225fd29af76387723"
|
||||
sum="cf5c0bd24e173bc3964a5d872fbc327a"
|
||||
proved="true"
|
||||
expanded="true"
|
||||
shape="postconditionNainfix =agetV1V4c0Iainfix <V4V2Aainfix <=V2V4FAainfix =agetV1V2c0Aainfix <V2V0Aainfix <=V2V2ONainfix =agetV1V5c0Iainfix <V5V0Aainfix <=V2V5FAainfix =V2aprefix -c1Iainfix =agetV1V2c0Iainfix <V2V0Aainfix <=c0V2Iainfix <V2V0Iainfix <=c0V2Aadecrease1V3Aainfix <=c0V0Lamk arrayV0V1F">
|
||||
@@ -910,7 +910,7 @@
|
||||
locfile="../decrease1.mlw"
|
||||
loclnum="43" loccnumb="10" loccnume="20"
|
||||
expl="3. precondition"
|
||||
sum="9d8cba724630ba5794efaaae2afb8eec"
|
||||
sum="893c680ce13696bab2990592b6a4b7ad"
|
||||
proved="true"
|
||||
expanded="true"
|
||||
shape="preconditionainfix <V2V0Aainfix <=c0V2INainfix =agetV1V2c0Iainfix <V2V0Aainfix <=c0V2Iainfix <V2V0Iainfix <=c0V2Aadecrease1V3Aainfix <=c0V0Lamk arrayV0V1F">
|
||||
@@ -970,7 +970,7 @@
|
||||
locfile="../decrease1.mlw"
|
||||
loclnum="43" loccnumb="10" loccnume="20"
|
||||
expl="4. precondition"
|
||||
sum="4e9cce4548ce54c5ff02887693647572"
|
||||
sum="309f46ddf8158434ad882400a77e1168"
|
||||
proved="true"
|
||||
expanded="true"
|
||||
shape="preconditionainfix <V2V0Aainfix <=c0V2Iainfix >agetV1V2c0Iainfix <V2V0Aainfix <=c0V2INainfix =agetV1V2c0Iainfix <V2V0Aainfix <=c0V2Iainfix <V2V0Iainfix <=c0V2Aadecrease1V3Aainfix <=c0V0Lamk arrayV0V1F">
|
||||
@@ -1030,7 +1030,7 @@
|
||||
locfile="../decrease1.mlw"
|
||||
loclnum="43" loccnumb="10" loccnume="20"
|
||||
expl="5. precondition"
|
||||
sum="0f942d194fa30e6965c49a85fda105f6"
|
||||
sum="49cb200e3d38d866eede7c04a237013e"
|
||||
proved="true"
|
||||
expanded="true"
|
||||
shape="preconditionainfix <=c0V4Aadecrease1V3Lainfix +V2agetV1V2Iainfix <V2V0Aainfix <=c0V2Iainfix >agetV1V2c0Iainfix <V2V0Aainfix <=c0V2INainfix =agetV1V2c0Iainfix <V2V0Aainfix <=c0V2Iainfix <V2V0Iainfix <=c0V2Aadecrease1V3Aainfix <=c0V0Lamk arrayV0V1F">
|
||||
@@ -1090,7 +1090,7 @@
|
||||
locfile="../decrease1.mlw"
|
||||
loclnum="43" loccnumb="10" loccnume="20"
|
||||
expl="6. postcondition"
|
||||
sum="8926200bb4f418b2860f9db1e103c6c6"
|
||||
sum="8ccca0adf6640e7a56856af8755eb27d"
|
||||
proved="true"
|
||||
expanded="true"
|
||||
shape="postconditionNainfix =agetV1V6c0Iainfix <V6V5Aainfix <=V2V6FAainfix =agetV1V5c0Aainfix <V5V0Aainfix <=V2V5ONainfix =agetV1V7c0Iainfix <V7V0Aainfix <=V2V7FAainfix =V5aprefix -c1INainfix =agetV1V8c0Iainfix <V8V5Aainfix <=V4V8FAainfix =agetV1V5c0Aainfix <V5V0Aainfix <=V4V5ONainfix =agetV1V9c0Iainfix <V9V0Aainfix <=V4V9FAainfix =V5aprefix -c1FIainfix <=c0V4Aadecrease1V3Lainfix +V2agetV1V2Iainfix <V2V0Aainfix <=c0V2Iainfix >agetV1V2c0Iainfix <V2V0Aainfix <=c0V2INainfix =agetV1V2c0Iainfix <V2V0Aainfix <=c0V2Iainfix <V2V0Iainfix <=c0V2Aadecrease1V3Aainfix <=c0V0Lamk arrayV0V1F">
|
||||
@@ -1118,7 +1118,7 @@
|
||||
locfile="../decrease1.mlw"
|
||||
loclnum="43" loccnumb="10" loccnume="20"
|
||||
expl="7. precondition"
|
||||
sum="52adc452b026cfdc6441bd82cc03d738"
|
||||
sum="1a8d0b567aa4c9e7efaca8e11d30a666"
|
||||
proved="true"
|
||||
expanded="true"
|
||||
shape="preconditionainfix <=c0V4Aadecrease1V3Lainfix +V2c1INainfix >agetV1V2c0Iainfix <V2V0Aainfix <=c0V2INainfix =agetV1V2c0Iainfix <V2V0Aainfix <=c0V2Iainfix <V2V0Iainfix <=c0V2Aadecrease1V3Aainfix <=c0V0Lamk arrayV0V1F">
|
||||
@@ -1178,7 +1178,7 @@
|
||||
locfile="../decrease1.mlw"
|
||||
loclnum="43" loccnumb="10" loccnume="20"
|
||||
expl="8. postcondition"
|
||||
sum="6960ca108e0232babd5ddf948365f8ff"
|
||||
sum="18732f65b93109ce7b7b5d7b597c1a90"
|
||||
proved="true"
|
||||
expanded="true"
|
||||
shape="postconditionNainfix =agetV1V6c0Iainfix <V6V5Aainfix <=V2V6FAainfix =agetV1V5c0Aainfix <V5V0Aainfix <=V2V5ONainfix =agetV1V7c0Iainfix <V7V0Aainfix <=V2V7FAainfix =V5aprefix -c1INainfix =agetV1V8c0Iainfix <V8V5Aainfix <=V4V8FAainfix =agetV1V5c0Aainfix <V5V0Aainfix <=V4V5ONainfix =agetV1V9c0Iainfix <V9V0Aainfix <=V4V9FAainfix =V5aprefix -c1FIainfix <=c0V4Aadecrease1V3Lainfix +V2c1INainfix >agetV1V2c0Iainfix <V2V0Aainfix <=c0V2INainfix =agetV1V2c0Iainfix <V2V0Aainfix <=c0V2Iainfix <V2V0Iainfix <=c0V2Aadecrease1V3Aainfix <=c0V0Lamk arrayV0V1F">
|
||||
@@ -1222,7 +1222,7 @@
|
||||
locfile="../decrease1.mlw"
|
||||
loclnum="43" loccnumb="10" loccnume="20"
|
||||
expl="9. postcondition"
|
||||
sum="57fa6daf102fca2ed7313822b5ffaee3"
|
||||
sum="33bcb0b94113c30d6858c47de53395c9"
|
||||
proved="true"
|
||||
expanded="true"
|
||||
shape="postconditionNainfix =agetV1V5c0Iainfix <V5V4Aainfix <=V2V5FAainfix =agetV1V4c0Aainfix <V4V0Aainfix <=V2V4ONainfix =agetV1V6c0Iainfix <V6V0Aainfix <=V2V6FAainfix =V4aprefix -c1Laprefix -c1INainfix <V2V0Iainfix <=c0V2Aadecrease1V3Aainfix <=c0V0Lamk arrayV0V1F">
|
||||
|
||||
Reference in New Issue
Block a user