Commit 7a7fccd6 authored by Andrei Paskevich's avatar Andrei Paskevich

update sessions

parent d2cc224b
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -8,6 +8,10 @@
<prover
id="1"
name="Z3"
version="2.19"/>
<prover
id="2"
name="Z3"
version="3.2"/>
<file
name="../algo64.mlw"
......@@ -24,10 +28,10 @@
locfile="../algo64.mlw"
loclnum="37" loccnumb="10" loccnume="19"
expl="VC for quicksort"
sum="3414d2e4642fa780732c72dd37a022a7"
sum="c26bc5966c3e6167ba89ac93c22c1c44"
proved="true"
expanded="true"
shape="iainfix &lt;V1V2asorted_subV8V1ainfix +V2c1Aapermut_subV3V8V1ainfix +V2c1Aapermut_subV7V8V1ainfix +V2c1Iasorted_subV8V5ainfix +V2c1Aapermut_subV7V8V5ainfix +V2c1FAainfix &lt;V2V0Aainfix &lt;=V5V2Aainfix &lt;=c0V5Aainfix &lt;ainfix -V2V5ainfix -V2V1Aainfix &lt;=c0ainfix -V2V1Aapermut_subV6V7V1ainfix +V2c1Iasorted_subV7V1ainfix +V4c1Aapermut_subV6V7V1ainfix +V4c1FAainfix &lt;V4V0Aainfix &lt;=V1V4Aainfix &lt;=c0V1Aainfix &lt;ainfix -V4V1ainfix -V2V1Aainfix &lt;=c0ainfix -V2V1Iainfix &gt;=agetV6V10V9Iainfix &lt;=V10V2Aainfix &lt;=V5V10FAainfix =agetV6V11V9Iainfix &lt;V11V5Aainfix &lt;V4V11FAainfix &lt;=agetV6V12V9Iainfix &lt;=V12V4Aainfix &lt;=V1V12FEAapermut_subV3V6V1ainfix +V2c1Aainfix &lt;=V5V2Aainfix &lt;V4V5Aainfix &lt;=V1V4FAainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1asorted_subV3V1ainfix +V2c1Aapermut_subV3V3V1ainfix +V2c1Iainfix &lt;V2V0Aainfix &lt;=V1V2Aainfix &lt;=c0V1FF">
shape="iainfix &lt;V1V2asorted_subV8V1ainfix +V2c1Aapermut_subV3V8V1ainfix +V2c1Aapermut_subV7V8V1ainfix +V2c1Iasorted_subV8V5ainfix +V2c1Aapermut_subV7V8V5ainfix +V2c1Aainfix &lt;=c0V0FAainfix &lt;V2V0Aainfix &lt;=V5V2Aainfix &lt;=c0V5Aainfix &lt;ainfix -V2V5ainfix -V2V1Aainfix &lt;=c0ainfix -V2V1Aapermut_subV6V7V1ainfix +V2c1Iasorted_subV7V1ainfix +V4c1Aapermut_subV6V7V1ainfix +V4c1Aainfix &lt;=c0V0FAainfix &lt;V4V0Aainfix &lt;=V1V4Aainfix &lt;=c0V1Aainfix &lt;ainfix -V4V1ainfix -V2V1Aainfix &lt;=c0ainfix -V2V1Iainfix &gt;=agetV6V10V9Iainfix &lt;=V10V2Aainfix &lt;=V5V10FAainfix =agetV6V11V9Iainfix &lt;V11V5Aainfix &lt;V4V11FAainfix &lt;=agetV6V12V9Iainfix &lt;=V12V4Aainfix &lt;=V1V12FEAapermut_subV3V6V1ainfix +V2c1Aainfix &lt;=V5V2Aainfix &lt;V4V5Aainfix &lt;=V1V4Aainfix &lt;=c0V0FAainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1asorted_subV3V1ainfix +V2c1Aapermut_subV3V3V1ainfix +V2c1Iainfix &lt;V2V0Aainfix &lt;=V1V2Aainfix &lt;=c0V1Aainfix &lt;=c0V0FF">
<label
name="expl:VC for quicksort"/>
<transf
......@@ -39,10 +43,10 @@
locfile="../algo64.mlw"
loclnum="37" loccnumb="10" loccnume="19"
expl="1. precondition"
sum="4de9aa82739070bbf8bf3bcbb4288d7e"
sum="ad96be9342b2921e0685a3c71ef2641e"
proved="true"
expanded="true"
shape="ainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V1V2Aainfix &lt;=c0V1FF">
shape="ainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V1V2Aainfix &lt;=c0V1Aainfix &lt;=c0V0FF">
<label
name="expl:VC for quicksort"/>
<proof
......@@ -59,10 +63,10 @@
locfile="../algo64.mlw"
loclnum="37" loccnumb="10" loccnume="19"
expl="2. variant decrease"
sum="fe9acb54daf59c069016af2650eb7b8c"
sum="c2762e2c2330783f29e00bd99138cf3d"
proved="true"
expanded="true"
shape="ainfix &lt;ainfix -V4V1ainfix -V2V1Aainfix &lt;=c0ainfix -V2V1Iainfix &gt;=agetV6V8V7Iainfix &lt;=V8V2Aainfix &lt;=V5V8FAainfix =agetV6V9V7Iainfix &lt;V9V5Aainfix &lt;V4V9FAainfix &lt;=agetV6V10V7Iainfix &lt;=V10V4Aainfix &lt;=V1V10FEAapermut_subV3V6V1ainfix +V2c1Aainfix &lt;=V5V2Aainfix &lt;V4V5Aainfix &lt;=V1V4FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V1V2Aainfix &lt;=c0V1FF">
shape="ainfix &lt;ainfix -V4V1ainfix -V2V1Aainfix &lt;=c0ainfix -V2V1Iainfix &gt;=agetV6V8V7Iainfix &lt;=V8V2Aainfix &lt;=V5V8FAainfix =agetV6V9V7Iainfix &lt;V9V5Aainfix &lt;V4V9FAainfix &lt;=agetV6V10V7Iainfix &lt;=V10V4Aainfix &lt;=V1V10FEAapermut_subV3V6V1ainfix +V2c1Aainfix &lt;=V5V2Aainfix &lt;V4V5Aainfix &lt;=V1V4Aainfix &lt;=c0V0FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V1V2Aainfix &lt;=c0V1Aainfix &lt;=c0V0FF">
<label
name="expl:VC for quicksort"/>
<proof
......@@ -79,10 +83,10 @@
locfile="../algo64.mlw"
loclnum="37" loccnumb="10" loccnume="19"
expl="3. precondition"
sum="f7e560c1345b399daf76c46f99ad9c76"
sum="daf171ad4c114ee30fbbf1349d2b7807"
proved="true"
expanded="true"
shape="ainfix &lt;V4V0Aainfix &lt;=V1V4Aainfix &lt;=c0V1Iainfix &gt;=agetV6V8V7Iainfix &lt;=V8V2Aainfix &lt;=V5V8FAainfix =agetV6V9V7Iainfix &lt;V9V5Aainfix &lt;V4V9FAainfix &lt;=agetV6V10V7Iainfix &lt;=V10V4Aainfix &lt;=V1V10FEAapermut_subV3V6V1ainfix +V2c1Aainfix &lt;=V5V2Aainfix &lt;V4V5Aainfix &lt;=V1V4FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V1V2Aainfix &lt;=c0V1FF">
shape="ainfix &lt;V4V0Aainfix &lt;=V1V4Aainfix &lt;=c0V1Iainfix &gt;=agetV6V8V7Iainfix &lt;=V8V2Aainfix &lt;=V5V8FAainfix =agetV6V9V7Iainfix &lt;V9V5Aainfix &lt;V4V9FAainfix &lt;=agetV6V10V7Iainfix &lt;=V10V4Aainfix &lt;=V1V10FEAapermut_subV3V6V1ainfix +V2c1Aainfix &lt;=V5V2Aainfix &lt;V4V5Aainfix &lt;=V1V4Aainfix &lt;=c0V0FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V1V2Aainfix &lt;=c0V1Aainfix &lt;=c0V0FF">
<label
name="expl:VC for quicksort"/>
<proof
......@@ -99,10 +103,10 @@
locfile="../algo64.mlw"
loclnum="37" loccnumb="10" loccnume="19"
expl="4. assertion"
sum="78c6b7bf60012475b3c18c0503798128"
sum="51198e09ed8e178b882a49d8594b4e26"
proved="true"
expanded="true"
shape="apermut_subV6V7V1ainfix +V2c1Iasorted_subV7V1ainfix +V4c1Aapermut_subV6V7V1ainfix +V4c1FIainfix &lt;V4V0Aainfix &lt;=V1V4Aainfix &lt;=c0V1Iainfix &gt;=agetV6V9V8Iainfix &lt;=V9V2Aainfix &lt;=V5V9FAainfix =agetV6V10V8Iainfix &lt;V10V5Aainfix &lt;V4V10FAainfix &lt;=agetV6V11V8Iainfix &lt;=V11V4Aainfix &lt;=V1V11FEAapermut_subV3V6V1ainfix +V2c1Aainfix &lt;=V5V2Aainfix &lt;V4V5Aainfix &lt;=V1V4FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V1V2Aainfix &lt;=c0V1FF">
shape="apermut_subV6V7V1ainfix +V2c1Iasorted_subV7V1ainfix +V4c1Aapermut_subV6V7V1ainfix +V4c1Aainfix &lt;=c0V0FIainfix &lt;V4V0Aainfix &lt;=V1V4Aainfix &lt;=c0V1Iainfix &gt;=agetV6V9V8Iainfix &lt;=V9V2Aainfix &lt;=V5V9FAainfix =agetV6V10V8Iainfix &lt;V10V5Aainfix &lt;V4V10FAainfix &lt;=agetV6V11V8Iainfix &lt;=V11V4Aainfix &lt;=V1V11FEAapermut_subV3V6V1ainfix +V2c1Aainfix &lt;=V5V2Aainfix &lt;V4V5Aainfix &lt;=V1V4Aainfix &lt;=c0V0FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V1V2Aainfix &lt;=c0V1Aainfix &lt;=c0V0FF">
<label
name="expl:VC for quicksort"/>
<proof
......@@ -119,10 +123,10 @@
locfile="../algo64.mlw"
loclnum="37" loccnumb="10" loccnume="19"
expl="5. variant decrease"
sum="4789ff6d40269d9aee44e92bc732ab07"
sum="50ec939b533e894dfb76caadddc061f7"
proved="true"
expanded="true"
shape="ainfix &lt;ainfix -V2V5ainfix -V2V1Aainfix &lt;=c0ainfix -V2V1Iapermut_subV6V7V1ainfix +V2c1Iasorted_subV7V1ainfix +V4c1Aapermut_subV6V7V1ainfix +V4c1FIainfix &lt;V4V0Aainfix &lt;=V1V4Aainfix &lt;=c0V1Iainfix &gt;=agetV6V9V8Iainfix &lt;=V9V2Aainfix &lt;=V5V9FAainfix =agetV6V10V8Iainfix &lt;V10V5Aainfix &lt;V4V10FAainfix &lt;=agetV6V11V8Iainfix &lt;=V11V4Aainfix &lt;=V1V11FEAapermut_subV3V6V1ainfix +V2c1Aainfix &lt;=V5V2Aainfix &lt;V4V5Aainfix &lt;=V1V4FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V1V2Aainfix &lt;=c0V1FF">
shape="ainfix &lt;ainfix -V2V5ainfix -V2V1Aainfix &lt;=c0ainfix -V2V1Iapermut_subV6V7V1ainfix +V2c1Iasorted_subV7V1ainfix +V4c1Aapermut_subV6V7V1ainfix +V4c1Aainfix &lt;=c0V0FIainfix &lt;V4V0Aainfix &lt;=V1V4Aainfix &lt;=c0V1Iainfix &gt;=agetV6V9V8Iainfix &lt;=V9V2Aainfix &lt;=V5V9FAainfix =agetV6V10V8Iainfix &lt;V10V5Aainfix &lt;V4V10FAainfix &lt;=agetV6V11V8Iainfix &lt;=V11V4Aainfix &lt;=V1V11FEAapermut_subV3V6V1ainfix +V2c1Aainfix &lt;=V5V2Aainfix &lt;V4V5Aainfix &lt;=V1V4Aainfix &lt;=c0V0FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V1V2Aainfix &lt;=c0V1Aainfix &lt;=c0V0FF">
<label
name="expl:VC for quicksort"/>
<proof
......@@ -139,10 +143,10 @@
locfile="../algo64.mlw"
loclnum="37" loccnumb="10" loccnume="19"
expl="6. precondition"
sum="031be5673d647ec9954456c5cc75b69c"
sum="9b87b4398347ac606d86452d7fde33dd"
proved="true"
expanded="true"
shape="ainfix &lt;V2V0Aainfix &lt;=V5V2Aainfix &lt;=c0V5Iapermut_subV6V7V1ainfix +V2c1Iasorted_subV7V1ainfix +V4c1Aapermut_subV6V7V1ainfix +V4c1FIainfix &lt;V4V0Aainfix &lt;=V1V4Aainfix &lt;=c0V1Iainfix &gt;=agetV6V9V8Iainfix &lt;=V9V2Aainfix &lt;=V5V9FAainfix =agetV6V10V8Iainfix &lt;V10V5Aainfix &lt;V4V10FAainfix &lt;=agetV6V11V8Iainfix &lt;=V11V4Aainfix &lt;=V1V11FEAapermut_subV3V6V1ainfix +V2c1Aainfix &lt;=V5V2Aainfix &lt;V4V5Aainfix &lt;=V1V4FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V1V2Aainfix &lt;=c0V1FF">
shape="ainfix &lt;V2V0Aainfix &lt;=V5V2Aainfix &lt;=c0V5Iapermut_subV6V7V1ainfix +V2c1Iasorted_subV7V1ainfix +V4c1Aapermut_subV6V7V1ainfix +V4c1Aainfix &lt;=c0V0FIainfix &lt;V4V0Aainfix &lt;=V1V4Aainfix &lt;=c0V1Iainfix &gt;=agetV6V9V8Iainfix &lt;=V9V2Aainfix &lt;=V5V9FAainfix =agetV6V10V8Iainfix &lt;V10V5Aainfix &lt;V4V10FAainfix &lt;=agetV6V11V8Iainfix &lt;=V11V4Aainfix &lt;=V1V11FEAapermut_subV3V6V1ainfix +V2c1Aainfix &lt;=V5V2Aainfix &lt;V4V5Aainfix &lt;=V1V4Aainfix &lt;=c0V0FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V1V2Aainfix &lt;=c0V1Aainfix &lt;=c0V0FF">
<label
name="expl:VC for quicksort"/>
<proof
......@@ -159,10 +163,10 @@
locfile="../algo64.mlw"
loclnum="37" loccnumb="10" loccnume="19"
expl="7. assertion"
sum="15335218c0920c2b27f53084e898652d"
sum="c15fe3f61dc8c59b3e1d38de7c034a00"
proved="true"
expanded="true"
shape="apermut_subV7V8V1ainfix +V2c1Iasorted_subV8V5ainfix +V2c1Aapermut_subV7V8V5ainfix +V2c1FIainfix &lt;V2V0Aainfix &lt;=V5V2Aainfix &lt;=c0V5Iapermut_subV6V7V1ainfix +V2c1Iasorted_subV7V1ainfix +V4c1Aapermut_subV6V7V1ainfix +V4c1FIainfix &lt;V4V0Aainfix &lt;=V1V4Aainfix &lt;=c0V1Iainfix &gt;=agetV6V10V9Iainfix &lt;=V10V2Aainfix &lt;=V5V10FAainfix =agetV6V11V9Iainfix &lt;V11V5Aainfix &lt;V4V11FAainfix &lt;=agetV6V12V9Iainfix &lt;=V12V4Aainfix &lt;=V1V12FEAapermut_subV3V6V1ainfix +V2c1Aainfix &lt;=V5V2Aainfix &lt;V4V5Aainfix &lt;=V1V4FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V1V2Aainfix &lt;=c0V1FF">
shape="apermut_subV7V8V1ainfix +V2c1Iasorted_subV8V5ainfix +V2c1Aapermut_subV7V8V5ainfix +V2c1Aainfix &lt;=c0V0FIainfix &lt;V2V0Aainfix &lt;=V5V2Aainfix &lt;=c0V5Iapermut_subV6V7V1ainfix +V2c1Iasorted_subV7V1ainfix +V4c1Aapermut_subV6V7V1ainfix +V4c1Aainfix &lt;=c0V0FIainfix &lt;V4V0Aainfix &lt;=V1V4Aainfix &lt;=c0V1Iainfix &gt;=agetV6V10V9Iainfix &lt;=V10V2Aainfix &lt;=V5V10FAainfix =agetV6V11V9Iainfix &lt;V11V5Aainfix &lt;V4V11FAainfix &lt;=agetV6V12V9Iainfix &lt;=V12V4Aainfix &lt;=V1V12FEAapermut_subV3V6V1ainfix +V2c1Aainfix &lt;=V5V2Aainfix &lt;V4V5Aainfix &lt;=V1V4Aainfix &lt;=c0V0FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V1V2Aainfix &lt;=c0V1Aainfix &lt;=c0V0FF">
<label
name="expl:VC for quicksort"/>
<proof
......@@ -179,10 +183,10 @@
locfile="../algo64.mlw"
loclnum="37" loccnumb="10" loccnume="19"
expl="8. postcondition"
sum="0e475c7b87ff418a971cf0077f779587"
sum="07c91b9adda11c3ba9df6c29273f0a58"
proved="true"
expanded="true"
shape="apermut_subV3V8V1ainfix +V2c1Iapermut_subV7V8V1ainfix +V2c1Iasorted_subV8V5ainfix +V2c1Aapermut_subV7V8V5ainfix +V2c1FIainfix &lt;V2V0Aainfix &lt;=V5V2Aainfix &lt;=c0V5Iapermut_subV6V7V1ainfix +V2c1Iasorted_subV7V1ainfix +V4c1Aapermut_subV6V7V1ainfix +V4c1FIainfix &lt;V4V0Aainfix &lt;=V1V4Aainfix &lt;=c0V1Iainfix &gt;=agetV6V10V9Iainfix &lt;=V10V2Aainfix &lt;=V5V10FAainfix =agetV6V11V9Iainfix &lt;V11V5Aainfix &lt;V4V11FAainfix &lt;=agetV6V12V9Iainfix &lt;=V12V4Aainfix &lt;=V1V12FEAapermut_subV3V6V1ainfix +V2c1Aainfix &lt;=V5V2Aainfix &lt;V4V5Aainfix &lt;=V1V4FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V1V2Aainfix &lt;=c0V1FF">
shape="apermut_subV3V8V1ainfix +V2c1Iapermut_subV7V8V1ainfix +V2c1Iasorted_subV8V5ainfix +V2c1Aapermut_subV7V8V5ainfix +V2c1Aainfix &lt;=c0V0FIainfix &lt;V2V0Aainfix &lt;=V5V2Aainfix &lt;=c0V5Iapermut_subV6V7V1ainfix +V2c1Iasorted_subV7V1ainfix +V4c1Aapermut_subV6V7V1ainfix +V4c1Aainfix &lt;=c0V0FIainfix &lt;V4V0Aainfix &lt;=V1V4Aainfix &lt;=c0V1Iainfix &gt;=agetV6V10V9Iainfix &lt;=V10V2Aainfix &lt;=V5V10FAainfix =agetV6V11V9Iainfix &lt;V11V5Aainfix &lt;V4V11FAainfix &lt;=agetV6V12V9Iainfix &lt;=V12V4Aainfix &lt;=V1V12FEAapermut_subV3V6V1ainfix +V2c1Aainfix &lt;=V5V2Aainfix &lt;V4V5Aainfix &lt;=V1V4Aainfix &lt;=c0V0FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V1V2Aainfix &lt;=c0V1Aainfix &lt;=c0V0FF">
<label
name="expl:VC for quicksort"/>
<proof
......@@ -199,19 +203,27 @@
locfile="../algo64.mlw"
loclnum="37" loccnumb="10" loccnume="19"
expl="9. postcondition"
sum="3933512821bb054f623f5f2b6415aa88"
sum="1dc0e11fbb67f925ca616d57b5836c97"
proved="true"
expanded="true"
shape="asorted_subV8V1ainfix +V2c1Iapermut_subV7V8V1ainfix +V2c1Iasorted_subV8V5ainfix +V2c1Aapermut_subV7V8V5ainfix +V2c1FIainfix &lt;V2V0Aainfix &lt;=V5V2Aainfix &lt;=c0V5Iapermut_subV6V7V1ainfix +V2c1Iasorted_subV7V1ainfix +V4c1Aapermut_subV6V7V1ainfix +V4c1FIainfix &lt;V4V0Aainfix &lt;=V1V4Aainfix &lt;=c0V1Iainfix &gt;=agetV6V10V9Iainfix &lt;=V10V2Aainfix &lt;=V5V10FAainfix =agetV6V11V9Iainfix &lt;V11V5Aainfix &lt;V4V11FAainfix &lt;=agetV6V12V9Iainfix &lt;=V12V4Aainfix &lt;=V1V12FEAapermut_subV3V6V1ainfix +V2c1Aainfix &lt;=V5V2Aainfix &lt;V4V5Aainfix &lt;=V1V4FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V1V2Aainfix &lt;=c0V1FF">
shape="asorted_subV8V1ainfix +V2c1Iapermut_subV7V8V1ainfix +V2c1Iasorted_subV8V5ainfix +V2c1Aapermut_subV7V8V5ainfix +V2c1Aainfix &lt;=c0V0FIainfix &lt;V2V0Aainfix &lt;=V5V2Aainfix &lt;=c0V5Iapermut_subV6V7V1ainfix +V2c1Iasorted_subV7V1ainfix +V4c1Aapermut_subV6V7V1ainfix +V4c1Aainfix &lt;=c0V0FIainfix &lt;V4V0Aainfix &lt;=V1V4Aainfix &lt;=c0V1Iainfix &gt;=agetV6V10V9Iainfix &lt;=V10V2Aainfix &lt;=V5V10FAainfix =agetV6V11V9Iainfix &lt;V11V5Aainfix &lt;V4V11FAainfix &lt;=agetV6V12V9Iainfix &lt;=V12V4Aainfix &lt;=V1V12FEAapermut_subV3V6V1ainfix +V2c1Aainfix &lt;=V5V2Aainfix &lt;V4V5Aainfix &lt;=V1V4Aainfix &lt;=c0V0FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V1V2Aainfix &lt;=c0V1Aainfix &lt;=c0V0FF">
<label
name="expl:VC for quicksort"/>
<proof
prover="1"
timelimit="17"
timelimit="5"
memlimit="1000"
obsolete="false"
archived="false">
<result status="valid" time="0.50"/>
</proof>
<proof
prover="2"
timelimit="50"
memlimit="1000"
obsolete="false"
archived="false">
<result status="valid" time="1.32"/>
<result status="valid" time="36.92"/>
</proof>
</goal>
<goal
......@@ -219,10 +231,10 @@
locfile="../algo64.mlw"
loclnum="37" loccnumb="10" loccnume="19"
expl="10. postcondition"
sum="57c1b8d1dad49efee4f1794fdb1d6602"
sum="ce4b3b1dc17f2b2a7f38c09b07e25546"
proved="true"
expanded="true"
shape="apermut_subV3V3V1ainfix +V2c1Iainfix &lt;V1V2NIainfix &lt;V2V0Aainfix &lt;=V1V2Aainfix &lt;=c0V1FF">
shape="apermut_subV3V3V1ainfix +V2c1Iainfix &lt;V1V2NIainfix &lt;V2V0Aainfix &lt;=V1V2Aainfix &lt;=c0V1Aainfix &lt;=c0V0FF">
<label
name="expl:VC for quicksort"/>
<proof
......@@ -239,10 +251,10 @@
locfile="../algo64.mlw"
loclnum="37" loccnumb="10" loccnume="19"
expl="11. postcondition"
sum="87272b6861af90e3b0e54ec76afafa77"
sum="acef80efe892965afead694a6b4d2392"
proved="true"
expanded="true"
shape="asorted_subV3V1ainfix +V2c1Iainfix &lt;V1V2NIainfix &lt;V2V0Aainfix &lt;=V1V2Aainfix &lt;=c0V1FF">
shape="asorted_subV3V1ainfix +V2c1Iainfix &lt;V1V2NIainfix &lt;V2V0Aainfix &lt;=V1V2Aainfix &lt;=c0V1Aainfix &lt;=c0V0FF">
<label
name="expl:VC for quicksort"/>
<proof
......
......@@ -24,10 +24,10 @@
locfile="../algo65.mlw"
loclnum="36" loccnumb="10" loccnume="14"
expl="VC for find"
sum="de03c8eb627fff049534bd5ac1a9a2bf"
sum="f1f22b9d9b67c84b646b28c6b3dfe1e5"
proved="true"
expanded="true"
shape="iainfix &lt;V1V2iainfix &lt;=V3V5iainfix &lt;=V6V3ainfix &lt;=agetV9V3agetV9V10Iainfix &lt;=V10V2Aainfix &lt;=V3V10FAainfix &lt;=agetV9V11agetV9V3Iainfix &lt;=V11V3Aainfix &lt;=V1V11FAapermut_subV4V9V1ainfix +V2c1Iainfix &lt;=agetV9V3agetV9V12Iainfix &lt;=V12V2Aainfix &lt;=V3V12FAainfix &lt;=agetV9V13agetV9V3Iainfix &lt;=V13V3Aainfix &lt;=V6V13FAapermut_subV8V9V6ainfix +V2c1FAainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V6V3Aainfix &lt;=c0V6Aainfix &lt;ainfix -V2V6ainfix -V2V1Aainfix &lt;=c0ainfix -V2V1ainfix &lt;=agetV8V3agetV8V14Iainfix &lt;=V14V2Aainfix &lt;=V3V14FAainfix &lt;=agetV8V15agetV8V3Iainfix &lt;=V15V3Aainfix &lt;=V1V15FAapermut_subV4V8V1ainfix +V2c1Aapermut_subV7V8V1ainfix +V2c1Iainfix &lt;=agetV8V3agetV8V16Iainfix &lt;=V16V5Aainfix &lt;=V3V16FAainfix &lt;=agetV8V17agetV8V3Iainfix &lt;=V17V3Aainfix &lt;=V1V17FAapermut_subV7V8V1ainfix +V5c1FAainfix &lt;V5V0Aainfix &lt;=V3V5Aainfix &lt;=V1V3Aainfix &lt;=c0V1Aainfix &lt;ainfix -V5V1ainfix -V2V1Aainfix &lt;=c0ainfix -V2V1iainfix &lt;=V6V3ainfix &lt;=agetV18V3agetV18V19Iainfix &lt;=V19V2Aainfix &lt;=V3V19FAainfix &lt;=agetV18V20agetV18V3Iainfix &lt;=V20V3Aainfix &lt;=V1V20FAapermut_subV4V18V1ainfix +V2c1Iainfix &lt;=agetV18V3agetV18V21Iainfix &lt;=V21V2Aainfix &lt;=V3V21FAainfix &lt;=agetV18V22agetV18V3Iainfix &lt;=V22V3Aainfix &lt;=V6V22FAapermut_subV7V18V6ainfix +V2c1FAainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V6V3Aainfix &lt;=c0V6Aainfix &lt;ainfix -V2V6ainfix -V2V1Aainfix &lt;=c0ainfix -V2V1ainfix &lt;=agetV7V3agetV7V23Iainfix &lt;=V23V2Aainfix &lt;=V3V23FAainfix &lt;=agetV7V24agetV7V3Iainfix &lt;=V24V3Aainfix &lt;=V1V24FAapermut_subV4V7V1ainfix +V2c1Aapermut_subV7V7V1ainfix +V2c1Aapermut_subV4V7V1ainfix +V2c1Iainfix &gt;=agetV7V26V25Iainfix &lt;=V26V2Aainfix &lt;=V6V26FAainfix =agetV7V27V25Iainfix &lt;V27V6Aainfix &lt;V5V27FAainfix &lt;=agetV7V28V25Iainfix &lt;=V28V5Aainfix &lt;=V1V28FEAapermut_subV4V7V1ainfix +V2c1Aainfix &lt;=V6V2Aainfix &lt;V5V6Aainfix &lt;=V1V5FAainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1ainfix &lt;=agetV4V3agetV4V29Iainfix &lt;=V29V2Aainfix &lt;=V3V29FAainfix &lt;=agetV4V30agetV4V3Iainfix &lt;=V30V3Aainfix &lt;=V1V30FAapermut_subV4V4V1ainfix +V2c1Iainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V1V3Aainfix &lt;=c0V1FF">
shape="iainfix &lt;V1V2iainfix &lt;=V3V5iainfix &lt;=V6V3ainfix &lt;=agetV9V3agetV9V10Iainfix &lt;=V10V2Aainfix &lt;=V3V10FAainfix &lt;=agetV9V11agetV9V3Iainfix &lt;=V11V3Aainfix &lt;=V1V11FAapermut_subV4V9V1ainfix +V2c1Iainfix &lt;=agetV9V3agetV9V12Iainfix &lt;=V12V2Aainfix &lt;=V3V12FAainfix &lt;=agetV9V13agetV9V3Iainfix &lt;=V13V3Aainfix &lt;=V6V13FAapermut_subV8V9V6ainfix +V2c1Aainfix &lt;=c0V0FAainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V6V3Aainfix &lt;=c0V6Aainfix &lt;ainfix -V2V6ainfix -V2V1Aainfix &lt;=c0ainfix -V2V1ainfix &lt;=agetV8V3agetV8V14Iainfix &lt;=V14V2Aainfix &lt;=V3V14FAainfix &lt;=agetV8V15agetV8V3Iainfix &lt;=V15V3Aainfix &lt;=V1V15FAapermut_subV4V8V1ainfix +V2c1Aapermut_subV7V8V1ainfix +V2c1Iainfix &lt;=agetV8V3agetV8V16Iainfix &lt;=V16V5Aainfix &lt;=V3V16FAainfix &lt;=agetV8V17agetV8V3Iainfix &lt;=V17V3Aainfix &lt;=V1V17FAapermut_subV7V8V1ainfix +V5c1Aainfix &lt;=c0V0FAainfix &lt;V5V0Aainfix &lt;=V3V5Aainfix &lt;=V1V3Aainfix &lt;=c0V1Aainfix &lt;ainfix -V5V1ainfix -V2V1Aainfix &lt;=c0ainfix -V2V1iainfix &lt;=V6V3ainfix &lt;=agetV18V3agetV18V19Iainfix &lt;=V19V2Aainfix &lt;=V3V19FAainfix &lt;=agetV18V20agetV18V3Iainfix &lt;=V20V3Aainfix &lt;=V1V20FAapermut_subV4V18V1ainfix +V2c1Iainfix &lt;=agetV18V3agetV18V21Iainfix &lt;=V21V2Aainfix &lt;=V3V21FAainfix &lt;=agetV18V22agetV18V3Iainfix &lt;=V22V3Aainfix &lt;=V6V22FAapermut_subV7V18V6ainfix +V2c1Aainfix &lt;=c0V0FAainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V6V3Aainfix &lt;=c0V6Aainfix &lt;ainfix -V2V6ainfix -V2V1Aainfix &lt;=c0ainfix -V2V1ainfix &lt;=agetV7V3agetV7V23Iainfix &lt;=V23V2Aainfix &lt;=V3V23FAainfix &lt;=agetV7V24agetV7V3Iainfix &lt;=V24V3Aainfix &lt;=V1V24FAapermut_subV4V7V1ainfix +V2c1Aapermut_subV7V7V1ainfix +V2c1Aapermut_subV4V7V1ainfix +V2c1Iainfix &gt;=agetV7V26V25Iainfix &lt;=V26V2Aainfix &lt;=V6V26FAainfix =agetV7V27V25Iainfix &lt;V27V6Aainfix &lt;V5V27FAainfix &lt;=agetV7V28V25Iainfix &lt;=V28V5Aainfix &lt;=V1V28FEAapermut_subV4V7V1ainfix +V2c1Aainfix &lt;=V6V2Aainfix &lt;V5V6Aainfix &lt;=V1V5Aainfix &lt;=c0V0FAainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1ainfix &lt;=agetV4V3agetV4V29Iainfix &lt;=V29V2Aainfix &lt;=V3V29FAainfix &lt;=agetV4V30agetV4V3Iainfix &lt;=V30V3Aainfix &lt;=V1V30FAapermut_subV4V4V1ainfix +V2c1Iainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V1V3Aainfix &lt;=c0V1Aainfix &lt;=c0V0FF">
<label
name="expl:VC for find"/>
<transf
......@@ -39,10 +39,10 @@
locfile="../algo65.mlw"
loclnum="36" loccnumb="10" loccnume="14"
expl="1. precondition"
sum="1bf0b8a6ec37770fa8f6f6f5d90584c1"
sum="544af5e1dcb49410e697fab0e0328765"
proved="true"
expanded="true"
shape="ainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V1V3Aainfix &lt;=c0V1FF">
shape="ainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V1V3Aainfix &lt;=c0V1Aainfix &lt;=c0V0FF">
<label
name="expl:VC for find"/>
<proof
......@@ -59,10 +59,10 @@
locfile="../algo65.mlw"
loclnum="36" loccnumb="10" loccnume="14"
expl="2. assertion"
sum="ab34765285d7c9b874b9ade31d99fb52"
sum="dc51f07bd9bf834ef69014d699bac7d2"
proved="true"
expanded="true"
shape="apermut_subV4V7V1ainfix +V2c1Iainfix &gt;=agetV7V9V8Iainfix &lt;=V9V2Aainfix &lt;=V6V9FAainfix =agetV7V10V8Iainfix &lt;V10V6Aainfix &lt;V5V10FAainfix &lt;=agetV7V11V8Iainfix &lt;=V11V5Aainfix &lt;=V1V11FEAapermut_subV4V7V1ainfix +V2c1Aainfix &lt;=V6V2Aainfix &lt;V5V6Aainfix &lt;=V1V5FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V1V3Aainfix &lt;=c0V1FF">
shape="apermut_subV4V7V1ainfix +V2c1Iainfix &gt;=agetV7V9V8Iainfix &lt;=V9V2Aainfix &lt;=V6V9FAainfix =agetV7V10V8Iainfix &lt;V10V6Aainfix &lt;V5V10FAainfix &lt;=agetV7V11V8Iainfix &lt;=V11V5Aainfix &lt;=V1V11FEAapermut_subV4V7V1ainfix +V2c1Aainfix &lt;=V6V2Aainfix &lt;V5V6Aainfix &lt;=V1V5Aainfix &lt;=c0V0FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V1V3Aainfix &lt;=c0V1Aainfix &lt;=c0V0FF">
<label
name="expl:VC for find"/>
<proof
......@@ -79,10 +79,10 @@
locfile="../algo65.mlw"
loclnum="36" loccnumb="10" loccnume="14"
expl="3. variant decrease"
sum="dfc82b6cb1e28584d00164a3607eb905"
sum="73a4c57ed0dea4460c7e52a58122f0b8"
proved="true"
expanded="true"
shape="ainfix &lt;ainfix -V5V1ainfix -V2V1Aainfix &lt;=c0ainfix -V2V1Iainfix &lt;=V3V5Iapermut_subV4V7V1ainfix +V2c1Iainfix &gt;=agetV7V9V8Iainfix &lt;=V9V2Aainfix &lt;=V6V9FAainfix =agetV7V10V8Iainfix &lt;V10V6Aainfix &lt;V5V10FAainfix &lt;=agetV7V11V8Iainfix &lt;=V11V5Aainfix &lt;=V1V11FEAapermut_subV4V7V1ainfix +V2c1Aainfix &lt;=V6V2Aainfix &lt;V5V6Aainfix &lt;=V1V5FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V1V3Aainfix &lt;=c0V1FF">
shape="ainfix &lt;ainfix -V5V1ainfix -V2V1Aainfix &lt;=c0ainfix -V2V1Iainfix &lt;=V3V5Iapermut_subV4V7V1ainfix +V2c1Iainfix &gt;=agetV7V9V8Iainfix &lt;=V9V2Aainfix &lt;=V6V9FAainfix =agetV7V10V8Iainfix &lt;V10V6Aainfix &lt;V5V10FAainfix &lt;=agetV7V11V8Iainfix &lt;=V11V5Aainfix &lt;=V1V11FEAapermut_subV4V7V1ainfix +V2c1Aainfix &lt;=V6V2Aainfix &lt;V5V6Aainfix &lt;=V1V5Aainfix &lt;=c0V0FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V1V3Aainfix &lt;=c0V1Aainfix &lt;=c0V0FF">
<label
name="expl:VC for find"/>
<proof
......@@ -99,10 +99,10 @@
locfile="../algo65.mlw"
loclnum="36" loccnumb="10" loccnume="14"
expl="4. precondition"
sum="9fd3c61ec1a92269292a445a8dff2fed"
sum="3265c8bea6d3b253f8f9fced8a206b63"
proved="true"
expanded="true"
shape="ainfix &lt;V5V0Aainfix &lt;=V3V5Aainfix &lt;=V1V3Aainfix &lt;=c0V1Iainfix &lt;=V3V5Iapermut_subV4V7V1ainfix +V2c1Iainfix &gt;=agetV7V9V8Iainfix &lt;=V9V2Aainfix &lt;=V6V9FAainfix =agetV7V10V8Iainfix &lt;V10V6Aainfix &lt;V5V10FAainfix &lt;=agetV7V11V8Iainfix &lt;=V11V5Aainfix &lt;=V1V11FEAapermut_subV4V7V1ainfix +V2c1Aainfix &lt;=V6V2Aainfix &lt;V5V6Aainfix &lt;=V1V5FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V1V3Aainfix &lt;=c0V1FF">
shape="ainfix &lt;V5V0Aainfix &lt;=V3V5Aainfix &lt;=V1V3Aainfix &lt;=c0V1Iainfix &lt;=V3V5Iapermut_subV4V7V1ainfix +V2c1Iainfix &gt;=agetV7V9V8Iainfix &lt;=V9V2Aainfix &lt;=V6V9FAainfix =agetV7V10V8Iainfix &lt;V10V6Aainfix &lt;V5V10FAainfix &lt;=agetV7V11V8Iainfix &lt;=V11V5Aainfix &lt;=V1V11FEAapermut_subV4V7V1ainfix +V2c1Aainfix &lt;=V6V2Aainfix &lt;V5V6Aainfix &lt;=V1V5Aainfix &lt;=c0V0FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V1V3Aainfix &lt;=c0V1Aainfix &lt;=c0V0FF">
<label
name="expl:VC for find"/>
<proof
......@@ -119,10 +119,10 @@
locfile="../algo65.mlw"
loclnum="36" loccnumb="10" loccnume="14"
expl="5. assertion"
sum="94d1ed4e103e657acead433a1fd57c19"
sum="6eea3ae7c0d643c868646d6a90cecbf6"
proved="true"
expanded="true"
shape="apermut_subV7V8V1ainfix +V2c1Iainfix &lt;=agetV8V3agetV8V9Iainfix &lt;=V9V5Aainfix &lt;=V3V9FAainfix &lt;=agetV8V10agetV8V3Iainfix &lt;=V10V3Aainfix &lt;=V1V10FAapermut_subV7V8V1ainfix +V5c1FIainfix &lt;V5V0Aainfix &lt;=V3V5Aainfix &lt;=V1V3Aainfix &lt;=c0V1Iainfix &lt;=V3V5Iapermut_subV4V7V1ainfix +V2c1Iainfix &gt;=agetV7V12V11Iainfix &lt;=V12V2Aainfix &lt;=V6V12FAainfix =agetV7V13V11Iainfix &lt;V13V6Aainfix &lt;V5V13FAainfix &lt;=agetV7V14V11Iainfix &lt;=V14V5Aainfix &lt;=V1V14FEAapermut_subV4V7V1ainfix +V2c1Aainfix &lt;=V6V2Aainfix &lt;V5V6Aainfix &lt;=V1V5FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V1V3Aainfix &lt;=c0V1FF">
shape="apermut_subV7V8V1ainfix +V2c1Iainfix &lt;=agetV8V3agetV8V9Iainfix &lt;=V9V5Aainfix &lt;=V3V9FAainfix &lt;=agetV8V10agetV8V3Iainfix &lt;=V10V3Aainfix &lt;=V1V10FAapermut_subV7V8V1ainfix +V5c1Aainfix &lt;=c0V0FIainfix &lt;V5V0Aainfix &lt;=V3V5Aainfix &lt;=V1V3Aainfix &lt;=c0V1Iainfix &lt;=V3V5Iapermut_subV4V7V1ainfix +V2c1Iainfix &gt;=agetV7V12V11Iainfix &lt;=V12V2Aainfix &lt;=V6V12FAainfix =agetV7V13V11Iainfix &lt;V13V6Aainfix &lt;V5V13FAainfix &lt;=agetV7V14V11Iainfix &lt;=V14V5Aainfix &lt;=V1V14FEAapermut_subV4V7V1ainfix +V2c1Aainfix &lt;=V6V2Aainfix &lt;V5V6Aainfix &lt;=V1V5Aainfix &lt;=c0V0FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V1V3Aainfix &lt;=c0V1Aainfix &lt;=c0V0FF">
<label
name="expl:VC for find"/>
<proof
......@@ -139,10 +139,10 @@
locfile="../algo65.mlw"
loclnum="36" loccnumb="10" loccnume="14"
expl="6. variant decrease"
sum="5b00adbf9426aaeb8d02be3613bad987"
sum="2243d1815608421560787caeb44edb74"
proved="true"
expanded="true"
shape="ainfix &lt;ainfix -V2V6ainfix -V2V1Aainfix &lt;=c0ainfix -V2V1Iainfix &lt;=V6V3Iapermut_subV7V8V1ainfix +V2c1Iainfix &lt;=agetV8V3agetV8V9Iainfix &lt;=V9V5Aainfix &lt;=V3V9FAainfix &lt;=agetV8V10agetV8V3Iainfix &lt;=V10V3Aainfix &lt;=V1V10FAapermut_subV7V8V1ainfix +V5c1FIainfix &lt;V5V0Aainfix &lt;=V3V5Aainfix &lt;=V1V3Aainfix &lt;=c0V1Iainfix &lt;=V3V5Iapermut_subV4V7V1ainfix +V2c1Iainfix &gt;=agetV7V12V11Iainfix &lt;=V12V2Aainfix &lt;=V6V12FAainfix =agetV7V13V11Iainfix &lt;V13V6Aainfix &lt;V5V13FAainfix &lt;=agetV7V14V11Iainfix &lt;=V14V5Aainfix &lt;=V1V14FEAapermut_subV4V7V1ainfix +V2c1Aainfix &lt;=V6V2Aainfix &lt;V5V6Aainfix &lt;=V1V5FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V1V3Aainfix &lt;=c0V1FF">
shape="ainfix &lt;ainfix -V2V6ainfix -V2V1Aainfix &lt;=c0ainfix -V2V1Iainfix &lt;=V6V3Iapermut_subV7V8V1ainfix +V2c1Iainfix &lt;=agetV8V3agetV8V9Iainfix &lt;=V9V5Aainfix &lt;=V3V9FAainfix &lt;=agetV8V10agetV8V3Iainfix &lt;=V10V3Aainfix &lt;=V1V10FAapermut_subV7V8V1ainfix +V5c1Aainfix &lt;=c0V0FIainfix &lt;V5V0Aainfix &lt;=V3V5Aainfix &lt;=V1V3Aainfix &lt;=c0V1Iainfix &lt;=V3V5Iapermut_subV4V7V1ainfix +V2c1Iainfix &gt;=agetV7V12V11Iainfix &lt;=V12V2Aainfix &lt;=V6V12FAainfix =agetV7V13V11Iainfix &lt;V13V6Aainfix &lt;V5V13FAainfix &lt;=agetV7V14V11Iainfix &lt;=V14V5Aainfix &lt;=V1V14FEAapermut_subV4V7V1ainfix +V2c1Aainfix &lt;=V6V2Aainfix &lt;V5V6Aainfix &lt;=V1V5Aainfix &lt;=c0V0FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V1V3Aainfix &lt;=c0V1Aainfix &lt;=c0V0FF">
<label
name="expl:VC for find"/>
<proof
......@@ -159,10 +159,10 @@
locfile="../algo65.mlw"
loclnum="36" loccnumb="10" loccnume="14"
expl="7. precondition"
sum="a5dd2701fa79b1fadfba59891403e814"
sum="e21669d6ddf61fdae7e858f3bbfa7416"
proved="true"
expanded="true"
shape="ainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V6V3Aainfix &lt;=c0V6Iainfix &lt;=V6V3Iapermut_subV7V8V1ainfix +V2c1Iainfix &lt;=agetV8V3agetV8V9Iainfix &lt;=V9V5Aainfix &lt;=V3V9FAainfix &lt;=agetV8V10agetV8V3Iainfix &lt;=V10V3Aainfix &lt;=V1V10FAapermut_subV7V8V1ainfix +V5c1FIainfix &lt;V5V0Aainfix &lt;=V3V5Aainfix &lt;=V1V3Aainfix &lt;=c0V1Iainfix &lt;=V3V5Iapermut_subV4V7V1ainfix +V2c1Iainfix &gt;=agetV7V12V11Iainfix &lt;=V12V2Aainfix &lt;=V6V12FAainfix =agetV7V13V11Iainfix &lt;V13V6Aainfix &lt;V5V13FAainfix &lt;=agetV7V14V11Iainfix &lt;=V14V5Aainfix &lt;=V1V14FEAapermut_subV4V7V1ainfix +V2c1Aainfix &lt;=V6V2Aainfix &lt;V5V6Aainfix &lt;=V1V5FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V1V3Aainfix &lt;=c0V1FF">
shape="ainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V6V3Aainfix &lt;=c0V6Iainfix &lt;=V6V3Iapermut_subV7V8V1ainfix +V2c1Iainfix &lt;=agetV8V3agetV8V9Iainfix &lt;=V9V5Aainfix &lt;=V3V9FAainfix &lt;=agetV8V10agetV8V3Iainfix &lt;=V10V3Aainfix &lt;=V1V10FAapermut_subV7V8V1ainfix +V5c1Aainfix &lt;=c0V0FIainfix &lt;V5V0Aainfix &lt;=V3V5Aainfix &lt;=V1V3Aainfix &lt;=c0V1Iainfix &lt;=V3V5Iapermut_subV4V7V1ainfix +V2c1Iainfix &gt;=agetV7V12V11Iainfix &lt;=V12V2Aainfix &lt;=V6V12FAainfix =agetV7V13V11Iainfix &lt;V13V6Aainfix &lt;V5V13FAainfix &lt;=agetV7V14V11Iainfix &lt;=V14V5Aainfix &lt;=V1V14FEAapermut_subV4V7V1ainfix +V2c1Aainfix &lt;=V6V2Aainfix &lt;V5V6Aainfix &lt;=V1V5Aainfix &lt;=c0V0FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V1V3Aainfix &lt;=c0V1Aainfix &lt;=c0V0FF">
<label
name="expl:VC for find"/>
<proof
......@@ -179,10 +179,10 @@
locfile="../algo65.mlw"
loclnum="36" loccnumb="10" loccnume="14"
expl="8. postcondition"
sum="3fc66f1cbeb6145e92ccae49a358bc15"
sum="949294e7f957ab70da632df671bdcebf"
proved="true"
expanded="true"
shape="apermut_subV4V9V1ainfix +V2c1Iainfix &lt;=agetV9V3agetV9V10Iainfix &lt;=V10V2Aainfix &lt;=V3V10FAainfix &lt;=agetV9V11agetV9V3Iainfix &lt;=V11V3Aainfix &lt;=V6V11FAapermut_subV8V9V6ainfix +V2c1FIainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V6V3Aainfix &lt;=c0V6Iainfix &lt;=V6V3Iapermut_subV7V8V1ainfix +V2c1Iainfix &lt;=agetV8V3agetV8V12Iainfix &lt;=V12V5Aainfix &lt;=V3V12FAainfix &lt;=agetV8V13agetV8V3Iainfix &lt;=V13V3Aainfix &lt;=V1V13FAapermut_subV7V8V1ainfix +V5c1FIainfix &lt;V5V0Aainfix &lt;=V3V5Aainfix &lt;=V1V3Aainfix &lt;=c0V1Iainfix &lt;=V3V5Iapermut_subV4V7V1ainfix +V2c1Iainfix &gt;=agetV7V15V14Iainfix &lt;=V15V2Aainfix &lt;=V6V15FAainfix =agetV7V16V14Iainfix &lt;V16V6Aainfix &lt;V5V16FAainfix &lt;=agetV7V17V14Iainfix &lt;=V17V5Aainfix &lt;=V1V17FEAapermut_subV4V7V1ainfix +V2c1Aainfix &lt;=V6V2Aainfix &lt;V5V6Aainfix &lt;=V1V5FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V1V3Aainfix &lt;=c0V1FF">
shape="apermut_subV4V9V1ainfix +V2c1Iainfix &lt;=agetV9V3agetV9V10Iainfix &lt;=V10V2Aainfix &lt;=V3V10FAainfix &lt;=agetV9V11agetV9V3Iainfix &lt;=V11V3Aainfix &lt;=V6V11FAapermut_subV8V9V6ainfix +V2c1Aainfix &lt;=c0V0FIainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V6V3Aainfix &lt;=c0V6Iainfix &lt;=V6V3Iapermut_subV7V8V1ainfix +V2c1Iainfix &lt;=agetV8V3agetV8V12Iainfix &lt;=V12V5Aainfix &lt;=V3V12FAainfix &lt;=agetV8V13agetV8V3Iainfix &lt;=V13V3Aainfix &lt;=V1V13FAapermut_subV7V8V1ainfix +V5c1Aainfix &lt;=c0V0FIainfix &lt;V5V0Aainfix &lt;=V3V5Aainfix &lt;=V1V3Aainfix &lt;=c0V1Iainfix &lt;=V3V5Iapermut_subV4V7V1ainfix +V2c1Iainfix &gt;=agetV7V15V14Iainfix &lt;=V15V2Aainfix &lt;=V6V15FAainfix =agetV7V16V14Iainfix &lt;V16V6Aainfix &lt;V5V16FAainfix &lt;=agetV7V17V14Iainfix &lt;=V17V5Aainfix &lt;=V1V17FEAapermut_subV4V7V1ainfix +V2c1Aainfix &lt;=V6V2Aainfix &lt;V5V6Aainfix &lt;=V1V5Aainfix &lt;=c0V0FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V1V3Aainfix &lt;=c0V1Aainfix &lt;=c0V0FF">
<label
name="expl:VC for find"/>
<proof
......@@ -199,10 +199,10 @@
locfile="../algo65.mlw"
loclnum="36" loccnumb="10" loccnume="14"
expl="9. postcondition"
sum="48196ad45110a2ae239fafdc0587ec91"
sum="5b415e01d2675ffb25fd0ce530dd6ec9"
proved="true"
expanded="true"
shape="ainfix &lt;=agetV9V10agetV9V3Iainfix &lt;=V10V3Aainfix &lt;=V1V10FIainfix &lt;=agetV9V3agetV9V11Iainfix &lt;=V11V2Aainfix &lt;=V3V11FAainfix &lt;=agetV9V12agetV9V3Iainfix &lt;=V12V3Aainfix &lt;=V6V12FAapermut_subV8V9V6ainfix +V2c1FIainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V6V3Aainfix &lt;=c0V6Iainfix &lt;=V6V3Iapermut_subV7V8V1ainfix +V2c1Iainfix &lt;=agetV8V3agetV8V13Iainfix &lt;=V13V5Aainfix &lt;=V3V13FAainfix &lt;=agetV8V14agetV8V3Iainfix &lt;=V14V3Aainfix &lt;=V1V14FAapermut_subV7V8V1ainfix +V5c1FIainfix &lt;V5V0Aainfix &lt;=V3V5Aainfix &lt;=V1V3Aainfix &lt;=c0V1Iainfix &lt;=V3V5Iapermut_subV4V7V1ainfix +V2c1Iainfix &gt;=agetV7V16V15Iainfix &lt;=V16V2Aainfix &lt;=V6V16FAainfix =agetV7V17V15Iainfix &lt;V17V6Aainfix &lt;V5V17FAainfix &lt;=agetV7V18V15Iainfix &lt;=V18V5Aainfix &lt;=V1V18FEAapermut_subV4V7V1ainfix +V2c1Aainfix &lt;=V6V2Aainfix &lt;V5V6Aainfix &lt;=V1V5FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V1V3Aainfix &lt;=c0V1FF">
shape="ainfix &lt;=agetV9V10agetV9V3Iainfix &lt;=V10V3Aainfix &lt;=V1V10FIainfix &lt;=agetV9V3agetV9V11Iainfix &lt;=V11V2Aainfix &lt;=V3V11FAainfix &lt;=agetV9V12agetV9V3Iainfix &lt;=V12V3Aainfix &lt;=V6V12FAapermut_subV8V9V6ainfix +V2c1Aainfix &lt;=c0V0FIainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V6V3Aainfix &lt;=c0V6Iainfix &lt;=V6V3Iapermut_subV7V8V1ainfix +V2c1Iainfix &lt;=agetV8V3agetV8V13Iainfix &lt;=V13V5Aainfix &lt;=V3V13FAainfix &lt;=agetV8V14agetV8V3Iainfix &lt;=V14V3Aainfix &lt;=V1V14FAapermut_subV7V8V1ainfix +V5c1Aainfix &lt;=c0V0FIainfix &lt;V5V0Aainfix &lt;=V3V5Aainfix &lt;=V1V3Aainfix &lt;=c0V1Iainfix &lt;=V3V5Iapermut_subV4V7V1ainfix +V2c1Iainfix &gt;=agetV7V16V15Iainfix &lt;=V16V2Aainfix &lt;=V6V16FAainfix =agetV7V17V15Iainfix &lt;V17V6Aainfix &lt;V5V17FAainfix &lt;=agetV7V18V15Iainfix &lt;=V18V5Aainfix &lt;=V1V18FEAapermut_subV4V7V1ainfix +V2c1Aainfix &lt;=V6V2Aainfix &lt;V5V6Aainfix &lt;=V1V5Aainfix &lt;=c0V0FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V1V3Aainfix &lt;=c0V1Aainfix &lt;=c0V0FF">
<label
name="expl:VC for find"/>
<proof
......@@ -219,10 +219,10 @@
locfile="../algo65.mlw"
loclnum="36" loccnumb="10" loccnume="14"
expl="10. postcondition"
sum="0f870de59b58a9c9d063c1a411007181"
sum="0c99723ed635b8b2e772e32220bb81bb"
proved="true"
expanded="true"
shape="ainfix &lt;=agetV9V3agetV9V10Iainfix &lt;=V10V2Aainfix &lt;=V3V10FIainfix &lt;=agetV9V3agetV9V11Iainfix &lt;=V11V2Aainfix &lt;=V3V11FAainfix &lt;=agetV9V12agetV9V3Iainfix &lt;=V12V3Aainfix &lt;=V6V12FAapermut_subV8V9V6ainfix +V2c1FIainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V6V3Aainfix &lt;=c0V6Iainfix &lt;=V6V3Iapermut_subV7V8V1ainfix +V2c1Iainfix &lt;=agetV8V3agetV8V13Iainfix &lt;=V13V5Aainfix &lt;=V3V13FAainfix &lt;=agetV8V14agetV8V3Iainfix &lt;=V14V3Aainfix &lt;=V1V14FAapermut_subV7V8V1ainfix +V5c1FIainfix &lt;V5V0Aainfix &lt;=V3V5Aainfix &lt;=V1V3Aainfix &lt;=c0V1Iainfix &lt;=V3V5Iapermut_subV4V7V1ainfix +V2c1Iainfix &gt;=agetV7V16V15Iainfix &lt;=V16V2Aainfix &lt;=V6V16FAainfix =agetV7V17V15Iainfix &lt;V17V6Aainfix &lt;V5V17FAainfix &lt;=agetV7V18V15Iainfix &lt;=V18V5Aainfix &lt;=V1V18FEAapermut_subV4V7V1ainfix +V2c1Aainfix &lt;=V6V2Aainfix &lt;V5V6Aainfix &lt;=V1V5FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V1V3Aainfix &lt;=c0V1FF">
shape="ainfix &lt;=agetV9V3agetV9V10Iainfix &lt;=V10V2Aainfix &lt;=V3V10FIainfix &lt;=agetV9V3agetV9V11Iainfix &lt;=V11V2Aainfix &lt;=V3V11FAainfix &lt;=agetV9V12agetV9V3Iainfix &lt;=V12V3Aainfix &lt;=V6V12FAapermut_subV8V9V6ainfix +V2c1Aainfix &lt;=c0V0FIainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V6V3Aainfix &lt;=c0V6Iainfix &lt;=V6V3Iapermut_subV7V8V1ainfix +V2c1Iainfix &lt;=agetV8V3agetV8V13Iainfix &lt;=V13V5Aainfix &lt;=V3V13FAainfix &lt;=agetV8V14agetV8V3Iainfix &lt;=V14V3Aainfix &lt;=V1V14FAapermut_subV7V8V1ainfix +V5c1Aainfix &lt;=c0V0FIainfix &lt;V5V0Aainfix &lt;=V3V5Aainfix &lt;=V1V3Aainfix &lt;=c0V1Iainfix &lt;=V3V5Iapermut_subV4V7V1ainfix +V2c1Iainfix &gt;=agetV7V16V15Iainfix &lt;=V16V2Aainfix &lt;=V6V16FAainfix =agetV7V17V15Iainfix &lt;V17V6Aainfix &lt;V5V17FAainfix &lt;=agetV7V18V15Iainfix &lt;=V18V5Aainfix &lt;=V1V18FEAapermut_subV4V7V1ainfix +V2c1Aainfix &lt;=V6V2Aainfix &lt;V5V6Aainfix &lt;=V1V5Aainfix &lt;=c0V0FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V1V3Aainfix &lt;=c0V1Aainfix &lt;=c0V0FF">
<label
name="expl:VC for find"/>
<proof
......@@ -239,10 +239,10 @@
locfile="../algo65.mlw"
loclnum="36" loccnumb="10" loccnume="14"
expl="11. postcondition"
sum="39a95a32517de85fd9c89523fcdfe766"
sum="37380acaed671aefa86d1102986e155d"
proved="true"
expanded="true"
shape="apermut_subV4V8V1ainfix +V2c1Iainfix &lt;=V6V3NIapermut_subV7V8V1ainfix +V2c1Iainfix &lt;=agetV8V3agetV8V9Iainfix &lt;=V9V5Aainfix &lt;=V3V9FAainfix &lt;=agetV8V10agetV8V3Iainfix &lt;=V10V3Aainfix &lt;=V1V10FAapermut_subV7V8V1ainfix +V5c1FIainfix &lt;V5V0Aainfix &lt;=V3V5Aainfix &lt;=V1V3Aainfix &lt;=c0V1Iainfix &lt;=V3V5Iapermut_subV4V7V1ainfix +V2c1Iainfix &gt;=agetV7V12V11Iainfix &lt;=V12V2Aainfix &lt;=V6V12FAainfix =agetV7V13V11Iainfix &lt;V13V6Aainfix &lt;V5V13FAainfix &lt;=agetV7V14V11Iainfix &lt;=V14V5Aainfix &lt;=V1V14FEAapermut_subV4V7V1ainfix +V2c1Aainfix &lt;=V6V2Aainfix &lt;V5V6Aainfix &lt;=V1V5FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V1V3Aainfix &lt;=c0V1FF">
shape="apermut_subV4V8V1ainfix +V2c1Iainfix &lt;=V6V3NIapermut_subV7V8V1ainfix +V2c1Iainfix &lt;=agetV8V3agetV8V9Iainfix &lt;=V9V5Aainfix &lt;=V3V9FAainfix &lt;=agetV8V10agetV8V3Iainfix &lt;=V10V3Aainfix &lt;=V1V10FAapermut_subV7V8V1ainfix +V5c1Aainfix &lt;=c0V0FIainfix &lt;V5V0Aainfix &lt;=V3V5Aainfix &lt;=V1V3Aainfix &lt;=c0V1Iainfix &lt;=V3V5Iapermut_subV4V7V1ainfix +V2c1Iainfix &gt;=agetV7V12V11Iainfix &lt;=V12V2Aainfix &lt;=V6V12FAainfix =agetV7V13V11Iainfix &lt;V13V6Aainfix &lt;V5V13FAainfix &lt;=agetV7V14V11Iainfix &lt;=V14V5Aainfix &lt;=V1V14FEAapermut_subV4V7V1ainfix +V2c1Aainfix &lt;=V6V2Aainfix &lt;V5V6Aainfix &lt;=V1V5Aainfix &lt;=c0V0FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V1V3Aainfix &lt;=c0V1Aainfix &lt;=c0V0FF">
<label
name="expl:VC for find"/>
<proof
......@@ -259,10 +259,10 @@
locfile="../algo65.mlw"
loclnum="36" loccnumb="10" loccnume="14"
expl="12. postcondition"
sum="7bd3badc9f6d43f87682d5b35cb9ee11"
sum="322227cfd4467f02af910056f7008217"
proved="true"
expanded="true"
shape="ainfix &lt;=agetV8V9agetV8V3Iainfix &lt;=V9V3Aainfix &lt;=V1V9FIainfix &lt;=V6V3NIapermut_subV7V8V1ainfix +V2c1Iainfix &lt;=agetV8V3agetV8V10Iainfix &lt;=V10V5Aainfix &lt;=V3V10FAainfix &lt;=agetV8V11agetV8V3Iainfix &lt;=V11V3Aainfix &lt;=V1V11FAapermut_subV7V8V1ainfix +V5c1FIainfix &lt;V5V0Aainfix &lt;=V3V5Aainfix &lt;=V1V3Aainfix &lt;=c0V1Iainfix &lt;=V3V5Iapermut_subV4V7V1ainfix +V2c1Iainfix &gt;=agetV7V13V12Iainfix &lt;=V13V2Aainfix &lt;=V6V13FAainfix =agetV7V14V12Iainfix &lt;V14V6Aainfix &lt;V5V14FAainfix &lt;=agetV7V15V12Iainfix &lt;=V15V5Aainfix &lt;=V1V15FEAapermut_subV4V7V1ainfix +V2c1Aainfix &lt;=V6V2Aainfix &lt;V5V6Aainfix &lt;=V1V5FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V1V3Aainfix &lt;=c0V1FF">
shape="ainfix &lt;=agetV8V9agetV8V3Iainfix &lt;=V9V3Aainfix &lt;=V1V9FIainfix &lt;=V6V3NIapermut_subV7V8V1ainfix +V2c1Iainfix &lt;=agetV8V3agetV8V10Iainfix &lt;=V10V5Aainfix &lt;=V3V10FAainfix &lt;=agetV8V11agetV8V3Iainfix &lt;=V11V3Aainfix &lt;=V1V11FAapermut_subV7V8V1ainfix +V5c1Aainfix &lt;=c0V0FIainfix &lt;V5V0Aainfix &lt;=V3V5Aainfix &lt;=V1V3Aainfix &lt;=c0V1Iainfix &lt;=V3V5Iapermut_subV4V7V1ainfix +V2c1Iainfix &gt;=agetV7V13V12Iainfix &lt;=V13V2Aainfix &lt;=V6V13FAainfix =agetV7V14V12Iainfix &lt;V14V6Aainfix &lt;V5V14FAainfix &lt;=agetV7V15V12Iainfix &lt;=V15V5Aainfix &lt;=V1V15FEAapermut_subV4V7V1ainfix +V2c1Aainfix &lt;=V6V2Aainfix &lt;V5V6Aainfix &lt;=V1V5Aainfix &lt;=c0V0FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V1V3Aainfix &lt;=c0V1Aainfix &lt;=c0V0FF">
<label
name="expl:VC for find"/>
<proof
......@@ -279,10 +279,10 @@
locfile="../algo65.mlw"
loclnum="36" loccnumb="10" loccnume="14"
expl="13. postcondition"
sum="4383bb76068ecf232b102df9c57dd122"
sum="be0c215371b007f7e5745f51b8ace040"
proved="true"
expanded="true"
shape="ainfix &lt;=agetV8V3agetV8V9Iainfix &lt;=V9V2Aainfix &lt;=V3V9FIainfix &lt;=V6V3NIapermut_subV7V8V1ainfix +V2c1Iainfix &lt;=agetV8V3agetV8V10Iainfix &lt;=V10V5Aainfix &lt;=V3V10FAainfix &lt;=agetV8V11agetV8V3Iainfix &lt;=V11V3Aainfix &lt;=V1V11FAapermut_subV7V8V1ainfix +V5c1FIainfix &lt;V5V0Aainfix &lt;=V3V5Aainfix &lt;=V1V3Aainfix &lt;=c0V1Iainfix &lt;=V3V5Iapermut_subV4V7V1ainfix +V2c1Iainfix &gt;=agetV7V13V12Iainfix &lt;=V13V2Aainfix &lt;=V6V13FAainfix =agetV7V14V12Iainfix &lt;V14V6Aainfix &lt;V5V14FAainfix &lt;=agetV7V15V12Iainfix &lt;=V15V5Aainfix &lt;=V1V15FEAapermut_subV4V7V1ainfix +V2c1Aainfix &lt;=V6V2Aainfix &lt;V5V6Aainfix &lt;=V1V5FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V1V3Aainfix &lt;=c0V1FF">
shape="ainfix &lt;=agetV8V3agetV8V9Iainfix &lt;=V9V2Aainfix &lt;=V3V9FIainfix &lt;=V6V3NIapermut_subV7V8V1ainfix +V2c1Iainfix &lt;=agetV8V3agetV8V10Iainfix &lt;=V10V5Aainfix &lt;=V3V10FAainfix &lt;=agetV8V11agetV8V3Iainfix &lt;=V11V3Aainfix &lt;=V1V11FAapermut_subV7V8V1ainfix +V5c1Aainfix &lt;=c0V0FIainfix &lt;V5V0Aainfix &lt;=V3V5Aainfix &lt;=V1V3Aainfix &lt;=c0V1Iainfix &lt;=V3V5Iapermut_subV4V7V1ainfix +V2c1Iainfix &gt;=agetV7V13V12Iainfix &lt;=V13V2Aainfix &lt;=V6V13FAainfix =agetV7V14V12Iainfix &lt;V14V6Aainfix &lt;V5V14FAainfix &lt;=agetV7V15V12Iainfix &lt;=V15V5Aainfix &lt;=V1V15FEAapermut_subV4V7V1ainfix +V2c1Aainfix &lt;=V6V2Aainfix &lt;V5V6Aainfix &lt;=V1V5Aainfix &lt;=c0V0FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V1V3Aainfix &lt;=c0V1Aainfix &lt;=c0V0FF">
<label
name="expl:VC for find"/>
<proof
......@@ -299,10 +299,10 @@
locfile="../algo65.mlw"
loclnum="36" loccnumb="10" loccnume="14"
expl="14. assertion"
sum="21076aa083e591fb3c188fec7a20fd2b"
sum="b1bcfed82e0e28d0bcad67ea1b1e093f"
proved="true"
expanded="true"
shape="apermut_subV7V7V1ainfix +V2c1Iainfix &lt;=V3V5NIapermut_subV4V7V1ainfix +V2c1Iainfix &gt;=agetV7V9V8Iainfix &lt;=V9V2Aainfix &lt;=V6V9FAainfix =agetV7V10V8Iainfix &lt;V10V6Aainfix &lt;V5V10FAainfix &lt;=agetV7V11V8Iainfix &lt;=V11V5Aainfix &lt;=V1V11FEAapermut_subV4V7V1ainfix +V2c1Aainfix &lt;=V6V2Aainfix &lt;V5V6Aainfix &lt;=V1V5FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V1V3Aainfix &lt;=c0V1FF">
shape="apermut_subV7V7V1ainfix +V2c1Iainfix &lt;=V3V5NIapermut_subV4V7V1ainfix +V2c1Iainfix &gt;=agetV7V9V8Iainfix &lt;=V9V2Aainfix &lt;=V6V9FAainfix =agetV7V10V8Iainfix &lt;V10V6Aainfix &lt;V5V10FAainfix &lt;=agetV7V11V8Iainfix &lt;=V11V5Aainfix &lt;=V1V11FEAapermut_subV4V7V1ainfix +V2c1Aainfix &lt;=V6V2Aainfix &lt;V5V6Aainfix &lt;=V1V5Aainfix &lt;=c0V0FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V1V3Aainfix &lt;=c0V1Aainfix &lt;=c0V0FF">
<label
name="expl:VC for find"/>
<proof
......@@ -319,10 +319,10 @@
locfile="../algo65.mlw"
loclnum="36" loccnumb="10" loccnume="14"
expl="15. variant decrease"
sum="f075d52110cd622b722a706523b7fa08"
sum="52d8cea099506233268502191ebebd84"
proved="true"
expanded="true"
shape="ainfix &lt;ainfix -V2V6ainfix -V2V1Aainfix &lt;=c0ainfix -V2V1Iainfix &lt;=V6V3Iapermut_subV7V7V1ainfix +V2c1Iainfix &lt;=V3V5NIapermut_subV4V7V1ainfix +V2c1Iainfix &gt;=agetV7V9V8Iainfix &lt;=V9V2Aainfix &lt;=V6V9FAainfix =agetV7V10V8Iainfix &lt;V10V6Aainfix &lt;V5V10FAainfix &lt;=agetV7V11V8Iainfix &lt;=V11V5Aainfix &lt;=V1V11FEAapermut_subV4V7V1ainfix +V2c1Aainfix &lt;=V6V2Aainfix &lt;V5V6Aainfix &lt;=V1V5FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V1V3Aainfix &lt;=c0V1FF">
shape="ainfix &lt;ainfix -V2V6ainfix -V2V1Aainfix &lt;=c0ainfix -V2V1Iainfix &lt;=V6V3Iapermut_subV7V7V1ainfix +V2c1Iainfix &lt;=V3V5NIapermut_subV4V7V1ainfix +V2c1Iainfix &gt;=agetV7V9V8Iainfix &lt;=V9V2Aainfix &lt;=V6V9FAainfix =agetV7V10V8Iainfix &lt;V10V6Aainfix &lt;V5V10FAainfix &lt;=agetV7V11V8Iainfix &lt;=V11V5Aainfix &lt;=V1V11FEAapermut_subV4V7V1ainfix +V2c1Aainfix &lt;=V6V2Aainfix &lt;V5V6Aainfix &lt;=V1V5Aainfix &lt;=c0V0FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V1V3Aainfix &lt;=c0V1Aainfix &lt;=c0V0FF">
<label
name="expl:VC for find"/>
<proof
......@@ -339,10 +339,10 @@
locfile="../algo65.mlw"
loclnum="36" loccnumb="10" loccnume="14"
expl="16. precondition"
sum="e6bba3bea93175383f47dc9f683b3a85"
sum="d6907111d946bc589ff5e35a0e133e6b"
proved="true"
expanded="true"
shape="ainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V6V3Aainfix &lt;=c0V6Iainfix &lt;=V6V3Iapermut_subV7V7V1ainfix +V2c1Iainfix &lt;=V3V5NIapermut_subV4V7V1ainfix +V2c1Iainfix &gt;=agetV7V9V8Iainfix &lt;=V9V2Aainfix &lt;=V6V9FAainfix =agetV7V10V8Iainfix &lt;V10V6Aainfix &lt;V5V10FAainfix &lt;=agetV7V11V8Iainfix &lt;=V11V5Aainfix &lt;=V1V11FEAapermut_subV4V7V1ainfix +V2c1Aainfix &lt;=V6V2Aainfix &lt;V5V6Aainfix &lt;=V1V5FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V1V3Aainfix &lt;=c0V1FF">
shape="ainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V6V3Aainfix &lt;=c0V6Iainfix &lt;=V6V3Iapermut_subV7V7V1ainfix +V2c1Iainfix &lt;=V3V5NIapermut_subV4V7V1ainfix +V2c1Iainfix &gt;=agetV7V9V8Iainfix &lt;=V9V2Aainfix &lt;=V6V9FAainfix =agetV7V10V8Iainfix &lt;V10V6Aainfix &lt;V5V10FAainfix &lt;=agetV7V11V8Iainfix &lt;=V11V5Aainfix &lt;=V1V11FEAapermut_subV4V7V1ainfix +V2c1Aainfix &lt;=V6V2Aainfix &lt;V5V6Aainfix &lt;=V1V5Aainfix &lt;=c0V0FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V1V3Aainfix &lt;=c0V1Aainfix &lt;=c0V0FF">
<label
name="expl:VC for find"/>
<proof
......@@ -359,10 +359,10 @@
locfile="../algo65.mlw"
loclnum="36" loccnumb="10" loccnume="14"
expl="17. postcondition"
sum="58b9b4f1d9059d68a0fcccfb53cc8d9d"
sum="050cd2abba3d6d5d18ccea506e3f126d"
proved="true"
expanded="true"
shape="apermut_subV4V8V1ainfix +V2c1Iainfix &lt;=agetV8V3agetV8V9Iainfix &lt;=V9V2Aainfix &lt;=V3V9FAainfix &lt;=agetV8V10agetV8V3Iainfix &lt;=V10V3Aainfix &lt;=V6V10FAapermut_subV7V8V6ainfix +V2c1FIainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V6V3Aainfix &lt;=c0V6Iainfix &lt;=V6V3Iapermut_subV7V7V1ainfix +V2c1Iainfix &lt;=V3V5NIapermut_subV4V7V1ainfix +V2c1Iainfix &gt;=agetV7V12V11Iainfix &lt;=V12V2Aainfix &lt;=V6V12FAainfix =agetV7V13V11Iainfix &lt;V13V6Aainfix &lt;V5V13FAainfix &lt;=agetV7V14V11Iainfix &lt;=V14V5Aainfix &lt;=V1V14FEAapermut_subV4V7V1ainfix +V2c1Aainfix &lt;=V6V2Aainfix &lt;V5V6Aainfix &lt;=V1V5FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V1V3Aainfix &lt;=c0V1FF">
shape="apermut_subV4V8V1ainfix +V2c1Iainfix &lt;=agetV8V3agetV8V9Iainfix &lt;=V9V2Aainfix &lt;=V3V9FAainfix &lt;=agetV8V10agetV8V3Iainfix &lt;=V10V3Aainfix &lt;=V6V10FAapermut_subV7V8V6ainfix +V2c1Aainfix &lt;=c0V0FIainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V6V3Aainfix &lt;=c0V6Iainfix &lt;=V6V3Iapermut_subV7V7V1ainfix +V2c1Iainfix &lt;=V3V5NIapermut_subV4V7V1ainfix +V2c1Iainfix &gt;=agetV7V12V11Iainfix &lt;=V12V2Aainfix &lt;=V6V12FAainfix =agetV7V13V11Iainfix &lt;V13V6Aainfix &lt;V5V13FAainfix &lt;=agetV7V14V11Iainfix &lt;=V14V5Aainfix &lt;=V1V14FEAapermut_subV4V7V1ainfix +V2c1Aainfix &lt;=V6V2Aainfix &lt;V5V6Aainfix &lt;=V1V5Aainfix &lt;=c0V0FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V1V3Aainfix &lt;=c0V1Aainfix &lt;=c0V0FF">
<label
name="expl:VC for find"/>
<proof
......@@ -379,10 +379,10 @@
locfile="../algo65.mlw"
loclnum="36" loccnumb="10" loccnume="14"
expl="18. postcondition"
sum="bb6575288890f8e8193d1c83aaec7344"
sum="da10415c4a70dd494b108c65dcf50bb5"
proved="true"
expanded="true"
shape="ainfix &lt;=agetV8V9agetV8V3Iainfix &lt;=V9V3Aainfix &lt;=V1V9FIainfix &lt;=agetV8V3agetV8V10Iainfix &lt;=V10V2Aainfix &lt;=V3V10FAainfix &lt;=agetV8V11agetV8V3Iainfix &lt;=V11V3Aainfix &lt;=V6V11FAapermut_subV7V8V6ainfix +V2c1FIainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V6V3Aainfix &lt;=c0V6Iainfix &lt;=V6V3Iapermut_subV7V7V1ainfix +V2c1Iainfix &lt;=V3V5NIapermut_subV4V7V1ainfix +V2c1Iainfix &gt;=agetV7V13V12Iainfix &lt;=V13V2Aainfix &lt;=V6V13FAainfix =agetV7V14V12Iainfix &lt;V14V6Aainfix &lt;V5V14FAainfix &lt;=agetV7V15V12Iainfix &lt;=V15V5Aainfix &lt;=V1V15FEAapermut_subV4V7V1ainfix +V2c1Aainfix &lt;=V6V2Aainfix &lt;V5V6Aainfix &lt;=V1V5FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V1V3Aainfix &lt;=c0V1FF">
shape="ainfix &lt;=agetV8V9agetV8V3Iainfix &lt;=V9V3Aainfix &lt;=V1V9FIainfix &lt;=agetV8V3agetV8V10Iainfix &lt;=V10V2Aainfix &lt;=V3V10FAainfix &lt;=agetV8V11agetV8V3Iainfix &lt;=V11V3Aainfix &lt;=V6V11FAapermut_subV7V8V6ainfix +V2c1Aainfix &lt;=c0V0FIainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V6V3Aainfix &lt;=c0V6Iainfix &lt;=V6V3Iapermut_subV7V7V1ainfix +V2c1Iainfix &lt;=V3V5NIapermut_subV4V7V1ainfix +V2c1Iainfix &gt;=agetV7V13V12Iainfix &lt;=V13V2Aainfix &lt;=V6V13FAainfix =agetV7V14V12Iainfix &lt;V14V6Aainfix &lt;V5V14FAainfix &lt;=agetV7V15V12Iainfix &lt;=V15V5Aainfix &lt;=V1V15FEAapermut_subV4V7V1ainfix +V2c1Aainfix &lt;=V6V2Aainfix &lt;V5V6Aainfix &lt;=V1V5Aainfix &lt;=c0V0FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V1V3Aainfix &lt;=c0V1Aainfix &lt;=c0V0FF">
<label
name="expl:VC for find"/>
<proof
......@@ -399,10 +399,10 @@
locfile="../algo65.mlw"
loclnum="36" loccnumb="10" loccnume="14"
expl="19. postcondition"
sum="0a2764676103316fd0749900bc9b3ce5"
sum="6f623d9b3791fbf8092927b4cf36d8c8"
proved="true"
expanded="true"
shape="ainfix &lt;=agetV8V3agetV8V9Iainfix &lt;=V9V2Aainfix &lt;=V3V9FIainfix &lt;=agetV8V3agetV8V10Iainfix &lt;=V10V2Aainfix &lt;=V3V10FAainfix &lt;=agetV8V11agetV8V3Iainfix &lt;=V11V3Aainfix &lt;=V6V11FAapermut_subV7V8V6ainfix +V2c1FIainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V6V3Aainfix &lt;=c0V6Iainfix &lt;=V6V3Iapermut_subV7V7V1ainfix +V2c1Iainfix &lt;=V3V5NIapermut_subV4V7V1ainfix +V2c1Iainfix &gt;=agetV7V13V12Iainfix &lt;=V13V2Aainfix &lt;=V6V13FAainfix =agetV7V14V12Iainfix &lt;V14V6Aainfix &lt;V5V14FAainfix &lt;=agetV7V15V12Iainfix &lt;=V15V5Aainfix &lt;=V1V15FEAapermut_subV4V7V1ainfix +V2c1Aainfix &lt;=V6V2Aainfix &lt;V5V6Aainfix &lt;=V1V5FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V1V3Aainfix &lt;=c0V1FF">
shape="ainfix &lt;=agetV8V3agetV8V9Iainfix &lt;=V9V2Aainfix &lt;=V3V9FIainfix &lt;=agetV8V3agetV8V10Iainfix &lt;=V10V2Aainfix &lt;=V3V10FAainfix &lt;=agetV8V11agetV8V3Iainfix &lt;=V11V3Aainfix &lt;=V6V11FAapermut_subV7V8V6ainfix +V2c1Aainfix &lt;=c0V0FIainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V6V3Aainfix &lt;=c0V6Iainfix &lt;=V6V3Iapermut_subV7V7V1ainfix +V2c1Iainfix &lt;=V3V5NIapermut_subV4V7V1ainfix +V2c1Iainfix &gt;=agetV7V13V12Iainfix &lt;=V13V2Aainfix &lt;=V6V13FAainfix =agetV7V14V12Iainfix &lt;V14V6Aainfix &lt;V5V14FAainfix &lt;=agetV7V15V12Iainfix &lt;=V15V5Aainfix &lt;=V1V15FEAapermut_subV4V7V1ainfix +V2c1Aainfix &lt;=V6V2Aainfix &lt;V5V6Aainfix &lt;=V1V5Aainfix &lt;=c0V0FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V1V3Aainfix &lt;=c0V1Aainfix &lt;=c0V0FF">
<label
name="expl:VC for find"/>
<proof
......@@ -419,10 +419,10 @@
locfile="../algo65.mlw"
loclnum="36" loccnumb="10" loccnume="14"
expl="20. postcondition"
sum="64a6c001e511130d17a44de768198976"
sum="18eaa849be920de79f6f97491d90d637"
proved="true"
expanded="true"
shape="apermut_subV4V7V1ainfix +V2c1Iainfix &lt;=V6V3NIapermut_subV7V7V1ainfix +V2c1Iainfix &lt;=V3V5NIapermut_subV4V7V1ainfix +V2c1Iainfix &gt;=agetV7V9V8Iainfix &lt;=V9V2Aainfix &lt;=V6V9FAainfix =agetV7V10V8Iainfix &lt;V10V6Aainfix &lt;V5V10FAainfix &lt;=agetV7V11V8Iainfix &lt;=V11V5Aainfix &lt;=V1V11FEAapermut_subV4V7V1ainfix +V2c1Aainfix &lt;=V6V2Aainfix &lt;V5V6Aainfix &lt;=V1V5FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V1V3Aainfix &lt;=c0V1FF">
shape="apermut_subV4V7V1ainfix +V2c1Iainfix &lt;=V6V3NIapermut_subV7V7V1ainfix +V2c1Iainfix &lt;=V3V5NIapermut_subV4V7V1ainfix +V2c1Iainfix &gt;=agetV7V9V8Iainfix &lt;=V9V2Aainfix &lt;=V6V9FAainfix =agetV7V10V8Iainfix &lt;V10V6Aainfix &lt;V5V10FAainfix &lt;=agetV7V11V8Iainfix &lt;=V11V5Aainfix &lt;=V1V11FEAapermut_subV4V7V1ainfix +V2c1Aainfix &lt;=V6V2Aainfix &lt;V5V6Aainfix &lt;=V1V5Aainfix &lt;=c0V0FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V1V3Aainfix &lt;=c0V1Aainfix &lt;=c0V0FF">
<label
name="expl:VC for find"/>
<proof
......@@ -439,10 +439,10 @@
locfile="../algo65.mlw"
loclnum="36" loccnumb="10" loccnume="14"
expl="21. postcondition"
sum="cf2b292d0f25eee2b62abc62052468cc"
sum="724c4334e747357f8ddccba3f58bb1cf"
proved="true"
expanded="true"
shape="ainfix &lt;=agetV7V8agetV7V3Iainfix &lt;=V8V3Aainfix &lt;=V1V8FIainfix &lt;=V6V3NIapermut_subV7V7V1ainfix +V2c1Iainfix &lt;=V3V5NIapermut_subV4V7V1ainfix +V2c1Iainfix &gt;=agetV7V10V9Iainfix &lt;=V10V2Aainfix &lt;=V6V10FAainfix =agetV7V11V9Iainfix &lt;V11V6Aainfix &lt;V5V11FAainfix &lt;=agetV7V12V9Iainfix &lt;=V12V5Aainfix &lt;=V1V12FEAapermut_subV4V7V1ainfix +V2c1Aainfix &lt;=V6V2Aainfix &lt;V5V6Aainfix &lt;=V1V5FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V1V3Aainfix &lt;=c0V1FF">
shape="ainfix &lt;=agetV7V8agetV7V3Iainfix &lt;=V8V3Aainfix &lt;=V1V8FIainfix &lt;=V6V3NIapermut_subV7V7V1ainfix +V2c1Iainfix &lt;=V3V5NIapermut_subV4V7V1ainfix +V2c1Iainfix &gt;=agetV7V10V9Iainfix &lt;=V10V2Aainfix &lt;=V6V10FAainfix =agetV7V11V9Iainfix &lt;V11V6Aainfix &lt;V5V11FAainfix &lt;=agetV7V12V9Iainfix &lt;=V12V5Aainfix &lt;=V1V12FEAapermut_subV4V7V1ainfix +V2c1Aainfix &lt;=V6V2Aainfix &lt;V5V6Aainfix &lt;=V1V5Aainfix &lt;=c0V0FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V1V3Aainfix &lt;=c0V1Aainfix &lt;=c0V0FF">
<label
name="expl:VC for find"/>
<proof
......@@ -459,10 +459,10 @@
locfile="../algo65.mlw"
loclnum="36" loccnumb="10" loccnume="14"
expl="22. postcondition"
sum="d115fbda0d3de2880d9564ed5f52e50f"
sum="d2dfe266b374488f16e2fb43a7a1c1ec"
proved="true"
expanded="true"
shape="ainfix &lt;=agetV7V3agetV7V8Iainfix &lt;=V8V2Aainfix &lt;=V3V8FIainfix &lt;=V6V3NIapermut_subV7V7V1ainfix +V2c1Iainfix &lt;=V3V5NIapermut_subV4V7V1ainfix +V2c1Iainfix &gt;=agetV7V10V9Iainfix &lt;=V10V2Aainfix &lt;=V6V10FAainfix =agetV7V11V9Iainfix &lt;V11V6Aainfix &lt;V5V11FAainfix &lt;=agetV7V12V9Iainfix &lt;=V12V5Aainfix &lt;=V1V12FEAapermut_subV4V7V1ainfix +V2c1Aainfix &lt;=V6V2Aainfix &lt;V5V6Aainfix &lt;=V1V5FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V1V3Aainfix &lt;=c0V1FF">
shape="ainfix &lt;=agetV7V3agetV7V8Iainfix &lt;=V8V2Aainfix &lt;=V3V8FIainfix &lt;=V6V3NIapermut_subV7V7V1ainfix +V2c1Iainfix &lt;=V3V5NIapermut_subV4V7V1ainfix +V2c1Iainfix &gt;=agetV7V10V9Iainfix &lt;=V10V2Aainfix &lt;=V6V10FAainfix =agetV7V11V9Iainfix &lt;V11V6Aainfix &lt;V5V11FAainfix &lt;=agetV7V12V9Iainfix &lt;=V12V5Aainfix &lt;=V1V12FEAapermut_subV4V7V1ainfix +V2c1Aainfix &lt;=V6V2Aainfix &lt;V5V6Aainfix &lt;=V1V5Aainfix &lt;=c0V0FIainfix &lt;V2V0Aainfix &lt;V1V2Aainfix &lt;=c0V1Iainfix &lt;V1V2Iainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V1V3Aainfix &lt;=c0V1Aainfix &lt;=c0V0FF">
<label
name="expl:VC for find"/>
<proof
......@@ -479,10 +479,10 @@
locfile="../algo65.mlw"
loclnum="36" loccnumb="10" loccnume="14"
expl="23. postcondition"
sum="5910ebeab614ae7b7fb9b41f315f6e80"
sum="4460760db4fa7288a03e1078a5a781bd"
proved="true"
expanded="true"
shape="apermut_subV4V4V1ainfix +V2c1Iainfix &lt;V1V2NIainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V1V3Aainfix &lt;=c0V1FF">
shape="apermut_subV4V4V1ainfix +V2c1Iainfix &lt;V1V2NIainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V1V3Aainfix &lt;=c0V1Aainfix &lt;=c0V0FF">
<label
name="expl:VC for find"/>
<proof
......@@ -499,10 +499,10 @@
locfile="../algo65.mlw"
loclnum="36" loccnumb="10" loccnume="14"
expl="24. postcondition"
sum="e354da0c4b564527cb3a4b38a8e21f7f"
sum="4aff6c835f3ebbbc0efed7fd654b2083"
proved="true"
expanded="true"
shape="ainfix &lt;=agetV4V5agetV4V3Iainfix &lt;=V5V3Aainfix &lt;=V1V5FIainfix &lt;V1V2NIainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V1V3Aainfix &lt;=c0V1FF">
shape="ainfix &lt;=agetV4V5agetV4V3Iainfix &lt;=V5V3Aainfix &lt;=V1V5FIainfix &lt;V1V2NIainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V1V3Aainfix &lt;=c0V1Aainfix &lt;=c0V0FF">
<label
name="expl:VC for find"/>
<proof
......@@ -519,10 +519,10 @@
locfile="../algo65.mlw"
loclnum="36" loccnumb="10" loccnume="14"
expl="25. postcondition"
sum="1eee0dcd4d7089277aacca2aa0f98e39"
sum="9863f77f21cf5b36076585d9edc764e2"
proved="true"
expanded="true"
shape="ainfix &lt;=agetV4V3agetV4V5Iainfix &lt;=V5V2Aainfix &lt;=V3V5FIainfix &lt;V1V2NIainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V1V3Aainfix &lt;=c0V1FF">
shape="ainfix &lt;=agetV4V3agetV4V5Iainfix &lt;=V5V2Aainfix &lt;=V3V5FIainfix &lt;V1V2NIainfix &lt;V2V0Aainfix &lt;=V3V2Aainfix &lt;=V1V3Aainfix &lt;=c0V1Aainfix &lt;=c0V0FF">
<label
name="expl:VC for find"/>
<proof
......
......@@ -24,10 +24,10 @@
locfile="../arm.mlw"
loclnum="16" loccnumb="6" loccnume="20"
expl="VC for insertion_sort"
sum="7748fd507776784f81c6745ae3a11c7f"
sum="b316e30c82ef0fd3831a4b3ad8e0525d"
proved="false"
expanded="false"
shape="iainfix &lt;=V5c10iainfix &lt;agetV13V11agetV13ainfix -V11c1ainfix &lt;V18V11Aainfix &lt;=c0V11Aainfix &lt;=ainfix *c2V15ainfix +ainfix *ainfix -V5c2ainfix -V5c1ainfix *c2ainfix -V5V18Aainvamk arrayV0V17Aainfix &lt;=V18V5Aainfix &lt;=c1V18Iainfix =V18ainfix -V11c1FIainfix =V17asetV16ainfix -V11c1agetV13V11FAainfix &lt;ainfix -V11c1V0Aainfix &lt;=c0ainfix -V11c1Iainfix =V16asetV13V11agetV13ainfix -V11c1FAainfix &lt;V11V0Aainfix &lt;=c0V11Aainfix &lt;ainfix -V11c1V0Aainfix &lt;=c0ainfix -V11c1Aainfix &lt;V11V0Aainfix &lt;=c0V11Iainfix =V15ainfix +V12c1Fainfix &lt;ainfix -c10V19ainfix -c10V5Aainfix &lt;=c0ainfix -c10V5Aainfix &lt;=ainfix *c2V12ainfix *ainfix -V19c2ainfix -V19c1Aainfix =V10ainfix -V19c2AainvV14Aainfix &lt;=V19c11Aainfix &lt;=c2V19Iainfix =V19ainfix +V5c1FAainfix &lt;V11V0Aainfix &lt;=c0V11Aainfix &lt;ainfix -V11c1V0Aainfix &lt;=c0ainfix -V11c1Iainfix &lt;=ainfix *c2V12ainfix +ainfix *ainfix -V5c2ainfix -V5c1ainfix *c2ainfix -V5V11AainvV14Aainfix &lt;=V11V5Aainfix &lt;=c1V11Lamk arrayV0V13FAainfix &lt;=ainfix *c2V6ainfix +ainfix *ainfix -V5c2ainfix -V5c1ainfix *c2ainfix -V5V5AainvV9Aainfix &lt;=V5V5Aainfix &lt;=c1V5Iainfix =V10ainfix +V7c1Fainfix &lt;=V6c45Aainfix =V7c9Iainfix &lt;=ainfix *c2V6ainfix *ainfix -V5c2ainfix -V5c1Aainfix =V7ainfix -V5c2AainvV9Aainfix &lt;=V5c11Aainfix &lt;=c2V5Lamk arrayV0V8FAainfix &lt;=ainfix *c2V1ainfix *ainfix -c2c2ainfix -c2c1Aainfix =V2ainfix -c2c2AainvV4Aainfix &lt;=c2c11Aainfix &lt;=c2c2Iainfix =V1c0Aainfix =V2c0AainvV4Lamk arrayV0V3FF">
shape="iainfix &lt;=V5c10iainfix &lt;agetV13V11agetV13ainfix -V11c1ainfix &lt;V18V11Aainfix &lt;=c0V11Aainfix &lt;=ainfix *c2V15ainfix +ainfix *ainfix -V5c2ainfix -V5c1ainfix *c2ainfix -V5V18Aainvamk arrayV0V17Aainfix &lt;=V18V5Aainfix &lt;=c1V18Iainfix =V18ainfix -V11c1FIainfix =V17asetV16ainfix -V11c1agetV13V11Aainfix &lt;=c0V0FAainfix &lt;ainfix -V11c1V0Aainfix &lt;=c0ainfix -V11c1Iainfix =V16asetV13V11agetV13ainfix -V11c1Aainfix &lt;=c0V0FAainfix &lt;V11V0Aainfix &lt;=c0V11Aainfix &lt;ainfix -V11c1V0Aainfix &lt;=c0ainfix -V11c1Aainfix &lt;V11V0Aainfix &lt;=c0V11Iainfix =V15ainfix +V12c1Fainfix &lt;ainfix -c10V19ainfix -c10V5Aainfix &lt;=c0ainfix -c10V5Aainfix &lt;=ainfix *c2V12ainfix *ainfix -V19c2ainfix -V19c1Aainfix =V10ainfix -V19c2AainvV14Aainfix &lt;=V19c11Aainfix &lt;=c2V19Iainfix =V19ainfix +V5c1FAainfix &lt;V11V0Aainfix &lt;=c0V11Aainfix &lt;ainfix -V11c1V0Aainfix &lt;=c0ainfix -V11c1Aainfix &lt;=c0V0Iainfix &lt;=ainfix *c2V12ainfix +ainfix *ainfix -V5c2ainfix -V5c1ainfix *c2ainfix -V5V11AainvV14Aainfix &lt;=V11V5Aainfix &lt;=c1V11Lamk arrayV0V13FAainfix &lt;=ainfix *c2V6ainfix +ainfix *ainfix -V5c2ainfix -V5c1ainfix *c2ainfix -V5V5AainvV9Aainfix &lt;=V5V5Aainfix &lt;=c1V5Iainfix =V10ainfix +V7c1Fainfix &lt;=V6c45Aainfix =V7c9Aainfix &lt;=c0V0Iainfix &lt;=ainfix *c2V6ainfix *ainfix -V5c2ainfix -V5c1Aainfix =V7ainfix -V5c2AainvV9Aainfix &lt;=V5c11Aainfix &lt;=c2V5Lamk arrayV0V8FAainfix &lt;=ainfix *c2V1ainfix *ainfix -c2c2ainfix -c2c1Aainfix =V2ainfix -c2c2AainvV4Aainfix &lt;=c2c11Aainfix &lt;=c2c2Iainfix =V1c0Aainfix =V2c0AainvV4Aainfix &lt;=c0V0Lamk arrayV0V3FF">
<label
name="expl:VC for insertion_sort"/>
</goal>
......
......@@ -24,10 +24,10 @@
locfile="../assigning_meanings_to_programs.mlw"
loclnum="12" loccnumb="6" loccnume="9"
expl="VC for sum"
sum="00e2802392a17c1b774dc7fe33cef4a1"
sum="ffd9a7dd39188363294776b2c47e64ce"
proved="true"
expanded="true"
shape="iainfix &lt;=V4V1ainfix &lt;ainfix -V1V6ainfix -V1V4Aainfix &lt;=c0ainfix -V1V4Aainfix =V5asumV2c1V6Aainfix &lt;=V6ainfix +V1c1Aainfix &lt;=c1V6Iainfix =V6ainfix +V4c1FIainfix =V5ainfix +V3agetV2V4FAainfix &lt;V4V0Aainfix &lt;=c0V4ainfix =V3asumV2c1ainfix +V1c1Iainfix =V3asumV2c1V4Aainfix &lt;=V4ainfix +V1c1Aainfix &lt;=c1V4FAainfix =c0asumV2c1c1Aainfix &lt;=c1ainfix +V1c1Aainfix &lt;=c1c1Iainfix &lt;V1V0Aainfix &lt;=c0V1FF">
shape="iainfix &lt;=V4V1ainfix &lt;ainfix -V1V6ainfix -V1V4Aainfix &lt;=c0ainfix -V1V4Aainfix =V5asumV2c1V6Aainfix &lt;=V6ainfix +V1c1Aainfix &lt;=c1V6Iainfix =V6ainfix +V4c1FIainfix =V5ainfix +V3agetV2V4FAainfix &lt;V4V0Aainfix &lt;=c0V4ainfix =V3asumV2c1ainfix +V1c1Iainfix =V3asumV2c1V4Aainfix &lt;=V4ainfix +V1c1Aainfix &lt;=c1V4FAainfix =c0asumV2c1c1Aainfix &lt;=c1ainfix +V1c1Aainfix &lt;=c1c1Iainfix &lt;V1V0Aainfix &lt;=c0V1Aainfix &lt;=c0V0FF">
<label
name="expl:VC for sum"/>
<proof
......
......@@ -24,10 +24,10 @@
locfile="../binary_search.mlw"
loclnum="17" loccnumb="6" loccnume="19"
expl="VC for binary_search"
sum="9f60cf065e425aed250128303946138f"
sum="7117980790d0ae65ea9a63dcdb93b30e"
proved="true"
expanded="true"
shape="iainfix &lt;=V4V3iainfix &lt;agetV2ainfix +V4adivainfix -V3V4c2V1ainfix &lt;ainfix -V3V5ainfix -V3V4Aainfix &lt;=c0ainfix -V3V4Aainfix &lt;=V6V3Aainfix &lt;=V5V6Iainfix =agetV2V6V1Iainfix &lt;V6V0Aainfix &lt;=c0V6FAainfix &lt;V3V0Aainfix &lt;=c0V5Iainfix =V5ainfix +ainfix +V4adivainfix -V3V4c2c1Fiainfix &gt;agetV2ainfix +V4adivainfix -V3V4c2V1ainfix &lt;ainfix -V7V4ainfix -V3V4Aainfix &lt;=c0ainfix -V3V4Aainfix &lt;=V8V7Aainfix &lt;=V4V8Iainfix =agetV2V8V1Iainfix &lt;V8V0Aainfix &lt;=c0V8FAainfix &lt;V7V0Aainfix &lt;=c0V4Iainfix =V7ainfix -ainfix +V4adivainfix -V3V4c2c1Fainfix =agetV2ainfix +V4adivainfix -V3V4c2V1Aainfix &lt;ainfix +V4adivainfix -V3V4c2V0Aainfix &lt;=c0ainfix +V4adivainfix -V3V4c2Aainfix &lt;ainfix +V4adivainfix -V3V4c2V0Aainfix &lt;=c0ainfix +V4adivainfix -V3V4c2Aainfix &lt;ainfix +V4adivainfix -V3V4c2V0Aainfix &lt;=c0ainfix +V4adivainfix -V3V4c2Aainfix &lt;=ainfix +V4adivainfix -V3V4c2V3Aainfix &lt;=V4ainfix +V4adivainfix -V3V4c2ainfix =agetV2V9V1NIainfix &lt;V9V0Aainfix &lt;=c0V9FIainfix &lt;=V10V3Aainfix &lt;=V4V10Iainfix =agetV2V10V1Iainfix &lt;V10V0Aainfix &lt;=c0V10FAainfix &lt;V3V0Aainfix &lt;=c0V4FAainfix &lt;=V11ainfix -V0c1Aainfix &lt;=c0V11Iainfix =agetV2V11V1Iainfix &lt;V11V0Aainfix &lt;=c0V11FAainfix &lt;ainfix -V0c1V0Aainfix &lt;=c0c0Iainfix &lt;=agetV2V12agetV2V13Iainfix &lt;V13V0Aainfix &lt;=V12V13Aainfix &lt;=c0V12FFF">
shape="iainfix &lt;=V4V3iainfix &lt;agetV2ainfix +V4adivainfix -V3V4c2V1ainfix &lt;ainfix -V3V5ainfix -V3V4Aainfix &lt;=c0ainfix -V3V4Aainfix &lt;=V6V3Aainfix &lt;=V5V6Iainfix =agetV2V6V1Iainfix &lt;V6V0Aainfix &lt;=c0V6FAainfix &lt;V3V0Aainfix &lt;=c0V5Iainfix =V5ainfix +ainfix +V4adivainfix -V3V4c2c1Fiainfix &gt;agetV2ainfix +V4adivainfix -V3V4c2V1ainfix &lt;ainfix -V7V4ainfix -V3V4Aainfix &lt;=c0ainfix -V3V4Aainfix &lt;=V8V7Aainfix &lt;=V4V8Iainfix =agetV2V8V1Iainfix &lt;V8V0Aainfix &lt;=c0V8FAainfix &lt;V7V0Aainfix &lt;=c0V4Iainfix =V7ainfix -ainfix +V4adivainfix -V3V4c2c1Fainfix =agetV2ainfix +V4adivainfix -V3V4c2V1Aainfix &lt;ainfix +V4adivainfix -V3V4c2V0Aainfix &lt;=c0ainfix +V4adivainfix -V3V4c2Aainfix &lt;ainfix +V4adivainfix -V3V4c2V0Aainfix &lt;=c0ainfix +V4adivainfix -V3V4c2Aainfix &lt;ainfix +V4adivainfix -V3V4c2V0Aainfix &lt;=c0ainfix +V4adivainfix -V3V4c2Aainfix &lt;=ainfix +V4adivainfix -V3V4c2V3Aainfix &lt;=V4ainfix +V4adivainfix -V3V4c2ainfix =agetV2V9V1NIainfix &lt;V9V0Aainfix &lt;=c0V9FIainfix &lt;=V10V3Aainfix &lt;=V4V10Iainfix =agetV2V10V1Iainfix &lt;V10V0Aainfix &lt;=c0V10FAainfix &lt;V3V0Aainfix &lt;=c0V4FAainfix &lt;=V11ainfix -V0c1Aainfix &lt;=c0V11Iainfix =agetV2V11V1Iainfix &lt;V11V0Aainfix &lt;=c0V11FAainfix &lt;ainfix -V0c1V0Aainfix &lt;=c0c0Iainfix &lt;=agetV2V12agetV2V13Iainfix &lt;V13V0Aainfix &lt;=V12V13Aainfix &lt;=c0V12FAainfix &lt;=c0V0FF">
<label
name="expl:VC for binary_search"/>
<proof
......@@ -59,10 +59,10 @@
locfile="../binary_search.mlw"
loclnum="60" loccnumb="6" loccnume="19"
expl="VC for binary_search"
sum="16ce454ae5e4d3346ff4a9dd4f84fba0"
sum="8bdc6aca362ddf7404a2f2d93ea218ed"
proved="true"
expanded="true"
shape="iainfix &lt;=V4V3iainfix &lt;agetV2V5V1ainfix &lt;ainfix -V3V6ainfix -V3V4Aainfix &lt;=c0ainfix -V3V4Aainfix &lt;=V7V3Aainfix &lt;=V6V7Iainfix =agetV2V7V1Iainfix &lt;V7V0Aainfix &lt;=c0V7FAainfix &lt;V3V0Aainfix &lt;=c0V6Iainfix =V6ainfix +V5c1Fiainfix &gt;agetV2V5V1ainfix &lt;ainfix -V8V4ainfix -V3V4Aainfix &lt;=c0ainfix -V3V4Aainfix &lt;=V9V8Aainfix &lt;=V4V9Iainfix =agetV2V9V1Iainfix &lt;V9V0Aainfix &lt;=c0V9FAainfix &lt;V8V0Aainfix &lt;=c0V4Iainfix =V8ainfix -V5c1Fainfix =agetV2V5V1Aainfix &lt;V5V0Aainfix &lt;=c0V5Aainfix &lt;V5V0Aainfix &lt;=c0V5Aainfix &lt;V5V0Aainfix &lt;=c0V5Iainfix &lt;=V5V3Aainfix &lt;=V4V5FAainfix &lt;=V4V3ainfix =agetV2V10V1NIainfix &lt;V10V0Aainfix &lt;=c0V10FIainfix &lt;=V11V3Aainfix &lt;=V4V11Iainfix =agetV2V11V1Iainfix &lt;V11V0Aainfix &lt;=c0V11FAainfix &lt;V3V0Aainfix &lt;=c0V4FAainfix &lt;=V12ainfix -V0c1Aainfix &lt;=c0V12Iainfix =agetV2V12V1Iainfix &lt;V12V0Aainfix &lt;=c0V12FAainfix &lt;ainfix -V0c1V0Aainfix &lt;=c0c0Iainfix &lt;=agetV2V13agetV2V14Iainfix &lt;V14V0Aainfix &lt;=V13V14Aainfix &lt;=c0V13FFF">
shape="iainfix &lt;=V4V3iainfix &lt;agetV2V5V1ainfix &lt;ainfix -V3V6ainfix -V3V4Aainfix &lt;=c0ainfix -V3V4Aainfix &lt;=V7V3Aainfix &lt;=V6V7Iainfix =agetV2V7V1Iainfix &lt;V7V0Aainfix &lt;=c0V7FAainfix &lt;V3V0Aainfix &lt;=c0V6Iainfix =V6ainfix +V5c1Fiainfix &gt;agetV2V5V1ainfix &lt;ainfix -V8V4ainfix -V3V4Aainfix &lt;=c0ainfix -V3V4Aainfix &lt;=V9V8Aainfix &lt;=V4V9Iainfix =agetV2V9V1Iainfix &lt;V9V0Aainfix &lt;=c0V9FAainfix &lt;V8V0Aainfix &lt;=c0V4Iainfix =V8ainfix -V5c1Fainfix =agetV2V5V1Aainfix &lt;V5V0Aainfix &lt;=c0V5Aainfix &lt;V5V0Aainfix &lt;=c0V5Aainfix &lt;V5V0Aainfix &lt;=c0V5Iainfix &lt;=V5V3Aainfix &lt;=V4V5FAainfix &lt;=V4V3ainfix =agetV2V10V1NIainfix &lt;V10V0Aainfix &lt;=c0V10FIainfix &lt;=V11V3Aainfix &lt;=V4V11Iainfix =agetV2V11V1Iainfix &lt;V11V0Aainfix &lt;=c0V11FAainfix &lt;V3V0Aainfix &lt;=c0V4FAainfix &lt;=V12ainfix -V0c1Aainfix &lt;=c0V12Iainfix =agetV2V12V1Iainfix &lt;V12V0Aainfix &lt;=c0V12FAainfix &lt;ainfix -V0c1V0Aainfix &lt;=c0c0Iainfix &lt;=agetV2V13agetV2V14Iainfix &lt;V14V0Aainfix &lt;=V13V14Aainfix &lt;=c0V13FAainfix &lt;=c0V0FF">
<label
name="expl:VC for binary_search"/>
<proof
......
This source diff could not be displayed because it is too large. You can view the blob instead.
(* This file is generated by Why3's Coq driver *)
(* Beware! Only edit allowed sections below *)
Require Import BuiltIn.
Require BuiltIn.
Require int.Int.
Require map.Map.
(* Why3 assumption *)
Definition unit := unit.
(* Why3 assumption *)
Inductive ref (a:Type) {a_WT:WhyType a} :=
| mk_ref : a -> ref a.
Axiom ref_WhyType : forall (a:Type) {a_WT:WhyType a}, WhyType (ref a).
Existing Instance ref_WhyType.
Implicit Arguments mk_ref [[a] [a_WT]].
(* Why3 assumption *)
Definition contents {a:Type} {a_WT:WhyType a}(v:(ref a)): a :=
match v with
| (mk_ref x) => x
end.
(* Why3 assumption *)
Inductive array (a:Type) {a_WT:WhyType a} :=
| mk_array : Z -> (map.Map.map Z a) -> array a.
Axiom array_WhyType : forall (a:Type) {a_WT:WhyType a}, WhyType (array a).
Existing Instance array_WhyType.
Implicit Arguments mk_array [[a] [a_WT]].
(* Why3 assumption *)
Definition elts {a:Type} {a_WT:WhyType a}(v:(array a)): (map.Map.map Z a) :=
match v with
| (mk_array x x1) => x1
end.
(* Why3 assumption *)
Definition length {a:Type} {a_WT:WhyType a}(v:(array a)): Z :=
match v with
| (mk_array x x1) => x
end.
(* Why3 assumption *)
Definition get {a:Type} {a_WT:WhyType a}(a1:(array a)) (i:Z): a :=
(map.Map.get (elts a1) i).
(* Why3 assumption *)
Definition set {a:Type} {a_WT:WhyType a}(a1:(array a)) (i:Z) (v:a): (array
a) := (mk_array (length a1) (map.Map.set (elts a1) i v)).
(* Why3 assumption *)
Definition make {a:Type} {a_WT:WhyType a}(n:Z) (v:a): (array a) :=
(mk_array n (map.Map.const v:(map.Map.map Z a))).
(* Why3 assumption *)
Definition decrease1(a:(array Z)): Prop := forall (i:Z), ((0%Z <= i)%Z /\
(i < ((length a) - 1%Z)%Z)%Z) -> (((get a i) - 1%Z)%Z <= (get a
(i + 1%Z)%Z))%Z.
Axiom decrease1_induction : forall (a:(array Z)), (decrease1 a) ->
forall (i:Z) (j:Z), (((0%Z <= i)%Z /\ (i <= j)%Z) /\ (j < (length a))%Z) ->
((((get a i) + i)%Z - j)%Z <= (get a j))%Z.
(* Why3 goal *)
Theorem WP_parameter_search_rec : forall (a:Z) (i:Z), forall (a1:(map.Map.map
Z Z)), let a2 := (mk_array a a1) in (((decrease1 a2) /\ (0%Z <= i)%Z) ->
((i < a)%Z -> (((0%Z <= i)%Z /\ (i < a)%Z) -> ((~ ((map.Map.get a1
i) = 0%Z)) -> (((0%Z <= i)%Z /\ (i < a)%Z) -> ((0%Z < (map.Map.get a1
i))%Z -> (((0%Z <= i)%Z /\ (i < a)%Z) -> let o := (map.Map.get a1 i) in
(((decrease1 a2) /\ (0%Z <= (i + o)%Z)%Z) -> forall (result:Z),
(((result = (-1%Z)%Z) /\ forall (j:Z), (((i + o)%Z <= j)%Z /\ (j < a)%Z) ->
~ ((map.Map.get a1 j) = 0%Z)) \/ ((((i + o)%Z <= result)%Z /\
(result < a)%Z) /\ (((map.Map.get a1 result) = 0%Z) /\ forall (j:Z),
(((i + o)%Z <= j)%Z /\ (j < result)%Z) -> ~ ((map.Map.get a1
j) = 0%Z)))) -> (((result = (-1%Z)%Z) /\ forall (j:Z), ((i <= j)%Z /\
(j < a)%Z) -> ~ ((map.Map.get a1 j) = 0%Z)) \/ (((i <= result)%Z /\
(result < a)%Z) /\ (((map.Map.get a1 result) = 0%Z) /\ forall (j:Z),
((i <= j)%Z /\ (j < result)%Z) -> ~ ((map.Map.get a1 j) = 0%Z)))))))))))).
Proof.
intuition.