Files
why3/examples/split_string/why3session.xml
Claude Marche 0a7d394f3c fix sessions
2024-02-20 11:10:11 +01:00

321 lines
18 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.4.0" timelimit="1" steplimit="0" memlimit="1000"/>
<prover id="1" name="CVC4" version="1.8" timelimit="5" steplimit="0" memlimit="1000"/>
<prover id="2" name="CVC5" version="1.0.2" timelimit="1" steplimit="0" memlimit="1000"/>
<prover id="3" name="Z3" version="4.8.10" timelimit="1" steplimit="0" memlimit="1000"/>
<file format="whyml" proved="true">
<path name=".."/><path name="split_string.mlw"/>
<theory name="SplitString" proved="true">
<goal name="concat&#39;vc" expl="VC for concat" proved="true">
<proof prover="3"><result status="valid" time="0.044785" steps="95918"/></proof>
</goal>
<goal name="mixfix []&#39;vc" expl="VC for mixfix []" proved="true">
<proof prover="3"><result status="valid" time="0.026382" steps="3102"/></proof>
</goal>
<goal name="split_string&#39;vc" expl="VC for split_string" proved="true">
<transf name="split_vc" proved="true" >
<goal name="split_string&#39;vc.0" expl="postcondition" proved="true">
<proof prover="3"><result status="valid" time="0.024453" steps="8485"/></proof>
</goal>
<goal name="split_string&#39;vc.1" expl="postcondition" proved="true">
<proof prover="3"><result status="valid" time="0.028792" steps="8508"/></proof>
</goal>
<goal name="split_string&#39;vc.2" expl="postcondition" proved="true">
<proof prover="2"><result status="valid" time="0.147316" steps="9274"/></proof>
</goal>
<goal name="split_string&#39;vc.3" expl="postcondition" proved="true">
<proof prover="3" timelimit="5"><result status="valid" time="0.022500" steps="8695"/></proof>
</goal>
<goal name="split_string&#39;vc.4" expl="postcondition" proved="true">
<proof prover="3"><result status="valid" time="0.058662" steps="90840"/></proof>
</goal>
<goal name="split_string&#39;vc.5" expl="loop invariant init" proved="true">
<proof prover="3"><result status="valid" time="0.047299" steps="65535"/></proof>
</goal>
<goal name="split_string&#39;vc.6" expl="loop invariant init" proved="true">
<proof prover="3"><result status="valid" time="0.035690" steps="14810"/></proof>
</goal>
<goal name="split_string&#39;vc.7" expl="loop invariant init" proved="true">
<proof prover="3"><result status="valid" time="0.026103" steps="8289"/></proof>
</goal>
<goal name="split_string&#39;vc.8" expl="loop invariant init" proved="true">
<proof prover="3"><result status="valid" time="0.050247" steps="108478"/></proof>
</goal>
<goal name="split_string&#39;vc.9" expl="loop invariant init" proved="true">
<proof prover="3"><result status="valid" time="0.495907" steps="613066"/></proof>
</goal>
<goal name="split_string&#39;vc.10" expl="index in string bounds" proved="true">
<proof prover="3"><result status="valid" time="0.018489" steps="95662"/></proof>
</goal>
<goal name="split_string&#39;vc.11" expl="precondition" proved="true">
<proof prover="3"><result status="valid" time="0.022147" steps="12313"/></proof>
</goal>
<goal name="split_string&#39;vc.12" expl="assertion" proved="true">
<proof prover="0"><result status="valid" time="0.283311" steps="1674"/></proof>
</goal>
<goal name="split_string&#39;vc.13" expl="precondition" proved="true">
<proof prover="3"><result status="valid" time="0.052437" steps="117914"/></proof>
</goal>
<goal name="split_string&#39;vc.14" expl="postcondition" proved="true">
<proof prover="3"><result status="valid" time="0.057491" steps="119367"/></proof>
</goal>
<goal name="split_string&#39;vc.15" expl="postcondition" proved="true">
<proof prover="3"><result status="valid" time="0.040443" steps="64834"/></proof>
</goal>
<goal name="split_string&#39;vc.16" expl="postcondition" proved="true">
<proof prover="0" timelimit="5"><result status="valid" time="0.274553" steps="2653"/></proof>
</goal>
<goal name="split_string&#39;vc.17" expl="postcondition" proved="true">
<proof prover="0"><result status="valid" time="0.021337" steps="33"/></proof>
</goal>
<goal name="split_string&#39;vc.18" expl="postcondition" proved="true">
<proof prover="1"><result status="valid" time="2.797228" steps="264657"/></proof>
</goal>
<goal name="split_string&#39;vc.19" expl="loop variant decrease" proved="true">
<proof prover="3"><result status="valid" time="0.030611" steps="60430"/></proof>
</goal>
<goal name="split_string&#39;vc.20" expl="loop invariant preservation" proved="true">
<proof prover="3"><result status="valid" time="0.062629" steps="113725"/></proof>
</goal>
<goal name="split_string&#39;vc.21" expl="loop invariant preservation" proved="true">
<proof prover="0" timelimit="5"><result status="valid" time="0.395341" steps="3766"/></proof>
</goal>
<goal name="split_string&#39;vc.22" expl="loop invariant preservation" proved="true">
<proof prover="3"><result status="valid" time="0.029652" steps="42793"/></proof>
</goal>
<goal name="split_string&#39;vc.23" expl="loop invariant preservation" proved="true">
<proof prover="3"><result status="valid" time="0.062801" steps="116036"/></proof>
</goal>
<goal name="split_string&#39;vc.24" expl="loop invariant preservation" proved="true">
<proof prover="1"><result status="valid" time="2.769852" steps="299229"/></proof>
</goal>
<goal name="split_string&#39;vc.25" expl="loop variant decrease" proved="true">
<proof prover="3"><result status="valid" time="0.044062" steps="58882"/></proof>
</goal>
<goal name="split_string&#39;vc.26" expl="loop invariant preservation" proved="true">
<proof prover="3"><result status="valid" time="0.053497" steps="109819"/></proof>
</goal>
<goal name="split_string&#39;vc.27" expl="loop invariant preservation" proved="true">
<proof prover="0"><result status="valid" time="0.065083" steps="26"/></proof>
<proof prover="3"><result status="valid" time="0.056946" steps="110291"/></proof>
</goal>
<goal name="split_string&#39;vc.28" expl="loop invariant preservation" proved="true">
<proof prover="3"><result status="valid" time="0.061993" steps="111743"/></proof>
</goal>
<goal name="split_string&#39;vc.29" expl="loop invariant preservation" proved="true">
<proof prover="3"><result status="valid" time="0.025354" steps="12423"/></proof>
</goal>
<goal name="split_string&#39;vc.30" expl="loop invariant preservation" proved="true">
<proof prover="3" timelimit="5"><result status="valid" time="0.021910" steps="8504"/></proof>
</goal>
<goal name="split_string&#39;vc.31" expl="precondition" proved="true">
<proof prover="3"><result status="valid" time="0.051748" steps="95758"/></proof>
</goal>
<goal name="split_string&#39;vc.32" expl="postcondition" proved="true">
<proof prover="3"><result status="valid" time="0.050233" steps="98113"/></proof>
</goal>
<goal name="split_string&#39;vc.33" expl="postcondition" proved="true">
<proof prover="3"><result status="valid" time="0.053110" steps="100503"/></proof>
</goal>
<goal name="split_string&#39;vc.34" expl="postcondition" proved="true">
<proof prover="3"><result status="valid" time="0.056633" steps="107185"/></proof>
</goal>
<goal name="split_string&#39;vc.35" expl="postcondition" proved="true">
<proof prover="0"><result status="valid" time="0.072079" steps="333"/></proof>
</goal>
<goal name="split_string&#39;vc.36" expl="postcondition" proved="true">
<proof prover="3"><result status="valid" time="0.045011" steps="8551"/></proof>
</goal>
</transf>
</goal>
</theory>
<theory name="SplitStringOCaml" proved="true">
<goal name="concat&#39;vc" expl="VC for concat" proved="true">
<proof prover="3"><result status="valid" time="0.076475" steps="104493"/></proof>
</goal>
<goal name="split_string&#39;vc" expl="VC for split_string" proved="true">
<transf name="split_vc" proved="true" >
<goal name="split_string&#39;vc.0" expl="postcondition" proved="true">
<proof prover="3"><result status="valid" time="0.025217" steps="84695"/></proof>
</goal>
<goal name="split_string&#39;vc.1" expl="postcondition" proved="true">
<proof prover="3"><result status="valid" time="0.021791" steps="84816"/></proof>
</goal>
<goal name="split_string&#39;vc.2" expl="postcondition" proved="true">
<proof prover="3"><result status="valid" time="0.021419" steps="88334"/></proof>
</goal>
<goal name="split_string&#39;vc.3" expl="postcondition" proved="true">
<proof prover="3"><result status="valid" time="0.024941" steps="87903"/></proof>
</goal>
<goal name="split_string&#39;vc.4" expl="postcondition" proved="true">
<proof prover="3"><result status="valid" time="0.047896" steps="106957"/></proof>
</goal>
<goal name="split_string&#39;vc.5" expl="loop invariant init" proved="true">
<proof prover="3"><result status="valid" time="0.048853" steps="81474"/></proof>
</goal>
<goal name="split_string&#39;vc.6" expl="loop invariant init" proved="true">
<proof prover="3"><result status="valid" time="0.031802" steps="67542"/></proof>
</goal>
<goal name="split_string&#39;vc.7" expl="loop invariant init" proved="true">
<proof prover="3"><result status="valid" time="0.030768" steps="8380"/></proof>
</goal>
<goal name="split_string&#39;vc.8" expl="loop invariant init" proved="true">
<proof prover="3"><result status="valid" time="0.062766" steps="123810"/></proof>
</goal>
<goal name="split_string&#39;vc.9" expl="loop invariant init" proved="true">
<proof prover="3"><result status="valid" time="0.069983" steps="142747"/></proof>
</goal>
<goal name="split_string&#39;vc.10" expl="loop invariant init" proved="true">
<proof prover="3"><result status="valid" time="0.609267" steps="671749"/></proof>
</goal>
<goal name="split_string&#39;vc.11" expl="index in string bounds" proved="true">
<proof prover="3"><result status="valid" time="0.067412" steps="125520"/></proof>
</goal>
<goal name="split_string&#39;vc.12" expl="index in string bounds" proved="true">
<proof prover="3"><result status="valid" time="0.039962" steps="12596"/></proof>
</goal>
<goal name="split_string&#39;vc.13" expl="assertion" proved="true">
<proof prover="0" timelimit="60"><result status="valid" time="14.404356" steps="144849"/></proof>
</goal>
<goal name="split_string&#39;vc.14" expl="integer overflow" proved="true">
<proof prover="3"><result status="valid" time="0.066537" steps="132200"/></proof>
</goal>
<goal name="split_string&#39;vc.15" expl="integer overflow" proved="true">
<proof prover="3"><result status="valid" time="0.069413" steps="134174"/></proof>
</goal>
<goal name="split_string&#39;vc.16" expl="index in string bounds" proved="true">
<proof prover="3"><result status="valid" time="0.054222" steps="135705"/></proof>
</goal>
<goal name="split_string&#39;vc.17" expl="postcondition" proved="true">
<proof prover="3"><result status="valid" time="0.067993" steps="143133"/></proof>
</goal>
<goal name="split_string&#39;vc.18" expl="postcondition" proved="true">
<proof prover="3"><result status="valid" time="0.043007" steps="143113"/></proof>
</goal>
<goal name="split_string&#39;vc.19" expl="postcondition" proved="true">
<transf name="assert" proved="true" arg1="(j &lt; length ss1.seq)">
<goal name="split_string&#39;vc.19.0" expl="asserted formula" proved="true">
<proof prover="3"><result status="valid" time="0.072076" steps="144005"/></proof>
</goal>
<goal name="split_string&#39;vc.19.1" expl="postcondition" proved="true">
<transf name="case" proved="true" arg1="(j = length ss2.seq)">
<goal name="split_string&#39;vc.19.1.0" expl="true case (postcondition)" proved="true">
<proof prover="3"><result status="valid" time="0.198406" steps="365679"/></proof>
</goal>
<goal name="split_string&#39;vc.19.1.1" expl="false case (postcondition)" proved="true">
<proof prover="0"><result status="valid" time="0.244248" steps="1263"/></proof>
</goal>
</transf>
</goal>
</transf>
</goal>
<goal name="split_string&#39;vc.20" expl="postcondition" proved="true">
<proof prover="3" timelimit="5"><result status="valid" time="0.055591" steps="155093"/></proof>
</goal>
<goal name="split_string&#39;vc.21" expl="postcondition" proved="true">
<proof prover="1" timelimit="10" memlimit="4000"><result status="valid" time="3.885372" steps="323470"/></proof>
</goal>
<goal name="split_string&#39;vc.22" expl="integer overflow" proved="true">
<proof prover="3"><result status="valid" time="0.056339" steps="134437"/></proof>
</goal>
<goal name="split_string&#39;vc.23" expl="index in string bounds" proved="true">
<proof prover="3"><result status="valid" time="0.056831" steps="136898"/></proof>
</goal>
<goal name="split_string&#39;vc.24" expl="integer overflow" proved="true">
<proof prover="3"><result status="valid" time="0.074191" steps="136479"/></proof>
</goal>
<goal name="split_string&#39;vc.25" expl="loop variant decrease" proved="true">
<proof prover="3"><result status="valid" time="0.046044" steps="73876"/></proof>
</goal>
<goal name="split_string&#39;vc.26" expl="loop invariant preservation" proved="true">
<proof prover="3"><result status="valid" time="0.064336" steps="138455"/></proof>
</goal>
<goal name="split_string&#39;vc.27" expl="loop invariant preservation" proved="true">
<transf name="split_vc" proved="true" >
<goal name="split_string&#39;vc.27.0" expl="loop invariant preservation" proved="true">
<proof prover="0" timelimit="30"><result status="valid" time="2.065399" steps="17540"/></proof>
</goal>
</transf>
</goal>
<goal name="split_string&#39;vc.28" expl="loop invariant preservation" proved="true">
<proof prover="2"><result status="valid" time="0.194593" steps="14444"/></proof>
</goal>
<goal name="split_string&#39;vc.29" expl="loop invariant preservation" proved="true">
<proof prover="3"><result status="valid" time="0.030694" steps="145723"/></proof>
</goal>
<goal name="split_string&#39;vc.30" expl="loop invariant preservation" proved="true">
<proof prover="2"><result status="valid" time="0.236847" steps="17293"/></proof>
</goal>
<goal name="split_string&#39;vc.31" expl="loop invariant preservation" proved="true">
<transf name="split_vc" proved="true" >
<goal name="split_string&#39;vc.31.0" expl="loop invariant preservation" proved="true">
<transf name="assert" proved="true" arg1="(concat (snoc (ss.seq) suffix) sep == concat ss.seq sep ++ cons sep suffix)">
<goal name="split_string&#39;vc.31.0.0" expl="asserted formula" proved="true">
<proof prover="3"><result status="valid" time="0.212630" steps="368776"/></proof>
</goal>
<goal name="split_string&#39;vc.31.0.1" expl="loop invariant preservation" proved="true">
<proof prover="2" timelimit="60"><result status="valid" time="20.896789" steps="1495606"/></proof>
</goal>
</transf>
</goal>
</transf>
</goal>
<goal name="split_string&#39;vc.32" expl="integer overflow" proved="true">
<proof prover="3"><result status="valid" time="0.068592" steps="125789"/></proof>
</goal>
<goal name="split_string&#39;vc.33" expl="loop variant decrease" proved="true">
<proof prover="3"><result status="valid" time="0.036479" steps="72336"/></proof>
</goal>
<goal name="split_string&#39;vc.34" expl="loop invariant preservation" proved="true">
<proof prover="3"><result status="valid" time="0.054686" steps="126757"/></proof>
</goal>
<goal name="split_string&#39;vc.35" expl="loop invariant preservation" proved="true">
<transf name="split_vc" proved="true" >
<goal name="split_string&#39;vc.35.0" expl="loop invariant preservation" proved="true">
<proof prover="0" timelimit="10" memlimit="4000"><result status="valid" time="0.045440" steps="68"/></proof>
</goal>
</transf>
</goal>
<goal name="split_string&#39;vc.36" expl="loop invariant preservation" proved="true">
<proof prover="2"><result status="valid" time="0.253610" steps="15600"/></proof>
</goal>
<goal name="split_string&#39;vc.37" expl="loop invariant preservation" proved="true">
<proof prover="3"><result status="valid" time="0.056659" steps="12874"/></proof>
</goal>
<goal name="split_string&#39;vc.38" expl="loop invariant preservation" proved="true">
<proof prover="3"><result status="valid" time="0.025464" steps="8703"/></proof>
</goal>
<goal name="split_string&#39;vc.39" expl="loop invariant preservation" proved="true">
<transf name="split_vc" proved="true" >
<goal name="split_string&#39;vc.39.0" expl="loop invariant preservation" proved="true">
<proof prover="2" timelimit="10" memlimit="4000"><result status="valid" time="0.198775" steps="13546"/></proof>
</goal>
</transf>
</goal>
<goal name="split_string&#39;vc.40" expl="index in string bounds" proved="true">
<proof prover="3"><result status="valid" time="0.065305" steps="127545"/></proof>
</goal>
<goal name="split_string&#39;vc.41" expl="postcondition" proved="true">
<proof prover="3"><result status="valid" time="0.058935" steps="129509"/></proof>
</goal>
<goal name="split_string&#39;vc.42" expl="postcondition" proved="true">
<proof prover="3"><result status="valid" time="0.048567" steps="129834"/></proof>
</goal>
<goal name="split_string&#39;vc.43" expl="postcondition" proved="true">
<proof prover="0"><result status="valid" time="0.140543" steps="206"/></proof>
</goal>
<goal name="split_string&#39;vc.44" expl="postcondition" proved="true">
<proof prover="0"><result status="valid" time="0.127207" steps="843"/></proof>
</goal>
<goal name="split_string&#39;vc.45" expl="postcondition" proved="true">
<proof prover="1" timelimit="1"><result status="valid" time="0.441338" steps="73438"/></proof>
</goal>
</transf>
</goal>
</theory>
</file>
</why3session>