2024-01-23 20:59:33 +01:00
|
|
|
<?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="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"/>
|
2024-12-12 15:06:46 +01:00
|
|
|
<prover id="4" name="Alt-Ergo" version="2.6.0" timelimit="1" steplimit="0" memlimit="1000"/>
|
2024-01-23 20:59:33 +01:00
|
|
|
<file format="whyml" proved="true">
|
|
|
|
|
<path name=".."/><path name="split_string.mlw"/>
|
2024-01-24 14:50:53 +01:00
|
|
|
<theory name="SplitString" proved="true">
|
2024-01-23 20:59:33 +01:00
|
|
|
<goal name="concat'vc" expl="VC for concat" proved="true">
|
2024-10-29 16:12:46 +01:00
|
|
|
<proof prover="3"><result status="valid" time="0.044785" steps="65889"/></proof>
|
2024-01-23 20:59:33 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="mixfix []'vc" expl="VC for mixfix []" proved="true">
|
2024-10-29 16:12:46 +01:00
|
|
|
<proof prover="3"><result status="valid" time="0.026382" steps="1450"/></proof>
|
2024-01-23 20:59:33 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc" expl="VC for split_string" proved="true">
|
|
|
|
|
<transf name="split_vc" proved="true" >
|
|
|
|
|
<goal name="split_string'vc.0" expl="postcondition" proved="true">
|
2024-10-29 16:12:46 +01:00
|
|
|
<proof prover="3"><result status="valid" time="0.024453" steps="4693"/></proof>
|
2024-01-23 20:59:33 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.1" expl="postcondition" proved="true">
|
2024-10-29 16:12:46 +01:00
|
|
|
<proof prover="3"><result status="valid" time="0.028792" steps="4716"/></proof>
|
2024-01-23 20:59:33 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.2" expl="postcondition" proved="true">
|
2024-10-29 16:12:46 +01:00
|
|
|
<proof prover="2"><result status="valid" time="0.147316" steps="5560"/></proof>
|
2024-01-23 20:59:33 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.3" expl="postcondition" proved="true">
|
2024-10-29 16:12:46 +01:00
|
|
|
<proof prover="3" timelimit="5"><result status="valid" time="0.022500" steps="4983"/></proof>
|
2024-01-23 20:59:33 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.4" expl="postcondition" proved="true">
|
2024-10-29 16:12:46 +01:00
|
|
|
<proof prover="3"><result status="valid" time="0.058662" steps="67635"/></proof>
|
2024-01-23 20:59:33 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.5" expl="loop invariant init" proved="true">
|
2024-10-29 16:12:46 +01:00
|
|
|
<proof prover="3"><result status="valid" time="0.047299" steps="33631"/></proof>
|
2024-01-23 20:59:33 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.6" expl="loop invariant init" proved="true">
|
2024-10-29 16:12:46 +01:00
|
|
|
<proof prover="3"><result status="valid" time="0.035690" steps="7697"/></proof>
|
2024-01-23 20:59:33 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.7" expl="loop invariant init" proved="true">
|
2024-10-29 16:12:46 +01:00
|
|
|
<proof prover="3"><result status="valid" time="0.026103" steps="4384"/></proof>
|
2024-01-23 20:59:33 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.8" expl="loop invariant init" proved="true">
|
2024-10-29 16:12:46 +01:00
|
|
|
<proof prover="3"><result status="valid" time="0.050247" steps="56982"/></proof>
|
2024-01-23 20:59:33 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.9" expl="loop invariant init" proved="true">
|
2024-10-25 18:34:29 +02:00
|
|
|
<proof prover="3"><result status="valid" time="0.495907" steps="594666"/></proof>
|
2024-01-23 20:59:33 +01:00
|
|
|
</goal>
|
2024-01-24 14:50:53 +01:00
|
|
|
<goal name="split_string'vc.10" expl="index in string bounds" proved="true">
|
2024-10-25 18:34:29 +02:00
|
|
|
<proof prover="3"><result status="valid" time="0.018489" steps="81594"/></proof>
|
2024-01-23 20:59:33 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.11" expl="precondition" proved="true">
|
2024-10-25 18:34:29 +02:00
|
|
|
<proof prover="3"><result status="valid" time="0.022147" steps="10520"/></proof>
|
2024-01-23 20:59:33 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.12" expl="assertion" proved="true">
|
2024-12-12 15:06:46 +01:00
|
|
|
<proof prover="4"><result status="valid" time="0.098555" steps="1397"/></proof>
|
2024-01-23 20:59:33 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.13" expl="precondition" proved="true">
|
2024-10-25 18:34:29 +02:00
|
|
|
<proof prover="3"><result status="valid" time="0.052437" steps="101281"/></proof>
|
2024-01-23 20:59:33 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.14" expl="postcondition" proved="true">
|
2024-10-25 18:34:29 +02:00
|
|
|
<proof prover="3"><result status="valid" time="0.057491" steps="102734"/></proof>
|
2024-01-23 20:59:33 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.15" expl="postcondition" proved="true">
|
2024-10-25 18:34:29 +02:00
|
|
|
<proof prover="3"><result status="valid" time="0.040443" steps="55466"/></proof>
|
2024-01-23 20:59:33 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.16" expl="postcondition" proved="true">
|
2024-12-12 15:06:46 +01:00
|
|
|
<proof prover="4" timelimit="5"><result status="valid" time="0.274553" steps="2616"/></proof>
|
2024-01-23 20:59:33 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.17" expl="postcondition" proved="true">
|
2024-12-12 15:06:46 +01:00
|
|
|
<proof prover="4"><result status="valid" time="0.021337" steps="33"/></proof>
|
2024-01-23 20:59:33 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.18" expl="postcondition" proved="true">
|
2024-11-14 14:48:30 +01:00
|
|
|
<proof prover="1"><result status="valid" time="3.799281" steps="258920"/></proof>
|
2024-01-23 20:59:33 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.19" expl="loop variant decrease" proved="true">
|
2024-10-25 18:34:29 +02:00
|
|
|
<proof prover="3"><result status="valid" time="0.030611" steps="51638"/></proof>
|
2024-01-23 20:59:33 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.20" expl="loop invariant preservation" proved="true">
|
2024-10-25 18:34:29 +02:00
|
|
|
<proof prover="3"><result status="valid" time="0.062629" steps="97797"/></proof>
|
2024-01-23 20:59:33 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.21" expl="loop invariant preservation" proved="true">
|
2024-12-12 15:06:46 +01:00
|
|
|
<proof prover="4" timelimit="5"><result status="valid" time="0.236999" steps="3554"/></proof>
|
2024-01-23 20:59:33 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.22" expl="loop invariant preservation" proved="true">
|
2024-10-25 18:34:29 +02:00
|
|
|
<proof prover="3"><result status="valid" time="0.029652" steps="36779"/></proof>
|
2024-01-23 20:59:33 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.23" expl="loop invariant preservation" proved="true">
|
2024-10-25 18:34:29 +02:00
|
|
|
<proof prover="3"><result status="valid" time="0.062801" steps="99559"/></proof>
|
2024-01-23 20:59:33 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.24" expl="loop invariant preservation" proved="true">
|
2024-11-14 14:48:30 +01:00
|
|
|
<proof prover="1"><result status="valid" time="3.773486" steps="295862"/></proof>
|
2024-01-23 20:59:33 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.25" expl="loop variant decrease" proved="true">
|
2024-10-25 18:34:29 +02:00
|
|
|
<proof prover="3"><result status="valid" time="0.044062" steps="50090"/></proof>
|
2024-01-23 20:59:33 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.26" expl="loop invariant preservation" proved="true">
|
2024-10-25 18:34:29 +02:00
|
|
|
<proof prover="3"><result status="valid" time="0.053497" steps="93891"/></proof>
|
2024-01-23 20:59:33 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.27" expl="loop invariant preservation" proved="true">
|
2024-10-25 18:34:29 +02:00
|
|
|
<proof prover="3"><result status="valid" time="0.056946" steps="94363"/></proof>
|
2024-12-12 15:06:46 +01:00
|
|
|
<proof prover="4"><result status="valid" time="0.065083" steps="26"/></proof>
|
2024-01-23 20:59:33 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.28" expl="loop invariant preservation" proved="true">
|
2024-10-25 18:34:29 +02:00
|
|
|
<proof prover="3"><result status="valid" time="0.061993" steps="95819"/></proof>
|
2024-01-23 20:59:33 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.29" expl="loop invariant preservation" proved="true">
|
2024-10-25 18:34:29 +02:00
|
|
|
<proof prover="3"><result status="valid" time="0.025354" steps="10630"/></proof>
|
2024-01-23 20:59:33 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.30" expl="loop invariant preservation" proved="true">
|
2024-10-25 18:34:29 +02:00
|
|
|
<proof prover="3" timelimit="5"><result status="valid" time="0.021910" steps="7287"/></proof>
|
2024-01-23 20:59:33 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.31" expl="precondition" proved="true">
|
2024-10-25 18:34:29 +02:00
|
|
|
<proof prover="3"><result status="valid" time="0.051748" steps="81690"/></proof>
|
2024-01-23 20:59:33 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.32" expl="postcondition" proved="true">
|
2024-10-25 18:34:29 +02:00
|
|
|
<proof prover="3"><result status="valid" time="0.050233" steps="84018"/></proof>
|
2024-01-23 20:59:33 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.33" expl="postcondition" proved="true">
|
2024-10-25 18:34:29 +02:00
|
|
|
<proof prover="3"><result status="valid" time="0.053110" steps="85859"/></proof>
|
2024-01-23 20:59:33 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.34" expl="postcondition" proved="true">
|
2024-10-25 18:34:29 +02:00
|
|
|
<proof prover="3"><result status="valid" time="0.056633" steps="93102"/></proof>
|
2024-01-23 20:59:33 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.35" expl="postcondition" proved="true">
|
2024-12-12 15:06:46 +01:00
|
|
|
<proof prover="4"><result status="valid" time="0.072079" steps="385"/></proof>
|
2024-01-23 20:59:33 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.36" expl="postcondition" proved="true">
|
2024-10-25 18:34:29 +02:00
|
|
|
<proof prover="3"><result status="valid" time="0.045011" steps="7334"/></proof>
|
2024-01-23 20:59:33 +01:00
|
|
|
</goal>
|
|
|
|
|
</transf>
|
|
|
|
|
</goal>
|
|
|
|
|
</theory>
|
2024-01-24 14:50:53 +01:00
|
|
|
<theory name="SplitStringOCaml" proved="true">
|
|
|
|
|
<goal name="concat'vc" expl="VC for concat" proved="true">
|
2024-10-29 16:12:46 +01:00
|
|
|
<proof prover="3"><result status="valid" time="0.076475" steps="72759"/></proof>
|
2024-01-24 14:50:53 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc" expl="VC for split_string" proved="true">
|
|
|
|
|
<transf name="split_vc" proved="true" >
|
|
|
|
|
<goal name="split_string'vc.0" expl="postcondition" proved="true">
|
2024-10-29 16:12:46 +01:00
|
|
|
<proof prover="3"><result status="valid" time="0.025217" steps="58506"/></proof>
|
2024-01-24 14:50:53 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.1" expl="postcondition" proved="true">
|
2024-10-29 16:12:46 +01:00
|
|
|
<proof prover="3"><result status="valid" time="0.021791" steps="58627"/></proof>
|
2024-01-24 14:50:53 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.2" expl="postcondition" proved="true">
|
2024-10-29 16:12:46 +01:00
|
|
|
<proof prover="3"><result status="valid" time="0.021419" steps="62231"/></proof>
|
2024-01-24 14:50:53 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.3" expl="postcondition" proved="true">
|
2024-10-29 16:12:46 +01:00
|
|
|
<proof prover="3"><result status="valid" time="0.024941" steps="61914"/></proof>
|
2024-01-24 14:50:53 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.4" expl="postcondition" proved="true">
|
2024-10-25 18:34:29 +02:00
|
|
|
<proof prover="3"><result status="valid" time="0.047896" steps="94797"/></proof>
|
2024-01-24 14:50:53 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.5" expl="loop invariant init" proved="true">
|
2024-10-29 16:12:46 +01:00
|
|
|
<proof prover="3"><result status="valid" time="0.048853" steps="44282"/></proof>
|
2024-01-24 14:50:53 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.6" expl="loop invariant init" proved="true">
|
2024-10-29 16:12:46 +01:00
|
|
|
<proof prover="3"><result status="valid" time="0.031802" steps="36642"/></proof>
|
2024-01-24 14:50:53 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.7" expl="loop invariant init" proved="true">
|
2024-10-29 16:12:46 +01:00
|
|
|
<proof prover="3"><result status="valid" time="0.030768" steps="4563"/></proof>
|
2024-01-24 14:50:53 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.8" expl="loop invariant init" proved="true">
|
2024-10-29 16:12:46 +01:00
|
|
|
<proof prover="3"><result status="valid" time="0.062766" steps="67260"/></proof>
|
2024-01-24 14:50:53 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.9" expl="loop invariant init" proved="true">
|
2024-11-14 14:48:30 +01:00
|
|
|
<proof prover="3"><result status="valid" time="0.069983" steps="103026"/></proof>
|
2024-01-24 14:50:53 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.10" expl="loop invariant init" proved="true">
|
2024-10-25 18:34:29 +02:00
|
|
|
<proof prover="3"><result status="valid" time="0.609267" steps="643451"/></proof>
|
2024-01-24 14:50:53 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.11" expl="index in string bounds" proved="true">
|
2024-10-25 18:34:29 +02:00
|
|
|
<proof prover="3"><result status="valid" time="0.067412" steps="108186"/></proof>
|
2024-01-24 14:50:53 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.12" expl="index in string bounds" proved="true">
|
2024-10-25 18:34:29 +02:00
|
|
|
<proof prover="3"><result status="valid" time="0.039962" steps="10839"/></proof>
|
2024-01-24 14:50:53 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.13" expl="assertion" proved="true">
|
2024-12-12 15:06:46 +01:00
|
|
|
<proof prover="4" timelimit="60"><result status="valid" time="0.153406" steps="1729"/></proof>
|
2024-01-24 14:50:53 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.14" expl="integer overflow" proved="true">
|
2024-10-25 18:34:29 +02:00
|
|
|
<proof prover="3"><result status="valid" time="0.066537" steps="114171"/></proof>
|
2024-01-24 14:50:53 +01:00
|
|
|
</goal>
|
2024-01-25 21:49:09 +01:00
|
|
|
<goal name="split_string'vc.15" expl="integer overflow" proved="true">
|
2024-10-25 18:34:29 +02:00
|
|
|
<proof prover="3"><result status="valid" time="0.069413" steps="116145"/></proof>
|
2024-01-24 14:50:53 +01:00
|
|
|
</goal>
|
2024-01-25 21:49:09 +01:00
|
|
|
<goal name="split_string'vc.16" expl="index in string bounds" proved="true">
|
2024-10-25 18:34:29 +02:00
|
|
|
<proof prover="3"><result status="valid" time="0.054222" steps="117676"/></proof>
|
2024-01-24 14:50:53 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.17" expl="postcondition" proved="true">
|
2024-10-25 18:34:29 +02:00
|
|
|
<proof prover="3"><result status="valid" time="0.067993" steps="125109"/></proof>
|
2024-01-24 14:50:53 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.18" expl="postcondition" proved="true">
|
2024-10-25 18:34:29 +02:00
|
|
|
<proof prover="3"><result status="valid" time="0.043007" steps="125087"/></proof>
|
2024-01-25 21:49:09 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.19" expl="postcondition" proved="true">
|
2024-01-24 14:50:53 +01:00
|
|
|
<transf name="assert" proved="true" arg1="(j < length ss1.seq)">
|
2024-01-25 21:49:09 +01:00
|
|
|
<goal name="split_string'vc.19.0" expl="asserted formula" proved="true">
|
2024-10-25 18:34:29 +02:00
|
|
|
<proof prover="3"><result status="valid" time="0.072076" steps="125981"/></proof>
|
2024-01-24 14:50:53 +01:00
|
|
|
</goal>
|
2024-01-25 21:49:09 +01:00
|
|
|
<goal name="split_string'vc.19.1" expl="postcondition" proved="true">
|
2024-01-24 14:50:53 +01:00
|
|
|
<transf name="case" proved="true" arg1="(j = length ss2.seq)">
|
2024-01-25 21:49:09 +01:00
|
|
|
<goal name="split_string'vc.19.1.0" expl="true case (postcondition)" proved="true">
|
2024-10-25 18:34:29 +02:00
|
|
|
<proof prover="3"><result status="valid" time="0.198406" steps="347591"/></proof>
|
2024-01-24 14:50:53 +01:00
|
|
|
</goal>
|
2024-01-25 21:49:09 +01:00
|
|
|
<goal name="split_string'vc.19.1.1" expl="false case (postcondition)" proved="true">
|
2024-12-12 15:06:46 +01:00
|
|
|
<proof prover="4"><result status="valid" time="0.082758" steps="1273"/></proof>
|
2024-01-24 14:50:53 +01:00
|
|
|
</goal>
|
|
|
|
|
</transf>
|
|
|
|
|
</goal>
|
|
|
|
|
</transf>
|
|
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.20" expl="postcondition" proved="true">
|
2024-10-25 18:34:29 +02:00
|
|
|
<proof prover="3" timelimit="5"><result status="valid" time="0.055591" steps="137069"/></proof>
|
2024-01-24 14:50:53 +01:00
|
|
|
</goal>
|
2024-01-25 21:49:09 +01:00
|
|
|
<goal name="split_string'vc.21" expl="postcondition" proved="true">
|
2024-11-14 14:48:30 +01:00
|
|
|
<proof prover="1" timelimit="10" memlimit="4000"><result status="valid" time="5.205142" steps="320605"/></proof>
|
2024-01-24 14:50:53 +01:00
|
|
|
</goal>
|
2024-01-25 21:49:09 +01:00
|
|
|
<goal name="split_string'vc.22" expl="integer overflow" proved="true">
|
2024-10-25 18:34:29 +02:00
|
|
|
<proof prover="3"><result status="valid" time="0.056339" steps="116408"/></proof>
|
2024-01-24 14:50:53 +01:00
|
|
|
</goal>
|
2024-01-25 21:49:09 +01:00
|
|
|
<goal name="split_string'vc.23" expl="index in string bounds" proved="true">
|
2024-10-25 18:34:29 +02:00
|
|
|
<proof prover="3"><result status="valid" time="0.056831" steps="118869"/></proof>
|
2024-01-24 14:50:53 +01:00
|
|
|
</goal>
|
2024-01-25 21:49:09 +01:00
|
|
|
<goal name="split_string'vc.24" expl="integer overflow" proved="true">
|
2024-10-25 18:34:29 +02:00
|
|
|
<proof prover="3"><result status="valid" time="0.074191" steps="118450"/></proof>
|
2024-01-24 14:50:53 +01:00
|
|
|
</goal>
|
2024-01-25 21:49:09 +01:00
|
|
|
<goal name="split_string'vc.25" expl="loop variant decrease" proved="true">
|
2024-10-25 18:34:29 +02:00
|
|
|
<proof prover="3"><result status="valid" time="0.046044" steps="63560"/></proof>
|
2024-01-24 14:50:53 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.26" expl="loop invariant preservation" proved="true">
|
2024-10-25 18:34:29 +02:00
|
|
|
<proof prover="3"><result status="valid" time="0.064336" steps="120426"/></proof>
|
2024-01-24 14:50:53 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.27" expl="loop invariant preservation" proved="true">
|
2024-01-25 21:49:09 +01:00
|
|
|
<transf name="split_vc" proved="true" >
|
|
|
|
|
<goal name="split_string'vc.27.0" expl="loop invariant preservation" proved="true">
|
2024-12-12 15:06:46 +01:00
|
|
|
<proof prover="4" timelimit="30"><result status="valid" time="4.051569" steps="71837"/></proof>
|
2024-01-25 21:49:09 +01:00
|
|
|
</goal>
|
|
|
|
|
</transf>
|
2024-01-24 14:50:53 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.28" expl="loop invariant preservation" proved="true">
|
2024-10-25 18:34:29 +02:00
|
|
|
<proof prover="2"><result status="valid" time="0.194593" steps="12390"/></proof>
|
2024-01-24 14:50:53 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.29" expl="loop invariant preservation" proved="true">
|
2024-10-25 18:34:29 +02:00
|
|
|
<proof prover="3"><result status="valid" time="0.030694" steps="127696"/></proof>
|
2024-01-24 14:50:53 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.30" expl="loop invariant preservation" proved="true">
|
2024-11-14 14:48:30 +01:00
|
|
|
<proof prover="2"><result status="valid" time="0.236847" steps="15890"/></proof>
|
2024-01-24 14:50:53 +01:00
|
|
|
</goal>
|
2024-01-25 21:49:09 +01:00
|
|
|
<goal name="split_string'vc.31" expl="loop invariant preservation" proved="true">
|
|
|
|
|
<transf name="split_vc" proved="true" >
|
|
|
|
|
<goal name="split_string'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'vc.31.0.0" expl="asserted formula" proved="true">
|
2024-10-25 18:34:29 +02:00
|
|
|
<proof prover="3"><result status="valid" time="0.212630" steps="350691"/></proof>
|
2024-01-25 21:49:09 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.31.0.1" expl="loop invariant preservation" proved="true">
|
2024-11-14 14:48:30 +01:00
|
|
|
<proof prover="2" timelimit="60"><result status="valid" time="33.854989" steps="1493341"/></proof>
|
2024-01-25 21:49:09 +01:00
|
|
|
</goal>
|
|
|
|
|
</transf>
|
|
|
|
|
</goal>
|
|
|
|
|
</transf>
|
2024-01-24 14:50:53 +01:00
|
|
|
</goal>
|
2024-01-25 21:49:09 +01:00
|
|
|
<goal name="split_string'vc.32" expl="integer overflow" proved="true">
|
2024-10-25 18:34:29 +02:00
|
|
|
<proof prover="3"><result status="valid" time="0.068592" steps="108455"/></proof>
|
2024-01-24 14:50:53 +01:00
|
|
|
</goal>
|
2024-01-25 21:49:09 +01:00
|
|
|
<goal name="split_string'vc.33" expl="loop variant decrease" proved="true">
|
2024-10-25 18:34:29 +02:00
|
|
|
<proof prover="3"><result status="valid" time="0.036479" steps="62020"/></proof>
|
2024-01-24 14:50:53 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.34" expl="loop invariant preservation" proved="true">
|
2024-10-25 18:34:29 +02:00
|
|
|
<proof prover="3"><result status="valid" time="0.054686" steps="109423"/></proof>
|
2024-01-24 14:50:53 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.35" expl="loop invariant preservation" proved="true">
|
|
|
|
|
<transf name="split_vc" proved="true" >
|
2024-01-25 21:49:09 +01:00
|
|
|
<goal name="split_string'vc.35.0" expl="loop invariant preservation" proved="true">
|
2024-12-12 15:06:46 +01:00
|
|
|
<proof prover="4" timelimit="10" memlimit="4000"><result status="valid" time="0.045440" steps="68"/></proof>
|
2024-01-24 14:50:53 +01:00
|
|
|
</goal>
|
|
|
|
|
</transf>
|
|
|
|
|
</goal>
|
2024-01-25 21:49:09 +01:00
|
|
|
<goal name="split_string'vc.36" expl="loop invariant preservation" proved="true">
|
2024-10-25 18:34:29 +02:00
|
|
|
<proof prover="2"><result status="valid" time="0.253610" steps="13546"/></proof>
|
2024-01-24 14:50:53 +01:00
|
|
|
</goal>
|
2024-01-25 21:49:09 +01:00
|
|
|
<goal name="split_string'vc.37" expl="loop invariant preservation" proved="true">
|
2024-10-25 18:34:29 +02:00
|
|
|
<proof prover="3"><result status="valid" time="0.056659" steps="11117"/></proof>
|
2024-01-25 21:49:09 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.38" expl="loop invariant preservation" proved="true">
|
2024-11-14 14:48:30 +01:00
|
|
|
<proof prover="3"><result status="valid" time="0.025464" steps="114197"/></proof>
|
2024-01-25 21:49:09 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.39" expl="loop invariant preservation" proved="true">
|
|
|
|
|
<transf name="split_vc" proved="true" >
|
|
|
|
|
<goal name="split_string'vc.39.0" expl="loop invariant preservation" proved="true">
|
2024-10-25 18:34:29 +02:00
|
|
|
<proof prover="2" timelimit="10" memlimit="4000"><result status="valid" time="0.198775" steps="11513"/></proof>
|
2024-01-25 21:49:09 +01:00
|
|
|
</goal>
|
|
|
|
|
</transf>
|
|
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.40" expl="index in string bounds" proved="true">
|
2024-10-25 18:34:29 +02:00
|
|
|
<proof prover="3"><result status="valid" time="0.065305" steps="109545"/></proof>
|
2024-01-24 14:50:53 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.41" expl="postcondition" proved="true">
|
2024-10-25 18:34:29 +02:00
|
|
|
<proof prover="3"><result status="valid" time="0.058935" steps="112177"/></proof>
|
2024-01-24 14:50:53 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.42" expl="postcondition" proved="true">
|
2024-10-25 18:34:29 +02:00
|
|
|
<proof prover="3"><result status="valid" time="0.048567" steps="112502"/></proof>
|
2024-01-24 14:50:53 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.43" expl="postcondition" proved="true">
|
2024-12-12 15:06:46 +01:00
|
|
|
<proof prover="4"><result status="valid" time="0.022979" steps="205"/></proof>
|
2024-01-24 14:50:53 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.44" expl="postcondition" proved="true">
|
2024-12-12 15:06:46 +01:00
|
|
|
<proof prover="4"><result status="valid" time="0.127207" steps="862"/></proof>
|
2024-01-25 21:49:09 +01:00
|
|
|
</goal>
|
|
|
|
|
<goal name="split_string'vc.45" expl="postcondition" proved="true">
|
2024-10-25 18:34:29 +02:00
|
|
|
<proof prover="1" timelimit="1"><result status="valid" time="0.441338" steps="70290"/></proof>
|
2024-01-24 14:50:53 +01:00
|
|
|
</goal>
|
|
|
|
|
</transf>
|
|
|
|
|
</goal>
|
|
|
|
|
</theory>
|
2024-01-23 20:59:33 +01:00
|
|
|
</file>
|
|
|
|
|
</why3session>
|