updated proof sessions

parent 43fbb552
......@@ -31,7 +31,6 @@ schorr_waite_via_recursion.mlw
sieve.mlw
sudoku.mlw
sum_of_digits.mlw
there_and_back_again.mlw
topological_sorting.mlw
tortoise_and_hare.mlw
tree_height.mlw
......@@ -47,5 +46,3 @@ vstte10_inverting.mlw
vstte10_search_list.mlw
vstte12_bfs.mlw
vstte12_combinators.mlw
vstte12_ring_buffer.mlw
vstte12_tree_reconstruction.mlw
(* This file is generated by Why3's Coq driver *)
(* Beware! Only edit allowed sections below *)
Require Import BuiltIn.
Require BuiltIn.
Require int.Int.
Require list.List.
Require list.Length.
Require list.Mem.
Require list.Nth.
Require option.Option.
Require list.NthLength.
Require list.Append.
Require list.NthLengthAppend.
(* Why3 assumption *)
Definition unit := unit.
(* Why3 assumption *)
Definition pal {a:Type} {a_WT:WhyType a} (x:(list a)) (n:Z): Prop :=
forall (i:Z), ((0%Z <= i)%Z /\ (i < n)%Z) -> ((list.Nth.nth i
x) = (list.Nth.nth ((n - 1%Z)%Z - i)%Z x)).
Axiom elt : Type.
Parameter elt_WhyType : WhyType elt.
Existing Instance elt_WhyType.
Parameter eq: elt -> elt -> Prop.
Axiom eq_spec : forall (x:elt) (y:elt), (eq x y) <-> (x = y).
(* Why3 goal *)
Theorem VC_palindrome_rec : forall (x:(list elt)) (y:(list elt)),
((list.Length.length y) <= (list.Length.length x))%Z -> forall (x1:elt)
(x2:(list elt)), (y = (Init.Datatypes.cons x1 x2)) -> forall (x3:elt)
(x4:(list elt)), (x2 = (Init.Datatypes.cons x3 x4)) -> forall (x5:elt)
(x6:(list elt)), (x = (Init.Datatypes.cons x5 x6)) -> ((exists i:Z,
((0%Z <= i)%Z /\ (i < (list.Length.length x4))%Z) /\ ~ ((list.Nth.nth i
x6) = (list.Nth.nth (((list.Length.length x4) - 1%Z)%Z - i)%Z x6))) ->
exists i:Z, ((0%Z <= i)%Z /\ (i < (list.Length.length y))%Z) /\
~ ((list.Nth.nth i
x) = (list.Nth.nth (((list.Length.length y) - 1%Z)%Z - i)%Z x))).
intros x y h1 x1 x2 h2 x3 x4 h3 x5 x6 h4 (i,(hi1,hi2)).
subst.
exists (i+1)%Z; intuition.
unfold Length.length. fold Length.length.
omega.
unfold Length.length in *. fold Length.length in *.
assert (Nth.nth (i+1) (x5 :: x6) = Nth.nth i x6).
unfold Nth.nth; fold Nth.nth.
generalize (Zeq_bool_eq (i+1) 0).
destruct (Zeq_bool (i+1) 0).
intuition.
elimtype False.
omega.
intuition.
replace (i+1-1)%Z with i by omega. auto.
replace (1 + (1 + Length.length x4) - 1 - (i + 1))%Z
with (1 + Length.length x4 - 1 - i)%Z
in H1 by omega.
assert (Nth.nth (1 + Length.length x4 - 1 - i) (x5 :: x6) =
Nth.nth (Length.length x4 - 1 - i) x6).
unfold Nth.nth; fold Nth.nth.
generalize (Zeq_bool_eq (1 + Length.length x4 - 1 - i) 0).
destruct (Zeq_bool (1 + Length.length x4 - 1 - i) 0).
intuition; elimtype False; omega.
intuition.
replace (1 + Length.length x4 - 1 - i - 1)%Z with (Length.length x4 - 1 - i)%Z
by omega; auto.
congruence.
Qed.
......@@ -2,175 +2,84 @@
<!DOCTYPE why3session PUBLIC "-//Why3//proof session v5//EN"
"http://why3.lri.fr/why3session.dtd">
<why3session shape_version="4">
<prover id="0" name="Alt-Ergo" version="0.99.1" timelimit="5" steplimit="0" memlimit="1000"/>
<prover id="1" name="CVC3" version="2.4.1" timelimit="5" steplimit="0" memlimit="1000"/>
<prover id="2" name="CVC4" version="1.4" timelimit="6" steplimit="0" memlimit="1000"/>
<prover id="3" name="Alt-Ergo" version="1.30" timelimit="6" steplimit="0" memlimit="1000"/>
<prover id="4" name="Coq" version="8.6" timelimit="20" steplimit="0" memlimit="1000"/>
<prover id="5" name="Z3" version="4.4.0" timelimit="6" steplimit="0" memlimit="1000"/>
<prover id="2" name="CVC4" version="1.4" timelimit="5" steplimit="0" memlimit="1000"/>
<prover id="3" name="Alt-Ergo" version="1.30" timelimit="5" steplimit="0" memlimit="1000"/>
<prover id="4" name="Coq" version="8.6" timelimit="5" steplimit="0" memlimit="1000"/>
<file name="../there_and_back_again.mlw" expanded="true">
<theory name="Convolution" sum="c04f401f3346b5c81c2c50964a553449" expanded="true">
<goal name="WP_parameter convolution_rec" expl="VC for convolution_rec">
<theory name="Convolution" sum="ec40727b08fc6f1a7c42bee1cc3bd30f">
<goal name="VC convolution_rec" expl="VC for convolution_rec">
<transf name="split_goal_wp">
<goal name="WP_parameter convolution_rec.1" expl="1. postcondition">
<proof prover="2" timelimit="5"><result status="valid" time="0.03"/></proof>
<goal name="VC convolution_rec.1" expl="1. variant decrease">
<proof prover="3"><result status="valid" time="0.01" steps="22"/></proof>
</goal>
<goal name="WP_parameter convolution_rec.2" expl="2. variant decrease">
<proof prover="0"><result status="valid" time="0.02" steps="30"/></proof>
<goal name="VC convolution_rec.2" expl="2. precondition">
<proof prover="3"><result status="valid" time="0.00" steps="7"/></proof>
</goal>
<goal name="WP_parameter convolution_rec.3" expl="3. precondition">
<proof prover="0"><result status="valid" time="0.01" steps="11"/></proof>
<goal name="VC convolution_rec.3" expl="3. unreachable point">
<proof prover="3"><result status="valid" time="0.01" steps="10"/></proof>
</goal>
<goal name="WP_parameter convolution_rec.4" expl="4. postcondition">
<proof prover="2" timelimit="5"><result status="valid" time="0.10"/></proof>
<goal name="VC convolution_rec.4" expl="4. postcondition">
<proof prover="2"><result status="valid" time="0.04"/></proof>
</goal>
<goal name="WP_parameter convolution_rec.5" expl="5. unreachable point">
<proof prover="0"><result status="valid" time="0.01" steps="22"/></proof>
<goal name="VC convolution_rec.5" expl="5. postcondition">
<proof prover="3"><result status="valid" time="0.01" steps="92"/></proof>
</goal>
</transf>
</goal>
<goal name="WP_parameter convolution" expl="VC for convolution">
<transf name="split_goal_wp">
<goal name="WP_parameter convolution.1" expl="1. precondition">
<proof prover="0"><result status="valid" time="0.01" steps="1"/></proof>
</goal>
<goal name="WP_parameter convolution.2" expl="2. postcondition">
<proof prover="0"><result status="valid" time="0.02" steps="44"/></proof>
</goal>
</transf>
</goal>
</theory>
<theory name="Palindrome" sum="9df381045d072ead2dc0abe2dbdadbdf" expanded="true">
<goal name="WP_parameter palindrome_rec" expl="VC for palindrome_rec">
<transf name="split_goal_wp">
<goal name="WP_parameter palindrome_rec.1" expl="1. postcondition">
<proof prover="0"><result status="valid" time="0.01" steps="10"/></proof>
</goal>
<goal name="WP_parameter palindrome_rec.2" expl="2. postcondition">
<proof prover="0"><result status="valid" time="0.01" steps="11"/></proof>
</goal>
<goal name="WP_parameter palindrome_rec.3" expl="3. postcondition">
<proof prover="0"><result status="valid" time="0.25" steps="189"/></proof>
</goal>
<goal name="WP_parameter palindrome_rec.4" expl="4. postcondition">
<proof prover="2" timelimit="5"><result status="valid" time="0.02"/></proof>
</goal>
<goal name="WP_parameter palindrome_rec.5" expl="5. unreachable point">
<proof prover="0"><result status="valid" time="0.01" steps="6"/></proof>
</goal>
<goal name="WP_parameter palindrome_rec.6" expl="6. variant decrease">
<proof prover="0"><result status="valid" time="0.06" steps="34"/></proof>
</goal>
<goal name="WP_parameter palindrome_rec.7" expl="7. precondition">
<proof prover="0"><result status="valid" time="0.01" steps="17"/></proof>
<proof prover="1"><result status="valid" time="0.03"/></proof>
</goal>
<goal name="WP_parameter palindrome_rec.8" expl="8. assertion">
<proof prover="2" timelimit="5"><result status="valid" time="0.04"/></proof>
</goal>
<goal name="WP_parameter palindrome_rec.9" expl="9. postcondition">
<proof prover="2" timelimit="5"><result status="valid" time="0.16"/></proof>
</goal>
<goal name="WP_parameter palindrome_rec.10" expl="10. postcondition">
<proof prover="0"><result status="valid" time="0.04" steps="58"/></proof>
</goal>
<goal name="WP_parameter palindrome_rec.11" expl="11. exceptional postcondition">
<proof prover="0"><result status="valid" time="0.01" steps="113"/></proof>
<proof prover="1"><result status="valid" time="0.31"/></proof>
</goal>
<goal name="WP_parameter palindrome_rec.12" expl="12. unreachable point">
<proof prover="0"><result status="valid" time="0.02" steps="23"/></proof>
</goal>
<goal name="WP_parameter palindrome_rec.13" expl="13. exceptional postcondition">
<proof prover="4" edited="there_and_back_again_Palindrome_WP_parameter_palindrome_rec_2.v"><result status="valid" time="0.51"/></proof>
</goal>
<goal name="WP_parameter palindrome_rec.14" expl="14. unreachable point">
<proof prover="0"><result status="valid" time="0.01" steps="18"/></proof>
<proof prover="1"><result status="valid" time="0.00"/></proof>
</goal>
</transf>
</goal>
<goal name="WP_parameter palindrome" expl="VC for palindrome">
<transf name="split_goal_wp">
<goal name="WP_parameter palindrome.1" expl="1. precondition">
<proof prover="0"><result status="valid" time="0.00" steps="0"/></proof>
</goal>
<goal name="WP_parameter palindrome.2" expl="2. postcondition">
<proof prover="0"><result status="valid" time="0.00" steps="4"/></proof>
</goal>
<goal name="WP_parameter palindrome.3" expl="3. postcondition">
<proof prover="0"><result status="valid" time="0.01" steps="6"/></proof>
</goal>
</transf>
<goal name="VC convolution" expl="VC for convolution">
<proof prover="3"><result status="valid" time="0.01" steps="33"/></proof>
</goal>
</theory>
<theory name="Palindrome2" sum="c43a0140871b1226a02698aa120c1bbe" expanded="true">
<goal name="WP_parameter palindrome_rec" expl="VC for palindrome_rec" expanded="true">
<proof prover="3" obsolete="true"><result status="timeout" time="5.99"/></proof>
<theory name="Palindrome" sum="e5d5eceb88764aaf4bad594a8ce3b5cc" expanded="true">
<goal name="VC palindrome_rec" expl="VC for palindrome_rec" expanded="true">
<transf name="split_goal_wp" expanded="true">
<goal name="WP_parameter palindrome_rec.1" expl="1. postcondition">
<proof prover="3"><result status="valid" time="0.01" steps="21"/></proof>
</goal>
<goal name="WP_parameter palindrome_rec.2" expl="2. postcondition">
<proof prover="3"><result status="valid" time="0.00" steps="25"/></proof>
</goal>
<goal name="WP_parameter palindrome_rec.3" expl="3. postcondition">
<proof prover="3"><result status="valid" time="0.02" steps="94"/></proof>
<goal name="VC palindrome_rec.1" expl="1. postcondition">
<proof prover="3"><result status="valid" time="0.00" steps="10"/></proof>
</goal>
<goal name="WP_parameter palindrome_rec.4" expl="4. postcondition">
<proof prover="3"><result status="valid" time="0.01" steps="97"/></proof>
<goal name="VC palindrome_rec.2" expl="2. postcondition">
<proof prover="3"><result status="valid" time="0.00" steps="10"/></proof>
</goal>
<goal name="WP_parameter palindrome_rec.5" expl="5. unreachable point">
<proof prover="3"><result status="valid" time="0.01" steps="5"/></proof>
<goal name="VC palindrome_rec.3" expl="3. postcondition">
<proof prover="3"><result status="valid" time="0.02" steps="100"/></proof>
</goal>
<goal name="WP_parameter palindrome_rec.6" expl="6. variant decrease">
<proof prover="3"><result status="valid" time="0.01" steps="35"/></proof>
<goal name="VC palindrome_rec.4" expl="4. postcondition">
<proof prover="3"><result status="valid" time="0.01" steps="16"/></proof>
</goal>
<goal name="WP_parameter palindrome_rec.7" expl="7. precondition">
<proof prover="3"><result status="valid" time="0.01" steps="14"/></proof>
<goal name="VC palindrome_rec.5" expl="5. unreachable point">
<proof prover="3"><result status="valid" time="0.00" steps="5"/></proof>
</goal>
<goal name="WP_parameter palindrome_rec.8" expl="8. postcondition" expanded="true">
<proof prover="2" obsolete="true"><result status="unknown" time="5.94"/></proof>
<proof prover="3"><result status="timeout" time="5.97"/></proof>
<proof prover="5" obsolete="true"><result status="timeout" time="6.00"/></proof>
<goal name="VC palindrome_rec.6" expl="6. variant decrease">
<proof prover="3"><result status="valid" time="0.00" steps="26"/></proof>
</goal>
<goal name="WP_parameter palindrome_rec.9" expl="9. postcondition">
<proof prover="2" obsolete="true"><result status="unknown" time="5.93"/></proof>
<proof prover="3"><result status="timeout" time="5.97"/></proof>
<proof prover="5" obsolete="true"><result status="timeout" time="6.00"/></proof>
<goal name="VC palindrome_rec.7" expl="7. precondition">
<proof prover="3"><result status="valid" time="0.00" steps="12"/></proof>
</goal>
<goal name="WP_parameter palindrome_rec.10" expl="10. exceptional postcondition">
<proof prover="2" obsolete="true"><result status="timeout" time="6.00"/></proof>
<proof prover="3"><result status="timeout" time="5.99"/></proof>
<proof prover="5" obsolete="true"><result status="timeout" time="6.00"/></proof>
<goal name="VC palindrome_rec.8" expl="8. assertion">
<proof prover="3"><result status="valid" time="0.02" steps="74"/></proof>
</goal>
<goal name="WP_parameter palindrome_rec.11" expl="11. unreachable point">
<proof prover="2"><result status="valid" time="0.03"/></proof>
<proof prover="3"><result status="valid" time="0.03" steps="188"/></proof>
<goal name="VC palindrome_rec.9" expl="9. postcondition">
<proof prover="3"><result status="valid" time="1.50" steps="2255"/></proof>
</goal>
<goal name="WP_parameter palindrome_rec.12" expl="12. exceptional postcondition">
<proof prover="2" obsolete="true"><result status="timeout" time="6.00"/></proof>
<proof prover="3"><result status="timeout" time="5.98"/></proof>
<proof prover="5" obsolete="true"><result status="timeout" time="6.00"/></proof>
<goal name="VC palindrome_rec.10" expl="10. postcondition">
<proof prover="3"><result status="valid" time="0.02" steps="78"/></proof>
</goal>
<goal name="WP_parameter palindrome_rec.13" expl="13. unreachable point">
<proof prover="3"><result status="valid" time="0.01" steps="26"/></proof>
<goal name="VC palindrome_rec.11" expl="11. exceptional postcondition">
<proof prover="3"><result status="valid" time="0.02" steps="109"/></proof>
</goal>
</transf>
</goal>
<goal name="WP_parameter palindrome" expl="VC for palindrome" expanded="true">
<transf name="split_goal_wp" expanded="true">
<goal name="WP_parameter palindrome.1" expl="1. precondition">
<proof prover="3"><result status="valid" time="0.00" steps="1"/></proof>
<goal name="VC palindrome_rec.12" expl="12. unreachable point">
<proof prover="3"><result status="valid" time="0.00" steps="11"/></proof>
</goal>
<goal name="WP_parameter palindrome.2" expl="2. postcondition" expanded="true">
<proof prover="3"><result status="valid" time="0.01" steps="9"/></proof>
<goal name="VC palindrome_rec.13" expl="13. exceptional postcondition" expanded="true">
<proof prover="4" edited="there_and_back_again_Palindrome_VC_palindrome_rec_1.v"><result status="valid" time="0.51"/></proof>
</goal>
<goal name="WP_parameter palindrome.3" expl="3. postcondition" expanded="true">
<proof prover="3"><result status="valid" time="0.01" steps="8"/></proof>
<goal name="VC palindrome_rec.14" expl="14. unreachable point">
<proof prover="3"><result status="valid" time="0.00" steps="18"/></proof>
</goal>
</transf>
</goal>
<goal name="VC palindrome" expl="VC for palindrome">
<proof prover="3"><result status="valid" time="0.00" steps="14"/></proof>
</goal>
</theory>
</file>
</why3session>
......@@ -2,102 +2,94 @@
<!DOCTYPE why3session PUBLIC "-//Why3//proof session v5//EN"
"http://why3.lri.fr/why3session.dtd">
<why3session shape_version="4">
<prover id="0" name="Alt-Ergo" version="0.99.1" timelimit="5" steplimit="0" memlimit="0"/>
<prover id="1" name="CVC3" version="2.4.1" timelimit="10" steplimit="0" memlimit="0"/>
<prover id="2" name="CVC4" version="1.4" timelimit="5" steplimit="0" memlimit="1000"/>
<prover id="3" name="Spass" version="3.7" timelimit="5" steplimit="0" memlimit="1000"/>
<prover id="4" name="Z3" version="3.2" timelimit="10" steplimit="0" memlimit="0"/>
<prover id="5" name="Coq" version="8.6" timelimit="5" steplimit="0" memlimit="1000"/>
<prover id="6" name="Vampire" version="0.6" timelimit="5" steplimit="0" memlimit="1000"/>
<prover id="7" name="Eprover" version="1.8-001" timelimit="5" steplimit="0" memlimit="1000"/>
<prover id="8" name="Alt-Ergo" version="1.30" timelimit="5" steplimit="0" memlimit="1000"/>
<file name="../vstte12_combinators.mlw" expanded="true">
<theory name="Combinators" sum="1baa7bc49b0d1bcc78618bbc95934384" expanded="true">
<theory name="Combinators" sum="f91081b0b72c31b77a1fe49c79cbf100" expanded="true">
<goal name="VC eq" expl="VC for eq">
<proof prover="8"><result status="valid" time="0.00" steps="51"/></proof>
</goal>
<goal name="red_left">
<proof prover="4"><result status="valid" time="3.80"/></proof>
<proof prover="8"><result status="valid" time="0.03" steps="177"/></proof>
</goal>
<goal name="red_right">
<proof prover="4"><result status="valid" time="3.82"/></proof>
<proof prover="8"><result status="valid" time="0.02" steps="157"/></proof>
</goal>
<goal name="red_star_left">
<proof prover="5" timelimit="10" memlimit="0" edited="vstte12_combinators_WP_Combinators_red_star_left_1.v"><result status="valid" time="0.27"/></proof>
<proof prover="5" edited="vstte12_combinators_WP_Combinators_red_star_left_1.v"><result status="valid" time="0.27"/></proof>
</goal>
<goal name="red_star_right">
<proof prover="5" timelimit="10" memlimit="0" edited="vstte12_combinators_WP_Combinators_red_star_right_1.v"><result status="valid" time="0.28"/></proof>
<proof prover="5" edited="vstte12_combinators_WP_Combinators_red_star_right_1.v"><result status="valid" time="0.28"/></proof>
</goal>
<goal name="WP_parameter reduction" expl="VC for reduction">
<transf name="split_goal_wp">
<goal name="WP_parameter reduction.1" expl="1. postcondition">
<proof prover="0"><result status="valid" time="0.01" steps="8"/></proof>
<goal name="VC reduction" expl="VC for reduction" expanded="true">
<transf name="split_goal_wp" expanded="true">
<goal name="VC reduction.1" expl="1. postcondition">
<proof prover="8"><result status="valid" time="0.00" steps="13"/></proof>
</goal>
<goal name="WP_parameter reduction.2" expl="2. postcondition">
<proof prover="0"><result status="valid" time="0.01" steps="8"/></proof>
<goal name="VC reduction.2" expl="2. postcondition">
<proof prover="8"><result status="valid" time="0.01" steps="13"/></proof>
</goal>
<goal name="WP_parameter reduction.3" expl="3. postcondition">
<goal name="VC reduction.3" expl="3. postcondition">
<transf name="split_goal_wp">
<goal name="WP_parameter reduction.3.1" expl="1. VC for reduction">
<proof prover="3"><result status="valid" time="0.03"/></proof>
<proof prover="5" edited="vstte12_combinators_WP_Combinators_WP_parameter_reduction_1.v"><result status="unknown" time="0.27"/></proof>
<proof prover="6"><result status="valid" time="0.04"/></proof>
<goal name="VC reduction.3.1" expl="1. VC for reduction">
<proof prover="2"><result status="valid" time="1.06"/></proof>
</goal>
<goal name="WP_parameter reduction.3.2" expl="2. VC for reduction">
<proof prover="0"><result status="valid" time="0.00" steps="16"/></proof>
<goal name="VC reduction.3.2" expl="2. VC for reduction">
<proof prover="8"><result status="valid" time="0.01" steps="25"/></proof>
</goal>
</transf>
</goal>
<goal name="WP_parameter reduction.4" expl="4. postcondition">
<goal name="VC reduction.4" expl="4. postcondition">
<transf name="split_goal_wp">
<goal name="WP_parameter reduction.4.1" expl="1. VC for reduction">
<proof prover="3"><result status="valid" time="0.03"/></proof>
<proof prover="5" edited="vstte12_combinators_WP_Combinators_WP_parameter_reduction_2.v"><result status="unknown" time="0.26"/></proof>
<proof prover="6"><result status="valid" time="0.06"/></proof>
<goal name="VC reduction.4.1" expl="1. VC for reduction">
<proof prover="2"><result status="valid" time="0.49"/></proof>
</goal>
<goal name="WP_parameter reduction.4.2" expl="2. VC for reduction">
<proof prover="0"><result status="valid" time="0.00" steps="16"/></proof>
<goal name="VC reduction.4.2" expl="2. VC for reduction">
<proof prover="8"><result status="valid" time="0.00" steps="25"/></proof>
</goal>
</transf>
</goal>
<goal name="WP_parameter reduction.5" expl="5. postcondition">
<goal name="VC reduction.5" expl="5. postcondition">
<transf name="split_goal_wp">
<goal name="WP_parameter reduction.5.1" expl="1. VC for reduction">
<proof prover="3"><result status="valid" time="0.07"/></proof>
<proof prover="5" edited="vstte12_combinators_WP_Combinators_WP_parameter_reduction_3.v"><result status="unknown" time="0.22"/></proof>
<proof prover="6"><result status="valid" time="0.03"/></proof>
<goal name="VC reduction.5.1" expl="1. VC for reduction">
<proof prover="3"><result status="valid" time="0.16"/></proof>
</goal>
<goal name="WP_parameter reduction.5.2" expl="2. VC for reduction">
<proof prover="0"><result status="valid" time="0.01" steps="21"/></proof>
<goal name="VC reduction.5.2" expl="2. VC for reduction">
<proof prover="8"><result status="valid" time="0.01" steps="33"/></proof>
</goal>
</transf>
</goal>
<goal name="WP_parameter reduction.6" expl="6. postcondition">
<goal name="VC reduction.6" expl="6. postcondition">
<transf name="split_goal_wp">
<goal name="WP_parameter reduction.6.1" expl="1. VC for reduction">
<proof prover="3"><result status="valid" time="0.04"/></proof>
<proof prover="5" edited="vstte12_combinators_WP_Combinators_WP_parameter_reduction_4.v"><result status="unknown" time="0.20"/></proof>
<proof prover="6"><result status="valid" time="0.08"/></proof>
<proof prover="7"><result status="valid" time="0.04"/></proof>
<goal name="VC reduction.6.1" expl="1. VC for reduction">
<proof prover="2"><result status="valid" time="1.11"/></proof>
</goal>
<goal name="WP_parameter reduction.6.2" expl="2. VC for reduction">
<proof prover="0"><result status="valid" time="0.02" steps="21"/></proof>
<goal name="VC reduction.6.2" expl="2. VC for reduction">
<proof prover="8"><result status="valid" time="0.01" steps="34"/></proof>
</goal>
</transf>
</goal>
<goal name="WP_parameter reduction.7" expl="7. postcondition">
<transf name="split_goal_wp">
<goal name="WP_parameter reduction.7.1" expl="1. VC for reduction">
<proof prover="5" edited="vstte12_combinators_WP_Combinators_WP_parameter_reduction_5.v"><result status="unknown" time="0.26"/></proof>
<proof prover="6"><result status="valid" time="0.32"/></proof>
<goal name="VC reduction.7" expl="7. postcondition" expanded="true">
<transf name="split_goal_wp" expanded="true">
<goal name="VC reduction.7.1" expl="1. VC for reduction" expanded="true">
</goal>
<goal name="WP_parameter reduction.7.2" expl="2. VC for reduction">
<proof prover="0"><result status="valid" time="0.01" steps="16"/></proof>
<goal name="VC reduction.7.2" expl="2. VC for reduction">
<proof prover="8"><result status="valid" time="0.00" steps="21"/></proof>
</goal>
</transf>
</goal>
<goal name="WP_parameter reduction.8" expl="8. unreachable point">
<proof prover="0"><result status="valid" time="0.04" steps="61"/></proof>
<goal name="VC reduction.8" expl="8. unreachable point">
<proof prover="8"><result status="valid" time="0.01" steps="105"/></proof>
</goal>
</transf>
</goal>
<goal name="WP_parameter test_SKK" expl="VC for test_SKK">
<proof prover="0" memlimit="1000"><result status="valid" time="0.01" steps="6"/></proof>
<goal name="VC i" expl="VC for i">
<proof prover="8"><result status="valid" time="0.00" steps="11"/></proof>
</goal>
<goal name="VC test_SKK" expl="VC for test_SKK">
<proof prover="8"><result status="valid" time="0.00" steps="11"/></proof>
</goal>
<goal name="reducible_or_value">
<proof prover="5" edited="vstte12_combinators_WP_Combinators_reducible_or_value_1.v"><result status="valid" time="0.69"/></proof>
......@@ -111,186 +103,61 @@
<goal name="size_nonneg">
<proof prover="5" edited="vstte12_combinators_WP_Combinators_size_nonneg_1.v"><result status="valid" time="0.36"/></proof>
</goal>
<goal name="WP_parameter reduction2" expl="VC for reduction2">
<transf name="split_goal_wp">
<goal name="WP_parameter reduction2.1" expl="1. postcondition">
<proof prover="0"><result status="valid" time="0.01" steps="11"/></proof>
</goal>
<goal name="WP_parameter reduction2.2" expl="2. postcondition">
<proof prover="0"><result status="valid" time="0.01" steps="11"/></proof>
</goal>
<goal name="WP_parameter reduction2.3" expl="3. variant decrease">
<proof prover="0" timelimit="15" memlimit="1000"><result status="valid" time="0.02" steps="37"/></proof>
</goal>
<goal name="WP_parameter reduction2.4" expl="4. precondition">
<proof prover="0"><result status="valid" time="0.04" steps="37"/></proof>
</goal>
<goal name="WP_parameter reduction2.5" expl="5. variant decrease">
<proof prover="0" timelimit="15" memlimit="1000"><result status="valid" time="0.01" steps="40"/></proof>
</goal>
<goal name="WP_parameter reduction2.6" expl="6. precondition">
<proof prover="0"><result status="valid" time="0.10" steps="49"/></proof>
</goal>
<goal name="WP_parameter reduction2.7" expl="7. postcondition">
<proof prover="0"><result status="valid" time="0.02" steps="26"/></proof>
</goal>
<goal name="WP_parameter reduction2.8" expl="8. variant decrease">
<proof prover="0" timelimit="15" memlimit="1000"><result status="valid" time="0.03" steps="40"/></proof>
</goal>
<goal name="WP_parameter reduction2.9" expl="9. precondition">
<proof prover="0"><result status="valid" time="0.02" steps="55"/></proof>
</goal>
<goal name="WP_parameter reduction2.10" expl="10. postcondition">
<proof prover="0"><result status="valid" time="0.01" steps="25"/></proof>
</goal>
<goal name="WP_parameter reduction2.11" expl="11. variant decrease">
<proof prover="0" timelimit="15" memlimit="1000"><result status="valid" time="0.02" steps="51"/></proof>
</goal>
<goal name="WP_parameter reduction2.12" expl="12. precondition">
<proof prover="0"><result status="valid" time="0.02" steps="87"/></proof>
</goal>
<goal name="WP_parameter reduction2.13" expl="13. postcondition">
<proof prover="0"><result status="valid" time="0.04" steps="161"/></proof>
</goal>
<goal name="WP_parameter reduction2.14" expl="14. variant decrease">
<proof prover="0" timelimit="15" memlimit="1000"><result status="valid" time="0.03" steps="51"/></proof>
</goal>
<goal name="WP_parameter reduction2.15" expl="15. precondition">
<proof prover="0"><result status="valid" time="0.03" steps="70"/></proof>
</goal>
<goal name="WP_parameter reduction2.16" expl="16. postcondition">
<proof prover="0"><result status="valid" time="0.04" steps="38"/></proof>
</goal>
<goal name="WP_parameter reduction2.17" expl="17. variant decrease">
<proof prover="0" timelimit="15" memlimit="1000"><result status="valid" time="0.03" steps="62"/></proof>
</goal>
<goal name="WP_parameter reduction2.18" expl="18. precondition">
<proof prover="0"><result status="valid" time="0.04" steps="83"/></proof>
</goal>
<goal name="WP_parameter reduction2.19" expl="19. variant decrease">
<transf name="split_goal_wp">
<goal name="WP_parameter reduction2.19.1" expl="1. VC for reduction2">
<proof prover="1" timelimit="5" memlimit="1000"><result status="valid" time="0.02"/></proof>
<proof prover="7"><result status="valid" time="0.01"/></proof>
</goal>
<goal name="WP_parameter reduction2.19.2" expl="2. VC for reduction2">
<proof prover="1" timelimit="5" memlimit="1000"><result status="valid" time="0.02"/></proof>
<proof prover="7"><result status="valid" time="0.05"/></proof>
</goal>
<goal name="WP_parameter reduction2.19.3" expl="3. VC for reduction2">
<proof prover="1" timelimit="5" memlimit="1000"><result status="valid" time="0.16"/></proof>
<proof prover="7"><result status="valid" time="0.58"/></proof>
</goal>
</transf>
</goal>
<goal name="WP_parameter reduction2.20" expl="20. precondition">
<transf name="split_goal_wp">
<goal name="WP_parameter reduction2.20.1" expl="1. precondition">
<proof prover="1" timelimit="5" memlimit="1000"><result status="valid" time="0.07"/></proof>
<proof prover="5" edited="vstte12_combinators_WP_Combinators_WP_parameter_reduction2_2.v"><result status="unknown" time="0.29"/></proof>
<proof prover="7"><result status="valid" time="0.61"/></proof>
</goal>
</transf>
</goal>
<goal name="WP_parameter reduction2.21" expl="21. postcondition">
<proof prover="0"><result status="valid" time="0.01" steps="23"/></proof>
</goal>
<goal name="WP_parameter reduction2.22" expl="22. unreachable point">
<proof prover="0"><result status="valid" time="0.08" steps="207"/></proof>
</goal>
</transf>
<goal name="VC reduction2" expl="VC for reduction2">
<proof prover="8"><result status="valid" time="3.32" steps="9184"/></proof>
</goal>
<goal name="ks1">
<proof prover="0"><result status="valid" time="0.01" steps="15"/></proof>
<proof prover="8"><result status="valid" time="0.01" steps="24"/></proof>
</goal>
<goal name="only_K_ks">
<proof prover="5" edited="vstte12_combinators_WP_Combinators_only_K_ks_1.v"><result status="valid" time="0.30"/></proof>
</goal>
<goal name="ks_inversion">
<proof prover="0"><result status="valid" time="0.01" steps="18"/></proof>
<proof prover="8"><result status="valid" time="0.01" steps="27"/></proof>
</goal>
<goal name="ks_injective">
<proof prover="5" edited="vstte12_combinators_WP_Combinators_ks_injective_1.v"><result status="valid" time="0.71"/></proof>
</goal>