Attention une mise à jour du serveur va être effectuée le lundi 17 mai entre 13h et 13h30. Cette mise à jour va générer une interruption du service de quelques minutes.

updated proofs after commit 887933

parent 88793388
......@@ -82,10 +82,10 @@ Axiom injective_surjective : forall (a:(array Z)) (n:Z), (injective a n) ->
Theorem WP_parameter_inverting2 : forall (a:Z), forall (n:Z), forall (a1:(map
Z Z)), let a2 := (mk_array a a1) in ((((0%Z <= n)%Z /\ (n = a)) /\
((injective a2 n) /\ (range a2 n))) -> ((0%Z <= (n - 1%Z)%Z)%Z ->
forall (b:(map Z Z)), (forall (j:Z), ((0%Z <= j)%Z /\
(j < ((n - 1%Z)%Z + 1%Z)%Z)%Z) -> ((get b (get a1 j)) = j)) ->
(injective (mk_array n b) n))).
((injective a2 n) /\ (range a2 n))) -> ((0%Z <= n)%Z ->
((0%Z <= (n - 1%Z)%Z)%Z -> forall (b:(map Z Z)), (forall (j:Z),
((0%Z <= j)%Z /\ (j < ((n - 1%Z)%Z + 1%Z)%Z)%Z) -> ((get b (get a1
j)) = j)) -> (injective (mk_array n b) n)))).
(* YOU MAY EDIT THE PROOF BELOW *)
intuition.
intuition.
......@@ -93,14 +93,14 @@ red; intros.
unfold get1; simpl.
assert (surjective (mk_array a a1) n).
apply injective_surjective; assumption.
generalize (H8 i H5); unfold get1; simpl; intros (i1, (Hi1,Hi2)).
generalize (H8 j H6); unfold get1; simpl; intros (j1, (Hj1,Hj2)).
generalize (H9 i H6); unfold get1; simpl; intros (i1, (Hi1,Hi2)).
generalize (H9 j H7); unfold get1; simpl; intros (j1, (Hj1,Hj2)).
rewrite <- Hi2.
rewrite <- Hj2.
rewrite H2; try omega.
rewrite H2; try omega.
rewrite H3; try omega.
rewrite H3; try omega.
intro.
apply H7.
apply H8.
subst.
auto.
Qed.
......
......@@ -29,38 +29,57 @@
</goal>
</transf>
</goal>
<goal name="WP_parameter inverting2" expl="correctness of parameter inverting2" sum="db2b99c1ab654d757ebfbe176afe2aed" proved="true" expanded="false">
<transf name="split_goal" proved="true" expanded="false">
<goal name="WP_parameter inverting2.1" expl="normal postcondition" sum="ba4351b73824c7cbab8812b4dc656c4b" proved="true" expanded="false">
<goal name="WP_parameter inverting2" expl="correctness of parameter inverting2" sum="f50e71533f48244acb01a01a6b0550a7" proved="true" expanded="true">
<transf name="split_goal" proved="true" expanded="true">
<goal name="WP_parameter inverting2.1" expl="precondition" sum="d69d89f4ee0c4193de64e058a57349c0" proved="true" expanded="false">
<proof prover="alt-ergo" timelimit="20" edited="" obsolete="false">
<result status="valid" time="0.00"/>
<result status="valid" time="0.01"/>
</proof>
</goal>
<goal name="WP_parameter inverting2.2" expl="for loop initialization" sum="1dba9f18d5aed75915a7c26b5485bbab" proved="true" expanded="false">
<goal name="WP_parameter inverting2.2" expl="normal postcondition" sum="e50f243327d5395ce634bd8d37bd6eaf" proved="true" expanded="false">
<proof prover="alt-ergo" timelimit="20" edited="" obsolete="false">
<result status="valid" time="0.01"/>
<result status="valid" time="0.02"/>
</proof>
</goal>
<goal name="WP_parameter inverting2.3" expl="for loop preservation" sum="876fc9bd89bb683e84ef31eeb8da5039" proved="true" expanded="false">
<goal name="WP_parameter inverting2.3" expl="for loop initialization" sum="124a90cb6508adbd19ab64f410d583e6" proved="true" expanded="false">
<proof prover="alt-ergo" timelimit="20" edited="" obsolete="false">
<result status="valid" time="0.05"/>
<result status="valid" time="0.01"/>
</proof>
</goal>
<goal name="WP_parameter inverting2.4" expl="normal postcondition" sum="9d74362206a7072ff74a83da616e144e" proved="true" expanded="false">
<transf name="split_goal" proved="true" expanded="false">
<goal name="WP_parameter inverting2.4.1" expl="correctness of parameter inverting2" sum="59a5d588d8049a4a1b4e847eb05dfeb8" proved="true" expanded="false">
<goal name="WP_parameter inverting2.4" expl="for loop preservation" sum="53f01a75c741801f97f1fd857d692cd4" proved="true" expanded="true">
<transf name="split_goal" proved="true" expanded="true">
<goal name="WP_parameter inverting2.4.1" expl="for loop preservation" sum="aec0988265691d5f420d6245951db1e2" proved="true" expanded="false">
<proof prover="alt-ergo" timelimit="10" edited="" obsolete="false">
<result status="valid" time="0.01"/>
</proof>
</goal>
<goal name="WP_parameter inverting2.4.2" expl="for loop preservation" sum="5ff8283e5411074c759d58ae4b0dce08" proved="true" expanded="true">
<proof prover="alt-ergo" timelimit="10" edited="" obsolete="false">
<result status="valid" time="0.02"/>
</proof>
</goal>
<goal name="WP_parameter inverting2.4.3" expl="for loop preservation" sum="ab059698c73bb7fdf11f8d78cea3bb3c" proved="true" expanded="false">
<proof prover="alt-ergo" timelimit="10" edited="" obsolete="false">
<result status="valid" time="0.04"/>
</proof>
</goal>
</transf>
</goal>
<goal name="WP_parameter inverting2.5" expl="normal postcondition" sum="e046f2b96b6fa3e2149933cd179db0b6" proved="true" expanded="true">
<transf name="split_goal" proved="true" expanded="true">
<goal name="WP_parameter inverting2.5.1" expl="correctness of parameter inverting2" sum="7c92f5ec9addd8381182c4be1eb4e269" proved="true" expanded="true">
<proof prover="alt-ergo" timelimit="10" edited="" obsolete="false">
<result status="valid" time="0.01"/>
</proof>
</goal>
<goal name="WP_parameter inverting2.4.2" expl="correctness of parameter inverting2" sum="3773f85cb23c8f06500d5cc29f0c0fb4" proved="true" expanded="false">
<proof prover="coq" timelimit="10" edited="vstte10_inverting_WP_InvertingAnInjection_WP_parameter_inverting2_1.v" obsolete="false">
<result status="valid" time="0.80"/>
<goal name="WP_parameter inverting2.5.2" expl="correctness of parameter inverting2" sum="58b595e46de83ec9f2758e1485145ff1" proved="true" expanded="true">
<proof prover="coq" timelimit="10" edited="vstte10_inverting_WP_InvertingAnInjection_WP_parameter_inverting2_2.v" obsolete="false">
<result status="valid" time="0.52"/>
</proof>
</goal>
<goal name="WP_parameter inverting2.4.3" expl="correctness of parameter inverting2" sum="e551b00d12207bd183c4994aacc5e579" proved="true" expanded="false">
<goal name="WP_parameter inverting2.5.3" expl="correctness of parameter inverting2" sum="87ea33ebb675ceeb7f9e163199a52b3e" proved="true" expanded="true">
<proof prover="alt-ergo" timelimit="10" edited="" obsolete="false">
<result status="valid" time="0.00"/>
<result status="valid" time="0.02"/>
</proof>
</goal>
</transf>
......@@ -69,80 +88,85 @@
</goal>
</theory>
<theory name="WP Test" verified="true" expanded="false">
<goal name="WP_parameter test" expl="correctness of parameter test" sum="7c038390b81ad0bfc09da96433df1e95" proved="true" expanded="false">
<goal name="WP_parameter test" expl="correctness of parameter test" sum="b11ead18e362a851fab1aef100291833" proved="true" expanded="false">
<transf name="split_goal" proved="true" expanded="false">
<goal name="WP_parameter test.1" expl="precondition" sum="3f00d7e40e211a4f81ed9f149cc61192" proved="true" expanded="false">
<goal name="WP_parameter test.1" expl="precondition" sum="166b7f17bcd52e08aa4c537b57443201" proved="true" expanded="false">
<proof prover="alt-ergo" timelimit="20" edited="" obsolete="false">
<result status="valid" time="0.00"/>
<result status="valid" time="0.01"/>
</proof>
</goal>
<goal name="WP_parameter test.2" expl="precondition" sum="316209e378097f1456cca8d4496fe249" proved="true" expanded="false">
<proof prover="alt-ergo" timelimit="20" edited="" obsolete="false">
<result status="valid" time="0.01"/>
</proof>
</goal>
<goal name="WP_parameter test.2" expl="precondition" sum="b52a5dbb1265dde5fd833660d797b299" proved="true" expanded="false">
<goal name="WP_parameter test.3" expl="precondition" sum="cd519b62de5c4dbea56afb21e72cf974" proved="true" expanded="false">
<proof prover="alt-ergo" timelimit="20" edited="" obsolete="false">
<result status="valid" time="0.01"/>
</proof>
</goal>
<goal name="WP_parameter test.4" expl="precondition" sum="c36d9dee040ee4002207c1e6e040c129" proved="true" expanded="false">
<proof prover="alt-ergo" timelimit="20" edited="" obsolete="false">
<result status="valid" time="0.01"/>
</proof>
</goal>
<goal name="WP_parameter test.5" expl="precondition" sum="6e4645387e7012a2b6bf6d53f4f70d34" proved="true" expanded="false">
<proof prover="alt-ergo" timelimit="20" edited="" obsolete="false">
<result status="valid" time="0.00"/>
</proof>
</goal>
<goal name="WP_parameter test.3" expl="precondition" sum="847593422a945cd30e6a1865d1cae393" proved="true" expanded="false">
<goal name="WP_parameter test.6" expl="precondition" sum="e88a06e1f97c88099cb01b948c7a91c6" proved="true" expanded="false">
<proof prover="alt-ergo" timelimit="20" edited="" obsolete="false">
<result status="valid" time="0.02"/>
</proof>
</goal>
<goal name="WP_parameter test.7" expl="precondition" sum="f64ccc3b248553d355821c9beb70c060" proved="true" expanded="false">
<proof prover="alt-ergo" timelimit="20" edited="" obsolete="false">
<result status="valid" time="0.01"/>
</proof>
</goal>
<goal name="WP_parameter test.4" expl="precondition" sum="fde12469d4b4c58622438b4312702630" proved="true" expanded="false">
<goal name="WP_parameter test.8" expl="precondition" sum="8c3a60debb027d2343e1a0ea02043aad" proved="true" expanded="false">
<transf name="split_goal" proved="true" expanded="false">
<goal name="WP_parameter test.4.1" expl="correctness of parameter test" sum="9ed6b1d30346032b36f51d7da4ef3f4f" proved="true" expanded="false">
<goal name="WP_parameter test.8.1" expl="correctness of parameter test" sum="305f99b72fdaafba10f53e8320a642c0" proved="true" expanded="false">
<proof prover="alt-ergo" timelimit="20" edited="" obsolete="false">
<result status="valid" time="0.01"/>
</proof>
</goal>
<goal name="WP_parameter test.4.2" expl="correctness of parameter test" sum="2cbf3edf5cee2ecf59212b9b1e00d1ca" proved="true" expanded="false">
<goal name="WP_parameter test.8.2" expl="correctness of parameter test" sum="2cb4c75ccd7aeb9779b173abf0edbf52" proved="true" expanded="false">
<proof prover="alt-ergo" timelimit="20" edited="" obsolete="false">
<result status="valid" time="0.01"/>
<result status="valid" time="0.02"/>
</proof>
</goal>
</transf>
</goal>
<goal name="WP_parameter test.5" expl="precondition" sum="2451a4ff2c72dcde03ad1dfb75861a9a" proved="true" expanded="false">
<goal name="WP_parameter test.9" expl="precondition" sum="ffe6717674c9a5274fccb931874b2b0e" proved="true" expanded="false">
<proof prover="alt-ergo" timelimit="20" edited="" obsolete="false">
<result status="valid" time="0.01"/>
</proof>
</goal>
<goal name="WP_parameter test.6" expl="precondition" sum="3d876c7c2872b49b43f5e0f94075b49e" proved="true" expanded="false">
<goal name="WP_parameter test.10" expl="precondition" sum="c3e9bb7f40d867a0e061166992dcd898" proved="true" expanded="false">
<proof prover="alt-ergo" timelimit="20" edited="" obsolete="false">
<result status="valid" time="0.01"/>
</proof>
</goal>
<goal name="WP_parameter test.7" expl="precondition" sum="fb389a1ac5f34fbff4a3296e22660473" proved="true" expanded="false">
<goal name="WP_parameter test.11" expl="precondition" sum="0aaee1521a5824645671a8ef2a4d7e82" proved="true" expanded="false">
<proof prover="alt-ergo" timelimit="20" edited="" obsolete="false">
<result status="valid" time="0.00"/>
</proof>
</goal>
<goal name="WP_parameter test.8" expl="precondition" sum="76fd8e0d4862def7d1710171adaba94b" proved="true" expanded="false">
<goal name="WP_parameter test.12" expl="assertion" sum="9e9959f0bd7b596c34ad75d05dc79cbd" proved="true" expanded="false">
<proof prover="alt-ergo" timelimit="20" edited="" obsolete="false">
<result status="valid" time="0.01"/>
<result status="valid" time="0.13"/>
</proof>
</goal>
<goal name="WP_parameter test.9" expl="precondition" sum="0cfd814524b536e9b0cd19e84bf937c0" proved="true" expanded="false">
<proof prover="alt-ergo" timelimit="20" edited="" obsolete="false">
<result status="valid" time="0.01"/>
</proof>
</goal>
<goal name="WP_parameter test.10" expl="precondition" sum="f16a64ad5c6b6b04d61ad794f96813b3" proved="true" expanded="false">
<proof prover="alt-ergo" timelimit="20" edited="" obsolete="false">
<result status="valid" time="0.02"/>
</proof>
</goal>
<goal name="WP_parameter test.11" expl="assertion" sum="f742c2848f5a6d052f9c179d25963a36" proved="true" expanded="false">
<proof prover="alt-ergo" timelimit="20" edited="" obsolete="false">
<result status="valid" time="0.11"/>
</proof>
</goal>
<goal name="WP_parameter test.12" expl="precondition" sum="fd2c2fe16830a5e799f97e343e2a84a9" proved="true" expanded="false">
<goal name="WP_parameter test.13" expl="precondition" sum="5579a747fe8bd7012cfba33c059decc0" proved="true" expanded="false">
<proof prover="alt-ergo" timelimit="20" edited="" obsolete="false">
<result status="valid" time="0.24"/>
</proof>
</goal>
<goal name="WP_parameter test.13" expl="assertion" sum="8cb64a7011ec63158d72a56f5cd3e5cc" proved="true" expanded="false">
<proof prover="alt-ergo" timelimit="20" edited="" obsolete="false">
<result status="valid" time="0.07"/>
<goal name="WP_parameter test.14" expl="assertion" sum="0f6b8adb61a2eb591a0733aa3933f74c" proved="true" expanded="false">
<proof prover="alt-ergo" timelimit="10" edited="" obsolete="false">
<result status="valid" time="0.08"/>
</proof>
</goal>
</transf>
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment