mirror of
https://github.com/AdaCore/why3.git
synced 2026-02-12 12:34:55 -08:00
168 lines
8.6 KiB
XML
168 lines
8.6 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="Alt-Ergo" version="2.6.0" timelimit="1" steplimit="0" memlimit="1000"/>
|
|
<prover id="1" name="CVC5" version="1.0.5" timelimit="1" steplimit="0" memlimit="1000"/>
|
|
<prover id="2" name="CVC4" version="1.6" timelimit="1" steplimit="0" memlimit="1000"/>
|
|
<file format="whyml" proved="true">
|
|
<path name=".."/><path name="queue_two_lists.mlw"/>
|
|
<theory name="Queue" proved="true">
|
|
<goal name="t'vc" expl="VC for t" proved="true">
|
|
<proof prover="2"><result status="valid" time="0.060000" steps="11591"/></proof>
|
|
</goal>
|
|
<goal name="create'vc" expl="VC for create" proved="true">
|
|
<proof prover="2"><result status="valid" time="0.040000" steps="14018"/></proof>
|
|
</goal>
|
|
<goal name="push'vc" expl="VC for push" proved="true">
|
|
<proof prover="0"><result status="valid" time="0.180000" steps="2916"/></proof>
|
|
</goal>
|
|
<goal name="nth_append'vc" expl="VC for nth_append" proved="true">
|
|
<proof prover="0"><result status="valid" time="0.040000" steps="321"/></proof>
|
|
</goal>
|
|
<goal name="nth_rev'vc" expl="VC for nth_rev" proved="true">
|
|
<proof prover="0"><result status="valid" time="0.020000" steps="222"/></proof>
|
|
</goal>
|
|
<goal name="pop'vc" expl="VC for pop" proved="true">
|
|
<transf name="split_vc" proved="true" >
|
|
<goal name="pop'vc.0" expl="exceptional postcondition" proved="true">
|
|
<proof prover="0"><result status="valid" time="0.010000" steps="64"/></proof>
|
|
</goal>
|
|
<goal name="pop'vc.1" expl="precondition" proved="true">
|
|
<proof prover="0" timelimit="10"><result status="valid" time="0.010000" steps="50"/></proof>
|
|
</goal>
|
|
<goal name="pop'vc.2" expl="type invariant" proved="true">
|
|
<proof prover="0" timelimit="10"><result status="valid" time="0.010000" steps="87"/></proof>
|
|
</goal>
|
|
<goal name="pop'vc.3" expl="type invariant" proved="true">
|
|
<proof prover="0" timelimit="10"><result status="valid" time="0.010000" steps="36"/></proof>
|
|
</goal>
|
|
<goal name="pop'vc.4" expl="type invariant" proved="true">
|
|
<proof prover="0" timelimit="10"><result status="valid" time="0.070000" steps="225"/></proof>
|
|
</goal>
|
|
<goal name="pop'vc.5" expl="postcondition" proved="true">
|
|
<proof prover="0" timelimit="10"><result status="valid" time="0.010000" steps="74"/></proof>
|
|
</goal>
|
|
<goal name="pop'vc.6" expl="postcondition" proved="true">
|
|
<proof prover="0" timelimit="10"><result status="valid" time="0.010000" steps="168"/></proof>
|
|
</goal>
|
|
<goal name="pop'vc.7" expl="postcondition" proved="true">
|
|
<proof prover="0" timelimit="10"><result status="valid" time="0.010000" steps="53"/></proof>
|
|
</goal>
|
|
<goal name="pop'vc.8" expl="precondition" proved="true">
|
|
<proof prover="0" timelimit="10"><result status="valid" time="0.010000" steps="59"/></proof>
|
|
</goal>
|
|
<goal name="pop'vc.9" expl="type invariant" proved="true">
|
|
<proof prover="0" timelimit="10"><result status="valid" time="0.010000" steps="74"/></proof>
|
|
</goal>
|
|
<goal name="pop'vc.10" expl="type invariant" proved="true">
|
|
<proof prover="0" timelimit="10"><result status="valid" time="0.010000" steps="108"/></proof>
|
|
</goal>
|
|
<goal name="pop'vc.11" expl="type invariant" proved="true">
|
|
<proof prover="0" timelimit="10"><result status="valid" time="0.362403" steps="5535"/></proof>
|
|
</goal>
|
|
<goal name="pop'vc.12" expl="postcondition" proved="true">
|
|
<proof prover="0" timelimit="10"><result status="valid" time="0.010000" steps="69"/></proof>
|
|
</goal>
|
|
<goal name="pop'vc.13" expl="postcondition" proved="true">
|
|
<proof prover="0" timelimit="10"><result status="valid" time="0.010000" steps="125"/></proof>
|
|
</goal>
|
|
<goal name="pop'vc.14" expl="postcondition" proved="true">
|
|
<proof prover="0" timelimit="10"><result status="valid" time="0.000000" steps="53"/></proof>
|
|
</goal>
|
|
</transf>
|
|
</goal>
|
|
<goal name="peek'vc" expl="VC for peek" proved="true">
|
|
<proof prover="0"><result status="valid" time="0.020000" steps="127"/></proof>
|
|
</goal>
|
|
<goal name="safe_pop'vc" expl="VC for safe_pop" proved="true">
|
|
<proof prover="0"><result status="valid" time="0.010000" steps="75"/></proof>
|
|
</goal>
|
|
<goal name="safe_peek'vc" expl="VC for safe_peek" proved="true">
|
|
<proof prover="0"><result status="valid" time="0.010000" steps="5"/></proof>
|
|
</goal>
|
|
<goal name="clear'vc" expl="VC for clear" proved="true">
|
|
<proof prover="0"><result status="valid" time="0.010000" steps="62"/></proof>
|
|
</goal>
|
|
<goal name="copy'vc" expl="VC for copy" proved="true">
|
|
<proof prover="0"><result status="valid" time="0.020000" steps="75"/></proof>
|
|
</goal>
|
|
<goal name="is_empty'vc" expl="VC for is_empty" proved="true">
|
|
<proof prover="1"><result status="valid" time="0.080000" steps="12756"/></proof>
|
|
</goal>
|
|
<goal name="length'vc" expl="VC for length" proved="true">
|
|
<proof prover="0"><result status="valid" time="0.020000" steps="116"/></proof>
|
|
</goal>
|
|
<goal name="transfer'vc" expl="VC for transfer" proved="true">
|
|
<transf name="split_vc" proved="true" >
|
|
<goal name="transfer'vc.0" expl="type invariant" proved="true">
|
|
<proof prover="0"><result status="valid" time="0.010000" steps="28"/></proof>
|
|
</goal>
|
|
<goal name="transfer'vc.1" expl="type invariant" proved="true">
|
|
<proof prover="0"><result status="valid" time="0.010000" steps="32"/></proof>
|
|
</goal>
|
|
<goal name="transfer'vc.2" expl="type invariant" proved="true">
|
|
<proof prover="0"><result status="valid" time="0.010000" steps="183"/></proof>
|
|
</goal>
|
|
<goal name="transfer'vc.3" expl="postcondition" proved="true">
|
|
<proof prover="0"><result status="valid" time="0.010000" steps="58"/></proof>
|
|
</goal>
|
|
<goal name="transfer'vc.4" expl="postcondition" proved="true">
|
|
<proof prover="0"><result status="valid" time="0.020000" steps="253"/></proof>
|
|
</goal>
|
|
<goal name="transfer'vc.5" expl="type invariant" proved="true">
|
|
<proof prover="0"><result status="valid" time="0.010000" steps="57"/></proof>
|
|
</goal>
|
|
<goal name="transfer'vc.6" expl="type invariant" proved="true">
|
|
<proof prover="0"><result status="valid" time="0.020000" steps="184"/></proof>
|
|
</goal>
|
|
<goal name="transfer'vc.7" expl="type invariant" proved="true">
|
|
<proof prover="0"><result status="valid" time="0.275719" steps="2140"/></proof>
|
|
</goal>
|
|
<goal name="transfer'vc.8" expl="postcondition" proved="true">
|
|
<proof prover="2"><result status="valid" time="0.060000" steps="15959"/></proof>
|
|
</goal>
|
|
<goal name="transfer'vc.9" expl="postcondition" proved="true">
|
|
<proof prover="0"><result status="valid" time="0.010000" steps="98"/></proof>
|
|
</goal>
|
|
</transf>
|
|
</goal>
|
|
</theory>
|
|
<theory name="Correct" proved="true">
|
|
<goal name="Queue.create'refn'vc" expl="VC for create'refn" proved="true">
|
|
<proof prover="2"><result status="valid" time="0.030000" steps="9677"/></proof>
|
|
</goal>
|
|
<goal name="Queue.push'refn'vc" expl="VC for push'refn" proved="true">
|
|
<proof prover="2"><result status="valid" time="0.060000" steps="7100"/></proof>
|
|
</goal>
|
|
<goal name="Queue.pop'refn'vc" expl="VC for pop'refn" proved="true">
|
|
<proof prover="0"><result status="valid" time="0.010000" steps="5"/></proof>
|
|
</goal>
|
|
<goal name="Queue.peek'refn'vc" expl="VC for peek'refn" proved="true">
|
|
<proof prover="2"><result status="valid" time="0.050000" steps="7334"/></proof>
|
|
</goal>
|
|
<goal name="Queue.safe_pop'refn'vc" expl="VC for safe_pop'refn" proved="true">
|
|
<proof prover="2"><result status="valid" time="0.040000" steps="10757"/></proof>
|
|
</goal>
|
|
<goal name="Queue.safe_peek'refn'vc" expl="VC for safe_peek'refn" proved="true">
|
|
<proof prover="2"><result status="valid" time="0.050000" steps="9685"/></proof>
|
|
</goal>
|
|
<goal name="Queue.clear'refn'vc" expl="VC for clear'refn" proved="true">
|
|
<proof prover="2"><result status="valid" time="0.050000" steps="7100"/></proof>
|
|
</goal>
|
|
<goal name="Queue.copy'refn'vc" expl="VC for copy'refn" proved="true">
|
|
<proof prover="2"><result status="valid" time="0.020000" steps="8490"/></proof>
|
|
</goal>
|
|
<goal name="Queue.is_empty'refn'vc" expl="VC for is_empty'refn" proved="true">
|
|
<proof prover="2"><result status="valid" time="0.050000" steps="9698"/></proof>
|
|
</goal>
|
|
<goal name="Queue.length'refn'vc" expl="VC for length'refn" proved="true">
|
|
<proof prover="2"><result status="valid" time="0.040000" steps="7100"/></proof>
|
|
</goal>
|
|
<goal name="Queue.transfer'refn'vc" expl="VC for transfer'refn" proved="true">
|
|
<proof prover="2"><result status="valid" time="0.040000" steps="7100"/></proof>
|
|
</goal>
|
|
</theory>
|
|
</file>
|
|
</why3session>
|