diff --git a/examples/multiprecision/add/why3session.xml b/examples/multiprecision/add/why3session.xml
index 6f08d784ceede31b34262d1f1b77e8578d07f5f1..295003040f3b18b665cc18f143003b20a9a5756a 100644
--- a/examples/multiprecision/add/why3session.xml
+++ b/examples/multiprecision/add/why3session.xml
@@ -48,7 +48,7 @@
    <goal name="VC wmpn_add_1.10.0" expl="VC for wmpn_add_1" proved="true">
    <transf name="introduce_premises" proved="true" >
     <goal name="VC wmpn_add_1.10.0.0" expl="VC for wmpn_add_1" proved="true">
-    <proof prover="0"><result status="valid" time="0.34"/></proof>
+    <proof prover="0"><result status="valid" time="0.72"/></proof>
     </goal>
    </transf>
    </goal>
@@ -73,7 +73,7 @@
   <proof prover="2"><result status="valid" time="0.11"/></proof>
   </goal>
   <goal name="VC wmpn_add_1.16" expl="assertion" proved="true">
-  <proof prover="5"><result status="valid" time="0.46" steps="52"/></proof>
+  <proof prover="5"><result status="valid" time="0.79" steps="52"/></proof>
   </goal>
   <goal name="VC wmpn_add_1.17" expl="loop invariant init" proved="true">
   <proof prover="2"><result status="valid" time="0.08"/></proof>
@@ -94,7 +94,7 @@
   <proof prover="2"><result status="valid" time="0.11"/></proof>
   </goal>
   <goal name="VC wmpn_add_1.23" expl="assertion" proved="true">
-  <proof prover="5"><result status="valid" time="0.84" steps="196"/></proof>
+  <proof prover="5"><result status="valid" time="1.36" steps="196"/></proof>
   </goal>
   <goal name="VC wmpn_add_1.24" expl="precondition" proved="true">
   <proof prover="2"><result status="valid" time="0.04"/></proof>
@@ -115,14 +115,14 @@
   <proof prover="2"><result status="valid" time="0.09"/></proof>
   </goal>
   <goal name="VC wmpn_add_1.30" expl="loop invariant preservation" proved="true">
-  <proof prover="5"><result status="valid" time="0.50" steps="77"/></proof>
+  <proof prover="5"><result status="valid" time="0.91" steps="77"/></proof>
   </goal>
   <goal name="VC wmpn_add_1.31" expl="loop invariant preservation" proved="true">
-  <proof prover="2"><result status="valid" time="0.12"/></proof>
+  <proof prover="2"><result status="valid" time="0.24"/></proof>
   </goal>
   <goal name="VC wmpn_add_1.32" expl="postcondition" proved="true">
   <proof prover="0" memlimit="1000"><result status="valid" time="0.02"/></proof>
-  <proof prover="5" timelimit="5"><result status="valid" time="0.42" steps="62"/></proof>
+  <proof prover="5" timelimit="5"><result status="valid" time="0.84" steps="62"/></proof>
   </goal>
   <goal name="VC wmpn_add_1.33" expl="postcondition" proved="true">
   <proof prover="3"><result status="valid" time="0.02"/></proof>
@@ -134,7 +134,7 @@
   <proof prover="2"><result status="valid" time="0.11"/></proof>
   </goal>
   <goal name="VC wmpn_add_1.36" expl="assertion" proved="true">
-  <proof prover="5"><result status="valid" time="0.42" steps="77"/></proof>
+  <proof prover="5"><result status="valid" time="0.71" steps="77"/></proof>
   </goal>
   <goal name="VC wmpn_add_1.37" expl="loop variant decrease" proved="true">
   <proof prover="3"><result status="valid" time="0.02"/></proof>
@@ -173,7 +173,7 @@
   <proof prover="2"><result status="valid" time="0.10"/></proof>
   </goal>
   <goal name="VC wmpn_add_1.49" expl="assertion" proved="true">
-  <proof prover="0"><result status="valid" time="0.65"/></proof>
+  <proof prover="0"><result status="valid" time="1.51"/></proof>
   </goal>
   <goal name="VC wmpn_add_1.50" expl="precondition" proved="true">
   <proof prover="2"><result status="valid" time="0.04"/></proof>
@@ -194,7 +194,7 @@
   <proof prover="3"><result status="valid" time="0.03"/></proof>
   </goal>
   <goal name="VC wmpn_add_1.56" expl="loop invariant preservation" proved="true">
-  <proof prover="5"><result status="valid" time="0.04" steps="57"/></proof>
+  <proof prover="5"><result status="valid" time="0.15" steps="57"/></proof>
   </goal>
   <goal name="VC wmpn_add_1.57" expl="loop invariant preservation" proved="true">
   <proof prover="2"><result status="valid" time="0.10"/></proof>
@@ -216,7 +216,7 @@
   <proof prover="5" timelimit="5"><result status="valid" time="0.08" steps="19"/></proof>
   </goal>
   <goal name="VC wmpn_add_1.63" expl="loop invariant init" proved="true">
-  <proof prover="2"><result status="valid" time="0.19"/></proof>
+  <proof prover="2"><result status="valid" time="0.33"/></proof>
   </goal>
   <goal name="VC wmpn_add_1.64" expl="loop invariant init" proved="true">
   <proof prover="3"><result status="valid" time="0.02"/></proof>
@@ -305,7 +305,7 @@
   <proof prover="5" timelimit="5"><result status="valid" time="0.09" steps="39"/></proof>
   </goal>
   <goal name="VC wmpn_add_n.8" expl="assertion" proved="true">
-  <proof prover="0"><result status="valid" time="0.61"/></proof>
+  <proof prover="0"><result status="valid" time="1.47"/></proof>
   </goal>
   <goal name="VC wmpn_add_n.9" expl="precondition" proved="true">
   <proof prover="3"><result status="valid" time="0.01"/></proof>
@@ -326,13 +326,13 @@
     <goal name="VC wmpn_add_n.12.0.0" expl="assertion" proved="true">
     <transf name="reflection_f" proved="true" arg1="mp_decision">
      <goal name="VC wmpn_add_n.12.0.0.0" expl="assertion" proved="true">
-     <proof prover="0"><result status="valid" time="0.33"/></proof>
+     <proof prover="0"><result status="valid" time="0.47"/></proof>
      </goal>
      <goal name="VC wmpn_add_n.12.0.0.1" proved="true">
-     <proof prover="3"><result status="valid" time="0.20"/></proof>
+     <proof prover="3"><result status="valid" time="0.33"/></proof>
      </goal>
      <goal name="VC wmpn_add_n.12.0.0.2" proved="true">
-     <proof prover="3"><result status="valid" time="0.17"/></proof>
+     <proof prover="3"><result status="valid" time="0.34"/></proof>
      </goal>
     </transf>
     </goal>
@@ -408,7 +408,7 @@
   </transf>
   </goal>
   <goal name="VC wmpn_add.8" expl="assertion" proved="true">
-  <proof prover="0"><result status="valid" time="0.66"/></proof>
+  <proof prover="0"><result status="valid" time="1.56"/></proof>
   </goal>
   <goal name="VC wmpn_add.9" expl="precondition" proved="true">
   <proof prover="3"><result status="valid" time="0.03"/></proof>
@@ -426,13 +426,13 @@
     <goal name="VC wmpn_add.12.0.0" expl="assertion" proved="true">
     <transf name="reflection_f" proved="true" arg1="mp_decision">
      <goal name="VC wmpn_add.12.0.0.0" expl="assertion" proved="true">
-     <proof prover="0"><result status="valid" time="0.28"/></proof>
+     <proof prover="0"><result status="valid" time="0.60"/></proof>
      </goal>
      <goal name="VC wmpn_add.12.0.0.1" proved="true">
      <proof prover="3"><result status="valid" time="0.30"/></proof>
      </goal>
      <goal name="VC wmpn_add.12.0.0.2" proved="true">
-     <proof prover="2"><result status="valid" time="0.18"/></proof>
+     <proof prover="2"><result status="valid" time="0.46"/></proof>
      </goal>
     </transf>
     </goal>
@@ -486,7 +486,7 @@
   <goal name="VC wmpn_add.26" expl="precondition" proved="true">
   <transf name="split_goal_right" proved="true" >
    <goal name="VC wmpn_add.26.0" expl="VC for wmpn_add" proved="true">
-   <proof prover="0"><result status="valid" time="3.46"/></proof>
+   <proof prover="0"><result status="valid" time="6.76"/></proof>
    </goal>
    <goal name="VC wmpn_add.26.1" expl="VC for wmpn_add" proved="true">
    <proof prover="3"><result status="valid" time="0.04"/></proof>
@@ -494,7 +494,7 @@
   </transf>
   </goal>
   <goal name="VC wmpn_add.27" expl="assertion" proved="true">
-  <proof prover="0"><result status="valid" time="0.64"/></proof>
+  <proof prover="0"><result status="valid" time="1.48"/></proof>
   </goal>
   <goal name="VC wmpn_add.28" expl="precondition" proved="true">
   <proof prover="3"><result status="valid" time="0.02"/></proof>
@@ -503,22 +503,22 @@
   <proof prover="2"><result status="valid" time="0.10"/></proof>
   </goal>
   <goal name="VC wmpn_add.30" expl="integer overflow" proved="true">
-  <proof prover="5" timelimit="5"><result status="valid" time="0.03" steps="68"/></proof>
+  <proof prover="5" timelimit="5"><result status="valid" time="0.18" steps="68"/></proof>
   </goal>
   <goal name="VC wmpn_add.31" expl="assertion" proved="true">
-  <proof prover="2"><result status="valid" time="0.09"/></proof>
+  <proof prover="2"><result status="valid" time="0.21"/></proof>
   </goal>
   <goal name="VC wmpn_add.32" expl="assertion" proved="true">
-  <proof prover="5"><result status="valid" time="0.12" steps="57"/></proof>
+  <proof prover="5"><result status="valid" time="0.30" steps="57"/></proof>
   </goal>
   <goal name="VC wmpn_add.33" expl="loop invariant init" proved="true">
   <proof prover="3"><result status="valid" time="0.06"/></proof>
   </goal>
   <goal name="VC wmpn_add.34" expl="loop invariant init" proved="true">
-  <proof prover="5" timelimit="5"><result status="valid" time="0.24" steps="60"/></proof>
+  <proof prover="5" timelimit="5"><result status="valid" time="0.46" steps="60"/></proof>
   </goal>
   <goal name="VC wmpn_add.35" expl="loop invariant init" proved="true">
-  <proof prover="5" timelimit="5"><result status="valid" time="0.22" steps="60"/></proof>
+  <proof prover="5" timelimit="5"><result status="valid" time="0.46" steps="60"/></proof>
   </goal>
   <goal name="VC wmpn_add.36" expl="loop invariant init" proved="true">
   <proof prover="2"><result status="valid" time="0.15"/></proof>
@@ -527,7 +527,7 @@
   <proof prover="2"><result status="valid" time="0.11"/></proof>
   </goal>
   <goal name="VC wmpn_add.38" expl="precondition" proved="true">
-  <proof prover="5" timelimit="5"><result status="valid" time="0.32" steps="83"/></proof>
+  <proof prover="5" timelimit="5"><result status="valid" time="0.49" steps="83"/></proof>
   </goal>
   <goal name="VC wmpn_add.39" expl="precondition" proved="true">
   <proof prover="2"><result status="valid" time="0.14"/></proof>
@@ -539,32 +539,32 @@
   <proof prover="3"><result status="valid" time="0.02"/></proof>
   </goal>
   <goal name="VC wmpn_add.42" expl="assertion" proved="true">
-  <proof prover="0"><result status="valid" time="0.91"/></proof>
+  <proof prover="0"><result status="valid" time="1.71"/></proof>
   </goal>
   <goal name="VC wmpn_add.43" expl="assertion" proved="true">
-  <proof prover="5" timelimit="5"><result status="valid" time="0.28" steps="79"/></proof>
+  <proof prover="5" timelimit="5"><result status="valid" time="0.54" steps="79"/></proof>
   </goal>
   <goal name="VC wmpn_add.44" expl="integer overflow" proved="true">
-  <proof prover="5" timelimit="5"><result status="valid" time="0.28" steps="97"/></proof>
+  <proof prover="5" timelimit="5"><result status="valid" time="0.55" steps="97"/></proof>
   </goal>
   <goal name="VC wmpn_add.45" expl="loop variant decrease" proved="true">
   <proof prover="3"><result status="valid" time="0.03"/></proof>
   </goal>
   <goal name="VC wmpn_add.46" expl="loop invariant preservation" proved="true">
-  <proof prover="5" timelimit="5"><result status="valid" time="0.27" steps="82"/></proof>
+  <proof prover="5" timelimit="5"><result status="valid" time="0.58" steps="82"/></proof>
   </goal>
   <goal name="VC wmpn_add.47" expl="loop invariant preservation" proved="true">
   <transf name="split_goal_right" proved="true" >
    <goal name="VC wmpn_add.47.0" expl="loop invariant preservation" proved="true">
-   <proof prover="5"><result status="valid" time="0.31" steps="84"/></proof>
+   <proof prover="5"><result status="valid" time="0.58" steps="84"/></proof>
    </goal>
   </transf>
   </goal>
   <goal name="VC wmpn_add.48" expl="loop invariant preservation" proved="true">
-  <proof prover="5"><result status="valid" time="0.31" steps="84"/></proof>
+  <proof prover="5"><result status="valid" time="0.56" steps="84"/></proof>
   </goal>
   <goal name="VC wmpn_add.49" expl="loop invariant preservation" proved="true">
-  <proof prover="2"><result status="valid" time="0.11"/></proof>
+  <proof prover="2"><result status="valid" time="0.26"/></proof>
   </goal>
   <goal name="VC wmpn_add.50" expl="postcondition" proved="true">
   <proof prover="2"><result status="valid" time="0.07"/></proof>
@@ -579,7 +579,7 @@
   <proof prover="2"><result status="valid" time="0.10"/></proof>
   </goal>
   <goal name="VC wmpn_add.54" expl="assertion" proved="true">
-  <proof prover="5"><result status="valid" time="0.12" steps="92"/></proof>
+  <proof prover="5"><result status="valid" time="0.29" steps="92"/></proof>
   </goal>
   <goal name="VC wmpn_add.55" expl="loop variant decrease" proved="true">
   <proof prover="3"><result status="valid" time="0.02"/></proof>
@@ -594,7 +594,7 @@
   <proof prover="3"><result status="valid" time="0.01"/></proof>
   </goal>
   <goal name="VC wmpn_add.59" expl="loop invariant preservation" proved="true">
-  <proof prover="5"><result status="valid" time="0.06" steps="60"/></proof>
+  <proof prover="5"><result status="valid" time="0.26" steps="60"/></proof>
   </goal>
   <goal name="VC wmpn_add.60" expl="loop invariant preservation" proved="true">
   <proof prover="2" timelimit="5"><result status="valid" time="0.16"/></proof>
@@ -631,7 +631,7 @@
   <proof prover="3"><result status="valid" time="0.02"/></proof>
   </goal>
   <goal name="VC wmpn_add.70" expl="assertion" proved="true">
-  <proof prover="0"><result status="valid" time="0.62"/></proof>
+  <proof prover="0"><result status="valid" time="1.49"/></proof>
   </goal>
   <goal name="VC wmpn_add.71" expl="assertion" proved="true">
   <proof prover="5"><result status="valid" time="0.07" steps="58"/></proof>
@@ -698,7 +698,7 @@
   <proof prover="3"><result status="valid" time="0.03"/></proof>
   </goal>
   <goal name="VC wmpn_add.90" expl="assertion" proved="true">
-  <proof prover="0" timelimit="10"><result status="valid" time="0.97"/></proof>
+  <proof prover="0" timelimit="10"><result status="valid" time="1.51"/></proof>
   </goal>
   <goal name="VC wmpn_add.91" expl="assertion" proved="true">
   <proof prover="5"><result status="valid" time="0.02" steps="46"/></proof>
@@ -775,7 +775,7 @@
   <proof prover="5"><result status="valid" time="0.02" steps="60"/></proof>
   </goal>
   <goal name="VC wmpn_add_in_place.11" expl="assertion" proved="true">
-  <proof prover="0"><result status="valid" time="0.70"/></proof>
+  <proof prover="0"><result status="valid" time="1.50"/></proof>
   </goal>
   <goal name="VC wmpn_add_in_place.12" expl="precondition" proved="true">
   <proof prover="2" timelimit="5"><result status="valid" time="0.05"/></proof>
@@ -793,13 +793,13 @@
     <goal name="VC wmpn_add_in_place.15.0.0" expl="assertion" proved="true">
     <transf name="reflection_f" proved="true" arg1="mp_decision">
      <goal name="VC wmpn_add_in_place.15.0.0.0" expl="assertion" proved="true">
-     <proof prover="0"><result status="valid" time="0.24"/></proof>
+     <proof prover="0"><result status="valid" time="0.42"/></proof>
      </goal>
      <goal name="VC wmpn_add_in_place.15.0.0.1" proved="true">
      <proof prover="3"><result status="valid" time="0.22"/></proof>
      </goal>
      <goal name="VC wmpn_add_in_place.15.0.0.2" proved="true">
-     <proof prover="3"><result status="valid" time="0.20"/></proof>
+     <proof prover="3"><result status="valid" time="0.33"/></proof>
      </goal>
     </transf>
     </goal>
@@ -823,7 +823,7 @@
   <proof prover="3"><result status="valid" time="0.05"/></proof>
   </goal>
   <goal name="VC wmpn_add_in_place.21" expl="loop invariant preservation" proved="true">
-  <proof prover="0"><result status="valid" time="0.30"/></proof>
+  <proof prover="0"><result status="valid" time="0.62"/></proof>
   </goal>
   <goal name="VC wmpn_add_in_place.22" expl="loop invariant preservation" proved="true">
   <proof prover="2"><result status="valid" time="0.15"/></proof>
@@ -892,7 +892,7 @@
   <proof prover="3"><result status="valid" time="0.03"/></proof>
   </goal>
   <goal name="VC wmpn_add_in_place.40" expl="assertion" proved="true">
-  <proof prover="2"><result status="valid" time="0.09"/></proof>
+  <proof prover="2"><result status="valid" time="0.20"/></proof>
   </goal>
   <goal name="VC wmpn_add_in_place.41" expl="assertion" proved="true">
   <proof prover="5" timelimit="5" memlimit="2000"><result status="valid" time="0.24" steps="58"/></proof>
@@ -903,10 +903,10 @@
    <proof prover="2"><result status="valid" time="0.05"/></proof>
    </goal>
    <goal name="VC wmpn_add_in_place.42.1" expl="assertion" proved="true">
-   <proof prover="5" timelimit="5" memlimit="2000"><result status="valid" time="0.20" steps="61"/></proof>
+   <proof prover="5" timelimit="5" memlimit="2000"><result status="valid" time="0.37" steps="61"/></proof>
    </goal>
    <goal name="VC wmpn_add_in_place.42.2" expl="VC for wmpn_add_in_place" proved="true">
-   <proof prover="5"><result status="valid" time="0.18" steps="86"/></proof>
+   <proof prover="5"><result status="valid" time="0.42" steps="86"/></proof>
    </goal>
    <goal name="VC wmpn_add_in_place.42.3" expl="VC for wmpn_add_in_place" proved="true">
    <proof prover="2"><result status="valid" time="0.03"/></proof>
@@ -917,25 +917,25 @@
   <proof prover="2"><result status="valid" time="0.13"/></proof>
   </goal>
   <goal name="VC wmpn_add_in_place.44" expl="precondition" proved="true">
-  <proof prover="5"><result status="valid" time="0.20" steps="60"/></proof>
+  <proof prover="5"><result status="valid" time="0.40" steps="60"/></proof>
   </goal>
   <goal name="VC wmpn_add_in_place.45" expl="precondition" proved="true">
   <proof prover="5" timelimit="5" memlimit="2000"><result status="valid" time="0.32" steps="61"/></proof>
   </goal>
   <goal name="VC wmpn_add_in_place.46" expl="postcondition" proved="true">
-  <proof prover="5" timelimit="5" memlimit="2000"><result status="valid" time="0.38" steps="112"/></proof>
+  <proof prover="5" timelimit="5" memlimit="2000"><result status="valid" time="0.52" steps="112"/></proof>
   </goal>
   <goal name="VC wmpn_add_in_place.47" expl="postcondition" proved="true">
   <proof prover="2"><result status="valid" time="0.04"/></proof>
   </goal>
   <goal name="VC wmpn_add_in_place.48" expl="postcondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.12"/></proof>
+  <proof prover="2"><result status="valid" time="0.25"/></proof>
   </goal>
   <goal name="VC wmpn_add_in_place.49" expl="assertion" proved="true">
   <proof prover="2"><result status="valid" time="0.11"/></proof>
   </goal>
   <goal name="VC wmpn_add_in_place.50" expl="assertion" proved="true">
-  <proof prover="5"><result status="valid" time="0.13" steps="85"/></proof>
+  <proof prover="5"><result status="valid" time="0.30" steps="85"/></proof>
   </goal>
   <goal name="VC wmpn_add_in_place.51" expl="loop variant decrease" proved="true">
   <proof prover="3"><result status="valid" time="0.05"/></proof>
@@ -953,7 +953,7 @@
   <proof prover="2"><result status="valid" time="0.04"/></proof>
   </goal>
   <goal name="VC wmpn_add_in_place.56" expl="loop invariant preservation" proved="true">
-  <proof prover="5"><result status="valid" time="0.14" steps="86"/></proof>
+  <proof prover="5"><result status="valid" time="0.30" steps="86"/></proof>
   </goal>
   <goal name="VC wmpn_add_in_place.57" expl="loop invariant preservation" proved="true">
   <proof prover="2"><result status="valid" time="0.10"/></proof>
@@ -988,7 +988,7 @@
    <proof prover="2"><result status="valid" time="0.03"/></proof>
    </goal>
    <goal name="VC wmpn_add_in_place.65.2" expl="VC for wmpn_add_in_place" proved="true">
-   <proof prover="5"><result status="valid" time="0.02" steps="54"/></proof>
+   <proof prover="5"><result status="valid" time="0.02" steps="55"/></proof>
    </goal>
    <goal name="VC wmpn_add_in_place.65.3" expl="VC for wmpn_add_in_place" proved="true">
    <proof prover="2"><result status="valid" time="0.04"/></proof>
@@ -1085,7 +1085,7 @@
   </transf>
   </goal>
   <goal name="VC wmpn_incr.21" expl="assertion" proved="true">
-  <proof prover="5"><result status="valid" time="0.42" steps="56"/></proof>
+  <proof prover="5"><result status="valid" time="0.73" steps="56"/></proof>
   </goal>
   <goal name="VC wmpn_incr.22" expl="precondition" proved="true">
   <proof prover="2"><result status="valid" time="0.12"/></proof>
@@ -1102,7 +1102,7 @@
    <proof prover="2"><result status="valid" time="0.04"/></proof>
    </goal>
    <goal name="VC wmpn_incr.24.2" expl="VC for wmpn_incr" proved="true">
-   <proof prover="5"><result status="valid" time="0.48" steps="76"/></proof>
+   <proof prover="5"><result status="valid" time="0.89" steps="75"/></proof>
    </goal>
    <goal name="VC wmpn_incr.24.3" expl="VC for wmpn_incr" proved="true">
    <proof prover="2"><result status="valid" time="0.03"/></proof>
@@ -1113,19 +1113,19 @@
   <proof prover="2"><result status="valid" time="0.10"/></proof>
   </goal>
   <goal name="VC wmpn_incr.26" expl="postcondition" proved="true">
-  <proof prover="5"><result status="valid" time="0.54" steps="60"/></proof>
+  <proof prover="5"><result status="valid" time="0.84" steps="60"/></proof>
   </goal>
   <goal name="VC wmpn_incr.27" expl="postcondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.15"/></proof>
+  <proof prover="2"><result status="valid" time="0.27"/></proof>
   </goal>
   <goal name="VC wmpn_incr.28" expl="assertion" proved="true">
   <proof prover="2"><result status="valid" time="0.15"/></proof>
   </goal>
   <goal name="VC wmpn_incr.29" expl="assertion" proved="true">
-  <proof prover="5"><result status="valid" time="0.43" steps="73"/></proof>
+  <proof prover="5"><result status="valid" time="0.73" steps="73"/></proof>
   </goal>
   <goal name="VC wmpn_incr.30" expl="assertion" proved="true">
-  <proof prover="2"><result status="valid" time="0.16"/></proof>
+  <proof prover="2"><result status="valid" time="0.29"/></proof>
   </goal>
   <goal name="VC wmpn_incr.31" expl="loop variant decrease" proved="true">
   <proof prover="3"><result status="valid" time="0.02"/></proof>
@@ -1143,10 +1143,10 @@
   <proof prover="0"><result status="valid" time="0.02"/></proof>
   </goal>
   <goal name="VC wmpn_incr.36" expl="loop invariant preservation" proved="true">
-  <proof prover="5"><result status="valid" time="0.36" steps="75"/></proof>
+  <proof prover="5"><result status="valid" time="0.74" steps="75"/></proof>
   </goal>
   <goal name="VC wmpn_incr.37" expl="loop invariant preservation" proved="true">
-  <proof prover="2"><result status="valid" time="0.10"/></proof>
+  <proof prover="2"><result status="valid" time="0.22"/></proof>
   </goal>
   <goal name="VC wmpn_incr.38" expl="precondition" proved="true">
   <proof prover="3"><result status="valid" time="0.02"/></proof>
@@ -1200,7 +1200,7 @@
   <proof prover="2"><result status="valid" time="0.10"/></proof>
   </goal>
   <goal name="VC wmpn_incr.48" expl="postcondition" proved="true">
-  <proof prover="5"><result status="valid" time="0.02" steps="70"/></proof>
+  <proof prover="5"><result status="valid" time="0.16" steps="70"/></proof>
   </goal>
   <goal name="VC wmpn_incr.49" expl="postcondition" proved="true">
   <proof prover="3"><result status="valid" time="0.02"/></proof>
@@ -1240,22 +1240,22 @@
   <proof prover="5"><result status="valid" time="0.02" steps="52"/></proof>
   </goal>
   <goal name="VC wmpn_incr_1.10" expl="precondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.02"/></proof>
+  <proof prover="3"><result status="valid" time="0.03"/></proof>
   </goal>
   <goal name="VC wmpn_incr_1.11" expl="precondition" proved="true">
   <proof prover="3"><result status="valid" time="0.01"/></proof>
   </goal>
   <goal name="VC wmpn_incr_1.12" expl="precondition" proved="true">
-  <proof prover="5"><result status="valid" time="0.05" steps="131"/></proof>
+  <proof prover="5"><result status="valid" time="0.04" steps="131"/></proof>
   </goal>
   <goal name="VC wmpn_incr_1.13" expl="assertion" proved="true">
   <proof prover="5"><result status="valid" time="0.02" steps="55"/></proof>
   </goal>
   <goal name="VC wmpn_incr_1.14" expl="assertion" proved="true">
-  <proof prover="5"><result status="valid" time="0.09" steps="117"/></proof>
+  <proof prover="5"><result status="valid" time="0.11" steps="117"/></proof>
   </goal>
   <goal name="VC wmpn_incr_1.15" expl="precondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.02"/></proof>
+  <proof prover="3"><result status="valid" time="0.01"/></proof>
   </goal>
   <goal name="VC wmpn_incr_1.16" expl="precondition" proved="true">
   <proof prover="3"><result status="valid" time="0.01"/></proof>
@@ -1264,24 +1264,24 @@
   <proof prover="5"><result status="valid" time="0.04" steps="55"/></proof>
   </goal>
   <goal name="VC wmpn_incr_1.18" expl="integer overflow" proved="true">
-  <proof prover="3"><result status="valid" time="0.22"/></proof>
+  <proof prover="3"><result status="valid" time="0.32"/></proof>
   </goal>
   <goal name="VC wmpn_incr_1.19" expl="assertion" proved="true">
   <transf name="split_vc" proved="true" >
    <goal name="VC wmpn_incr_1.19.0" expl="assertion" proved="true">
-   <proof prover="5" timelimit="5"><result status="valid" time="0.02" steps="47"/></proof>
+   <proof prover="5" timelimit="5"><result status="valid" time="0.02" steps="46"/></proof>
    </goal>
    <goal name="VC wmpn_incr_1.19.1" expl="VC for wmpn_incr_1" proved="true">
-   <proof prover="5" timelimit="5"><result status="valid" time="0.02" steps="48"/></proof>
+   <proof prover="5" timelimit="5"><result status="valid" time="0.02" steps="47"/></proof>
    </goal>
    <goal name="VC wmpn_incr_1.19.2" expl="VC for wmpn_incr_1" proved="true">
-   <proof prover="5" timelimit="5"><result status="valid" time="0.02" steps="48"/></proof>
+   <proof prover="5" timelimit="5"><result status="valid" time="0.02" steps="47"/></proof>
    </goal>
    <goal name="VC wmpn_incr_1.19.3" expl="VC for wmpn_incr_1" proved="true">
-   <proof prover="5" timelimit="5"><result status="valid" time="0.02" steps="48"/></proof>
+   <proof prover="5" timelimit="5"><result status="valid" time="0.02" steps="47"/></proof>
    </goal>
    <goal name="VC wmpn_incr_1.19.4" expl="VC for wmpn_incr_1" proved="true">
-   <proof prover="5" timelimit="5"><result status="valid" time="0.25" steps="167"/></proof>
+   <proof prover="5" timelimit="5"><result status="valid" time="0.38" steps="166"/></proof>
    </goal>
   </transf>
   </goal>
@@ -1289,7 +1289,7 @@
   <proof prover="3"><result status="valid" time="0.04"/></proof>
   </goal>
   <goal name="VC wmpn_incr_1.21" expl="loop invariant preservation" proved="true">
-  <proof prover="5"><result status="valid" time="0.06" steps="123"/></proof>
+  <proof prover="5"><result status="valid" time="0.07" steps="118"/></proof>
   </goal>
   <goal name="VC wmpn_incr_1.22" expl="loop invariant preservation" proved="true">
   <proof prover="3"><result status="valid" time="0.02"/></proof>
@@ -1301,34 +1301,34 @@
   <proof prover="3"><result status="valid" time="0.02"/></proof>
   </goal>
   <goal name="VC wmpn_incr_1.25" expl="loop invariant preservation" proved="true">
-  <proof prover="5"><result status="valid" time="0.02" steps="51"/></proof>
+  <proof prover="5"><result status="valid" time="0.02" steps="50"/></proof>
   </goal>
   <goal name="VC wmpn_incr_1.26" expl="loop invariant preservation" proved="true">
-  <proof prover="5"><result status="valid" time="0.04" steps="67"/></proof>
+  <proof prover="5"><result status="valid" time="0.04" steps="66"/></proof>
   </goal>
   <goal name="VC wmpn_incr_1.27" expl="loop invariant preservation" proved="true">
-  <proof prover="5"><result status="valid" time="0.07" steps="70"/></proof>
+  <proof prover="5"><result status="valid" time="0.03" steps="69"/></proof>
   </goal>
   <goal name="VC wmpn_incr_1.28" expl="assertion" proved="true">
   <proof prover="5"><result status="valid" time="0.02" steps="53"/></proof>
   </goal>
   <goal name="VC wmpn_incr_1.29" expl="precondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.03"/></proof>
+  <proof prover="3"><result status="valid" time="0.02"/></proof>
   </goal>
   <goal name="VC wmpn_incr_1.30" expl="precondition" proved="true">
   <proof prover="3"><result status="valid" time="0.01"/></proof>
   </goal>
   <goal name="VC wmpn_incr_1.31" expl="precondition" proved="true">
-  <proof prover="5"><result status="valid" time="0.04" steps="132"/></proof>
+  <proof prover="5"><result status="valid" time="0.05" steps="132"/></proof>
   </goal>
   <goal name="VC wmpn_incr_1.32" expl="assertion" proved="true">
   <proof prover="5"><result status="valid" time="0.02" steps="56"/></proof>
   </goal>
   <goal name="VC wmpn_incr_1.33" expl="assertion" proved="true">
-  <proof prover="5"><result status="valid" time="0.11" steps="115"/></proof>
+  <proof prover="5"><result status="valid" time="0.09" steps="115"/></proof>
   </goal>
   <goal name="VC wmpn_incr_1.34" expl="precondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.01"/></proof>
+  <proof prover="3"><result status="valid" time="0.02"/></proof>
   </goal>
   <goal name="VC wmpn_incr_1.35" expl="precondition" proved="true">
   <proof prover="3"><result status="valid" time="0.01"/></proof>
@@ -1337,24 +1337,24 @@
   <proof prover="5"><result status="valid" time="0.03" steps="43"/></proof>
   </goal>
   <goal name="VC wmpn_incr_1.37" expl="integer overflow" proved="true">
-  <proof prover="3"><result status="valid" time="0.32"/></proof>
+  <proof prover="3"><result status="valid" time="0.47"/></proof>
   </goal>
   <goal name="VC wmpn_incr_1.38" expl="assertion" proved="true">
   <transf name="split_vc" proved="true" >
    <goal name="VC wmpn_incr_1.38.0" expl="assertion" proved="true">
-   <proof prover="5" timelimit="5"><result status="valid" time="0.02" steps="48"/></proof>
+   <proof prover="5" timelimit="5"><result status="valid" time="0.02" steps="47"/></proof>
    </goal>
    <goal name="VC wmpn_incr_1.38.1" expl="VC for wmpn_incr_1" proved="true">
-   <proof prover="5" timelimit="5"><result status="valid" time="0.02" steps="49"/></proof>
+   <proof prover="5" timelimit="5"><result status="valid" time="0.02" steps="48"/></proof>
    </goal>
    <goal name="VC wmpn_incr_1.38.2" expl="VC for wmpn_incr_1" proved="true">
-   <proof prover="5" timelimit="5"><result status="valid" time="0.02" steps="49"/></proof>
+   <proof prover="5" timelimit="5"><result status="valid" time="0.02" steps="48"/></proof>
    </goal>
    <goal name="VC wmpn_incr_1.38.3" expl="VC for wmpn_incr_1" proved="true">
-   <proof prover="5" timelimit="5"><result status="valid" time="0.02" steps="49"/></proof>
+   <proof prover="5" timelimit="5"><result status="valid" time="0.02" steps="48"/></proof>
    </goal>
    <goal name="VC wmpn_incr_1.38.4" expl="VC for wmpn_incr_1" proved="true">
-   <proof prover="5" timelimit="5"><result status="valid" time="0.04" steps="51"/></proof>
+   <proof prover="5" timelimit="5"><result status="valid" time="0.06" steps="50"/></proof>
    </goal>
   </transf>
   </goal>
@@ -1362,7 +1362,7 @@
   <proof prover="3"><result status="valid" time="0.03"/></proof>
   </goal>
   <goal name="VC wmpn_incr_1.40" expl="loop invariant preservation" proved="true">
-  <proof prover="5"><result status="valid" time="0.07" steps="123"/></proof>
+  <proof prover="5"><result status="valid" time="0.06" steps="118"/></proof>
   </goal>
   <goal name="VC wmpn_incr_1.41" expl="loop invariant preservation" proved="true">
   <proof prover="3"><result status="valid" time="0.02"/></proof>
@@ -1374,13 +1374,13 @@
   <proof prover="3"><result status="valid" time="0.02"/></proof>
   </goal>
   <goal name="VC wmpn_incr_1.44" expl="loop invariant preservation" proved="true">
-  <proof prover="5"><result status="valid" time="0.05" steps="51"/></proof>
+  <proof prover="5"><result status="valid" time="0.05" steps="50"/></proof>
   </goal>
   <goal name="VC wmpn_incr_1.45" expl="loop invariant preservation" proved="true">
-  <proof prover="5"><result status="valid" time="0.02" steps="67"/></proof>
+  <proof prover="5"><result status="valid" time="0.02" steps="66"/></proof>
   </goal>
   <goal name="VC wmpn_incr_1.46" expl="loop invariant preservation" proved="true">
-  <proof prover="5"><result status="valid" time="0.03" steps="70"/></proof>
+  <proof prover="5"><result status="valid" time="0.07" steps="69"/></proof>
   </goal>
   <goal name="VC wmpn_incr_1.47" expl="precondition" proved="true">
   <proof prover="3"><result status="valid" time="0.02"/></proof>
@@ -1463,7 +1463,7 @@
   <proof prover="2"><result status="valid" time="0.12"/></proof>
   </goal>
   <goal name="VC wmpn_add_1_in_place.15" expl="assertion" proved="true">
-  <proof prover="2"><result status="valid" time="0.56"/></proof>
+  <proof prover="2"><result status="valid" time="1.10"/></proof>
   </goal>
   <goal name="VC wmpn_add_1_in_place.16" expl="precondition" proved="true">
   <proof prover="2"><result status="valid" time="0.04"/></proof>
@@ -1478,7 +1478,7 @@
   <proof prover="2"><result status="valid" time="0.13"/></proof>
   </goal>
   <goal name="VC wmpn_add_1_in_place.20" expl="assertion" proved="true">
-  <proof prover="5"><result status="valid" time="0.48" steps="53"/></proof>
+  <proof prover="5"><result status="valid" time="0.84" steps="52"/></proof>
   </goal>
   <goal name="VC wmpn_add_1_in_place.21" expl="precondition" proved="true">
   <proof prover="2"><result status="valid" time="0.05"/></proof>
@@ -1493,19 +1493,19 @@
   <proof prover="2"><result status="valid" time="0.14"/></proof>
   </goal>
   <goal name="VC wmpn_add_1_in_place.25" expl="postcondition" proved="true">
-  <proof prover="5"><result status="valid" time="0.50" steps="57"/></proof>
+  <proof prover="5"><result status="valid" time="0.95" steps="56"/></proof>
   </goal>
   <goal name="VC wmpn_add_1_in_place.26" expl="postcondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.06"/></proof>
+  <proof prover="2"><result status="valid" time="0.07"/></proof>
   </goal>
   <goal name="VC wmpn_add_1_in_place.27" expl="postcondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.10"/></proof>
+  <proof prover="2"><result status="valid" time="0.12"/></proof>
   </goal>
   <goal name="VC wmpn_add_1_in_place.28" expl="assertion" proved="true">
   <proof prover="2"><result status="valid" time="0.08"/></proof>
   </goal>
   <goal name="VC wmpn_add_1_in_place.29" expl="assertion" proved="true">
-  <proof prover="5"><result status="valid" time="0.30" steps="69"/></proof>
+  <proof prover="5"><result status="valid" time="0.87" steps="66"/></proof>
   </goal>
   <goal name="VC wmpn_add_1_in_place.30" expl="loop variant decrease" proved="true">
   <proof prover="2"><result status="valid" time="0.09"/></proof>
@@ -1535,16 +1535,16 @@
   <proof prover="2"><result status="valid" time="0.11"/></proof>
   </goal>
   <goal name="VC wmpn_add_1_in_place.39" expl="precondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.07"/></proof>
+  <proof prover="2"><result status="valid" time="0.12"/></proof>
   </goal>
   <goal name="VC wmpn_add_1_in_place.40" expl="postcondition" proved="true">
-  <proof prover="5"><result status="valid" time="0.10" steps="33"/></proof>
+  <proof prover="5"><result status="valid" time="0.05" steps="33"/></proof>
   </goal>
   <goal name="VC wmpn_add_1_in_place.41" expl="postcondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.07"/></proof>
+  <proof prover="2"><result status="valid" time="0.06"/></proof>
   </goal>
   <goal name="VC wmpn_add_1_in_place.42" expl="postcondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.12"/></proof>
+  <proof prover="2"><result status="valid" time="0.10"/></proof>
   </goal>
   <goal name="VC wmpn_add_1_in_place.43" expl="precondition" proved="true">
   <proof prover="2"><result status="valid" time="0.06"/></proof>
@@ -1556,7 +1556,7 @@
   <proof prover="2"><result status="valid" time="0.05"/></proof>
   </goal>
   <goal name="VC wmpn_add_1_in_place.46" expl="precondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.12"/></proof>
+  <proof prover="2"><result status="valid" time="0.07"/></proof>
   </goal>
   <goal name="VC wmpn_add_1_in_place.47" expl="postcondition" proved="true">
   <proof prover="5"><result status="valid" time="0.26" steps="119"/></proof>
diff --git a/examples/multiprecision/add/why3shapes.gz b/examples/multiprecision/add/why3shapes.gz
index 0e55acc14ccbfa2cc22d48de42e36ce6833e0f88..12a886f9427e21ff2ea260593fc84a4137540cc4 100644
Binary files a/examples/multiprecision/add/why3shapes.gz and b/examples/multiprecision/add/why3shapes.gz differ
diff --git a/examples/multiprecision/div/why3session.xml b/examples/multiprecision/div/why3session.xml
index 684942f89a951e395392b0177e6c41674120bc4e..c6f6a1d32c62c3094f7c82cc9a17071090b0f9d9 100644
--- a/examples/multiprecision/div/why3session.xml
+++ b/examples/multiprecision/div/why3session.xml
@@ -3439,7 +3439,7 @@
         <goal name="VC div_sb_qr.72.3.1.0.0.0.0" proved="true">
         <transf name="unfold" proved="true" arg1="value">
          <goal name="VC div_sb_qr.72.3.1.0.0.0.0.0" proved="true">
-         <proof prover="1"><result status="valid" time="0.28"/></proof>
+         <proof prover="1"><result status="valid" time="0.14"/></proof>
          </goal>
         </transf>
         </goal>
@@ -3686,7 +3686,7 @@
    <proof prover="2"><result status="valid" time="0.08"/></proof>
    </goal>
    <goal name="VC div_sb_qr.86.23" expl="VC for div_sb_qr" proved="true">
-   <proof prover="1"><result status="valid" time="0.63"/></proof>
+   <proof prover="1"><result status="valid" time="0.81"/></proof>
    </goal>
    <goal name="VC div_sb_qr.86.24" expl="VC for div_sb_qr" proved="true">
    <proof prover="2"><result status="valid" time="0.09"/></proof>
@@ -3710,10 +3710,10 @@
    <proof prover="2"><result status="valid" time="0.08"/></proof>
    </goal>
    <goal name="VC div_sb_qr.86.31" expl="VC for div_sb_qr" proved="true">
-   <proof prover="1"><result status="valid" time="0.47"/></proof>
+   <proof prover="1"><result status="valid" time="0.76"/></proof>
    </goal>
    <goal name="VC div_sb_qr.86.32" expl="VC for div_sb_qr" proved="true">
-   <proof prover="1"><result status="valid" time="0.39"/></proof>
+   <proof prover="1"><result status="valid" time="0.69"/></proof>
    </goal>
    <goal name="VC div_sb_qr.86.33" expl="VC for div_sb_qr" proved="true">
    <proof prover="2"><result status="valid" time="0.11"/></proof>
@@ -4194,10 +4194,10 @@
    <proof prover="2"><result status="valid" time="0.11"/></proof>
    </goal>
    <goal name="VC div_sb_qr.123.1" expl="VC for div_sb_qr" proved="true">
-   <proof prover="5" timelimit="1"><result status="valid" time="0.41" steps="112"/></proof>
+   <proof prover="5" timelimit="1"><result status="valid" time="0.41" steps="110"/></proof>
    </goal>
    <goal name="VC div_sb_qr.123.2" expl="VC for div_sb_qr" proved="true">
-   <proof prover="5" timelimit="1"><result status="valid" time="0.48" steps="113"/></proof>
+   <proof prover="5" timelimit="1"><result status="valid" time="0.48" steps="111"/></proof>
    </goal>
    <goal name="VC div_sb_qr.123.3" expl="VC for div_sb_qr" proved="true">
    <proof prover="2"><result status="valid" time="0.03"/></proof>
@@ -4209,10 +4209,10 @@
    <proof prover="2"><result status="valid" time="0.14"/></proof>
    </goal>
    <goal name="VC div_sb_qr.123.6" expl="VC for div_sb_qr" proved="true">
-   <proof prover="5" timelimit="1"><result status="valid" time="0.43" steps="114"/></proof>
+   <proof prover="5" timelimit="1"><result status="valid" time="0.60" steps="112"/></proof>
    </goal>
    <goal name="VC div_sb_qr.123.7" expl="VC for div_sb_qr" proved="true">
-   <proof prover="5" timelimit="1"><result status="valid" time="0.53" steps="162"/></proof>
+   <proof prover="5" timelimit="1"><result status="valid" time="0.53" steps="160"/></proof>
    </goal>
    <goal name="VC div_sb_qr.123.8" expl="VC for div_sb_qr" proved="true">
    <proof prover="2"><result status="valid" time="0.04"/></proof>
@@ -5708,7 +5708,7 @@
   <goal name="VC div_sb_qr.199" expl="assertion" proved="true">
   <transf name="split_vc" proved="true" >
    <goal name="VC div_sb_qr.199.0" expl="VC for div_sb_qr" proved="true">
-   <proof prover="1"><result status="valid" time="0.39"/></proof>
+   <proof prover="1"><result status="valid" time="0.55"/></proof>
    </goal>
    <goal name="VC div_sb_qr.199.1" expl="VC for div_sb_qr" proved="true">
    <proof prover="2"><result status="valid" time="0.05"/></proof>
@@ -5729,7 +5729,7 @@
    <proof prover="3" timelimit="1"><result status="valid" time="0.08"/></proof>
    </goal>
    <goal name="VC div_sb_qr.199.7" expl="VC for div_sb_qr" proved="true">
-   <proof prover="2"><result status="valid" time="0.40"/></proof>
+   <proof prover="2"><result status="valid" time="0.57"/></proof>
    </goal>
    <goal name="VC div_sb_qr.199.8" expl="VC for div_sb_qr" proved="true">
    <proof prover="0"><result status="valid" time="0.05"/></proof>
@@ -5741,7 +5741,7 @@
    <proof prover="2"><result status="valid" time="0.06"/></proof>
    </goal>
    <goal name="VC div_sb_qr.199.11" expl="VC for div_sb_qr" proved="true">
-   <proof prover="2"><result status="valid" time="0.40"/></proof>
+   <proof prover="2"><result status="valid" time="0.57"/></proof>
    </goal>
    <goal name="VC div_sb_qr.199.12" expl="VC for div_sb_qr" proved="true">
    <proof prover="2"><result status="valid" time="0.46"/></proof>
@@ -5759,7 +5759,7 @@
    <proof prover="2"><result status="valid" time="0.05"/></proof>
    </goal>
    <goal name="VC div_sb_qr.199.17" expl="VC for div_sb_qr" proved="true">
-   <proof prover="1"><result status="valid" time="0.38"/></proof>
+   <proof prover="1"><result status="valid" time="0.62"/></proof>
    </goal>
    <goal name="VC div_sb_qr.199.18" expl="VC for div_sb_qr" proved="true">
    <proof prover="2"><result status="valid" time="0.06"/></proof>
@@ -6019,7 +6019,7 @@
          <proof prover="2"><result status="valid" time="0.26"/></proof>
          </goal>
          <goal name="VC div_sb_qr.234.0.0.1.0.0.0.18" proved="true">
-         <proof prover="2"><result status="valid" time="0.24"/></proof>
+         <proof prover="2"><result status="valid" time="0.18"/></proof>
          </goal>
          <goal name="VC div_sb_qr.234.0.0.1.0.0.0.19" proved="true">
          <proof prover="2"><result status="valid" time="0.23"/></proof>
@@ -6076,25 +6076,25 @@
          <proof prover="2"><result status="valid" time="0.20"/></proof>
          </goal>
          <goal name="VC div_sb_qr.234.0.0.1.0.0.0.37" proved="true">
-         <proof prover="2"><result status="valid" time="0.23"/></proof>
+         <proof prover="2"><result status="valid" time="0.18"/></proof>
          </goal>
          <goal name="VC div_sb_qr.234.0.0.1.0.0.0.38" proved="true">
-         <proof prover="2"><result status="valid" time="0.20"/></proof>
+         <proof prover="2"><result status="valid" time="0.23"/></proof>
          </goal>
          <goal name="VC div_sb_qr.234.0.0.1.0.0.0.39" proved="true">
-         <proof prover="2"><result status="valid" time="0.23"/></proof>
+         <proof prover="2"><result status="valid" time="0.24"/></proof>
          </goal>
          <goal name="VC div_sb_qr.234.0.0.1.0.0.0.40" proved="true">
          <proof prover="2"><result status="valid" time="0.20"/></proof>
          </goal>
          <goal name="VC div_sb_qr.234.0.0.1.0.0.0.41" proved="true">
-         <proof prover="2"><result status="valid" time="0.18"/></proof>
+         <proof prover="2"><result status="valid" time="0.23"/></proof>
          </goal>
          <goal name="VC div_sb_qr.234.0.0.1.0.0.0.42" proved="true">
-         <proof prover="2"><result status="valid" time="0.23"/></proof>
+         <proof prover="2"><result status="valid" time="0.20"/></proof>
          </goal>
          <goal name="VC div_sb_qr.234.0.0.1.0.0.0.43" proved="true">
-         <proof prover="2"><result status="valid" time="0.24"/></proof>
+         <proof prover="2"><result status="valid" time="0.23"/></proof>
          </goal>
          <goal name="VC div_sb_qr.234.0.0.1.0.0.0.44" proved="true">
          <proof prover="2"><result status="valid" time="0.18"/></proof>
@@ -6133,7 +6133,7 @@
          <proof prover="2"><result status="valid" time="0.25"/></proof>
          </goal>
          <goal name="VC div_sb_qr.234.0.0.1.0.0.0.56" proved="true">
-         <proof prover="2"><result status="valid" time="0.18"/></proof>
+         <proof prover="2"><result status="valid" time="0.24"/></proof>
          </goal>
          <goal name="VC div_sb_qr.234.0.0.1.0.0.0.57" proved="true">
          <proof prover="2"><result status="valid" time="0.18"/></proof>
@@ -6148,16 +6148,16 @@
          <proof prover="2"><result status="valid" time="0.25"/></proof>
          </goal>
          <goal name="VC div_sb_qr.234.0.0.1.0.0.0.61" proved="true">
-         <proof prover="2"><result status="valid" time="0.20"/></proof>
+         <proof prover="2"><result status="valid" time="0.28"/></proof>
          </goal>
          <goal name="VC div_sb_qr.234.0.0.1.0.0.0.62" proved="true">
-         <proof prover="2"><result status="valid" time="0.25"/></proof>
+         <proof prover="2"><result status="valid" time="0.18"/></proof>
          </goal>
          <goal name="VC div_sb_qr.234.0.0.1.0.0.0.63" proved="true">
-         <proof prover="2"><result status="valid" time="0.20"/></proof>
+         <proof prover="2"><result status="valid" time="0.22"/></proof>
          </goal>
          <goal name="VC div_sb_qr.234.0.0.1.0.0.0.64" proved="true">
-         <proof prover="2"><result status="valid" time="0.28"/></proof>
+         <proof prover="2"><result status="valid" time="0.24"/></proof>
          </goal>
          <goal name="VC div_sb_qr.234.0.0.1.0.0.0.65" proved="true">
          <proof prover="2"><result status="valid" time="0.27"/></proof>
@@ -6172,16 +6172,16 @@
          <proof prover="2"><result status="valid" time="0.19"/></proof>
          </goal>
          <goal name="VC div_sb_qr.234.0.0.1.0.0.0.69" proved="true">
-         <proof prover="2"><result status="valid" time="0.28"/></proof>
+         <proof prover="2"><result status="valid" time="0.20"/></proof>
          </goal>
          <goal name="VC div_sb_qr.234.0.0.1.0.0.0.70" proved="true">
-         <proof prover="2"><result status="valid" time="0.18"/></proof>
+         <proof prover="2"><result status="valid" time="0.25"/></proof>
          </goal>
          <goal name="VC div_sb_qr.234.0.0.1.0.0.0.71" proved="true">
-         <proof prover="2"><result status="valid" time="0.22"/></proof>
+         <proof prover="2"><result status="valid" time="0.20"/></proof>
          </goal>
          <goal name="VC div_sb_qr.234.0.0.1.0.0.0.72" proved="true">
-         <proof prover="2"><result status="valid" time="0.24"/></proof>
+         <proof prover="2"><result status="valid" time="0.28"/></proof>
          </goal>
          <goal name="VC div_sb_qr.234.0.0.1.0.0.0.73" proved="true">
          <proof prover="2"><result status="valid" time="0.24"/></proof>
@@ -7197,7 +7197,7 @@
    <proof prover="0"><result status="valid" time="0.07"/></proof>
    </goal>
    <goal name="VC wmpn_divrem_2.42.15" expl="VC for wmpn_divrem_2" proved="true">
-   <proof prover="1"><result status="valid" time="0.14"/></proof>
+   <proof prover="1"><result status="valid" time="0.26"/></proof>
    </goal>
    <goal name="VC wmpn_divrem_2.42.16" expl="VC for wmpn_divrem_2" proved="true">
    <proof prover="2"><result status="valid" time="0.08"/></proof>
@@ -7416,7 +7416,7 @@
    <proof prover="2"><result status="valid" time="0.06"/></proof>
    </goal>
    <goal name="VC div_qr.27.11" expl="VC for div_qr" proved="true">
-   <proof prover="0"><result status="valid" time="0.17"/></proof>
+   <proof prover="0"><result status="valid" time="0.05"/></proof>
    </goal>
    <goal name="VC div_qr.27.12" expl="VC for div_qr" proved="true">
    <proof prover="1"><result status="valid" time="0.16"/></proof>
@@ -7504,10 +7504,10 @@
    <proof prover="3" timelimit="1"><result status="valid" time="0.10"/></proof>
    </goal>
    <goal name="VC div_qr.39.8" expl="VC for div_qr" proved="true">
-   <proof prover="5" timelimit="1"><result status="valid" time="0.23" steps="190"/></proof>
+   <proof prover="5" timelimit="1"><result status="valid" time="0.41" steps="190"/></proof>
    </goal>
    <goal name="VC div_qr.39.9" expl="VC for div_qr" proved="true">
-   <proof prover="1"><result status="valid" time="0.51"/></proof>
+   <proof prover="1"><result status="valid" time="0.77"/></proof>
    </goal>
    <goal name="VC div_qr.39.10" expl="VC for div_qr" proved="true">
    <proof prover="2"><result status="valid" time="0.06"/></proof>
@@ -7878,7 +7878,7 @@
    <proof prover="2"><result status="valid" time="0.06"/></proof>
    </goal>
    <goal name="VC div_qr.65.3" expl="VC for div_qr" proved="true">
-   <proof prover="2"><result status="valid" time="0.12"/></proof>
+   <proof prover="2"><result status="valid" time="0.26"/></proof>
    </goal>
    <goal name="VC div_qr.65.4" expl="VC for div_qr" proved="true">
    <proof prover="2"><result status="valid" time="0.06"/></proof>
@@ -7895,7 +7895,7 @@
    <goal name="VC div_qr.65.8" expl="VC for div_qr" proved="true">
    <transf name="assert" proved="true" arg1="(power radix2 (sx - 1) * _qh &gt;= 0)">
     <goal name="VC div_qr.65.8.0" proved="true">
-    <proof prover="0"><result status="valid" time="2.42"/></proof>
+    <proof prover="0"><result status="valid" time="3.82"/></proof>
     <proof prover="1"><result status="valid" time="0.11"/></proof>
     </goal>
     <goal name="VC div_qr.65.8.1" expl="VC for div_qr" proved="true">
@@ -7922,13 +7922,13 @@
    <proof prover="2"><result status="valid" time="0.07"/></proof>
    </goal>
    <goal name="VC div_qr.65.15" expl="VC for div_qr" proved="true">
-   <proof prover="1"><result status="valid" time="0.32"/></proof>
+   <proof prover="1"><result status="valid" time="0.54"/></proof>
    </goal>
    <goal name="VC div_qr.65.16" expl="VC for div_qr" proved="true">
    <proof prover="2"><result status="valid" time="0.03"/></proof>
    </goal>
    <goal name="VC div_qr.65.17" expl="VC for div_qr" proved="true">
-   <proof prover="0"><result status="valid" time="0.40"/></proof>
+   <proof prover="0"><result status="valid" time="0.66"/></proof>
    </goal>
    <goal name="VC div_qr.65.18" expl="VC for div_qr" proved="true">
    <proof prover="2"><result status="valid" time="0.08"/></proof>
@@ -8023,16 +8023,16 @@
    <proof prover="2"><result status="valid" time="0.04"/></proof>
    </goal>
    <goal name="VC div_qr.81.10" expl="VC for div_qr" proved="true">
-   <proof prover="1"><result status="valid" time="1.12"/></proof>
+   <proof prover="1"><result status="valid" time="2.02"/></proof>
    </goal>
    <goal name="VC div_qr.81.11" expl="VC for div_qr" proved="true">
-   <proof prover="2"><result status="valid" time="0.77"/></proof>
+   <proof prover="2"><result status="valid" time="1.07"/></proof>
    </goal>
    <goal name="VC div_qr.81.12" expl="VC for div_qr" proved="true">
    <proof prover="5" timelimit="1"><result status="valid" time="0.09" steps="58"/></proof>
    </goal>
    <goal name="VC div_qr.81.13" expl="VC for div_qr" proved="true">
-   <proof prover="5" timelimit="1"><result status="valid" time="0.36" steps="321"/></proof>
+   <proof prover="5" timelimit="1"><result status="valid" time="0.60" steps="321"/></proof>
    </goal>
    <goal name="VC div_qr.81.14" expl="VC for div_qr" proved="true">
    <proof prover="2"><result status="valid" time="0.04"/></proof>
@@ -8364,7 +8364,7 @@
    <proof prover="5" timelimit="1"><result status="valid" time="0.16" steps="137"/></proof>
    </goal>
    <goal name="VC div_qr.121.4" expl="VC for div_qr" proved="true">
-   <proof prover="2"><result status="valid" time="0.18"/></proof>
+   <proof prover="2"><result status="valid" time="0.32"/></proof>
    </goal>
    <goal name="VC div_qr.121.5" expl="VC for div_qr" proved="true">
    <proof prover="0"><result status="valid" time="0.12"/></proof>
@@ -8563,7 +8563,7 @@
   <goal name="VC div_qr.135" expl="assertion" proved="true">
   <transf name="split_vc" proved="true" >
    <goal name="VC div_qr.135.0" expl="VC for div_qr" proved="true">
-   <proof prover="5" timelimit="1"><result status="valid" time="0.14" steps="84"/></proof>
+   <proof prover="5" timelimit="1"><result status="valid" time="0.30" steps="84"/></proof>
    </goal>
    <goal name="VC div_qr.135.1" expl="VC for div_qr" proved="true">
    <proof prover="2"><result status="valid" time="0.04"/></proof>
@@ -8584,7 +8584,7 @@
    <proof prover="2"><result status="valid" time="0.07"/></proof>
    </goal>
    <goal name="VC div_qr.135.7" expl="VC for div_qr" proved="true">
-   <proof prover="2"><result status="valid" time="0.18"/></proof>
+   <proof prover="2"><result status="valid" time="0.36"/></proof>
    </goal>
    <goal name="VC div_qr.135.8" expl="VC for div_qr" proved="true">
    <proof prover="3" timelimit="1"><result status="valid" time="0.06"/></proof>
@@ -8611,7 +8611,7 @@
    <proof prover="5" timelimit="1"><result status="valid" time="0.27" steps="85"/></proof>
    </goal>
    <goal name="VC div_qr.135.16" expl="VC for div_qr" proved="true">
-   <proof prover="0"><result status="valid" time="0.30"/></proof>
+   <proof prover="0"><result status="valid" time="0.48"/></proof>
    </goal>
    <goal name="VC div_qr.135.17" expl="VC for div_qr" proved="true">
    <proof prover="3" timelimit="1"><result status="valid" time="0.08"/></proof>
@@ -8651,7 +8651,7 @@
   <goal name="VC div_qr.136" expl="assertion" proved="true">
   <transf name="split_vc" proved="true" >
    <goal name="VC div_qr.136.0" expl="VC for div_qr" proved="true">
-   <proof prover="5" timelimit="1"><result status="valid" time="0.10" steps="85"/></proof>
+   <proof prover="5" timelimit="1"><result status="valid" time="0.25" steps="85"/></proof>
    </goal>
    <goal name="VC div_qr.136.1" expl="VC for div_qr" proved="true">
    <proof prover="3" timelimit="1"><result status="valid" time="0.08"/></proof>
@@ -8660,7 +8660,7 @@
    <proof prover="5" timelimit="1"><result status="valid" time="0.22" steps="87"/></proof>
    </goal>
    <goal name="VC div_qr.136.3" expl="VC for div_qr" proved="true">
-   <proof prover="5" timelimit="1"><result status="valid" time="0.22" steps="87"/></proof>
+   <proof prover="5" timelimit="1"><result status="valid" time="0.35" steps="87"/></proof>
    </goal>
    <goal name="VC div_qr.136.4" expl="VC for div_qr" proved="true">
    <proof prover="2"><result status="valid" time="0.06"/></proof>
@@ -8691,7 +8691,7 @@
    <proof prover="2"><result status="valid" time="0.04"/></proof>
    </goal>
    <goal name="VC div_qr.138.5" expl="VC for div_qr" proved="true">
-   <proof prover="2"><result status="valid" time="0.22"/></proof>
+   <proof prover="2"><result status="valid" time="0.41"/></proof>
    </goal>
    <goal name="VC div_qr.138.6" expl="VC for div_qr" proved="true">
    <proof prover="0"><result status="valid" time="0.02"/></proof>
@@ -8700,7 +8700,7 @@
    <proof prover="2"><result status="valid" time="0.04"/></proof>
    </goal>
    <goal name="VC div_qr.138.8" expl="VC for div_qr" proved="true">
-   <proof prover="1"><result status="valid" time="3.50"/></proof>
+   <proof prover="1"><result status="valid" time="2.88"/></proof>
    </goal>
    <goal name="VC div_qr.138.9" expl="VC for div_qr" proved="true">
    <proof prover="2"><result status="valid" time="0.03"/></proof>
diff --git a/examples/multiprecision/div/why3shapes.gz b/examples/multiprecision/div/why3shapes.gz
index 175aef236f18491bd306199fc1e6ab9f915457e9..c4104ce5c50d966b4fb1f4307cb788b7cd422f2e 100644
Binary files a/examples/multiprecision/div/why3shapes.gz and b/examples/multiprecision/div/why3shapes.gz differ
diff --git a/examples/multiprecision/logical/why3session.xml b/examples/multiprecision/logical/why3session.xml
index 931f73b1c59d88d9fa762e5282403be7d4cb350f..27ff7d67b3ea90785ebdb22e9d9e163a99162bd9 100644
--- a/examples/multiprecision/logical/why3session.xml
+++ b/examples/multiprecision/logical/why3session.xml
@@ -4,7 +4,7 @@
 <why3session shape_version="5">
 <prover id="0" name="Eprover" version="1.9.1-001" timelimit="5" steplimit="0" memlimit="2000"/>
 <prover id="1" name="CVC3" version="2.4.1" timelimit="5" steplimit="0" memlimit="2000"/>
-<prover id="2" name="CVC4" version="1.5" timelimit="5" steplimit="0" memlimit="1000"/>
+<prover id="2" name="CVC4" version="1.5" timelimit="1" steplimit="0" memlimit="1000"/>
 <prover id="3" name="Z3" version="4.5.0" timelimit="5" steplimit="0" memlimit="1000"/>
 <prover id="5" name="Alt-Ergo" version="2.0.0" timelimit="5" steplimit="0" memlimit="1000"/>
 <file name="../logical.mlw" proved="true">
@@ -45,14 +45,14 @@
    <proof prover="3"><result status="valid" time="0.02"/></proof>
    </goal>
    <goal name="VC lsld_ext.0.1" expl="VC for lsld_ext" proved="true">
-   <proof prover="2" timelimit="1"><result status="valid" time="0.05"/></proof>
+   <proof prover="2"><result status="valid" time="0.05"/></proof>
    </goal>
   </transf>
   </goal>
   <goal name="VC lsld_ext.1" expl="assertion" proved="true">
   <transf name="split_vc" proved="true" >
    <goal name="VC lsld_ext.1.0" expl="VC for lsld_ext" proved="true">
-   <proof prover="2" timelimit="1"><result status="valid" time="0.68"/></proof>
+   <proof prover="2"><result status="valid" time="0.68"/></proof>
    </goal>
    <goal name="VC lsld_ext.1.1" expl="VC for lsld_ext" proved="true">
    <proof prover="3" timelimit="1"><result status="valid" time="0.06"/></proof>
@@ -68,17 +68,17 @@
    <proof prover="3"><result status="valid" time="0.05"/></proof>
    </goal>
    <goal name="VC lsld_ext.2.2" expl="VC for lsld_ext" proved="true">
-   <proof prover="2" timelimit="1"><result status="valid" time="0.16"/></proof>
+   <proof prover="2"><result status="valid" time="0.16"/></proof>
    </goal>
    <goal name="VC lsld_ext.2.3" expl="VC for lsld_ext" proved="true">
-   <proof prover="2" timelimit="1"><result status="valid" time="0.06"/></proof>
+   <proof prover="2"><result status="valid" time="0.06"/></proof>
    </goal>
   </transf>
   </goal>
   <goal name="VC lsld_ext.3" expl="assertion" proved="true">
   <transf name="split_vc" proved="true" >
    <goal name="VC lsld_ext.3.0" expl="VC for lsld_ext" proved="true">
-   <proof prover="2" timelimit="1"><result status="valid" time="0.05"/></proof>
+   <proof prover="2"><result status="valid" time="0.05"/></proof>
    </goal>
    <goal name="VC lsld_ext.3.1" expl="VC for lsld_ext" proved="true">
    <proof prover="0"><result status="valid" time="0.18"/></proof>
@@ -87,7 +87,7 @@
    <proof prover="3" timelimit="1"><result status="valid" time="0.06"/></proof>
    </goal>
    <goal name="VC lsld_ext.3.3" expl="VC for lsld_ext" proved="true">
-   <proof prover="2" timelimit="1"><result status="valid" time="0.09"/></proof>
+   <proof prover="2"><result status="valid" time="0.09"/></proof>
    </goal>
   </transf>
   </goal>
@@ -116,7 +116,7 @@
   <goal name="VC lsld_ext.7" expl="assertion" proved="true">
   <transf name="split_vc" proved="true" >
    <goal name="VC lsld_ext.7.0" expl="VC for lsld_ext" proved="true">
-   <proof prover="2" timelimit="1"><result status="valid" time="0.05"/></proof>
+   <proof prover="2"><result status="valid" time="0.05"/></proof>
    </goal>
    <goal name="VC lsld_ext.7.1" expl="VC for lsld_ext" proved="true">
    <proof prover="5" timelimit="1"><result status="valid" time="0.05" steps="20"/></proof>
@@ -128,13 +128,13 @@
    <proof prover="5" timelimit="1"><result status="valid" time="0.04" steps="21"/></proof>
    </goal>
    <goal name="VC lsld_ext.7.4" expl="VC for lsld_ext" proved="true">
-   <proof prover="2" timelimit="1"><result status="valid" time="0.06"/></proof>
+   <proof prover="2"><result status="valid" time="0.06"/></proof>
    </goal>
    <goal name="VC lsld_ext.7.5" expl="VC for lsld_ext" proved="true">
    <proof prover="3" timelimit="1"><result status="valid" time="0.05"/></proof>
    </goal>
    <goal name="VC lsld_ext.7.6" expl="VC for lsld_ext" proved="true">
-   <proof prover="2" timelimit="1"><result status="valid" time="0.11"/></proof>
+   <proof prover="2"><result status="valid" time="0.11"/></proof>
    </goal>
   </transf>
   </goal>
@@ -144,34 +144,34 @@
    <proof prover="5" timelimit="1"><result status="valid" time="0.06" steps="22"/></proof>
    </goal>
    <goal name="VC lsld_ext.8.1" expl="VC for lsld_ext" proved="true">
-   <proof prover="2" timelimit="1"><result status="valid" time="0.05"/></proof>
+   <proof prover="2"><result status="valid" time="0.05"/></proof>
    </goal>
    <goal name="VC lsld_ext.8.2" expl="VC for lsld_ext" proved="true">
-   <proof prover="2" timelimit="1"><result status="valid" time="0.06"/></proof>
+   <proof prover="2"><result status="valid" time="0.06"/></proof>
    </goal>
    <goal name="VC lsld_ext.8.3" expl="VC for lsld_ext" proved="true">
-   <proof prover="2" timelimit="1"><result status="valid" time="0.06"/></proof>
+   <proof prover="2"><result status="valid" time="0.06"/></proof>
    </goal>
    <goal name="VC lsld_ext.8.4" expl="VC for lsld_ext" proved="true">
-   <proof prover="2" timelimit="1"><result status="valid" time="0.09"/></proof>
+   <proof prover="2"><result status="valid" time="0.09"/></proof>
    </goal>
    <goal name="VC lsld_ext.8.5" expl="VC for lsld_ext" proved="true">
    <proof prover="1"><result status="valid" time="0.08"/></proof>
    </goal>
    <goal name="VC lsld_ext.8.6" expl="VC for lsld_ext" proved="true">
-   <proof prover="2" timelimit="1"><result status="valid" time="0.09"/></proof>
+   <proof prover="2"><result status="valid" time="0.09"/></proof>
    </goal>
    <goal name="VC lsld_ext.8.7" expl="VC for lsld_ext" proved="true">
    <proof prover="3" timelimit="1"><result status="valid" time="0.07"/></proof>
    </goal>
    <goal name="VC lsld_ext.8.8" expl="VC for lsld_ext" proved="true">
-   <proof prover="2" timelimit="1"><result status="valid" time="0.05"/></proof>
+   <proof prover="2"><result status="valid" time="0.05"/></proof>
    </goal>
    <goal name="VC lsld_ext.8.9" expl="VC for lsld_ext" proved="true">
-   <proof prover="2" timelimit="1"><result status="valid" time="0.06"/></proof>
+   <proof prover="2"><result status="valid" time="0.06"/></proof>
    </goal>
    <goal name="VC lsld_ext.8.10" expl="VC for lsld_ext" proved="true">
-   <proof prover="2" timelimit="1"><result status="valid" time="0.10"/></proof>
+   <proof prover="2"><result status="valid" time="0.10"/></proof>
    </goal>
   </transf>
   </goal>
@@ -196,7 +196,7 @@
    <proof prover="1"><result status="valid" time="0.04"/></proof>
    </goal>
    <goal name="VC lsld_ext.9.6" expl="VC for lsld_ext" proved="true">
-   <proof prover="2" timelimit="1"><result status="valid" time="0.06"/></proof>
+   <proof prover="2"><result status="valid" time="0.06"/></proof>
    </goal>
    <goal name="VC lsld_ext.9.7" expl="VC for lsld_ext" proved="true">
    <proof prover="0"><result status="valid" time="0.02"/></proof>
@@ -209,7 +209,7 @@
    <proof prover="5" timelimit="1"><result status="valid" time="0.01" steps="15"/></proof>
    </goal>
    <goal name="VC lsld_ext.10.1" expl="postcondition" proved="true">
-   <proof prover="2" timelimit="1"><result status="valid" time="0.05"/></proof>
+   <proof prover="2"><result status="valid" time="0.05"/></proof>
    </goal>
   </transf>
   </goal>
@@ -224,7 +224,7 @@
   </transf>
   </goal>
   <goal name="VC lsld_ext.12" expl="postcondition" proved="true">
-  <proof prover="2" timelimit="1"><result status="valid" time="0.06"/></proof>
+  <proof prover="2"><result status="valid" time="0.06"/></proof>
   </goal>
   <goal name="VC lsld_ext.13" expl="postcondition" proved="true">
   <proof prover="5"><result status="valid" time="0.28" steps="50"/></proof>
@@ -303,11 +303,11 @@
   </goal>
   <goal name="VC wmpn_lshift.2" expl="precondition" proved="true">
   <proof prover="1" memlimit="1000"><result status="valid" time="0.06"/></proof>
-  <proof prover="2"><result status="valid" time="0.06"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.06"/></proof>
   <proof prover="5"><result status="valid" time="0.03" steps="31"/></proof>
   </goal>
   <goal name="VC wmpn_lshift.3" expl="precondition" proved="true">
-  <proof prover="2" timelimit="1"><result status="valid" time="0.13"/></proof>
+  <proof prover="2"><result status="valid" time="0.13"/></proof>
   </goal>
   <goal name="VC wmpn_lshift.4" expl="precondition" proved="true">
   <proof prover="5"><result status="valid" time="0.04" steps="28"/></proof>
@@ -335,7 +335,7 @@
      <proof prover="5" timelimit="1"><result status="valid" time="0.02" steps="37"/></proof>
      </goal>
      <goal name="VC wmpn_lshift.9.0.0.1" proved="true">
-     <proof prover="2" timelimit="1"><result status="valid" time="0.25"/></proof>
+     <proof prover="2"><result status="valid" time="0.25"/></proof>
      </goal>
     </transf>
     </goal>
@@ -353,7 +353,7 @@
   <proof prover="5"><result status="valid" time="0.05" steps="36"/></proof>
   </goal>
   <goal name="VC wmpn_lshift.12" expl="loop invariant init" proved="true">
-  <proof prover="2"><result status="valid" time="0.07"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.07"/></proof>
   </goal>
   <goal name="VC wmpn_lshift.13" expl="loop invariant init" proved="true">
   <proof prover="3"><result status="valid" time="0.02"/></proof>
@@ -362,7 +362,7 @@
   <proof prover="3"><result status="valid" time="0.02"/></proof>
   </goal>
   <goal name="VC wmpn_lshift.15" expl="loop invariant init" proved="true">
-  <proof prover="2"><result status="valid" time="0.10"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.10"/></proof>
   <proof prover="3"><result status="valid" time="0.06"/></proof>
   </goal>
   <goal name="VC wmpn_lshift.16" expl="loop invariant init" proved="true">
@@ -385,10 +385,10 @@
   <proof prover="3"><result status="valid" time="0.05"/></proof>
   </goal>
   <goal name="VC wmpn_lshift.22" expl="integer overflow" proved="true">
-  <proof prover="2" timelimit="1"><result status="valid" time="0.20"/></proof>
+  <proof prover="2"><result status="valid" time="0.20"/></proof>
   </goal>
   <goal name="VC wmpn_lshift.23" expl="precondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.07"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.07"/></proof>
   </goal>
   <goal name="VC wmpn_lshift.24" expl="precondition" proved="true">
   <proof prover="3"><result status="valid" time="0.08"/></proof>
@@ -397,7 +397,7 @@
   <proof prover="3"><result status="valid" time="0.05"/></proof>
   </goal>
   <goal name="VC wmpn_lshift.26" expl="precondition" proved="true">
-  <proof prover="2" timelimit="1"><result status="valid" time="0.21"/></proof>
+  <proof prover="2"><result status="valid" time="0.21"/></proof>
   </goal>
   <goal name="VC wmpn_lshift.27" expl="precondition" proved="true">
   <proof prover="3"><result status="valid" time="0.25"/></proof>
@@ -406,7 +406,7 @@
   <proof prover="3"><result status="valid" time="0.03"/></proof>
   </goal>
   <goal name="VC wmpn_lshift.29" expl="precondition" proved="true">
-  <proof prover="2" timelimit="1"><result status="valid" time="0.11"/></proof>
+  <proof prover="2"><result status="valid" time="0.11"/></proof>
   </goal>
   <goal name="VC wmpn_lshift.30" expl="precondition" proved="true">
   <proof prover="3"><result status="valid" time="0.05"/></proof>
@@ -417,10 +417,10 @@
    <proof prover="0"><result status="valid" time="0.02"/></proof>
    </goal>
    <goal name="VC wmpn_lshift.31.1" expl="VC for wmpn_lshift" proved="true">
-   <proof prover="2" timelimit="1"><result status="valid" time="0.22"/></proof>
+   <proof prover="2"><result status="valid" time="0.22"/></proof>
    </goal>
    <goal name="VC wmpn_lshift.31.2" expl="VC for wmpn_lshift" proved="true">
-   <proof prover="2" timelimit="1"><result status="valid" time="0.10"/></proof>
+   <proof prover="2"><result status="valid" time="0.10"/></proof>
    </goal>
    <goal name="VC wmpn_lshift.31.3" expl="VC for wmpn_lshift" proved="true">
    <proof prover="3"><result status="valid" time="0.01"/></proof>
@@ -438,7 +438,7 @@
    <proof prover="0"><result status="valid" time="0.06"/></proof>
    </goal>
    <goal name="VC wmpn_lshift.31.8" expl="VC for wmpn_lshift" proved="true">
-   <proof prover="2" timelimit="1"><result status="valid" time="0.12"/></proof>
+   <proof prover="2"><result status="valid" time="0.12"/></proof>
    </goal>
    <goal name="VC wmpn_lshift.31.9" expl="VC for wmpn_lshift" proved="true">
    <proof prover="3"><result status="valid" time="0.02"/></proof>
@@ -483,15 +483,15 @@
    </transf>
    </goal>
    <goal name="VC wmpn_lshift.31.19" expl="VC for wmpn_lshift" proved="true">
-   <proof prover="2" timelimit="1"><result status="valid" time="0.18"/></proof>
+   <proof prover="2"><result status="valid" time="0.18"/></proof>
    </goal>
   </transf>
   </goal>
   <goal name="VC wmpn_lshift.32" expl="loop variant decrease" proved="true">
-  <proof prover="2"><result status="valid" time="0.20"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.20"/></proof>
   </goal>
   <goal name="VC wmpn_lshift.33" expl="loop invariant preservation" proved="true">
-  <proof prover="2"><result status="valid" time="0.17"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.17"/></proof>
   </goal>
   <goal name="VC wmpn_lshift.34" expl="loop invariant preservation" proved="true">
   <transf name="split_goal_right" proved="true" >
@@ -501,19 +501,19 @@
   </transf>
   </goal>
   <goal name="VC wmpn_lshift.35" expl="loop invariant preservation" proved="true">
-  <proof prover="2" timelimit="1"><result status="valid" time="0.19"/></proof>
+  <proof prover="2"><result status="valid" time="0.19"/></proof>
   </goal>
   <goal name="VC wmpn_lshift.36" expl="loop invariant preservation" proved="true">
-  <proof prover="2" timelimit="1"><result status="valid" time="0.19"/></proof>
+  <proof prover="2"><result status="valid" time="0.19"/></proof>
   </goal>
   <goal name="VC wmpn_lshift.37" expl="loop invariant preservation" proved="true">
   <proof prover="0"><result status="valid" time="0.03"/></proof>
   </goal>
   <goal name="VC wmpn_lshift.38" expl="loop invariant preservation" proved="true">
-  <proof prover="2" timelimit="1"><result status="valid" time="0.10"/></proof>
+  <proof prover="2"><result status="valid" time="0.10"/></proof>
   </goal>
   <goal name="VC wmpn_lshift.39" expl="loop invariant preservation" proved="true">
-  <proof prover="2" timelimit="1"><result status="valid" time="0.13"/></proof>
+  <proof prover="2"><result status="valid" time="0.13"/></proof>
   </goal>
   <goal name="VC wmpn_lshift.40" expl="loop invariant preservation" proved="true">
   <proof prover="3"><result status="valid" time="0.02"/></proof>
@@ -557,7 +557,7 @@
  <goal name="VC wmpn_rshift" expl="VC for wmpn_rshift" proved="true">
  <transf name="split_goal_right" proved="true" >
   <goal name="VC wmpn_rshift.0" expl="integer overflow" proved="true">
-  <proof prover="2"><result status="valid" time="0.12"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.12"/></proof>
   </goal>
   <goal name="VC wmpn_rshift.1" expl="integer overflow" proved="true">
   <proof prover="3"><result status="valid" time="0.04"/></proof>
@@ -573,11 +573,11 @@
   </transf>
   </goal>
   <goal name="VC wmpn_rshift.4" expl="precondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.08"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.08"/></proof>
   <proof prover="3"><result status="valid" time="0.01"/></proof>
   </goal>
   <goal name="VC wmpn_rshift.5" expl="precondition" proved="true">
-  <proof prover="2" timelimit="1"><result status="valid" time="0.14"/></proof>
+  <proof prover="2"><result status="valid" time="0.14"/></proof>
   </goal>
   <goal name="VC wmpn_rshift.6" expl="precondition" proved="true">
   <proof prover="3"><result status="valid" time="0.03"/></proof>
@@ -592,7 +592,7 @@
   <proof prover="3"><result status="valid" time="0.01"/></proof>
   </goal>
   <goal name="VC wmpn_rshift.10" expl="loop invariant init" proved="true">
-  <proof prover="2" timelimit="1"><result status="valid" time="0.07"/></proof>
+  <proof prover="2"><result status="valid" time="0.07"/></proof>
   </goal>
   <goal name="VC wmpn_rshift.11" expl="loop invariant init" proved="true">
   <proof prover="3"><result status="valid" time="0.04"/></proof>
@@ -619,20 +619,20 @@
   <proof prover="3"><result status="valid" time="0.02"/></proof>
   </goal>
   <goal name="VC wmpn_rshift.19" expl="loop invariant init" proved="true">
-  <proof prover="2"><result status="valid" time="0.05"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.05"/></proof>
   <proof prover="3"><result status="valid" time="0.04"/></proof>
   </goal>
   <goal name="VC wmpn_rshift.20" expl="precondition" proved="true">
-  <proof prover="2" memlimit="2000"><result status="valid" time="0.16"/></proof>
+  <proof prover="2" timelimit="5" memlimit="2000"><result status="valid" time="0.16"/></proof>
   </goal>
   <goal name="VC wmpn_rshift.21" expl="precondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.18"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.18"/></proof>
   </goal>
   <goal name="VC wmpn_rshift.22" expl="precondition" proved="true">
-  <proof prover="2" timelimit="1"><result status="valid" time="0.08"/></proof>
+  <proof prover="2"><result status="valid" time="0.08"/></proof>
   </goal>
   <goal name="VC wmpn_rshift.23" expl="assertion" proved="true">
-  <proof prover="2" memlimit="2000"><result status="valid" time="0.10"/></proof>
+  <proof prover="2" timelimit="5" memlimit="2000"><result status="valid" time="0.10"/></proof>
   </goal>
   <goal name="VC wmpn_rshift.24" expl="integer overflow" proved="true">
   <transf name="split_goal_right" proved="true" >
@@ -642,29 +642,29 @@
   </transf>
   </goal>
   <goal name="VC wmpn_rshift.25" expl="precondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.13"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.13"/></proof>
   <proof prover="3"><result status="valid" time="0.03"/></proof>
   </goal>
   <goal name="VC wmpn_rshift.26" expl="precondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.08"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.08"/></proof>
   <proof prover="3"><result status="valid" time="0.06"/></proof>
   </goal>
   <goal name="VC wmpn_rshift.27" expl="integer overflow" proved="true">
   <proof prover="0" memlimit="1000"><result status="valid" time="0.03"/></proof>
-  <proof prover="2"><result status="valid" time="0.14"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.14"/></proof>
   <proof prover="3"><result status="valid" time="0.05"/></proof>
   </goal>
   <goal name="VC wmpn_rshift.28" expl="precondition" proved="true">
-  <proof prover="2" timelimit="1"><result status="valid" time="0.22"/></proof>
+  <proof prover="2"><result status="valid" time="0.22"/></proof>
   </goal>
   <goal name="VC wmpn_rshift.29" expl="assertion" proved="true">
   <proof prover="0"><result status="valid" time="0.31"/></proof>
   </goal>
   <goal name="VC wmpn_rshift.30" expl="precondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.06"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.06"/></proof>
   </goal>
   <goal name="VC wmpn_rshift.31" expl="integer overflow" proved="true">
-  <proof prover="2" timelimit="1"><result status="valid" time="0.24"/></proof>
+  <proof prover="2"><result status="valid" time="0.24"/></proof>
   </goal>
   <goal name="VC wmpn_rshift.32" expl="precondition" proved="true">
   <proof prover="3"><result status="valid" time="0.02"/></proof>
@@ -681,7 +681,7 @@
    <proof prover="1"><result status="valid" time="0.16"/></proof>
    </goal>
    <goal name="VC wmpn_rshift.34.2" expl="VC for wmpn_rshift" proved="true">
-   <proof prover="2" timelimit="1"><result status="valid" time="0.08"/></proof>
+   <proof prover="2"><result status="valid" time="0.08"/></proof>
    </goal>
    <goal name="VC wmpn_rshift.34.3" expl="VC for wmpn_rshift" proved="true">
    <proof prover="1"><result status="valid" time="0.17"/></proof>
@@ -698,11 +698,11 @@
      <proof prover="0"><result status="valid" time="0.30"/></proof>
      </goal>
      <goal name="VC wmpn_rshift.35.0.0.1" proved="true">
-     <proof prover="2" timelimit="1"><result status="valid" time="0.26"/></proof>
+     <proof prover="2"><result status="valid" time="0.26"/></proof>
      <proof prover="3"><result status="valid" time="0.38"/></proof>
      </goal>
      <goal name="VC wmpn_rshift.35.0.0.2" proved="true">
-     <proof prover="2" timelimit="1"><result status="valid" time="0.43"/></proof>
+     <proof prover="2"><result status="valid" time="0.43"/></proof>
      <proof prover="3"><result status="valid" time="0.38"/></proof>
      </goal>
     </transf>
@@ -719,7 +719,7 @@
   </transf>
   </goal>
   <goal name="VC wmpn_rshift.37" expl="precondition" proved="true">
-  <proof prover="2" timelimit="1"><result status="valid" time="0.21"/></proof>
+  <proof prover="2"><result status="valid" time="0.21"/></proof>
   </goal>
   <goal name="VC wmpn_rshift.38" expl="loop variant decrease" proved="true">
   <proof prover="3"><result status="valid" time="0.05"/></proof>
@@ -757,13 +757,13 @@
   </goal>
   <goal name="VC wmpn_rshift.43" expl="loop invariant preservation" proved="true">
   <proof prover="0"><result status="valid" time="0.02"/></proof>
-  <proof prover="2" memlimit="2000"><result status="valid" time="0.17"/></proof>
+  <proof prover="2" timelimit="5" memlimit="2000"><result status="valid" time="0.17"/></proof>
   </goal>
   <goal name="VC wmpn_rshift.44" expl="loop invariant preservation" proved="true">
-  <proof prover="2"><result status="valid" time="0.19"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.19"/></proof>
   </goal>
   <goal name="VC wmpn_rshift.45" expl="loop invariant preservation" proved="true">
-  <proof prover="2"><result status="valid" time="0.20"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.20"/></proof>
   <proof prover="3"><result status="valid" time="0.03"/></proof>
   </goal>
   <goal name="VC wmpn_rshift.46" expl="loop invariant preservation" proved="true">
@@ -774,7 +774,7 @@
   </goal>
   <goal name="VC wmpn_rshift.48" expl="loop invariant preservation" proved="true">
   <proof prover="0"><result status="valid" time="0.12"/></proof>
-  <proof prover="2" memlimit="2000"><result status="valid" time="0.10"/></proof>
+  <proof prover="2" timelimit="5" memlimit="2000"><result status="valid" time="0.10"/></proof>
   <proof prover="3" memlimit="2000"><result status="valid" time="0.03"/></proof>
   </goal>
   <goal name="VC wmpn_rshift.49" expl="loop invariant preservation" proved="true">
@@ -784,13 +784,13 @@
   <proof prover="3"><result status="valid" time="0.03"/></proof>
   </goal>
   <goal name="VC wmpn_rshift.51" expl="loop invariant preservation" proved="true">
-  <proof prover="2"><result status="valid" time="0.08"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.08"/></proof>
   </goal>
   <goal name="VC wmpn_rshift.52" expl="assertion" proved="true">
   <proof prover="0"><result status="valid" time="0.10"/></proof>
   </goal>
   <goal name="VC wmpn_rshift.53" expl="precondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.04"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.04"/></proof>
   <proof prover="3"><result status="valid" time="0.01"/></proof>
   </goal>
   <goal name="VC wmpn_rshift.54" expl="assertion" proved="true">
@@ -803,13 +803,13 @@
   <proof prover="0"><result status="valid" time="0.15"/></proof>
   </goal>
   <goal name="VC wmpn_rshift.57" expl="precondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.09"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.09"/></proof>
   </goal>
   <goal name="VC wmpn_rshift.58" expl="assertion" proved="true">
-  <proof prover="2" memlimit="2000"><result status="valid" time="0.26"/></proof>
+  <proof prover="2" timelimit="5" memlimit="2000"><result status="valid" time="0.26"/></proof>
   </goal>
   <goal name="VC wmpn_rshift.59" expl="precondition" proved="true">
-  <proof prover="2" timelimit="1"><result status="valid" time="0.10"/></proof>
+  <proof prover="2"><result status="valid" time="0.10"/></proof>
   </goal>
   <goal name="VC wmpn_rshift.60" expl="assertion" proved="true">
   <transf name="split_vc" proved="true" >
@@ -817,7 +817,7 @@
    <proof prover="0"><result status="valid" time="0.11"/></proof>
    </goal>
    <goal name="VC wmpn_rshift.60.1" expl="VC for wmpn_rshift" proved="true">
-   <proof prover="0"><result status="valid" time="0.42"/></proof>
+   <proof prover="0"><result status="valid" time="0.75"/></proof>
    </goal>
   </transf>
   </goal>
@@ -838,7 +838,7 @@
      </transf>
      </goal>
      <goal name="VC wmpn_rshift.62.0.0.1" proved="true">
-     <proof prover="2" timelimit="1"><result status="valid" time="0.06"/></proof>
+     <proof prover="2"><result status="valid" time="0.06"/></proof>
      </goal>
     </transf>
     </goal>
@@ -851,22 +851,22 @@
  <goal name="VC wmpn_lshift_in_place" expl="VC for wmpn_lshift_in_place" proved="true">
  <transf name="split_vc" proved="true" >
   <goal name="VC wmpn_lshift_in_place.0" expl="integer overflow" proved="true">
-  <proof prover="2"><result status="valid" time="0.06"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.06"/></proof>
   </goal>
   <goal name="VC wmpn_lshift_in_place.1" expl="precondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.07"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.07"/></proof>
   </goal>
   <goal name="VC wmpn_lshift_in_place.2" expl="precondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.09"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.09"/></proof>
   </goal>
   <goal name="VC wmpn_lshift_in_place.3" expl="precondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.05"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.05"/></proof>
   </goal>
   <goal name="VC wmpn_lshift_in_place.4" expl="precondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.06"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.06"/></proof>
   </goal>
   <goal name="VC wmpn_lshift_in_place.5" expl="loop invariant init" proved="true">
-  <proof prover="2"><result status="valid" time="0.08"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.08"/></proof>
   </goal>
   <goal name="VC wmpn_lshift_in_place.6" expl="loop invariant init" proved="true">
   <proof prover="1"><result status="valid" time="2.40"/></proof>
@@ -875,119 +875,133 @@
   <proof prover="5" timelimit="1"><result status="valid" time="0.05" steps="35"/></proof>
   </goal>
   <goal name="VC wmpn_lshift_in_place.8" expl="loop invariant init" proved="true">
-  <proof prover="2"><result status="valid" time="0.05"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.05"/></proof>
   </goal>
   <goal name="VC wmpn_lshift_in_place.9" expl="loop invariant init" proved="true">
-  <proof prover="2"><result status="valid" time="0.03"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.03"/></proof>
   </goal>
   <goal name="VC wmpn_lshift_in_place.10" expl="loop invariant init" proved="true">
-  <proof prover="2"><result status="valid" time="0.04"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.04"/></proof>
   </goal>
   <goal name="VC wmpn_lshift_in_place.11" expl="loop invariant init" proved="true">
-  <proof prover="2"><result status="valid" time="0.03"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.03"/></proof>
   </goal>
   <goal name="VC wmpn_lshift_in_place.12" expl="loop invariant init" proved="true">
-  <proof prover="2"><result status="valid" time="0.04"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.04"/></proof>
   </goal>
   <goal name="VC wmpn_lshift_in_place.13" expl="loop invariant init" proved="true">
-  <proof prover="2"><result status="valid" time="0.05"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.05"/></proof>
   </goal>
   <goal name="VC wmpn_lshift_in_place.14" expl="loop invariant init" proved="true">
-  <proof prover="2"><result status="valid" time="0.04"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.04"/></proof>
   </goal>
   <goal name="VC wmpn_lshift_in_place.15" expl="loop invariant init" proved="true">
-  <proof prover="2"><result status="valid" time="0.05"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.05"/></proof>
   </goal>
   <goal name="VC wmpn_lshift_in_place.16" expl="loop invariant init" proved="true">
-  <proof prover="2"><result status="valid" time="0.05"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.05"/></proof>
   </goal>
   <goal name="VC wmpn_lshift_in_place.17" expl="loop invariant init" proved="true">
-  <proof prover="2"><result status="valid" time="0.05"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.05"/></proof>
   </goal>
   <goal name="VC wmpn_lshift_in_place.18" expl="loop invariant init" proved="true">
-  <proof prover="2"><result status="valid" time="0.05"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.05"/></proof>
   </goal>
   <goal name="VC wmpn_lshift_in_place.19" expl="precondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.14"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.14"/></proof>
   </goal>
   <goal name="VC wmpn_lshift_in_place.20" expl="precondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.08"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.08"/></proof>
   </goal>
   <goal name="VC wmpn_lshift_in_place.21" expl="precondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.08"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.08"/></proof>
   </goal>
   <goal name="VC wmpn_lshift_in_place.22" expl="precondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.08"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.08"/></proof>
   </goal>
   <goal name="VC wmpn_lshift_in_place.23" expl="assertion" proved="true">
   <transf name="split_vc" proved="true" >
    <goal name="VC wmpn_lshift_in_place.23.0" expl="assertion" proved="true">
-   <proof prover="2" timelimit="1"><result status="valid" time="0.12"/></proof>
+   <proof prover="2"><result status="valid" time="0.12"/></proof>
    </goal>
    <goal name="VC wmpn_lshift_in_place.23.1" expl="VC for wmpn_lshift_in_place" proved="true">
-   <proof prover="2" timelimit="1"><result status="valid" time="0.12"/></proof>
+   <proof prover="2"><result status="valid" time="0.12"/></proof>
    </goal>
    <goal name="VC wmpn_lshift_in_place.23.2" expl="VC for wmpn_lshift_in_place" proved="true">
-   <proof prover="2" timelimit="1"><result status="valid" time="0.11"/></proof>
+   <proof prover="2"><result status="valid" time="0.11"/></proof>
    </goal>
    <goal name="VC wmpn_lshift_in_place.23.3" expl="VC for wmpn_lshift_in_place" proved="true">
-   <proof prover="5" timelimit="1"><result status="valid" time="0.12" steps="87"/></proof>
+   <proof prover="5" timelimit="1"><result status="valid" time="0.12" steps="85"/></proof>
    </goal>
   </transf>
   </goal>
   <goal name="VC wmpn_lshift_in_place.24" expl="precondition" proved="true">
   <transf name="split_vc" proved="true" >
    <goal name="VC wmpn_lshift_in_place.24.0" expl="precondition" proved="true">
-   <proof prover="2"><result status="valid" time="0.07"/></proof>
+   <proof prover="2" timelimit="5"><result status="valid" time="0.07"/></proof>
    </goal>
    <goal name="VC wmpn_lshift_in_place.24.1" expl="precondition" proved="true">
-   <proof prover="2"><result status="valid" time="0.05"/></proof>
+   <proof prover="2" timelimit="5"><result status="valid" time="0.05"/></proof>
    </goal>
   </transf>
   </goal>
   <goal name="VC wmpn_lshift_in_place.25" expl="assertion" proved="true">
-  <proof prover="2"><result status="valid" time="0.05"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.05"/></proof>
   </goal>
   <goal name="VC wmpn_lshift_in_place.26" expl="integer overflow" proved="true">
-  <proof prover="2"><result status="valid" time="0.05"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.16"/></proof>
   </goal>
   <goal name="VC wmpn_lshift_in_place.27" expl="precondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.13"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.13"/></proof>
   </goal>
   <goal name="VC wmpn_lshift_in_place.28" expl="precondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.03"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.06"/></proof>
   </goal>
   <goal name="VC wmpn_lshift_in_place.29" expl="precondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.03"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.03"/></proof>
   </goal>
   <goal name="VC wmpn_lshift_in_place.30" expl="precondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.06"/></proof>
+  <proof prover="0"><result status="valid" time="0.05"/></proof>
   </goal>
   <goal name="VC wmpn_lshift_in_place.31" expl="integer overflow" proved="true">
-  <proof prover="2"><result status="valid" time="0.16"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.16"/></proof>
   </goal>
   <goal name="VC wmpn_lshift_in_place.32" expl="precondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.07"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.07"/></proof>
   </goal>
   <goal name="VC wmpn_lshift_in_place.33" expl="assertion" proved="true">
-  <proof prover="0"><result status="valid" time="0.32"/></proof>
+  <transf name="assert" proved="true" arg1="(pelts x = pelts xp)">
+   <goal name="VC wmpn_lshift_in_place.33.0" proved="true">
+   <proof prover="0"><result status="valid" time="0.01"/></proof>
+   </goal>
+   <goal name="VC wmpn_lshift_in_place.33.1" expl="assertion" proved="true">
+   <transf name="assert" proved="true" arg1="(pelts x1 = pelts xp1)">
+    <goal name="VC wmpn_lshift_in_place.33.1.0" proved="true">
+    <proof prover="0"><result status="valid" time="0.01"/></proof>
+    </goal>
+    <goal name="VC wmpn_lshift_in_place.33.1.1" expl="assertion" proved="true">
+    <proof prover="1"><result status="valid" time="0.06"/></proof>
+    </goal>
+   </transf>
+   </goal>
+  </transf>
   </goal>
   <goal name="VC wmpn_lshift_in_place.34" expl="assertion" proved="true">
   <proof prover="0"><result status="valid" time="0.04"/></proof>
   </goal>
   <goal name="VC wmpn_lshift_in_place.35" expl="precondition" proved="true">
-  <proof prover="2" timelimit="1"><result status="valid" time="0.07"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.08"/></proof>
   </goal>
   <goal name="VC wmpn_lshift_in_place.36" expl="precondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.06"/></proof>
+  <proof prover="2"><result status="valid" time="0.07"/></proof>
   </goal>
   <goal name="VC wmpn_lshift_in_place.37" expl="assertion" proved="true">
   <transf name="replace" proved="true" arg1="(power radix2 2)" arg2="(radix2 * radix2)">
    <goal name="VC wmpn_lshift_in_place.37.0" expl="assertion" proved="true">
-   <proof prover="2" timelimit="1"><result status="valid" time="0.08"/></proof>
+   <proof prover="2"><result status="valid" time="0.08"/></proof>
    </goal>
    <goal name="VC wmpn_lshift_in_place.37.1" proved="true">
-   <proof prover="2"><result status="valid" time="0.14"/></proof>
+   <proof prover="2" timelimit="5"><result status="valid" time="0.14"/></proof>
    </goal>
   </transf>
   </goal>
@@ -1000,10 +1014,10 @@
    <proof prover="1"><result status="valid" time="0.08"/></proof>
    </goal>
    <goal name="VC wmpn_lshift_in_place.38.2" expl="assertion" proved="true">
-   <proof prover="0"><result status="valid" time="0.35"/></proof>
+   <proof prover="0"><result status="valid" time="0.50"/></proof>
    </goal>
    <goal name="VC wmpn_lshift_in_place.38.3" expl="VC for wmpn_lshift_in_place" proved="true">
-   <proof prover="2" timelimit="1"><result status="valid" time="0.06"/></proof>
+   <proof prover="2"><result status="valid" time="0.06"/></proof>
    </goal>
   </transf>
   </goal>
@@ -1019,31 +1033,335 @@
    <goal name="VC wmpn_lshift_in_place.40.0" expl="assertion" proved="true">
    <transf name="reflection_f" proved="true" arg1="mp_decision">
     <goal name="VC wmpn_lshift_in_place.40.0.0" expl="assertion" proved="true">
-    <proof prover="0"><result status="valid" time="0.60"/></proof>
+    <transf name="apply" proved="true" arg1="HR">
+     <goal name="VC wmpn_lshift_in_place.40.0.0.0" proved="true">
+     <proof prover="2"><result status="valid" time="0.21"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.1" proved="true">
+     <proof prover="2"><result status="valid" time="0.19"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.2" proved="true">
+     <proof prover="2"><result status="valid" time="0.15"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.3" proved="true">
+     <proof prover="2"><result status="valid" time="0.15"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.4" proved="true">
+     <proof prover="2"><result status="valid" time="0.17"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.5" proved="true">
+     <proof prover="2"><result status="valid" time="0.14"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.6" proved="true">
+     <proof prover="2"><result status="valid" time="0.17"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.7" proved="true">
+     <proof prover="2"><result status="valid" time="0.14"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.8" proved="true">
+     <proof prover="2"><result status="valid" time="0.16"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.9" proved="true">
+     <proof prover="2"><result status="valid" time="0.14"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.10" proved="true">
+     <proof prover="2"><result status="valid" time="0.21"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.11" proved="true">
+     <proof prover="2"><result status="valid" time="0.22"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.12" proved="true">
+     <proof prover="2"><result status="valid" time="0.16"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.13" proved="true">
+     <proof prover="2"><result status="valid" time="0.14"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.14" proved="true">
+     <proof prover="2"><result status="valid" time="0.14"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.15" proved="true">
+     <proof prover="2"><result status="valid" time="0.23"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.16" proved="true">
+     <proof prover="2"><result status="valid" time="0.18"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.17" proved="true">
+     <proof prover="2"><result status="valid" time="0.17"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.18" proved="true">
+     <proof prover="2"><result status="valid" time="0.24"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.19" proved="true">
+     <proof prover="2"><result status="valid" time="0.22"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.20" proved="true">
+     <proof prover="2"><result status="valid" time="0.16"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.21" proved="true">
+     <proof prover="2"><result status="valid" time="0.16"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.22" proved="true">
+     <proof prover="2"><result status="valid" time="0.20"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.23" proved="true">
+     <proof prover="2"><result status="valid" time="0.20"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.24" proved="true">
+     <proof prover="2"><result status="valid" time="0.16"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.25" proved="true">
+     <proof prover="2"><result status="valid" time="0.15"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.26" proved="true">
+     <proof prover="2"><result status="valid" time="0.18"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.27" proved="true">
+     <proof prover="2"><result status="valid" time="0.14"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.28" proved="true">
+     <proof prover="2"><result status="valid" time="0.14"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.29" proved="true">
+     <proof prover="2"><result status="valid" time="0.17"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.30" proved="true">
+     <proof prover="2"><result status="valid" time="0.22"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.31" proved="true">
+     <proof prover="2"><result status="valid" time="0.21"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.32" proved="true">
+     <proof prover="2"><result status="valid" time="0.17"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.33" proved="true">
+     <proof prover="2"><result status="valid" time="0.14"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.34" proved="true">
+     <proof prover="2"><result status="valid" time="0.20"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.35" proved="true">
+     <proof prover="2"><result status="valid" time="0.15"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.36" proved="true">
+     <proof prover="2"><result status="valid" time="0.24"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.37" proved="true">
+     <proof prover="2"><result status="valid" time="0.34"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.38" proved="true">
+     <proof prover="2"><result status="valid" time="0.24"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.39" proved="true">
+     <proof prover="2"><result status="valid" time="0.15"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.40" proved="true">
+     <proof prover="2"><result status="valid" time="0.21"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.41" proved="true">
+     <proof prover="2"><result status="valid" time="0.16"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.42" proved="true">
+     <proof prover="2"><result status="valid" time="0.13"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.43" proved="true">
+     <proof prover="2"><result status="valid" time="0.19"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.44" proved="true">
+     <proof prover="2"><result status="valid" time="0.19"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.45" proved="true">
+     <proof prover="2"><result status="valid" time="0.15"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.46" proved="true">
+     <proof prover="2"><result status="valid" time="0.16"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.47" proved="true">
+     <proof prover="2"><result status="valid" time="0.14"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.48" proved="true">
+     <proof prover="2"><result status="valid" time="0.15"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.49" proved="true">
+     <proof prover="2"><result status="valid" time="0.18"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.50" proved="true">
+     <proof prover="2"><result status="valid" time="0.14"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.51" proved="true">
+     <proof prover="2"><result status="valid" time="0.20"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.52" proved="true">
+     <proof prover="2"><result status="valid" time="0.14"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.53" proved="true">
+     <proof prover="2"><result status="valid" time="0.16"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.54" proved="true">
+     <proof prover="2"><result status="valid" time="0.12"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.55" proved="true">
+     <proof prover="2"><result status="valid" time="0.22"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.56" proved="true">
+     <proof prover="2"><result status="valid" time="0.18"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.57" proved="true">
+     <proof prover="2"><result status="valid" time="0.22"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.58" proved="true">
+     <proof prover="2"><result status="valid" time="0.20"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.59" proved="true">
+     <proof prover="2"><result status="valid" time="0.17"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.60" proved="true">
+     <proof prover="2"><result status="valid" time="0.15"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.61" proved="true">
+     <proof prover="2"><result status="valid" time="0.14"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.62" proved="true">
+     <proof prover="2"><result status="valid" time="0.18"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.63" proved="true">
+     <proof prover="2"><result status="valid" time="0.17"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.64" proved="true">
+     <proof prover="2"><result status="valid" time="0.13"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.65" proved="true">
+     <proof prover="2"><result status="valid" time="0.20"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.66" proved="true">
+     <proof prover="2"><result status="valid" time="0.14"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.67" proved="true">
+     <proof prover="2"><result status="valid" time="0.17"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.68" proved="true">
+     <proof prover="2"><result status="valid" time="0.14"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.69" proved="true">
+     <proof prover="2"><result status="valid" time="0.18"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.70" proved="true">
+     <proof prover="2"><result status="valid" time="0.14"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.71" proved="true">
+     <proof prover="2"><result status="valid" time="0.16"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.72" proved="true">
+     <proof prover="2"><result status="valid" time="0.14"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.73" proved="true">
+     <proof prover="2"><result status="valid" time="0.14"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.74" proved="true">
+     <proof prover="2"><result status="valid" time="0.18"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.75" proved="true">
+     <proof prover="2"><result status="valid" time="0.20"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.76" proved="true">
+     <proof prover="2"><result status="valid" time="0.19"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.77" proved="true">
+     <proof prover="2"><result status="valid" time="0.16"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.78" proved="true">
+     <proof prover="2"><result status="valid" time="0.15"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.79" proved="true">
+     <proof prover="2"><result status="valid" time="0.14"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.80" proved="true">
+     <proof prover="2"><result status="valid" time="0.19"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.81" proved="true">
+     <proof prover="2"><result status="valid" time="0.18"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.82" proved="true">
+     <proof prover="2"><result status="valid" time="0.21"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.83" proved="true">
+     <proof prover="2"><result status="valid" time="0.14"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.84" proved="true">
+     <proof prover="2"><result status="valid" time="0.16"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.85" proved="true">
+     <proof prover="2"><result status="valid" time="0.14"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.86" proved="true">
+     <proof prover="2"><result status="valid" time="0.14"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.87" proved="true">
+     <proof prover="2"><result status="valid" time="0.16"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.88" proved="true">
+     <proof prover="2"><result status="valid" time="0.14"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.89" proved="true">
+     <proof prover="2"><result status="valid" time="0.23"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.90" proved="true">
+     <proof prover="2"><result status="valid" time="0.18"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.91" proved="true">
+     <proof prover="2"><result status="valid" time="0.17"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.92" proved="true">
+     <proof prover="2"><result status="valid" time="0.17"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.93" proved="true">
+     <proof prover="2"><result status="valid" time="0.20"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.94" proved="true">
+     <proof prover="2"><result status="valid" time="0.14"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.95" proved="true">
+     <proof prover="2"><result status="valid" time="0.14"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.96" proved="true">
+     <proof prover="2"><result status="valid" time="0.13"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.97" proved="true">
+     <proof prover="2"><result status="valid" time="0.14"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.98" proved="true">
+     <proof prover="2"><result status="valid" time="0.14"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.99" proved="true">
+     <proof prover="2"><result status="valid" time="0.15"/></proof>
+     </goal>
+     <goal name="VC wmpn_lshift_in_place.40.0.0.100" proved="true">
+     <proof prover="2"><result status="valid" time="0.14"/></proof>
+     </goal>
+    </transf>
     </goal>
     <goal name="VC wmpn_lshift_in_place.40.0.1" proved="true">
-    <proof prover="2" timelimit="1"><result status="valid" time="0.34"/></proof>
+    <proof prover="2"><result status="valid" time="0.34"/></proof>
     </goal>
     <goal name="VC wmpn_lshift_in_place.40.0.2" proved="true">
-    <proof prover="2" timelimit="1"><result status="valid" time="0.26"/></proof>
+    <proof prover="2"><result status="valid" time="0.43"/></proof>
     </goal>
    </transf>
    </goal>
   </transf>
   </goal>
   <goal name="VC wmpn_lshift_in_place.41" expl="integer overflow" proved="true">
-  <proof prover="2" timelimit="1"><result status="valid" time="0.19"/></proof>
+  <proof prover="2"><result status="valid" time="0.19"/></proof>
   </goal>
   <goal name="VC wmpn_lshift_in_place.42" expl="assertion" proved="true">
   <transf name="split_vc" proved="true" >
    <goal name="VC wmpn_lshift_in_place.42.0" expl="assertion" proved="true">
-   <proof prover="0"><result status="valid" time="0.24"/></proof>
+   <proof prover="0"><result status="valid" time="0.41"/></proof>
    </goal>
    <goal name="VC wmpn_lshift_in_place.42.1" expl="assertion" proved="true">
-   <proof prover="0"><result status="valid" time="0.41"/></proof>
+   <proof prover="0"><result status="valid" time="1.09"/></proof>
    </goal>
    <goal name="VC wmpn_lshift_in_place.42.2" expl="VC for wmpn_lshift_in_place" proved="true">
-   <proof prover="2" timelimit="1"><result status="valid" time="0.11"/></proof>
+   <proof prover="2"><result status="valid" time="0.11"/></proof>
    </goal>
   </transf>
   </goal>
@@ -1055,7 +1373,7 @@
   </transf>
   </goal>
   <goal name="VC wmpn_lshift_in_place.44" expl="loop invariant preservation" proved="true">
-  <proof prover="2"><result status="valid" time="0.06"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.06"/></proof>
   </goal>
   <goal name="VC wmpn_lshift_in_place.45" expl="loop invariant preservation" proved="true">
   <proof prover="0"><result status="valid" time="0.71"/></proof>
@@ -1064,19 +1382,19 @@
   <proof prover="0"><result status="valid" time="0.05"/></proof>
   </goal>
   <goal name="VC wmpn_lshift_in_place.47" expl="loop invariant preservation" proved="true">
-  <proof prover="2"><result status="valid" time="0.06"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.06"/></proof>
   </goal>
   <goal name="VC wmpn_lshift_in_place.48" expl="loop invariant preservation" proved="true">
-  <proof prover="2"><result status="valid" time="0.06"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.06"/></proof>
   </goal>
   <goal name="VC wmpn_lshift_in_place.49" expl="loop invariant preservation" proved="true">
-  <proof prover="2"><result status="valid" time="0.08"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.08"/></proof>
   </goal>
   <goal name="VC wmpn_lshift_in_place.50" expl="loop invariant preservation" proved="true">
-  <proof prover="2"><result status="valid" time="0.06"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.06"/></proof>
   </goal>
   <goal name="VC wmpn_lshift_in_place.51" expl="loop invariant preservation" proved="true">
-  <proof prover="2"><result status="valid" time="0.06"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.06"/></proof>
   </goal>
   <goal name="VC wmpn_lshift_in_place.52" expl="loop invariant preservation" proved="true">
   <proof prover="0"><result status="valid" time="0.02"/></proof>
@@ -1085,7 +1403,7 @@
   <proof prover="0"><result status="valid" time="0.01"/></proof>
   </goal>
   <goal name="VC wmpn_lshift_in_place.54" expl="loop invariant preservation" proved="true">
-  <proof prover="2"><result status="valid" time="0.06"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.06"/></proof>
   </goal>
   <goal name="VC wmpn_lshift_in_place.55" expl="loop invariant preservation" proved="true">
   <proof prover="0"><result status="valid" time="0.02"/></proof>
@@ -1094,25 +1412,25 @@
   <proof prover="0"><result status="valid" time="0.01"/></proof>
   </goal>
   <goal name="VC wmpn_lshift_in_place.57" expl="loop invariant preservation" proved="true">
-  <proof prover="0"><result status="valid" time="0.32"/></proof>
+  <proof prover="0"><result status="valid" time="0.64"/></proof>
   </goal>
   <goal name="VC wmpn_lshift_in_place.58" expl="assertion" proved="true">
   <proof prover="0"><result status="valid" time="0.06"/></proof>
   </goal>
   <goal name="VC wmpn_lshift_in_place.59" expl="precondition" proved="true">
-  <proof prover="0"><result status="valid" time="0.05"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.04"/></proof>
   </goal>
   <goal name="VC wmpn_lshift_in_place.60" expl="precondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.04"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.03"/></proof>
   </goal>
   <goal name="VC wmpn_lshift_in_place.61" expl="precondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.04"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.04"/></proof>
   </goal>
   <goal name="VC wmpn_lshift_in_place.62" expl="precondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.08"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.06"/></proof>
   </goal>
   <goal name="VC wmpn_lshift_in_place.63" expl="assertion" proved="true">
-  <proof prover="2"><result status="valid" time="0.03"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.14"/></proof>
   </goal>
   <goal name="VC wmpn_lshift_in_place.64" expl="postcondition" proved="true">
   <proof prover="0"><result status="valid" time="0.05"/></proof>
@@ -1122,101 +1440,101 @@
  <goal name="VC wmpn_rshift_in_place" expl="VC for wmpn_rshift_in_place" proved="true">
  <transf name="split_vc" proved="true" >
   <goal name="VC wmpn_rshift_in_place.0" expl="integer overflow" proved="true">
-  <proof prover="2"><result status="valid" time="0.09"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.09"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.1" expl="integer overflow" proved="true">
-  <proof prover="2"><result status="valid" time="0.05"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.05"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.2" expl="integer overflow" proved="true">
-  <proof prover="2"><result status="valid" time="0.06"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.06"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.3" expl="precondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.05"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.05"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.4" expl="precondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.07"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.07"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.5" expl="precondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.07"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.07"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.6" expl="precondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.04"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.04"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.7" expl="loop invariant init" proved="true">
-  <proof prover="2"><result status="valid" time="0.07"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.07"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.8" expl="loop invariant init" proved="true">
   <proof prover="5" timelimit="1"><result status="valid" time="0.08" steps="111"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.9" expl="loop invariant init" proved="true">
-  <proof prover="2"><result status="valid" time="0.05"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.05"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.10" expl="loop invariant init" proved="true">
-  <proof prover="2"><result status="valid" time="0.03"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.03"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.11" expl="loop invariant init" proved="true">
-  <proof prover="2"><result status="valid" time="0.03"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.03"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.12" expl="loop invariant init" proved="true">
-  <proof prover="2"><result status="valid" time="0.02"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.02"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.13" expl="loop invariant init" proved="true">
-  <proof prover="2"><result status="valid" time="0.03"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.03"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.14" expl="loop invariant init" proved="true">
-  <proof prover="2"><result status="valid" time="0.03"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.03"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.15" expl="loop invariant init" proved="true">
-  <proof prover="2"><result status="valid" time="0.05"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.05"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.16" expl="loop invariant init" proved="true">
-  <proof prover="2"><result status="valid" time="0.04"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.04"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.17" expl="loop invariant init" proved="true">
-  <proof prover="2"><result status="valid" time="0.05"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.05"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.18" expl="loop invariant init" proved="true">
-  <proof prover="2"><result status="valid" time="0.05"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.05"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.19" expl="loop invariant init" proved="true">
-  <proof prover="2"><result status="valid" time="0.06"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.06"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.20" expl="loop invariant init" proved="true">
-  <proof prover="2"><result status="valid" time="0.04"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.04"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.21" expl="precondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.09"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.09"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.22" expl="precondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.13"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.13"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.23" expl="precondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.07"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.07"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.24" expl="precondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.10"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.10"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.25" expl="assertion" proved="true">
   <transf name="split_vc" proved="true" >
    <goal name="VC wmpn_rshift_in_place.25.0" expl="assertion" proved="true">
-   <proof prover="2"><result status="valid" time="0.08"/></proof>
+   <proof prover="2" timelimit="5"><result status="valid" time="0.08"/></proof>
    </goal>
    <goal name="VC wmpn_rshift_in_place.25.1" expl="VC for wmpn_rshift_in_place" proved="true">
-   <proof prover="2"><result status="valid" time="0.07"/></proof>
+   <proof prover="2" timelimit="5"><result status="valid" time="0.07"/></proof>
    </goal>
    <goal name="VC wmpn_rshift_in_place.25.2" expl="VC for wmpn_rshift_in_place" proved="true">
-   <proof prover="2"><result status="valid" time="0.05"/></proof>
+   <proof prover="2" timelimit="5"><result status="valid" time="0.05"/></proof>
    </goal>
    <goal name="VC wmpn_rshift_in_place.25.3" expl="VC for wmpn_rshift_in_place" proved="true">
    <proof prover="0"><result status="valid" time="0.02"/></proof>
    </goal>
    <goal name="VC wmpn_rshift_in_place.25.4" expl="VC for wmpn_rshift_in_place" proved="true">
-   <transf name="rewrite" proved="true" arg1="H21">
+   <transf name="rewrite" proved="true" arg1="H19">
     <goal name="VC wmpn_rshift_in_place.25.4.0" expl="VC for wmpn_rshift_in_place" proved="true">
     <proof prover="2"><result status="valid" time="0.04"/></proof>
     </goal>
     <goal name="VC wmpn_rshift_in_place.25.4.1" proved="true">
-    <proof prover="2"><result status="valid" time="0.05"/></proof>
+    <proof prover="2"><result status="valid" time="0.04"/></proof>
     </goal>
    </transf>
    </goal>
@@ -1224,48 +1542,48 @@
    <proof prover="0"><result status="valid" time="0.01"/></proof>
    </goal>
    <goal name="VC wmpn_rshift_in_place.25.6" expl="VC for wmpn_rshift_in_place" proved="true">
-   <proof prover="2"><result status="valid" time="0.05"/></proof>
+   <proof prover="2" timelimit="5"><result status="valid" time="0.05"/></proof>
    </goal>
   </transf>
   </goal>
   <goal name="VC wmpn_rshift_in_place.26" expl="precondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.09"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.09"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.27" expl="assertion" proved="true">
-  <proof prover="2"><result status="valid" time="0.08"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.08"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.28" expl="integer overflow" proved="true">
-  <proof prover="2"><result status="valid" time="0.14"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.14"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.29" expl="precondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.03"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.09"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.30" expl="precondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.04"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.04"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.31" expl="precondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.04"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.03"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.32" expl="precondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.05"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.05"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.33" expl="integer overflow" proved="true">
-  <proof prover="2"><result status="valid" time="0.10"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.10"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.34" expl="precondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.20"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.20"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.35" expl="assertion" proved="true">
-  <proof prover="0"><result status="valid" time="0.33"/></proof>
+  <proof prover="0"><result status="valid" time="4.13"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.36" expl="precondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.03"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.03"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.37" expl="integer overflow" proved="true">
-  <proof prover="2"><result status="valid" time="0.10"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.10"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.38" expl="precondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.06"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.06"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.39" expl="assertion" proved="true">
   <proof prover="0"><result status="valid" time="0.06"/></proof>
@@ -1279,7 +1597,7 @@
    <proof prover="1"><result status="valid" time="0.08"/></proof>
    </goal>
    <goal name="VC wmpn_rshift_in_place.40.2" expl="VC for wmpn_rshift_in_place" proved="true">
-   <proof prover="2"><result status="valid" time="0.03"/></proof>
+   <proof prover="2" timelimit="5"><result status="valid" time="0.03"/></proof>
    </goal>
    <goal name="VC wmpn_rshift_in_place.40.3" expl="VC for wmpn_rshift_in_place" proved="true">
    <proof prover="1"><result status="valid" time="0.14"/></proof>
@@ -1291,109 +1609,109 @@
    <goal name="VC wmpn_rshift_in_place.41.0" expl="assertion" proved="true">
    <transf name="reflection_f" proved="true" arg1="mp_decision">
     <goal name="VC wmpn_rshift_in_place.41.0.0" expl="assertion" proved="true">
-    <proof prover="0"><result status="valid" time="0.29"/></proof>
+    <proof prover="0"><result status="valid" time="0.54"/></proof>
     </goal>
     <goal name="VC wmpn_rshift_in_place.41.0.1" proved="true">
-    <proof prover="2"><result status="valid" time="0.34"/></proof>
+    <proof prover="2" timelimit="5"><result status="valid" time="0.34"/></proof>
     </goal>
     <goal name="VC wmpn_rshift_in_place.41.0.2" proved="true">
-    <proof prover="2"><result status="valid" time="0.48"/></proof>
+    <proof prover="2" timelimit="5"><result status="valid" time="0.48"/></proof>
     </goal>
    </transf>
    </goal>
   </transf>
   </goal>
   <goal name="VC wmpn_rshift_in_place.42" expl="integer overflow" proved="true">
-  <proof prover="2"><result status="valid" time="0.10"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.10"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.43" expl="assertion" proved="true">
   <transf name="split_vc" proved="true" >
    <goal name="VC wmpn_rshift_in_place.43.0" expl="assertion" proved="true">
-   <proof prover="0"><result status="valid" time="0.25"/></proof>
+   <proof prover="0"><result status="valid" time="0.34"/></proof>
    </goal>
    <goal name="VC wmpn_rshift_in_place.43.1" expl="assertion" proved="true">
-   <proof prover="0"><result status="valid" time="0.64"/></proof>
+   <proof prover="0"><result status="valid" time="0.73"/></proof>
    </goal>
    <goal name="VC wmpn_rshift_in_place.43.2" expl="VC for wmpn_rshift_in_place" proved="true">
-   <proof prover="2"><result status="valid" time="0.06"/></proof>
+   <proof prover="2" timelimit="5"><result status="valid" time="0.06"/></proof>
    </goal>
   </transf>
   </goal>
   <goal name="VC wmpn_rshift_in_place.44" expl="loop variant decrease" proved="true">
-  <proof prover="2"><result status="valid" time="0.06"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.06"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.45" expl="loop invariant preservation" proved="true">
-  <proof prover="2"><result status="valid" time="0.08"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.08"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.46" expl="loop invariant preservation" proved="true">
   <transf name="replace" proved="true" arg1="(int32&#39;int i)" arg2="(i1+1)">
    <goal name="VC wmpn_rshift_in_place.46.0" expl="loop invariant preservation" proved="true">
-   <proof prover="2"><result status="valid" time="0.04"/></proof>
+   <proof prover="2" timelimit="5"><result status="valid" time="0.04"/></proof>
    </goal>
    <goal name="VC wmpn_rshift_in_place.46.1" proved="true">
-   <proof prover="2"><result status="valid" time="0.05"/></proof>
+   <proof prover="2" timelimit="5"><result status="valid" time="0.05"/></proof>
    </goal>
   </transf>
   </goal>
   <goal name="VC wmpn_rshift_in_place.47" expl="loop invariant preservation" proved="true">
-  <proof prover="2"><result status="valid" time="0.06"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.06"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.48" expl="loop invariant preservation" proved="true">
-  <proof prover="2"><result status="valid" time="0.06"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.06"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.49" expl="loop invariant preservation" proved="true">
-  <proof prover="2"><result status="valid" time="0.06"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.06"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.50" expl="loop invariant preservation" proved="true">
-  <proof prover="2"><result status="valid" time="0.06"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.06"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.51" expl="loop invariant preservation" proved="true">
-  <proof prover="2"><result status="valid" time="0.06"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.06"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.52" expl="loop invariant preservation" proved="true">
-  <proof prover="2"><result status="valid" time="0.06"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.06"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.53" expl="loop invariant preservation" proved="true">
   <proof prover="0"><result status="valid" time="0.02"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.54" expl="loop invariant preservation" proved="true">
-  <proof prover="2"><result status="valid" time="0.07"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.07"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.55" expl="loop invariant preservation" proved="true">
-  <proof prover="2"><result status="valid" time="0.06"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.06"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.56" expl="loop invariant preservation" proved="true">
   <proof prover="0"><result status="valid" time="0.02"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.57" expl="loop invariant preservation" proved="true">
-  <proof prover="2"><result status="valid" time="0.06"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.06"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.58" expl="loop invariant preservation" proved="true">
-  <proof prover="0"><result status="valid" time="0.50"/></proof>
+  <proof prover="0"><result status="valid" time="0.68"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.59" expl="assertion" proved="true">
   <proof prover="0"><result status="valid" time="0.03"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.60" expl="precondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.09"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.04"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.61" expl="assertion" proved="true">
-  <proof prover="2"><result status="valid" time="0.05"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.05"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.62" expl="precondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.03"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.03"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.63" expl="precondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.08"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.08"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.64" expl="precondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.13"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.13"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.65" expl="precondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.06"/></proof>
+  <proof prover="2" timelimit="5"><result status="valid" time="0.06"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.66" expl="assertion" proved="true">
-  <proof prover="0"><result status="valid" time="2.40"/></proof>
+  <proof prover="0"><result status="valid" time="3.95"/></proof>
   </goal>
   <goal name="VC wmpn_rshift_in_place.67" expl="postcondition" proved="true">
   <proof prover="0"><result status="valid" time="0.02"/></proof>
diff --git a/examples/multiprecision/logical/why3shapes.gz b/examples/multiprecision/logical/why3shapes.gz
index fe3c19553b8275b72cab69c42b2eaff5ddbed280..c256dbc0c43c3967cbeab94aba2b06775e17500e 100644
Binary files a/examples/multiprecision/logical/why3shapes.gz and b/examples/multiprecision/logical/why3shapes.gz differ
diff --git a/examples/multiprecision/sub/why3session.xml b/examples/multiprecision/sub/why3session.xml
index d9a7a789c6ef3b2054d26f96f987cba176857d1c..5fd52ea34bac7629e8e1a1a718fbe8fc70db93ae 100644
--- a/examples/multiprecision/sub/why3session.xml
+++ b/examples/multiprecision/sub/why3session.xml
@@ -81,7 +81,7 @@
   <proof prover="2"><result status="valid" time="0.20"/></proof>
   </goal>
   <goal name="VC wmpn_sub_1.23" expl="assertion" proved="true">
-  <proof prover="0"><result status="valid" time="0.50"/></proof>
+  <proof prover="0"><result status="valid" time="0.68"/></proof>
   </goal>
   <goal name="VC wmpn_sub_1.24" expl="precondition" proved="true">
   <proof prover="3"><result status="valid" time="0.02"/></proof>
@@ -306,7 +306,7 @@
     <goal name="VC wmpn_sub_n.12.0.0" expl="assertion" proved="true">
     <transf name="reflection_f" proved="true" arg1="mp_decision">
      <goal name="VC wmpn_sub_n.12.0.0.0" expl="assertion" proved="true">
-     <proof prover="0"><result status="valid" time="2.78"/></proof>
+     <proof prover="0"><result status="valid" time="3.49"/></proof>
      </goal>
      <goal name="VC wmpn_sub_n.12.0.0.1" proved="true">
      <proof prover="3"><result status="valid" time="0.28"/></proof>
@@ -399,7 +399,7 @@
     <goal name="VC wmpn_sub.12.0.0" expl="assertion" proved="true">
     <transf name="reflection_f" proved="true" arg1="mp_decision">
      <goal name="VC wmpn_sub.12.0.0.0" expl="assertion" proved="true">
-     <proof prover="0"><result status="valid" time="2.84"/></proof>
+     <proof prover="0"><result status="valid" time="4.18"/></proof>
      </goal>
      <goal name="VC wmpn_sub.12.0.0.1" proved="true">
      <proof prover="3"><result status="valid" time="0.30"/></proof>
@@ -512,7 +512,7 @@
   <proof prover="5" timelimit="5" memlimit="2000"><result status="valid" time="0.26" steps="77"/></proof>
   </goal>
   <goal name="VC wmpn_sub.42" expl="assertion" proved="true">
-  <proof prover="0"><result status="valid" time="0.52"/></proof>
+  <proof prover="0"><result status="valid" time="0.76"/></proof>
   </goal>
   <goal name="VC wmpn_sub.43" expl="assertion" proved="true">
   <proof prover="5" timelimit="5" memlimit="2000"><result status="valid" time="0.30" steps="79"/></proof>
@@ -780,7 +780,7 @@
     <goal name="VC wmpn_sub_in_place.15.0.0" expl="assertion" proved="true">
     <transf name="reflection_f" proved="true" arg1="mp_decision">
      <goal name="VC wmpn_sub_in_place.15.0.0.0" expl="assertion" proved="true">
-     <proof prover="0"><result status="valid" time="2.76"/></proof>
+     <proof prover="0"><result status="valid" time="3.21"/></proof>
      </goal>
      <goal name="VC wmpn_sub_in_place.15.0.0.1" proved="true">
      <proof prover="3"><result status="valid" time="0.30"/></proof>
@@ -892,7 +892,7 @@
    <proof prover="2"><result status="valid" time="0.04"/></proof>
    </goal>
    <goal name="VC wmpn_sub_in_place.42.2" expl="VC for wmpn_sub_in_place" proved="true">
-   <proof prover="5"><result status="valid" time="0.22" steps="86"/></proof>
+   <proof prover="5"><result status="valid" time="0.22" steps="85"/></proof>
    </goal>
    <goal name="VC wmpn_sub_in_place.42.3" expl="VC for wmpn_sub_in_place" proved="true">
    <proof prover="2"><result status="valid" time="0.06"/></proof>
@@ -987,7 +987,7 @@
    <proof prover="2"><result status="valid" time="0.03"/></proof>
    </goal>
    <goal name="VC wmpn_sub_in_place.65.2" expl="VC for wmpn_sub_in_place" proved="true">
-   <proof prover="5"><result status="valid" time="0.02" steps="54"/></proof>
+   <proof prover="5"><result status="valid" time="0.02" steps="55"/></proof>
    </goal>
    <goal name="VC wmpn_sub_in_place.65.3" expl="VC for wmpn_sub_in_place" proved="true">
    <proof prover="2"><result status="valid" time="0.05"/></proof>
@@ -1069,7 +1069,7 @@
   <proof prover="5" timelimit="5" memlimit="2000"><result status="valid" time="0.02" steps="62"/></proof>
   </goal>
   <goal name="VC wmpn_decr.16" expl="assertion" proved="true">
-  <proof prover="0" memlimit="1000"><result status="valid" time="0.66"/></proof>
+  <proof prover="0" memlimit="1000"><result status="valid" time="0.87"/></proof>
   </goal>
   <goal name="VC wmpn_decr.17" expl="precondition" proved="true">
   <proof prover="3"><result status="valid" time="0.01"/></proof>
@@ -1084,7 +1084,7 @@
   <proof prover="2"><result status="valid" time="0.16"/></proof>
   </goal>
   <goal name="VC wmpn_decr.21" expl="assertion" proved="true">
-  <proof prover="5"><result status="valid" time="0.68" steps="56"/></proof>
+  <proof prover="5"><result status="valid" time="0.68" steps="55"/></proof>
   </goal>
   <goal name="VC wmpn_decr.22" expl="precondition" proved="true">
   <proof prover="2"><result status="valid" time="0.07"/></proof>
@@ -1101,7 +1101,7 @@
    <proof prover="2"><result status="valid" time="0.03"/></proof>
    </goal>
    <goal name="VC wmpn_decr.24.2" expl="VC for wmpn_decr" proved="true">
-   <proof prover="5"><result status="valid" time="0.52" steps="76"/></proof>
+   <proof prover="5"><result status="valid" time="0.77" steps="75"/></proof>
    </goal>
    <goal name="VC wmpn_decr.24.3" expl="VC for wmpn_decr" proved="true">
    <proof prover="2"><result status="valid" time="0.02"/></proof>
@@ -1112,7 +1112,7 @@
   <proof prover="2"><result status="valid" time="0.08"/></proof>
   </goal>
   <goal name="VC wmpn_decr.26" expl="postcondition" proved="true">
-  <proof prover="5"><result status="valid" time="0.66" steps="60"/></proof>
+  <proof prover="5"><result status="valid" time="0.66" steps="59"/></proof>
   </goal>
   <goal name="VC wmpn_decr.27" expl="postcondition" proved="true">
   <proof prover="2"><result status="valid" time="0.11"/></proof>
@@ -1121,7 +1121,7 @@
   <proof prover="2"><result status="valid" time="0.06"/></proof>
   </goal>
   <goal name="VC wmpn_decr.29" expl="assertion" proved="true">
-  <proof prover="5" timelimit="5" memlimit="2000"><result status="valid" time="0.45" steps="72"/></proof>
+  <proof prover="5" timelimit="5" memlimit="2000"><result status="valid" time="0.74" steps="69"/></proof>
   </goal>
   <goal name="VC wmpn_decr.30" expl="assertion" proved="true">
   <transf name="split_vc" proved="true" >
@@ -1181,21 +1181,21 @@
    <proof prover="3"><result status="valid" time="0.02"/></proof>
    </goal>
    <goal name="VC wmpn_decr.40.2" expl="VC for wmpn_decr" proved="true">
-   <proof prover="5" timelimit="5"><result status="valid" time="0.02" steps="53"/></proof>
+   <proof prover="5" timelimit="5"><result status="valid" time="0.02" steps="54"/></proof>
    </goal>
    <goal name="VC wmpn_decr.40.3" expl="VC for wmpn_decr" proved="true">
-   <proof prover="5"><result status="valid" time="0.01" steps="39"/></proof>
+   <proof prover="5"><result status="valid" time="0.01" steps="40"/></proof>
    </goal>
   </transf>
   </goal>
   <goal name="VC wmpn_decr.41" expl="precondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.08"/></proof>
+  <proof prover="3"><result status="valid" time="0.03"/></proof>
   </goal>
   <goal name="VC wmpn_decr.42" expl="postcondition" proved="true">
-  <proof prover="5"><result status="valid" time="0.03" steps="35"/></proof>
+  <proof prover="5"><result status="valid" time="0.02" steps="36"/></proof>
   </goal>
   <goal name="VC wmpn_decr.43" expl="postcondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.07"/></proof>
+  <proof prover="2"><result status="valid" time="0.04"/></proof>
   </goal>
   <goal name="VC wmpn_decr.44" expl="precondition" proved="true">
   <proof prover="3"><result status="valid" time="0.02"/></proof>
@@ -1207,13 +1207,13 @@
   <proof prover="2"><result status="valid" time="0.04"/></proof>
   </goal>
   <goal name="VC wmpn_decr.47" expl="precondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.03"/></proof>
+  <proof prover="2"><result status="valid" time="0.08"/></proof>
   </goal>
   <goal name="VC wmpn_decr.48" expl="postcondition" proved="true">
-  <proof prover="5"><result status="valid" time="0.02" steps="70"/></proof>
+  <proof prover="5"><result status="valid" time="0.03" steps="70"/></proof>
   </goal>
   <goal name="VC wmpn_decr.49" expl="postcondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.04"/></proof>
+  <proof prover="2"><result status="valid" time="0.07"/></proof>
   </goal>
  </transf>
  </goal>
@@ -1250,22 +1250,22 @@
   <proof prover="5"><result status="valid" time="0.02" steps="29"/></proof>
   </goal>
   <goal name="VC wmpn_decr_1.10" expl="precondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.03"/></proof>
+  <proof prover="3"><result status="valid" time="0.04"/></proof>
   </goal>
   <goal name="VC wmpn_decr_1.11" expl="precondition" proved="true">
   <proof prover="3"><result status="valid" time="0.01"/></proof>
   </goal>
   <goal name="VC wmpn_decr_1.12" expl="precondition" proved="true">
-  <proof prover="5"><result status="valid" time="0.04" steps="130"/></proof>
+  <proof prover="5"><result status="valid" time="0.02" steps="130"/></proof>
   </goal>
   <goal name="VC wmpn_decr_1.13" expl="assertion" proved="true">
   <proof prover="5"><result status="valid" time="0.02" steps="54"/></proof>
   </goal>
   <goal name="VC wmpn_decr_1.14" expl="assertion" proved="true">
-  <proof prover="5"><result status="valid" time="0.09" steps="114"/></proof>
+  <proof prover="5"><result status="valid" time="0.08" steps="114"/></proof>
   </goal>
   <goal name="VC wmpn_decr_1.15" expl="precondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.02"/></proof>
+  <proof prover="3"><result status="valid" time="0.01"/></proof>
   </goal>
   <goal name="VC wmpn_decr_1.16" expl="precondition" proved="true">
   <proof prover="3"><result status="valid" time="0.01"/></proof>
@@ -1277,32 +1277,13 @@
   <proof prover="3"><result status="valid" time="0.16"/></proof>
   </goal>
   <goal name="VC wmpn_decr_1.19" expl="assertion" proved="true">
-  <transf name="split_vc" proved="true" >
-   <goal name="VC wmpn_decr_1.19.0" expl="assertion" proved="true">
-   <proof prover="0" memlimit="1000"><result status="valid" time="0.02"/></proof>
-   </goal>
-   <goal name="VC wmpn_decr_1.19.1" expl="VC for wmpn_decr_1" proved="true">
-   <proof prover="3"><result status="valid" time="0.02"/></proof>
-   </goal>
-   <goal name="VC wmpn_decr_1.19.2" expl="VC for wmpn_decr_1" proved="true">
-   <proof prover="2"><result status="valid" time="0.12"/></proof>
-   </goal>
-   <goal name="VC wmpn_decr_1.19.3" expl="VC for wmpn_decr_1" proved="true">
-   <proof prover="3"><result status="valid" time="0.02"/></proof>
-   </goal>
-   <goal name="VC wmpn_decr_1.19.4" expl="VC for wmpn_decr_1" proved="true">
-   <proof prover="3"><result status="valid" time="0.02"/></proof>
-   </goal>
-   <goal name="VC wmpn_decr_1.19.5" expl="VC for wmpn_decr_1" proved="true">
-   <proof prover="3"><result status="valid" time="0.02"/></proof>
-   </goal>
-  </transf>
+  <proof prover="5"><result status="valid" time="0.44" steps="268"/></proof>
   </goal>
   <goal name="VC wmpn_decr_1.20" expl="loop variant decrease" proved="true">
-  <proof prover="3"><result status="valid" time="0.04"/></proof>
+  <proof prover="3"><result status="valid" time="0.03"/></proof>
   </goal>
   <goal name="VC wmpn_decr_1.21" expl="loop invariant preservation" proved="true">
-  <proof prover="5"><result status="valid" time="0.08" steps="122"/></proof>
+  <proof prover="5"><result status="valid" time="0.04" steps="117"/></proof>
   </goal>
   <goal name="VC wmpn_decr_1.22" expl="loop invariant preservation" proved="true">
   <proof prover="3"><result status="valid" time="0.03"/></proof>
@@ -1314,34 +1295,34 @@
   <proof prover="3"><result status="valid" time="0.02"/></proof>
   </goal>
   <goal name="VC wmpn_decr_1.25" expl="loop invariant preservation" proved="true">
-  <proof prover="5"><result status="valid" time="0.03" steps="50"/></proof>
+  <proof prover="5"><result status="valid" time="0.03" steps="49"/></proof>
   </goal>
   <goal name="VC wmpn_decr_1.26" expl="loop invariant preservation" proved="true">
-  <proof prover="5"><result status="valid" time="0.04" steps="66"/></proof>
+  <proof prover="5"><result status="valid" time="0.04" steps="65"/></proof>
   </goal>
   <goal name="VC wmpn_decr_1.27" expl="loop invariant preservation" proved="true">
-  <proof prover="5"><result status="valid" time="0.02" steps="69"/></proof>
+  <proof prover="5"><result status="valid" time="0.02" steps="68"/></proof>
   </goal>
   <goal name="VC wmpn_decr_1.28" expl="assertion" proved="true">
   <proof prover="5"><result status="valid" time="0.02" steps="52"/></proof>
   </goal>
   <goal name="VC wmpn_decr_1.29" expl="precondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.04"/></proof>
+  <proof prover="3"><result status="valid" time="0.03"/></proof>
   </goal>
   <goal name="VC wmpn_decr_1.30" expl="precondition" proved="true">
   <proof prover="3"><result status="valid" time="0.01"/></proof>
   </goal>
   <goal name="VC wmpn_decr_1.31" expl="precondition" proved="true">
-  <proof prover="5"><result status="valid" time="0.02" steps="131"/></proof>
+  <proof prover="5"><result status="valid" time="0.04" steps="131"/></proof>
   </goal>
   <goal name="VC wmpn_decr_1.32" expl="assertion" proved="true">
   <proof prover="5"><result status="valid" time="0.02" steps="55"/></proof>
   </goal>
   <goal name="VC wmpn_decr_1.33" expl="assertion" proved="true">
-  <proof prover="5"><result status="valid" time="0.08" steps="112"/></proof>
+  <proof prover="5"><result status="valid" time="0.09" steps="112"/></proof>
   </goal>
   <goal name="VC wmpn_decr_1.34" expl="precondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.01"/></proof>
+  <proof prover="3"><result status="valid" time="0.02"/></proof>
   </goal>
   <goal name="VC wmpn_decr_1.35" expl="precondition" proved="true">
   <proof prover="3"><result status="valid" time="0.01"/></proof>
@@ -1353,13 +1334,32 @@
   <proof prover="3"><result status="valid" time="0.20"/></proof>
   </goal>
   <goal name="VC wmpn_decr_1.38" expl="assertion" proved="true">
-  <proof prover="5"><result status="valid" time="0.04" steps="47"/></proof>
+  <transf name="split_vc" proved="true" >
+   <goal name="VC wmpn_decr_1.38.0" expl="assertion" proved="true">
+   <proof prover="0" memlimit="1000"><result status="valid" time="0.02"/></proof>
+   </goal>
+   <goal name="VC wmpn_decr_1.38.1" expl="VC for wmpn_decr_1" proved="true">
+   <proof prover="3"><result status="valid" time="0.02"/></proof>
+   </goal>
+   <goal name="VC wmpn_decr_1.38.2" expl="VC for wmpn_decr_1" proved="true">
+   <proof prover="2"><result status="valid" time="0.12"/></proof>
+   </goal>
+   <goal name="VC wmpn_decr_1.38.3" expl="VC for wmpn_decr_1" proved="true">
+   <proof prover="3"><result status="valid" time="0.02"/></proof>
+   </goal>
+   <goal name="VC wmpn_decr_1.38.4" expl="VC for wmpn_decr_1" proved="true">
+   <proof prover="3"><result status="valid" time="0.02"/></proof>
+   </goal>
+   <goal name="VC wmpn_decr_1.38.5" expl="VC for wmpn_decr_1" proved="true">
+   <proof prover="3"><result status="valid" time="0.02"/></proof>
+   </goal>
+  </transf>
   </goal>
   <goal name="VC wmpn_decr_1.39" expl="loop variant decrease" proved="true">
-  <proof prover="3"><result status="valid" time="0.03"/></proof>
+  <proof prover="3"><result status="valid" time="0.04"/></proof>
   </goal>
   <goal name="VC wmpn_decr_1.40" expl="loop invariant preservation" proved="true">
-  <proof prover="5"><result status="valid" time="0.04" steps="122"/></proof>
+  <proof prover="5"><result status="valid" time="0.08" steps="117"/></proof>
   </goal>
   <goal name="VC wmpn_decr_1.41" expl="loop invariant preservation" proved="true">
   <proof prover="3"><result status="valid" time="0.03"/></proof>
@@ -1371,13 +1371,13 @@
   <proof prover="3"><result status="valid" time="0.02"/></proof>
   </goal>
   <goal name="VC wmpn_decr_1.44" expl="loop invariant preservation" proved="true">
-  <proof prover="5"><result status="valid" time="0.03" steps="50"/></proof>
+  <proof prover="5"><result status="valid" time="0.03" steps="49"/></proof>
   </goal>
   <goal name="VC wmpn_decr_1.45" expl="loop invariant preservation" proved="true">
-  <proof prover="5"><result status="valid" time="0.04" steps="66"/></proof>
+  <proof prover="5"><result status="valid" time="0.04" steps="65"/></proof>
   </goal>
   <goal name="VC wmpn_decr_1.46" expl="loop invariant preservation" proved="true">
-  <proof prover="5"><result status="valid" time="0.02" steps="69"/></proof>
+  <proof prover="5"><result status="valid" time="0.02" steps="68"/></proof>
   </goal>
   <goal name="VC wmpn_decr_1.47" expl="precondition" proved="true">
   <proof prover="3"><result status="valid" time="0.02"/></proof>
@@ -1473,10 +1473,10 @@
   <proof prover="2"><result status="valid" time="0.16"/></proof>
   </goal>
   <goal name="VC wmpn_sub_1_in_place.19" expl="assertion" proved="true">
-  <proof prover="2"><result status="valid" time="0.09"/></proof>
+  <proof prover="2"><result status="valid" time="0.21"/></proof>
   </goal>
   <goal name="VC wmpn_sub_1_in_place.20" expl="assertion" proved="true">
-  <proof prover="5"><result status="valid" time="0.60" steps="53"/></proof>
+  <proof prover="5"><result status="valid" time="0.60" steps="52"/></proof>
   </goal>
   <goal name="VC wmpn_sub_1_in_place.21" expl="precondition" proved="true">
   <proof prover="2"><result status="valid" time="0.05"/></proof>
@@ -1491,10 +1491,10 @@
   <proof prover="2"><result status="valid" time="0.08"/></proof>
   </goal>
   <goal name="VC wmpn_sub_1_in_place.25" expl="postcondition" proved="true">
-  <proof prover="5"><result status="valid" time="0.63" steps="57"/></proof>
+  <proof prover="5"><result status="valid" time="0.79" steps="56"/></proof>
   </goal>
   <goal name="VC wmpn_sub_1_in_place.26" expl="postcondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.10"/></proof>
+  <proof prover="2"><result status="valid" time="0.06"/></proof>
   </goal>
   <goal name="VC wmpn_sub_1_in_place.27" expl="postcondition" proved="true">
   <proof prover="2"><result status="valid" time="0.09"/></proof>
@@ -1503,7 +1503,7 @@
   <proof prover="2"><result status="valid" time="0.06"/></proof>
   </goal>
   <goal name="VC wmpn_sub_1_in_place.29" expl="assertion" proved="true">
-  <proof prover="5" timelimit="5" memlimit="2000"><result status="valid" time="0.48" steps="69"/></proof>
+  <proof prover="5" timelimit="5" memlimit="2000"><result status="valid" time="0.83" steps="66"/></proof>
   </goal>
   <goal name="VC wmpn_sub_1_in_place.30" expl="loop variant decrease" proved="true">
   <proof prover="2"><result status="valid" time="0.10"/></proof>
@@ -1539,7 +1539,7 @@
   <proof prover="5"><result status="valid" time="0.04" steps="33"/></proof>
   </goal>
   <goal name="VC wmpn_sub_1_in_place.41" expl="postcondition" proved="true">
-  <proof prover="2"><result status="valid" time="0.06"/></proof>
+  <proof prover="2"><result status="valid" time="0.10"/></proof>
   </goal>
   <goal name="VC wmpn_sub_1_in_place.42" expl="postcondition" proved="true">
   <proof prover="2"><result status="valid" time="0.09"/></proof>
diff --git a/examples/multiprecision/sub/why3shapes.gz b/examples/multiprecision/sub/why3shapes.gz
index 9e1205f0210461f1184513448a054e4c7eb5dcaa..daf47f784cd6edc2875165b4a77f19fb572876f5 100644
Binary files a/examples/multiprecision/sub/why3shapes.gz and b/examples/multiprecision/sub/why3shapes.gz differ
diff --git a/examples/multiprecision/toom/why3session.xml b/examples/multiprecision/toom/why3session.xml
index 1c40b81c261a9cf8ab8a975273229d565d7bb473..675ecf540b0f6ff41e4d1fc3b86da192c2b5097d 100644
--- a/examples/multiprecision/toom/why3session.xml
+++ b/examples/multiprecision/toom/why3session.xml
@@ -149,7 +149,7 @@
   <proof prover="1"><result status="valid" time="0.08"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.29" expl="precondition" proved="true">
-  <proof prover="5"><result status="valid" time="0.36" steps="211"/></proof>
+  <proof prover="5"><result status="valid" time="0.67" steps="211"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.30" expl="precondition" proved="true">
   <proof prover="5"><result status="valid" time="0.48" steps="200"/></proof>
@@ -194,10 +194,10 @@
   </transf>
   </goal>
   <goal name="VC wmpn_toom22_mul.35" expl="precondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.01"/></proof>
+  <proof prover="3"><result status="valid" time="0.04"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.36" expl="precondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.03"/></proof>
+  <proof prover="3"><result status="valid" time="0.02"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.37" expl="precondition" proved="true">
   <proof prover="3"><result status="valid" time="0.01"/></proof>
@@ -206,7 +206,7 @@
   <proof prover="3"><result status="valid" time="0.01"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.39" expl="postcondition" proved="true">
-  <proof prover="5"><result status="valid" time="0.44" steps="141"/></proof>
+  <proof prover="5"><result status="valid" time="0.60" steps="141"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.40" expl="postcondition" proved="true">
   <transf name="split_vc" proved="true" >
@@ -221,7 +221,7 @@
   </transf>
   </goal>
   <goal name="VC wmpn_toom22_mul.43" expl="precondition" proved="true">
-  <proof prover="5"><result status="valid" time="0.41" steps="212"/></proof>
+  <proof prover="5"><result status="valid" time="0.67" steps="212"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.44" expl="precondition" proved="true">
   <proof prover="5"><result status="valid" time="0.48" steps="201"/></proof>
@@ -230,16 +230,16 @@
   <proof prover="1"><result status="valid" time="0.16"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.46" expl="precondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.01"/></proof>
+  <proof prover="3"><result status="valid" time="0.04"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.47" expl="precondition" proved="true">
   <proof prover="3"><result status="valid" time="0.01"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.48" expl="precondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.01"/></proof>
+  <proof prover="3"><result status="valid" time="0.02"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.49" expl="precondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.01"/></proof>
+  <proof prover="3"><result status="valid" time="0.02"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.50" expl="postcondition" proved="true">
   <proof prover="1"><result status="valid" time="0.11"/></proof>
@@ -260,7 +260,7 @@
   <proof prover="5"><result status="valid" time="0.42" steps="183"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.55" expl="precondition" proved="true">
-  <proof prover="5"><result status="valid" time="0.42" steps="214"/></proof>
+  <proof prover="5"><result status="valid" time="0.74" steps="214"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.56" expl="precondition" proved="true">
   <proof prover="5"><result status="valid" time="0.52" steps="203"/></proof>
@@ -281,19 +281,19 @@
   <proof prover="1"><result status="valid" time="0.16"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.62" expl="precondition" proved="true">
-  <proof prover="5" memlimit="2000"><result status="valid" time="0.44" steps="218"/></proof>
+  <proof prover="5" memlimit="2000"><result status="valid" time="0.81" steps="218"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.63" expl="precondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.04"/></proof>
+  <proof prover="3"><result status="valid" time="0.03"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.64" expl="precondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.02"/></proof>
+  <proof prover="3"><result status="valid" time="0.03"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.65" expl="precondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.02"/></proof>
+  <proof prover="3"><result status="valid" time="0.01"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.66" expl="precondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.02"/></proof>
+  <proof prover="3"><result status="valid" time="0.01"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.67" expl="precondition" proved="true">
   <proof prover="3"><result status="valid" time="0.01"/></proof>
@@ -302,13 +302,13 @@
   <proof prover="3"><result status="valid" time="0.03"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.69" expl="precondition" proved="true">
-  <proof prover="5"><result status="valid" time="0.40" steps="149"/></proof>
+  <proof prover="5"><result status="valid" time="0.75" steps="149"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.70" expl="precondition" proved="true">
   <proof prover="3"><result status="valid" time="0.03"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.71" expl="postcondition" proved="true">
-  <proof prover="5" memlimit="2000"><result status="valid" time="0.67" steps="222"/></proof>
+  <proof prover="5" memlimit="2000"><result status="valid" time="0.89" steps="222"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.72" expl="postcondition" proved="true">
   <transf name="split_vc" proved="true" >
@@ -323,13 +323,13 @@
   </transf>
   </goal>
   <goal name="VC wmpn_toom22_mul.75" expl="precondition" proved="true">
-  <proof prover="5" memlimit="2000"><result status="valid" time="0.44" steps="216"/></proof>
+  <proof prover="5" memlimit="2000"><result status="valid" time="0.61" steps="216"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.76" expl="precondition" proved="true">
-  <proof prover="5"><result status="valid" time="0.42" steps="203"/></proof>
+  <proof prover="5"><result status="valid" time="0.56" steps="203"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.77" expl="precondition" proved="true">
-  <proof prover="5"><result status="valid" time="0.44" steps="212"/></proof>
+  <proof prover="5"><result status="valid" time="0.71" steps="212"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.78" expl="precondition" proved="true">
   <proof prover="3"><result status="valid" time="0.01"/></proof>
@@ -338,11 +338,11 @@
   <proof prover="3"><result status="valid" time="0.03"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.80" expl="precondition" proved="true">
-  <proof prover="5"><result status="valid" time="0.60" steps="194"/></proof>
+  <proof prover="5"><result status="valid" time="0.82" steps="194"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.81" expl="integer overflow" proved="true">
-  <proof prover="4" timelimit="20" memlimit="1000"><result status="valid" time="5.70"/></proof>
-  <proof prover="5" timelimit="20"><result status="valid" time="12.04" steps="380"/></proof>
+  <proof prover="4" timelimit="20" memlimit="1000"><result status="valid" time="7.54"/></proof>
+  <proof prover="5" timelimit="20"><result status="valid" time="14.44" steps="380"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.82" expl="precondition" proved="true">
   <proof prover="1"><result status="valid" time="0.13"/></proof>
@@ -352,7 +352,7 @@
    <goal name="VC wmpn_toom22_mul.83.0" expl="assertion" proved="true">
    <transf name="inline_goal" proved="true" >
     <goal name="VC wmpn_toom22_mul.83.0.0" expl="assertion" proved="true">
-    <proof prover="5"><result status="valid" time="0.75" steps="210"/></proof>
+    <proof prover="5"><result status="valid" time="1.28" steps="209"/></proof>
     </goal>
    </transf>
    </goal>
@@ -369,10 +369,10 @@
    <goal name="VC wmpn_toom22_mul.86.0" expl="VC for wmpn_toom22_mul" proved="true">
    <transf name="split_vc" proved="true" >
     <goal name="VC wmpn_toom22_mul.86.0.0" expl="VC for wmpn_toom22_mul" proved="true">
-    <proof prover="5" memlimit="2000"><result status="valid" time="0.51" steps="155"/></proof>
+    <proof prover="5" memlimit="2000"><result status="valid" time="0.92" steps="154"/></proof>
     </goal>
     <goal name="VC wmpn_toom22_mul.86.0.1" expl="VC for wmpn_toom22_mul" proved="true">
-    <proof prover="5"><result status="valid" time="1.96" steps="154"/></proof>
+    <proof prover="5"><result status="valid" time="0.84" steps="153"/></proof>
     </goal>
    </transf>
    </goal>
@@ -391,16 +391,16 @@
   </transf>
   </goal>
   <goal name="VC wmpn_toom22_mul.90" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.35"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.60"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.91" expl="precondition" proved="true">
-  <proof prover="5"><result status="valid" time="0.40" steps="205"/></proof>
+  <proof prover="5"><result status="valid" time="0.60" steps="205"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.92" expl="postcondition" proved="true">
   <proof prover="1"><result status="valid" time="0.24"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.93" expl="precondition" proved="true">
-  <proof prover="5" memlimit="2000"><result status="valid" time="0.46" steps="220"/></proof>
+  <proof prover="5" memlimit="2000"><result status="valid" time="0.69" steps="220"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.94" expl="precondition" proved="true">
   <proof prover="3"><result status="valid" time="0.07"/></proof>
@@ -412,7 +412,7 @@
   <proof prover="3"><result status="valid" time="0.04"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.97" expl="precondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.04"/></proof>
+  <proof prover="3"><result status="valid" time="0.03"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.98" expl="precondition" proved="true">
   <proof prover="3"><result status="valid" time="0.02"/></proof>
@@ -440,28 +440,28 @@
   </transf>
   </goal>
   <goal name="VC wmpn_toom22_mul.105" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.31"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.48"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.106" expl="precondition" proved="true">
-  <proof prover="5"><result status="valid" time="0.43" steps="206"/></proof>
+  <proof prover="5"><result status="valid" time="0.72" steps="206"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.107" expl="precondition" proved="true">
-  <proof prover="5"><result status="valid" time="0.41" steps="215"/></proof>
+  <proof prover="5"><result status="valid" time="0.60" steps="215"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.108" expl="precondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.02"/></proof>
+  <proof prover="3"><result status="valid" time="0.04"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.109" expl="precondition" proved="true">
   <proof prover="3"><result status="valid" time="0.01"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.110" expl="precondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.02"/></proof>
+  <proof prover="3"><result status="valid" time="0.01"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.111" expl="precondition" proved="true">
   <proof prover="3"><result status="valid" time="0.02"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.112" expl="postcondition" proved="true">
-  <proof prover="5"><result status="valid" time="0.68" steps="145"/></proof>
+  <proof prover="5"><result status="valid" time="1.17" steps="145"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.113" expl="postcondition" proved="true">
   <transf name="split_vc" proved="true" >
@@ -516,23 +516,23 @@
   <proof prover="3"><result status="valid" time="0.02"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.129" expl="precondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.03"/></proof>
+  <proof prover="3"><result status="valid" time="0.04"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.130" expl="precondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.01"/></proof>
+  <proof prover="3"><result status="valid" time="0.02"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.131" expl="precondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.01"/></proof>
+  <proof prover="3"><result status="valid" time="0.02"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.132" expl="assertion" proved="true">
   <transf name="split_vc" proved="true" >
   </transf>
   </goal>
   <goal name="VC wmpn_toom22_mul.133" expl="precondition" proved="true">
-  <proof prover="5"><result status="valid" time="0.83" steps="164"/></proof>
+  <proof prover="5"><result status="valid" time="1.08" steps="164"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.134" expl="integer overflow" proved="true">
-  <proof prover="5"><result status="valid" time="0.82" steps="198"/></proof>
+  <proof prover="5"><result status="valid" time="1.46" steps="198"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.135" expl="precondition" proved="true">
   <transf name="introduce_premises" proved="true" >
@@ -550,7 +550,7 @@
      <proof prover="3"><result status="valid" time="0.06"/></proof>
      </goal>
      <goal name="VC wmpn_toom22_mul.135.0.0.3" expl="precondition" proved="true">
-     <proof prover="5"><result status="valid" time="0.94" steps="172"/></proof>
+     <proof prover="5"><result status="valid" time="1.32" steps="172"/></proof>
      </goal>
      <goal name="VC wmpn_toom22_mul.135.0.0.4" expl="precondition" proved="true">
      <proof prover="3"><result status="valid" time="0.04"/></proof>
@@ -569,7 +569,7 @@
    <goal name="VC wmpn_toom22_mul.136.0" expl="precondition" proved="true">
    <transf name="inline_goal" proved="true" >
     <goal name="VC wmpn_toom22_mul.136.0.0" expl="precondition" proved="true">
-    <proof prover="5" memlimit="2000"><result status="valid" time="1.44" steps="253"/></proof>
+    <proof prover="5" memlimit="2000"><result status="valid" time="2.13" steps="253"/></proof>
     </goal>
    </transf>
    </goal>
@@ -585,7 +585,7 @@
   <proof prover="3"><result status="valid" time="0.05"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.140" expl="assertion" proved="true">
-  <proof prover="0"><result status="valid" time="1.20"/></proof>
+  <proof prover="0"><result status="valid" time="1.81"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.141" expl="postcondition" proved="true">
   <proof prover="1"><result status="valid" time="0.08"/></proof>
@@ -691,7 +691,7 @@
   </transf>
   </goal>
   <goal name="VC wmpn_toom22_mul.153" expl="precondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.04"/></proof>
+  <proof prover="3"><result status="valid" time="0.02"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.154" expl="precondition" proved="true">
   <proof prover="3"><result status="valid" time="0.02"/></proof>
@@ -700,7 +700,7 @@
   <proof prover="3"><result status="valid" time="0.01"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.156" expl="precondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.02"/></proof>
+  <proof prover="3"><result status="valid" time="0.01"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.157" expl="postcondition" proved="true">
   <proof prover="1"><result status="valid" time="0.06"/></proof>
@@ -722,16 +722,16 @@
   </transf>
   </goal>
   <goal name="VC wmpn_toom22_mul.162" expl="variant decrease" proved="true">
-  <proof prover="3"><result status="valid" time="0.03"/></proof>
+  <proof prover="3"><result status="valid" time="0.05"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.163" expl="precondition" proved="true">
-  <proof prover="5" memlimit="2000"><result status="valid" time="0.80" steps="242"/></proof>
+  <proof prover="5" memlimit="2000"><result status="valid" time="1.18" steps="242"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.164" expl="precondition" proved="true">
-  <proof prover="5"><result status="valid" time="0.84" steps="232"/></proof>
+  <proof prover="5"><result status="valid" time="1.35" steps="232"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.165" expl="precondition" proved="true">
-  <proof prover="5"><result status="valid" time="0.77" steps="253"/></proof>
+  <proof prover="5"><result status="valid" time="1.18" steps="253"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.166" expl="precondition" proved="true">
   <proof prover="3"><result status="valid" time="0.04"/></proof>
@@ -740,16 +740,16 @@
   <proof prover="3"><result status="valid" time="0.03"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.168" expl="precondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.04"/></proof>
+  <proof prover="3"><result status="valid" time="0.01"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.169" expl="precondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.04"/></proof>
+  <proof prover="3"><result status="valid" time="0.05"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.170" expl="precondition" proved="true">
-  <proof prover="5" memlimit="2000"><result status="valid" time="0.78" steps="289"/></proof>
+  <proof prover="5" memlimit="2000"><result status="valid" time="1.02" steps="289"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.171" expl="assertion" proved="true">
-  <proof prover="5"><result status="valid" time="0.44" steps="150"/></proof>
+  <proof prover="5"><result status="valid" time="0.68" steps="150"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.172" expl="precondition" proved="true">
   <proof prover="3"><result status="valid" time="0.03"/></proof>
@@ -764,7 +764,7 @@
   <proof prover="3"><result status="valid" time="0.01"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.176" expl="assertion" proved="true">
-  <proof prover="5"><result status="valid" time="0.51" steps="157"/></proof>
+  <proof prover="5"><result status="valid" time="0.88" steps="157"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.177" expl="assertion" proved="true">
   <proof prover="3"><result status="valid" time="0.02"/></proof>
@@ -773,10 +773,10 @@
   <proof prover="3"><result status="valid" time="0.06"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.179" expl="assertion" proved="true">
-  <proof prover="5"><result status="valid" time="0.70" steps="225"/></proof>
+  <proof prover="5"><result status="valid" time="1.11" steps="225"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.180" expl="assertion" proved="true">
-  <proof prover="5"><result status="valid" time="0.52" steps="162"/></proof>
+  <proof prover="5"><result status="valid" time="0.78" steps="162"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.181" expl="assertion" proved="true">
   <transf name="split_vc" proved="true" >
@@ -789,19 +789,19 @@
   </transf>
   </goal>
   <goal name="VC wmpn_toom22_mul.182" expl="assertion" proved="true">
-  <proof prover="5"><result status="valid" time="1.26" steps="292"/></proof>
+  <proof prover="5"><result status="valid" time="2.42" steps="292"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.183" expl="postcondition" proved="true">
   <proof prover="3"><result status="valid" time="0.03"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.184" expl="precondition" proved="true">
-  <proof prover="5"><result status="valid" time="1.37" steps="260"/></proof>
+  <proof prover="5"><result status="valid" time="2.51" steps="260"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.185" expl="precondition" proved="true">
   <proof prover="3"><result status="valid" time="0.02"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.186" expl="precondition" proved="true">
-  <proof prover="5"><result status="valid" time="1.42" steps="281"/></proof>
+  <proof prover="5"><result status="valid" time="2.09" steps="281"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.187" expl="precondition" proved="true">
   <proof prover="3"><result status="valid" time="0.02"/></proof>
@@ -810,13 +810,13 @@
   <proof prover="3"><result status="valid" time="0.05"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.189" expl="precondition" proved="true">
-  <proof prover="5" memlimit="2000"><result status="valid" time="0.83" steps="280"/></proof>
+  <proof prover="5" memlimit="2000"><result status="valid" time="1.26" steps="280"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.190" expl="precondition" proved="true">
-  <proof prover="5" memlimit="2000"><result status="valid" time="0.84" steps="299"/></proof>
+  <proof prover="5" memlimit="2000"><result status="valid" time="1.21" steps="299"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.191" expl="precondition" proved="true">
-  <proof prover="5"><result status="valid" time="0.86" steps="319"/></proof>
+  <proof prover="5"><result status="valid" time="1.37" steps="319"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.192" expl="precondition" proved="true">
   <proof prover="3"><result status="valid" time="0.02"/></proof>
@@ -825,25 +825,25 @@
   <proof prover="3"><result status="valid" time="0.02"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.194" expl="precondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.04"/></proof>
+  <proof prover="3"><result status="valid" time="0.01"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.195" expl="precondition" proved="true">
   <proof prover="3"><result status="valid" time="0.04"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.196" expl="precondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.01"/></proof>
+  <proof prover="3"><result status="valid" time="0.02"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.197" expl="variant decrease" proved="true">
   <proof prover="3"><result status="valid" time="0.04"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.198" expl="precondition" proved="true">
-  <proof prover="5"><result status="valid" time="1.06" steps="290"/></proof>
+  <proof prover="5"><result status="valid" time="1.85" steps="290"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.199" expl="precondition" proved="true">
   <proof prover="3"><result status="valid" time="0.05"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.200" expl="precondition" proved="true">
-  <proof prover="5" memlimit="2000"><result status="valid" time="1.13" steps="307"/></proof>
+  <proof prover="5" memlimit="2000"><result status="valid" time="1.70" steps="307"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.201" expl="precondition" proved="true">
   <proof prover="3"><result status="valid" time="0.04"/></proof>
@@ -852,22 +852,22 @@
   <proof prover="3"><result status="valid" time="0.02"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.203" expl="precondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.02"/></proof>
+  <proof prover="3"><result status="valid" time="0.04"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.204" expl="precondition" proved="true">
   <proof prover="3"><result status="valid" time="0.04"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.205" expl="precondition" proved="true">
-  <proof prover="5" memlimit="2000"><result status="valid" time="1.31" steps="358"/></proof>
+  <proof prover="5" memlimit="2000"><result status="valid" time="1.90" steps="358"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.206" expl="postcondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.02"/></proof>
+  <proof prover="3"><result status="valid" time="0.01"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.207" expl="postcondition" proved="true">
   <proof prover="3"><result status="valid" time="0.01"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.208" expl="postcondition" proved="true">
-  <proof prover="5"><result status="valid" time="1.08" steps="186"/></proof>
+  <proof prover="0"><result status="valid" time="0.10"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.209" expl="postcondition" proved="true">
   <transf name="split_vc" proved="true" >
@@ -882,7 +882,7 @@
   </transf>
   </goal>
   <goal name="VC wmpn_toom22_mul.212" expl="postcondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.03"/></proof>
+  <proof prover="3"><result status="valid" time="0.04"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.213" expl="postcondition" proved="true">
   <proof prover="3"><result status="valid" time="0.04"/></proof>
@@ -891,7 +891,7 @@
   <proof prover="3"><result status="valid" time="0.01"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.215" expl="postcondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.01"/></proof>
+  <proof prover="3"><result status="valid" time="0.02"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.216" expl="postcondition" proved="true">
   <proof prover="3"><result status="valid" time="0.01"/></proof>
@@ -900,10 +900,10 @@
   <proof prover="3"><result status="valid" time="0.05"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.218" expl="postcondition" proved="true">
-  <proof prover="0"><result status="valid" time="0.03"/></proof>
+  <proof prover="3"><result status="valid" time="0.03"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.219" expl="postcondition" proved="true">
-  <proof prover="0"><result status="valid" time="0.04"/></proof>
+  <proof prover="0"><result status="valid" time="0.03"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.220" expl="exceptional postcondition" proved="true">
   <proof prover="1" timelimit="1"><result status="valid" time="0.05"/></proof>
@@ -912,16 +912,16 @@
   <proof prover="1" timelimit="1"><result status="valid" time="0.06"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.222" expl="variant decrease" proved="true">
-  <proof prover="3"><result status="valid" time="0.05"/></proof>
+  <proof prover="3"><result status="valid" time="0.03"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.223" expl="precondition" proved="true">
-  <proof prover="5"><result status="valid" time="0.80" steps="280"/></proof>
+  <proof prover="5"><result status="valid" time="1.30" steps="280"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.224" expl="precondition" proved="true">
   <proof prover="1" timelimit="1"><result status="valid" time="0.20"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.225" expl="precondition" proved="true">
-  <proof prover="5"><result status="valid" time="0.77" steps="308"/></proof>
+  <proof prover="5"><result status="valid" time="1.49" steps="308"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.226" expl="precondition" proved="true">
   <proof prover="3"><result status="valid" time="0.01"/></proof>
@@ -936,19 +936,19 @@
   <proof prover="3"><result status="valid" time="0.04"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.230" expl="precondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.02"/></proof>
+  <proof prover="3"><result status="valid" time="0.01"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.231" expl="variant decrease" proved="true">
   <proof prover="3"><result status="valid" time="0.05"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.232" expl="precondition" proved="true">
-  <proof prover="5"><result status="valid" time="0.94" steps="290"/></proof>
+  <proof prover="5"><result status="valid" time="1.36" steps="290"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.233" expl="precondition" proved="true">
   <proof prover="3"><result status="valid" time="0.04"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.234" expl="precondition" proved="true">
-  <proof prover="5"><result status="valid" time="0.91" steps="307"/></proof>
+  <proof prover="5"><result status="valid" time="1.72" steps="307"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.235" expl="precondition" proved="true">
   <proof prover="3"><result status="valid" time="0.02"/></proof>
@@ -960,19 +960,19 @@
   <proof prover="3"><result status="valid" time="0.04"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.238" expl="precondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.05"/></proof>
+  <proof prover="3"><result status="valid" time="0.04"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.239" expl="precondition" proved="true">
-  <proof prover="5" memlimit="2000"><result status="valid" time="1.02" steps="358"/></proof>
+  <proof prover="5" memlimit="2000"><result status="valid" time="1.62" steps="358"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.240" expl="postcondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.01"/></proof>
+  <proof prover="3"><result status="valid" time="0.02"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.241" expl="postcondition" proved="true">
   <proof prover="3"><result status="valid" time="0.02"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.242" expl="postcondition" proved="true">
-  <proof prover="0"><result status="valid" time="0.10"/></proof>
+  <proof prover="5"><result status="valid" time="1.33" steps="186"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.243" expl="postcondition" proved="true">
   <transf name="split_vc" proved="true" >
@@ -987,7 +987,7 @@
   </transf>
   </goal>
   <goal name="VC wmpn_toom22_mul.246" expl="postcondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.04"/></proof>
+  <proof prover="3"><result status="valid" time="0.03"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.247" expl="postcondition" proved="true">
   <proof prover="3"><result status="valid" time="0.03"/></proof>
@@ -996,7 +996,7 @@
   <proof prover="3"><result status="valid" time="0.02"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.249" expl="postcondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.02"/></proof>
+  <proof prover="3"><result status="valid" time="0.01"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.250" expl="postcondition" proved="true">
   <proof prover="3"><result status="valid" time="0.01"/></proof>
@@ -1005,10 +1005,10 @@
   <proof prover="3"><result status="valid" time="0.04"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.252" expl="postcondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.03"/></proof>
+  <proof prover="0"><result status="valid" time="0.03"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.253" expl="postcondition" proved="true">
-  <proof prover="0"><result status="valid" time="0.03"/></proof>
+  <proof prover="0"><result status="valid" time="0.04"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.254" expl="exceptional postcondition" proved="true">
   <proof prover="1" timelimit="1"><result status="valid" time="0.07"/></proof>
@@ -1023,7 +1023,7 @@
   <proof prover="1"><result status="valid" time="0.11"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.258" expl="integer overflow" proved="true">
-  <proof prover="1"><result status="valid" time="0.22"/></proof>
+  <proof prover="1"><result status="valid" time="0.45"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.259" expl="precondition" proved="true">
   <proof prover="3"><result status="valid" time="0.06"/></proof>
@@ -1176,7 +1176,7 @@
   </transf>
   </goal>
   <goal name="VC wmpn_toom22_mul.273" expl="integer overflow" proved="true">
-  <proof prover="1" memlimit="2000"><result status="valid" time="0.30"/></proof>
+  <proof prover="1" memlimit="2000"><result status="valid" time="0.50"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.274" expl="assertion" proved="true">
   <transf name="split_vc" proved="true" >
@@ -1187,7 +1187,7 @@
    <proof prover="3"><result status="valid" time="0.03"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.274.2" expl="assertion" proved="true">
-   <proof prover="4"><result status="valid" time="0.13"/></proof>
+   <proof prover="4"><result status="valid" time="0.26"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.274.3" expl="VC for wmpn_toom22_mul" proved="true">
    <proof prover="1"><result status="valid" time="0.13"/></proof>
@@ -1210,7 +1210,7 @@
     <goal name="VC wmpn_toom22_mul.278.0.0" expl="precondition" proved="true">
     <transf name="split_vc" proved="true" >
      <goal name="VC wmpn_toom22_mul.278.0.0.0" expl="precondition" proved="true">
-     <proof prover="3"><result status="valid" time="0.24"/></proof>
+     <proof prover="3"><result status="valid" time="0.40"/></proof>
      </goal>
      <goal name="VC wmpn_toom22_mul.278.0.0.1" expl="precondition" proved="true">
      <proof prover="3"><result status="valid" time="0.04"/></proof>
@@ -1222,7 +1222,7 @@
      <proof prover="3"><result status="valid" time="0.34"/></proof>
      </goal>
      <goal name="VC wmpn_toom22_mul.278.0.0.4" expl="precondition" proved="true">
-     <proof prover="3"><result status="valid" time="0.27"/></proof>
+     <proof prover="3"><result status="valid" time="0.42"/></proof>
      </goal>
      <goal name="VC wmpn_toom22_mul.278.0.0.5" expl="precondition" proved="true">
      <proof prover="3"><result status="valid" time="0.41"/></proof>
@@ -1246,7 +1246,7 @@
      <proof prover="3"><result status="valid" time="0.01"/></proof>
      </goal>
      <goal name="VC wmpn_toom22_mul.279.0.0.2" expl="precondition" proved="true">
-     <proof prover="3"><result status="valid" time="0.30"/></proof>
+     <proof prover="3"><result status="valid" time="0.46"/></proof>
      </goal>
      <goal name="VC wmpn_toom22_mul.279.0.0.3" expl="precondition" proved="true">
      <proof prover="3"><result status="valid" time="0.03"/></proof>
@@ -1322,7 +1322,7 @@
        <goal name="VC wmpn_toom22_mul.285.0.0.0.0.0" expl="precondition" proved="true">
        <transf name="apply" proved="true" arg1="H3">
         <goal name="VC wmpn_toom22_mul.285.0.0.0.0.0.0" proved="true">
-        <proof prover="1"><result status="valid" time="0.22"/></proof>
+        <proof prover="1" memlimit="2000"><result status="valid" time="0.10"/></proof>
         </goal>
        </transf>
        </goal>
@@ -1352,7 +1352,7 @@
        <goal name="VC wmpn_toom22_mul.287.0.0.0.0.0" expl="precondition" proved="true">
        <transf name="apply" proved="true" arg1="H4">
         <goal name="VC wmpn_toom22_mul.287.0.0.0.0.0.0" proved="true">
-        <proof prover="1" memlimit="2000"><result status="valid" time="0.20"/></proof>
+        <proof prover="1" timelimit="1"><result status="valid" time="0.10"/></proof>
         </goal>
        </transf>
        </goal>
@@ -1372,7 +1372,7 @@
   <goal name="VC wmpn_toom22_mul.289" expl="integer overflow" proved="true">
   <transf name="split_all_full" proved="true" >
    <goal name="VC wmpn_toom22_mul.289.0" expl="integer overflow" proved="true">
-   <proof prover="3" timelimit="10" memlimit="4000"><result status="valid" time="0.68"/></proof>
+   <proof prover="3" timelimit="10" memlimit="4000"><result status="valid" time="1.00"/></proof>
    </goal>
   </transf>
   </goal>
@@ -1418,7 +1418,7 @@
        <proof prover="3"><result status="valid" time="0.02"/></proof>
        </goal>
        <goal name="VC wmpn_toom22_mul.292.2.0.0.0.1" expl="VC for wmpn_toom22_mul" proved="true">
-       <proof prover="4"><result status="valid" time="0.20"/></proof>
+       <proof prover="4"><result status="valid" time="0.34"/></proof>
        </goal>
       </transf>
       </goal>
@@ -1434,7 +1434,7 @@
         <proof prover="3"><result status="valid" time="0.01"/></proof>
         </goal>
         <goal name="VC wmpn_toom22_mul.292.2.0.1.0.0.1" expl="VC for wmpn_toom22_mul" proved="true">
-        <proof prover="4"><result status="valid" time="0.23"/></proof>
+        <proof prover="4"><result status="valid" time="0.39"/></proof>
         </goal>
        </transf>
        </goal>
@@ -1502,13 +1502,13 @@
   </transf>
   </goal>
   <goal name="VC wmpn_toom22_mul.293" expl="assertion" proved="true">
-  <proof prover="3"><result status="valid" time="0.68"/></proof>
+  <proof prover="3"><result status="valid" time="0.96"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.294" expl="integer overflow" proved="true">
   <proof prover="0"><result status="valid" time="0.04"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.295" expl="integer overflow" proved="true">
-  <proof prover="3"><result status="valid" time="0.77"/></proof>
+  <proof prover="3"><result status="valid" time="1.12"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.296" expl="precondition" proved="true">
   <proof prover="1" memlimit="2000"><result status="valid" time="0.11"/></proof>
@@ -1529,7 +1529,7 @@
      <proof prover="3"><result status="valid" time="0.80"/></proof>
      </goal>
      <goal name="VC wmpn_toom22_mul.297.0.0.3" expl="precondition" proved="true">
-     <proof prover="3"><result status="valid" time="0.72"/></proof>
+     <proof prover="3"><result status="valid" time="1.00"/></proof>
      </goal>
      <goal name="VC wmpn_toom22_mul.297.0.0.4" expl="precondition" proved="true">
      <proof prover="3"><result status="valid" time="0.75"/></proof>
@@ -1556,7 +1556,7 @@
      <proof prover="3"><result status="valid" time="0.01"/></proof>
      </goal>
      <goal name="VC wmpn_toom22_mul.298.0.0.2" expl="precondition" proved="true">
-     <proof prover="3"><result status="valid" time="0.75"/></proof>
+     <proof prover="3"><result status="valid" time="0.94"/></proof>
      </goal>
      <goal name="VC wmpn_toom22_mul.298.0.0.3" expl="precondition" proved="true">
      <proof prover="3"><result status="valid" time="0.04"/></proof>
@@ -1601,7 +1601,7 @@
   <goal name="VC wmpn_toom22_mul.301" expl="assertion" proved="true">
   <transf name="split_vc" proved="true" >
    <goal name="VC wmpn_toom22_mul.301.0" expl="assertion" proved="true">
-   <proof prover="4"><result status="valid" time="0.22"/></proof>
+   <proof prover="4"><result status="valid" time="0.40"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.301.1" expl="VC for wmpn_toom22_mul" proved="true">
    <proof prover="3"><result status="valid" time="0.02"/></proof>
@@ -1691,7 +1691,7 @@
      <proof prover="3"><result status="valid" time="0.85"/></proof>
      </goal>
      <goal name="VC wmpn_toom22_mul.307.0.0.5" expl="precondition" proved="true">
-     <proof prover="3"><result status="valid" time="0.74"/></proof>
+     <proof prover="3"><result status="valid" time="1.16"/></proof>
      </goal>
     </transf>
     </goal>
@@ -1735,7 +1735,7 @@
    <proof prover="3"><result status="valid" time="0.04"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.309.5" expl="VC for wmpn_toom22_mul" proved="true">
-   <proof prover="0"><result status="valid" time="1.07"/></proof>
+   <proof prover="0"><result status="valid" time="1.88"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.309.6" expl="VC for wmpn_toom22_mul" proved="true">
    <proof prover="1"><result status="valid" time="0.20"/></proof>
@@ -1776,7 +1776,7 @@
    <proof prover="3"><result status="valid" time="0.04"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.311.2" expl="VC for wmpn_toom22_mul" proved="true">
-   <proof prover="3"><result status="valid" time="1.14"/></proof>
+   <proof prover="3"><result status="valid" time="1.89"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.311.3" expl="VC for wmpn_toom22_mul" proved="true">
    <proof prover="3"><result status="valid" time="0.04"/></proof>
@@ -1812,7 +1812,7 @@
    <goal name="VC wmpn_toom22_mul.315.0" expl="precondition" proved="true">
    <transf name="inline_goal" proved="true" >
     <goal name="VC wmpn_toom22_mul.315.0.0" expl="precondition" proved="true">
-    <transf name="introduce_premises" proved="true" >
+    <transf name="split_vc" proved="true" >
      <goal name="VC wmpn_toom22_mul.315.0.0.0" expl="precondition" proved="true">
      <transf name="subst" proved="true" arg1="o1">
       <goal name="VC wmpn_toom22_mul.315.0.0.0.0" expl="precondition" proved="true">
@@ -1820,7 +1820,7 @@
        <goal name="VC wmpn_toom22_mul.315.0.0.0.0.0" expl="precondition" proved="true">
        <transf name="apply" proved="true" arg1="H3">
         <goal name="VC wmpn_toom22_mul.315.0.0.0.0.0.0" proved="true">
-        <proof prover="1" memlimit="2000"><result status="valid" time="0.11"/></proof>
+        <proof prover="1" memlimit="2000"><result status="valid" time="0.10"/></proof>
         </goal>
        </transf>
        </goal>
@@ -1889,7 +1889,7 @@
        <goal name="VC wmpn_toom22_mul.319.0.0.0.0.0" expl="precondition" proved="true">
        <transf name="apply" proved="true" arg1="H6">
         <goal name="VC wmpn_toom22_mul.319.0.0.0.0.0.0" proved="true">
-        <proof prover="1" memlimit="2000"><result status="valid" time="0.23"/></proof>
+        <proof prover="1" memlimit="2000"><result status="valid" time="0.10"/></proof>
         </goal>
        </transf>
        </goal>
@@ -1931,7 +1931,7 @@
   <proof prover="3"><result status="valid" time="0.01"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.322" expl="precondition" proved="true">
-  <proof prover="3"><result status="valid" time="1.07"/></proof>
+  <proof prover="3"><result status="valid" time="1.35"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.323" expl="precondition" proved="true">
   <transf name="introduce_premises" proved="true" >
@@ -1968,7 +1968,7 @@
    <goal name="VC wmpn_toom22_mul.325.0" expl="precondition" proved="true">
    <transf name="inline_goal" proved="true" >
     <goal name="VC wmpn_toom22_mul.325.0.0" expl="precondition" proved="true">
-    <transf name="split_vc" proved="true" >
+    <transf name="introduce_premises" proved="true" >
      <goal name="VC wmpn_toom22_mul.325.0.0.0" expl="precondition" proved="true">
      <transf name="subst" proved="true" arg1="o1">
       <goal name="VC wmpn_toom22_mul.325.0.0.0.0" expl="precondition" proved="true">
@@ -1976,7 +1976,7 @@
        <goal name="VC wmpn_toom22_mul.325.0.0.0.0.0" expl="precondition" proved="true">
        <transf name="apply" proved="true" arg1="H5">
         <goal name="VC wmpn_toom22_mul.325.0.0.0.0.0.0" proved="true">
-        <proof prover="1" memlimit="2000"><result status="valid" time="0.24"/></proof>
+        <proof prover="1" memlimit="2000"><result status="valid" time="0.10"/></proof>
         </goal>
        </transf>
        </goal>
@@ -2045,7 +2045,7 @@
   </transf>
   </goal>
   <goal name="VC wmpn_toom22_mul.330" expl="integer overflow" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.66"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="1.06"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.331" expl="integer overflow" proved="true">
   <proof prover="0"><result status="valid" time="0.02"/></proof>
@@ -2076,7 +2076,7 @@
        <goal name="VC wmpn_toom22_mul.334.0.0.0.0.0" expl="precondition" proved="true">
        <transf name="apply" proved="true" arg1="H13">
         <goal name="VC wmpn_toom22_mul.334.0.0.0.0.0.0" proved="true">
-        <proof prover="1" memlimit="2000"><result status="valid" time="0.12"/></proof>
+        <proof prover="1" memlimit="2000"><result status="valid" time="0.11"/></proof>
         </goal>
        </transf>
        </goal>
@@ -2117,10 +2117,10 @@
     </transf>
     </goal>
     <goal name="VC wmpn_toom22_mul.335.3.1" proved="true">
-    <proof prover="3"><result status="valid" time="0.06"/></proof>
+    <proof prover="3"><result status="valid" time="0.04"/></proof>
     </goal>
     <goal name="VC wmpn_toom22_mul.335.3.2" proved="true">
-    <proof prover="3"><result status="valid" time="0.04"/></proof>
+    <proof prover="3"><result status="valid" time="0.06"/></proof>
     </goal>
    </transf>
    </goal>
@@ -2131,7 +2131,7 @@
    <proof prover="0"><result status="valid" time="0.05"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.335.6" expl="VC for wmpn_toom22_mul" proved="true">
-   <proof prover="4"><result status="valid" time="0.27"/></proof>
+   <proof prover="4"><result status="valid" time="0.44"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.335.7" expl="VC for wmpn_toom22_mul" proved="true">
    <proof prover="4"><result status="valid" time="0.26"/></proof>
@@ -2246,7 +2246,7 @@
   <goal name="VC wmpn_toom22_mul.342" expl="precondition" proved="true">
   <transf name="split_vc" proved="true" >
    <goal name="VC wmpn_toom22_mul.342.0" expl="precondition" proved="true">
-   <proof prover="4"><result status="valid" time="0.28"/></proof>
+   <proof prover="4"><result status="valid" time="0.52"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.342.1" expl="precondition" proved="true">
    <proof prover="4"><result status="valid" time="0.28"/></proof>
@@ -2254,10 +2254,10 @@
   </transf>
   </goal>
   <goal name="VC wmpn_toom22_mul.343" expl="precondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.03"/></proof>
+  <proof prover="3"><result status="valid" time="0.02"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.344" expl="precondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.04"/></proof>
+  <proof prover="3"><result status="valid" time="0.03"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.345" expl="assertion" proved="true">
   <transf name="split_vc" proved="true" >
@@ -2294,19 +2294,19 @@
   </transf>
   </goal>
   <goal name="VC wmpn_toom22_mul.346" expl="assertion" proved="true">
-  <proof prover="0"><result status="valid" time="0.82"/></proof>
+  <proof prover="0"><result status="valid" time="1.23"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.347" expl="precondition" proved="true">
   <proof prover="3"><result status="valid" time="0.04"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.348" expl="precondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.03"/></proof>
+  <proof prover="3"><result status="valid" time="0.04"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.349" expl="precondition" proved="true">
   <proof prover="3"><result status="valid" time="0.04"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.350" expl="precondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.04"/></proof>
+  <proof prover="3"><result status="valid" time="0.03"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.351" expl="assertion" proved="true">
   <transf name="split_vc" proved="true" >
@@ -2314,7 +2314,7 @@
    <proof prover="0"><result status="valid" time="0.10"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.351.1" expl="assertion" proved="true">
-   <proof prover="0"><result status="valid" time="0.41"/></proof>
+   <proof prover="0"><result status="valid" time="0.72"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.351.2" expl="VC for wmpn_toom22_mul" proved="true">
    <proof prover="3"><result status="valid" time="0.02"/></proof>
@@ -2329,7 +2329,7 @@
    <proof prover="0"><result status="valid" time="0.04"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.351.6" expl="VC for wmpn_toom22_mul" proved="true">
-   <proof prover="4"><result status="valid" time="0.31"/></proof>
+   <proof prover="4"><result status="valid" time="0.57"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.351.7" expl="VC for wmpn_toom22_mul" proved="true">
    <proof prover="0"><result status="valid" time="0.06"/></proof>
@@ -2338,7 +2338,7 @@
    <proof prover="0"><result status="valid" time="0.05"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.351.9" expl="VC for wmpn_toom22_mul" proved="true">
-   <proof prover="4"><result status="valid" time="0.37"/></proof>
+   <proof prover="4"><result status="valid" time="0.61"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.351.10" expl="VC for wmpn_toom22_mul" proved="true">
    <proof prover="0"><result status="valid" time="0.02"/></proof>
@@ -2356,13 +2356,13 @@
    <proof prover="3"><result status="valid" time="0.01"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.351.15" expl="VC for wmpn_toom22_mul" proved="true">
-   <proof prover="3" memlimit="2000"><result status="valid" time="1.51"/></proof>
+   <proof prover="3" memlimit="2000"><result status="valid" time="1.98"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.351.16" expl="VC for wmpn_toom22_mul" proved="true">
    <proof prover="3"><result status="valid" time="0.03"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.351.17" expl="VC for wmpn_toom22_mul" proved="true">
-   <proof prover="0"><result status="valid" time="0.20"/></proof>
+   <proof prover="0"><result status="valid" time="0.40"/></proof>
    <proof prover="1"><result status="valid" time="0.13"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.351.18" expl="VC for wmpn_toom22_mul" proved="true">
@@ -2378,7 +2378,7 @@
    <proof prover="0"><result status="valid" time="0.04"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.351.22" expl="VC for wmpn_toom22_mul" proved="true">
-   <proof prover="0"><result status="valid" time="0.21"/></proof>
+   <proof prover="0"><result status="valid" time="0.36"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.351.23" expl="VC for wmpn_toom22_mul" proved="true">
    <proof prover="3"><result status="valid" time="0.04"/></proof>
@@ -2430,7 +2430,7 @@
    <proof prover="3"><result status="valid" time="0.01"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.351.32" expl="VC for wmpn_toom22_mul" proved="true">
-   <proof prover="3" memlimit="2000"><result status="valid" time="1.56"/></proof>
+   <proof prover="3" memlimit="2000"><result status="valid" time="2.17"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.351.33" expl="VC for wmpn_toom22_mul" proved="true">
    <proof prover="3"><result status="valid" time="0.03"/></proof>
@@ -2448,7 +2448,7 @@
    <proof prover="4"><result status="valid" time="0.41"/></proof>
    <transf name="remove" proved="true" arg1="real,tuple0,unit,tuple2,tuple3,t1,valuation_mod">
     <goal name="VC wmpn_toom22_mul.351.37.0" expl="VC for wmpn_toom22_mul" proved="true">
-    <proof prover="4" timelimit="1"><result status="valid" time="0.36"/></proof>
+    <proof prover="4" timelimit="1"><result status="valid" time="0.50"/></proof>
     </goal>
    </transf>
    </goal>
@@ -2482,7 +2482,7 @@
     <proof prover="3"><result status="valid" time="0.02"/></proof>
     </goal>
     <goal name="VC wmpn_toom22_mul.351.40.2" proved="true">
-    <proof prover="4"><result status="valid" time="0.40"/></proof>
+    <proof prover="4"><result status="valid" time="0.65"/></proof>
     </goal>
     <goal name="VC wmpn_toom22_mul.351.40.3" proved="true">
     <proof prover="4"><result status="valid" time="0.34"/></proof>
@@ -2519,7 +2519,7 @@
    </transf>
    </goal>
    <goal name="VC wmpn_toom22_mul.351.45" expl="VC for wmpn_toom22_mul" proved="true">
-   <proof prover="0"><result status="valid" time="0.71"/></proof>
+   <proof prover="0"><result status="valid" time="1.13"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.351.46" expl="VC for wmpn_toom22_mul" proved="true">
    <proof prover="1"><result status="valid" time="0.22"/></proof>
@@ -2545,10 +2545,10 @@
    <proof prover="0"><result status="valid" time="0.10"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.351.51" expl="VC for wmpn_toom22_mul" proved="true">
-   <proof prover="0"><result status="valid" time="1.20"/></proof>
+   <proof prover="0"><result status="valid" time="1.69"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.351.52" expl="VC for wmpn_toom22_mul" proved="true">
-   <proof prover="0"><result status="valid" time="0.37"/></proof>
+   <proof prover="0"><result status="valid" time="0.74"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.351.53" expl="VC for wmpn_toom22_mul" proved="true">
    <proof prover="3"><result status="valid" time="0.02"/></proof>
@@ -2614,7 +2614,7 @@
        <proof prover="3"><result status="valid" time="0.01"/></proof>
        </goal>
        <goal name="VC wmpn_toom22_mul.351.63.0.0.1.2" proved="true">
-       <proof prover="4"><result status="valid" time="0.34"/></proof>
+       <proof prover="4"><result status="valid" time="0.55"/></proof>
        </goal>
       </transf>
       </goal>
@@ -2642,7 +2642,7 @@
        <proof prover="3"><result status="valid" time="0.02"/></proof>
        </goal>
        <goal name="VC wmpn_toom22_mul.351.64.0.0.1.2" proved="true">
-       <proof prover="4"><result status="valid" time="0.37"/></proof>
+       <proof prover="4"><result status="valid" time="0.51"/></proof>
        </goal>
       </transf>
       </goal>
@@ -2662,7 +2662,7 @@
     <proof prover="3"><result status="valid" time="0.01"/></proof>
     </goal>
     <goal name="VC wmpn_toom22_mul.351.66.1" expl="VC for wmpn_toom22_mul" proved="true">
-    <proof prover="4"><result status="valid" time="1.58"/></proof>
+    <proof prover="4"><result status="valid" time="2.00"/></proof>
     </goal>
    </transf>
    </goal>
@@ -2672,7 +2672,7 @@
     <proof prover="3"><result status="valid" time="0.02"/></proof>
     </goal>
     <goal name="VC wmpn_toom22_mul.351.67.1" expl="VC for wmpn_toom22_mul" proved="true">
-    <proof prover="4"><result status="valid" time="2.04"/></proof>
+    <proof prover="4"><result status="valid" time="3.07"/></proof>
     </goal>
    </transf>
    </goal>
@@ -2733,7 +2733,7 @@
       <goal name="VC wmpn_toom22_mul.351.70.1.1.0" proved="true">
       <transf name="unfold" proved="true" arg1="a1&#39;">
        <goal name="VC wmpn_toom22_mul.351.70.1.1.0.0" proved="true">
-       <proof prover="3" memlimit="2000"><result status="valid" time="1.64"/></proof>
+       <proof prover="3" memlimit="2000"><result status="valid" time="2.06"/></proof>
        </goal>
       </transf>
       </goal>
@@ -2832,14 +2832,14 @@
    <goal name="VC wmpn_toom22_mul.351.77" expl="VC for wmpn_toom22_mul" proved="true">
    <transf name="rewrite" proved="true" arg1="H8">
     <goal name="VC wmpn_toom22_mul.351.77.0" expl="VC for wmpn_toom22_mul" proved="true">
-    <proof prover="4"><result status="valid" time="0.38"/></proof>
+    <proof prover="4"><result status="valid" time="0.58"/></proof>
     </goal>
    </transf>
    </goal>
    <goal name="VC wmpn_toom22_mul.351.78" expl="VC for wmpn_toom22_mul" proved="true">
    <transf name="unfold" proved="true" arg1="b1">
     <goal name="VC wmpn_toom22_mul.351.78.0" expl="VC for wmpn_toom22_mul" proved="true">
-    <proof prover="4"><result status="valid" time="0.37"/></proof>
+    <proof prover="4"><result status="valid" time="0.62"/></proof>
     </goal>
    </transf>
    </goal>
@@ -2891,8 +2891,8 @@
     <proof prover="3"><result status="valid" time="0.06"/></proof>
     </goal>
     <goal name="VC wmpn_toom22_mul.351.82.1" expl="VC for wmpn_toom22_mul" proved="true">
-    <proof prover="0"><result status="valid" time="0.86"/></proof>
-    <proof prover="4"><result status="valid" time="0.38"/></proof>
+    <proof prover="0"><result status="valid" time="1.78"/></proof>
+    <proof prover="4"><result status="valid" time="0.70"/></proof>
     </goal>
    </transf>
    </goal>
@@ -2935,18 +2935,18 @@
     </transf>
     </goal>
     <goal name="VC wmpn_toom22_mul.351.83.4" proved="true">
-    <proof prover="0"><result status="valid" time="2.15"/></proof>
+    <proof prover="0"><result status="valid" time="2.92"/></proof>
     <transf name="cut" proved="true" arg1="(power 2 (64*s - k) &gt;= 0)">
      <goal name="VC wmpn_toom22_mul.351.83.4.0" proved="true">
      <proof prover="3"><result status="valid" time="0.02"/></proof>
      </goal>
      <goal name="VC wmpn_toom22_mul.351.83.4.1" proved="true">
-     <proof prover="0"><result status="valid" time="2.12"/></proof>
+     <proof prover="0"><result status="valid" time="3.19"/></proof>
      </goal>
     </transf>
     </goal>
     <goal name="VC wmpn_toom22_mul.351.83.5" proved="true">
-    <proof prover="0"><result status="valid" time="2.60"/></proof>
+    <proof prover="0"><result status="valid" time="3.97"/></proof>
     <proof prover="3"><result status="valid" time="0.07"/></proof>
     </goal>
    </transf>
@@ -2993,7 +2993,7 @@
     </transf>
     </goal>
     <goal name="VC wmpn_toom22_mul.351.85.4" proved="true">
-    <proof prover="0"><result status="valid" time="2.20"/></proof>
+    <proof prover="0"><result status="valid" time="3.07"/></proof>
     </goal>
     <goal name="VC wmpn_toom22_mul.351.85.5" proved="true">
     <proof prover="3"><result status="valid" time="0.05"/></proof>
@@ -3004,7 +3004,7 @@
    <proof prover="3"><result status="valid" time="0.06"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.351.87" expl="VC for wmpn_toom22_mul" proved="true">
-   <proof prover="4"><result status="valid" time="0.39"/></proof>
+   <proof prover="4"><result status="valid" time="0.71"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.351.88" expl="VC for wmpn_toom22_mul" proved="true">
    <transf name="apply" proved="true" arg1="prod_compat_r">
@@ -3087,7 +3087,7 @@
    <proof prover="1"><result status="valid" time="0.15"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.351.104" expl="VC for wmpn_toom22_mul" proved="true">
-   <proof prover="4"><result status="valid" time="0.42"/></proof>
+   <proof prover="4"><result status="valid" time="0.72"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.351.105" expl="VC for wmpn_toom22_mul" proved="true">
    <proof prover="1"><result status="valid" time="0.14"/></proof>
@@ -3268,7 +3268,7 @@
     <proof prover="0"><result status="valid" time="0.02"/></proof>
     </goal>
     <goal name="VC wmpn_toom22_mul.353.1.1" expl="VC for wmpn_toom22_mul" proved="true">
-    <proof prover="4"><result status="valid" time="0.30"/></proof>
+    <proof prover="4"><result status="valid" time="0.45"/></proof>
     <transf name="remove" proved="true" arg1="real,unit,tuple2,tuple3,t1">
      <goal name="VC wmpn_toom22_mul.353.1.1.0" expl="VC for wmpn_toom22_mul" proved="true">
      <proof prover="4" timelimit="1"><result status="valid" time="0.34"/></proof>
@@ -3305,7 +3305,7 @@
    <proof prover="0"><result status="valid" time="0.23"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.353.11" expl="VC for wmpn_toom22_mul" proved="true">
-   <proof prover="0"><result status="valid" time="0.41"/></proof>
+   <proof prover="0"><result status="valid" time="0.75"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.353.12" expl="VC for wmpn_toom22_mul" proved="true">
    <proof prover="3"><result status="valid" time="0.04"/></proof>
@@ -3313,7 +3313,7 @@
    <goal name="VC wmpn_toom22_mul.353.13" expl="VC for wmpn_toom22_mul" proved="true">
    <transf name="apply" proved="true" arg1="prod_compat_r">
     <goal name="VC wmpn_toom22_mul.353.13.0" proved="true">
-    <proof prover="1" timelimit="1"><result status="valid" time="0.62"/></proof>
+    <proof prover="1" timelimit="1"><result status="valid" time="0.95"/></proof>
     </goal>
     <goal name="VC wmpn_toom22_mul.353.13.1" proved="true">
     <proof prover="4"><result status="valid" time="0.46"/></proof>
@@ -3331,10 +3331,10 @@
     <goal name="VC wmpn_toom22_mul.353.16.0" proved="true">
     <transf name="assert" proved="true" arg1="(0 &lt;= m)">
      <goal name="VC wmpn_toom22_mul.353.16.0.0" proved="true">
-     <proof prover="4"><result status="valid" time="0.31"/></proof>
+     <proof prover="4"><result status="valid" time="0.56"/></proof>
      </goal>
      <goal name="VC wmpn_toom22_mul.353.16.0.1" proved="true">
-     <proof prover="4"><result status="valid" time="0.35"/></proof>
+     <proof prover="4"><result status="valid" time="0.58"/></proof>
      </goal>
     </transf>
     </goal>
@@ -3352,7 +3352,7 @@
    <goal name="VC wmpn_toom22_mul.353.19" expl="VC for wmpn_toom22_mul" proved="true">
    <transf name="apply" proved="true" arg1="prod_compat_strict_r">
     <goal name="VC wmpn_toom22_mul.353.19.0" proved="true">
-    <proof prover="4"><result status="valid" time="0.32"/></proof>
+    <proof prover="4"><result status="valid" time="0.48"/></proof>
     </goal>
     <goal name="VC wmpn_toom22_mul.353.19.1" proved="true">
     <transf name="split_vc" proved="true" >
@@ -3360,7 +3360,7 @@
      <proof prover="3"><result status="valid" time="0.05"/></proof>
      </goal>
      <goal name="VC wmpn_toom22_mul.353.19.1.1" proved="true">
-     <proof prover="4"><result status="valid" time="0.38"/></proof>
+     <proof prover="4"><result status="valid" time="0.68"/></proof>
      </goal>
     </transf>
     </goal>
@@ -3389,7 +3389,7 @@
    <proof prover="4"><result status="valid" time="0.31"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.358.1" expl="precondition" proved="true">
-   <proof prover="4"><result status="valid" time="0.41"/></proof>
+   <proof prover="4"><result status="valid" time="0.62"/></proof>
    </goal>
   </transf>
   </goal>
@@ -3412,7 +3412,7 @@
   </transf>
   </goal>
   <goal name="VC wmpn_toom22_mul.360" expl="assertion" proved="true">
-  <proof prover="0"><result status="valid" time="1.08"/></proof>
+  <proof prover="0"><result status="valid" time="2.01"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.361" expl="assertion" proved="true">
   <transf name="split_vc" proved="true" >
@@ -3435,7 +3435,7 @@
    <proof prover="3" memlimit="2000"><result status="valid" time="0.05"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.361.6" expl="VC for wmpn_toom22_mul" proved="true">
-   <proof prover="4"><result status="valid" time="0.29"/></proof>
+   <proof prover="4"><result status="valid" time="0.54"/></proof>
    </goal>
   </transf>
   </goal>
@@ -3470,10 +3470,10 @@
      <proof prover="3" memlimit="2000"><result status="valid" time="0.04"/></proof>
      </goal>
      <goal name="VC wmpn_toom22_mul.363.0.0.2" expl="precondition" proved="true">
-     <proof prover="0"><result status="valid" time="3.80"/></proof>
+     <proof prover="1" timelimit="1"><result status="valid" time="0.60"/></proof>
      </goal>
      <goal name="VC wmpn_toom22_mul.363.0.0.3" expl="precondition" proved="true">
-     <proof prover="4"><result status="valid" time="0.30"/></proof>
+     <proof prover="4"><result status="valid" time="0.51"/></proof>
      </goal>
      <goal name="VC wmpn_toom22_mul.363.0.0.4" expl="precondition" proved="true">
      <proof prover="3"><result status="valid" time="1.76"/></proof>
@@ -3491,7 +3491,7 @@
   <proof prover="3"><result status="valid" time="0.04"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.365" expl="precondition" proved="true">
-  <proof prover="0"><result status="valid" time="1.06"/></proof>
+  <proof prover="0"><result status="valid" time="0.74"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.366" expl="integer overflow" proved="true">
   <proof prover="0"><result status="valid" time="0.02"/></proof>
@@ -3528,7 +3528,7 @@
   </transf>
   </goal>
   <goal name="VC wmpn_toom22_mul.370" expl="assertion" proved="true">
-  <proof prover="0"><result status="valid" time="1.07"/></proof>
+  <proof prover="0"><result status="valid" time="1.36"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.371" expl="assertion" proved="true">
   <transf name="split_vc" proved="true" >
@@ -3542,7 +3542,7 @@
    <goal name="VC wmpn_toom22_mul.372.0" expl="precondition" proved="true">
    <transf name="inline_goal" proved="true" >
     <goal name="VC wmpn_toom22_mul.372.0.0" expl="precondition" proved="true">
-    <transf name="split_vc" proved="true" >
+    <transf name="introduce_premises" proved="true" >
      <goal name="VC wmpn_toom22_mul.372.0.0.0" expl="precondition" proved="true">
      <transf name="subst" proved="true" arg1="o1">
       <goal name="VC wmpn_toom22_mul.372.0.0.0.0" expl="precondition" proved="true">
@@ -3550,7 +3550,7 @@
        <goal name="VC wmpn_toom22_mul.372.0.0.0.0.0" expl="precondition" proved="true">
        <transf name="apply" proved="true" arg1="H2">
         <goal name="VC wmpn_toom22_mul.372.0.0.0.0.0.0" proved="true">
-        <proof prover="0"><result status="valid" time="0.02"/></proof>
+        <proof prover="1" memlimit="2000"><result status="valid" time="0.06"/></proof>
         </goal>
        </transf>
        </goal>
@@ -3592,13 +3592,13 @@
   <goal name="VC wmpn_toom22_mul.374" expl="assertion" proved="true">
   <transf name="split_vc" proved="true" >
    <goal name="VC wmpn_toom22_mul.374.0" expl="assertion" proved="true">
-   <proof prover="1"><result status="valid" time="0.14"/></proof>
+   <proof prover="1"><result status="valid" time="0.27"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.374.1" expl="assertion" proved="true">
-   <proof prover="1"><result status="valid" time="0.13"/></proof>
+   <proof prover="1"><result status="valid" time="0.27"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.374.2" expl="VC for wmpn_toom22_mul" proved="true">
-   <proof prover="1"><result status="valid" time="0.12"/></proof>
+   <proof prover="1"><result status="valid" time="0.26"/></proof>
    </goal>
   </transf>
   </goal>
@@ -3624,16 +3624,16 @@
      <proof prover="4"><result status="valid" time="0.41"/></proof>
      </goal>
      <goal name="VC wmpn_toom22_mul.378.0.0.2" expl="assertion" proved="true">
-     <proof prover="4" memlimit="1000"><result status="valid" time="0.35"/></proof>
+     <proof prover="4" memlimit="1000"><result status="valid" time="0.68"/></proof>
      </goal>
      <goal name="VC wmpn_toom22_mul.378.0.0.3" expl="assertion" proved="true">
-     <proof prover="4"><result status="valid" time="0.36"/></proof>
+     <proof prover="4"><result status="valid" time="0.73"/></proof>
      </goal>
      <goal name="VC wmpn_toom22_mul.378.0.0.4" expl="assertion" proved="true">
-     <proof prover="4" memlimit="1000"><result status="valid" time="0.34"/></proof>
+     <proof prover="4" memlimit="1000"><result status="valid" time="0.73"/></proof>
      </goal>
      <goal name="VC wmpn_toom22_mul.378.0.0.5" expl="assertion" proved="true">
-     <proof prover="4"><result status="valid" time="0.34"/></proof>
+     <proof prover="4"><result status="valid" time="0.68"/></proof>
      </goal>
     </transf>
     </goal>
@@ -3647,17 +3647,17 @@
   <goal name="VC wmpn_toom22_mul.380" expl="integer overflow" proved="true">
   <transf name="split_all_full" proved="true" >
    <goal name="VC wmpn_toom22_mul.380.0" expl="integer overflow" proved="true">
-   <proof prover="3" timelimit="10" memlimit="4000"><result status="valid" time="9.05"/></proof>
+   <proof prover="3" timelimit="10" memlimit="4000"><result status="valid" time="10.48"/></proof>
    </goal>
   </transf>
   </goal>
   <goal name="VC wmpn_toom22_mul.381" expl="precondition" proved="true">
   <transf name="split_vc" proved="true" >
    <goal name="VC wmpn_toom22_mul.381.0" expl="precondition" proved="true">
-   <proof prover="4"><result status="valid" time="0.36"/></proof>
+   <proof prover="4"><result status="valid" time="0.69"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.381.1" expl="precondition" proved="true">
-   <proof prover="4"><result status="valid" time="0.36"/></proof>
+   <proof prover="4"><result status="valid" time="0.52"/></proof>
    </goal>
   </transf>
   </goal>
@@ -3699,7 +3699,7 @@
    </transf>
    </goal>
    <goal name="VC wmpn_toom22_mul.384.2" expl="assertion" proved="true">
-   <proof prover="0" memlimit="1000"><result status="valid" time="0.44"/></proof>
+   <proof prover="0" memlimit="1000"><result status="valid" time="0.84"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.384.3" expl="VC for wmpn_toom22_mul" proved="true">
    <proof prover="0"><result status="valid" time="0.03"/></proof>
@@ -3745,13 +3745,13 @@
    <proof prover="3"><result status="valid" time="0.01"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.387.3" expl="assertion" proved="true">
-   <proof prover="0" memlimit="1000"><result status="valid" time="0.21"/></proof>
+   <proof prover="0" memlimit="1000"><result status="valid" time="0.34"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.387.4" expl="VC for wmpn_toom22_mul" proved="true">
    <proof prover="3"><result status="valid" time="0.05"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.387.5" expl="VC for wmpn_toom22_mul" proved="true">
-   <proof prover="4"><result status="valid" time="0.38"/></proof>
+   <proof prover="4"><result status="valid" time="0.76"/></proof>
    </goal>
   </transf>
   </goal>
@@ -3769,7 +3769,7 @@
     <transf name="split_vc" proved="true" >
      <goal name="VC wmpn_toom22_mul.390.0.0.0" expl="precondition" proved="true">
      <proof prover="0"><result status="valid" time="0.06"/></proof>
-     <proof prover="4"><result status="valid" time="0.36"/></proof>
+     <proof prover="4"><result status="valid" time="0.63"/></proof>
      </goal>
      <goal name="VC wmpn_toom22_mul.390.0.0.1" expl="precondition" proved="true">
      <proof prover="0" memlimit="1000"><result status="valid" time="0.05"/></proof>
@@ -3826,7 +3826,7 @@
    <proof prover="1"><result status="valid" time="0.14"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.396.2" expl="VC for wmpn_toom22_mul" proved="true">
-   <proof prover="3" memlimit="2000"><result status="valid" time="4.80"/></proof>
+   <proof prover="3" memlimit="2000"><result status="valid" time="6.39"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.396.3" expl="VC for wmpn_toom22_mul" proved="true">
    <proof prover="0"><result status="valid" time="0.06"/></proof>
@@ -3844,7 +3844,7 @@
    <goal name="VC wmpn_toom22_mul.399.0" expl="precondition" proved="true">
    <transf name="inline_goal" proved="true" >
     <goal name="VC wmpn_toom22_mul.399.0.0" expl="precondition" proved="true">
-    <transf name="introduce_premises" proved="true" >
+    <transf name="split_vc" proved="true" >
      <goal name="VC wmpn_toom22_mul.399.0.0.0" expl="precondition" proved="true">
      <transf name="subst" proved="true" arg1="o1">
       <goal name="VC wmpn_toom22_mul.399.0.0.0.0" expl="precondition" proved="true">
@@ -3852,7 +3852,7 @@
        <goal name="VC wmpn_toom22_mul.399.0.0.0.0.0" expl="precondition" proved="true">
        <transf name="apply" proved="true" arg1="H2">
         <goal name="VC wmpn_toom22_mul.399.0.0.0.0.0.0" proved="true">
-        <proof prover="1" memlimit="2000"><result status="valid" time="0.18"/></proof>
+        <proof prover="1" memlimit="2000"><result status="valid" time="0.07"/></proof>
         </goal>
        </transf>
        </goal>
@@ -3890,35 +3890,35 @@
    <proof prover="3"><result status="valid" time="0.02"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.400.7" expl="VC for wmpn_toom22_mul" proved="true">
-   <proof prover="1"><result status="valid" time="0.14"/></proof>
+   <proof prover="1"><result status="valid" time="0.32"/></proof>
    </goal>
   </transf>
   </goal>
   <goal name="VC wmpn_toom22_mul.401" expl="precondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.07"/></proof>
+  <proof prover="3"><result status="valid" time="0.05"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.402" expl="precondition" proved="true">
-  <proof prover="1"><result status="valid" time="0.16"/></proof>
+  <proof prover="1"><result status="valid" time="0.32"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.403" expl="precondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.07"/></proof>
+  <proof prover="3"><result status="valid" time="0.04"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.404" expl="precondition" proved="true">
-  <proof prover="1"><result status="valid" time="0.14"/></proof>
+  <proof prover="1"><result status="valid" time="0.30"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.405" expl="assertion" proved="true">
   <transf name="split_vc" proved="true" >
    <goal name="VC wmpn_toom22_mul.405.0" expl="assertion" proved="true">
    <transf name="apply" proved="true" arg1="H2">
     <goal name="VC wmpn_toom22_mul.405.0.0" proved="true">
-    <proof prover="4"><result status="valid" time="0.40"/></proof>
+    <proof prover="1" memlimit="2000"><result status="valid" time="0.82"/></proof>
     </goal>
    </transf>
    </goal>
    <goal name="VC wmpn_toom22_mul.405.1" expl="assertion" proved="true">
    <transf name="apply" proved="true" arg1="H11">
     <goal name="VC wmpn_toom22_mul.405.1.0" proved="true">
-    <proof prover="1" timelimit="1"><result status="valid" time="0.17"/></proof>
+    <proof prover="1" timelimit="1"><result status="valid" time="0.15"/></proof>
     </goal>
    </transf>
    </goal>
@@ -3940,7 +3940,7 @@
        <goal name="VC wmpn_toom22_mul.406.0.0.0.0.0" expl="precondition" proved="true">
        <transf name="apply" proved="true" arg1="H2">
         <goal name="VC wmpn_toom22_mul.406.0.0.0.0.0.0" proved="true">
-        <proof prover="1" memlimit="2000"><result status="valid" time="0.18"/></proof>
+        <proof prover="1" memlimit="2000"><result status="valid" time="0.07"/></proof>
         </goal>
        </transf>
        </goal>
@@ -3955,64 +3955,49 @@
   </transf>
   </goal>
   <goal name="VC wmpn_toom22_mul.407" expl="assertion" proved="true">
-  <transf name="split_vc" proved="true" >
-   <goal name="VC wmpn_toom22_mul.407.0" expl="assertion" proved="true">
-   <proof prover="0"><result status="valid" time="0.06"/></proof>
-   </goal>
-  </transf>
+  <proof prover="0"><result status="valid" time="0.04"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.408" expl="precondition" proved="true">
-  <transf name="introduce_premises" proved="true" >
-   <goal name="VC wmpn_toom22_mul.408.0" expl="precondition" proved="true">
-   <transf name="inline_goal" proved="true" >
-    <goal name="VC wmpn_toom22_mul.408.0.0" expl="precondition" proved="true">
-    <proof prover="0"><result status="valid" time="0.02"/></proof>
-    </goal>
-   </transf>
-   </goal>
-  </transf>
+  <proof prover="0"><result status="valid" time="0.10"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.409" expl="precondition" proved="true">
-  <proof prover="1"><result status="valid" time="0.23"/></proof>
+  <proof prover="0"><result status="valid" time="0.04"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.410" expl="postcondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.03"/></proof>
+  <proof prover="3"><result status="valid" time="0.06"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.411" expl="postcondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.01"/></proof>
+  <proof prover="3"><result status="valid" time="0.04"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.412" expl="postcondition" proved="true">
-  <proof prover="0"><result status="valid" time="0.07"/></proof>
+  <proof prover="0"><result status="valid" time="0.04"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.413" expl="postcondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.06"/></proof>
+  <proof prover="3"><result status="valid" time="0.03"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.414" expl="postcondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.03"/></proof>
+  <proof prover="3"><result status="valid" time="0.08"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.415" expl="postcondition" proved="true">
   <proof prover="3"><result status="valid" time="0.08"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.416" expl="postcondition" proved="true">
-  <proof prover="1"><result status="valid" time="0.14"/></proof>
+  <proof prover="1"><result status="valid" time="0.25"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.417" expl="postcondition" proved="true">
   <transf name="case" proved="true" arg1="(j &lt; offset r)">
    <goal name="VC wmpn_toom22_mul.417.0" expl="true case (postcondition)" proved="true">
-   <proof prover="0"><result status="valid" time="2.76"/></proof>
+   <proof prover="0"><result status="valid" time="4.47"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.417.1" expl="false case (postcondition)" proved="true">
-   <proof prover="0"><result status="valid" time="0.88"/></proof>
+   <proof prover="0"><result status="valid" time="1.34"/></proof>
    </goal>
   </transf>
   </goal>
   <goal name="VC wmpn_toom22_mul.418" expl="postcondition" proved="true">
-  <transf name="case" proved="true" arg1="(j &lt; offset r)">
-   <goal name="VC wmpn_toom22_mul.418.0" expl="true case (postcondition)" proved="true">
-   <proof prover="0"><result status="valid" time="0.08"/></proof>
-   </goal>
-   <goal name="VC wmpn_toom22_mul.418.1" expl="false case (postcondition)" proved="true">
-   <proof prover="0"><result status="valid" time="0.09"/></proof>
+  <transf name="split_vc" proved="true" >
+   <goal name="VC wmpn_toom22_mul.418.0" expl="postcondition" proved="true">
+   <proof prover="0"><result status="valid" time="0.06"/></proof>
    </goal>
   </transf>
   </goal>
@@ -4030,7 +4015,7 @@
   </transf>
   </goal>
   <goal name="VC wmpn_toom22_mul.421" expl="precondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.03"/></proof>
+  <proof prover="3"><result status="valid" time="0.04"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.422" expl="assertion" proved="true">
   <transf name="split_vc" proved="true" >
@@ -4041,7 +4026,7 @@
    <proof prover="0"><result status="valid" time="0.04"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.422.2" expl="VC for wmpn_toom22_mul" proved="true">
-   <proof prover="4"><result status="valid" time="0.39"/></proof>
+   <proof prover="4"><result status="valid" time="0.76"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.422.3" expl="VC for wmpn_toom22_mul" proved="true">
    <proof prover="3"><result status="valid" time="0.04"/></proof>
@@ -4060,7 +4045,7 @@
    <proof prover="3"><result status="valid" time="0.04"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.422.7" expl="VC for wmpn_toom22_mul" proved="true">
-   <proof prover="4"><result status="valid" time="0.40"/></proof>
+   <proof prover="4"><result status="valid" time="0.74"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.422.8" expl="VC for wmpn_toom22_mul" proved="true">
    <proof prover="3"><result status="valid" time="0.04"/></proof>
@@ -4127,7 +4112,7 @@
   <goal name="VC wmpn_toom22_mul.428" expl="integer overflow" proved="true">
   <transf name="split_all_full" proved="true" >
    <goal name="VC wmpn_toom22_mul.428.0" expl="integer overflow" proved="true">
-   <proof prover="3" timelimit="10" memlimit="4000"><result status="valid" time="3.64"/></proof>
+   <proof prover="3" timelimit="10" memlimit="4000"><result status="valid" time="4.99"/></proof>
    </goal>
   </transf>
   </goal>
@@ -4150,10 +4135,10 @@
    <proof prover="0"><result status="valid" time="0.02"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.431.1" expl="VC for wmpn_toom22_mul" proved="true">
-   <proof prover="1"><result status="valid" time="0.15"/></proof>
+   <proof prover="1"><result status="valid" time="0.30"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.431.2" expl="VC for wmpn_toom22_mul" proved="true">
-   <proof prover="4"><result status="valid" time="0.40"/></proof>
+   <proof prover="4"><result status="valid" time="0.71"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.431.3" expl="VC for wmpn_toom22_mul" proved="true">
    <proof prover="0"><result status="valid" time="0.06"/></proof>
@@ -4183,7 +4168,7 @@
        <goal name="VC wmpn_toom22_mul.434.0.0.0.0.0" expl="precondition" proved="true">
        <transf name="apply" proved="true" arg1="H2">
         <goal name="VC wmpn_toom22_mul.434.0.0.0.0.0.0" proved="true">
-        <proof prover="3"><result status="valid" time="0.02"/></proof>
+        <proof prover="1" memlimit="2000"><result status="valid" time="0.07"/></proof>
         </goal>
        </transf>
        </goal>
@@ -4221,29 +4206,29 @@
    <proof prover="3"><result status="valid" time="0.03"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.435.7" expl="VC for wmpn_toom22_mul" proved="true">
-   <proof prover="1"><result status="valid" time="0.14"/></proof>
+   <proof prover="1"><result status="valid" time="0.30"/></proof>
    </goal>
   </transf>
   </goal>
   <goal name="VC wmpn_toom22_mul.436" expl="precondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.05"/></proof>
+  <proof prover="3"><result status="valid" time="0.07"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.437" expl="precondition" proved="true">
   <proof prover="1"><result status="valid" time="0.15"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.438" expl="precondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.04"/></proof>
+  <proof prover="3"><result status="valid" time="0.07"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.439" expl="precondition" proved="true">
-  <proof prover="1"><result status="valid" time="0.13"/></proof>
+  <proof prover="1"><result status="valid" time="0.28"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.440" expl="assertion" proved="true">
   <transf name="split_vc" proved="true" >
    <goal name="VC wmpn_toom22_mul.440.0" expl="assertion" proved="true">
-   <proof prover="4"><result status="valid" time="0.54"/></proof>
+   <proof prover="4"><result status="valid" time="0.72"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.440.1" expl="assertion" proved="true">
-   <proof prover="4"><result status="valid" time="0.42"/></proof>
+   <proof prover="4"><result status="valid" time="0.54"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.440.2" expl="VC for wmpn_toom22_mul" proved="true">
    <proof prover="3"><result status="valid" time="0.05"/></proof>
@@ -4278,49 +4263,64 @@
   </transf>
   </goal>
   <goal name="VC wmpn_toom22_mul.442" expl="assertion" proved="true">
-  <proof prover="0"><result status="valid" time="0.04"/></proof>
+  <transf name="split_vc" proved="true" >
+   <goal name="VC wmpn_toom22_mul.442.0" expl="assertion" proved="true">
+   <proof prover="0"><result status="valid" time="0.06"/></proof>
+   </goal>
+  </transf>
   </goal>
   <goal name="VC wmpn_toom22_mul.443" expl="precondition" proved="true">
-  <proof prover="0"><result status="valid" time="0.10"/></proof>
+  <transf name="introduce_premises" proved="true" >
+   <goal name="VC wmpn_toom22_mul.443.0" expl="precondition" proved="true">
+   <transf name="inline_goal" proved="true" >
+    <goal name="VC wmpn_toom22_mul.443.0.0" expl="precondition" proved="true">
+    <proof prover="0"><result status="valid" time="0.02"/></proof>
+    </goal>
+   </transf>
+   </goal>
+  </transf>
   </goal>
   <goal name="VC wmpn_toom22_mul.444" expl="precondition" proved="true">
-  <proof prover="0"><result status="valid" time="0.04"/></proof>
+  <proof prover="1"><result status="valid" time="0.23"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.445" expl="postcondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.06"/></proof>
+  <proof prover="3"><result status="valid" time="0.03"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.446" expl="postcondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.04"/></proof>
+  <proof prover="3"><result status="valid" time="0.01"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.447" expl="postcondition" proved="true">
-  <proof prover="0"><result status="valid" time="0.04"/></proof>
+  <proof prover="0"><result status="valid" time="0.07"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.448" expl="postcondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.03"/></proof>
+  <proof prover="3"><result status="valid" time="0.06"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.449" expl="postcondition" proved="true">
-  <proof prover="3"><result status="valid" time="0.08"/></proof>
+  <proof prover="3"><result status="valid" time="0.03"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.450" expl="postcondition" proved="true">
   <proof prover="3"><result status="valid" time="0.02"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.451" expl="postcondition" proved="true">
-  <proof prover="1"><result status="valid" time="0.25"/></proof>
+  <proof prover="1"><result status="valid" time="0.14"/></proof>
   </goal>
   <goal name="VC wmpn_toom22_mul.452" expl="postcondition" proved="true">
   <transf name="case" proved="true" arg1="(j &lt; offset r)">
    <goal name="VC wmpn_toom22_mul.452.0" expl="true case (postcondition)" proved="true">
-   <proof prover="0"><result status="valid" time="3.89"/></proof>
+   <proof prover="0"><result status="valid" time="4.26"/></proof>
    </goal>
    <goal name="VC wmpn_toom22_mul.452.1" expl="false case (postcondition)" proved="true">
-   <proof prover="0"><result status="valid" time="0.89"/></proof>
+   <proof prover="0"><result status="valid" time="1.31"/></proof>
    </goal>
   </transf>
   </goal>
   <goal name="VC wmpn_toom22_mul.453" expl="postcondition" proved="true">
-  <transf name="split_vc" proved="true" >
-   <goal name="VC wmpn_toom22_mul.453.0" expl="postcondition" proved="true">
-   <proof prover="0"><result status="valid" time="0.06"/></proof>
+  <transf name="case" proved="true" arg1="(j &lt; offset r)">
+   <goal name="VC wmpn_toom22_mul.453.0" expl="true case (postcondition)" proved="true">
+   <proof prover="0"><result status="valid" time="0.08"/></proof>
+   </goal>
+   <goal name="VC wmpn_toom22_mul.453.1" expl="false case (postcondition)" proved="true">
+   <proof prover="0"><result status="valid" time="0.09"/></proof>
    </goal>
   </transf>
   </goal>
@@ -4760,7 +4760,7 @@
   <proof prover="1"><result status="valid" time="0.19"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.45" expl="precondition" proved="true">
-  <proof prover="1"><result status="valid" time="0.42"/></proof>
+  <proof prover="1"><result status="valid" time="0.68"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.46" expl="precondition" proved="true">
   <proof prover="1"><result status="valid" time="0.23"/></proof>
@@ -4799,10 +4799,26 @@
   <proof prover="1"><result status="valid" time="0.20"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.58" expl="assertion" proved="true">
-  <proof prover="0"><result status="valid" time="0.02"/></proof>
+  <transf name="split_vc" proved="true" >
+   <goal name="VC wmpn_toom32_mul.58.0" expl="assertion" proved="true">
+   <proof prover="4"><result status="valid" time="0.16"/></proof>
+   </goal>
+   <goal name="VC wmpn_toom32_mul.58.1" expl="assertion" proved="true">
+   <proof prover="1"><result status="valid" time="0.06"/></proof>
+   </goal>
+   <goal name="VC wmpn_toom32_mul.58.2" expl="assertion" proved="true">
+   <proof prover="1"><result status="valid" time="0.05"/></proof>
+   </goal>
+   <goal name="VC wmpn_toom32_mul.58.3" expl="assertion" proved="true">
+   <proof prover="1"><result status="valid" time="0.06"/></proof>
+   </goal>
+   <goal name="VC wmpn_toom32_mul.58.4" expl="VC for wmpn_toom32_mul" proved="true">
+   <proof prover="1"><result status="valid" time="0.20"/></proof>
+   </goal>
+  </transf>
   </goal>
   <goal name="VC wmpn_toom32_mul.59" expl="postcondition" proved="true">
-  <proof prover="1"><result status="valid" time="0.05"/></proof>
+  <proof prover="1"><result status="valid" time="0.06"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.60" expl="postcondition" proved="true">
   <proof prover="1"><result status="valid" time="0.10"/></proof>
@@ -4814,7 +4830,7 @@
   <proof prover="1"><result status="valid" time="0.16"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.63" expl="precondition" proved="true">
-  <proof prover="1"><result status="valid" time="0.42"/></proof>
+  <proof prover="1"><result status="valid" time="0.67"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.64" expl="precondition" proved="true">
   <proof prover="1"><result status="valid" time="0.23"/></proof>
@@ -4837,7 +4853,7 @@
    <proof prover="1"><result status="valid" time="0.05"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.68.2" expl="assertion" proved="true">
-   <proof prover="1"><result status="valid" time="0.19"/></proof>
+   <proof prover="1"><result status="valid" time="0.05"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.68.3" expl="VC for wmpn_toom32_mul" proved="true">
    <proof prover="1"><result status="valid" time="0.20"/></proof>
@@ -4851,35 +4867,19 @@
   <proof prover="1"><result status="valid" time="0.16"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.71" expl="precondition" proved="true">
-  <proof prover="1"><result status="valid" time="0.40"/></proof>
+  <proof prover="1"><result status="valid" time="0.67"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.72" expl="precondition" proved="true">
   <proof prover="1"><result status="valid" time="0.19"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.73" expl="integer overflow" proved="true">
-  <proof prover="1"><result status="valid" time="0.20"/></proof>
+  <proof prover="1"><result status="valid" time="0.38"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.74" expl="assertion" proved="true">
-  <transf name="split_vc" proved="true" >
-   <goal name="VC wmpn_toom32_mul.74.0" expl="assertion" proved="true">
-   <proof prover="4"><result status="valid" time="0.16"/></proof>
-   </goal>
-   <goal name="VC wmpn_toom32_mul.74.1" expl="assertion" proved="true">
-   <proof prover="1"><result status="valid" time="0.06"/></proof>
-   </goal>
-   <goal name="VC wmpn_toom32_mul.74.2" expl="assertion" proved="true">
-   <proof prover="1"><result status="valid" time="0.05"/></proof>
-   </goal>
-   <goal name="VC wmpn_toom32_mul.74.3" expl="assertion" proved="true">
-   <proof prover="1"><result status="valid" time="0.06"/></proof>
-   </goal>
-   <goal name="VC wmpn_toom32_mul.74.4" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="1"><result status="valid" time="0.20"/></proof>
-   </goal>
-  </transf>
+  <proof prover="0"><result status="valid" time="0.18"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.75" expl="postcondition" proved="true">
-  <proof prover="1"><result status="valid" time="0.06"/></proof>
+  <proof prover="1"><result status="valid" time="0.05"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.76" expl="postcondition" proved="true">
   <proof prover="1"><result status="valid" time="0.09"/></proof>
@@ -4927,7 +4927,7 @@
   <proof prover="1"><result status="valid" time="0.16"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.91" expl="precondition" proved="true">
-  <proof prover="1"><result status="valid" time="0.42"/></proof>
+  <proof prover="1"><result status="valid" time="0.78"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.92" expl="precondition" proved="true">
   <proof prover="1"><result status="valid" time="0.16"/></proof>
@@ -4960,13 +4960,13 @@
   <proof prover="1"><result status="valid" time="0.28"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.102" expl="precondition" proved="true">
-  <proof prover="1"><result status="valid" time="0.21"/></proof>
+  <proof prover="1"><result status="valid" time="0.36"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.103" expl="integer overflow" proved="true">
   <proof prover="1"><result status="valid" time="0.22"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.104" expl="precondition" proved="true">
-  <proof prover="1"><result status="valid" time="0.50"/></proof>
+  <proof prover="1"><result status="valid" time="0.73"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.105" expl="precondition" proved="true">
   <proof prover="1"><result status="valid" time="0.50"/></proof>
@@ -4981,16 +4981,16 @@
   <proof prover="4"><result status="valid" time="0.29"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.109" expl="assertion" proved="true">
-  <proof prover="1"><result status="valid" time="0.25"/></proof>
+  <proof prover="1"><result status="valid" time="0.49"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.110" expl="precondition" proved="true">
-  <proof prover="1"><result status="valid" time="0.64"/></proof>
+  <proof prover="1"><result status="valid" time="0.89"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.111" expl="precondition" proved="true">
   <proof prover="1"><result status="valid" time="0.24"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.112" expl="precondition" proved="true">
-  <proof prover="1"><result status="valid" time="0.24"/></proof>
+  <proof prover="1"><result status="valid" time="0.39"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.113" expl="assertion" proved="true">
   <proof prover="3"><result status="valid" time="0.10"/></proof>
@@ -4999,10 +4999,10 @@
   <proof prover="1"><result status="valid" time="0.11"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.115" expl="integer overflow" proved="true">
-  <proof prover="1"><result status="valid" time="0.25"/></proof>
+  <proof prover="1"><result status="valid" time="0.50"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.116" expl="precondition" proved="true">
-  <proof prover="1"><result status="valid" time="0.72"/></proof>
+  <proof prover="1"><result status="valid" time="1.16"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.117" expl="assertion" proved="true">
   <transf name="split_vc" proved="true" >
@@ -5013,7 +5013,7 @@
    <proof prover="0"><result status="valid" time="0.03"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.117.2" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="1"><result status="valid" time="0.26"/></proof>
+   <proof prover="1"><result status="valid" time="0.47"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.117.3" expl="VC for wmpn_toom32_mul" proved="true">
    <proof prover="1"><result status="valid" time="0.10"/></proof>
@@ -5024,10 +5024,10 @@
   </transf>
   </goal>
   <goal name="VC wmpn_toom32_mul.118" expl="precondition" proved="true">
-  <proof prover="1"><result status="valid" time="0.27"/></proof>
+  <proof prover="1"><result status="valid" time="0.58"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.119" expl="assertion" proved="true">
-  <proof prover="1"><result status="valid" time="0.26"/></proof>
+  <proof prover="1"><result status="valid" time="0.57"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.120" expl="precondition" proved="true">
   <proof prover="1"><result status="valid" time="0.11"/></proof>
@@ -5035,7 +5035,7 @@
   <goal name="VC wmpn_toom32_mul.121" expl="assertion" proved="true">
   <transf name="split_vc" proved="true" >
    <goal name="VC wmpn_toom32_mul.121.0" expl="assertion" proved="true">
-   <proof prover="0"><result status="valid" time="0.12"/></proof>
+   <proof prover="0"><result status="valid" time="0.54"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.121.1" expl="assertion" proved="true">
    <proof prover="3" timelimit="1"><result status="valid" time="0.16"/></proof>
@@ -5058,7 +5058,7 @@
   <proof prover="1"><result status="valid" time="0.08"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.126" expl="assertion" proved="true">
-  <proof prover="4"><result status="valid" time="0.16"/></proof>
+  <proof prover="4"><result status="valid" time="0.35"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.127" expl="assertion" proved="true">
   <transf name="split_vc" proved="true" >
@@ -5066,13 +5066,13 @@
    <proof prover="1"><result status="valid" time="0.08"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.127.1" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="0"><result status="valid" time="2.05"/></proof>
+   <proof prover="0"><result status="valid" time="2.95"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.127.2" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="4"><result status="valid" time="0.78"/></proof>
+   <proof prover="4"><result status="valid" time="1.39"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.127.3" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="1"><result status="valid" time="0.67"/></proof>
+   <proof prover="1"><result status="valid" time="0.84"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.127.4" expl="VC for wmpn_toom32_mul" proved="true">
    <proof prover="1"><result status="valid" time="0.71"/></proof>
@@ -5088,7 +5088,7 @@
      <proof prover="1" timelimit="1"><result status="valid" time="0.32"/></proof>
      </goal>
      <goal name="VC wmpn_toom32_mul.127.6.0.1" expl="VC for wmpn_toom32_mul" proved="true">
-     <proof prover="4"><result status="valid" time="0.18"/></proof>
+     <proof prover="4"><result status="valid" time="0.30"/></proof>
      </goal>
     </transf>
     </goal>
@@ -5103,13 +5103,13 @@
   <proof prover="1"><result status="valid" time="0.13"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.129" expl="precondition" proved="true">
-  <proof prover="1"><result status="valid" time="0.58"/></proof>
+  <proof prover="1"><result status="valid" time="0.90"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.130" expl="precondition" proved="true">
-  <proof prover="1"><result status="valid" time="0.75"/></proof>
+  <proof prover="1"><result status="valid" time="1.08"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.131" expl="precondition" proved="true">
-  <proof prover="1"><result status="valid" time="0.24"/></proof>
+  <proof prover="1"><result status="valid" time="0.42"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.132" expl="assertion" proved="true">
   <proof prover="3"><result status="valid" time="0.12"/></proof>
@@ -5124,13 +5124,13 @@
   <proof prover="1"><result status="valid" time="0.20"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.136" expl="variant decrease" proved="true">
-  <proof prover="1"><result status="valid" time="0.10"/></proof>
+  <proof prover="1"><result status="valid" time="0.11"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.137" expl="precondition" proved="true">
-  <proof prover="1"><result status="valid" time="0.52"/></proof>
+  <proof prover="1"><result status="valid" time="1.01"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.138" expl="precondition" proved="true">
-  <proof prover="1"><result status="valid" time="0.28"/></proof>
+  <proof prover="1"><result status="valid" time="0.42"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.139" expl="precondition" proved="true">
   <proof prover="1"><result status="valid" time="0.60"/></proof>
@@ -5142,36 +5142,13 @@
   <proof prover="1"><result status="valid" time="0.12"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.142" expl="precondition" proved="true">
-  <proof prover="1"><result status="valid" time="0.17"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.16"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.143" expl="precondition" proved="true">
-  <proof prover="1"><result status="valid" time="0.29"/></proof>
+  <proof prover="1"><result status="valid" time="0.45"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.144" expl="precondition" proved="true">
-  <transf name="inline_goal" proved="true" >
-   <goal name="VC wmpn_toom32_mul.144.0" expl="precondition" proved="true">
-   <transf name="split_vc" proved="true" >
-    <goal name="VC wmpn_toom32_mul.144.0.0" expl="precondition" proved="true">
-    <proof prover="3"><result status="valid" time="0.10"/></proof>
-    </goal>
-    <goal name="VC wmpn_toom32_mul.144.0.1" expl="precondition" proved="true">
-    <proof prover="1"><result status="valid" time="0.13"/></proof>
-    </goal>
-    <goal name="VC wmpn_toom32_mul.144.0.2" expl="precondition" proved="true">
-    <proof prover="1"><result status="valid" time="0.22"/></proof>
-    </goal>
-    <goal name="VC wmpn_toom32_mul.144.0.3" expl="precondition" proved="true">
-    <proof prover="1"><result status="valid" time="0.17"/></proof>
-    </goal>
-    <goal name="VC wmpn_toom32_mul.144.0.4" expl="precondition" proved="true">
-    <proof prover="1"><result status="valid" time="0.27"/></proof>
-    </goal>
-    <goal name="VC wmpn_toom32_mul.144.0.5" expl="precondition" proved="true">
-    <proof prover="1"><result status="valid" time="0.21"/></proof>
-    </goal>
-   </transf>
-   </goal>
-  </transf>
+  <proof prover="1"><result status="valid" time="1.16"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.145" expl="assertion" proved="true">
   <proof prover="1"><result status="valid" time="0.10"/></proof>
@@ -5192,10 +5169,10 @@
   <proof prover="1"><result status="valid" time="0.16"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.151" expl="precondition" proved="true">
-  <proof prover="1"><result status="valid" time="0.57"/></proof>
+  <proof prover="1"><result status="valid" time="0.88"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.152" expl="precondition" proved="true">
-  <proof prover="1"><result status="valid" time="0.23"/></proof>
+  <proof prover="1"><result status="valid" time="0.40"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.153" expl="assertion" proved="true">
   <proof prover="0"><result status="valid" time="0.02"/></proof>
@@ -5214,10 +5191,10 @@
   </transf>
   </goal>
   <goal name="VC wmpn_toom32_mul.157" expl="assertion" proved="true">
-  <proof prover="1"><result status="valid" time="0.26"/></proof>
+  <proof prover="1"><result status="valid" time="0.60"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.158" expl="assertion" proved="true">
-  <proof prover="1"><result status="valid" time="0.34"/></proof>
+  <proof prover="1"><result status="valid" time="0.56"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.159" expl="assertion" proved="true">
   <transf name="split_vc" proved="true" >
@@ -5240,7 +5217,7 @@
    <proof prover="1"><result status="valid" time="0.05"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.159.6" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="4"><result status="valid" time="0.19"/></proof>
+   <proof prover="4"><result status="valid" time="0.40"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.159.7" expl="VC for wmpn_toom32_mul" proved="true">
    <proof prover="1"><result status="valid" time="0.06"/></proof>
@@ -5278,10 +5255,10 @@
   <proof prover="1"><result status="valid" time="0.06"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.166" expl="precondition" proved="true">
-  <proof prover="1" memlimit="2000"><result status="valid" time="0.74"/></proof>
+  <proof prover="1" memlimit="2000"><result status="valid" time="0.99"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.167" expl="precondition" proved="true">
-  <proof prover="1"><result status="valid" time="0.29"/></proof>
+  <proof prover="1"><result status="valid" time="0.54"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.168" expl="assertion" proved="true">
   <proof prover="0"><result status="valid" time="0.02"/></proof>
@@ -5293,10 +5270,14 @@
   <proof prover="1"><result status="valid" time="0.15"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.171" expl="precondition" proved="true">
-  <proof prover="4"><result status="valid" time="1.03"/></proof>
+  <transf name="inline_goal" proved="true" >
+   <goal name="VC wmpn_toom32_mul.171.0" expl="precondition" proved="true">
+   <proof prover="4"><result status="valid" time="0.23"/></proof>
+   </goal>
+  </transf>
   </goal>
   <goal name="VC wmpn_toom32_mul.172" expl="assertion" proved="true">
-  <proof prover="1"><result status="valid" time="0.36"/></proof>
+  <proof prover="1"><result status="valid" time="0.60"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.173" expl="assertion" proved="true">
   <proof prover="1"><result status="valid" time="0.34"/></proof>
@@ -5322,7 +5303,7 @@
    <proof prover="1"><result status="valid" time="0.06"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.174.6" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="4"><result status="valid" time="0.18"/></proof>
+   <proof prover="4"><result status="valid" time="0.30"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.174.7" expl="VC for wmpn_toom32_mul" proved="true">
    <proof prover="1"><result status="valid" time="0.06"/></proof>
@@ -5347,13 +5328,13 @@
    <proof prover="1"><result status="valid" time="0.11"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.175.1" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="1"><result status="valid" time="0.67"/></proof>
+   <proof prover="1"><result status="valid" time="1.30"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.175.2" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="1"><result status="valid" time="0.65"/></proof>
+   <proof prover="1"><result status="valid" time="1.08"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.175.3" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="1"><result status="valid" time="0.68"/></proof>
+   <proof prover="1"><result status="valid" time="1.05"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.175.4" expl="VC for wmpn_toom32_mul" proved="true">
    <proof prover="1"><result status="valid" time="0.10"/></proof>
@@ -5397,10 +5378,10 @@
   <proof prover="1"><result status="valid" time="0.19"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.186" expl="precondition" proved="true">
-  <proof prover="1"><result status="valid" time="0.59"/></proof>
+  <proof prover="1"><result status="valid" time="1.04"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.187" expl="precondition" proved="true">
-  <proof prover="1"><result status="valid" time="0.24"/></proof>
+  <proof prover="1"><result status="valid" time="0.46"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.188" expl="integer overflow" proved="true">
   <proof prover="1"><result status="valid" time="0.30"/></proof>
@@ -5412,14 +5393,10 @@
   <proof prover="0"><result status="valid" time="0.03"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.191" expl="precondition" proved="true">
-  <transf name="inline_goal" proved="true" >
-   <goal name="VC wmpn_toom32_mul.191.0" expl="precondition" proved="true">
-   <proof prover="4"><result status="valid" time="0.23"/></proof>
-   </goal>
-  </transf>
+  <proof prover="4"><result status="valid" time="1.36"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.192" expl="assertion" proved="true">
-  <proof prover="1"><result status="valid" time="0.32"/></proof>
+  <proof prover="1"><result status="valid" time="0.36"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.193" expl="integer overflow" proved="true">
   <proof prover="3"><result status="valid" time="0.26"/></proof>
@@ -5457,7 +5434,7 @@
    <proof prover="1"><result status="valid" time="0.14"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.197.7" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="0"><result status="valid" time="0.14"/></proof>
+   <proof prover="0"><result status="valid" time="0.26"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.197.8" expl="VC for wmpn_toom32_mul" proved="true">
    <proof prover="1"><result status="valid" time="0.06"/></proof>
@@ -5507,16 +5484,16 @@
   <proof prover="1"><result status="valid" time="0.12"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.204" expl="variant decrease" proved="true">
-  <proof prover="1"><result status="valid" time="0.11"/></proof>
+  <proof prover="1"><result status="valid" time="0.10"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.205" expl="precondition" proved="true">
-  <proof prover="1"><result status="valid" time="0.65"/></proof>
+  <proof prover="1"><result status="valid" time="0.96"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.206" expl="precondition" proved="true">
-  <proof prover="1"><result status="valid" time="0.32"/></proof>
+  <proof prover="1"><result status="valid" time="0.48"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.207" expl="precondition" proved="true">
-  <proof prover="1"><result status="valid" time="0.79"/></proof>
+  <proof prover="1"><result status="valid" time="1.03"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.208" expl="precondition" proved="true">
   <proof prover="1"><result status="valid" time="0.17"/></proof>
@@ -5525,13 +5502,13 @@
   <proof prover="1"><result status="valid" time="0.14"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.210" expl="precondition" proved="true">
-  <proof prover="1"><result status="valid" time="0.17"/></proof>
+  <proof prover="1"><result status="valid" time="0.12"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.211" expl="precondition" proved="true">
   <proof prover="1"><result status="valid" time="0.32"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.212" expl="precondition" proved="true">
-  <proof prover="1" memlimit="2000"><result status="valid" time="0.73"/></proof>
+  <proof prover="1" memlimit="2000"><result status="valid" time="0.97"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.213" expl="assertion" proved="true">
   <proof prover="1"><result status="valid" time="0.19"/></proof>
@@ -5563,10 +5540,10 @@
   <proof prover="1"><result status="valid" time="0.18"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.220" expl="precondition" proved="true">
-  <proof prover="1" memlimit="2000"><result status="valid" time="0.70"/></proof>
+  <proof prover="1" memlimit="2000"><result status="valid" time="0.90"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.221" expl="precondition" proved="true">
-  <proof prover="1"><result status="valid" time="0.26"/></proof>
+  <proof prover="1"><result status="valid" time="0.50"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.222" expl="precondition" proved="true">
   <proof prover="1"><result status="valid" time="0.16"/></proof>
@@ -5581,10 +5558,18 @@
   <proof prover="1"><result status="valid" time="0.16"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.226" expl="precondition" proved="true">
-  <proof prover="1" memlimit="2000"><result status="valid" time="1.28"/></proof>
+  <transf name="inline_goal" proved="true" >
+   <goal name="VC wmpn_toom32_mul.226.0" expl="precondition" proved="true">
+   <proof prover="1" memlimit="2000"><result status="valid" time="0.61"/></proof>
+   </goal>
+  </transf>
   </goal>
   <goal name="VC wmpn_toom32_mul.227" expl="precondition" proved="true">
-  <proof prover="1" memlimit="2000"><result status="valid" time="1.28"/></proof>
+  <transf name="inline_goal" proved="true" >
+   <goal name="VC wmpn_toom32_mul.227.0" expl="precondition" proved="true">
+   <proof prover="1" timelimit="1"><result status="valid" time="0.59"/></proof>
+   </goal>
+  </transf>
   </goal>
   <goal name="VC wmpn_toom32_mul.228" expl="assertion" proved="true">
   <proof prover="0"><result status="valid" time="0.03"/></proof>
@@ -5668,7 +5653,7 @@
   <goal name="VC wmpn_toom32_mul.241" expl="assertion" proved="true">
   <transf name="split_vc" proved="true" >
    <goal name="VC wmpn_toom32_mul.241.0" expl="assertion" proved="true">
-   <proof prover="3" memlimit="2000"><result status="valid" time="1.09"/></proof>
+   <proof prover="3" memlimit="2000"><result status="valid" time="1.41"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.241.1" expl="assertion" proved="true">
    <proof prover="3" memlimit="2000"><result status="valid" time="1.16"/></proof>
@@ -5683,7 +5668,7 @@
    <proof prover="3" memlimit="2000"><result status="valid" time="1.12"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.241.5" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="4"><result status="valid" time="0.16"/></proof>
+   <proof prover="4"><result status="valid" time="0.32"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.241.6" expl="VC for wmpn_toom32_mul" proved="true">
    <proof prover="4"><result status="valid" time="0.24"/></proof>
@@ -5705,10 +5690,10 @@
   <goal name="VC wmpn_toom32_mul.244" expl="assertion" proved="true">
   <transf name="split_vc" proved="true" >
    <goal name="VC wmpn_toom32_mul.244.0" expl="assertion" proved="true">
-   <proof prover="4"><result status="valid" time="0.21"/></proof>
+   <proof prover="4"><result status="valid" time="0.46"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.244.1" expl="assertion" proved="true">
-   <proof prover="1"><result status="valid" time="0.83"/></proof>
+   <proof prover="1"><result status="valid" time="1.14"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.244.2" expl="VC for wmpn_toom32_mul" proved="true">
    <proof prover="1"><result status="valid" time="1.02"/></proof>
@@ -5717,31 +5702,31 @@
    <proof prover="3" timelimit="1"><result status="valid" time="0.28"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.244.4" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="1"><result status="valid" time="0.86"/></proof>
+   <proof prover="1"><result status="valid" time="1.15"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.244.5" expl="VC for wmpn_toom32_mul" proved="true">
    <proof prover="1"><result status="valid" time="1.04"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.244.6" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="1"><result status="valid" time="0.86"/></proof>
+   <proof prover="1"><result status="valid" time="1.10"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.244.7" expl="VC for wmpn_toom32_mul" proved="true">
    <proof prover="1"><result status="valid" time="1.03"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.244.8" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="1"><result status="valid" time="0.87"/></proof>
+   <proof prover="1"><result status="valid" time="1.08"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.244.9" expl="VC for wmpn_toom32_mul" proved="true">
    <proof prover="1"><result status="valid" time="0.12"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.244.10" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="1"><result status="valid" time="1.01"/></proof>
+   <proof prover="1"><result status="valid" time="1.22"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.244.11" expl="VC for wmpn_toom32_mul" proved="true">
    <proof prover="1"><result status="valid" time="0.85"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.244.12" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="1"><result status="valid" time="0.88"/></proof>
+   <proof prover="1"><result status="valid" time="1.30"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.244.13" expl="VC for wmpn_toom32_mul" proved="true">
    <proof prover="1"><result status="valid" time="0.12"/></proof>
@@ -5750,7 +5735,7 @@
    <proof prover="1"><result status="valid" time="0.06"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.244.15" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="0"><result status="valid" time="2.96"/></proof>
+   <proof prover="0"><result status="valid" time="4.52"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.244.16" expl="VC for wmpn_toom32_mul" proved="true">
    <proof prover="1"><result status="valid" time="0.11"/></proof>
@@ -5765,7 +5750,7 @@
    <proof prover="1"><result status="valid" time="0.05"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.244.20" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="0"><result status="valid" time="2.94"/></proof>
+   <proof prover="0"><result status="valid" time="3.98"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.244.21" expl="VC for wmpn_toom32_mul" proved="true">
    <proof prover="1"><result status="valid" time="0.06"/></proof>
@@ -5812,7 +5797,7 @@
    <proof prover="1"><result status="valid" time="0.06"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.245.4" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="4"><result status="valid" time="0.19"/></proof>
+   <proof prover="4"><result status="valid" time="0.38"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.245.5" expl="VC for wmpn_toom32_mul" proved="true">
    <proof prover="0"><result status="valid" time="0.04"/></proof>
@@ -5826,7 +5811,7 @@
   <proof prover="1"><result status="valid" time="0.06"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.247" expl="integer overflow" proved="true">
-  <proof prover="1"><result status="valid" time="0.16"/></proof>
+  <proof prover="1"><result status="valid" time="0.32"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.248" expl="integer overflow" proved="true">
   <proof prover="1"><result status="valid" time="0.27"/></proof>
@@ -5835,10 +5820,10 @@
   <proof prover="1"><result status="valid" time="0.15"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.250" expl="precondition" proved="true">
-  <proof prover="1" memlimit="2000"><result status="valid" time="0.82"/></proof>
+  <proof prover="1" memlimit="2000"><result status="valid" time="1.28"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.251" expl="precondition" proved="true">
-  <proof prover="1"><result status="valid" time="0.37"/></proof>
+  <proof prover="1"><result status="valid" time="0.70"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.252" expl="precondition" proved="true">
   <proof prover="1"><result status="valid" time="0.10"/></proof>
@@ -5849,7 +5834,7 @@
    <proof prover="1"><result status="valid" time="0.11"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.253.1" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="0"><result status="valid" time="1.00"/></proof>
+   <proof prover="0"><result status="valid" time="1.67"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.253.2" expl="VC for wmpn_toom32_mul" proved="true">
    <transf name="replace" proved="true" arg1="(m*m)" arg2="(power radix (2*n))">
@@ -5871,7 +5856,7 @@
    <proof prover="1"><result status="valid" time="0.08"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.253.6" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="0" timelimit="1"><result status="valid" time="0.50"/></proof>
+   <proof prover="0" timelimit="1"><result status="valid" time="0.78"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.253.7" expl="VC for wmpn_toom32_mul" proved="true">
    <proof prover="1"><result status="valid" time="0.06"/></proof>
@@ -5883,7 +5868,7 @@
    <proof prover="1"><result status="valid" time="0.22"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.253.10" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="1"><result status="valid" time="0.98"/></proof>
+   <proof prover="1"><result status="valid" time="1.56"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.253.11" expl="VC for wmpn_toom32_mul" proved="true">
    <transf name="apply" proved="true" arg1="prod_compat_r">
@@ -5916,21 +5901,33 @@
   </transf>
   </goal>
   <goal name="VC wmpn_toom32_mul.254" expl="precondition" proved="true">
-  <proof prover="1"><result status="valid" time="0.12"/></proof>
+  <proof prover="1"><result status="valid" time="0.17"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.255" expl="precondition" proved="true">
   <proof prover="1"><result status="valid" time="0.20"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.256" expl="integer overflow" proved="true">
-  <proof prover="1"><result status="valid" time="0.20"/></proof>
+  <proof prover="1"><result status="valid" time="0.25"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.257" expl="precondition" proved="true">
-  <proof prover="1"><result status="valid" time="0.14"/></proof>
+  <transf name="inline_goal" proved="true" >
+   <goal name="VC wmpn_toom32_mul.257.0" expl="precondition" proved="true">
+   <proof prover="1"><result status="valid" time="0.11"/></proof>
+   <transf name="split_vc" proved="true" >
+    <goal name="VC wmpn_toom32_mul.257.0.0" expl="precondition" proved="true">
+    <proof prover="1"><result status="valid" time="0.13"/></proof>
+    </goal>
+    <goal name="VC wmpn_toom32_mul.257.0.1" expl="precondition" proved="true">
+    <proof prover="1"><result status="valid" time="0.18"/></proof>
+    </goal>
+   </transf>
+   </goal>
+  </transf>
   </goal>
   <goal name="VC wmpn_toom32_mul.258" expl="assertion" proved="true">
   <transf name="inline_goal" proved="true" >
    <goal name="VC wmpn_toom32_mul.258.0" expl="assertion" proved="true">
-   <proof prover="0"><result status="valid" time="2.82"/></proof>
+   <proof prover="0"><result status="valid" time="4.73"/></proof>
    </goal>
   </transf>
   </goal>
@@ -5938,7 +5935,21 @@
   <proof prover="1"><result status="valid" time="0.21"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.260" expl="precondition" proved="true">
-  <proof prover="1"><result status="valid" time="0.16"/></proof>
+  <transf name="split_vc" proved="true" >
+   <goal name="VC wmpn_toom32_mul.260.0" expl="precondition" proved="true">
+   <proof prover="1"><result status="valid" time="0.10"/></proof>
+   </goal>
+   <goal name="VC wmpn_toom32_mul.260.1" expl="precondition" proved="true">
+   <transf name="replace" proved="true" arg1="(m*m)" arg2="(power radix (2*n))">
+    <goal name="VC wmpn_toom32_mul.260.1.0" expl="precondition" proved="true">
+    <proof prover="0"><result status="valid" time="0.31"/></proof>
+    </goal>
+    <goal name="VC wmpn_toom32_mul.260.1.1" proved="true">
+    <proof prover="1"><result status="valid" time="0.42"/></proof>
+    </goal>
+   </transf>
+   </goal>
+  </transf>
   </goal>
   <goal name="VC wmpn_toom32_mul.261" expl="assertion" proved="true">
   <transf name="split_vc" proved="true" >
@@ -5961,7 +5972,14 @@
   <proof prover="1"><result status="valid" time="0.06"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.263" expl="postcondition" proved="true">
-  <proof prover="1"><result status="valid" time="0.07"/></proof>
+  <transf name="split_vc" proved="true" >
+   <goal name="VC wmpn_toom32_mul.263.0" expl="postcondition" proved="true">
+   <proof prover="1"><result status="valid" time="0.10"/></proof>
+   </goal>
+   <goal name="VC wmpn_toom32_mul.263.1" expl="postcondition" proved="true">
+   <proof prover="1"><result status="valid" time="0.06"/></proof>
+   </goal>
+  </transf>
   </goal>
   <goal name="VC wmpn_toom32_mul.264" expl="assertion" proved="true">
   <transf name="split_vc" proved="true" >
@@ -5992,7 +6010,7 @@
   <proof prover="1"><result status="valid" time="0.16"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.266" expl="integer overflow" proved="true">
-  <proof prover="1"><result status="valid" time="0.18"/></proof>
+  <proof prover="1"><result status="valid" time="0.30"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.267" expl="integer overflow" proved="true">
   <proof prover="1"><result status="valid" time="0.28"/></proof>
@@ -6030,7 +6048,7 @@
     <proof prover="0"><result status="valid" time="0.04"/></proof>
     </goal>
     <goal name="VC wmpn_toom32_mul.272.2.1" proved="true">
-    <proof prover="1"><result status="valid" time="0.36"/></proof>
+    <proof prover="1"><result status="valid" time="0.66"/></proof>
     </goal>
    </transf>
    </goal>
@@ -6053,7 +6071,7 @@
      <proof prover="3" timelimit="10" memlimit="2000"><result status="valid" time="0.04"/></proof>
      </goal>
      <goal name="VC wmpn_toom32_mul.272.6.0.1" proved="true">
-     <proof prover="1"><result status="valid" time="0.37"/></proof>
+     <proof prover="1"><result status="valid" time="0.60"/></proof>
      </goal>
     </transf>
     </goal>
@@ -6072,10 +6090,10 @@
    <proof prover="1"><result status="valid" time="0.24"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.272.11" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="1"><result status="valid" time="0.33"/></proof>
+   <proof prover="1"><result status="valid" time="0.59"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.272.12" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="4"><result status="valid" time="0.23"/></proof>
+   <proof prover="4"><result status="valid" time="0.42"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.272.13" expl="VC for wmpn_toom32_mul" proved="true">
    <proof prover="0"><result status="valid" time="0.03"/></proof>
@@ -6090,7 +6108,7 @@
    <proof prover="1"><result status="valid" time="0.24"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.272.17" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="4"><result status="valid" time="0.23"/></proof>
+   <proof prover="4"><result status="valid" time="0.44"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.272.18" expl="VC for wmpn_toom32_mul" proved="true">
    <proof prover="1"><result status="valid" time="0.23"/></proof>
@@ -6104,55 +6122,29 @@
   </transf>
   </goal>
   <goal name="VC wmpn_toom32_mul.273" expl="precondition" proved="true">
-  <proof prover="1"><result status="valid" time="0.12"/></proof>
+  <proof prover="1"><result status="valid" time="0.17"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.274" expl="precondition" proved="true">
   <proof prover="1"><result status="valid" time="0.20"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.275" expl="integer overflow" proved="true">
-  <proof prover="1"><result status="valid" time="0.25"/></proof>
+  <proof prover="1"><result status="valid" time="0.42"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.276" expl="precondition" proved="true">
-  <transf name="inline_goal" proved="true" >
-   <goal name="VC wmpn_toom32_mul.276.0" expl="precondition" proved="true">
-   <proof prover="1"><result status="valid" time="0.11"/></proof>
-   <transf name="split_vc" proved="true" >
-    <goal name="VC wmpn_toom32_mul.276.0.0" expl="precondition" proved="true">
-    <proof prover="1"><result status="valid" time="0.13"/></proof>
-    </goal>
-    <goal name="VC wmpn_toom32_mul.276.0.1" expl="precondition" proved="true">
-    <proof prover="1"><result status="valid" time="0.18"/></proof>
-    </goal>
-   </transf>
-   </goal>
-  </transf>
+  <proof prover="1"><result status="valid" time="0.14"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.277" expl="assertion" proved="true">
   <transf name="inline_goal" proved="true" >
    <goal name="VC wmpn_toom32_mul.277.0" expl="assertion" proved="true">
-   <proof prover="0"><result status="valid" time="2.60"/></proof>
+   <proof prover="0"><result status="valid" time="4.02"/></proof>
    </goal>
   </transf>
   </goal>
   <goal name="VC wmpn_toom32_mul.278" expl="integer overflow" proved="true">
-  <proof prover="1"><result status="valid" time="0.21"/></proof>
+  <proof prover="1"><result status="valid" time="0.39"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.279" expl="precondition" proved="true">
-  <transf name="split_vc" proved="true" >
-   <goal name="VC wmpn_toom32_mul.279.0" expl="precondition" proved="true">
-   <transf name="replace" proved="true" arg1="(m*m)" arg2="(power radix (2*n))">
-    <goal name="VC wmpn_toom32_mul.279.0.0" expl="precondition" proved="true">
-    <proof prover="0"><result status="valid" time="0.31"/></proof>
-    </goal>
-    <goal name="VC wmpn_toom32_mul.279.0.1" proved="true">
-    <proof prover="1"><result status="valid" time="0.42"/></proof>
-    </goal>
-   </transf>
-   </goal>
-   <goal name="VC wmpn_toom32_mul.279.1" expl="precondition" proved="true">
-   <proof prover="1"><result status="valid" time="0.10"/></proof>
-   </goal>
-  </transf>
+  <proof prover="1"><result status="valid" time="0.16"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.280" expl="assertion" proved="true">
   <transf name="split_vc" proved="true" >
@@ -6175,14 +6167,7 @@
   <proof prover="1"><result status="valid" time="0.05"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.282" expl="postcondition" proved="true">
-  <transf name="split_vc" proved="true" >
-   <goal name="VC wmpn_toom32_mul.282.0" expl="postcondition" proved="true">
-   <proof prover="1"><result status="valid" time="0.10"/></proof>
-   </goal>
-   <goal name="VC wmpn_toom32_mul.282.1" expl="postcondition" proved="true">
-   <proof prover="1"><result status="valid" time="0.06"/></proof>
-   </goal>
-  </transf>
+  <proof prover="1"><result status="valid" time="0.07"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.283" expl="integer overflow" proved="true">
   <proof prover="1" memlimit="2000"><result status="valid" time="0.20"/></proof>
@@ -6221,7 +6206,7 @@
    <proof prover="1"><result status="valid" time="0.06"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.288.4" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="1"><result status="valid" time="0.36"/></proof>
+   <proof prover="1"><result status="valid" time="0.53"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.288.5" expl="VC for wmpn_toom32_mul" proved="true">
    <proof prover="0"><result status="valid" time="0.08"/></proof>
@@ -6233,7 +6218,7 @@
    <proof prover="3"><result status="valid" time="0.40"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.288.8" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="1"><result status="valid" time="0.37"/></proof>
+   <proof prover="1"><result status="valid" time="0.66"/></proof>
    </goal>
   </transf>
   </goal>
@@ -6253,10 +6238,10 @@
   <proof prover="1"><result status="valid" time="0.22"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.294" expl="integer overflow" proved="true">
-  <proof prover="1"><result status="valid" time="0.18"/></proof>
+  <proof prover="1"><result status="valid" time="0.34"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.295" expl="integer overflow" proved="true">
-  <proof prover="1"><result status="valid" time="0.36"/></proof>
+  <proof prover="1"><result status="valid" time="0.60"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.296" expl="assertion" proved="true">
   <proof prover="0"><result status="valid" time="0.04"/></proof>
@@ -6311,10 +6296,10 @@
    <proof prover="0"><result status="valid" time="0.02"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.303.3" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="1"><result status="valid" time="0.42"/></proof>
+   <proof prover="1"><result status="valid" time="0.75"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.303.4" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="4"><result status="valid" time="0.26"/></proof>
+   <proof prover="4"><result status="valid" time="0.42"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.303.5" expl="VC for wmpn_toom32_mul" proved="true">
    <proof prover="1"><result status="valid" time="0.18"/></proof>
@@ -6329,13 +6314,13 @@
    <goal name="VC wmpn_toom32_mul.304.0" expl="precondition" proved="true">
    <transf name="split_vc" proved="true" >
     <goal name="VC wmpn_toom32_mul.304.0.0" expl="precondition" proved="true">
-    <proof prover="1"><result status="valid" time="0.40"/></proof>
+    <proof prover="1"><result status="valid" time="0.69"/></proof>
     </goal>
     <goal name="VC wmpn_toom32_mul.304.0.1" expl="precondition" proved="true">
     <proof prover="1"><result status="valid" time="0.12"/></proof>
     </goal>
     <goal name="VC wmpn_toom32_mul.304.0.2" expl="precondition" proved="true">
-    <proof prover="1"><result status="valid" time="0.41"/></proof>
+    <proof prover="1"><result status="valid" time="0.65"/></proof>
     </goal>
     <goal name="VC wmpn_toom32_mul.304.0.3" expl="precondition" proved="true">
     <proof prover="1"><result status="valid" time="0.10"/></proof>
@@ -6344,17 +6329,17 @@
     <proof prover="1"><result status="valid" time="0.11"/></proof>
     </goal>
     <goal name="VC wmpn_toom32_mul.304.0.5" expl="precondition" proved="true">
-    <proof prover="1"><result status="valid" time="0.41"/></proof>
+    <proof prover="1"><result status="valid" time="0.84"/></proof>
     </goal>
    </transf>
    </goal>
   </transf>
   </goal>
   <goal name="VC wmpn_toom32_mul.305" expl="precondition" proved="true">
-  <proof prover="1"><result status="valid" time="0.45"/></proof>
+  <proof prover="1"><result status="valid" time="0.61"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.306" expl="precondition" proved="true">
-  <proof prover="1"><result status="valid" time="0.44"/></proof>
+  <proof prover="1"><result status="valid" time="0.87"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.307" expl="assertion" proved="true">
   <transf name="split_vc" proved="true" >
@@ -6362,10 +6347,10 @@
    <proof prover="1"><result status="valid" time="0.06"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.307.1" expl="assertion" proved="true">
-   <proof prover="1" memlimit="2000"><result status="valid" time="0.88"/></proof>
+   <proof prover="1" memlimit="2000"><result status="valid" time="1.16"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.307.2" expl="assertion" proved="true">
-   <proof prover="4"><result status="valid" time="0.29"/></proof>
+   <proof prover="4"><result status="valid" time="0.45"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.307.3" expl="VC for wmpn_toom32_mul" proved="true">
    <proof prover="1"><result status="valid" time="0.10"/></proof>
@@ -6375,7 +6360,7 @@
   <goal name="VC wmpn_toom32_mul.308" expl="assertion" proved="true">
   <transf name="split_vc" proved="true" >
    <goal name="VC wmpn_toom32_mul.308.0" expl="assertion" proved="true">
-   <proof prover="4"><result status="valid" time="0.58"/></proof>
+   <proof prover="4"><result status="valid" time="0.99"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.308.1" expl="VC for wmpn_toom32_mul" proved="true">
    <proof prover="1"><result status="valid" time="0.24"/></proof>
@@ -6386,23 +6371,23 @@
   </transf>
   </goal>
   <goal name="VC wmpn_toom32_mul.309" expl="integer overflow" proved="true">
-  <proof prover="1"><result status="valid" time="0.42"/></proof>
+  <proof prover="1"><result status="valid" time="0.58"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.310" expl="integer overflow" proved="true">
-  <proof prover="1"><result status="valid" time="0.42"/></proof>
+  <proof prover="1"><result status="valid" time="0.60"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.311" expl="precondition" proved="true">
   <transf name="inline_goal" proved="true" >
    <goal name="VC wmpn_toom32_mul.311.0" expl="precondition" proved="true">
    <transf name="split_vc" proved="true" >
     <goal name="VC wmpn_toom32_mul.311.0.0" expl="precondition" proved="true">
-    <proof prover="1"><result status="valid" time="0.50"/></proof>
+    <proof prover="1"><result status="valid" time="0.75"/></proof>
     </goal>
     <goal name="VC wmpn_toom32_mul.311.0.1" expl="precondition" proved="true">
     <proof prover="1"><result status="valid" time="0.14"/></proof>
     </goal>
     <goal name="VC wmpn_toom32_mul.311.0.2" expl="precondition" proved="true">
-    <proof prover="1"><result status="valid" time="0.44"/></proof>
+    <proof prover="1"><result status="valid" time="0.88"/></proof>
     </goal>
     <goal name="VC wmpn_toom32_mul.311.0.3" expl="precondition" proved="true">
     <proof prover="1"><result status="valid" time="0.19"/></proof>
@@ -6411,7 +6396,7 @@
     <proof prover="1"><result status="valid" time="0.18"/></proof>
     </goal>
     <goal name="VC wmpn_toom32_mul.311.0.5" expl="precondition" proved="true">
-    <proof prover="1"><result status="valid" time="0.44"/></proof>
+    <proof prover="1"><result status="valid" time="0.84"/></proof>
     </goal>
    </transf>
    </goal>
@@ -6429,7 +6414,7 @@
   <goal name="VC wmpn_toom32_mul.315" expl="precondition" proved="true">
   <transf name="inline_goal" proved="true" >
    <goal name="VC wmpn_toom32_mul.315.0" expl="precondition" proved="true">
-   <proof prover="0"><result status="valid" time="0.06"/></proof>
+   <proof prover="1" memlimit="2000"><result status="valid" time="0.08"/></proof>
    </goal>
   </transf>
   </goal>
@@ -6448,13 +6433,13 @@
    <proof prover="1"><result status="valid" time="0.06"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.316.4" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="4"><result status="valid" time="0.24"/></proof>
+   <proof prover="4"><result status="valid" time="0.46"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.316.5" expl="VC for wmpn_toom32_mul" proved="true">
    <proof prover="1"><result status="valid" time="0.08"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.316.6" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="4"><result status="valid" time="0.25"/></proof>
+   <proof prover="4"><result status="valid" time="0.46"/></proof>
    </goal>
   </transf>
   </goal>
@@ -6484,7 +6469,7 @@
   <proof prover="1"><result status="valid" time="0.14"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.323" expl="precondition" proved="true">
-  <proof prover="1" memlimit="2000"><result status="valid" time="1.17"/></proof>
+  <proof prover="1" memlimit="2000"><result status="valid" time="2.40"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.324" expl="precondition" proved="true">
   <proof prover="1"><result status="valid" time="0.51"/></proof>
@@ -6499,25 +6484,48 @@
   <proof prover="1" memlimit="2000"><result status="valid" time="1.46"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.328" expl="precondition" proved="true">
-  <proof prover="1"><result status="valid" time="0.64"/></proof>
+  <proof prover="1"><result status="valid" time="1.14"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.329" expl="assertion" proved="true">
   <proof prover="1"><result status="valid" time="0.06"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.330" expl="integer overflow" proved="true">
-  <proof prover="1"><result status="valid" time="0.53"/></proof>
+  <proof prover="1"><result status="valid" time="0.70"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.331" expl="precondition" proved="true">
-  <proof prover="1" memlimit="2000"><result status="valid" time="1.34"/></proof>
+  <transf name="inline_goal" proved="true" >
+   <goal name="VC wmpn_toom32_mul.331.0" expl="precondition" proved="true">
+   <transf name="split_vc" proved="true" >
+    <goal name="VC wmpn_toom32_mul.331.0.0" expl="precondition" proved="true">
+    <proof prover="1"><result status="valid" time="0.85"/></proof>
+    </goal>
+    <goal name="VC wmpn_toom32_mul.331.0.1" expl="precondition" proved="true">
+    <proof prover="1"><result status="valid" time="0.24"/></proof>
+    </goal>
+    <goal name="VC wmpn_toom32_mul.331.0.2" expl="precondition" proved="true">
+    <proof prover="1"><result status="valid" time="0.76"/></proof>
+    </goal>
+    <goal name="VC wmpn_toom32_mul.331.0.3" expl="precondition" proved="true">
+    <proof prover="1"><result status="valid" time="0.12"/></proof>
+    </goal>
+    <goal name="VC wmpn_toom32_mul.331.0.4" expl="precondition" proved="true">
+    <proof prover="1"><result status="valid" time="0.24"/></proof>
+    </goal>
+    <goal name="VC wmpn_toom32_mul.331.0.5" expl="precondition" proved="true">
+    <proof prover="1"><result status="valid" time="1.00"/></proof>
+    </goal>
+   </transf>
+   </goal>
+  </transf>
   </goal>
   <goal name="VC wmpn_toom32_mul.332" expl="precondition" proved="true">
-  <proof prover="1"><result status="valid" time="0.14"/></proof>
+  <proof prover="1"><result status="valid" time="0.16"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.333" expl="assertion" proved="true">
-  <proof prover="1"><result status="valid" time="0.13"/></proof>
+  <proof prover="1"><result status="valid" time="0.28"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.334" expl="integer overflow" proved="true">
-  <proof prover="1"><result status="valid" time="0.68"/></proof>
+  <proof prover="1"><result status="valid" time="0.92"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.335" expl="integer overflow" proved="true">
   <proof prover="0"><result status="valid" time="0.04"/></proof>
@@ -6533,18 +6541,18 @@
     <proof prover="1"><result status="valid" time="0.24"/></proof>
     </goal>
     <goal name="VC wmpn_toom32_mul.336.0.2" expl="precondition" proved="true">
-    <proof prover="1" memlimit="2000"><result status="valid" time="0.56"/></proof>
+    <proof prover="1" memlimit="2000"><result status="valid" time="1.06"/></proof>
     </goal>
     <goal name="VC wmpn_toom32_mul.336.0.3" expl="precondition" proved="true">
-    <proof prover="1"><result status="valid" time="0.13"/></proof>
+    <proof prover="1"><result status="valid" time="0.26"/></proof>
     </goal>
     <goal name="VC wmpn_toom32_mul.336.0.4" expl="precondition" proved="true">
-    <proof prover="1"><result status="valid" time="0.12"/></proof>
+    <proof prover="1"><result status="valid" time="0.26"/></proof>
     </goal>
     <goal name="VC wmpn_toom32_mul.336.0.5" expl="precondition" proved="true">
     <transf name="replace" proved="true" arg1="(plength vy2)" arg2="(plength vy21)">
      <goal name="VC wmpn_toom32_mul.336.0.5.0" expl="precondition" proved="true">
-     <proof prover="1" memlimit="2000"><result status="valid" time="0.58"/></proof>
+     <proof prover="1" memlimit="2000"><result status="valid" time="1.07"/></proof>
      </goal>
      <goal name="VC wmpn_toom32_mul.336.0.5.1" proved="true">
      <proof prover="0"><result status="valid" time="0.02"/></proof>
@@ -6559,7 +6567,7 @@
   <proof prover="1"><result status="valid" time="0.24"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.338" expl="precondition" proved="true">
-  <proof prover="4"><result status="valid" time="0.36"/></proof>
+  <proof prover="4"><result status="valid" time="0.53"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.339" expl="assertion" proved="true">
   <proof prover="0"><result status="valid" time="0.20"/></proof>
@@ -6579,7 +6587,7 @@
    <proof prover="1"><result status="valid" time="0.08"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.340.4" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="1"><result status="valid" time="0.14"/></proof>
+   <proof prover="1"><result status="valid" time="0.26"/></proof>
    </goal>
   </transf>
   </goal>
@@ -6587,7 +6595,7 @@
   <proof prover="1"><result status="valid" time="0.06"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.342" expl="postcondition" proved="true">
-  <proof prover="4"><result status="valid" time="0.68"/></proof>
+  <proof prover="4"><result status="valid" time="1.29"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.343" expl="assertion" proved="true">
   <proof prover="1"><result status="valid" time="0.10"/></proof>
@@ -6609,7 +6617,7 @@
     <proof prover="1"><result status="valid" time="0.49"/></proof>
     </goal>
     <goal name="VC wmpn_toom32_mul.345.0.3" expl="precondition" proved="true">
-    <proof prover="1"><result status="valid" time="0.11"/></proof>
+    <proof prover="1"><result status="valid" time="0.23"/></proof>
     </goal>
     <goal name="VC wmpn_toom32_mul.345.0.4" expl="precondition" proved="true">
     <proof prover="1"><result status="valid" time="0.11"/></proof>
@@ -6622,7 +6630,7 @@
   </transf>
   </goal>
   <goal name="VC wmpn_toom32_mul.346" expl="precondition" proved="true">
-  <proof prover="1"><result status="valid" time="0.52"/></proof>
+  <proof prover="1"><result status="valid" time="0.80"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.347" expl="assertion" proved="true">
   <proof prover="1"><result status="valid" time="0.06"/></proof>
@@ -6635,13 +6643,13 @@
    <goal name="VC wmpn_toom32_mul.349.0" expl="precondition" proved="true">
    <transf name="split_vc" proved="true" >
     <goal name="VC wmpn_toom32_mul.349.0.0" expl="precondition" proved="true">
-    <proof prover="1"><result status="valid" time="0.64"/></proof>
+    <proof prover="1"><result status="valid" time="1.05"/></proof>
     </goal>
     <goal name="VC wmpn_toom32_mul.349.0.1" expl="precondition" proved="true">
     <proof prover="1"><result status="valid" time="0.08"/></proof>
     </goal>
     <goal name="VC wmpn_toom32_mul.349.0.2" expl="precondition" proved="true">
-    <proof prover="1"><result status="valid" time="0.51"/></proof>
+    <proof prover="1"><result status="valid" time="0.96"/></proof>
     </goal>
     <goal name="VC wmpn_toom32_mul.349.0.3" expl="precondition" proved="true">
     <proof prover="1"><result status="valid" time="0.14"/></proof>
@@ -6650,7 +6658,7 @@
     <proof prover="1"><result status="valid" time="0.12"/></proof>
     </goal>
     <goal name="VC wmpn_toom32_mul.349.0.5" expl="precondition" proved="true">
-    <proof prover="1"><result status="valid" time="0.51"/></proof>
+    <proof prover="1"><result status="valid" time="0.88"/></proof>
     </goal>
    </transf>
    </goal>
@@ -6666,33 +6674,10 @@
   <proof prover="1"><result status="valid" time="0.67"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.353" expl="precondition" proved="true">
-  <transf name="inline_goal" proved="true" >
-   <goal name="VC wmpn_toom32_mul.353.0" expl="precondition" proved="true">
-   <transf name="split_vc" proved="true" >
-    <goal name="VC wmpn_toom32_mul.353.0.0" expl="precondition" proved="true">
-    <proof prover="1"><result status="valid" time="0.53"/></proof>
-    </goal>
-    <goal name="VC wmpn_toom32_mul.353.0.1" expl="precondition" proved="true">
-    <proof prover="1"><result status="valid" time="0.24"/></proof>
-    </goal>
-    <goal name="VC wmpn_toom32_mul.353.0.2" expl="precondition" proved="true">
-    <proof prover="1"><result status="valid" time="0.53"/></proof>
-    </goal>
-    <goal name="VC wmpn_toom32_mul.353.0.3" expl="precondition" proved="true">
-    <proof prover="1"><result status="valid" time="0.12"/></proof>
-    </goal>
-    <goal name="VC wmpn_toom32_mul.353.0.4" expl="precondition" proved="true">
-    <proof prover="1"><result status="valid" time="0.12"/></proof>
-    </goal>
-    <goal name="VC wmpn_toom32_mul.353.0.5" expl="precondition" proved="true">
-    <proof prover="1"><result status="valid" time="0.52"/></proof>
-    </goal>
-   </transf>
-   </goal>
-  </transf>
+  <proof prover="1" memlimit="2000"><result status="valid" time="2.33"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.354" expl="precondition" proved="true">
-  <proof prover="1"><result status="valid" time="0.16"/></proof>
+  <proof prover="1"><result status="valid" time="0.14"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.355" expl="assertion" proved="true">
   <proof prover="1"><result status="valid" time="0.22"/></proof>
@@ -6735,10 +6720,10 @@
    <proof prover="1"><result status="valid" time="0.23"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.358.1" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="1"><result status="valid" time="0.08"/></proof>
+   <proof prover="1"><result status="valid" time="0.09"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.358.2" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="1"><result status="valid" time="0.09"/></proof>
+   <proof prover="1"><result status="valid" time="0.08"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.358.3" expl="VC for wmpn_toom32_mul" proved="true">
    <proof prover="1"><result status="valid" time="0.09"/></proof>
@@ -6747,13 +6732,13 @@
    <proof prover="1"><result status="valid" time="0.09"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.358.5" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="4" timelimit="10"><result status="valid" time="2.47"/></proof>
+   <proof prover="4" timelimit="10"><result status="valid" time="3.79"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.358.6" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="1" memlimit="2000"><result status="valid" time="1.30"/></proof>
+   <proof prover="1" memlimit="2000"><result status="valid" time="2.27"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.358.7" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="1" memlimit="2000"><result status="valid" time="1.28"/></proof>
+   <proof prover="1" memlimit="2000"><result status="valid" time="1.68"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.358.8" expl="VC for wmpn_toom32_mul" proved="true">
    <transf name="apply" proved="true" arg1="prod_compat_r">
@@ -6761,7 +6746,7 @@
     <proof prover="1"><result status="valid" time="0.54"/></proof>
     </goal>
     <goal name="VC wmpn_toom32_mul.358.8.1" proved="true">
-    <proof prover="1" memlimit="2000"><result status="valid" time="1.32"/></proof>
+    <proof prover="1" memlimit="2000"><result status="valid" time="2.36"/></proof>
     </goal>
    </transf>
    </goal>
@@ -6805,7 +6790,7 @@
     <proof prover="1"><result status="valid" time="0.17"/></proof>
     </goal>
     <goal name="VC wmpn_toom32_mul.360.0.2" expl="precondition" proved="true">
-    <proof prover="1" memlimit="2000"><result status="valid" time="0.56"/></proof>
+    <proof prover="1" memlimit="2000"><result status="valid" time="1.09"/></proof>
     </goal>
     <goal name="VC wmpn_toom32_mul.360.0.3" expl="precondition" proved="true">
     <proof prover="1"><result status="valid" time="0.25"/></proof>
@@ -6816,7 +6801,7 @@
     <goal name="VC wmpn_toom32_mul.360.0.5" expl="precondition" proved="true">
     <transf name="replace" proved="true" arg1="(plength vy2)" arg2="(plength vy21)">
      <goal name="VC wmpn_toom32_mul.360.0.5.0" expl="precondition" proved="true">
-     <proof prover="1" memlimit="2000"><result status="valid" time="0.59"/></proof>
+     <proof prover="1" memlimit="2000"><result status="valid" time="0.78"/></proof>
      </goal>
      <goal name="VC wmpn_toom32_mul.360.0.5.1" proved="true">
      <proof prover="0"><result status="valid" time="0.02"/></proof>
@@ -6834,13 +6819,13 @@
   <proof prover="0"><result status="valid" time="0.03"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.363" expl="assertion" proved="true">
-  <proof prover="4"><result status="valid" time="0.33"/></proof>
+  <proof prover="4"><result status="valid" time="0.54"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.364" expl="postcondition" proved="true">
   <proof prover="0"><result status="valid" time="0.04"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.365" expl="postcondition" proved="true">
-  <proof prover="4"><result status="valid" time="0.32"/></proof>
+  <proof prover="4"><result status="valid" time="0.58"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.366" expl="postcondition" proved="true">
   <proof prover="1"><result status="valid" time="0.25"/></proof>
@@ -6859,12 +6844,12 @@
   </transf>
   </goal>
   <goal name="VC wmpn_toom32_mul.370" expl="precondition" proved="true">
-  <proof prover="1"><result status="valid" time="0.43"/></proof>
+  <proof prover="1"><result status="valid" time="0.73"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.371" expl="precondition" proved="true">
   <transf name="inline_goal" proved="true" >
    <goal name="VC wmpn_toom32_mul.371.0" expl="precondition" proved="true">
-   <proof prover="1"><result status="valid" time="0.59"/></proof>
+   <proof prover="1"><result status="valid" time="0.89"/></proof>
    </goal>
   </transf>
   </goal>
@@ -6875,13 +6860,36 @@
   <proof prover="1"><result status="valid" time="0.15"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.374" expl="precondition" proved="true">
-  <proof prover="1"><result status="valid" time="0.22"/></proof>
+  <proof prover="1"><result status="valid" time="0.12"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.375" expl="precondition" proved="true">
-  <proof prover="1"><result status="valid" time="0.45"/></proof>
+  <proof prover="1"><result status="valid" time="0.74"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.376" expl="precondition" proved="true">
-  <proof prover="1"><result status="valid" time="1.16"/></proof>
+  <transf name="inline_goal" proved="true" >
+   <goal name="VC wmpn_toom32_mul.376.0" expl="precondition" proved="true">
+   <transf name="split_vc" proved="true" >
+    <goal name="VC wmpn_toom32_mul.376.0.0" expl="precondition" proved="true">
+    <proof prover="3"><result status="valid" time="0.64"/></proof>
+    </goal>
+    <goal name="VC wmpn_toom32_mul.376.0.1" expl="precondition" proved="true">
+    <proof prover="1"><result status="valid" time="0.13"/></proof>
+    </goal>
+    <goal name="VC wmpn_toom32_mul.376.0.2" expl="precondition" proved="true">
+    <proof prover="1"><result status="valid" time="0.88"/></proof>
+    </goal>
+    <goal name="VC wmpn_toom32_mul.376.0.3" expl="precondition" proved="true">
+    <proof prover="1"><result status="valid" time="0.17"/></proof>
+    </goal>
+    <goal name="VC wmpn_toom32_mul.376.0.4" expl="precondition" proved="true">
+    <proof prover="1"><result status="valid" time="0.53"/></proof>
+    </goal>
+    <goal name="VC wmpn_toom32_mul.376.0.5" expl="precondition" proved="true">
+    <proof prover="1"><result status="valid" time="0.72"/></proof>
+    </goal>
+   </transf>
+   </goal>
+  </transf>
   </goal>
   <goal name="VC wmpn_toom32_mul.377" expl="precondition" proved="true">
   <proof prover="1"><result status="valid" time="0.24"/></proof>
@@ -6890,7 +6898,11 @@
   <proof prover="1"><result status="valid" time="0.22"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.379" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.53"/></proof>
+  <transf name="inline_goal" proved="true" >
+   <goal name="VC wmpn_toom32_mul.379.0" expl="precondition" proved="true">
+   <proof prover="0"><result status="valid" time="0.06"/></proof>
+   </goal>
+  </transf>
   </goal>
   <goal name="VC wmpn_toom32_mul.380" expl="assertion" proved="true">
   <proof prover="0"><result status="valid" time="0.05"/></proof>
@@ -6909,26 +6921,26 @@
   </transf>
   </goal>
   <goal name="VC wmpn_toom32_mul.382" expl="variant decrease" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.20"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.10"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.383" expl="precondition" proved="true">
   <transf name="inline_goal" proved="true" >
    <goal name="VC wmpn_toom32_mul.383.0" expl="precondition" proved="true">
-   <proof prover="1"><result status="valid" time="0.56"/></proof>
+   <proof prover="1"><result status="valid" time="1.08"/></proof>
    </goal>
   </transf>
   </goal>
   <goal name="VC wmpn_toom32_mul.384" expl="precondition" proved="true">
   <transf name="inline_goal" proved="true" >
    <goal name="VC wmpn_toom32_mul.384.0" expl="precondition" proved="true">
-   <proof prover="1"><result status="valid" time="0.53"/></proof>
+   <proof prover="1"><result status="valid" time="0.76"/></proof>
    </goal>
   </transf>
   </goal>
   <goal name="VC wmpn_toom32_mul.385" expl="precondition" proved="true">
   <transf name="inline_goal" proved="true" >
    <goal name="VC wmpn_toom32_mul.385.0" expl="precondition" proved="true">
-   <proof prover="1"><result status="valid" time="0.56"/></proof>
+   <proof prover="1"><result status="valid" time="0.86"/></proof>
    </goal>
   </transf>
   </goal>
@@ -6939,10 +6951,10 @@
   <proof prover="1" timelimit="1"><result status="valid" time="0.24"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.388" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.50"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.80"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.389" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.11"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.10"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.390" expl="postcondition" proved="true">
   <proof prover="1"><result status="valid" time="0.12"/></proof>
@@ -6957,7 +6969,7 @@
   <proof prover="1" timelimit="1"><result status="valid" time="0.08"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.394" expl="variant decrease" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.10"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.20"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.395" expl="precondition" proved="true">
   <transf name="inline_goal" proved="true" >
@@ -6969,14 +6981,14 @@
   <goal name="VC wmpn_toom32_mul.396" expl="precondition" proved="true">
   <transf name="inline_goal" proved="true" >
    <goal name="VC wmpn_toom32_mul.396.0" expl="precondition" proved="true">
-   <proof prover="1"><result status="valid" time="0.54"/></proof>
+   <proof prover="1"><result status="valid" time="0.75"/></proof>
    </goal>
   </transf>
   </goal>
   <goal name="VC wmpn_toom32_mul.397" expl="precondition" proved="true">
   <transf name="inline_goal" proved="true" >
    <goal name="VC wmpn_toom32_mul.397.0" expl="precondition" proved="true">
-   <proof prover="1"><result status="valid" time="0.57"/></proof>
+   <proof prover="1"><result status="valid" time="1.05"/></proof>
    </goal>
   </transf>
   </goal>
@@ -6987,10 +6999,10 @@
   <proof prover="1" timelimit="1"><result status="valid" time="0.11"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.400" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.52"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.70"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.401" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.10"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.11"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.402" expl="postcondition" proved="true">
   <proof prover="1"><result status="valid" time="0.10"/></proof>
@@ -7016,7 +7028,7 @@
     <proof prover="0"><result status="valid" time="0.03"/></proof>
     </goal>
     <goal name="VC wmpn_toom32_mul.407.0.1" proved="true">
-    <proof prover="1" memlimit="2000"><result status="valid" time="0.99"/></proof>
+    <proof prover="1" memlimit="2000"><result status="valid" time="1.79"/></proof>
     </goal>
    </transf>
    </goal>
@@ -7029,7 +7041,7 @@
     <proof prover="1" timelimit="1"><result status="valid" time="0.52"/></proof>
     </goal>
     <goal name="VC wmpn_toom32_mul.407.2.1" proved="true">
-    <proof prover="1" memlimit="2000"><result status="valid" time="0.93"/></proof>
+    <proof prover="1" memlimit="2000"><result status="valid" time="1.20"/></proof>
     </goal>
    </transf>
    </goal>
@@ -7043,7 +7055,7 @@
    <proof prover="4"><result status="valid" time="0.24"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.407.6" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="3" timelimit="1"><result status="valid" time="0.44"/></proof>
+   <proof prover="3" timelimit="1"><result status="valid" time="0.63"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.407.7" expl="VC for wmpn_toom32_mul" proved="true">
    <transf name="apply" proved="true" arg1="prod_compat_r">
@@ -7051,7 +7063,7 @@
     <proof prover="0"><result status="valid" time="0.02"/></proof>
     </goal>
     <goal name="VC wmpn_toom32_mul.407.7.1" proved="true">
-    <proof prover="0"><result status="valid" time="0.72"/></proof>
+    <proof prover="0"><result status="valid" time="1.20"/></proof>
     </goal>
    </transf>
    </goal>
@@ -7064,7 +7076,7 @@
     <proof prover="1" timelimit="1"><result status="valid" time="0.60"/></proof>
     </goal>
     <goal name="VC wmpn_toom32_mul.407.9.1" proved="true">
-    <proof prover="1" memlimit="2000"><result status="valid" time="1.24"/></proof>
+    <proof prover="1" memlimit="2000"><result status="valid" time="2.25"/></proof>
     </goal>
    </transf>
    </goal>
@@ -7089,10 +7101,15 @@
   <proof prover="1" timelimit="1"><result status="valid" time="0.24"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.410" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.60"/></proof>
+  <transf name="inline_goal" proved="true" >
+   <goal name="VC wmpn_toom32_mul.410.0" expl="precondition" proved="true">
+   <proof prover="1" memlimit="2000"><result status="valid" time="0.23"/></proof>
+   <proof prover="4"><result status="valid" time="0.38"/></proof>
+   </goal>
+  </transf>
   </goal>
   <goal name="VC wmpn_toom32_mul.411" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.58"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.64"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.412" expl="integer overflow" proved="true">
   <proof prover="1" timelimit="1"><result status="valid" time="0.31"/></proof>
@@ -7110,25 +7127,29 @@
   <proof prover="1" timelimit="1"><result status="valid" time="0.12"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.417" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.64"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.99"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.418" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.64"/></proof>
+  <transf name="inline_goal" proved="true" >
+   <goal name="VC wmpn_toom32_mul.418.0" expl="precondition" proved="true">
+   <proof prover="4"><result status="valid" time="0.63"/></proof>
+   </goal>
+  </transf>
   </goal>
   <goal name="VC wmpn_toom32_mul.419" expl="integer overflow" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.64"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="1.02"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.420" expl="precondition" proved="true">
   <proof prover="1" timelimit="1"><result status="valid" time="0.16"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.421" expl="assertion" proved="true">
-  <proof prover="0" timelimit="10"><result status="valid" time="8.46"/></proof>
+  <proof prover="0" timelimit="10"><result status="valid" time="14.55"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.422" expl="assertion" proved="true">
   <proof prover="0"><result status="valid" time="0.04"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.423" expl="assertion" proved="true">
-  <proof prover="4"><result status="valid" time="0.26"/></proof>
+  <proof prover="4"><result status="valid" time="0.53"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.424" expl="precondition" proved="true">
   <proof prover="1" timelimit="1"><result status="valid" time="0.25"/></proof>
@@ -7198,10 +7219,10 @@
   </transf>
   </goal>
   <goal name="VC wmpn_toom32_mul.431" expl="integer overflow" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.71"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.89"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.432" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.13"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.25"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.433" expl="precondition" proved="true">
   <proof prover="1" timelimit="1"><result status="valid" time="0.24"/></proof>
@@ -7209,7 +7230,7 @@
   <goal name="VC wmpn_toom32_mul.434" expl="precondition" proved="true">
   <transf name="inline_goal" proved="true" >
    <goal name="VC wmpn_toom32_mul.434.0" expl="precondition" proved="true">
-   <proof prover="1" timelimit="1"><result status="valid" time="0.71"/></proof>
+   <proof prover="1" timelimit="1"><result status="valid" time="1.13"/></proof>
    </goal>
   </transf>
   </goal>
@@ -7223,7 +7244,7 @@
   <goal name="VC wmpn_toom32_mul.436" expl="precondition" proved="true">
   <transf name="inline_goal" proved="true" >
    <goal name="VC wmpn_toom32_mul.436.0" expl="precondition" proved="true">
-   <proof prover="1" timelimit="1"><result status="valid" time="0.79"/></proof>
+   <proof prover="1" timelimit="1"><result status="valid" time="0.98"/></proof>
    </goal>
   </transf>
   </goal>
@@ -7231,7 +7252,7 @@
   <proof prover="1" timelimit="1"><result status="valid" time="0.14"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.438" expl="integer overflow" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.77"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.97"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.439" expl="assertion" proved="true">
   <proof prover="4"><result status="valid" time="0.30"/></proof>
@@ -7247,17 +7268,17 @@
   </transf>
   </goal>
   <goal name="VC wmpn_toom32_mul.442" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.80"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="1.14"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.443" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.79"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="1.10"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.444" expl="precondition" proved="true">
   <transf name="inline_goal" proved="true" >
    <goal name="VC wmpn_toom32_mul.444.0" expl="precondition" proved="true">
    <transf name="split_vc" proved="true" >
     <goal name="VC wmpn_toom32_mul.444.0.0" expl="precondition" proved="true">
-    <proof prover="1" timelimit="1"><result status="valid" time="0.76"/></proof>
+    <proof prover="1" timelimit="1"><result status="valid" time="1.11"/></proof>
     </goal>
     <goal name="VC wmpn_toom32_mul.444.0.1" expl="precondition" proved="true">
     <proof prover="1" timelimit="1"><result status="valid" time="0.14"/></proof>
@@ -7272,7 +7293,7 @@
     <proof prover="1" timelimit="1"><result status="valid" time="0.14"/></proof>
     </goal>
     <goal name="VC wmpn_toom32_mul.444.0.5" expl="precondition" proved="true">
-    <proof prover="1" timelimit="1"><result status="valid" time="0.78"/></proof>
+    <proof prover="1" timelimit="1"><result status="valid" time="1.20"/></proof>
     </goal>
    </transf>
    </goal>
@@ -7282,28 +7303,28 @@
   <proof prover="1" timelimit="1"><result status="valid" time="0.23"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.446" expl="integer overflow" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.79"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="1.02"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.447" expl="assertion" proved="true">
-  <proof prover="4"><result status="valid" time="0.32"/></proof>
+  <proof prover="4"><result status="valid" time="0.58"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.448" expl="assertion" proved="true">
   <proof prover="4"><result status="valid" time="0.39"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.449" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.14"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.29"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.450" expl="integer overflow" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.80"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="1.31"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.451" expl="precondition" proved="true">
   <proof prover="1" timelimit="1"><result status="valid" time="0.24"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.452" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.14"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.30"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.453" expl="integer overflow" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.41"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.68"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.454" expl="precondition" proved="true">
   <proof prover="1" timelimit="1"><result status="valid" time="0.27"/></proof>
@@ -7315,28 +7336,20 @@
   <proof prover="1" timelimit="1"><result status="valid" time="0.25"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.457" expl="precondition" proved="true">
-  <transf name="inline_goal" proved="true" >
-   <goal name="VC wmpn_toom32_mul.457.0" expl="precondition" proved="true">
-   <proof prover="1" memlimit="2000"><result status="valid" time="0.98"/></proof>
-   </goal>
-  </transf>
+  <proof prover="1" memlimit="2000"><result status="valid" time="3.28"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.458" expl="precondition" proved="true">
-  <transf name="inline_goal" proved="true" >
-   <goal name="VC wmpn_toom32_mul.458.0" expl="precondition" proved="true">
-   <proof prover="1" memlimit="2000"><result status="valid" time="1.00"/></proof>
-   </goal>
-  </transf>
+  <proof prover="1" memlimit="2000"><result status="valid" time="3.65"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.459" expl="precondition" proved="true">
   <transf name="inline_goal" proved="true" >
    <goal name="VC wmpn_toom32_mul.459.0" expl="precondition" proved="true">
-   <proof prover="4"><result status="valid" time="0.42"/></proof>
+   <proof prover="4"><result status="valid" time="0.73"/></proof>
    </goal>
   </transf>
   </goal>
   <goal name="VC wmpn_toom32_mul.460" expl="integer overflow" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.92"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="1.42"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.461" expl="precondition" proved="true">
   <proof prover="1" timelimit="1"><result status="valid" time="0.15"/></proof>
@@ -7345,10 +7358,10 @@
   <proof prover="1" timelimit="1"><result status="valid" time="0.43"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.463" expl="integer overflow" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.42"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.59"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.464" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.16"/></proof>
+  <proof prover="1"><result status="valid" time="0.22"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.465" expl="assertion" proved="true">
   <transf name="split_vc" proved="true" >
@@ -7386,13 +7399,13 @@
    <proof prover="0"><result status="valid" time="0.06"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.465.7" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="4"><result status="valid" time="0.45"/></proof>
+   <proof prover="4"><result status="valid" time="0.84"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.465.8" expl="VC for wmpn_toom32_mul" proved="true">
    <proof prover="1" timelimit="1"><result status="valid" time="0.14"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.465.9" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="4"><result status="valid" time="0.44"/></proof>
+   <proof prover="4"><result status="valid" time="0.63"/></proof>
    </goal>
   </transf>
   </goal>
@@ -7405,7 +7418,7 @@
    <proof prover="1" timelimit="1"><result status="valid" time="0.28"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.466.2" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="4"><result status="valid" time="0.51"/></proof>
+   <proof prover="4"><result status="valid" time="0.74"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.466.3" expl="VC for wmpn_toom32_mul" proved="true">
    <proof prover="0"><result status="valid" time="0.04"/></proof>
@@ -7416,7 +7429,7 @@
   </transf>
   </goal>
   <goal name="VC wmpn_toom32_mul.467" expl="integer overflow" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.45"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.74"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.468" expl="precondition" proved="true">
   <proof prover="1" timelimit="1"><result status="valid" time="0.15"/></proof>
@@ -7429,19 +7442,19 @@
     <proof prover="0"><result status="valid" time="0.06"/></proof>
     </goal>
     <goal name="VC wmpn_toom32_mul.469.0.1" expl="precondition" proved="true">
-    <proof prover="1" timelimit="1"><result status="valid" time="0.14"/></proof>
+    <proof prover="1" timelimit="1"><result status="valid" time="0.32"/></proof>
     </goal>
     <goal name="VC wmpn_toom32_mul.469.0.2" expl="precondition" proved="true">
-    <proof prover="4"><result status="valid" time="0.49"/></proof>
+    <proof prover="4"><result status="valid" time="0.96"/></proof>
     </goal>
     <goal name="VC wmpn_toom32_mul.469.0.3" expl="precondition" proved="true">
-    <proof prover="1" timelimit="1"><result status="valid" time="0.19"/></proof>
+    <proof prover="1" timelimit="1"><result status="valid" time="0.32"/></proof>
     </goal>
     <goal name="VC wmpn_toom32_mul.469.0.4" expl="precondition" proved="true">
-    <proof prover="1" timelimit="1"><result status="valid" time="0.18"/></proof>
+    <proof prover="1" timelimit="1"><result status="valid" time="0.31"/></proof>
     </goal>
     <goal name="VC wmpn_toom32_mul.469.0.5" expl="precondition" proved="true">
-    <proof prover="4"><result status="valid" time="0.47"/></proof>
+    <proof prover="4"><result status="valid" time="0.82"/></proof>
     </goal>
    </transf>
    </goal>
@@ -7450,15 +7463,15 @@
   <goal name="VC wmpn_toom32_mul.470" expl="precondition" proved="true">
   <transf name="inline_goal" proved="true" >
    <goal name="VC wmpn_toom32_mul.470.0" expl="precondition" proved="true">
-   <proof prover="1" timelimit="1"><result status="valid" time="0.96"/></proof>
+   <proof prover="1" timelimit="1"><result status="valid" time="0.86"/></proof>
    </goal>
   </transf>
   </goal>
   <goal name="VC wmpn_toom32_mul.471" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.14"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.29"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.472" expl="integer overflow" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="1.07"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="1.64"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.473" expl="assertion" proved="true">
   <transf name="replace" proved="true" arg1="(3*n)" arg2="(n+n+n)">
@@ -7472,10 +7485,10 @@
       <proof prover="1" timelimit="1"><result status="valid" time="0.16"/></proof>
       </goal>
       <goal name="VC wmpn_toom32_mul.473.0.0.0.1" proved="true">
-      <proof prover="1" timelimit="1"><result status="valid" time="0.28"/></proof>
+      <proof prover="1" timelimit="1"><result status="valid" time="0.26"/></proof>
       </goal>
       <goal name="VC wmpn_toom32_mul.473.0.0.0.2" proved="true">
-      <proof prover="1" timelimit="1"><result status="valid" time="0.26"/></proof>
+      <proof prover="1" timelimit="1"><result status="valid" time="0.28"/></proof>
       </goal>
      </transf>
      </goal>
@@ -7500,20 +7513,20 @@
   <goal name="VC wmpn_toom32_mul.474" expl="assertion" proved="true">
   <transf name="split_vc" proved="true" >
    <goal name="VC wmpn_toom32_mul.474.0" expl="assertion" proved="true">
-   <proof prover="4"><result status="valid" time="0.45"/></proof>
+   <proof prover="4"><result status="valid" time="0.97"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.474.1" expl="assertion" proved="true">
-   <proof prover="0"><result status="valid" time="2.50"/></proof>
-   <proof prover="4"><result status="valid" time="0.46"/></proof>
+   <proof prover="0"><result status="valid" time="4.67"/></proof>
+   <proof prover="4"><result status="valid" time="0.90"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.474.2" expl="assertion" proved="true">
    <proof prover="1" timelimit="1"><result status="valid" time="0.08"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.474.3" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="1" timelimit="1"><result status="valid" time="0.16"/></proof>
+   <proof prover="1" timelimit="1"><result status="valid" time="0.34"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.474.4" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="4"><result status="valid" time="0.48"/></proof>
+   <proof prover="4"><result status="valid" time="0.85"/></proof>
    </goal>
   </transf>
   </goal>
@@ -7526,14 +7539,14 @@
   <goal name="VC wmpn_toom32_mul.477" expl="precondition" proved="true">
   <transf name="inline_goal" proved="true" >
    <goal name="VC wmpn_toom32_mul.477.0" expl="precondition" proved="true">
-   <proof prover="1" memlimit="2000"><result status="valid" time="1.21"/></proof>
+   <proof prover="4"><result status="valid" time="0.83"/></proof>
    </goal>
   </transf>
   </goal>
   <goal name="VC wmpn_toom32_mul.478" expl="precondition" proved="true">
   <transf name="inline_goal" proved="true" >
    <goal name="VC wmpn_toom32_mul.478.0" expl="precondition" proved="true">
-   <proof prover="1" memlimit="2000"><result status="valid" time="1.21"/></proof>
+   <proof prover="1" memlimit="2000"><result status="valid" time="1.86"/></proof>
    </goal>
   </transf>
   </goal>
@@ -7554,7 +7567,7 @@
    <goal name="VC wmpn_toom32_mul.481.2" expl="VC for wmpn_toom32_mul" proved="true">
    <transf name="inline_goal" proved="true" >
     <goal name="VC wmpn_toom32_mul.481.2.0" expl="VC for wmpn_toom32_mul" proved="true">
-    <proof prover="4"><result status="valid" time="0.52"/></proof>
+    <proof prover="4"><result status="valid" time="1.00"/></proof>
     </goal>
    </transf>
    </goal>
@@ -7566,14 +7579,14 @@
   <goal name="VC wmpn_toom32_mul.482" expl="assertion" proved="true">
   <transf name="split_vc" proved="true" >
    <goal name="VC wmpn_toom32_mul.482.0" expl="assertion" proved="true">
-   <proof prover="1" memlimit="2000"><result status="valid" time="1.03"/></proof>
+   <proof prover="1" memlimit="2000"><result status="valid" time="2.12"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.482.1" expl="VC for wmpn_toom32_mul" proved="true">
    <transf name="replace" proved="true" arg1="(m*m*m*m)" arg2="((m*m)*(m*m))">
     <goal name="VC wmpn_toom32_mul.482.1.0" expl="VC for wmpn_toom32_mul" proved="true">
     <transf name="rewrite" proved="true" arg1="H">
      <goal name="VC wmpn_toom32_mul.482.1.0.0" expl="VC for wmpn_toom32_mul" proved="true">
-     <proof prover="1" memlimit="2000"><result status="valid" time="1.07"/></proof>
+     <proof prover="1" memlimit="2000"><result status="valid" time="1.90"/></proof>
      </goal>
     </transf>
     </goal>
@@ -7585,28 +7598,28 @@
   </transf>
   </goal>
   <goal name="VC wmpn_toom32_mul.483" expl="assertion" proved="true">
-  <proof prover="4"><result status="valid" time="0.65"/></proof>
+  <proof prover="4"><result status="valid" time="0.82"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.484" expl="integer overflow" proved="true">
-  <proof prover="1" memlimit="2000"><result status="valid" time="1.06"/></proof>
+  <proof prover="1" memlimit="2000"><result status="valid" time="1.68"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.485" expl="integer overflow" proved="true">
-  <proof prover="1" memlimit="2000"><result status="valid" time="1.09"/></proof>
+  <proof prover="1" memlimit="2000"><result status="valid" time="1.78"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.486" expl="integer overflow" proved="true">
-  <proof prover="1" memlimit="2000"><result status="valid" time="1.31"/></proof>
+  <proof prover="1" memlimit="2000"><result status="valid" time="1.55"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.487" expl="integer overflow" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.54"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.76"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.488" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.17"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.30"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.489" expl="integer overflow" proved="true">
-  <proof prover="1" memlimit="2000"><result status="valid" time="0.56"/></proof>
+  <proof prover="1" memlimit="2000"><result status="valid" time="0.88"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.490" expl="integer overflow" proved="true">
-  <proof prover="1" memlimit="2000"><result status="valid" time="0.56"/></proof>
+  <proof prover="1" memlimit="2000"><result status="valid" time="0.88"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.491" expl="precondition" proved="true">
   <proof prover="1" memlimit="2000"><result status="valid" time="0.28"/></proof>
@@ -7614,7 +7627,7 @@
   <goal name="VC wmpn_toom32_mul.492" expl="assertion" proved="true">
   <transf name="split_vc" proved="true" >
    <goal name="VC wmpn_toom32_mul.492.0" expl="assertion" proved="true">
-   <proof prover="1" memlimit="2000"><result status="valid" time="1.35"/></proof>
+   <proof prover="1" memlimit="2000"><result status="valid" time="2.23"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.492.1" expl="VC for wmpn_toom32_mul" proved="true">
    <proof prover="4"><result status="valid" time="0.56"/></proof>
@@ -7629,13 +7642,13 @@
   <proof prover="0"><result status="valid" time="0.04"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.494" expl="integer overflow" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.68"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.85"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.495" expl="precondition" proved="true">
   <proof prover="1" timelimit="1"><result status="valid" time="0.16"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.496" expl="precondition" proved="true">
-  <proof prover="1" memlimit="2000"><result status="valid" time="3.78"/></proof>
+  <proof prover="1" memlimit="2000"><result status="valid" time="5.66"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.497" expl="precondition" proved="true">
   <transf name="inline_goal" proved="true" >
@@ -7648,10 +7661,10 @@
     <proof prover="1" timelimit="1"><result status="valid" time="0.16"/></proof>
     </goal>
     <goal name="VC wmpn_toom32_mul.497.0.2" expl="precondition" proved="true">
-    <proof prover="4"><result status="valid" time="0.63"/></proof>
+    <proof prover="4"><result status="valid" time="1.10"/></proof>
     </goal>
     <goal name="VC wmpn_toom32_mul.497.0.3" expl="precondition" proved="true">
-    <proof prover="1" timelimit="1"><result status="valid" time="0.16"/></proof>
+    <proof prover="1" timelimit="1"><result status="valid" time="0.30"/></proof>
     </goal>
     <goal name="VC wmpn_toom32_mul.497.0.4" expl="precondition" proved="true">
     <proof prover="1" timelimit="1"><result status="valid" time="0.24"/></proof>
@@ -7666,7 +7679,7 @@
   <goal name="VC wmpn_toom32_mul.498" expl="precondition" proved="true">
   <transf name="inline_goal" proved="true" >
    <goal name="VC wmpn_toom32_mul.498.0" expl="precondition" proved="true">
-   <proof prover="0"><result status="valid" time="0.14"/></proof>
+   <proof prover="0"><result status="valid" time="0.08"/></proof>
    </goal>
   </transf>
   </goal>
@@ -7677,7 +7690,7 @@
   <proof prover="1" timelimit="1"><result status="valid" time="0.64"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.501" expl="integer overflow" proved="true">
-  <proof prover="1" memlimit="2000"><result status="valid" time="0.74"/></proof>
+  <proof prover="1" memlimit="2000"><result status="valid" time="1.11"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.502" expl="precondition" proved="true">
   <proof prover="1" timelimit="1"><result status="valid" time="0.20"/></proof>
@@ -7685,7 +7698,7 @@
   <goal name="VC wmpn_toom32_mul.503" expl="assertion" proved="true">
   <transf name="split_vc" proved="true" >
    <goal name="VC wmpn_toom32_mul.503.0" expl="assertion" proved="true">
-   <proof prover="1" memlimit="2000"><result status="valid" time="1.32"/></proof>
+   <proof prover="1" memlimit="2000"><result status="valid" time="2.36"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.503.1" expl="VC for wmpn_toom32_mul" proved="true">
    <proof prover="0"><result status="valid" time="0.03"/></proof>
@@ -7712,30 +7725,22 @@
   <proof prover="1" timelimit="1"><result status="valid" time="0.18"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.505" expl="integer overflow" proved="true">
-  <proof prover="1" memlimit="2000"><result status="valid" time="1.35"/></proof>
+  <proof prover="1" memlimit="2000"><result status="valid" time="1.64"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.506" expl="assertion" proved="true">
   <transf name="split_vc" proved="true" >
    <goal name="VC wmpn_toom32_mul.506.0" expl="assertion" proved="true">
-   <proof prover="1" memlimit="2000"><result status="valid" time="1.31"/></proof>
+   <proof prover="1" memlimit="2000"><result status="valid" time="1.91"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.506.1" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="0"><result status="valid" time="0.40"/></proof>
+   <proof prover="0"><result status="valid" time="0.62"/></proof>
    </goal>
   </transf>
   </goal>
   <goal name="VC wmpn_toom32_mul.507" expl="assertion" proved="true">
-  <transf name="rewrite" proved="true" arg1="H4">
+  <transf name="rewrite" proved="true" arg1="H3">
    <goal name="VC wmpn_toom32_mul.507.0" expl="assertion" proved="true">
-   <transf name="rewrite" proved="true" arg1="H27">
-    <goal name="VC wmpn_toom32_mul.507.0.0" expl="assertion" proved="true">
-    <transf name="rewrite" proved="true" arg1="H8">
-     <goal name="VC wmpn_toom32_mul.507.0.0.0" expl="assertion" proved="true">
-     <proof prover="4"><result status="valid" time="0.88"/></proof>
-     </goal>
-    </transf>
-    </goal>
-   </transf>
+   <proof prover="4"><result status="valid" time="0.79"/></proof>
    </goal>
   </transf>
   </goal>
@@ -7751,13 +7756,13 @@
    <proof prover="1" timelimit="1"><result status="valid" time="0.11"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.508.3" expl="assertion" proved="true">
-   <proof prover="4"><result status="valid" time="0.64"/></proof>
+   <proof prover="4"><result status="valid" time="0.95"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.508.4" expl="VC for wmpn_toom32_mul" proved="true">
    <proof prover="4"><result status="valid" time="0.81"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.508.5" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="4"><result status="valid" time="0.66"/></proof>
+   <proof prover="4"><result status="valid" time="1.30"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.508.6" expl="VC for wmpn_toom32_mul" proved="true">
    <proof prover="1" timelimit="1"><result status="valid" time="0.11"/></proof>
@@ -7779,28 +7784,28 @@
    <proof prover="0"><result status="valid" time="0.06"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.509.2" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="4"><result status="valid" time="0.66"/></proof>
+   <proof prover="4"><result status="valid" time="0.85"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.509.3" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="1" memlimit="2000"><result status="valid" time="3.87"/></proof>
+   <proof prover="1" memlimit="2000"><result status="valid" time="5.69"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.509.4" expl="VC for wmpn_toom32_mul" proved="true">
    <proof prover="1" timelimit="1"><result status="valid" time="0.12"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.509.5" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="1" timelimit="1"><result status="valid" time="0.17"/></proof>
+   <proof prover="1" timelimit="1"><result status="valid" time="0.35"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.509.6" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="1" timelimit="1"><result status="valid" time="0.17"/></proof>
+   <proof prover="1" timelimit="1"><result status="valid" time="0.33"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.509.7" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="1" timelimit="1"><result status="valid" time="0.18"/></proof>
+   <proof prover="1" timelimit="1"><result status="valid" time="0.30"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.509.8" expl="VC for wmpn_toom32_mul" proved="true">
    <proof prover="4"><result status="valid" time="0.71"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.509.9" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="4"><result status="valid" time="0.70"/></proof>
+   <proof prover="4"><result status="valid" time="0.88"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.509.10" expl="VC for wmpn_toom32_mul" proved="true">
    <proof prover="1" timelimit="1"><result status="valid" time="0.09"/></proof>
@@ -7808,7 +7813,7 @@
   </transf>
   </goal>
   <goal name="VC wmpn_toom32_mul.510" expl="integer overflow" proved="true">
-  <proof prover="1" memlimit="2000"><result status="valid" time="1.34"/></proof>
+  <proof prover="1" memlimit="2000"><result status="valid" time="1.59"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.511" expl="precondition" proved="true">
   <proof prover="1" timelimit="1"><result status="valid" time="0.23"/></proof>
@@ -7818,46 +7823,46 @@
    <goal name="VC wmpn_toom32_mul.512.0" expl="precondition" proved="true">
    <transf name="split_vc" proved="true" >
     <goal name="VC wmpn_toom32_mul.512.0.0" expl="precondition" proved="true">
-    <proof prover="1" memlimit="2000"><result status="valid" time="1.36"/></proof>
+    <proof prover="1" memlimit="2000"><result status="valid" time="1.60"/></proof>
     </goal>
     <goal name="VC wmpn_toom32_mul.512.0.1" expl="precondition" proved="true">
-    <proof prover="1" timelimit="1"><result status="valid" time="0.18"/></proof>
+    <proof prover="1" timelimit="1"><result status="valid" time="0.30"/></proof>
     </goal>
     <goal name="VC wmpn_toom32_mul.512.0.2" expl="precondition" proved="true">
-    <proof prover="1" memlimit="2000"><result status="valid" time="1.36"/></proof>
+    <proof prover="1" memlimit="2000"><result status="valid" time="2.10"/></proof>
     </goal>
     <goal name="VC wmpn_toom32_mul.512.0.3" expl="precondition" proved="true">
-    <proof prover="1" timelimit="1"><result status="valid" time="0.22"/></proof>
+    <proof prover="1" timelimit="1"><result status="valid" time="0.35"/></proof>
     </goal>
     <goal name="VC wmpn_toom32_mul.512.0.4" expl="precondition" proved="true">
     <proof prover="1" timelimit="1"><result status="valid" time="0.27"/></proof>
     </goal>
     <goal name="VC wmpn_toom32_mul.512.0.5" expl="precondition" proved="true">
-    <proof prover="0"><result status="valid" time="0.49"/></proof>
+    <proof prover="0"><result status="valid" time="0.67"/></proof>
     </goal>
    </transf>
    </goal>
   </transf>
   </goal>
   <goal name="VC wmpn_toom32_mul.513" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.18"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.31"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.514" expl="precondition" proved="true">
   <proof prover="1" timelimit="1"><result status="valid" time="0.28"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.515" expl="postcondition" proved="true">
-  <proof prover="0"><result status="valid" time="0.59"/></proof>
+  <proof prover="0"><result status="valid" time="1.00"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.516" expl="assertion" proved="true">
   <transf name="split_vc" proved="true" >
    <goal name="VC wmpn_toom32_mul.516.0" expl="assertion" proved="true">
-   <proof prover="1" memlimit="2000"><result status="valid" time="4.54"/></proof>
+   <proof prover="1" memlimit="2000"><result status="valid" time="5.35"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.516.1" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="1" memlimit="2000"><result status="valid" time="4.51"/></proof>
+   <proof prover="1" memlimit="2000"><result status="valid" time="5.97"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.516.2" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="0"><result status="valid" time="0.86"/></proof>
+   <proof prover="0"><result status="valid" time="1.29"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.516.3" expl="VC for wmpn_toom32_mul" proved="true">
    <transf name="cut" proved="true" arg1="(power radix sy * value x sx &lt; power radix sy * power radix sx)">
@@ -7867,7 +7872,7 @@
     <goal name="VC wmpn_toom32_mul.516.3.1" proved="true">
     <transf name="apply" proved="true" arg1="prod_compat_strict_r">
      <goal name="VC wmpn_toom32_mul.516.3.1.0" proved="true">
-     <proof prover="4"><result status="valid" time="0.66"/></proof>
+     <proof prover="4"><result status="valid" time="1.14"/></proof>
      </goal>
      <goal name="VC wmpn_toom32_mul.516.3.1.1" proved="true">
      <proof prover="0"><result status="valid" time="0.03"/></proof>
@@ -7880,11 +7885,11 @@
    <proof prover="0"><result status="valid" time="0.26"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.516.5" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="4"><result status="valid" time="0.66"/></proof>
+   <proof prover="4"><result status="valid" time="1.12"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.516.6" expl="VC for wmpn_toom32_mul" proved="true">
    <proof prover="0"><result status="valid" time="0.06"/></proof>
-   <proof prover="1" memlimit="2000"><result status="valid" time="4.69"/></proof>
+   <proof prover="1" memlimit="2000"><result status="valid" time="6.59"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.516.7" expl="VC for wmpn_toom32_mul" proved="true">
    <proof prover="0"><result status="valid" time="0.60"/></proof>
@@ -7896,7 +7901,7 @@
    <proof prover="1" timelimit="1"><result status="valid" time="0.26"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.516.10" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="1" memlimit="2000"><result status="valid" time="1.19"/></proof>
+   <proof prover="1" memlimit="2000"><result status="valid" time="1.56"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.516.11" expl="VC for wmpn_toom32_mul" proved="true">
    <transf name="apply" proved="true" arg1="Power_sum">
@@ -7912,7 +7917,7 @@
    <proof prover="1" timelimit="1"><result status="valid" time="0.22"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.516.13" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="1" memlimit="2000"><result status="valid" time="1.31"/></proof>
+   <proof prover="1" memlimit="2000"><result status="valid" time="1.69"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.516.14" expl="VC for wmpn_toom32_mul" proved="true">
    <proof prover="4"><result status="valid" time="1.13"/></proof>
@@ -7927,13 +7932,13 @@
    <goal name="VC wmpn_toom32_mul.518.0" expl="precondition" proved="true">
    <transf name="split_vc" proved="true" >
     <goal name="VC wmpn_toom32_mul.518.0.0" expl="precondition" proved="true">
-    <proof prover="1" memlimit="2000"><result status="valid" time="1.30"/></proof>
+    <proof prover="1" memlimit="2000"><result status="valid" time="2.17"/></proof>
     </goal>
     <goal name="VC wmpn_toom32_mul.518.0.1" expl="precondition" proved="true">
     <proof prover="1" timelimit="1"><result status="valid" time="0.18"/></proof>
     </goal>
     <goal name="VC wmpn_toom32_mul.518.0.2" expl="precondition" proved="true">
-    <proof prover="1" memlimit="2000"><result status="valid" time="1.36"/></proof>
+    <proof prover="1" memlimit="2000"><result status="valid" time="1.67"/></proof>
     </goal>
     <goal name="VC wmpn_toom32_mul.518.0.3" expl="precondition" proved="true">
     <proof prover="1" timelimit="1"><result status="valid" time="0.16"/></proof>
@@ -7942,7 +7947,7 @@
     <proof prover="1" timelimit="1"><result status="valid" time="0.22"/></proof>
     </goal>
     <goal name="VC wmpn_toom32_mul.518.0.5" expl="precondition" proved="true">
-    <proof prover="1" memlimit="2000"><result status="valid" time="1.35"/></proof>
+    <proof prover="1" memlimit="2000"><result status="valid" time="2.48"/></proof>
     </goal>
    </transf>
    </goal>
@@ -7963,10 +7968,10 @@
    <proof prover="1" timelimit="1" memlimit="2000"><result status="valid" time="0.27"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.522.1" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="1" timelimit="1" memlimit="2000"><result status="valid" time="0.18"/></proof>
+   <proof prover="1" timelimit="1" memlimit="2000"><result status="valid" time="0.38"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.522.2" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="1" memlimit="2000"><result status="valid" time="1.48"/></proof>
+   <proof prover="1" memlimit="2000"><result status="valid" time="2.54"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.522.3" expl="VC for wmpn_toom32_mul" proved="true">
    <proof prover="1" timelimit="1" memlimit="2000"><result status="valid" time="0.14"/></proof>
@@ -7976,10 +7981,10 @@
    </goal>
    <goal name="VC wmpn_toom32_mul.522.5" expl="VC for wmpn_toom32_mul" proved="true">
    <proof prover="0"><result status="valid" time="0.05"/></proof>
-   <proof prover="1" memlimit="2000"><result status="valid" time="4.16"/></proof>
+   <proof prover="1" memlimit="2000"><result status="valid" time="5.19"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.522.6" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="1" memlimit="2000"><result status="valid" time="4.00"/></proof>
+   <proof prover="1" memlimit="2000"><result status="valid" time="5.21"/></proof>
    <transf name="unfold" proved="true" arg1="value">
     <goal name="VC wmpn_toom32_mul.522.6.0" expl="VC for wmpn_toom32_mul" proved="true">
     <proof prover="1" memlimit="2000"><result status="valid" time="1.46"/></proof>
@@ -7988,10 +7993,10 @@
    </goal>
    <goal name="VC wmpn_toom32_mul.522.7" expl="VC for wmpn_toom32_mul" proved="true">
    <proof prover="0"><result status="valid" time="0.03"/></proof>
-   <proof prover="1" memlimit="2000"><result status="valid" time="4.01"/></proof>
+   <proof prover="1" memlimit="2000"><result status="valid" time="4.86"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.522.8" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="1" memlimit="2000"><result status="valid" time="4.07"/></proof>
+   <proof prover="1" memlimit="2000"><result status="valid" time="6.23"/></proof>
    <transf name="unfold" proved="true" arg1="value">
     <goal name="VC wmpn_toom32_mul.522.8.0" expl="VC for wmpn_toom32_mul" proved="true">
     <proof prover="1" memlimit="2000"><result status="valid" time="1.46"/></proof>
@@ -7999,7 +8004,7 @@
    </transf>
    </goal>
    <goal name="VC wmpn_toom32_mul.522.9" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="4"><result status="valid" time="0.63"/></proof>
+   <proof prover="4"><result status="valid" time="0.84"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.522.10" expl="VC for wmpn_toom32_mul" proved="true">
    <proof prover="0"><result status="valid" time="0.86"/></proof>
@@ -8007,12 +8012,12 @@
    <goal name="VC wmpn_toom32_mul.522.11" expl="VC for wmpn_toom32_mul" proved="true">
    <transf name="cut" proved="true" arg1="(power radix sy * value x sx &lt; power radix sy * power radix sx)">
     <goal name="VC wmpn_toom32_mul.522.11.0" expl="VC for wmpn_toom32_mul" proved="true">
-    <proof prover="4"><result status="valid" time="0.63"/></proof>
+    <proof prover="4"><result status="valid" time="0.88"/></proof>
     </goal>
     <goal name="VC wmpn_toom32_mul.522.11.1" proved="true">
     <transf name="apply" proved="true" arg1="prod_compat_strict_r">
      <goal name="VC wmpn_toom32_mul.522.11.1.0" proved="true">
-     <proof prover="4"><result status="valid" time="0.63"/></proof>
+     <proof prover="4"><result status="valid" time="0.93"/></proof>
      </goal>
      <goal name="VC wmpn_toom32_mul.522.11.1.1" proved="true">
      <proof prover="0"><result status="valid" time="0.03"/></proof>
@@ -8023,21 +8028,21 @@
    </goal>
    <goal name="VC wmpn_toom32_mul.522.12" expl="VC for wmpn_toom32_mul" proved="true">
    <proof prover="0"><result status="valid" time="0.23"/></proof>
-   <proof prover="1" memlimit="2000"><result status="valid" time="4.04"/></proof>
+   <proof prover="1" memlimit="2000"><result status="valid" time="5.67"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.522.13" expl="VC for wmpn_toom32_mul" proved="true">
    <proof prover="0"><result status="valid" time="0.03"/></proof>
-   <proof prover="1" memlimit="2000"><result status="valid" time="1.60"/></proof>
+   <proof prover="1" memlimit="2000"><result status="valid" time="2.03"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.522.14" expl="VC for wmpn_toom32_mul" proved="true">
    <proof prover="0"><result status="valid" time="0.06"/></proof>
-   <proof prover="1" memlimit="2000"><result status="valid" time="4.07"/></proof>
+   <proof prover="1" memlimit="2000"><result status="valid" time="5.84"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.522.15" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="1" memlimit="2000"><result status="valid" time="4.22"/></proof>
+   <proof prover="1" memlimit="2000"><result status="valid" time="6.89"/></proof>
    <transf name="unfold" proved="true" arg1="value">
     <goal name="VC wmpn_toom32_mul.522.15.0" expl="VC for wmpn_toom32_mul" proved="true">
-    <proof prover="1" memlimit="2000"><result status="valid" time="1.47"/></proof>
+    <proof prover="1" memlimit="2000"><result status="valid" time="1.99"/></proof>
     </goal>
    </transf>
    </goal>
@@ -8054,7 +8059,7 @@
    <proof prover="1" timelimit="1"><result status="valid" time="0.17"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.522.20" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="4"><result status="valid" time="0.80"/></proof>
+   <proof prover="4"><result status="valid" time="1.02"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.522.21" expl="VC for wmpn_toom32_mul" proved="true">
    <proof prover="1" timelimit="1" memlimit="2000"><result status="valid" time="0.30"/></proof>
@@ -8063,10 +8068,10 @@
    <proof prover="1" timelimit="1" memlimit="2000"><result status="valid" time="0.20"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.522.23" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="1" timelimit="1"><result status="valid" time="0.16"/></proof>
+   <proof prover="1" timelimit="1"><result status="valid" time="0.34"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.522.24" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="4"><result status="valid" time="0.81"/></proof>
+   <proof prover="4"><result status="valid" time="1.14"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.522.25" expl="VC for wmpn_toom32_mul" proved="true">
    <proof prover="1" timelimit="1"><result status="valid" time="0.28"/></proof>
@@ -8074,26 +8079,25 @@
   </transf>
   </goal>
   <goal name="VC wmpn_toom32_mul.523" expl="postcondition" proved="true">
-  <proof prover="0"><result status="valid" time="1.66"/></proof>
+  <proof prover="0"><result status="valid" time="0.61"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.524" expl="precondition" proved="true">
   <proof prover="1" timelimit="1"><result status="valid" time="0.19"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.525" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.17"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.32"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.526" expl="precondition" proved="true">
   <transf name="inline_goal" proved="true" >
    <goal name="VC wmpn_toom32_mul.526.0" expl="precondition" proved="true">
-   <proof prover="1" memlimit="2000"><result status="valid" time="1.43"/></proof>
-   <proof prover="4"><result status="valid" time="0.54"/></proof>
+   <proof prover="4"><result status="valid" time="1.14"/></proof>
    </goal>
   </transf>
   </goal>
   <goal name="VC wmpn_toom32_mul.527" expl="precondition" proved="true">
   <transf name="inline_goal" proved="true" >
    <goal name="VC wmpn_toom32_mul.527.0" expl="precondition" proved="true">
-   <proof prover="4"><result status="valid" time="0.63"/></proof>
+   <proof prover="1" memlimit="2000"><result status="valid" time="2.69"/></proof>
    </goal>
   </transf>
   </goal>
@@ -8101,13 +8105,13 @@
   <proof prover="1" memlimit="2000"><result status="valid" time="0.57"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.529" expl="integer overflow" proved="true">
-  <proof prover="1" memlimit="2000"><result status="valid" time="1.22"/></proof>
+  <proof prover="1" memlimit="2000"><result status="valid" time="2.06"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.530" expl="integer overflow" proved="true">
-  <proof prover="1" memlimit="2000"><result status="valid" time="1.46"/></proof>
+  <proof prover="1" memlimit="2000"><result status="valid" time="2.37"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.531" expl="integer overflow" proved="true">
-  <proof prover="1" memlimit="2000"><result status="valid" time="0.60"/></proof>
+  <proof prover="1" memlimit="2000"><result status="valid" time="1.01"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.532" expl="precondition" proved="true">
   <proof prover="1" timelimit="1"><result status="valid" time="0.28"/></proof>
@@ -8127,7 +8131,7 @@
    <proof prover="0"><result status="valid" time="0.05"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.533.4" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="0"><result status="valid" time="0.45"/></proof>
+   <proof prover="0"><result status="valid" time="0.74"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.533.5" expl="VC for wmpn_toom32_mul" proved="true">
    <proof prover="1" timelimit="1"><result status="valid" time="0.18"/></proof>
@@ -8138,7 +8142,7 @@
   <proof prover="1" timelimit="1"><result status="valid" time="0.15"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.535" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.16"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.30"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.536" expl="precondition" proved="true">
   <proof prover="1" timelimit="1"><result status="valid" time="0.16"/></proof>
@@ -8150,18 +8154,18 @@
   <proof prover="1" timelimit="1"><result status="valid" time="0.16"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.539" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.16"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.29"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.540" expl="precondition" proved="true">
   <proof prover="1" timelimit="1"><result status="valid" time="0.28"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.541" expl="precondition" proved="true">
-  <proof prover="1" memlimit="2000"><result status="valid" time="0.16"/></proof>
+  <proof prover="1" memlimit="2000"><result status="valid" time="0.29"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.542" expl="precondition" proved="true">
   <transf name="inline_goal" proved="true" >
    <goal name="VC wmpn_toom32_mul.542.0" expl="precondition" proved="true">
-   <proof prover="4"><result status="valid" time="0.62"/></proof>
+   <proof prover="0"><result status="valid" time="0.16"/></proof>
    </goal>
   </transf>
   </goal>
@@ -8174,20 +8178,20 @@
   <goal name="VC wmpn_toom32_mul.545" expl="precondition" proved="true">
   <transf name="inline_goal" proved="true" >
    <goal name="VC wmpn_toom32_mul.545.0" expl="precondition" proved="true">
-   <proof prover="4"><result status="valid" time="0.65"/></proof>
+   <proof prover="4"><result status="valid" time="0.60"/></proof>
    </goal>
   </transf>
   </goal>
   <goal name="VC wmpn_toom32_mul.546" expl="assertion" proved="true">
   <transf name="split_vc" proved="true" >
    <goal name="VC wmpn_toom32_mul.546.0" expl="assertion" proved="true">
-   <proof prover="0"><result status="valid" time="0.48"/></proof>
+   <proof prover="0"><result status="valid" time="0.77"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.546.1" expl="assertion" proved="true">
-   <proof prover="0"><result status="valid" time="0.44"/></proof>
+   <proof prover="0"><result status="valid" time="0.82"/></proof>
    </goal>
    <goal name="VC wmpn_toom32_mul.546.2" expl="VC for wmpn_toom32_mul" proved="true">
-   <proof prover="4"><result status="valid" time="0.71"/></proof>
+   <proof prover="4"><result status="valid" time="1.00"/></proof>
    </goal>
   </transf>
   </goal>
@@ -8195,7 +8199,7 @@
   <proof prover="1" timelimit="1"><result status="valid" time="0.16"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.548" expl="postcondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.17"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.32"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.549" expl="postcondition" proved="true">
   <proof prover="0"><result status="valid" time="0.10"/></proof>
@@ -8207,7 +8211,7 @@
   <proof prover="1" timelimit="1"><result status="valid" time="0.26"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.552" expl="postcondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.70"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.98"/></proof>
   </goal>
   <goal name="VC wmpn_toom32_mul.553" expl="postcondition" proved="true">
   <proof prover="1" timelimit="1"><result status="valid" time="0.19"/></proof>
@@ -8219,11 +8223,11 @@
    <transf name="split_all_full" proved="true" >
     <goal name="VC wmpn_toom32_mul.554.0.0" expl="postcondition" proved="true">
     <proof prover="0"><result status="valid" time="0.16"/></proof>
-    <proof prover="1" memlimit="2000"><result status="valid" time="1.71"/></proof>
+    <proof prover="1" memlimit="2000"><result status="valid" time="3.56"/></proof>
     </goal>
     <goal name="VC wmpn_toom32_mul.554.0.1" expl="postcondition" proved="true">
-    <proof prover="1" memlimit="2000"><result status="valid" time="1.71"/></proof>
-    <proof prover="4"><result status="valid" time="0.62"/></proof>
+    <proof prover="1" memlimit="2000"><result status="valid" time="3.53"/></proof>
+    <proof prover="4"><result status="valid" time="1.41"/></proof>
     </goal>
    </transf>
    </goal>
@@ -8432,19 +8436,19 @@
   <proof prover="1" timelimit="1"><result status="valid" time="0.07"/></proof>
   </goal>
   <goal name="VC wmpn_mul.62" expl="assertion" proved="true">
-  <proof prover="5" timelimit="1"><result status="valid" time="0.30" steps="177"/></proof>
+  <proof prover="5" timelimit="1"><result status="valid" time="0.62" steps="176"/></proof>
   </goal>
   <goal name="VC wmpn_mul.63" expl="variant decrease" proved="true">
   <proof prover="1" timelimit="1"><result status="valid" time="0.04"/></proof>
   </goal>
   <goal name="VC wmpn_mul.64" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.30"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.54"/></proof>
   </goal>
   <goal name="VC wmpn_mul.65" expl="precondition" proved="true">
   <proof prover="1" timelimit="1"><result status="valid" time="0.06"/></proof>
   </goal>
   <goal name="VC wmpn_mul.66" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.34"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.79"/></proof>
   </goal>
   <goal name="VC wmpn_mul.67" expl="precondition" proved="true">
   <proof prover="1" timelimit="1"><result status="valid" time="0.07"/></proof>
@@ -8456,13 +8460,13 @@
   <proof prover="1" timelimit="1"><result status="valid" time="0.15"/></proof>
   </goal>
   <goal name="VC wmpn_mul.70" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.33"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.71"/></proof>
   </goal>
   <goal name="VC wmpn_mul.71" expl="precondition" proved="true">
   <proof prover="1" timelimit="1"><result status="valid" time="0.14"/></proof>
   </goal>
   <goal name="VC wmpn_mul.72" expl="precondition" proved="true">
-  <proof prover="3" timelimit="1"><result status="valid" time="0.33"/></proof>
+  <proof prover="3" timelimit="1"><result status="valid" time="0.62"/></proof>
   </goal>
   <goal name="VC wmpn_mul.73" expl="precondition" proved="true">
   <proof prover="1" timelimit="1"><result status="valid" time="0.44"/></proof>
@@ -8471,29 +8475,33 @@
   <proof prover="1" timelimit="1"><result status="valid" time="0.07"/></proof>
   </goal>
   <goal name="VC wmpn_mul.75" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.15"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.32"/></proof>
   </goal>
   <goal name="VC wmpn_mul.76" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.14"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.33"/></proof>
   </goal>
   <goal name="VC wmpn_mul.77" expl="precondition" proved="true">
-  <proof prover="5" memlimit="2000"><result status="valid" time="0.72" steps="232"/></proof>
+  <transf name="inline_goal" proved="true" >
+   <goal name="VC wmpn_mul.77.0" expl="precondition" proved="true">
+   <proof prover="0"><result status="valid" time="0.04"/></proof>
+   </goal>
+  </transf>
   </goal>
   <goal name="VC wmpn_mul.78" expl="assertion" proved="true">
-  <proof prover="5" memlimit="2000"><result status="valid" time="0.81" steps="211"/></proof>
+  <proof prover="0"><result status="valid" time="0.02"/></proof>
   </goal>
   <goal name="VC wmpn_mul.79" expl="assertion" proved="true">
   <proof prover="1" timelimit="1"><result status="valid" time="0.06"/></proof>
-  <proof prover="5" memlimit="2000"><result status="valid" time="0.52" steps="164"/></proof>
+  <proof prover="5" memlimit="2000"><result status="valid" time="1.06" steps="163"/></proof>
   </goal>
   <goal name="VC wmpn_mul.80" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.09"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.10"/></proof>
   </goal>
   <goal name="VC wmpn_mul.81" expl="precondition" proved="true">
   <proof prover="1" timelimit="1"><result status="valid" time="0.18"/></proof>
   </goal>
   <goal name="VC wmpn_mul.82" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.61"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="1.03"/></proof>
   </goal>
   <goal name="VC wmpn_mul.83" expl="precondition" proved="true">
   <transf name="inline_goal" proved="true" >
@@ -8506,45 +8514,38 @@
     <proof prover="1" timelimit="1"><result status="valid" time="0.18"/></proof>
     </goal>
     <goal name="VC wmpn_mul.83.0.2" expl="precondition" proved="true">
-    <proof prover="1" timelimit="1"><result status="valid" time="0.18"/></proof>
+    <proof prover="1" timelimit="1"><result status="valid" time="0.34"/></proof>
     </goal>
     <goal name="VC wmpn_mul.83.0.3" expl="precondition" proved="true">
     <proof prover="1" timelimit="1"><result status="valid" time="0.12"/></proof>
     </goal>
     <goal name="VC wmpn_mul.83.0.4" expl="precondition" proved="true">
-    <proof prover="1" timelimit="1"><result status="valid" time="0.44"/></proof>
+    <proof prover="1" timelimit="1"><result status="valid" time="0.82"/></proof>
     </goal>
     <goal name="VC wmpn_mul.83.0.5" expl="precondition" proved="true">
-    <proof prover="5" timelimit="1"><result status="valid" time="0.92" steps="240"/></proof>
+    <proof prover="5" timelimit="1"><result status="valid" time="1.82" steps="239"/></proof>
     </goal>
    </transf>
    </goal>
   </transf>
   </goal>
   <goal name="VC wmpn_mul.84" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.05"/></proof>
-  <proof prover="5" memlimit="2000"><result status="valid" time="1.81" steps="196"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.15"/></proof>
   </goal>
   <goal name="VC wmpn_mul.85" expl="precondition" proved="true">
+  <proof prover="5" memlimit="2000"><result status="valid" time="3.54" steps="464"/></proof>
   <transf name="inline_goal" proved="true" >
    <goal name="VC wmpn_mul.85.0" expl="precondition" proved="true">
-   <transf name="assert" proved="true" arg1="(pelts r = pelts rpn)">
-    <goal name="VC wmpn_mul.85.0.0" proved="true">
-    <proof prover="0"><result status="valid" time="0.02"/></proof>
-    </goal>
-    <goal name="VC wmpn_mul.85.0.1" expl="precondition" proved="true">
-    <proof prover="1" timelimit="1"><result status="valid" time="0.20"/></proof>
-    </goal>
-   </transf>
+   <proof prover="5" memlimit="2000"><result status="valid" time="2.33" steps="249"/></proof>
    </goal>
   </transf>
   </goal>
   <goal name="VC wmpn_mul.86" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.67"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.59"/></proof>
   </goal>
   <goal name="VC wmpn_mul.87" expl="assertion" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.29"/></proof>
-  <proof prover="5" memlimit="2000"><result status="valid" time="2.20" steps="240"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.42"/></proof>
+  <proof prover="5" memlimit="2000"><result status="valid" time="4.26" steps="239"/></proof>
   </goal>
   <goal name="VC wmpn_mul.88" expl="assertion" proved="true">
   <proof prover="0"><result status="valid" time="0.04"/></proof>
@@ -8558,7 +8559,7 @@
   <goal name="VC wmpn_mul.91" expl="assertion" proved="true">
   <transf name="split_vc" proved="true" >
    <goal name="VC wmpn_mul.91.0" expl="assertion" proved="true">
-   <proof prover="1" timelimit="1"><result status="valid" time="0.17"/></proof>
+   <proof prover="1" timelimit="1"><result status="valid" time="0.30"/></proof>
    </goal>
    <goal name="VC wmpn_mul.91.1" expl="assertion" proved="true">
    <proof prover="0"><result status="valid" time="0.03"/></proof>
@@ -8566,7 +8567,7 @@
   </transf>
   </goal>
   <goal name="VC wmpn_mul.92" expl="integer overflow" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.25"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.42"/></proof>
   </goal>
   <goal name="VC wmpn_mul.93" expl="precondition" proved="true">
   <proof prover="1" timelimit="1"><result status="valid" time="0.17"/></proof>
@@ -8592,7 +8593,7 @@
   <proof prover="1" timelimit="1"><result status="valid" time="0.16"/></proof>
   </goal>
   <goal name="VC wmpn_mul.96" expl="assertion" proved="true">
-  <proof prover="5" memlimit="2000"><result status="valid" time="4.06" steps="264"/></proof>
+  <proof prover="5" memlimit="2000"><result status="valid" time="7.97" steps="263"/></proof>
   </goal>
   <goal name="VC wmpn_mul.97" expl="integer overflow" proved="true">
   <proof prover="1" timelimit="1"><result status="valid" time="0.22"/></proof>
@@ -8601,15 +8602,15 @@
   <proof prover="1" timelimit="1"><result status="valid" time="0.17"/></proof>
   </goal>
   <goal name="VC wmpn_mul.99" expl="assertion" proved="true">
-  <proof prover="4"><result status="valid" time="0.29"/></proof>
+  <proof prover="4"><result status="valid" time="0.64"/></proof>
   </goal>
   <goal name="VC wmpn_mul.100" expl="assertion" proved="true">
   <transf name="split_vc" proved="true" >
    <goal name="VC wmpn_mul.100.0" expl="assertion" proved="true">
-   <proof prover="0"><result status="valid" time="0.42"/></proof>
+   <proof prover="0"><result status="valid" time="0.84"/></proof>
    </goal>
    <goal name="VC wmpn_mul.100.1" expl="assertion" proved="true">
-   <proof prover="4"><result status="valid" time="0.33"/></proof>
+   <proof prover="4"><result status="valid" time="0.65"/></proof>
    </goal>
    <goal name="VC wmpn_mul.100.2" expl="assertion" proved="true">
    <proof prover="1" timelimit="1"><result status="valid" time="0.06"/></proof>
@@ -8633,15 +8634,15 @@
    <proof prover="0"><result status="valid" time="0.03"/></proof>
    </goal>
    <goal name="VC wmpn_mul.100.9" expl="VC for wmpn_mul" proved="true">
-   <proof prover="1" timelimit="1"><result status="valid" time="0.12"/></proof>
+   <proof prover="1" timelimit="1"><result status="valid" time="0.26"/></proof>
    </goal>
   </transf>
   </goal>
   <goal name="VC wmpn_mul.101" expl="integer overflow" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.23"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.37"/></proof>
   </goal>
   <goal name="VC wmpn_mul.102" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.09"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.24"/></proof>
   </goal>
   <goal name="VC wmpn_mul.103" expl="assertion" proved="true">
   <transf name="assert" proved="true" arg1="(value rpn su = value_sub (pelts r) (offset r + or) (offset r + ou + sr))">
@@ -8650,7 +8651,7 @@
     <goal name="VC wmpn_mul.103.0.0" proved="true">
     <transf name="apply" proved="true" arg1="value_sub_eq">
      <goal name="VC wmpn_mul.103.0.0.0" proved="true">
-     <proof prover="1" timelimit="1"><result status="valid" time="0.10"/></proof>
+     <proof prover="1" timelimit="1"><result status="valid" time="0.26"/></proof>
      </goal>
      <goal name="VC wmpn_mul.103.0.0.1" proved="true">
      <proof prover="1" timelimit="1"><result status="valid" time="0.13"/></proof>
@@ -8663,17 +8664,17 @@
    </transf>
    </goal>
    <goal name="VC wmpn_mul.103.1" expl="assertion" proved="true">
-   <proof prover="4"><result status="valid" time="0.38"/></proof>
+   <proof prover="4"><result status="valid" time="0.58"/></proof>
    </goal>
   </transf>
   </goal>
   <goal name="VC wmpn_mul.104" expl="assertion" proved="true">
   <transf name="split_vc" proved="true" >
    <goal name="VC wmpn_mul.104.0" expl="assertion" proved="true">
-   <proof prover="1" memlimit="2000"><result status="valid" time="0.95"/></proof>
+   <proof prover="1" memlimit="2000"><result status="valid" time="1.50"/></proof>
    </goal>
    <goal name="VC wmpn_mul.104.1" expl="VC for wmpn_mul" proved="true">
-   <proof prover="1" memlimit="2000"><result status="valid" time="0.84"/></proof>
+   <proof prover="1" memlimit="2000"><result status="valid" time="1.20"/></proof>
    </goal>
    <goal name="VC wmpn_mul.104.2" expl="VC for wmpn_mul" proved="true">
    <transf name="apply" proved="true" arg1="prod_compat_strict_lr">
@@ -8681,7 +8682,7 @@
     <proof prover="0"><result status="valid" time="0.05"/></proof>
     </goal>
     <goal name="VC wmpn_mul.104.2.1" proved="true">
-    <proof prover="1" timelimit="1"><result status="valid" time="0.88"/></proof>
+    <proof prover="1" timelimit="1"><result status="valid" time="1.82"/></proof>
     </goal>
    </transf>
    </goal>
@@ -8694,12 +8695,12 @@
     <proof prover="1" timelimit="1"><result status="valid" time="0.12"/></proof>
     </goal>
     <goal name="VC wmpn_mul.104.3.2" proved="true">
-    <proof prover="1" timelimit="1"><result status="valid" time="0.08"/></proof>
+    <proof prover="1" timelimit="1"><result status="valid" time="0.20"/></proof>
     </goal>
    </transf>
    </goal>
    <goal name="VC wmpn_mul.104.4" expl="VC for wmpn_mul" proved="true">
-   <proof prover="1" timelimit="1"><result status="valid" time="0.11"/></proof>
+   <proof prover="1" timelimit="1"><result status="valid" time="0.33"/></proof>
    </goal>
    <goal name="VC wmpn_mul.104.5" expl="VC for wmpn_mul" proved="true">
    <proof prover="1" timelimit="1"><result status="valid" time="0.06"/></proof>
@@ -8711,7 +8712,7 @@
    <proof prover="1" timelimit="1"><result status="valid" time="0.09"/></proof>
    </goal>
    <goal name="VC wmpn_mul.104.8" expl="VC for wmpn_mul" proved="true">
-   <proof prover="1" timelimit="1"><result status="valid" time="0.86"/></proof>
+   <proof prover="1" timelimit="1"><result status="valid" time="1.42"/></proof>
    </goal>
    <goal name="VC wmpn_mul.104.9" expl="VC for wmpn_mul" proved="true">
    <proof prover="1" timelimit="1"><result status="valid" time="0.22"/></proof>
@@ -8727,7 +8728,7 @@
    </transf>
    </goal>
    <goal name="VC wmpn_mul.104.11" expl="VC for wmpn_mul" proved="true">
-   <proof prover="4"><result status="valid" time="0.36"/></proof>
+   <proof prover="4"><result status="valid" time="0.74"/></proof>
    </goal>
   </transf>
   </goal>
@@ -8736,19 +8737,19 @@
    <goal name="VC wmpn_mul.105.0" expl="precondition" proved="true">
    <transf name="split_vc" proved="true" >
     <goal name="VC wmpn_mul.105.0.0" expl="precondition" proved="true">
-    <proof prover="1" timelimit="1"><result status="valid" time="0.20"/></proof>
+    <proof prover="1" timelimit="1"><result status="valid" time="0.42"/></proof>
     </goal>
     <goal name="VC wmpn_mul.105.0.1" expl="precondition" proved="true">
     <proof prover="1" timelimit="1"><result status="valid" time="0.10"/></proof>
     </goal>
     <goal name="VC wmpn_mul.105.0.2" expl="precondition" proved="true">
-    <proof prover="1" timelimit="1"><result status="valid" time="0.23"/></proof>
+    <proof prover="1" timelimit="1"><result status="valid" time="0.50"/></proof>
     </goal>
     <goal name="VC wmpn_mul.105.0.3" expl="precondition" proved="true">
     <proof prover="1" timelimit="1"><result status="valid" time="0.12"/></proof>
     </goal>
     <goal name="VC wmpn_mul.105.0.4" expl="precondition" proved="true">
-    <proof prover="1" timelimit="1"><result status="valid" time="0.91"/></proof>
+    <proof prover="1" timelimit="1"><result status="valid" time="1.64"/></proof>
     </goal>
     <goal name="VC wmpn_mul.105.0.5" expl="precondition" proved="true">
     <transf name="assert" proved="true" arg1="(plength rpn = plength r)">
@@ -8756,7 +8757,7 @@
      <proof prover="0"><result status="valid" time="0.04"/></proof>
      </goal>
      <goal name="VC wmpn_mul.105.0.5.1" expl="precondition" proved="true">
-     <proof prover="1" timelimit="1"><result status="valid" time="0.23"/></proof>
+     <proof prover="1" timelimit="1"><result status="valid" time="0.50"/></proof>
      </goal>
     </transf>
     </goal>
@@ -8771,30 +8772,27 @@
   <proof prover="1" timelimit="1"><result status="valid" time="0.08"/></proof>
   </goal>
   <goal name="VC wmpn_mul.108" expl="precondition" proved="true">
-  <transf name="assert" proved="true" arg1="(offset r + p2i or &lt;= offset rpn)">
-   <goal name="VC wmpn_mul.108.0" proved="true">
-   <proof prover="1" memlimit="2000"><result status="valid" time="0.10"/></proof>
-   </goal>
-   <goal name="VC wmpn_mul.108.1" expl="precondition" proved="true">
+  <transf name="inline_goal" proved="true" >
+   <goal name="VC wmpn_mul.108.0" expl="precondition" proved="true">
    <transf name="assert" proved="true" arg1="(pelts r = pelts rpn)">
-    <goal name="VC wmpn_mul.108.1.0" proved="true">
+    <goal name="VC wmpn_mul.108.0.0" proved="true">
     <proof prover="0"><result status="valid" time="0.02"/></proof>
     </goal>
-    <goal name="VC wmpn_mul.108.1.1" expl="precondition" proved="true">
-    <proof prover="1" memlimit="2000"><result status="valid" time="1.38"/></proof>
+    <goal name="VC wmpn_mul.108.0.1" expl="precondition" proved="true">
+    <proof prover="1" timelimit="1"><result status="valid" time="0.30"/></proof>
     </goal>
    </transf>
    </goal>
   </transf>
   </goal>
   <goal name="VC wmpn_mul.109" expl="assertion" proved="true">
-  <proof prover="0"><result status="valid" time="0.05"/></proof>
+  <proof prover="0"><result status="valid" time="0.03"/></proof>
   </goal>
   <goal name="VC wmpn_mul.110" expl="integer overflow" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.24"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.26"/></proof>
   </goal>
   <goal name="VC wmpn_mul.111" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.09"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.18"/></proof>
   </goal>
   <goal name="VC wmpn_mul.112" expl="assertion" proved="true">
   <transf name="split_vc" proved="true" >
@@ -8818,7 +8816,7 @@
     </transf>
     </goal>
     <goal name="VC wmpn_mul.112.0.1" expl="assertion" proved="true">
-    <proof prover="4"><result status="valid" time="0.35"/></proof>
+    <proof prover="4"><result status="valid" time="0.72"/></proof>
     </goal>
    </transf>
    </goal>
@@ -8835,7 +8833,7 @@
    <proof prover="1" timelimit="1"><result status="valid" time="0.05"/></proof>
    </goal>
    <goal name="VC wmpn_mul.112.5" expl="VC for wmpn_mul" proved="true">
-   <proof prover="1" timelimit="1"><result status="valid" time="0.10"/></proof>
+   <proof prover="1" timelimit="1"><result status="valid" time="0.22"/></proof>
    </goal>
   </transf>
   </goal>
@@ -8843,16 +8841,23 @@
   <proof prover="1" timelimit="1"><result status="valid" time="0.40"/></proof>
   </goal>
   <goal name="VC wmpn_mul.114" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="1.19"/></proof>
+  <transf name="split_vc" proved="true" >
+   <goal name="VC wmpn_mul.114.0" expl="precondition" proved="true">
+   <proof prover="1" timelimit="1"><result status="valid" time="0.39"/></proof>
+   </goal>
+   <goal name="VC wmpn_mul.114.1" expl="precondition" proved="true">
+   <proof prover="1" memlimit="2000"><result status="valid" time="1.60"/></proof>
+   </goal>
+  </transf>
   </goal>
   <goal name="VC wmpn_mul.115" expl="integer overflow" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.19"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.36"/></proof>
   </goal>
   <goal name="VC wmpn_mul.116" expl="integer overflow" proved="true">
   <proof prover="1" timelimit="1"><result status="valid" time="0.31"/></proof>
   </goal>
   <goal name="VC wmpn_mul.117" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.39"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.59"/></proof>
   </goal>
   <goal name="VC wmpn_mul.118" expl="loop variant decrease" proved="true">
   <proof prover="1" timelimit="1"><result status="valid" time="0.16"/></proof>
@@ -8864,10 +8869,10 @@
   <proof prover="1" timelimit="1"><result status="valid" time="0.18"/></proof>
   </goal>
   <goal name="VC wmpn_mul.121" expl="loop invariant preservation" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.11"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.23"/></proof>
   </goal>
   <goal name="VC wmpn_mul.122" expl="loop invariant preservation" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.90"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="1.78"/></proof>
   </goal>
   <goal name="VC wmpn_mul.123" expl="loop invariant preservation" proved="true">
   <proof prover="1" timelimit="1"><result status="valid" time="0.11"/></proof>
@@ -8919,7 +8924,7 @@
   </goal>
   <goal name="VC wmpn_mul.139" expl="assertion" proved="true">
   <proof prover="0"><result status="valid" time="0.07"/></proof>
-  <proof prover="5" timelimit="1"><result status="valid" time="0.36" steps="177"/></proof>
+  <proof prover="5" timelimit="1"><result status="valid" time="0.60" steps="176"/></proof>
   </goal>
   <goal name="VC wmpn_mul.140" expl="integer overflow" proved="true">
   <proof prover="1" timelimit="1"><result status="valid" time="0.09"/></proof>
@@ -8931,13 +8936,13 @@
   <proof prover="1" timelimit="1"><result status="valid" time="0.08"/></proof>
   </goal>
   <goal name="VC wmpn_mul.143" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.36"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.52"/></proof>
   </goal>
   <goal name="VC wmpn_mul.144" expl="precondition" proved="true">
   <proof prover="1" timelimit="1"><result status="valid" time="0.07"/></proof>
   </goal>
   <goal name="VC wmpn_mul.145" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.30"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.64"/></proof>
   </goal>
   <goal name="VC wmpn_mul.146" expl="precondition" proved="true">
   <proof prover="1" timelimit="1"><result status="valid" time="0.05"/></proof>
@@ -8949,7 +8954,7 @@
   <proof prover="1" timelimit="1"><result status="valid" time="0.09"/></proof>
   </goal>
   <goal name="VC wmpn_mul.149" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.34"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.66"/></proof>
   </goal>
   <goal name="VC wmpn_mul.150" expl="precondition" proved="true">
   <proof prover="1" timelimit="1"><result status="valid" time="0.11"/></proof>
@@ -8976,13 +8981,13 @@
   <proof prover="1" timelimit="1"><result status="valid" time="0.07"/></proof>
   </goal>
   <goal name="VC wmpn_mul.158" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.27"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.60"/></proof>
   </goal>
   <goal name="VC wmpn_mul.159" expl="precondition" proved="true">
   <proof prover="1" timelimit="1"><result status="valid" time="0.06"/></proof>
   </goal>
   <goal name="VC wmpn_mul.160" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.31"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.58"/></proof>
   </goal>
   <goal name="VC wmpn_mul.161" expl="precondition" proved="true">
   <proof prover="1" timelimit="1"><result status="valid" time="0.08"/></proof>
@@ -8994,7 +8999,7 @@
   <proof prover="1" timelimit="1"><result status="valid" time="0.10"/></proof>
   </goal>
   <goal name="VC wmpn_mul.164" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.43"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.58"/></proof>
   </goal>
   <goal name="VC wmpn_mul.165" expl="precondition" proved="true">
   <proof prover="1" timelimit="1"><result status="valid" time="0.13"/></proof>
@@ -9024,7 +9029,7 @@
   <proof prover="1" timelimit="1"><result status="valid" time="0.06"/></proof>
   </goal>
   <goal name="VC wmpn_mul.174" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.30"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.56"/></proof>
   </goal>
   <goal name="VC wmpn_mul.175" expl="precondition" proved="true">
   <proof prover="1" timelimit="1"><result status="valid" time="0.46"/></proof>
@@ -9063,52 +9068,49 @@
   <proof prover="1" timelimit="1"><result status="valid" time="0.20"/></proof>
   </goal>
   <goal name="VC wmpn_mul.187" expl="precondition" proved="true">
-  <transf name="inline_goal" proved="true" >
-   <goal name="VC wmpn_mul.187.0" expl="precondition" proved="true">
-   <proof prover="0"><result status="valid" time="0.04"/></proof>
-   </goal>
-  </transf>
+  <proof prover="5" memlimit="2000"><result status="valid" time="1.90" steps="235"/></proof>
   </goal>
   <goal name="VC wmpn_mul.188" expl="assertion" proved="true">
-  <proof prover="0"><result status="valid" time="0.02"/></proof>
+  <proof prover="5" memlimit="2000"><result status="valid" time="1.48" steps="210"/></proof>
   </goal>
   <goal name="VC wmpn_mul.189" expl="assertion" proved="true">
   <proof prover="1" timelimit="1"><result status="valid" time="0.16"/></proof>
   </goal>
   <goal name="VC wmpn_mul.190" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.10"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.09"/></proof>
   </goal>
   <goal name="VC wmpn_mul.191" expl="precondition" proved="true">
   <proof prover="1" timelimit="1"><result status="valid" time="0.10"/></proof>
   </goal>
   <goal name="VC wmpn_mul.192" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.44"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.93"/></proof>
   </goal>
   <goal name="VC wmpn_mul.193" expl="precondition" proved="true">
-  <proof prover="5" timelimit="1"><result status="valid" time="0.98" steps="251"/></proof>
+  <proof prover="5" timelimit="1"><result status="valid" time="1.98" steps="250"/></proof>
   </goal>
   <goal name="VC wmpn_mul.194" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.15"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.05"/></proof>
+  <proof prover="5" memlimit="2000"><result status="valid" time="1.81" steps="195"/></proof>
   </goal>
   <goal name="VC wmpn_mul.195" expl="precondition" proved="true">
   <transf name="inline_goal" proved="true" >
    <goal name="VC wmpn_mul.195.0" expl="precondition" proved="true">
    <transf name="assert" proved="true" arg1="(pelts r = pelts rpn)">
     <goal name="VC wmpn_mul.195.0.0" proved="true">
-    <proof prover="0"><result status="valid" time="0.03"/></proof>
+    <proof prover="0"><result status="valid" time="0.04"/></proof>
     </goal>
     <goal name="VC wmpn_mul.195.0.1" expl="precondition" proved="true">
-    <proof prover="1" timelimit="1"><result status="valid" time="0.20"/></proof>
+    <proof prover="1" timelimit="1"><result status="valid" time="0.32"/></proof>
     </goal>
    </transf>
    </goal>
   </transf>
   </goal>
   <goal name="VC wmpn_mul.196" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.47"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.78"/></proof>
   </goal>
   <goal name="VC wmpn_mul.197" expl="assertion" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.19"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.33"/></proof>
   </goal>
   <goal name="VC wmpn_mul.198" expl="assertion" proved="true">
   <proof prover="0"><result status="valid" time="0.03"/></proof>
@@ -9126,7 +9128,7 @@
   <proof prover="0"><result status="valid" time="0.02"/></proof>
   </goal>
   <goal name="VC wmpn_mul.203" expl="integer overflow" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.20"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.37"/></proof>
   </goal>
   <goal name="VC wmpn_mul.204" expl="precondition" proved="true">
   <proof prover="1" timelimit="1"><result status="valid" time="0.17"/></proof>
@@ -9173,7 +9175,7 @@
   <goal name="VC wmpn_mul.211" expl="assertion" proved="true">
   <transf name="split_vc" proved="true" >
    <goal name="VC wmpn_mul.211.0" expl="assertion" proved="true">
-   <proof prover="0"><result status="valid" time="0.46"/></proof>
+   <proof prover="0"><result status="valid" time="0.70"/></proof>
    </goal>
    <goal name="VC wmpn_mul.211.1" expl="assertion" proved="true">
    <transf name="assert" proved="true" arg1="(value rp sr = value rp sy + power radix sy * value wsy un)">
@@ -9181,7 +9183,7 @@
     <proof prover="0"><result status="valid" time="0.03"/></proof>
     </goal>
     <goal name="VC wmpn_mul.211.1.1" expl="assertion" proved="true">
-    <proof prover="4"><result status="valid" time="0.19"/></proof>
+    <proof prover="4"><result status="valid" time="0.38"/></proof>
     </goal>
    </transf>
    </goal>
@@ -9246,20 +9248,20 @@
    <goal name="VC wmpn_mul.215.0" expl="assertion" proved="true">
    <transf name="unfold" proved="true" arg1="value">
     <goal name="VC wmpn_mul.215.0.0" expl="assertion" proved="true">
-    <proof prover="1" timelimit="1"><result status="valid" time="0.23"/></proof>
+    <proof prover="1" timelimit="1"><result status="valid" time="0.50"/></proof>
     </goal>
    </transf>
    </goal>
    <goal name="VC wmpn_mul.215.1" expl="VC for wmpn_mul" proved="true">
-   <proof prover="1" timelimit="1"><result status="valid" time="0.90"/></proof>
+   <proof prover="1" timelimit="1"><result status="valid" time="1.68"/></proof>
    </goal>
    <goal name="VC wmpn_mul.215.2" expl="VC for wmpn_mul" proved="true">
    <transf name="apply" proved="true" arg1="prod_compat_strict_lr">
     <goal name="VC wmpn_mul.215.2.0" proved="true">
-    <proof prover="1" timelimit="1"><result status="valid" time="0.92"/></proof>
+    <proof prover="1" timelimit="1"><result status="valid" time="1.70"/></proof>
     </goal>
     <goal name="VC wmpn_mul.215.2.1" proved="true">
-    <proof prover="1" timelimit="1"><result status="valid" time="0.78"/></proof>
+    <proof prover="1" timelimit="1"><result status="valid" time="1.72"/></proof>
     </goal>
    </transf>
    </goal>
@@ -9267,7 +9269,7 @@
    <proof prover="3" timelimit="1"><result status="valid" time="0.10"/></proof>
    </goal>
    <goal name="VC wmpn_mul.215.4" expl="VC for wmpn_mul" proved="true">
-   <proof prover="1" timelimit="1"><result status="valid" time="0.18"/></proof>
+   <proof prover="1" timelimit="1"><result status="valid" time="0.34"/></proof>
    </goal>
    <goal name="VC wmpn_mul.215.5" expl="VC for wmpn_mul" proved="true">
    <proof prover="1" timelimit="1"><result status="valid" time="0.06"/></proof>
@@ -9285,10 +9287,10 @@
    <proof prover="1" timelimit="1"><result status="valid" time="0.19"/></proof>
    </goal>
    <goal name="VC wmpn_mul.215.10" expl="VC for wmpn_mul" proved="true">
-   <proof prover="3" timelimit="1"><result status="valid" time="0.12"/></proof>
+   <proof prover="3" timelimit="1"><result status="valid" time="0.25"/></proof>
    </goal>
    <goal name="VC wmpn_mul.215.11" expl="VC for wmpn_mul" proved="true">
-   <proof prover="4"><result status="valid" time="0.22"/></proof>
+   <proof prover="4"><result status="valid" time="0.52"/></proof>
    </goal>
   </transf>
   </goal>
@@ -9297,16 +9299,16 @@
    <goal name="VC wmpn_mul.216.0" expl="precondition" proved="true">
    <transf name="split_vc" proved="true" >
     <goal name="VC wmpn_mul.216.0.0" expl="precondition" proved="true">
-    <proof prover="1" timelimit="1"><result status="valid" time="0.28"/></proof>
+    <proof prover="1" timelimit="1"><result status="valid" time="0.45"/></proof>
     </goal>
     <goal name="VC wmpn_mul.216.0.1" expl="precondition" proved="true">
     <proof prover="1" timelimit="1"><result status="valid" time="0.17"/></proof>
     </goal>
     <goal name="VC wmpn_mul.216.0.2" expl="precondition" proved="true">
-    <proof prover="1" timelimit="1"><result status="valid" time="0.22"/></proof>
+    <proof prover="1" timelimit="1"><result status="valid" time="0.48"/></proof>
     </goal>
     <goal name="VC wmpn_mul.216.0.3" expl="precondition" proved="true">
-    <proof prover="1" timelimit="1"><result status="valid" time="0.08"/></proof>
+    <proof prover="1" timelimit="1"><result status="valid" time="0.20"/></proof>
     </goal>
     <goal name="VC wmpn_mul.216.0.4" expl="precondition" proved="true">
     <proof prover="1" timelimit="1"><result status="valid" time="0.10"/></proof>
@@ -9314,7 +9316,7 @@
     <goal name="VC wmpn_mul.216.0.5" expl="precondition" proved="true">
     <transf name="replace" proved="true" arg1="(plength rpn)" arg2="(plength r)">
      <goal name="VC wmpn_mul.216.0.5.0" expl="precondition" proved="true">
-     <proof prover="1" timelimit="1"><result status="valid" time="0.24"/></proof>
+     <proof prover="1" timelimit="1"><result status="valid" time="0.48"/></proof>
      </goal>
      <goal name="VC wmpn_mul.216.0.5.1" proved="true">
      <proof prover="0"><result status="valid" time="0.03"/></proof>
@@ -9334,25 +9336,25 @@
   <goal name="VC wmpn_mul.219" expl="precondition" proved="true">
   <transf name="inline_goal" proved="true" >
    <goal name="VC wmpn_mul.219.0" expl="precondition" proved="true">
-   <transf name="assert" proved="true" arg1="(offset r + or = offset rpn)">
+   <transf name="assert" proved="true" arg1="(pelts r = pelts rpn)">
     <goal name="VC wmpn_mul.219.0.0" proved="true">
-    <proof prover="1" timelimit="1"><result status="valid" time="0.14"/></proof>
+    <proof prover="0"><result status="valid" time="0.02"/></proof>
     </goal>
     <goal name="VC wmpn_mul.219.0.1" expl="precondition" proved="true">
-    <proof prover="0"><result status="valid" time="0.05"/></proof>
+    <proof prover="1" timelimit="1"><result status="valid" time="0.32"/></proof>
     </goal>
    </transf>
    </goal>
   </transf>
   </goal>
   <goal name="VC wmpn_mul.220" expl="assertion" proved="true">
-  <proof prover="0"><result status="valid" time="0.03"/></proof>
+  <proof prover="0"><result status="valid" time="0.05"/></proof>
   </goal>
   <goal name="VC wmpn_mul.221" expl="integer overflow" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.26"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.24"/></proof>
   </goal>
   <goal name="VC wmpn_mul.222" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.18"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.21"/></proof>
   </goal>
   <goal name="VC wmpn_mul.223" expl="assertion" proved="true">
   <transf name="split_vc" proved="true" >
@@ -9393,7 +9395,7 @@
    <proof prover="1" timelimit="1"><result status="valid" time="0.05"/></proof>
    </goal>
    <goal name="VC wmpn_mul.223.5" expl="VC for wmpn_mul" proved="true">
-   <proof prover="1" timelimit="1"><result status="valid" time="0.09"/></proof>
+   <proof prover="1" timelimit="1"><result status="valid" time="0.22"/></proof>
    </goal>
   </transf>
   </goal>
@@ -9426,7 +9428,7 @@
   <proof prover="1" timelimit="1"><result status="valid" time="0.05"/></proof>
   </goal>
   <goal name="VC wmpn_mul.230" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.09"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.21"/></proof>
   </goal>
   <goal name="VC wmpn_mul.231" expl="precondition" proved="true">
   <proof prover="1" timelimit="1"><result status="valid" time="0.17"/></proof>
@@ -9435,23 +9437,22 @@
   <proof prover="1" timelimit="1"><result status="valid" time="0.13"/></proof>
   </goal>
   <goal name="VC wmpn_mul.233" expl="precondition" proved="true">
-  <proof prover="1" memlimit="2000"><result status="valid" time="1.80"/></proof>
   <transf name="inline_goal" proved="true" >
    <goal name="VC wmpn_mul.233.0" expl="precondition" proved="true">
-   <proof prover="1" timelimit="1"><result status="valid" time="0.34"/></proof>
+   <proof prover="1" timelimit="1"><result status="valid" time="0.28"/></proof>
    </goal>
   </transf>
   </goal>
   <goal name="VC wmpn_mul.234" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.17"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.21"/></proof>
   </goal>
   <goal name="VC wmpn_mul.235" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.17"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.21"/></proof>
   </goal>
   <goal name="VC wmpn_mul.236" expl="precondition" proved="true">
   <transf name="inline_goal" proved="true" >
    <goal name="VC wmpn_mul.236.0" expl="precondition" proved="true">
-   <proof prover="1" timelimit="1"><result status="valid" time="0.38"/></proof>
+   <proof prover="1" timelimit="1"><result status="valid" time="0.30"/></proof>
    </goal>
   </transf>
   </goal>
@@ -9461,7 +9462,7 @@
    <proof prover="0"><result status="valid" time="0.11"/></proof>
    </goal>
    <goal name="VC wmpn_mul.237.1" expl="assertion" proved="true">
-   <proof prover="0"><result status="valid" time="0.11"/></proof>
+   <proof prover="0"><result status="valid" time="0.09"/></proof>
    </goal>
    <goal name="VC wmpn_mul.237.2" expl="VC for wmpn_mul" proved="true">
    <proof prover="1" timelimit="1"><result status="valid" time="0.10"/></proof>
@@ -9469,19 +9470,19 @@
   </transf>
   </goal>
   <goal name="VC wmpn_mul.238" expl="postcondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.20"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.10"/></proof>
   </goal>
   <goal name="VC wmpn_mul.239" expl="postcondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.13"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.22"/></proof>
   </goal>
   <goal name="VC wmpn_mul.240" expl="postcondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.22"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.38"/></proof>
   </goal>
   <goal name="VC wmpn_mul.241" expl="postcondition" proved="true">
   <proof prover="1" timelimit="1"><result status="valid" time="0.07"/></proof>
   </goal>
   <goal name="VC wmpn_mul.242" expl="postcondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.44"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.61"/></proof>
   </goal>
   <goal name="VC wmpn_mul.243" expl="exceptional postcondition" proved="true">
   <proof prover="1" timelimit="1"><result status="valid" time="0.04"/></proof>
@@ -9544,7 +9545,11 @@
   <proof prover="1" timelimit="1"><result status="valid" time="0.08"/></proof>
   </goal>
   <goal name="VC wmpn_mul.263" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.26"/></proof>
+  <transf name="inline_goal" proved="true" >
+   <goal name="VC wmpn_mul.263.0" expl="precondition" proved="true">
+   <proof prover="1" timelimit="1"><result status="valid" time="0.12"/></proof>
+   </goal>
+  </transf>
   </goal>
   <goal name="VC wmpn_mul.264" expl="precondition" proved="true">
   <proof prover="1" timelimit="1"><result status="valid" time="0.12"/></proof>
@@ -9553,22 +9558,32 @@
   <proof prover="1" timelimit="1"><result status="valid" time="0.11"/></proof>
   </goal>
   <goal name="VC wmpn_mul.266" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.22"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.44"/></proof>
   </goal>
   <goal name="VC wmpn_mul.267" expl="assertion" proved="true">
-  <proof prover="5" timelimit="1"><result status="valid" time="0.11" steps="137"/></proof>
+  <transf name="split_vc" proved="true" >
+   <goal name="VC wmpn_mul.267.0" expl="assertion" proved="true">
+   <proof prover="0"><result status="valid" time="0.11"/></proof>
+   </goal>
+   <goal name="VC wmpn_mul.267.1" expl="assertion" proved="true">
+   <proof prover="0"><result status="valid" time="0.11"/></proof>
+   </goal>
+   <goal name="VC wmpn_mul.267.2" expl="VC for wmpn_mul" proved="true">
+   <proof prover="1" timelimit="1"><result status="valid" time="0.10"/></proof>
+   </goal>
+  </transf>
   </goal>
   <goal name="VC wmpn_mul.268" expl="postcondition" proved="true">
   <proof prover="1" timelimit="1"><result status="valid" time="0.10"/></proof>
   </goal>
   <goal name="VC wmpn_mul.269" expl="postcondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.10"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.06"/></proof>
   </goal>
   <goal name="VC wmpn_mul.270" expl="postcondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.07"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.13"/></proof>
   </goal>
   <goal name="VC wmpn_mul.271" expl="postcondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.09"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.05"/></proof>
   </goal>
   <goal name="VC wmpn_mul.272" expl="postcondition" proved="true">
   <proof prover="1" timelimit="1"><result status="valid" time="0.17"/></proof>
@@ -9625,34 +9640,38 @@
   <proof prover="1" timelimit="1"><result status="valid" time="0.07"/></proof>
   </goal>
   <goal name="VC wmpn_mul.290" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.16"/></proof>
+  <transf name="inline_goal" proved="true" >
+   <goal name="VC wmpn_mul.290.0" expl="precondition" proved="true">
+   <proof prover="1" timelimit="1"><result status="valid" time="0.12"/></proof>
+   </goal>
+  </transf>
   </goal>
   <goal name="VC wmpn_mul.291" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.07"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.17"/></proof>
   </goal>
   <goal name="VC wmpn_mul.292" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.07"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.17"/></proof>
   </goal>
   <goal name="VC wmpn_mul.293" expl="precondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.24"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.47"/></proof>
   </goal>
   <goal name="VC wmpn_mul.294" expl="assertion" proved="true">
   <proof prover="5" timelimit="1"><result status="valid" time="0.11" steps="137"/></proof>
   </goal>
   <goal name="VC wmpn_mul.295" expl="postcondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.10"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.20"/></proof>
   </goal>
   <goal name="VC wmpn_mul.296" expl="postcondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.06"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.13"/></proof>
   </goal>
   <goal name="VC wmpn_mul.297" expl="postcondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.13"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.22"/></proof>
   </goal>
   <goal name="VC wmpn_mul.298" expl="postcondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.05"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.09"/></proof>
   </goal>
   <goal name="VC wmpn_mul.299" expl="postcondition" proved="true">
-  <proof prover="1" timelimit="1"><result status="valid" time="0.15"/></proof>
+  <proof prover="1" timelimit="1"><result status="valid" time="0.28"/></proof>
   </goal>
   <goal name="VC wmpn_mul.300" expl="exceptional postcondition" proved="true">
   <proof prover="1" timelimit="1"><result status="valid" time="0.06"/></proof>
diff --git a/examples/multiprecision/toom/why3shapes.gz b/examples/multiprecision/toom/why3shapes.gz
index a3bf751cf8b0da94771fda752588c70f4695d4ac..3c16665ce5bde20e3ebceba89f53d13cc4c09ce1 100644
Binary files a/examples/multiprecision/toom/why3shapes.gz and b/examples/multiprecision/toom/why3shapes.gz differ
diff --git a/examples/multiprecision/valuation/why3session.xml b/examples/multiprecision/valuation/why3session.xml
index ce28f24bf6cbb5f192dabee57249520d30b5529d..bc4da614c8745904f83004ea846fa84cd3c03e9b 100644
--- a/examples/multiprecision/valuation/why3session.xml
+++ b/examples/multiprecision/valuation/why3session.xml
@@ -4,7 +4,7 @@
 <why3session shape_version="5">
 <prover id="0" name="Eprover" version="1.9.1-001" timelimit="5" steplimit="0" memlimit="2000"/>
 <prover id="1" name="CVC3" version="2.4.1" timelimit="5" steplimit="0" memlimit="2000"/>
-<prover id="2" name="CVC4" version="1.5" timelimit="5" steplimit="0" memlimit="1000"/>
+<prover id="2" name="CVC4" version="1.5" timelimit="1" steplimit="0" memlimit="1000"/>
 <prover id="4" name="Z3" version="4.5.0" timelimit="5" steplimit="0" memlimit="1000"/>
 <prover id="5" name="Alt-Ergo" version="2.0.0" timelimit="5" steplimit="0" memlimit="1000"/>
 <file name="../valuation.mlw" proved="true">
@@ -43,7 +43,7 @@
   <goal name="VC valuation.6" expl="postcondition" proved="true">
   <transf name="split_vc" proved="true" >
    <goal name="VC valuation.6.0" expl="postcondition" proved="true">
-   <proof prover="0"><result status="valid" time="1.78"/></proof>
+   <proof prover="0"><result status="valid" time="1.22"/></proof>
    </goal>
    <goal name="VC valuation.6.1" expl="postcondition" proved="true">
    <proof prover="4"><result status="valid" time="0.02"/></proof>
@@ -67,7 +67,7 @@
  </transf>
  </goal>
  <goal name="power_ge_1" proved="true">
- <proof prover="2"><result status="valid" time="0.05"/></proof>
+ <proof prover="2" timelimit="5"><result status="valid" time="0.05"/></proof>
  <transf name="introduce_premises" proved="true" >
   <goal name="power_ge_1.0" proved="true">
   <transf name="induction" proved="true" arg1="e">
@@ -141,43 +141,43 @@
  </transf>
  </goal>
  <goal name="VC valuation_monotonous" expl="VC for valuation_monotonous" proved="true">
- <transf name="split_vc" proved="true" >
+ <transf name="split_goal_right" proved="true" >
   <goal name="VC valuation_monotonous.0" expl="precondition" proved="true">
-  <proof prover="4"><result status="valid" time="0.01"/></proof>
+  <proof prover="2"><result status="valid" time="0.04"/></proof>
   </goal>
   <goal name="VC valuation_monotonous.1" expl="precondition" proved="true">
-  <proof prover="4"><result status="valid" time="0.02"/></proof>
+  <proof prover="2"><result status="valid" time="0.04"/></proof>
   </goal>
   <goal name="VC valuation_monotonous.2" expl="assertion" proved="true">
-  <proof prover="4"><result status="valid" time="0.02"/></proof>
+  <proof prover="2"><result status="valid" time="0.10"/></proof>
   </goal>
   <goal name="VC valuation_monotonous.3" expl="variant decrease" proved="true">
-  <proof prover="4"><result status="valid" time="0.04"/></proof>
+  <proof prover="2"><result status="valid" time="0.05"/></proof>
   </goal>
   <goal name="VC valuation_monotonous.4" expl="precondition" proved="true">
-  <proof prover="4"><result status="valid" time="0.01"/></proof>
+  <proof prover="4" timelimit="1"><result status="valid" time="0.02"/></proof>
   </goal>
   <goal name="VC valuation_monotonous.5" expl="assertion" proved="true">
-  <proof prover="4"><result status="valid" time="0.02"/></proof>
+  <proof prover="2"><result status="valid" time="0.05"/></proof>
   </goal>
   <goal name="VC valuation_monotonous.6" expl="assertion" proved="true">
-  <transf name="split_vc" proved="true" >
-   <goal name="VC valuation_monotonous.6.0" expl="assertion" proved="true">
-   <proof prover="5"><result status="valid" time="0.01" steps="11"/></proof>
+  <transf name="split_goal_right" proved="true" >
+   <goal name="VC valuation_monotonous.6.0" expl="VC for valuation_monotonous" proved="true">
+   <proof prover="5" timelimit="1"><result status="valid" time="0.01" steps="11"/></proof>
    </goal>
    <goal name="VC valuation_monotonous.6.1" expl="VC for valuation_monotonous" proved="true">
-   <proof prover="4"><result status="valid" time="0.02"/></proof>
+   <proof prover="2"><result status="valid" time="0.04"/></proof>
    </goal>
    <goal name="VC valuation_monotonous.6.2" expl="VC for valuation_monotonous" proved="true">
-   <proof prover="5"><result status="valid" time="0.12" steps="111"/></proof>
+   <proof prover="5" timelimit="1"><result status="valid" time="0.10" steps="111"/></proof>
    </goal>
    <goal name="VC valuation_monotonous.6.3" expl="VC for valuation_monotonous" proved="true">
-   <proof prover="4"><result status="valid" time="0.01"/></proof>
+   <proof prover="2"><result status="valid" time="0.04"/></proof>
    </goal>
   </transf>
   </goal>
   <goal name="VC valuation_monotonous.7" expl="postcondition" proved="true">
-  <proof prover="5"><result status="valid" time="0.01" steps="24"/></proof>
+  <proof prover="5" timelimit="1"><result status="valid" time="0.01" steps="24"/></proof>
   </goal>
  </transf>
  </goal>
@@ -190,10 +190,10 @@
  <goal name="VC valuation_times_nondiv" expl="VC for valuation_times_nondiv" proved="true">
  <transf name="split_vc" proved="true" >
   <goal name="VC valuation_times_nondiv.0" expl="precondition" proved="true">
-  <proof prover="4"><result status="valid" time="0.03"/></proof>
+  <proof prover="4"><result status="valid" time="0.02"/></proof>
   </goal>
   <goal name="VC valuation_times_nondiv.1" expl="precondition" proved="true">
-  <proof prover="4"><result status="valid" time="0.02"/></proof>
+  <proof prover="4"><result status="valid" time="0.03"/></proof>
   </goal>
   <goal name="VC valuation_times_nondiv.2" expl="variant decrease" proved="true">
   <proof prover="4"><result status="valid" time="0.04"/></proof>
diff --git a/examples/multiprecision/valuation/why3shapes.gz b/examples/multiprecision/valuation/why3shapes.gz
index f1144b920d5e09a282aa27cdcf24e6401479923d..eaed41b3812c9e85c8609763d4b3375f2c6e08f6 100644
Binary files a/examples/multiprecision/valuation/why3shapes.gz and b/examples/multiprecision/valuation/why3shapes.gz differ