why3session.xml 64.3 KB
Newer Older
1
<?xml version="1.0" encoding="UTF-8"?>
MARCHE Claude's avatar
MARCHE Claude committed
2
<!DOCTYPE why3session PUBLIC "-//Why3//proof session v2//EN" "http://why3.lri.fr/why3session.dtd">
Andrei Paskevich's avatar
Andrei Paskevich committed
3
<why3session shape_version="4">
MARCHE Claude's avatar
MARCHE Claude committed
4
 <prover
Jean-Christophe Filliâtre's avatar
Jean-Christophe Filliâtre committed
5
  id="0"
MARCHE Claude's avatar
MARCHE Claude committed
6
  name="Alt-Ergo"
MARCHE Claude's avatar
MARCHE Claude committed
7
  version="0.95.1"/>
8
 <prover
9
  id="1"
10 11 12 13
  name="Alt-Ergo"
  version="0.95.2"/>
 <prover
  id="2"
MARCHE Claude's avatar
MARCHE Claude committed
14
  name="CVC3"
15
  version="2.2"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
16
 <prover
17
  id="3"
18 19 20
  name="CVC3"
  version="2.4.1"/>
 <prover
21
  id="4"
Jean-Christophe Filliâtre's avatar
Jean-Christophe Filliâtre committed
22
  name="Coq"
23
  version="8.4pl2"/>
MARCHE Claude's avatar
MARCHE Claude committed
24
 <prover
25
  id="5"
MARCHE Claude's avatar
MARCHE Claude committed
26 27 28 29
  name="Z3"
  version="2.19"/>
 <file
  name="../insertion_sort.mlw"
Andrei Paskevich's avatar
Andrei Paskevich committed
30
  verified="true"
31
  expanded="true">
MARCHE Claude's avatar
MARCHE Claude committed
32
  <theory
Andrei Paskevich's avatar
Andrei Paskevich committed
33
   name="InsertionSort"
34
   locfile="../insertion_sort.mlw"
Jean-Christophe Filliâtre's avatar
Jean-Christophe Filliâtre committed
35
   loclnum="4" loccnumb="7" loccnume="20"
Andrei Paskevich's avatar
Andrei Paskevich committed
36
   verified="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
37
   expanded="true">
MARCHE Claude's avatar
MARCHE Claude committed
38 39
   <goal
    name="WP_parameter insertion_sort"
40
    locfile="../insertion_sort.mlw"
Jean-Christophe Filliâtre's avatar
Jean-Christophe Filliâtre committed
41
    loclnum="13" loccnumb="6" loccnume="20"
42
    expl="VC for insertion_sort"
MARCHE Claude's avatar
MARCHE Claude committed
43
    sum="51d42871211bb69d46a5233001e75d01"
MARCHE Claude's avatar
MARCHE Claude committed
44
    proved="true"
45 46
    expanded="false"
    shape="apermut_allV2V5Aasorted_subV4c0V0Aainfix &lt;=c0V0Iapermut_allV2V5Aasorted_subV4c0ainfix +V3c1Aiapermut_allV2amk arrayV0V10Aasorted_subV10c0ainfix +V6c1Iainfix =V10asetV9V8V7Aainfix &lt;=c0V0FAainfix &lt;V8V0Aainfix &lt;=c0V8Aainfix &lt;=c0V0Aainfix &lt;=agetV9V11V7Iainfix &lt;V11V8Aainfix &lt;=c0V11Fiapermut_allV2amk arrayV0V13Aasorted_subV13c0ainfix +V6c1Iainfix =V13asetV9V8V7Aainfix &lt;=c0V0FAainfix &lt;V8V0Aainfix &lt;=c0V8Aainfix &lt;=agetV9V14V7Iainfix &lt;V14V8Aainfix &lt;=c0V14Fainfix &lt;V17V8Aainfix &lt;=c0V8Aainfix &lt;V7agetV16V18Iainfix &lt;=V18V6Aainfix &lt;=ainfix +V17c1V18FAainfix &lt;=agetV16V19agetV16V20INainfix =V20V17INainfix =V19V17Iainfix &lt;=V20V6Aainfix &lt;=V19V20Aainfix &lt;=c0V19FAapermut_allV2amk arrayV0asetV16V17V7Aainfix &lt;=V17V6Aainfix &lt;=c0V17Iainfix =V17ainfix -V8c1FAaexchangeamk arrayV0asetV9V8V7amk arrayV0asetV16ainfix -V8c1V7ainfix -V8c1V8Iainfix =V16asetV9V8agetV9V15Aainfix &lt;=c0V0FAainfix &lt;V8V0Aainfix &lt;=c0V8Aainfix &lt;V15V0Aainfix &lt;=c0V15Lainfix -V8c1ainfix &gt;agetV9V12V7Aainfix &lt;V12V0Aainfix &lt;=c0V12Aainfix &lt;=c0V0Lainfix -V8c1ainfix &gt;V8c0Iainfix &lt;V7agetV9V21Iainfix &lt;=V21V6Aainfix &lt;=ainfix +V8c1V21FAainfix &lt;=agetV9V22agetV9V23INainfix =V23V8INainfix =V22V8Iainfix &lt;=V23V6Aainfix &lt;=V22V23Aainfix &lt;=c0V22FAapermut_allV2amk arrayV0asetV9V8V7Aainfix &lt;=V8V6Aainfix &lt;=c0V8FAainfix &lt;V7agetV4V24Iainfix &lt;=V24V6Aainfix &lt;=ainfix +V6c1V24FAainfix &lt;=agetV4V25agetV4V26INainfix =V26V6INainfix =V25V6Iainfix &lt;=V26V6Aainfix &lt;=V25V26Aainfix &lt;=c0V25FAapermut_allV2amk arrayV0asetV4V6V7Aainfix &lt;=V6V6Aainfix &lt;=c0V6LagetV4V6Aainfix &lt;V6V0Aainfix &lt;=c0V6Aainfix &lt;=c0V0Iapermut_allV2V5Aasorted_subV4c0V6Iainfix &lt;=V6V3Aainfix &lt;=c1V6FLamk arrayV0V4FAapermut_allV2V2Aasorted_subV1c0c1Iainfix &lt;=c1V3Aapermut_allV2V2Aasorted_subV1c0V0Iainfix &gt;c1V3Lainfix -V0c1Iainfix &lt;=c0V0Lamk arrayV0V1F">
Jean-Christophe Filliâtre's avatar
Jean-Christophe Filliâtre committed
47
    <label
48
     name="expl:VC for insertion_sort"/>
MARCHE Claude's avatar
MARCHE Claude committed
49 50 51
    <transf
     name="split_goal"
     proved="true"
52
     expanded="false">
MARCHE Claude's avatar
MARCHE Claude committed
53 54
     <goal
      name="WP_parameter insertion_sort.1"
55
      locfile="../insertion_sort.mlw"
Jean-Christophe Filliâtre's avatar
Jean-Christophe Filliâtre committed
56
      loclnum="13" loccnumb="6" loccnume="20"
57
      expl="1. postcondition"
MARCHE Claude's avatar
MARCHE Claude committed
58
      sum="360040d22920b2d2f118c90591251e4f"
MARCHE Claude's avatar
MARCHE Claude committed
59
      proved="true"
60 61
      expanded="false"
      shape="postconditionapermut_allV2V2Aasorted_subV1c0V0Iainfix &gt;c1V3Lainfix -V0c1Iainfix &lt;=c0V0Lamk arrayV0V1F">
Jean-Christophe Filliâtre's avatar
Jean-Christophe Filliâtre committed
62
      <label
63
       name="expl:VC for insertion_sort"/>
MARCHE Claude's avatar
MARCHE Claude committed
64
      <proof
Jean-Christophe Filliâtre's avatar
Jean-Christophe Filliâtre committed
65
       prover="0"
Andrei Paskevich's avatar
Andrei Paskevich committed
66 67
       timelimit="5"
       memlimit="1000"
Jean-Christophe Filliâtre's avatar
Jean-Christophe Filliâtre committed
68 69
       obsolete="false"
       archived="false">
Andrei Paskevich's avatar
Andrei Paskevich committed
70
       <result status="valid" time="0.02"/>
71
      </proof>
72
      <proof
73
       prover="5"
74 75 76 77 78 79
       timelimit="10"
       memlimit="0"
       obsolete="false"
       archived="false">
       <result status="valid" time="0.03"/>
      </proof>
80
     </goal>
MARCHE Claude's avatar
MARCHE Claude committed
81 82
     <goal
      name="WP_parameter insertion_sort.2"
83
      locfile="../insertion_sort.mlw"
Jean-Christophe Filliâtre's avatar
Jean-Christophe Filliâtre committed
84
      loclnum="13" loccnumb="6" loccnume="20"
85
      expl="2. loop invariant init"
MARCHE Claude's avatar
MARCHE Claude committed
86
      sum="67a5bce4ebec04771218c27744d93722"
MARCHE Claude's avatar
MARCHE Claude committed
87
      proved="true"
88 89
      expanded="false"
      shape="loop invariant initapermut_allV2V2Aasorted_subV1c0c1Iainfix &lt;=c1V3Lainfix -V0c1Iainfix &lt;=c0V0Lamk arrayV0V1F">
Jean-Christophe Filliâtre's avatar
Jean-Christophe Filliâtre committed
90
      <label
91
       name="expl:VC for insertion_sort"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
92 93 94 95 96 97
      <proof
       prover="0"
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
Andrei Paskevich's avatar
Andrei Paskevich committed
98
       <result status="valid" time="0.02"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
99
      </proof>
100
     </goal>
MARCHE Claude's avatar
MARCHE Claude committed
101 102
     <goal
      name="WP_parameter insertion_sort.3"
103
      locfile="../insertion_sort.mlw"
Andrei Paskevich's avatar
Andrei Paskevich committed
104
      loclnum="13" loccnumb="6" loccnume="20"
Andrei Paskevich's avatar
Andrei Paskevich committed
105
      expl="3. type invariant"
MARCHE Claude's avatar
MARCHE Claude committed
106
      sum="94290c1597280706b2a6050fed51238d"
Andrei Paskevich's avatar
Andrei Paskevich committed
107
      proved="true"
108 109
      expanded="false"
      shape="type invariantainfix &lt;=c0V0Iapermut_allV2V5Aasorted_subV4c0V6Iainfix &lt;=V6V3Aainfix &lt;=c1V6FLamk arrayV0V4FIainfix &lt;=c1V3Lainfix -V0c1Iainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
110
      <label
111
       name="expl:VC for insertion_sort"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
112
      <proof
113
       prover="0"
Andrei Paskevich's avatar
Andrei Paskevich committed
114 115 116 117
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
Andrei Paskevich's avatar
Andrei Paskevich committed
118
       <result status="valid" time="0.01"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
119 120 121 122
      </proof>
     </goal>
     <goal
      name="WP_parameter insertion_sort.4"
123
      locfile="../insertion_sort.mlw"
Andrei Paskevich's avatar
Andrei Paskevich committed
124
      loclnum="13" loccnumb="6" loccnume="20"
125
      expl="4. index in array bounds"
MARCHE Claude's avatar
MARCHE Claude committed
126
      sum="2b1288203d2a615de32811816a0674fc"
Andrei Paskevich's avatar
Andrei Paskevich committed
127
      proved="true"
128 129
      expanded="false"
      shape="index in array boundsainfix &lt;V6V0Aainfix &lt;=c0V6Iainfix &lt;=c0V0Iapermut_allV2V5Aasorted_subV4c0V6Iainfix &lt;=V6V3Aainfix &lt;=c1V6FLamk arrayV0V4FIainfix &lt;=c1V3Lainfix -V0c1Iainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
130
      <label
131
       name="expl:VC for insertion_sort"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
132 133 134 135 136 137
      <proof
       prover="0"
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
138
       <result status="valid" time="0.01"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
139 140 141 142
      </proof>
     </goal>
     <goal
      name="WP_parameter insertion_sort.5"
143
      locfile="../insertion_sort.mlw"
Andrei Paskevich's avatar
Andrei Paskevich committed
144
      loclnum="13" loccnumb="6" loccnume="20"
145
      expl="5. loop invariant init"
MARCHE Claude's avatar
MARCHE Claude committed
146
      sum="841b94715a592ca2e3f5a49f6ccf587f"
Andrei Paskevich's avatar
Andrei Paskevich committed
147
      proved="true"
148 149
      expanded="false"
      shape="loop invariant initainfix &lt;=V6V6Aainfix &lt;=c0V6LagetV4V6Iainfix &lt;V6V0Aainfix &lt;=c0V6Aainfix &lt;=c0V0Iapermut_allV2V5Aasorted_subV4c0V6Iainfix &lt;=V6V3Aainfix &lt;=c1V6FLamk arrayV0V4FIainfix &lt;=c1V3Lainfix -V0c1Iainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
150
      <label
151
       name="expl:VC for insertion_sort"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
152
      <proof
Andrei Paskevich's avatar
Andrei Paskevich committed
153
       prover="0"
Andrei Paskevich's avatar
Andrei Paskevich committed
154 155 156 157
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
Andrei Paskevich's avatar
Andrei Paskevich committed
158
       <result status="valid" time="0.01"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
159 160 161 162
      </proof>
     </goal>
     <goal
      name="WP_parameter insertion_sort.6"
163
      locfile="../insertion_sort.mlw"
Andrei Paskevich's avatar
Andrei Paskevich committed
164
      loclnum="13" loccnumb="6" loccnume="20"
165
      expl="6. loop invariant init"
MARCHE Claude's avatar
MARCHE Claude committed
166
      sum="833c8bbffa3668f9d0e14b3d4ba0d350"
Andrei Paskevich's avatar
Andrei Paskevich committed
167
      proved="true"
168 169
      expanded="false"
      shape="loop invariant initapermut_allV2amk arrayV0asetV4V6V7LagetV4V6Iainfix &lt;V6V0Aainfix &lt;=c0V6Aainfix &lt;=c0V0Iapermut_allV2V5Aasorted_subV4c0V6Iainfix &lt;=V6V3Aainfix &lt;=c1V6FLamk arrayV0V4FIainfix &lt;=c1V3Lainfix -V0c1Iainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
170
      <label
171
       name="expl:VC for insertion_sort"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
172
      <proof
173
       prover="3"
Andrei Paskevich's avatar
Andrei Paskevich committed
174 175 176 177
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
Andrei Paskevich's avatar
Andrei Paskevich committed
178
       <result status="valid" time="0.02"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
179 180 181 182
      </proof>
     </goal>
     <goal
      name="WP_parameter insertion_sort.7"
183
      locfile="../insertion_sort.mlw"
Andrei Paskevich's avatar
Andrei Paskevich committed
184
      loclnum="13" loccnumb="6" loccnume="20"
185
      expl="7. loop invariant init"
MARCHE Claude's avatar
MARCHE Claude committed
186
      sum="b805d9017269967f4b85a3a2d57f0860"
Andrei Paskevich's avatar
Andrei Paskevich committed
187
      proved="true"
188 189
      expanded="false"
      shape="loop invariant initainfix &lt;=agetV4V8agetV4V9INainfix =V9V6INainfix =V8V6Iainfix &lt;=V9V6Aainfix &lt;=V8V9Aainfix &lt;=c0V8FLagetV4V6Iainfix &lt;V6V0Aainfix &lt;=c0V6Aainfix &lt;=c0V0Iapermut_allV2V5Aasorted_subV4c0V6Iainfix &lt;=V6V3Aainfix &lt;=c1V6FLamk arrayV0V4FIainfix &lt;=c1V3Lainfix -V0c1Iainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205
      <label
       name="expl:VC for insertion_sort"/>
      <proof
       prover="0"
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
       <result status="valid" time="0.01"/>
      </proof>
     </goal>
     <goal
      name="WP_parameter insertion_sort.8"
      locfile="../insertion_sort.mlw"
      loclnum="13" loccnumb="6" loccnume="20"
      expl="8. loop invariant init"
MARCHE Claude's avatar
MARCHE Claude committed
206
      sum="57998b9c46d4e860be3d26bd62a50d44"
Andrei Paskevich's avatar
Andrei Paskevich committed
207
      proved="true"
208 209
      expanded="false"
      shape="loop invariant initainfix &lt;V7agetV4V8Iainfix &lt;=V8V6Aainfix &lt;=ainfix +V6c1V8FLagetV4V6Iainfix &lt;V6V0Aainfix &lt;=c0V6Aainfix &lt;=c0V0Iapermut_allV2V5Aasorted_subV4c0V6Iainfix &lt;=V6V3Aainfix &lt;=c1V6FLamk arrayV0V4FIainfix &lt;=c1V3Lainfix -V0c1Iainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
210
      <label
211
       name="expl:VC for insertion_sort"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
212 213 214 215 216 217
      <proof
       prover="0"
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
Andrei Paskevich's avatar
Andrei Paskevich committed
218
       <result status="valid" time="0.02"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
219 220
      </proof>
      <proof
221
       prover="3"
Andrei Paskevich's avatar
Andrei Paskevich committed
222 223 224 225 226 227 228 229
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
       <result status="valid" time="0.02"/>
      </proof>
     </goal>
     <goal
Andrei Paskevich's avatar
Andrei Paskevich committed
230 231 232 233
      name="WP_parameter insertion_sort.9"
      locfile="../insertion_sort.mlw"
      loclnum="13" loccnumb="6" loccnume="20"
      expl="9. type invariant"
MARCHE Claude's avatar
MARCHE Claude committed
234
      sum="45c8ebd32f5ddcb8e387fd04d5d35e01"
Andrei Paskevich's avatar
Andrei Paskevich committed
235
      proved="true"
236 237
      expanded="false"
      shape="type invariantainfix &lt;=c0V0Lainfix -V8c1Iainfix &gt;V8c0Iainfix &lt;V7agetV9V11Iainfix &lt;=V11V6Aainfix &lt;=ainfix +V8c1V11FAainfix &lt;=agetV9V12agetV9V13INainfix =V13V8INainfix =V12V8Iainfix &lt;=V13V6Aainfix &lt;=V12V13Aainfix &lt;=c0V12FAapermut_allV2amk arrayV0asetV9V8V7Aainfix &lt;=V8V6Aainfix &lt;=c0V8FLagetV4V6Iainfix &lt;V6V0Aainfix &lt;=c0V6Aainfix &lt;=c0V0Iapermut_allV2V5Aasorted_subV4c0V6Iainfix &lt;=V6V3Aainfix &lt;=c1V6FLamk arrayV0V4FIainfix &lt;=c1V3Lainfix -V0c1Iainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
238 239 240
      <label
       name="expl:VC for insertion_sort"/>
      <proof
241
       prover="0"
Andrei Paskevich's avatar
Andrei Paskevich committed
242 243 244 245 246 247 248 249 250
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
       <result status="valid" time="0.01"/>
      </proof>
     </goal>
     <goal
      name="WP_parameter insertion_sort.10"
251
      locfile="../insertion_sort.mlw"
Andrei Paskevich's avatar
Andrei Paskevich committed
252
      loclnum="13" loccnumb="6" loccnume="20"
253
      expl="10. index in array bounds"
MARCHE Claude's avatar
MARCHE Claude committed
254
      sum="7eecc893c80dcff1567d8d479523b6bd"
Andrei Paskevich's avatar
Andrei Paskevich committed
255
      proved="true"
256 257
      expanded="false"
      shape="index in array boundsainfix &lt;V10V0Aainfix &lt;=c0V10Iainfix &lt;=c0V0Lainfix -V8c1Iainfix &gt;V8c0Iainfix &lt;V7agetV9V11Iainfix &lt;=V11V6Aainfix &lt;=ainfix +V8c1V11FAainfix &lt;=agetV9V12agetV9V13INainfix =V13V8INainfix =V12V8Iainfix &lt;=V13V6Aainfix &lt;=V12V13Aainfix &lt;=c0V12FAapermut_allV2amk arrayV0asetV9V8V7Aainfix &lt;=V8V6Aainfix &lt;=c0V8FLagetV4V6Iainfix &lt;V6V0Aainfix &lt;=c0V6Aainfix &lt;=c0V0Iapermut_allV2V5Aasorted_subV4c0V6Iainfix &lt;=V6V3Aainfix &lt;=c1V6FLamk arrayV0V4FIainfix &lt;=c1V3Lainfix -V0c1Iainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
258
      <label
259
       name="expl:VC for insertion_sort"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
260 261 262 263 264 265
      <proof
       prover="0"
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
266
       <result status="valid" time="0.01"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
267 268 269
      </proof>
     </goal>
     <goal
Andrei Paskevich's avatar
Andrei Paskevich committed
270
      name="WP_parameter insertion_sort.11"
271
      locfile="../insertion_sort.mlw"
Andrei Paskevich's avatar
Andrei Paskevich committed
272
      loclnum="13" loccnumb="6" loccnume="20"
273
      expl="11. index in array bounds"
MARCHE Claude's avatar
MARCHE Claude committed
274
      sum="b9a92c18881d5ec5683fedd4e9ab61b8"
Andrei Paskevich's avatar
Andrei Paskevich committed
275
      proved="true"
276 277
      expanded="false"
      shape="index in array boundsainfix &lt;V11V0Aainfix &lt;=c0V11Lainfix -V8c1Iainfix &gt;agetV9V10V7Iainfix &lt;V10V0Aainfix &lt;=c0V10Aainfix &lt;=c0V0Lainfix -V8c1Iainfix &gt;V8c0Iainfix &lt;V7agetV9V12Iainfix &lt;=V12V6Aainfix &lt;=ainfix +V8c1V12FAainfix &lt;=agetV9V13agetV9V14INainfix =V14V8INainfix =V13V8Iainfix &lt;=V14V6Aainfix &lt;=V13V14Aainfix &lt;=c0V13FAapermut_allV2amk arrayV0asetV9V8V7Aainfix &lt;=V8V6Aainfix &lt;=c0V8FLagetV4V6Iainfix &lt;V6V0Aainfix &lt;=c0V6Aainfix &lt;=c0V0Iapermut_allV2V5Aasorted_subV4c0V6Iainfix &lt;=V6V3Aainfix &lt;=c1V6FLamk arrayV0V4FIainfix &lt;=c1V3Lainfix -V0c1Iainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
278
      <label
279
       name="expl:VC for insertion_sort"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
280 281 282 283 284 285
      <proof
       prover="0"
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
286
       <result status="valid" time="0.02"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
287 288 289
      </proof>
     </goal>
     <goal
Andrei Paskevich's avatar
Andrei Paskevich committed
290
      name="WP_parameter insertion_sort.12"
291
      locfile="../insertion_sort.mlw"
Andrei Paskevich's avatar
Andrei Paskevich committed
292
      loclnum="13" loccnumb="6" loccnume="20"
293
      expl="12. index in array bounds"
MARCHE Claude's avatar
MARCHE Claude committed
294
      sum="fadd7b4c98a85a928cebefe610dd18bd"
Andrei Paskevich's avatar
Andrei Paskevich committed
295
      proved="true"
296 297
      expanded="false"
      shape="index in array boundsainfix &lt;V8V0Aainfix &lt;=c0V8Iainfix &lt;V11V0Aainfix &lt;=c0V11Lainfix -V8c1Iainfix &gt;agetV9V10V7Iainfix &lt;V10V0Aainfix &lt;=c0V10Aainfix &lt;=c0V0Lainfix -V8c1Iainfix &gt;V8c0Iainfix &lt;V7agetV9V12Iainfix &lt;=V12V6Aainfix &lt;=ainfix +V8c1V12FAainfix &lt;=agetV9V13agetV9V14INainfix =V14V8INainfix =V13V8Iainfix &lt;=V14V6Aainfix &lt;=V13V14Aainfix &lt;=c0V13FAapermut_allV2amk arrayV0asetV9V8V7Aainfix &lt;=V8V6Aainfix &lt;=c0V8FLagetV4V6Iainfix &lt;V6V0Aainfix &lt;=c0V6Aainfix &lt;=c0V0Iapermut_allV2V5Aasorted_subV4c0V6Iainfix &lt;=V6V3Aainfix &lt;=c1V6FLamk arrayV0V4FIainfix &lt;=c1V3Lainfix -V0c1Iainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
298
      <label
299
       name="expl:VC for insertion_sort"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
300 301 302 303 304 305
      <proof
       prover="0"
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
306
       <result status="valid" time="0.02"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
307 308 309
      </proof>
     </goal>
     <goal
Andrei Paskevich's avatar
Andrei Paskevich committed
310
      name="WP_parameter insertion_sort.13"
311
      locfile="../insertion_sort.mlw"
Andrei Paskevich's avatar
Andrei Paskevich committed
312
      loclnum="13" loccnumb="6" loccnume="20"
Andrei Paskevich's avatar
Andrei Paskevich committed
313
      expl="13. assertion"
MARCHE Claude's avatar
MARCHE Claude committed
314
      sum="60ef83e6cfcd2c6c704628fc5908cd96"
Andrei Paskevich's avatar
Andrei Paskevich committed
315
      proved="true"
316 317
      expanded="false"
      shape="assertionaexchangeamk arrayV0asetV9V8V7amk arrayV0asetV12ainfix -V8c1V7ainfix -V8c1V8Iainfix =V12asetV9V8agetV9V11Aainfix &lt;=c0V0FIainfix &lt;V8V0Aainfix &lt;=c0V8Iainfix &lt;V11V0Aainfix &lt;=c0V11Lainfix -V8c1Iainfix &gt;agetV9V10V7Iainfix &lt;V10V0Aainfix &lt;=c0V10Aainfix &lt;=c0V0Lainfix -V8c1Iainfix &gt;V8c0Iainfix &lt;V7agetV9V13Iainfix &lt;=V13V6Aainfix &lt;=ainfix +V8c1V13FAainfix &lt;=agetV9V14agetV9V15INainfix =V15V8INainfix =V14V8Iainfix &lt;=V15V6Aainfix &lt;=V14V15Aainfix &lt;=c0V14FAapermut_allV2amk arrayV0asetV9V8V7Aainfix &lt;=V8V6Aainfix &lt;=c0V8FLagetV4V6Iainfix &lt;V6V0Aainfix &lt;=c0V6Aainfix &lt;=c0V0Iapermut_allV2V5Aasorted_subV4c0V6Iainfix &lt;=V6V3Aainfix &lt;=c1V6FLamk arrayV0V4FIainfix &lt;=c1V3Lainfix -V0c1Iainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
318
      <label
319
       name="expl:VC for insertion_sort"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
320 321 322 323 324 325 326 327 328 329
      <proof
       prover="0"
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
       <result status="valid" time="0.02"/>
      </proof>
     </goal>
     <goal
Andrei Paskevich's avatar
Andrei Paskevich committed
330
      name="WP_parameter insertion_sort.14"
331
      locfile="../insertion_sort.mlw"
Andrei Paskevich's avatar
Andrei Paskevich committed
332
      loclnum="13" loccnumb="6" loccnume="20"
Andrei Paskevich's avatar
Andrei Paskevich committed
333
      expl="14. loop invariant preservation"
MARCHE Claude's avatar
MARCHE Claude committed
334
      sum="de108b4ba56e7c4ea47a5f272f05db5c"
Andrei Paskevich's avatar
Andrei Paskevich committed
335
      proved="true"
336 337
      expanded="false"
      shape="loop invariant preservationainfix &lt;=V13V6Aainfix &lt;=c0V13Iainfix =V13ainfix -V8c1FIaexchangeamk arrayV0asetV9V8V7amk arrayV0asetV12ainfix -V8c1V7ainfix -V8c1V8Iainfix =V12asetV9V8agetV9V11Aainfix &lt;=c0V0FIainfix &lt;V8V0Aainfix &lt;=c0V8Iainfix &lt;V11V0Aainfix &lt;=c0V11Lainfix -V8c1Iainfix &gt;agetV9V10V7Iainfix &lt;V10V0Aainfix &lt;=c0V10Aainfix &lt;=c0V0Lainfix -V8c1Iainfix &gt;V8c0Iainfix &lt;V7agetV9V14Iainfix &lt;=V14V6Aainfix &lt;=ainfix +V8c1V14FAainfix &lt;=agetV9V15agetV9V16INainfix =V16V8INainfix =V15V8Iainfix &lt;=V16V6Aainfix &lt;=V15V16Aainfix &lt;=c0V15FAapermut_allV2amk arrayV0asetV9V8V7Aainfix &lt;=V8V6Aainfix &lt;=c0V8FLagetV4V6Iainfix &lt;V6V0Aainfix &lt;=c0V6Aainfix &lt;=c0V0Iapermut_allV2V5Aasorted_subV4c0V6Iainfix &lt;=V6V3Aainfix &lt;=c1V6FLamk arrayV0V4FIainfix &lt;=c1V3Lainfix -V0c1Iainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
338
      <label
339
       name="expl:VC for insertion_sort"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
340 341 342 343 344 345 346 347 348 349
      <proof
       prover="0"
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
       <result status="valid" time="0.00"/>
      </proof>
     </goal>
     <goal
Andrei Paskevich's avatar
Andrei Paskevich committed
350
      name="WP_parameter insertion_sort.15"
351
      locfile="../insertion_sort.mlw"
Jean-Christophe Filliâtre's avatar
Jean-Christophe Filliâtre committed
352
      loclnum="13" loccnumb="6" loccnume="20"
Andrei Paskevich's avatar
Andrei Paskevich committed
353
      expl="15. loop invariant preservation"
MARCHE Claude's avatar
MARCHE Claude committed
354
      sum="7c1c2cc4367a5633bc287d2900c3c14b"
MARCHE Claude's avatar
MARCHE Claude committed
355
      proved="true"
356 357
      expanded="false"
      shape="loop invariant preservationapermut_allV2amk arrayV0asetV12V13V7Iainfix =V13ainfix -V8c1FIaexchangeamk arrayV0asetV9V8V7amk arrayV0asetV12ainfix -V8c1V7ainfix -V8c1V8Iainfix =V12asetV9V8agetV9V11Aainfix &lt;=c0V0FIainfix &lt;V8V0Aainfix &lt;=c0V8Iainfix &lt;V11V0Aainfix &lt;=c0V11Lainfix -V8c1Iainfix &gt;agetV9V10V7Iainfix &lt;V10V0Aainfix &lt;=c0V10Aainfix &lt;=c0V0Lainfix -V8c1Iainfix &gt;V8c0Iainfix &lt;V7agetV9V14Iainfix &lt;=V14V6Aainfix &lt;=ainfix +V8c1V14FAainfix &lt;=agetV9V15agetV9V16INainfix =V16V8INainfix =V15V8Iainfix &lt;=V16V6Aainfix &lt;=V15V16Aainfix &lt;=c0V15FAapermut_allV2amk arrayV0asetV9V8V7Aainfix &lt;=V8V6Aainfix &lt;=c0V8FLagetV4V6Iainfix &lt;V6V0Aainfix &lt;=c0V6Aainfix &lt;=c0V0Iapermut_allV2V5Aasorted_subV4c0V6Iainfix &lt;=V6V3Aainfix &lt;=c1V6FLamk arrayV0V4FIainfix &lt;=c1V3Lainfix -V0c1Iainfix &lt;=c0V0Lamk arrayV0V1F">
Jean-Christophe Filliâtre's avatar
Jean-Christophe Filliâtre committed
358
      <label
359
       name="expl:VC for insertion_sort"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
360
      <proof
361
       prover="4"
362
       timelimit="10"
Andrei Paskevich's avatar
Andrei Paskevich committed
363 364 365 366
       memlimit="1000"
       edited="insertion_sort_WP_InsertionSort_WP_parameter_insertion_sort_1.v"
       obsolete="false"
       archived="false">
Andrei Paskevich's avatar
Andrei Paskevich committed
367
       <result status="valid" time="1.15"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
368
      </proof>
Andrei Paskevich's avatar
Andrei Paskevich committed
369 370
     </goal>
     <goal
Andrei Paskevich's avatar
Andrei Paskevich committed
371
      name="WP_parameter insertion_sort.16"
372
      locfile="../insertion_sort.mlw"
Andrei Paskevich's avatar
Andrei Paskevich committed
373
      loclnum="13" loccnumb="6" loccnume="20"
Andrei Paskevich's avatar
Andrei Paskevich committed
374
      expl="16. loop invariant preservation"
MARCHE Claude's avatar
MARCHE Claude committed
375
      sum="92f8efcdf5973b83b200e00c2d1b9adc"
Andrei Paskevich's avatar
Andrei Paskevich committed
376
      proved="true"
377 378
      expanded="false"
      shape="loop invariant preservationainfix &lt;=agetV12V14agetV12V15INainfix =V15V13INainfix =V14V13Iainfix &lt;=V15V6Aainfix &lt;=V14V15Aainfix &lt;=c0V14FIainfix =V13ainfix -V8c1FIaexchangeamk arrayV0asetV9V8V7amk arrayV0asetV12ainfix -V8c1V7ainfix -V8c1V8Iainfix =V12asetV9V8agetV9V11Aainfix &lt;=c0V0FIainfix &lt;V8V0Aainfix &lt;=c0V8Iainfix &lt;V11V0Aainfix &lt;=c0V11Lainfix -V8c1Iainfix &gt;agetV9V10V7Iainfix &lt;V10V0Aainfix &lt;=c0V10Aainfix &lt;=c0V0Lainfix -V8c1Iainfix &gt;V8c0Iainfix &lt;V7agetV9V16Iainfix &lt;=V16V6Aainfix &lt;=ainfix +V8c1V16FAainfix &lt;=agetV9V17agetV9V18INainfix =V18V8INainfix =V17V8Iainfix &lt;=V18V6Aainfix &lt;=V17V18Aainfix &lt;=c0V17FAapermut_allV2amk arrayV0asetV9V8V7Aainfix &lt;=V8V6Aainfix &lt;=c0V8FLagetV4V6Iainfix &lt;V6V0Aainfix &lt;=c0V6Aainfix &lt;=c0V0Iapermut_allV2V5Aasorted_subV4c0V6Iainfix &lt;=V6V3Aainfix &lt;=c1V6FLamk arrayV0V4FIainfix &lt;=c1V3Lainfix -V0c1Iainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
379
      <label
380
       name="expl:VC for insertion_sort"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
381 382 383 384 385 386
      <proof
       prover="0"
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
387
       <result status="valid" time="0.15"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
388 389 390
      </proof>
     </goal>
     <goal
Andrei Paskevich's avatar
Andrei Paskevich committed
391
      name="WP_parameter insertion_sort.17"
392
      locfile="../insertion_sort.mlw"
Andrei Paskevich's avatar
Andrei Paskevich committed
393
      loclnum="13" loccnumb="6" loccnume="20"
Andrei Paskevich's avatar
Andrei Paskevich committed
394
      expl="17. loop invariant preservation"
MARCHE Claude's avatar
MARCHE Claude committed
395
      sum="bed41de38dcdf88daa026fc93d36aa28"
Andrei Paskevich's avatar
Andrei Paskevich committed
396
      proved="true"
397 398
      expanded="false"
      shape="loop invariant preservationainfix &lt;V7agetV12V14Iainfix &lt;=V14V6Aainfix &lt;=ainfix +V13c1V14FIainfix =V13ainfix -V8c1FIaexchangeamk arrayV0asetV9V8V7amk arrayV0asetV12ainfix -V8c1V7ainfix -V8c1V8Iainfix =V12asetV9V8agetV9V11Aainfix &lt;=c0V0FIainfix &lt;V8V0Aainfix &lt;=c0V8Iainfix &lt;V11V0Aainfix &lt;=c0V11Lainfix -V8c1Iainfix &gt;agetV9V10V7Iainfix &lt;V10V0Aainfix &lt;=c0V10Aainfix &lt;=c0V0Lainfix -V8c1Iainfix &gt;V8c0Iainfix &lt;V7agetV9V15Iainfix &lt;=V15V6Aainfix &lt;=ainfix +V8c1V15FAainfix &lt;=agetV9V16agetV9V17INainfix =V17V8INainfix =V16V8Iainfix &lt;=V17V6Aainfix &lt;=V16V17Aainfix &lt;=c0V16FAapermut_allV2amk arrayV0asetV9V8V7Aainfix &lt;=V8V6Aainfix &lt;=c0V8FLagetV4V6Iainfix &lt;V6V0Aainfix &lt;=c0V6Aainfix &lt;=c0V0Iapermut_allV2V5Aasorted_subV4c0V6Iainfix &lt;=V6V3Aainfix &lt;=c1V6FLamk arrayV0V4FIainfix &lt;=c1V3Lainfix -V0c1Iainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
399
      <label
400
       name="expl:VC for insertion_sort"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
401
      <proof
402
       prover="3"
Andrei Paskevich's avatar
Andrei Paskevich committed
403 404 405 406 407 408 409 410
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
       <result status="valid" time="0.03"/>
      </proof>
     </goal>
     <goal
Andrei Paskevich's avatar
Andrei Paskevich committed
411
      name="WP_parameter insertion_sort.18"
412
      locfile="../insertion_sort.mlw"
Andrei Paskevich's avatar
Andrei Paskevich committed
413
      loclnum="13" loccnumb="6" loccnume="20"
Andrei Paskevich's avatar
Andrei Paskevich committed
414
      expl="18. loop variant decrease"
MARCHE Claude's avatar
MARCHE Claude committed
415
      sum="53bf17179d6dbf0d7df11045f5494dce"
Andrei Paskevich's avatar
Andrei Paskevich committed
416
      proved="true"
417 418
      expanded="false"
      shape="loop variant decreaseainfix &lt;V13V8Aainfix &lt;=c0V8Iainfix =V13ainfix -V8c1FIaexchangeamk arrayV0asetV9V8V7amk arrayV0asetV12ainfix -V8c1V7ainfix -V8c1V8Iainfix =V12asetV9V8agetV9V11Aainfix &lt;=c0V0FIainfix &lt;V8V0Aainfix &lt;=c0V8Iainfix &lt;V11V0Aainfix &lt;=c0V11Lainfix -V8c1Iainfix &gt;agetV9V10V7Iainfix &lt;V10V0Aainfix &lt;=c0V10Aainfix &lt;=c0V0Lainfix -V8c1Iainfix &gt;V8c0Iainfix &lt;V7agetV9V14Iainfix &lt;=V14V6Aainfix &lt;=ainfix +V8c1V14FAainfix &lt;=agetV9V15agetV9V16INainfix =V16V8INainfix =V15V8Iainfix &lt;=V16V6Aainfix &lt;=V15V16Aainfix &lt;=c0V15FAapermut_allV2amk arrayV0asetV9V8V7Aainfix &lt;=V8V6Aainfix &lt;=c0V8FLagetV4V6Iainfix &lt;V6V0Aainfix &lt;=c0V6Aainfix &lt;=c0V0Iapermut_allV2V5Aasorted_subV4c0V6Iainfix &lt;=V6V3Aainfix &lt;=c1V6FLamk arrayV0V4FIainfix &lt;=c1V3Lainfix -V0c1Iainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
419
      <label
420
       name="expl:VC for insertion_sort"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
421 422 423 424 425 426
      <proof
       prover="0"
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
Andrei Paskevich's avatar
Andrei Paskevich committed
427
       <result status="valid" time="0.02"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
428 429 430
      </proof>
     </goal>
     <goal
Andrei Paskevich's avatar
Andrei Paskevich committed
431
      name="WP_parameter insertion_sort.19"
432
      locfile="../insertion_sort.mlw"
Andrei Paskevich's avatar
Andrei Paskevich committed
433
      loclnum="13" loccnumb="6" loccnume="20"
Andrei Paskevich's avatar
Andrei Paskevich committed
434
      expl="19. assertion"
MARCHE Claude's avatar
MARCHE Claude committed
435
      sum="0db5ecf4302b6482383e752ccd8d2a6e"
Andrei Paskevich's avatar
Andrei Paskevich committed
436
      proved="true"
437 438
      expanded="false"
      shape="assertionainfix &lt;=agetV9V11V7Iainfix &lt;V11V8Aainfix &lt;=c0V11FINainfix &gt;agetV9V10V7Iainfix &lt;V10V0Aainfix &lt;=c0V10Aainfix &lt;=c0V0Lainfix -V8c1Iainfix &gt;V8c0Iainfix &lt;V7agetV9V12Iainfix &lt;=V12V6Aainfix &lt;=ainfix +V8c1V12FAainfix &lt;=agetV9V13agetV9V14INainfix =V14V8INainfix =V13V8Iainfix &lt;=V14V6Aainfix &lt;=V13V14Aainfix &lt;=c0V13FAapermut_allV2amk arrayV0asetV9V8V7Aainfix &lt;=V8V6Aainfix &lt;=c0V8FLagetV4V6Iainfix &lt;V6V0Aainfix &lt;=c0V6Aainfix &lt;=c0V0Iapermut_allV2V5Aasorted_subV4c0V6Iainfix &lt;=V6V3Aainfix &lt;=c1V6FLamk arrayV0V4FIainfix &lt;=c1V3Lainfix -V0c1Iainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
439
      <label
440
       name="expl:VC for insertion_sort"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
441 442 443 444 445 446 447 448 449 450
      <proof
       prover="0"
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
       <result status="valid" time="0.02"/>
      </proof>
     </goal>
     <goal
Andrei Paskevich's avatar
Andrei Paskevich committed
451
      name="WP_parameter insertion_sort.20"
452
      locfile="../insertion_sort.mlw"
Andrei Paskevich's avatar
Andrei Paskevich committed
453
      loclnum="13" loccnumb="6" loccnume="20"
454
      expl="20. index in array bounds"
MARCHE Claude's avatar
MARCHE Claude committed
455
      sum="44fb7152c123ca97ae2cfdc11d13e405"
Andrei Paskevich's avatar
Andrei Paskevich committed
456
      proved="true"
457 458
      expanded="false"
      shape="index in array boundsainfix &lt;V8V0Aainfix &lt;=c0V8Iainfix &lt;=agetV9V11V7Iainfix &lt;V11V8Aainfix &lt;=c0V11FINainfix &gt;agetV9V10V7Iainfix &lt;V10V0Aainfix &lt;=c0V10Aainfix &lt;=c0V0Lainfix -V8c1Iainfix &gt;V8c0Iainfix &lt;V7agetV9V12Iainfix &lt;=V12V6Aainfix &lt;=ainfix +V8c1V12FAainfix &lt;=agetV9V13agetV9V14INainfix =V14V8INainfix =V13V8Iainfix &lt;=V14V6Aainfix &lt;=V13V14Aainfix &lt;=c0V13FAapermut_allV2amk arrayV0asetV9V8V7Aainfix &lt;=V8V6Aainfix &lt;=c0V8FLagetV4V6Iainfix &lt;V6V0Aainfix &lt;=c0V6Aainfix &lt;=c0V0Iapermut_allV2V5Aasorted_subV4c0V6Iainfix &lt;=V6V3Aainfix &lt;=c1V6FLamk arrayV0V4FIainfix &lt;=c1V3Lainfix -V0c1Iainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
459
      <label
460
       name="expl:VC for insertion_sort"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
461 462 463 464 465 466
      <proof
       prover="0"
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
467
       <result status="valid" time="0.02"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
468 469 470
      </proof>
     </goal>
     <goal
Andrei Paskevich's avatar
Andrei Paskevich committed
471
      name="WP_parameter insertion_sort.21"
472
      locfile="../insertion_sort.mlw"
Andrei Paskevich's avatar
Andrei Paskevich committed
473
      loclnum="13" loccnumb="6" loccnume="20"
Andrei Paskevich's avatar
Andrei Paskevich committed
474
      expl="21. loop invariant preservation"
MARCHE Claude's avatar
MARCHE Claude committed
475
      sum="245f898d85a436059d49044bc0db0d92"
Andrei Paskevich's avatar
Andrei Paskevich committed
476
      proved="true"
477 478
      expanded="false"
      shape="loop invariant preservationapermut_allV2amk arrayV0V11Aasorted_subV11c0ainfix +V6c1Iainfix =V11asetV9V8V7Aainfix &lt;=c0V0FIainfix &lt;V8V0Aainfix &lt;=c0V8Iainfix &lt;=agetV9V12V7Iainfix &lt;V12V8Aainfix &lt;=c0V12FINainfix &gt;agetV9V10V7Iainfix &lt;V10V0Aainfix &lt;=c0V10Aainfix &lt;=c0V0Lainfix -V8c1Iainfix &gt;V8c0Iainfix &lt;V7agetV9V13Iainfix &lt;=V13V6Aainfix &lt;=ainfix +V8c1V13FAainfix &lt;=agetV9V14agetV9V15INainfix =V15V8INainfix =V14V8Iainfix &lt;=V15V6Aainfix &lt;=V14V15Aainfix &lt;=c0V14FAapermut_allV2amk arrayV0asetV9V8V7Aainfix &lt;=V8V6Aainfix &lt;=c0V8FLagetV4V6Iainfix &lt;V6V0Aainfix &lt;=c0V6Aainfix &lt;=c0V0Iapermut_allV2V5Aasorted_subV4c0V6Iainfix &lt;=V6V3Aainfix &lt;=c1V6FLamk arrayV0V4FIainfix &lt;=c1V3Lainfix -V0c1Iainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
479
      <label
480
       name="expl:VC for insertion_sort"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
481 482 483 484 485 486
      <proof
       prover="0"
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
MARCHE Claude's avatar
MARCHE Claude committed
487
       <result status="valid" time="0.14"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
488
      </proof>
489
     </goal>
MARCHE Claude's avatar
MARCHE Claude committed
490
     <goal
Andrei Paskevich's avatar
Andrei Paskevich committed
491
      name="WP_parameter insertion_sort.22"
492
      locfile="../insertion_sort.mlw"
Andrei Paskevich's avatar
Andrei Paskevich committed
493
      loclnum="13" loccnumb="6" loccnume="20"
Andrei Paskevich's avatar
Andrei Paskevich committed
494
      expl="22. assertion"
MARCHE Claude's avatar
MARCHE Claude committed
495
      sum="e93b0946b2a4eb74dd160a799aafd67d"
Andrei Paskevich's avatar
Andrei Paskevich committed
496
      proved="true"
497 498
      expanded="false"
      shape="assertionainfix &lt;=agetV9V10V7Iainfix &lt;V10V8Aainfix &lt;=c0V10FINainfix &gt;V8c0Iainfix &lt;V7agetV9V11Iainfix &lt;=V11V6Aainfix &lt;=ainfix +V8c1V11FAainfix &lt;=agetV9V12agetV9V13INainfix =V13V8INainfix =V12V8Iainfix &lt;=V13V6Aainfix &lt;=V12V13Aainfix &lt;=c0V12FAapermut_allV2amk arrayV0asetV9V8V7Aainfix &lt;=V8V6Aainfix &lt;=c0V8FLagetV4V6Iainfix &lt;V6V0Aainfix &lt;=c0V6Aainfix &lt;=c0V0Iapermut_allV2V5Aasorted_subV4c0V6Iainfix &lt;=V6V3Aainfix &lt;=c1V6FLamk arrayV0V4FIainfix &lt;=c1V3Lainfix -V0c1Iainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
499
      <label
500
       name="expl:VC for insertion_sort"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
501 502 503 504 505 506 507 508 509 510
      <proof
       prover="0"
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
       <result status="valid" time="0.01"/>
      </proof>
     </goal>
     <goal
Andrei Paskevich's avatar
Andrei Paskevich committed
511 512 513 514
      name="WP_parameter insertion_sort.23"
      locfile="../insertion_sort.mlw"
      loclnum="13" loccnumb="6" loccnume="20"
      expl="23. type invariant"
MARCHE Claude's avatar
MARCHE Claude committed
515
      sum="45eff9fd1f68e6f219e66832912d8c2a"
Andrei Paskevich's avatar
Andrei Paskevich committed
516
      proved="true"
517 518
      expanded="false"
      shape="type invariantainfix &lt;=c0V0Iainfix &lt;=agetV9V10V7Iainfix &lt;V10V8Aainfix &lt;=c0V10FINainfix &gt;V8c0Iainfix &lt;V7agetV9V11Iainfix &lt;=V11V6Aainfix &lt;=ainfix +V8c1V11FAainfix &lt;=agetV9V12agetV9V13INainfix =V13V8INainfix =V12V8Iainfix &lt;=V13V6Aainfix &lt;=V12V13Aainfix &lt;=c0V12FAapermut_allV2amk arrayV0asetV9V8V7Aainfix &lt;=V8V6Aainfix &lt;=c0V8FLagetV4V6Iainfix &lt;V6V0Aainfix &lt;=c0V6Aainfix &lt;=c0V0Iapermut_allV2V5Aasorted_subV4c0V6Iainfix &lt;=V6V3Aainfix &lt;=c1V6FLamk arrayV0V4FIainfix &lt;=c1V3Lainfix -V0c1Iainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
519 520 521
      <label
       name="expl:VC for insertion_sort"/>
      <proof
522
       prover="0"
Andrei Paskevich's avatar
Andrei Paskevich committed
523 524 525 526 527 528 529 530 531
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
       <result status="valid" time="0.01"/>
      </proof>
     </goal>
     <goal
      name="WP_parameter insertion_sort.24"
532
      locfile="../insertion_sort.mlw"
Jean-Christophe Filliâtre's avatar
Jean-Christophe Filliâtre committed
533
      loclnum="13" loccnumb="6" loccnume="20"
534
      expl="24. index in array bounds"
MARCHE Claude's avatar
MARCHE Claude committed
535
      sum="e8b4bb50837de277cf3c766eab15a003"
MARCHE Claude's avatar
MARCHE Claude committed
536
      proved="true"
537 538
      expanded="false"
      shape="index in array boundsainfix &lt;V8V0Aainfix &lt;=c0V8Iainfix &lt;=c0V0Iainfix &lt;=agetV9V10V7Iainfix &lt;V10V8Aainfix &lt;=c0V10FINainfix &gt;V8c0Iainfix &lt;V7agetV9V11Iainfix &lt;=V11V6Aainfix &lt;=ainfix +V8c1V11FAainfix &lt;=agetV9V12agetV9V13INainfix =V13V8INainfix =V12V8Iainfix &lt;=V13V6Aainfix &lt;=V12V13Aainfix &lt;=c0V12FAapermut_allV2amk arrayV0asetV9V8V7Aainfix &lt;=V8V6Aainfix &lt;=c0V8FLagetV4V6Iainfix &lt;V6V0Aainfix &lt;=c0V6Aainfix &lt;=c0V0Iapermut_allV2V5Aasorted_subV4c0V6Iainfix &lt;=V6V3Aainfix &lt;=c1V6FLamk arrayV0V4FIainfix &lt;=c1V3Lainfix -V0c1Iainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
539
      <label
540
       name="expl:VC for insertion_sort"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
541 542 543 544 545 546
      <proof
       prover="0"
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
547
       <result status="valid" time="0.01"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
548 549 550
      </proof>
     </goal>
     <goal
Andrei Paskevich's avatar
Andrei Paskevich committed
551
      name="WP_parameter insertion_sort.25"
552
      locfile="../insertion_sort.mlw"
Andrei Paskevich's avatar
Andrei Paskevich committed
553
      loclnum="13" loccnumb="6" loccnume="20"
Andrei Paskevich's avatar
Andrei Paskevich committed
554
      expl="25. loop invariant preservation"
MARCHE Claude's avatar
MARCHE Claude committed
555
      sum="619fad5e9e84e0247f0c4afb4f4e842a"
Andrei Paskevich's avatar
Andrei Paskevich committed
556
      proved="true"
557 558
      expanded="false"
      shape="loop invariant preservationapermut_allV2amk arrayV0V10Aasorted_subV10c0ainfix +V6c1Iainfix =V10asetV9V8V7Aainfix &lt;=c0V0FIainfix &lt;V8V0Aainfix &lt;=c0V8Aainfix &lt;=c0V0Iainfix &lt;=agetV9V11V7Iainfix &lt;V11V8Aainfix &lt;=c0V11FINainfix &gt;V8c0Iainfix &lt;V7agetV9V12Iainfix &lt;=V12V6Aainfix &lt;=ainfix +V8c1V12FAainfix &lt;=agetV9V13agetV9V14INainfix =V14V8INainfix =V13V8Iainfix &lt;=V14V6Aainfix &lt;=V13V14Aainfix &lt;=c0V13FAapermut_allV2amk arrayV0asetV9V8V7Aainfix &lt;=V8V6Aainfix &lt;=c0V8FLagetV4V6Iainfix &lt;V6V0Aainfix &lt;=c0V6Aainfix &lt;=c0V0Iapermut_allV2V5Aasorted_subV4c0V6Iainfix &lt;=V6V3Aainfix &lt;=c1V6FLamk arrayV0V4FIainfix &lt;=c1V3Lainfix -V0c1Iainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
559
      <label
560
       name="expl:VC for insertion_sort"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
561 562 563 564 565 566
      <proof
       prover="0"
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
MARCHE Claude's avatar
MARCHE Claude committed
567
       <result status="valid" time="0.15"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
568 569 570
      </proof>
     </goal>
     <goal
Andrei Paskevich's avatar
Andrei Paskevich committed
571 572 573 574
      name="WP_parameter insertion_sort.26"
      locfile="../insertion_sort.mlw"
      loclnum="13" loccnumb="6" loccnume="20"
      expl="26. type invariant"
MARCHE Claude's avatar
MARCHE Claude committed
575
      sum="463d3a379dcc846ee3d33a07ebdf9c1f"
Andrei Paskevich's avatar
Andrei Paskevich committed
576
      proved="true"
577 578
      expanded="false"
      shape="type invariantainfix &lt;=c0V0Iapermut_allV2V5Aasorted_subV4c0ainfix +V3c1Lamk arrayV0V4FIainfix &lt;=c1V3Lainfix -V0c1Iainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
579 580 581
      <label
       name="expl:VC for insertion_sort"/>
      <proof
582
       prover="0"
Andrei Paskevich's avatar
Andrei Paskevich committed
583 584 585 586 587 588 589 590 591
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
       <result status="valid" time="0.01"/>
      </proof>
     </goal>
     <goal
      name="WP_parameter insertion_sort.27"
592
      locfile="../insertion_sort.mlw"
Andrei Paskevich's avatar
Andrei Paskevich committed
593
      loclnum="13" loccnumb="6" loccnume="20"
Andrei Paskevich's avatar
Andrei Paskevich committed
594
      expl="27. postcondition"
MARCHE Claude's avatar
MARCHE Claude committed
595
      sum="d6fd23bd94c53cce36579f10ada8585e"
Andrei Paskevich's avatar
Andrei Paskevich committed
596
      proved="true"
597 598
      expanded="false"
      shape="postconditionapermut_allV2V5Aasorted_subV4c0V0Iainfix &lt;=c0V0Iapermut_allV2V5Aasorted_subV4c0ainfix +V3c1Lamk arrayV0V4FIainfix &lt;=c1V3Lainfix -V0c1Iainfix &lt;=c0V0Lamk arrayV0V1F">
Jean-Christophe Filliâtre's avatar
Jean-Christophe Filliâtre committed
599
      <label
600
       name="expl:VC for insertion_sort"/>
MARCHE Claude's avatar
MARCHE Claude committed
601
      <proof
Jean-Christophe Filliâtre's avatar
Jean-Christophe Filliâtre committed
602
       prover="0"
Andrei Paskevich's avatar
Andrei Paskevich committed
603 604
       timelimit="5"
       memlimit="1000"
Jean-Christophe Filliâtre's avatar
Jean-Christophe Filliâtre committed
605 606
       obsolete="false"
       archived="false">
607
       <result status="valid" time="0.01"/>
608
      </proof>
609
      <proof
610
       prover="5"
611 612 613 614 615 616
       timelimit="10"
       memlimit="0"
       obsolete="false"
       archived="false">
       <result status="valid" time="0.00"/>
      </proof>
617 618 619
     </goal>
    </transf>
   </goal>
MARCHE Claude's avatar
MARCHE Claude committed
620
   <goal
621
    name="WP_parameter test1"
MARCHE Claude's avatar
MARCHE Claude committed
622
    locfile="../insertion_sort.mlw"
623 624
    loclnum="37" loccnumb="6" loccnume="11"
    expl="VC for test1"
MARCHE Claude's avatar
MARCHE Claude committed
625
    sum="38d3669d151c10ef97b5d8b57ad88a26"
Andrei Paskevich's avatar
Andrei Paskevich committed
626
    proved="true"
627
    expanded="false"
628
    shape="ainfix &lt;c2c3Aainfix &lt;=c0c2Iainfix =V1asetV0c1c3Aainfix &lt;=c0c3FAainfix &lt;c1c3Aainfix &lt;=c0c1Iainfix =V0asetaconstc0c0c7Aainfix &lt;=c0c3FAainfix &lt;c0c3Aainfix &lt;=c0c0Iainfix &lt;=c0c3Aainfix &gt;=c3c0">
MARCHE Claude's avatar
MARCHE Claude committed
629
    <label
630 631 632 633 634 635 636 637 638 639 640 641 642 643 644
     name="expl:VC for test1"/>
    <proof
     prover="1"
     timelimit="5"
     memlimit="1000"
     obsolete="false"
     archived="false">
     <result status="valid" time="0.02"/>
    </proof>
   </goal>
   <goal
    name="WP_parameter test2"
    locfile="../insertion_sort.mlw"
    loclnum="43" loccnumb="6" loccnume="11"
    expl="VC for test2"
MARCHE Claude's avatar
MARCHE Claude committed
645
    sum="14177c1b27ddcf02a1112d028c5b5275"
646
    proved="true"
647
    expanded="false"
648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664
    shape="ainfix &lt;c7c8Aainfix &lt;=c0c7Iainfix =V6asetV5c6c69Aainfix &lt;=c0c8FAainfix &lt;c6c8Aainfix &lt;=c0c6Iainfix =V5asetV4c5c42Aainfix &lt;=c0c8FAainfix &lt;c5c8Aainfix &lt;=c0c5Iainfix =V4asetV3c4c413Aainfix &lt;=c0c8FAainfix &lt;c4c8Aainfix &lt;=c0c4Iainfix =V3asetV2c3aprefix -c5Aainfix &lt;=c0c8FAainfix &lt;c3c8Aainfix &lt;=c0c3Iainfix =V2asetV1c2c17Aainfix &lt;=c0c8FAainfix &lt;c2c8Aainfix &lt;=c0c2Iainfix =V1asetV0c1c91Aainfix &lt;=c0c8FAainfix &lt;c1c8Aainfix &lt;=c0c1Iainfix =V0asetaconstc0c0c53Aainfix &lt;=c0c8FAainfix &lt;c0c8Aainfix &lt;=c0c0Iainfix &lt;=c0c8Aainfix &gt;=c8c0">
    <label
     name="expl:VC for test2"/>
    <proof
     prover="1"
     timelimit="5"
     memlimit="1000"
     obsolete="false"
     archived="false">
     <result status="valid" time="0.02"/>
    </proof>
   </goal>
   <goal
    name="WP_parameter bench"
    locfile="../insertion_sort.mlw"
    loclnum="52" loccnumb="6" loccnume="11"
    expl="VC for bench"
MARCHE Claude's avatar
MARCHE Claude committed
665
    sum="852bad1201c2a6da3197b68b4e868ed3"
666
    proved="true"
667
    expanded="false"
668 669 670 671 672 673 674 675 676 677 678
    shape="ainfix &lt;c7V0Aainfix &lt;=c0c7Iainfix =agetV1c6c91Aainfix &lt;c6V0Aainfix &lt;=c0c6Iainfix =agetV1c5c69Aainfix &lt;c5V0Aainfix &lt;=c0c5Iainfix =agetV1c4c53Aainfix &lt;c4V0Aainfix &lt;=c0c4Iainfix =agetV1c3c42Aainfix &lt;c3V0Aainfix &lt;=c0c3Iainfix =agetV1c2c17Aainfix &lt;c2V0Aainfix &lt;=c0c2Iainfix =agetV1c1c6Aainfix &lt;c1V0Aainfix &lt;=c0c1Iainfix =agetV1c0aprefix -c5Aainfix &lt;c0V0Aainfix &lt;=c0c0Iainfix =V0c8Aainfix &lt;=c0V0F">
    <label
     name="expl:VC for bench"/>
    <proof
     prover="1"
     timelimit="5"
     memlimit="1000"
     obsolete="false"
     archived="false">
     <result status="valid" time="0.02"/>
    </proof>
MARCHE Claude's avatar
MARCHE Claude committed
679
   </goal>
680
  </theory>
681 682 683
  <theory
   name="InsertionSortGen"
   locfile="../insertion_sort.mlw"
684
   loclnum="66" loccnumb="7" loccnume="23"
685
   verified="true"
686
   expanded="true">
687 688 689
   <goal
    name="WP_parameter insertion_sort"
    locfile="../insertion_sort.mlw"
690
    loclnum="88" loccnumb="6" loccnume="20"
691
    expl="VC for insertion_sort"
MARCHE Claude's avatar
MARCHE Claude committed
692
    sum="072eb32e7820563635901257bd8feed4"
693
    proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
694
    expanded="false"
695
    shape="apermut_allV2V5Aasorted_subV4c0V0Aainfix &lt;=c0V0Iapermut_allV2V5Aasorted_subV4c0ainfix +V3c1Aiapermut_allV2amk arrayV0V10Aasorted_subV10c0ainfix +V6c1Iainfix =V10asetV9V8V7Aainfix &lt;=c0V0FAainfix &lt;V8V0Aainfix &lt;=c0V8Aainfix &lt;=c0V0AaleagetV9V11V7Iainfix &lt;V11V8Aainfix &lt;=c0V11Fiapermut_allV2amk arrayV0V13Aasorted_subV13c0ainfix +V6c1Iainfix =V13asetV9V8V7Aainfix &lt;=c0V0FAainfix &lt;V8V0Aainfix &lt;=c0V8AaleagetV9V14V7Iainfix &lt;V14V8Aainfix &lt;=c0V14Fainfix &lt;V17V8Aainfix &lt;=c0V8AaleV7agetV16V18Iainfix &lt;=V18V6Aainfix &lt;=ainfix +V17c1V18FAaleagetV16V19agetV16V20INainfix =V20V17INainfix =V19V17Iainfix &lt;=V20V6Aainfix &lt;=V19V20Aainfix &lt;=c0V19FAapermut_allV2amk arrayV0asetV16V17V7Aainfix &lt;=V17V6Aainfix &lt;=c0V17Iainfix =V17ainfix -V8c1FAaexchangeamk arrayV0asetV9V8V7amk arrayV0asetV16ainfix -V8c1V7ainfix -V8c1V8Iainfix =V16asetV9V8agetV9V15Aainfix &lt;=c0V0FAainfix &lt;V8V0Aainfix &lt;=c0V8Aainfix &lt;V15V0Aainfix &lt;=c0V15Lainfix -V8c1NaleagetV9V12V7Aainfix &lt;V12V0Aainfix &lt;=c0V12Aainfix &lt;=c0V0Lainfix -V8c1ainfix &gt;V8c0IaleV7agetV9V21Iainfix &lt;=V21V6Aainfix &lt;=ainfix +V8c1V21FAaleagetV9V22agetV9V23INainfix =V23V8INainfix =V22V8Iainfix &lt;=V23V6Aainfix &lt;=V22V23Aainfix &lt;=c0V22FAapermut_allV2amk arrayV0asetV9V8V7Aainfix &lt;=V8V6Aainfix &lt;=c0V8FAaleV7agetV4V24Iainfix &lt;=V24V6Aainfix &lt;=ainfix +V6c1V24FAaleagetV4V25agetV4V26INainfix =V26V6INainfix =V25V6Iainfix &lt;=V26V6Aainfix &lt;=V25V26Aainfix &lt;=c0V25FAapermut_allV2amk arrayV0asetV4V6V7Aainfix &lt;=V6V6Aainfix &lt;=c0V6LagetV4V6Aainfix &lt;V6V0Aainfix &lt;=c0V6Aainfix &lt;=c0V0Iapermut_allV2V5Aasorted_subV4c0V6Iainfix &lt;=V6V3Aainfix &lt;=c1V6FLamk arrayV0V4FAapermut_allV2V2Aasorted_subV1c0c1Iainfix &lt;=c1V3Aapermut_allV2V2Aasorted_subV1c0V0Iainfix &gt;c1V3Lainfix -V0c1Iainfix &lt;=c0V0Lamk arrayV0V1F">
696 697 698 699 700
    <label
     name="expl:VC for insertion_sort"/>
    <transf
     name="split_goal_wp"
     proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
701
     expanded="false">
702 703 704
     <goal
      name="WP_parameter insertion_sort.1"
      locfile="../insertion_sort.mlw"
705
      loclnum="88" loccnumb="6" loccnume="20"
706
      expl="1. postcondition"
MARCHE Claude's avatar
MARCHE Claude committed
707
      sum="315b325b2d188cf0acdc438e1b7861f3"
708
      proved="true"
709 710
      expanded="false"
      shape="postconditionapermut_allV2V2Aasorted_subV1c0V0Iainfix &gt;c1V3Lainfix -V0c1Iainfix &lt;=c0V0Lamk arrayV0V1F">
711 712 713
      <label
       name="expl:VC for insertion_sort"/>
      <proof
714
       prover="0"
715 716 717 718 719 720 721 722 723 724
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
       <result status="valid" time="0.02"/>
      </proof>
     </goal>
     <goal
      name="WP_parameter insertion_sort.2"
      locfile="../insertion_sort.mlw"
725
      loclnum="88" loccnumb="6" loccnume="20"
726
      expl="2. loop invariant init"
MARCHE Claude's avatar
MARCHE Claude committed
727
      sum="2f65d394c85be4f6991d454516b0c9a2"
728
      proved="true"
729 730
      expanded="false"
      shape="loop invariant initapermut_allV2V2Aasorted_subV1c0c1Iainfix &lt;=c1V3Lainfix -V0c1Iainfix &lt;=c0V0Lamk arrayV0V1F">
731 732 733
      <label
       name="expl:VC for insertion_sort"/>
      <proof
734
       prover="0"
735 736 737 738 739 740 741 742 743 744
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
       <result status="valid" time="0.02"/>
      </proof>
     </goal>
     <goal
      name="WP_parameter insertion_sort.3"
      locfile="../insertion_sort.mlw"
745
      loclnum="88" loccnumb="6" loccnume="20"
Andrei Paskevich's avatar
Andrei Paskevich committed
746
      expl="3. type invariant"
MARCHE Claude's avatar
MARCHE Claude committed
747
      sum="829394a5356755b6673f83e30956f93e"
748
      proved="true"
749 750
      expanded="false"
      shape="type invariantainfix &lt;=c0V0Iapermut_allV2V5Aasorted_subV4c0V6Iainfix &lt;=V6V3Aainfix &lt;=c1V6FLamk arrayV0V4FIainfix &lt;=c1V3Lainfix -V0c1Iainfix &lt;=c0V0Lamk arrayV0V1F">
751 752 753
      <label
       name="expl:VC for insertion_sort"/>
      <proof
754
       prover="0"
755 756 757 758 759 760 761 762 763 764
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
       <result status="valid" time="0.01"/>
      </proof>
     </goal>
     <goal
      name="WP_parameter insertion_sort.4"
      locfile="../insertion_sort.mlw"
765 766
      loclnum="88" loccnumb="6" loccnume="20"
      expl="4. index in array bounds"
MARCHE Claude's avatar
MARCHE Claude committed
767
      sum="1bfa9f7857e17eba427a8e310402bbbf"
768
      proved="true"
769 770
      expanded="false"
      shape="index in array boundsainfix &lt;V6V0Aainfix &lt;=c0V6Iainfix &lt;=c0V0Iapermut_allV2V5Aasorted_subV4c0V6Iainfix &lt;=V6V3Aainfix &lt;=c1V6FLamk arrayV0V4FIainfix &lt;=c1V3Lainfix -V0c1Iainfix &lt;=c0V0Lamk arrayV0V1F">
771 772 773
      <label
       name="expl:VC for insertion_sort"/>
      <proof
774
       prover="0"
775 776 777 778
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
Andrei Paskevich's avatar
Andrei Paskevich committed
779
       <result status="valid" time="0.01"/>
780 781 782 783 784
      </proof>
     </goal>
     <goal
      name="WP_parameter insertion_sort.5"
      locfile="../insertion_sort.mlw"
785
      loclnum="88" loccnumb="6" loccnume="20"
786
      expl="5. loop invariant init"
MARCHE Claude's avatar
MARCHE Claude committed
787
      sum="f897a50ed81fd3d37108b4b624785b28"
788
      proved="true"
789 790
      expanded="false"
      shape="loop invariant initainfix &lt;=V6V6Aainfix &lt;=c0V6LagetV4V6Iainfix &lt;V6V0Aainfix &lt;=c0V6Aainfix &lt;=c0V0Iapermut_allV2V5Aasorted_subV4c0V6Iainfix &lt;=V6V3Aainfix &lt;=c1V6FLamk arrayV0V4FIainfix &lt;=c1V3Lainfix -V0c1Iainfix &lt;=c0V0Lamk arrayV0V1F">
791 792 793
      <label
       name="expl:VC for insertion_sort"/>
      <proof
794
       prover="0"
795 796 797 798 799 800 801 802 803 804
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
       <result status="valid" time="0.02"/>
      </proof>
     </goal>
     <goal
      name="WP_parameter insertion_sort.6"
      locfile="../insertion_sort.mlw"
805
      loclnum="88" loccnumb="6" loccnume="20"
806
      expl="6. loop invariant init"
MARCHE Claude's avatar
MARCHE Claude committed
807
      sum="ccd7dd0bac3c3df1c1e26289163cb9bf"
808
      proved="true"
809 810
      expanded="false"
      shape="loop invariant initapermut_allV2amk arrayV0asetV4V6V7LagetV4V6Iainfix &lt;V6V0Aainfix &lt;=c0V6Aainfix &lt;=c0V0Iapermut_allV2V5Aasorted_subV4c0V6Iainfix &lt;=V6V3Aainfix &lt;=c1V6FLamk arrayV0V4FIainfix &lt;=c1V3Lainfix -V0c1Iainfix &lt;=c0V0Lamk arrayV0V1F">
811 812 813
      <label
       name="expl:VC for insertion_sort"/>
      <proof
814
       prover="3"
815 816 817 818
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
Andrei Paskevich's avatar
Andrei Paskevich committed
819
       <result status="valid" time="0.02"/>
820 821 822 823 824
      </proof>
     </goal>
     <goal
      name="WP_parameter insertion_sort.7"
      locfile="../insertion_sort.mlw"
825
      loclnum="88" loccnumb="6" loccnume="20"
826
      expl="7. loop invariant init"
MARCHE Claude's avatar
MARCHE Claude committed
827
      sum="cdcd64c1f6c19e438669526aea37a1f5"
828
      proved="true"
829 830
      expanded="false"
      shape="loop invariant initaleagetV4V8agetV4V9INainfix =V9V6INainfix =V8V6Iainfix &lt;=V9V6Aainfix &lt;=V8V9Aainfix &lt;=c0V8FLagetV4V6Iainfix &lt;V6V0Aainfix &lt;=c0V6Aainfix &lt;=c0V0Iapermut_allV2V5Aasorted_subV4c0V6Iainfix &lt;=V6V3Aainfix &lt;=c1V6FLamk arrayV0V4FIainfix &lt;=c1V3Lainfix -V0c1Iainfix &lt;=c0V0Lamk arrayV0V1F">
831 832 833
      <label
       name="expl:VC for insertion_sort"/>
      <proof
834
       prover="0"
835 836 837 838 839 840 841 842 843 844
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
       <result status="valid" time="0.01"/>
      </proof>
     </goal>
     <goal
      name="WP_parameter insertion_sort.8"
      locfile="../insertion_sort.mlw"
845
      loclnum="88" loccnumb="6" loccnume="20"
Andrei Paskevich's avatar
Andrei Paskevich committed
846
      expl="8. loop invariant init"
MARCHE Claude's avatar
MARCHE Claude committed
847
      sum="b183a48fd4a84ce453f0d50980d3e7c6"
848
      proved="true"
849 850
      expanded="false"
      shape="loop invariant initaleV7agetV4V8Iainfix &lt;=V8V6Aainfix &lt;=ainfix +V6c1V8FLagetV4V6Iainfix &lt;V6V0Aainfix &lt;=c0V6Aainfix &lt;=c0V0Iapermut_allV2V5Aasorted_subV4c0V6Iainfix &lt;=V6V3Aainfix &lt;=c1V6FLamk arrayV0V4FIainfix &lt;=c1V3Lainfix -V0c1Iainfix &lt;=c0V0Lamk arrayV0V1F">
851 852 853
      <label
       name="expl:VC for insertion_sort"/>
      <proof
854
       prover="0"
855 856 857 858 859 860 861 862 863 864
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
       <result status="valid" time="0.01"/>
      </proof>
     </goal>
     <goal
      name="WP_parameter insertion_sort.9"
      locfile="../insertion_sort.mlw"
865
      loclnum="88" loccnumb="6" loccnume="20"
Andrei Paskevich's avatar
Andrei Paskevich committed
866
      expl="9. type invariant"
MARCHE Claude's avatar
MARCHE Claude committed
867
      sum="9939779e0c8c9158000f95e1ad8200b6"
868
      proved="true"
869 870
      expanded="false"
      shape="type invariantainfix &lt;=c0V0Lainfix -V8c1Iainfix &gt;V8c0IaleV7agetV9V11Iainfix &lt;=V11V6Aainfix &lt;=ainfix +V8c1V11FAaleagetV9V12agetV9V13INainfix =V13V8INainfix =V12V8Iainfix &lt;=V13V6Aainfix &lt;=V12V13Aainfix &lt;=c0V12FAapermut_allV2amk arrayV0asetV9V8V7Aainfix &lt;=V8V6Aainfix &lt;=c0V8FLagetV4V6Iainfix &lt;V6V0Aainfix &lt;=c0V6Aainfix &lt;=c0V0Iapermut_allV2V5Aasorted_subV4c0V6Iainfix &lt;=V6V3Aainfix &lt;=c1V6FLamk arrayV0V4FIainfix &lt;=c1V3Lainfix -V0c1Iainfix &lt;=c0V0Lamk arrayV0V1F">
871 872 873
      <label
       name="expl:VC for insertion_sort"/>
      <proof
874
       prover="0"
875 876 877 878 879 880 881 882 883 884
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
       <result status="valid" time="0.01"/>
      </proof>
     </goal>
     <goal
      name="WP_parameter insertion_sort.10"
      locfile="../insertion_sort.mlw"
885 886
      loclnum="88" loccnumb="6" loccnume="20"
      expl="10. index in array bounds"
MARCHE Claude's avatar
MARCHE Claude committed
887
      sum="76aa4d8869d774bbbafdecf38bd0127b"
888
      proved="true"
889 890
      expanded="false"
      shape="index in array boundsainfix &lt;V10V0Aainfix &lt;=c0V10Iainfix &lt;=c0V0Lainfix -V8c1Iainfix &gt;V8c0IaleV7agetV9V11Iainfix &lt;=V11V6Aainfix &lt;=ainfix +V8c1V11FAaleagetV9V12agetV9V13INainfix =V13V8INainfix =V12V8Iainfix &lt;=V13V6Aainfix &lt;=V12V13Aainfix &lt;=c0V12FAapermut_allV2amk arrayV0asetV9V8V7Aainfix &lt;=V8V6Aainfix &lt;=c0V8FLagetV4V6Iainfix &lt;V6V0Aainfix &lt;=c0V6Aainfix &lt;=c0V0Iapermut_allV2V5Aasorted_subV4c0V6Iainfix &lt;=V6V3Aainfix &lt;=c1V6FLamk arrayV0V4FIainfix &lt;=c1V3Lainfix -V0c1Iainfix &lt;=c0V0Lamk arrayV0V1F">
891 892 893
      <label
       name="expl:VC for insertion_sort"/>
      <proof
894
       prover="0"
895 896 897 898
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
899
       <result status="valid" time="0.00"/>
900 901 902 903 904
      </proof>
     </goal>
     <goal
      name="WP_parameter insertion_sort.11"
      locfile="../insertion_sort.mlw"
905 906
      loclnum="88" loccnumb="6" loccnume="20"
      expl="11. index in array bounds"
MARCHE Claude's avatar
MARCHE Claude committed
907
      sum="9ee794550e836f6d82969db55d41ab9c"
908
      proved="true"
909 910
      expanded="false"
      shape="index in array boundsainfix &lt;V11V0Aainfix &lt;=c0V11Lainfix -V8c1INaleagetV9V10V7Iainfix &lt;V10V0Aainfix &lt;=c0V10Aainfix &lt;=c0V0Lainfix -V8c1Iainfix &gt;V8c0IaleV7agetV9V12Iainfix &lt;=V12V6Aainfix &lt;=ainfix +V8c1V12FAaleagetV9V13agetV9V14INainfix =V14V8INainfix =V13V8Iainfix &lt;=V14V6Aainfix &lt;=V13V14Aainfix &lt;=c0V13FAapermut_allV2amk arrayV0asetV9V8V7Aainfix &lt;=V8V6Aainfix &lt;=c0V8FLagetV4V6Iainfix &lt;V6V0Aainfix &lt;=c0V6Aainfix &lt;=c0V0Iapermut_allV2V5Aasorted_subV4c0V6Iainfix &lt;=V6V3Aainfix &lt;=c1V6FLamk arrayV0V4FIainfix &lt;=c1V3Lainfix -V0c1Iainfix &lt;=c0V0Lamk arrayV0V1F">
911 912 913
      <label
       name="expl:VC for insertion_sort"/>
      <proof
914
       prover="0"
915 916 917 918 919 920 921 922 923 924
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
       <result status="valid" time="0.01"/>
      </proof>
     </goal>
     <goal
      name="WP_parameter insertion_sort.12"
      locfile="../insertion_sort.mlw"
925 926
      loclnum="88" loccnumb="6" loccnume="20"
      expl="12. index in array bounds"
MARCHE Claude's avatar
MARCHE Claude committed
927
      sum="045458feb8b4086162dc99d75a1b761a"
928
      proved="true"
929 930
      expanded="false"
      shape="index in array boundsainfix &lt;V8V0Aainfix &lt;=c0V8Iainfix &lt;V11V0Aainfix &lt;=c0V11Lainfix -V8c1INaleagetV9V10V7Iainfix &lt;V10V0Aainfix &lt;=c0V10Aainfix &lt;=c0V0Lainfix -V8c1Iainfix &gt;V8c0IaleV7agetV9V12Iainfix &lt;=V12V6Aainfix &lt;=ainfix +V8c1V12FAaleagetV9V13agetV9V14INainfix =V14V8INainfix =V13V8Iainfix &lt;=V14V6Aainfix &lt;=V13V14Aainfix &lt;=c0V13FAapermut_allV2amk arrayV0asetV9V8V7Aainfix &lt;=V8V6Aainfix &lt;=c0V8FLagetV4V6Iainfix &lt;V6V0Aainfix &lt;=c0V6Aainfix &lt;=c0V0Iapermut_allV2V5Aasorted_subV4c0V6Iainfix &lt;=V6V3Aainfix &lt;=c1V6FLamk arrayV0V4FIainfix &lt;=c1V3Lainfix -V0c1Iainfix &lt;=c0V0Lamk arrayV0V1F">
931 932 933
      <label
       name="expl:VC for insertion_sort"/>
      <proof
934
       prover="0"
935 936 937 938 939 940 941 942 943 944
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
       <result status="valid" time="0.01"/>
      </proof>
     </goal>
     <goal
      name="WP_parameter insertion_sort.13"
      locfile="../insertion_sort.mlw"
945
      loclnum="88" loccnumb="6" loccnume="20"
Andrei Paskevich's avatar
Andrei Paskevich committed
946
      expl="13. assertion"
MARCHE Claude's avatar
MARCHE Claude committed
947
      sum="51e93f0466a2df52d01f42a8b069b7c8"
948
      proved="true"
949 950
      expanded="false"
      shape="assertionaexchangeamk arrayV0asetV9V8V7amk arrayV0asetV12ainfix -V8c1V7ainfix -V8c1V8Iainfix =V12asetV9V8agetV9V11Aainfix &lt;=c0V0FIainfix &lt;V8V0Aainfix &lt;=c0V8Iainfix &lt;V11V0Aainfix &lt;=c0V11Lainfix -V8c1INaleagetV9V10V7Iainfix &lt;V10V0Aainfix &lt;=c0V10Aainfix &lt;=c0V0Lainfix -V8c1Iainfix &gt;V8c0IaleV7agetV9V13Iainfix &lt;=V13V6Aainfix &lt;=ainfix +V8c1V13FAaleagetV9V14agetV9V15INainfix =V15V8INainfix =V14V8Iainfix &lt;=V15V6Aainfix &lt;=V14V15Aainfix &lt;=c0V14FAapermut_allV2amk arrayV0asetV9V8V7Aainfix &lt;=V8V6Aainfix &lt;=c0V8FLagetV4V6Iainfix &lt;V6V0Aainfix &lt;=c0V6Aainfix &lt;=c0V0Iapermut_allV2V5Aasorted_subV4c0V6Iainfix &lt;=V6V3Aainfix &lt;=c1V6FLamk arrayV0V4FIainfix &lt;=c1V3Lainfix -V0c1Iainfix &lt;=c0V0Lamk arrayV0V1F">
951 952 953
      <label
       name="expl:VC for insertion_sort"/>
      <proof
954
       prover="0"
955 956 957 958
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
Andrei Paskevich's avatar
Andrei Paskevich committed
959
       <result status="valid" time="0.01"/>
960 961 962 963 964
      </proof>
     </goal>
     <goal
      name="WP_parameter insertion_sort.14"
      locfile="../insertion_sort.mlw"
965
      loclnum="88" loccnumb="6" loccnume="20"
966
      expl="14. loop invariant preservation"
MARCHE Claude's avatar
MARCHE Claude committed
967
      sum="86995826656e1e4881cd2550d907bd43"
968
      proved="true"
969 970
      expanded="false"
      shape="loop invariant preservationainfix &lt;=V13V6Aainfix &lt;=c0V13Iainfix =V13ainfix -V8c1FIaexchangeamk arrayV0asetV9V8V7amk arrayV0asetV12ainfix -V8c1V7ainfix -V8c1V8Iainfix =V12asetV9V8agetV9V11Aainfix &lt;=c0V0FIainfix &lt;V8V0Aainfix &lt;=c0V8Iainfix &lt;V11V0Aainfix &lt;=c0V11Lainfix -V8c1INaleagetV9V10V7Iainfix &lt;V10V0Aainfix &lt;=c0V10Aainfix &lt;=c0V0Lainfix -V8c1Iainfix &gt;V8c0IaleV7agetV9V14Iainfix &lt;=V14V6Aainfix &lt;=ainfix +V8c1V14FAaleagetV9V15agetV9V16INainfix =V16V8INainfix =V15V8Iainfix &lt;=V16V6Aainfix &lt;=V15V16Aainfix &lt;=c0V15FAapermut_allV2amk arrayV0asetV9V8V7Aainfix &lt;=V8V6Aainfix &lt;=c0V8FLagetV4V6Iainfix &lt;V6V0Aainfix &lt;=c0V6Aainfix &lt;=c0V0Iapermut_allV2V5Aasorted_subV4c0V6Iainfix &lt;=V6V3Aainfix &lt;=c1V6FLamk arrayV0V4FIainfix &lt;=c1V3Lainfix -V0c1Iainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
971 972 973
      <label
       name="expl:VC for insertion_sort"/>
      <proof
974
       prover="0"
Andrei Paskevich's avatar
Andrei Paskevich committed
975 976 977 978