Attention une mise à jour du serveur va être effectuée le vendredi 16 avril entre 12h et 12h30. Cette mise à jour va générer une interruption du service de quelques minutes.

Commit b12acb40 authored by MARCHE Claude's avatar MARCHE Claude

example tree reconstruction: remove a few Coq proofs

parent ae62fcce
......@@ -9,7 +9,7 @@
lists from Why3's standard library.
*)
theory Tree
module Tree
use export int.Int
use export list.List
......@@ -29,9 +29,22 @@ theory Tree
forall t: tree, d: int.
match depths d t with Cons x _ -> x >= d | Nil -> false end
lemma depths_unique:
forall t1 t2: tree, d: int, s1 s2: list int.
depths d t1 ++ s1 = depths d t2 ++ s2 -> t1 = t2 && s1 = s2
let rec lemma depths_unique (t1 t2: tree) (d: int) (s1 s2: list int)
requires { depths d t1 ++ s1 = depths d t2 ++ s2 }
variant { t1 }
ensures { t1 = t2 && s1 = s2 }
= let d' = d+1 in
match t1,t2 with
| Leaf,Leaf -> ()
| Node t11 t12, Node t21 t22 ->
depths_unique t11 t21 d' (depths d' t12 ++ s1) (depths d' t22 ++ s2);
depths_unique t12 t22 d' s1 s2
| Leaf, (Node t _) | (Node t _), Leaf ->
match depths d' t with
| Nil -> absurd
| Cons x _ -> assert { x >= d' }
end
end
lemma depths_prefix:
forall t: tree, d1 d2: int, s1 s2: list int.
......@@ -41,9 +54,16 @@ theory Tree
forall t: tree, d1 d2: int.
depths d1 t = depths d2 t -> d1 = d2
lemma depths_subtree:
forall t1 "induction" t2: tree, d1 d2: int, s1: list int.
depths d1 t1 ++ s1 = depths d2 t2 -> d1 >= d2
let rec lemma depths_subtree (t1 t2: tree) (d1 d2:int) (s1:list int)
requires { depths d1 t1 ++ s1 = depths d2 t2 }
variant { t1 }
ensures { d1 >= d2 }
= assert { depths d2 t2 = depths d2 t2 ++ Nil };
match t1 with
| Leaf -> ()
| Node t3 t4 ->
depths_subtree t3 t2 (d1+1) d2 (depths (d1+1) t4 ++ s1)
end
lemma depths_unique2:
forall t1 t2: tree, d1 d2: int.
......
(* 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.Append.
(* Why3 assumption *)
Inductive tree :=
| Leaf : tree
| Node : tree -> tree -> tree.
Axiom tree_WhyType : WhyType tree.
Existing Instance tree_WhyType.
(* Why3 assumption *)
Fixpoint depths (d:Z) (t:tree) {struct t}: (list Z) :=
match t with
| Leaf => (cons d nil)
| (Node l r) => (List.app (depths (d + 1%Z)%Z l) (depths (d + 1%Z)%Z r))
end.
Axiom depths_head : forall (t:tree) (d:Z), match (depths d
t) with
| (cons x _) => (d <= x)%Z
| nil => False
end.
(* Why3 goal *)
Theorem depths_unique : forall (t1:tree) (t2:tree) (d:Z) (s1:(list Z))
(s2:(list Z)), ((List.app (depths d t1) s1) = (List.app (depths d
t2) s2)) -> ((t1 = t2) /\ (s1 = s2)).
(* Why3 intros t1 t2 d s1 s2 h1. *)
induction t1.
simpl; intros.
induction t2.
simpl in H.
injection H; intuition.
simpl in *.
generalize (depths_head t2_1 (d+1)%Z).
generalize H; clear H.
destruct ((depths (d + 1) t2_1)); simpl in *.
intuition.
intros h; injection h.
intros; apply False_ind; omega.
(* t1 = Node *)
induction t2; simpl.
(* t2 = Leaf *)
intros.
generalize (depths_head t1_1 (d+1)%Z).
generalize H; clear H.
destruct ((depths (d + 1) t1_1)); simpl in *.
intuition.
intros h; injection h.
intros; apply False_ind; omega.
(* t2 = Node *)
intros.
do 2 (rewrite <- Append.Append_assoc in H).
generalize (IHt1_1 t2_1 (d+1) _ _ H)%Z. clear IHt1_1.
intros (eq1, H1).
generalize (IHt1_2 t2_2 (d+1) _ _ H1)%Z. clear IHt1_2.
intuition.
apply f_equal2; auto.
Qed.
......@@ -3,17 +3,15 @@
"http://why3.lri.fr/why3session.dtd">
<why3session shape_version="4">
<prover id="0" name="Alt-Ergo" version="0.99.1" timelimit="5" steplimit="1" memlimit="4000"/>
<prover id="1" name="CVC3" version="2.4.1" timelimit="5" steplimit="1" memlimit="4000"/>
<prover id="1" name="CVC3" version="2.4.1" timelimit="5" steplimit="1" memlimit="1000"/>
<prover id="2" name="Coq" version="8.4pl6" timelimit="10" steplimit="1" memlimit="0"/>
<prover id="3" name="CVC4" version="1.4" timelimit="5" steplimit="1" memlimit="4000"/>
<prover id="3" name="CVC4" version="1.4" timelimit="5" steplimit="1" memlimit="1000"/>
<prover id="4" name="Spass" version="3.7" timelimit="5" steplimit="1" memlimit="1000"/>
<prover id="7" name="Vampire" version="0.6" timelimit="5" steplimit="1" memlimit="1000"/>
<prover id="8" name="Eprover" version="1.8-001" timelimit="5" steplimit="1" memlimit="1000"/>
<prover id="10" name="Z3" version="3.2" timelimit="30" steplimit="1" memlimit="4000"/>
<prover id="11" name="Z3" version="4.4.0" timelimit="30" steplimit="1" memlimit="4000"/>
<prover id="12" name="Z3" version="4.3.2" timelimit="30" steplimit="1" memlimit="4000"/>
<prover id="11" name="Z3" version="4.4.0" timelimit="5" steplimit="1" memlimit="1000"/>
<file name="../vstte12_tree_reconstruction.mlw" expanded="true">
<theory name="Tree" sum="25109fe9c6cd43b2c56ee1611a503620" expanded="true">
<theory name="Tree" sum="b9a8b46ad18a55e5a14e4f3d12d32a28" expanded="true">
<goal name="depths_head">
<transf name="induction_ty_lex">
<goal name="depths_head.1" expl="1.">
......@@ -21,8 +19,8 @@
</goal>
</transf>
</goal>
<goal name="depths_unique">
<proof prover="2" timelimit="30" edited="vstte12_tree_reconstruction_Tree_depths_unique_1.v"><result status="valid" time="0.66"/></proof>
<goal name="WP_parameter depths_unique" expl="VC for depths_unique">
<proof prover="0" steplimit="-1" memlimit="1000"><result status="valid" time="0.14" steps="317"/></proof>
</goal>
<goal name="depths_prefix">
<transf name="induction_ty_lex">
......@@ -32,41 +30,43 @@
</transf>
</goal>
<goal name="depths_prefix_simple">
<proof prover="4"><result status="valid" time="0.64"/></proof>
<proof prover="4"><result status="valid" time="0.89"/></proof>
<proof prover="7"><result status="valid" time="0.11"/></proof>
<proof prover="8"><result status="valid" time="0.02"/></proof>
</goal>
<goal name="depths_subtree" expanded="true">
<transf name="induction_ty_lex" expanded="true">
<goal name="depths_subtree.1" expl="1." expanded="true">
<transf name="split_goal_wp" expanded="true">
<goal name="depths_subtree.1.1" expl="1.">
<proof prover="0" timelimit="6" memlimit="1000"><result status="valid" time="0.01" steps="33"/></proof>
</goal>
<goal name="depths_subtree.1.2" expl="2." expanded="true">
<proof prover="0" timelimit="30" steplimit="-1"><result status="unknown" time="23.70"/></proof>
<proof prover="1" timelimit="30" steplimit="-1"><result status="timeout" time="29.99"/></proof>
<proof prover="3" timelimit="30"><result status="timeout" time="30.77"/></proof>
<proof prover="10"><result status="timeout" time="29.98"/></proof>
<proof prover="11"><result status="timeout" time="29.99"/></proof>
<proof prover="12"><result status="timeout" time="30.01"/></proof>
</goal>
</transf>
<goal name="WP_parameter depths_subtree" expl="VC for depths_subtree">
<transf name="split_goal_wp">
<goal name="WP_parameter depths_subtree.1" expl="1. assertion">
<proof prover="0" steplimit="-1" memlimit="1000"><result status="valid" time="0.01" steps="5"/></proof>
</goal>
<goal name="WP_parameter depths_subtree.2" expl="2. postcondition">
<proof prover="0" steplimit="-1" memlimit="1000"><result status="valid" time="0.01" steps="62"/></proof>
</goal>
<goal name="WP_parameter depths_subtree.3" expl="3. variant decrease">
<proof prover="0" steplimit="-1" memlimit="1000"><result status="valid" time="0.00" steps="23"/></proof>
</goal>
<goal name="WP_parameter depths_subtree.4" expl="4. precondition">
<proof prover="0" steplimit="-1" memlimit="1000"><result status="valid" time="0.01" steps="19"/></proof>
</goal>
<goal name="WP_parameter depths_subtree.5" expl="5. postcondition">
<proof prover="0" steplimit="-1" memlimit="1000"><result status="valid" time="1.00" steps="87"/></proof>
<proof prover="3" steplimit="-1"><result status="valid" time="0.31"/></proof>
<proof prover="11"><result status="valid" time="0.01"/></proof>
</goal>
</transf>
</goal>
<goal name="depths_unique2">
<proof prover="3" timelimit="6" memlimit="1000"><result status="valid" time="0.01"/></proof>
<proof prover="3" timelimit="6"><result status="valid" time="0.01"/></proof>
</goal>
</theory>
<theory name="TreeReconstruction" sum="508b569b5ef163aa957636edeb336202">
<theory name="TreeReconstruction" sum="53f79000bfbc830bc539394d21c34ec7" expanded="true">
<goal name="WP_parameter build_rec" expl="VC for build_rec">
<transf name="split_goal_wp">
<goal name="WP_parameter build_rec.1" expl="1. exceptional postcondition">
<proof prover="0" memlimit="0"><result status="valid" time="0.01" steps="11"/></proof>
</goal>
<goal name="WP_parameter build_rec.2" expl="2. exceptional postcondition">
<proof prover="3" memlimit="1000"><result status="valid" time="0.03"/></proof>
<proof prover="3"><result status="valid" time="0.03"/></proof>
</goal>
<goal name="WP_parameter build_rec.3" expl="3. postcondition">
<proof prover="0" memlimit="0"><result status="valid" time="0.03" steps="32"/></proof>
......@@ -78,7 +78,7 @@
<proof prover="0" memlimit="0"><result status="valid" time="0.02" steps="45"/></proof>
</goal>
<goal name="WP_parameter build_rec.6" expl="6. postcondition">
<proof prover="0" memlimit="0"><result status="valid" time="0.03" steps="24"/></proof>
<proof prover="0" memlimit="0"><result status="valid" time="0.03" steps="23"/></proof>
</goal>
<goal name="WP_parameter build_rec.7" expl="7. exceptional postcondition">
<proof prover="2" edited="vstte12_tree_reconstruction_WP_TreeReconstruction_WP_parameter_build_rec_3.v"><result status="valid" time="0.98"/></proof>
......@@ -102,14 +102,14 @@
</transf>
</goal>
</theory>
<theory name="Harness" sum="76b583ae629fadf61190045b9327ffe1">
<theory name="Harness" sum="37c91b09c23b36fdd1264463a1d613ea" expanded="true">
<goal name="WP_parameter harness" expl="VC for harness">
<transf name="split_goal_wp">
<goal name="WP_parameter harness.1" expl="1. postcondition">
<proof prover="2" edited="vstte12_tree_reconstruction_WP_Harness_WP_parameter_harness_3.v"><result status="valid" time="0.84"/></proof>
</goal>
<goal name="WP_parameter harness.2" expl="2. VC for harness">
<proof prover="2" edited="vstte12_tree_reconstruction_WP_Harness_WP_parameter_harness_4.v"><result status="valid" time="0.70"/></proof>
<proof prover="2" edited="vstte12_tree_reconstruction_WP_Harness_WP_parameter_harness_4.v"><result status="valid" time="0.88"/></proof>
</goal>
</transf>
</goal>
......@@ -117,7 +117,7 @@
<proof prover="2" edited="vstte12_tree_reconstruction_WP_Harness_WP_parameter_harness2_2.v"><result status="valid" time="1.02"/></proof>
</goal>
</theory>
<theory name="ZipperBasedTermination" sum="da30b4e7b708216828a4fe9045fed562">
<theory name="ZipperBasedTermination" sum="08d397139e0fdc5ec4e1923d61498e4f" expanded="true">
<goal name="WP_parameter tc" expl="VC for tc">
<transf name="split_goal_wp">
<goal name="WP_parameter tc.1" expl="1. variant decrease">
......@@ -138,7 +138,7 @@
</transf>
</goal>
</theory>
<theory name="ZipperBased" sum="17e74a93ce092fdc2e57eacd7416f5b2">
<theory name="ZipperBased" sum="0f64e4a3ba9257fc8d4dad1554c42d3e" expanded="true">
<goal name="forest_depths_append">
<proof prover="2" edited="vstte12_tree_reconstruction_WP_ZipperBased_forest_depths_append_1.v"><result status="valid" time="1.30"/></proof>
</goal>
......@@ -154,94 +154,91 @@
<goal name="WP_parameter tc" expl="VC for tc">
<transf name="split_goal_wp">
<goal name="WP_parameter tc.1" expl="1. exceptional postcondition">
<proof prover="1" memlimit="1000"><result status="valid" time="0.04"/></proof>
<proof prover="3" memlimit="1000"><result status="valid" time="0.06"/></proof>
<proof prover="1"><result status="valid" time="0.04"/></proof>
<proof prover="3"><result status="valid" time="0.06"/></proof>
</goal>
<goal name="WP_parameter tc.2" expl="2. postcondition">
<proof prover="1" memlimit="1000"><result status="valid" time="0.02"/></proof>
<proof prover="3" memlimit="1000"><result status="valid" time="0.04"/></proof>
<proof prover="1"><result status="valid" time="0.02"/></proof>
<proof prover="3"><result status="valid" time="0.04"/></proof>
</goal>
<goal name="WP_parameter tc.3" expl="3. exceptional postcondition">
<proof prover="1" memlimit="1000"><result status="valid" time="0.03"/></proof>
<proof prover="3" memlimit="1000"><result status="valid" time="0.05"/></proof>
<proof prover="1"><result status="valid" time="0.03"/></proof>
<proof prover="3"><result status="valid" time="0.05"/></proof>
</goal>
<goal name="WP_parameter tc.4" expl="4. variant decrease">
<proof prover="0" memlimit="1000"><result status="valid" time="0.02" steps="25"/></proof>
<proof prover="1" memlimit="1000"><result status="valid" time="0.08"/></proof>
<proof prover="3" memlimit="1000"><result status="valid" time="0.04"/></proof>
<proof prover="1"><result status="valid" time="0.08"/></proof>
<proof prover="3"><result status="valid" time="0.04"/></proof>
</goal>
<goal name="WP_parameter tc.5" expl="5. precondition">
<proof prover="0" memlimit="1000"><result status="valid" time="0.14" steps="88"/></proof>
<proof prover="1" memlimit="1000"><result status="valid" time="0.05"/></proof>
<proof prover="3" memlimit="1000"><result status="valid" time="4.41"/></proof>
<proof prover="1"><result status="valid" time="0.05"/></proof>
</goal>
<goal name="WP_parameter tc.6" expl="6. postcondition">
<proof prover="1" memlimit="1000"><result status="valid" time="0.23"/></proof>
<proof prover="3" memlimit="1000"><result status="valid" time="0.67"/></proof>
<proof prover="1"><result status="valid" time="0.23"/></proof>
<proof prover="3"><result status="valid" time="0.67"/></proof>
</goal>
<goal name="WP_parameter tc.7" expl="7. exceptional postcondition">
<proof prover="1" memlimit="1000"><result status="valid" time="1.86"/></proof>
<proof prover="3" memlimit="1000"><result status="valid" time="0.46"/></proof>
<proof prover="1"><result status="valid" time="1.86"/></proof>
<proof prover="3"><result status="valid" time="0.46"/></proof>
</goal>
<goal name="WP_parameter tc.8" expl="8. variant decrease">
<proof prover="0" memlimit="1000"><result status="valid" time="0.02" steps="22"/></proof>
<proof prover="1" memlimit="1000"><result status="valid" time="0.06"/></proof>
<proof prover="3" memlimit="1000"><result status="valid" time="0.07"/></proof>
<proof prover="1"><result status="valid" time="0.06"/></proof>
<proof prover="3"><result status="valid" time="0.07"/></proof>
</goal>
<goal name="WP_parameter tc.9" expl="9. precondition">
<proof prover="0" memlimit="1000"><result status="valid" time="0.47" steps="945"/></proof>
</goal>
<goal name="WP_parameter tc.10" expl="10. postcondition">
<proof prover="0" memlimit="1000"><result status="valid" time="0.02" steps="18"/></proof>
<proof prover="1" memlimit="1000"><result status="valid" time="0.17"/></proof>
<proof prover="3" memlimit="1000"><result status="valid" time="0.08"/></proof>
<proof prover="1"><result status="valid" time="0.17"/></proof>
<proof prover="3"><result status="valid" time="0.08"/></proof>
</goal>
<goal name="WP_parameter tc.11" expl="11. exceptional postcondition">
<proof prover="0" memlimit="1000"><result status="valid" time="0.02" steps="18"/></proof>
<proof prover="1" memlimit="1000"><result status="valid" time="0.06"/></proof>
<proof prover="3" memlimit="1000"><result status="valid" time="0.07"/></proof>
<proof prover="1"><result status="valid" time="0.06"/></proof>
<proof prover="3"><result status="valid" time="0.07"/></proof>
</goal>
<goal name="WP_parameter tc.12" expl="12. variant decrease">
<proof prover="0" memlimit="1000"><result status="valid" time="0.02" steps="21"/></proof>
<proof prover="1" memlimit="1000"><result status="valid" time="0.03"/></proof>
<proof prover="3" memlimit="1000"><result status="valid" time="0.03"/></proof>
<proof prover="1"><result status="valid" time="0.03"/></proof>
<proof prover="3"><result status="valid" time="0.03"/></proof>
</goal>
<goal name="WP_parameter tc.13" expl="13. precondition">
<proof prover="0" memlimit="1000"><result status="valid" time="0.34" steps="504"/></proof>
<proof prover="1" memlimit="1000"><result status="valid" time="0.04"/></proof>
<proof prover="3" memlimit="1000"><result status="valid" time="0.04"/></proof>
<proof prover="1"><result status="valid" time="0.04"/></proof>
<proof prover="3"><result status="valid" time="0.04"/></proof>
</goal>
<goal name="WP_parameter tc.14" expl="14. postcondition">
<proof prover="0" memlimit="1000"><result status="valid" time="0.01" steps="15"/></proof>
<proof prover="1" memlimit="1000"><result status="valid" time="0.02"/></proof>
<proof prover="3" memlimit="1000"><result status="valid" time="0.04"/></proof>
<proof prover="1"><result status="valid" time="0.02"/></proof>
<proof prover="3"><result status="valid" time="0.04"/></proof>
</goal>
<goal name="WP_parameter tc.15" expl="15. exceptional postcondition">
<proof prover="0" memlimit="1000"><result status="valid" time="0.01" steps="15"/></proof>
<proof prover="1" memlimit="1000"><result status="valid" time="0.02"/></proof>
<proof prover="3" memlimit="1000"><result status="valid" time="0.09"/></proof>
<proof prover="1"><result status="valid" time="0.02"/></proof>
<proof prover="3"><result status="valid" time="0.09"/></proof>
</goal>
<goal name="WP_parameter tc.16" expl="16. variant decrease">
<proof prover="0" memlimit="1000"><result status="valid" time="0.02" steps="24"/></proof>
<proof prover="1" memlimit="1000"><result status="valid" time="0.12"/></proof>
<proof prover="3" memlimit="1000"><result status="valid" time="0.04"/></proof>
<proof prover="1"><result status="valid" time="0.12"/></proof>
<proof prover="3"><result status="valid" time="0.04"/></proof>
</goal>
<goal name="WP_parameter tc.17" expl="17. precondition">
<proof prover="0" memlimit="1000"><result status="valid" time="0.19" steps="551"/></proof>
<proof prover="1" memlimit="1000"><result status="valid" time="0.02"/></proof>
<proof prover="0" memlimit="1000"><result status="valid" time="0.19" steps="552"/></proof>
<proof prover="1"><result status="valid" time="0.02"/></proof>
</goal>
<goal name="WP_parameter tc.18" expl="18. postcondition">
<proof prover="1" memlimit="1000"><result status="valid" time="5.85"/></proof>
<proof prover="3" memlimit="1000"><result status="valid" time="0.85"/></proof>
<proof prover="3"><result status="valid" time="0.85"/></proof>
</goal>
<goal name="WP_parameter tc.19" expl="19. exceptional postcondition">
<proof prover="1" memlimit="1000"><result status="valid" time="3.07"/></proof>
<proof prover="3" memlimit="1000"><result status="valid" time="0.52"/></proof>
<proof prover="3"><result status="valid" time="0.52"/></proof>
</goal>
<goal name="WP_parameter tc.20" expl="20. variant decrease">
<proof prover="0" memlimit="1000"><result status="valid" time="0.02" steps="22"/></proof>
<proof prover="1" memlimit="1000"><result status="valid" time="0.09"/></proof>
<proof prover="3" memlimit="1000"><result status="valid" time="0.03"/></proof>
<proof prover="1"><result status="valid" time="0.09"/></proof>
<proof prover="3"><result status="valid" time="0.03"/></proof>
</goal>
<goal name="WP_parameter tc.21" expl="21. precondition">
<transf name="split_goal_wp">
......@@ -250,43 +247,43 @@
</goal>
<goal name="WP_parameter tc.21.2" expl="2. VC for tc">
<proof prover="0" memlimit="1000"><result status="valid" time="0.02" steps="46"/></proof>
<proof prover="1" memlimit="1000"><result status="valid" time="0.02"/></proof>
<proof prover="3" memlimit="1000"><result status="valid" time="0.03"/></proof>
<proof prover="1"><result status="valid" time="0.02"/></proof>
<proof prover="3"><result status="valid" time="0.03"/></proof>
</goal>
<goal name="WP_parameter tc.21.3" expl="3. VC for tc">
<proof prover="0" memlimit="1000"><result status="valid" time="0.16" steps="365"/></proof>
<proof prover="1" memlimit="1000"><result status="valid" time="0.04"/></proof>
<proof prover="3" memlimit="1000"><result status="valid" time="0.04"/></proof>
<proof prover="1"><result status="valid" time="0.04"/></proof>
<proof prover="3"><result status="valid" time="0.04"/></proof>
</goal>
<goal name="WP_parameter tc.21.4" expl="4. VC for tc">
<proof prover="1" memlimit="1000"><result status="valid" time="0.06"/></proof>
<proof prover="3" memlimit="1000"><result status="valid" time="0.04"/></proof>
<proof prover="1"><result status="valid" time="0.06"/></proof>
<proof prover="3"><result status="valid" time="0.04"/></proof>
</goal>
</transf>
</goal>
<goal name="WP_parameter tc.22" expl="22. postcondition">
<proof prover="0" memlimit="1000"><result status="valid" time="0.02" steps="17"/></proof>
<proof prover="1" memlimit="1000"><result status="valid" time="0.02"/></proof>
<proof prover="3" memlimit="1000"><result status="valid" time="0.05"/></proof>
<proof prover="1"><result status="valid" time="0.02"/></proof>
<proof prover="3"><result status="valid" time="0.05"/></proof>
</goal>
<goal name="WP_parameter tc.23" expl="23. exceptional postcondition">
<proof prover="0" memlimit="1000"><result status="valid" time="0.02" steps="17"/></proof>
<proof prover="1" memlimit="1000"><result status="valid" time="0.02"/></proof>
<proof prover="3" memlimit="1000"><result status="valid" time="0.14"/></proof>
<proof prover="1"><result status="valid" time="0.02"/></proof>
<proof prover="3"><result status="valid" time="0.14"/></proof>
</goal>
</transf>
</goal>
<goal name="map_leaf_depths">
<transf name="induction_ty_lex">
<goal name="map_leaf_depths.1" expl="1.">
<proof prover="3" timelimit="6" memlimit="1000"><result status="valid" time="0.11"/></proof>
<proof prover="3" timelimit="6"><result status="valid" time="0.11"/></proof>
</goal>
</transf>
</goal>
<goal name="map_leaf_only_leaf">
<transf name="induction_ty_lex">
<goal name="map_leaf_only_leaf.1" expl="1.">
<proof prover="3" timelimit="6" memlimit="1000"><result status="valid" time="0.12"/></proof>
<proof prover="3" timelimit="6"><result status="valid" time="0.12"/></proof>
</goal>
</transf>
</goal>
......
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