mirror of
https://github.com/AdaCore/why3.git
synced 2026-02-12 12:34:55 -08:00
643 lines
32 KiB
XML
643 lines
32 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<!DOCTYPE why3session PUBLIC "-//Why3//proof session v5//EN"
|
|
"https://www.why3.org/why3session.dtd">
|
|
<why3session shape_version="6">
|
|
<prover id="0" name="CVC4" version="1.5" timelimit="5" steplimit="0" memlimit="1000"/>
|
|
<prover id="1" name="Alt-Ergo" version="2.0.0" timelimit="5" steplimit="0" memlimit="1000"/>
|
|
<prover id="2" name="CVC4" version="1.4" timelimit="5" steplimit="0" memlimit="1000"/>
|
|
<prover id="3" name="Coq" version="8.19.2" timelimit="5" 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.6.0" timelimit="5" steplimit="0" memlimit="1000"/>
|
|
<file format="whyml" proved="true">
|
|
<path name=".."/><path name="heapsort.mlw"/>
|
|
<theory name="HeapSort" proved="true">
|
|
<goal name="min_of_sorted'vc" expl="VC for min_of_sorted" proved="true">
|
|
<transf name="split_goal_right" proved="true" >
|
|
<goal name="min_of_sorted'vc.0" expl="variant decrease" proved="true">
|
|
<proof prover="0"><result status="valid" time="0.030000" steps="10113"/></proof>
|
|
</goal>
|
|
<goal name="min_of_sorted'vc.1" expl="precondition" proved="true">
|
|
<proof prover="0"><result status="valid" time="0.020000" steps="10085"/></proof>
|
|
</goal>
|
|
<goal name="min_of_sorted'vc.2" expl="precondition" proved="true">
|
|
<proof prover="0"><result status="valid" time="0.040000" steps="11002"/></proof>
|
|
</goal>
|
|
<goal name="min_of_sorted'vc.3" expl="postcondition" proved="true">
|
|
<proof prover="0"><result status="valid" time="0.100000" steps="22559"/></proof>
|
|
</goal>
|
|
</transf>
|
|
</goal>
|
|
<goal name="heapSort'vc" expl="VC for heapSort" proved="true">
|
|
<transf name="split_goal_right" proved="true" >
|
|
<goal name="heapSort'vc.0" expl="precondition" proved="true">
|
|
<proof prover="0"><result status="valid" time="0.010000" steps="7917"/></proof>
|
|
</goal>
|
|
<goal name="heapSort'vc.1" expl="loop invariant init" proved="true">
|
|
<proof prover="0"><result status="valid" time="0.030000" steps="11820"/></proof>
|
|
</goal>
|
|
<goal name="heapSort'vc.2" expl="index in array bounds" proved="true">
|
|
<proof prover="0"><result status="valid" time="0.030000" steps="11454"/></proof>
|
|
</goal>
|
|
<goal name="heapSort'vc.3" expl="loop invariant preservation" proved="true">
|
|
<transf name="split_goal_right" proved="true" >
|
|
<goal name="heapSort'vc.3.0" expl="VC for heapSort" proved="true">
|
|
<proof prover="0"><result status="valid" time="0.020000" steps="11954"/></proof>
|
|
</goal>
|
|
<goal name="heapSort'vc.3.1" expl="VC for heapSort" proved="true">
|
|
<proof prover="0"><result status="valid" time="0.020000" steps="11159"/></proof>
|
|
</goal>
|
|
<goal name="heapSort'vc.3.2" expl="VC for heapSort" proved="true">
|
|
<proof prover="5" timelimit="1"><result status="valid" time="0.010000" steps="32"/></proof>
|
|
</goal>
|
|
<goal name="heapSort'vc.3.3" expl="VC for heapSort" proved="true">
|
|
<proof prover="0"><result status="valid" time="0.060000" steps="13165"/></proof>
|
|
</goal>
|
|
</transf>
|
|
</goal>
|
|
<goal name="heapSort'vc.4" expl="loop invariant init" proved="true">
|
|
<proof prover="0"><result status="valid" time="0.060000" steps="14746"/></proof>
|
|
</goal>
|
|
<goal name="heapSort'vc.5" expl="precondition" proved="true">
|
|
<proof prover="0"><result status="valid" time="0.020000" steps="12463"/></proof>
|
|
</goal>
|
|
<goal name="heapSort'vc.6" expl="index in array bounds" proved="true">
|
|
<proof prover="0"><result status="valid" time="0.010000" steps="13060"/></proof>
|
|
</goal>
|
|
<goal name="heapSort'vc.7" expl="assertion" proved="true">
|
|
<proof prover="5" timelimit="1"><result status="valid" time="0.030000" steps="473"/></proof>
|
|
</goal>
|
|
<goal name="heapSort'vc.8" expl="loop invariant preservation" proved="true">
|
|
<transf name="split_goal_right" proved="true" >
|
|
<goal name="heapSort'vc.8.0" expl="VC for heapSort" proved="true">
|
|
<proof prover="0"><result status="valid" time="0.020000" steps="13561"/></proof>
|
|
</goal>
|
|
<goal name="heapSort'vc.8.1" expl="VC for heapSort" proved="true">
|
|
<proof prover="0"><result status="valid" time="0.020000" steps="11935"/></proof>
|
|
</goal>
|
|
<goal name="heapSort'vc.8.2" expl="VC for heapSort" proved="true">
|
|
<proof prover="0"><result status="valid" time="0.020000" steps="12367"/></proof>
|
|
</goal>
|
|
<goal name="heapSort'vc.8.3" expl="VC for heapSort" proved="true">
|
|
<proof prover="0"><result status="valid" time="0.110000" steps="22513"/></proof>
|
|
</goal>
|
|
<goal name="heapSort'vc.8.4" expl="VC for heapSort" proved="true">
|
|
<proof prover="1"><result status="valid" time="0.029128" steps="78"/></proof>
|
|
<proof prover="5"><result status="timeout" time="5.000000" steps="79467"/></proof>
|
|
</goal>
|
|
<goal name="heapSort'vc.8.5" expl="VC for heapSort" proved="true">
|
|
<proof prover="5" timelimit="1"><result status="valid" time="1.030638" steps="13666"/></proof>
|
|
</goal>
|
|
</transf>
|
|
</goal>
|
|
<goal name="heapSort'vc.9" expl="postcondition" proved="true">
|
|
<proof prover="0"><result status="valid" time="0.040000" steps="13427"/></proof>
|
|
</goal>
|
|
<goal name="heapSort'vc.10" expl="postcondition" proved="true">
|
|
<proof prover="0"><result status="valid" time="0.010000" steps="10737"/></proof>
|
|
</goal>
|
|
<goal name="heapSort'vc.11" expl="out of loop bounds" proved="true">
|
|
<proof prover="0"><result status="valid" time="0.020000" steps="14354"/></proof>
|
|
</goal>
|
|
</transf>
|
|
</goal>
|
|
</theory>
|
|
</file>
|
|
<file format="whyml" proved="true">
|
|
<path name=".."/><path name="heap.why"/>
|
|
<theory name="Heap" proved="true">
|
|
<goal name="Parent_inf" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.000000" steps="12"/></proof>
|
|
</goal>
|
|
<goal name="Left_sup" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.000000" steps="6"/></proof>
|
|
</goal>
|
|
<goal name="Right_sup" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.000000" steps="6"/></proof>
|
|
</goal>
|
|
<goal name="Parent_right" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.000000" steps="55"/></proof>
|
|
</goal>
|
|
<goal name="Parent_left" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.000000" steps="65"/></proof>
|
|
</goal>
|
|
<goal name="Inf_parent" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.010000" steps="56"/></proof>
|
|
</goal>
|
|
<goal name="Child_parent" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.010000" steps="235"/></proof>
|
|
</goal>
|
|
<goal name="Parent_pos" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.000000" steps="12"/></proof>
|
|
</goal>
|
|
<goal name="Is_heap_when_no_element" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.000000" steps="11"/></proof>
|
|
</goal>
|
|
<goal name="Is_heap_sub" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.000000" steps="30"/></proof>
|
|
</goal>
|
|
<goal name="Is_heap_sub2" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.000000" steps="30"/></proof>
|
|
</goal>
|
|
<goal name="Is_heap_when_node_modified" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.150000" steps="1857"/></proof>
|
|
</goal>
|
|
<goal name="Is_heap_add_last" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.050000" steps="431"/></proof>
|
|
</goal>
|
|
<goal name="Parent_inf_el" proved="true">
|
|
<proof prover="2"><result status="valid" time="0.120000"/></proof>
|
|
</goal>
|
|
<goal name="Left_sup_el" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.000000" steps="34"/></proof>
|
|
</goal>
|
|
<goal name="Right_sup_el" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.010000" steps="38"/></proof>
|
|
</goal>
|
|
<goal name="is_heap_relation'vc" expl="VC for is_heap_relation" proved="true">
|
|
<transf name="split_goal_right" proved="true" >
|
|
<goal name="is_heap_relation'vc.0" expl="variant decrease" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.000000" steps="14"/></proof>
|
|
</goal>
|
|
<goal name="is_heap_relation'vc.1" expl="precondition" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.000000" steps="3"/></proof>
|
|
</goal>
|
|
<goal name="is_heap_relation'vc.2" expl="precondition" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.000000" steps="3"/></proof>
|
|
</goal>
|
|
<goal name="is_heap_relation'vc.3" expl="precondition" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.000000" steps="15"/></proof>
|
|
</goal>
|
|
<goal name="is_heap_relation'vc.4" expl="postcondition" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.010000" steps="48"/></proof>
|
|
</goal>
|
|
</transf>
|
|
</goal>
|
|
</theory>
|
|
</file>
|
|
<file format="whyml" proved="true">
|
|
<path name=".."/><path name="bag_of_integers.why"/>
|
|
<theory name="Bag_integers" proved="true">
|
|
<goal name="Min_bag_union1" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.000000" steps="42"/></proof>
|
|
</goal>
|
|
<goal name="Min_bag_union2" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.000000" steps="33"/></proof>
|
|
</goal>
|
|
</theory>
|
|
</file>
|
|
<file format="whyml" proved="true">
|
|
<path name=".."/><path name="test_harness.mlw"/>
|
|
<theory name="TestHarness" proved="true">
|
|
<goal name="testHarness'vc" expl="VC for testHarness" proved="true">
|
|
<transf name="split_goal_right" proved="true" >
|
|
<goal name="testHarness'vc.0" expl="array creation size" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.000000" steps="0"/></proof>
|
|
</goal>
|
|
<goal name="testHarness'vc.1" expl="index in array bounds" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.000000" steps="4"/></proof>
|
|
</goal>
|
|
<goal name="testHarness'vc.2" expl="index in array bounds" proved="true">
|
|
<proof prover="0"><result status="valid" time="0.040000" steps="10611"/></proof>
|
|
</goal>
|
|
<goal name="testHarness'vc.3" expl="index in array bounds" proved="true">
|
|
<proof prover="0"><result status="valid" time="0.040000" steps="10843"/></proof>
|
|
</goal>
|
|
<goal name="testHarness'vc.4" expl="precondition" proved="true">
|
|
<proof prover="0"><result status="valid" time="0.040000" steps="11101"/></proof>
|
|
</goal>
|
|
<goal name="testHarness'vc.5" expl="assertion" proved="true">
|
|
<proof prover="5" timelimit="1"><result status="valid" time="0.914174" steps="17228"/></proof>
|
|
</goal>
|
|
<goal name="testHarness'vc.6" expl="assertion" proved="true">
|
|
<proof prover="4"><result status="valid" time="0.030000" steps="35823"/></proof>
|
|
</goal>
|
|
<goal name="testHarness'vc.7" expl="assertion" proved="true">
|
|
<proof prover="0"><result status="valid" time="0.040000" steps="14955"/></proof>
|
|
</goal>
|
|
<goal name="testHarness'vc.8" expl="assertion" proved="true">
|
|
<proof prover="5" timelimit="1"><result status="valid" time="0.238668" steps="4633"/></proof>
|
|
</goal>
|
|
<goal name="testHarness'vc.9" expl="assertion" proved="true">
|
|
<proof prover="0"><result status="valid" time="0.050000" steps="15325"/></proof>
|
|
</goal>
|
|
<goal name="testHarness'vc.10" expl="assertion" proved="true">
|
|
<proof prover="0" timelimit="1"><result status="valid" time="0.090000" steps="22286"/></proof>
|
|
</goal>
|
|
<goal name="testHarness'vc.11" expl="assertion" proved="true">
|
|
<proof prover="0" timelimit="1"><result status="valid" time="0.180000" steps="22339"/></proof>
|
|
</goal>
|
|
</transf>
|
|
</goal>
|
|
</theory>
|
|
</file>
|
|
<file format="whyml" proved="true">
|
|
<path name=".."/><path name="elements.why"/>
|
|
<theory name="Elements" proved="true">
|
|
<goal name="Elements_singleton" proved="true">
|
|
<proof prover="0"><result status="valid" time="0.030000" steps="6862"/></proof>
|
|
</goal>
|
|
<goal name="Elements_union" proved="true">
|
|
<proof prover="3"><path name="elements_Elements_Elements_union_1.v"/><result status="valid" time="0.282531"/></proof>
|
|
</goal>
|
|
<goal name="Elements_add1" proved="true">
|
|
<proof prover="3"><path name="elements_Elements_Elements_add1_1.v"/><result status="valid" time="0.330000"/></proof>
|
|
</goal>
|
|
<goal name="Elements_remove_last" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.010000" steps="65"/></proof>
|
|
</goal>
|
|
<goal name="Occ_elements" proved="true">
|
|
<proof prover="3"><path name="elements_Elements_Occ_elements_1.v"/><result status="valid" time="0.246931"/></proof>
|
|
</goal>
|
|
<goal name="elements_set_outside'vc" expl="VC for elements_set_outside" proved="true">
|
|
<transf name="split_goal_right" proved="true" >
|
|
<goal name="elements_set_outside'vc.0" expl="variant decrease" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.000000" steps="3"/></proof>
|
|
</goal>
|
|
<goal name="elements_set_outside'vc.1" expl="precondition" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.000000" steps="0"/></proof>
|
|
</goal>
|
|
<goal name="elements_set_outside'vc.2" expl="postcondition" proved="true">
|
|
<proof prover="4"><result status="valid" time="0.020000" steps="14711"/></proof>
|
|
</goal>
|
|
</transf>
|
|
</goal>
|
|
<goal name="Elements_set_inside" proved="true">
|
|
<proof prover="3"><path name="elements_Elements_Elements_set_inside_1.v"/><result status="valid" time="0.347563"/></proof>
|
|
</goal>
|
|
<goal name="Elements_set_inside2" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.010000" steps="979"/></proof>
|
|
</goal>
|
|
</theory>
|
|
</file>
|
|
<file format="whyml" proved="true">
|
|
<path name=".."/><path name="heap_implem.mlw"/>
|
|
<theory name="Implementation" proved="true">
|
|
<goal name="is_heap_min'vc" expl="VC for is_heap_min" proved="true">
|
|
<transf name="split_goal_right" proved="true" >
|
|
<goal name="is_heap_min'vc.0" expl="variant decrease" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.010000" steps="3"/></proof>
|
|
</goal>
|
|
<goal name="is_heap_min'vc.1" expl="precondition" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.010000" steps="3"/></proof>
|
|
</goal>
|
|
<goal name="is_heap_min'vc.2" expl="precondition" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.010000" steps="40"/></proof>
|
|
</goal>
|
|
<goal name="is_heap_min'vc.3" expl="postcondition" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.077546" steps="1120"/></proof>
|
|
</goal>
|
|
</transf>
|
|
</goal>
|
|
<goal name="create'vc" expl="VC for create" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.010000" steps="106"/></proof>
|
|
</goal>
|
|
<goal name="insert'vc" expl="VC for insert" proved="true">
|
|
<transf name="split_goal_right" proved="true" >
|
|
<goal name="insert'vc.0" expl="loop invariant init" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.010000" steps="14"/></proof>
|
|
</goal>
|
|
<goal name="insert'vc.1" expl="precondition" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.010000" steps="11"/></proof>
|
|
</goal>
|
|
<goal name="insert'vc.2" expl="assertion" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.110000" steps="674"/></proof>
|
|
</goal>
|
|
<goal name="insert'vc.3" expl="assertion" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.020000" steps="363"/></proof>
|
|
</goal>
|
|
<goal name="insert'vc.4" expl="postcondition" proved="true">
|
|
<transf name="split_goal_right" proved="true" >
|
|
<goal name="insert'vc.4.0" expl="VC for insert" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.130000" steps="153"/></proof>
|
|
</goal>
|
|
<goal name="insert'vc.4.1" expl="VC for insert" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.140000" steps="1116"/></proof>
|
|
</goal>
|
|
</transf>
|
|
</goal>
|
|
<goal name="insert'vc.5" expl="loop variant decrease" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.020000" steps="62"/></proof>
|
|
</goal>
|
|
<goal name="insert'vc.6" expl="loop invariant preservation" proved="true">
|
|
<transf name="split_goal_right" proved="true" >
|
|
<goal name="insert'vc.6.0" expl="VC for insert" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.020000" steps="60"/></proof>
|
|
</goal>
|
|
<goal name="insert'vc.6.1" expl="VC for insert" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.020000" steps="76"/></proof>
|
|
</goal>
|
|
<goal name="insert'vc.6.2" expl="VC for insert" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.030000" steps="69"/></proof>
|
|
</goal>
|
|
<goal name="insert'vc.6.3" expl="VC for insert" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.040000" steps="76"/></proof>
|
|
</goal>
|
|
<goal name="insert'vc.6.4" expl="VC for insert" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.091810" steps="1155"/></proof>
|
|
</goal>
|
|
<goal name="insert'vc.6.5" expl="VC for insert" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.010000" steps="116"/></proof>
|
|
</goal>
|
|
<goal name="insert'vc.6.6" expl="VC for insert" proved="true">
|
|
<proof prover="0"><result status="valid" time="0.152173" steps="28121"/></proof>
|
|
<proof prover="5"><result status="valid" time="0.420000" steps="4168"/></proof>
|
|
</goal>
|
|
</transf>
|
|
</goal>
|
|
<goal name="insert'vc.7" expl="assertion" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.110000" steps="12"/></proof>
|
|
</goal>
|
|
<goal name="insert'vc.8" expl="assertion" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.020000" steps="361"/></proof>
|
|
</goal>
|
|
<goal name="insert'vc.9" expl="postcondition" proved="true">
|
|
<transf name="split_goal_right" proved="true" >
|
|
<goal name="insert'vc.9.0" expl="VC for insert" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.150000" steps="2313"/></proof>
|
|
</goal>
|
|
<goal name="insert'vc.9.1" expl="VC for insert" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.020000" steps="507"/></proof>
|
|
</goal>
|
|
</transf>
|
|
</goal>
|
|
</transf>
|
|
</goal>
|
|
<goal name="extractMin'vc" expl="VC for extractMin" proved="true">
|
|
<transf name="split_goal_right" proved="true" >
|
|
<goal name="extractMin'vc.0" expl="assertion" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.010000" steps="37"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.1" expl="assertion" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.091375" steps="1166"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.2" expl="loop invariant init" proved="true">
|
|
<transf name="split_goal_right" proved="true" >
|
|
<goal name="extractMin'vc.2.0" expl="VC for extractMin" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.000000" steps="9"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.2.1" expl="VC for extractMin" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.010000" steps="0"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.2.2" expl="VC for extractMin" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.491407" steps="7000"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.2.3" expl="VC for extractMin" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.240000" steps="4042"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.2.4" expl="VC for extractMin" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.010000" steps="9"/></proof>
|
|
</goal>
|
|
</transf>
|
|
</goal>
|
|
<goal name="extractMin'vc.3" expl="assertion" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.030000" steps="944"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.4" expl="assertion" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.020000" steps="305"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.5" expl="assertion" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.860502" steps="13375"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.6" expl="postcondition" proved="true">
|
|
<transf name="split_goal_right" proved="true" >
|
|
<goal name="extractMin'vc.6.0" expl="VC for extractMin" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.217796" steps="2949"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.6.1" expl="VC for extractMin" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.144357" steps="2248"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.6.2" expl="VC for extractMin" proved="true">
|
|
<proof prover="5"><result status="valid" time="2.308970" steps="31407"/></proof>
|
|
</goal>
|
|
</transf>
|
|
</goal>
|
|
<goal name="extractMin'vc.7" expl="postcondition" proved="true">
|
|
<transf name="split_goal_right" proved="true" >
|
|
<goal name="extractMin'vc.7.0" expl="VC for extractMin" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.010000" steps="24"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.7.1" expl="VC for extractMin" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.010000" steps="24"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.7.2" expl="VC for extractMin" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.020000" steps="24"/></proof>
|
|
</goal>
|
|
</transf>
|
|
</goal>
|
|
<goal name="extractMin'vc.8" expl="assertion" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.138118" steps="1119"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.9" expl="assertion" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.110000" steps="2454"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.10" expl="assertion" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.899634" steps="13288"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.11" expl="postcondition" proved="true">
|
|
<transf name="split_goal_right" proved="true" >
|
|
<goal name="extractMin'vc.11.0" expl="VC for extractMin" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.281691" steps="3689"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.11.1" expl="VC for extractMin" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.010000" steps="840"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.11.2" expl="VC for extractMin" proved="true">
|
|
<proof prover="5"><result status="valid" time="2.083294" steps="28550"/></proof>
|
|
</goal>
|
|
</transf>
|
|
</goal>
|
|
<goal name="extractMin'vc.12" expl="postcondition" proved="true">
|
|
<transf name="split_goal_right" proved="true" >
|
|
<goal name="extractMin'vc.12.0" expl="VC for extractMin" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.020000" steps="28"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.12.1" expl="VC for extractMin" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.010000" steps="29"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.12.2" expl="VC for extractMin" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.020000" steps="28"/></proof>
|
|
</goal>
|
|
</transf>
|
|
</goal>
|
|
<goal name="extractMin'vc.13" expl="loop variant decrease" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.010000" steps="54"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.14" expl="loop invariant preservation" proved="true">
|
|
<transf name="split_goal_right" proved="true" >
|
|
<goal name="extractMin'vc.14.0" expl="VC for extractMin" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.020000" steps="33"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.14.1" expl="VC for extractMin" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.020000" steps="28"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.14.2" expl="VC for extractMin" proved="true">
|
|
<proof prover="0"><result status="valid" time="0.620000" steps="89144"/></proof>
|
|
<proof prover="5"><result status="valid" time="0.860579" steps="11052"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.14.3" expl="VC for extractMin" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.010000" steps="37"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.14.4" expl="VC for extractMin" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.020000" steps="256"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.14.5" expl="VC for extractMin" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.060000" steps="849"/></proof>
|
|
</goal>
|
|
</transf>
|
|
</goal>
|
|
<goal name="extractMin'vc.15" expl="assertion" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.040000" steps="1143"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.16" expl="assertion" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.151806" steps="2464"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.17" expl="assertion" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.834701" steps="13287"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.18" expl="postcondition" proved="true">
|
|
<transf name="split_goal_right" proved="true" >
|
|
<goal name="extractMin'vc.18.0" expl="VC for extractMin" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.255967" steps="3689"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.18.1" expl="VC for extractMin" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.010000" steps="840"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.18.2" expl="VC for extractMin" proved="true">
|
|
<proof prover="5"><result status="valid" time="3.195554" steps="28553"/></proof>
|
|
</goal>
|
|
</transf>
|
|
</goal>
|
|
<goal name="extractMin'vc.19" expl="postcondition" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.010000" steps="31"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.20" expl="loop variant decrease" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.020000" steps="54"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.21" expl="loop invariant preservation" proved="true">
|
|
<transf name="split_goal_right" proved="true" >
|
|
<goal name="extractMin'vc.21.0" expl="VC for extractMin" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.020000" steps="33"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.21.1" expl="VC for extractMin" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.020000" steps="36"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.21.2" expl="VC for extractMin" proved="true">
|
|
<proof prover="0"><result status="valid" time="0.759772" steps="87950"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.21.3" expl="VC for extractMin" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.020000" steps="32"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.21.4" expl="VC for extractMin" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.020000" steps="263"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.21.5" expl="VC for extractMin" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.040000" steps="837"/></proof>
|
|
</goal>
|
|
</transf>
|
|
</goal>
|
|
<goal name="extractMin'vc.22" expl="assertion" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.030000" steps="1046"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.23" expl="assertion" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.020000" steps="418"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.24" expl="assertion" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.949957" steps="17607"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.25" expl="postcondition" proved="true">
|
|
<proof prover="5"><result status="valid" time="3.012837" steps="50951"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.26" expl="postcondition" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.010000" steps="29"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.27" expl="loop variant decrease" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.020000" steps="50"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.28" expl="loop invariant preservation" proved="true">
|
|
<transf name="split_goal_right" proved="true" >
|
|
<goal name="extractMin'vc.28.0" expl="VC for extractMin" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.020000" steps="29"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.28.1" expl="VC for extractMin" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.010000" steps="32"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.28.2" expl="VC for extractMin" proved="true">
|
|
<proof prover="0"><result status="valid" time="0.390000" steps="67298"/></proof>
|
|
<proof prover="5"><result status="valid" time="1.011378" steps="10715"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.28.3" expl="VC for extractMin" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.010000" steps="29"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.28.4" expl="VC for extractMin" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.020000" steps="247"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.28.5" expl="VC for extractMin" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.040000" steps="813"/></proof>
|
|
</goal>
|
|
</transf>
|
|
</goal>
|
|
<goal name="extractMin'vc.29" expl="assertion" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.010000" steps="26"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.30" expl="assertion" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.010000" steps="24"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.31" expl="assertion" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.020000" steps="24"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.32" expl="assertion" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.010000" steps="25"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.33" expl="postcondition" proved="true">
|
|
<transf name="split_goal_right" proved="true" >
|
|
<goal name="extractMin'vc.33.0" expl="VC for extractMin" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.020000" steps="26"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.33.1" expl="VC for extractMin" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.020000" steps="25"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.33.2" expl="VC for extractMin" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.010000" steps="26"/></proof>
|
|
</goal>
|
|
</transf>
|
|
</goal>
|
|
<goal name="extractMin'vc.34" expl="postcondition" proved="true">
|
|
<transf name="split_goal_right" proved="true" >
|
|
<goal name="extractMin'vc.34.0" expl="VC for extractMin" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.020000" steps="99"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.34.1" expl="VC for extractMin" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.030000" steps="169"/></proof>
|
|
</goal>
|
|
<goal name="extractMin'vc.34.2" expl="VC for extractMin" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.010000" steps="255"/></proof>
|
|
</goal>
|
|
</transf>
|
|
</goal>
|
|
</transf>
|
|
</goal>
|
|
</theory>
|
|
</file>
|
|
<file format="whyml" proved="true">
|
|
<path name=".."/><path name="abstract_heap.mlw"/>
|
|
</file>
|
|
<file format="whyml" proved="true">
|
|
<path name=".."/><path name="heap_model.why"/>
|
|
<theory name="Model" proved="true">
|
|
<goal name="Model_empty" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.010000" steps="26"/></proof>
|
|
</goal>
|
|
<goal name="Model_singleton" proved="true">
|
|
<proof prover="5"><result status="valid" time="0.010000" steps="35"/></proof>
|
|
</goal>
|
|
<goal name="Model_set" proved="true">
|
|
<proof prover="1"><result status="valid" time="0.133082" steps="336"/></proof>
|
|
<proof prover="5"><result status="timeout" time="5.000000" steps="75263"/></proof>
|
|
</goal>
|
|
<goal name="Model_add_last" proved="true">
|
|
<proof prover="0"><result status="valid" time="0.040000" steps="17240"/></proof>
|
|
</goal>
|
|
</theory>
|
|
</file>
|
|
</why3session>
|