1 <?xml version="1.0" encoding="UTF-8"?>
2 <!DOCTYPE why3session PUBLIC "-//Why3//proof session v5//EN"
3 "http://why3.lri.fr/why3session.dtd">
4 <why3session shape_version="6">
5 <prover id="0" name="Alt-Ergo" version="1.01" timelimit="5" steplimit="0" memlimit="1000"/>
6 <prover id="1" name="Alt-Ergo" version="1.30" timelimit="1" steplimit="0" memlimit="1000"/>
7 <prover id="2" name="Z3" version="4.5.0" timelimit="1" steplimit="0" memlimit="1000"/>
8 <prover id="3" name="CVC4" version="1.5" timelimit="1" steplimit="0" memlimit="1000"/>
9 <prover id="4" name="Z3" version="4.6.0" timelimit="1" steplimit="0" memlimit="1000"/>
10 <prover id="5" name="Alt-Ergo" version="2.2.0" timelimit="1" steplimit="0" memlimit="1000"/>
11 <prover id="6" name="CVC4" version="1.6" timelimit="1" steplimit="0" memlimit="1000"/>
13 <path name=".."/><path name="flexible_array.mlw"/>
14 <theory name="FlexibleArray">
15 <goal name="VC t" expl="VC for t" proved="true">
16 <proof prover="3"><result status="valid" time="0.03"/></proof>
18 <goal name="VC empty" expl="VC for empty" proved="true">
19 <proof prover="0"><result status="valid" time="0.00" steps="3"/></proof>
20 <proof prover="3"><result status="valid" time="0.02"/></proof>
22 <goal name="VC is_empty" expl="VC for is_empty" proved="true">
23 <proof prover="0"><result status="valid" time="0.01" steps="0"/></proof>
24 <proof prover="3"><result status="valid" time="0.02"/></proof>
26 <goal name="VC get_aux" expl="VC for get_aux" proved="true">
27 <proof prover="0"><result status="valid" time="0.04" steps="110"/></proof>
28 <proof prover="3"><result status="valid" time="0.06"/></proof>
30 <goal name="VC get" expl="VC for get" proved="true">
31 <proof prover="0"><result status="valid" time="0.05" steps="5"/></proof>
32 <proof prover="3"><result status="valid" time="0.04"/></proof>
34 <goal name="VC set_aux" expl="VC for set_aux" proved="true">
35 <proof prover="0"><result status="valid" time="0.47" steps="744"/></proof>
36 <proof prover="2"><result status="valid" time="0.27"/></proof>
38 <goal name="VC set" expl="VC for set" proved="true">
39 <proof prover="0"><result status="valid" time="0.01" steps="44"/></proof>
40 <proof prover="3"><result status="valid" time="0.06"/></proof>
42 <goal name="VC le_aux" expl="VC for le_aux" proved="true">
43 <proof prover="0"><result status="valid" time="0.55" steps="473"/></proof>
44 <proof prover="2"><result status="valid" time="0.89"/></proof>
46 <goal name="VC le" expl="VC for le" proved="true">
47 <proof prover="0"><result status="valid" time="0.01" steps="38"/></proof>
48 <proof prover="3"><result status="valid" time="0.05"/></proof>
50 <goal name="VC lr_aux" expl="VC for lr_aux" proved="true">
51 <proof prover="0"><result status="valid" time="1.64" steps="1162"/></proof>
52 <proof prover="2"><result status="valid" time="0.64"/></proof>
54 <goal name="VC lr" expl="VC for lr" proved="true">
55 <proof prover="0"><result status="valid" time="0.01" steps="30"/></proof>
56 <proof prover="3"><result status="valid" time="0.05"/></proof>
58 <goal name="VC he_aux" expl="VC for he_aux" proved="true">
59 <proof prover="0"><result status="valid" time="0.41" steps="607"/></proof>
60 <proof prover="2"><result status="valid" time="0.94"/></proof>
62 <goal name="VC he" expl="VC for he" proved="true">
63 <proof prover="0"><result status="valid" time="0.00" steps="36"/></proof>
64 <proof prover="3"><result status="valid" time="0.06"/></proof>
66 <goal name="VC hr_aux" expl="VC for hr_aux" proved="true">
67 <proof prover="0"><result status="valid" time="0.65" steps="826"/></proof>
68 <proof prover="1"><result status="valid" time="0.41" steps="1379"/></proof>
70 <goal name="VC hr" expl="VC for hr" proved="true">
71 <proof prover="0"><result status="valid" time="0.00" steps="30"/></proof>
72 <proof prover="3"><result status="valid" time="0.05"/></proof>
74 <goal name="VC elements_aux_length" expl="VC for elements_aux_length" proved="true">
75 <proof prover="0"><result status="valid" time="0.04" steps="199"/></proof>
76 <proof prover="1"><result status="valid" time="0.05" steps="230"/></proof>
78 <goal name="VC elements_aux_correct" expl="VC for elements_aux_correct">
79 <proof prover="4"><result status="timeout" time="1.00" steps="1992911"/></proof>
80 <proof prover="5"><result status="timeout" time="1.00"/></proof>
81 <proof prover="6"><result status="timeout" time="1.00" steps="156194"/></proof>
82 <transf name="split_goal_right" >
83 <goal name="VC elements_aux_correct.0" expl="precondition" proved="true">
84 <proof prover="3"><result status="valid" time="0.04" steps="17484"/></proof>
86 <goal name="VC elements_aux_correct.1" expl="precondition" proved="true">
87 <proof prover="3"><result status="valid" time="0.04" steps="17505"/></proof>
89 <goal name="VC elements_aux_correct.2" expl="variant decrease" proved="true">
90 <proof prover="3"><result status="valid" time="0.06" steps="20408"/></proof>
92 <goal name="VC elements_aux_correct.3" expl="precondition" proved="true">
93 <proof prover="3"><result status="valid" time="0.06" steps="20179"/></proof>
95 <goal name="VC elements_aux_correct.4" expl="precondition" proved="true">
96 <proof prover="3"><result status="valid" time="0.18" steps="20055"/></proof>
98 <goal name="VC elements_aux_correct.5" expl="precondition" proved="true">
99 <proof prover="3"><result status="valid" time="0.03" steps="17509"/></proof>
101 <goal name="VC elements_aux_correct.6" expl="variant decrease" proved="true">
102 <proof prover="3"><result status="valid" time="0.18" steps="20408"/></proof>
104 <goal name="VC elements_aux_correct.7" expl="precondition" proved="true">
105 <proof prover="3"><result status="valid" time="0.08" steps="21212"/></proof>
107 <goal name="VC elements_aux_correct.8" expl="precondition" proved="true">
108 <proof prover="3"><result status="valid" time="0.07" steps="20052"/></proof>
110 <goal name="VC elements_aux_correct.9" expl="postcondition">
111 <transf name="split_goal_right" >
112 <goal name="VC elements_aux_correct.9.0" expl="postcondition" proved="true">
113 <proof prover="3"><result status="valid" time="0.03" steps="16829"/></proof>
115 <goal name="VC elements_aux_correct.9.1" expl="postcondition">
116 <proof prover="1" timelimit="10" memlimit="4000" obsolete="true"><result status="valid" time="1.36" steps="1807"/></proof>
122 <goal name="elements_correct" proved="true">
123 <proof prover="0"><result status="valid" time="0.01" steps="17"/></proof>
124 <proof prover="1"><result status="valid" time="0.01" steps="17"/></proof>
126 <goal name="VC non_empty" expl="VC for non_empty" proved="true">
127 <proof prover="0"><result status="valid" time="0.01" steps="5"/></proof>
128 <proof prover="3"><result status="valid" time="0.04"/></proof>
130 <goal name="VC size_list_nonneg" expl="VC for size_list_nonneg" proved="true">
131 <proof prover="0"><result status="valid" time="0.01" steps="18"/></proof>
132 <proof prover="3"><result status="valid" time="0.07"/></proof>
134 <goal name="VC size_list_append" expl="VC for size_list_append" proved="true">
135 <proof prover="0"><result status="valid" time="0.01" steps="26"/></proof>
136 <proof prover="3"><result status="valid" time="0.07"/></proof>
138 <goal name="size_list_snoc" proved="true">
139 <proof prover="0"><result status="valid" time="0.01" steps="1"/></proof>
140 <proof prover="3"><result status="valid" time="0.06"/></proof>
142 <goal name="VC iter" expl="VC for iter">
143 <proof prover="4"><result status="timeout" time="1.00" steps="1612727"/></proof>
144 <proof prover="5"><result status="timeout" time="1.00"/></proof>
145 <proof prover="6"><result status="timeout" time="1.00" steps="183976"/></proof>
146 <transf name="split_goal_right" >
147 <goal name="VC iter.0" expl="loop invariant init" proved="true">
148 <proof prover="0" obsolete="true"><result status="valid" time="0.01" steps="7"/></proof>
149 <proof prover="3"><result status="valid" time="0.05" steps="22302"/></proof>
151 <goal name="VC iter.1" expl="loop invariant init" proved="true">
152 <proof prover="0" obsolete="true"><result status="valid" time="0.01" steps="35"/></proof>
153 <proof prover="3"><result status="valid" time="0.06" steps="20277"/></proof>
155 <goal name="VC iter.2" expl="loop invariant init" proved="true">
156 <proof prover="0" obsolete="true"><result status="valid" time="0.02" steps="7"/></proof>
157 <proof prover="3"><result status="valid" time="0.05" steps="18677"/></proof>
159 <goal name="VC iter.3" expl="loop invariant init" proved="true">
160 <proof prover="0" obsolete="true"><result status="valid" time="0.01" steps="9"/></proof>
161 <proof prover="3"><result status="valid" time="0.09" steps="40399"/></proof>
163 <goal name="VC iter.4" expl="loop invariant init" proved="true">
164 <proof prover="0" obsolete="true"><result status="valid" time="0.01" steps="14"/></proof>
165 <proof prover="3"><result status="valid" time="0.07" steps="28548"/></proof>
167 <goal name="VC iter.5" expl="loop invariant init" proved="true">
168 <proof prover="0" obsolete="true"><result status="valid" time="0.01" steps="11"/></proof>
169 <proof prover="3"><result status="valid" time="0.07" steps="28712"/></proof>
171 <goal name="VC iter.6" expl="precondition" proved="true">
172 <proof prover="0" obsolete="true"><result status="valid" time="0.01" steps="10"/></proof>
173 <proof prover="3"><result status="valid" time="0.04" steps="26714"/></proof>
175 <goal name="VC iter.7" expl="unreachable point">
176 <proof prover="0" obsolete="true"><result status="valid" time="0.01" steps="15"/></proof>
177 <proof prover="3"><result status="timeout" time="1.00" steps="124918"/></proof>
179 <goal name="VC iter.8" expl="loop variant decrease" proved="true">
180 <proof prover="0" obsolete="true"><result status="valid" time="0.02" steps="22"/></proof>
181 <proof prover="3"><result status="valid" time="0.22" steps="33967"/></proof>
183 <goal name="VC iter.9" expl="loop invariant preservation">
184 <proof prover="0" obsolete="true"><result status="valid" time="0.01" steps="28"/></proof>
185 <proof prover="3"><result status="timeout" time="1.00" steps="87079"/></proof>
187 <goal name="VC iter.10" expl="loop invariant preservation" proved="true">
188 <proof prover="0" obsolete="true"><result status="valid" time="0.02" steps="81"/></proof>
189 <proof prover="3"><result status="valid" time="0.18" steps="30958"/></proof>
191 <goal name="VC iter.11" expl="loop invariant preservation" proved="true">
192 <proof prover="0" obsolete="true"><result status="valid" time="1.04" steps="988"/></proof>
193 <proof prover="3"><result status="valid" time="0.14" steps="30934"/></proof>
195 <goal name="VC iter.12" expl="loop invariant preservation">
196 <proof prover="0" obsolete="true"><result status="valid" time="0.02" steps="35"/></proof>
197 <proof prover="3"><result status="timeout" time="1.00" steps="90560"/></proof>
199 <goal name="VC iter.13" expl="loop invariant preservation">
201 <goal name="VC iter.14" expl="loop invariant preservation" proved="true">
202 <proof prover="0" obsolete="true"><result status="valid" time="0.03" steps="148"/></proof>
203 <proof prover="3"><result status="valid" time="0.10" steps="32303"/></proof>
205 <goal name="VC iter.15" expl="loop variant decrease" proved="true">
206 <proof prover="0" obsolete="true"><result status="valid" time="0.01" steps="26"/></proof>
207 <proof prover="3"><result status="valid" time="0.10" steps="33145"/></proof>
209 <goal name="VC iter.16" expl="loop invariant preservation">
210 <proof prover="0" obsolete="true"><result status="valid" time="0.01" steps="26"/></proof>
211 <proof prover="3"><result status="timeout" time="1.00" steps="103941"/></proof>
213 <goal name="VC iter.17" expl="loop invariant preservation">
214 <proof prover="0" obsolete="true"><result status="valid" time="0.01" steps="66"/></proof>
215 <proof prover="3"><result status="timeout" time="1.00" steps="101436"/></proof>
217 <goal name="VC iter.18" expl="loop invariant preservation">
218 <proof prover="0" obsolete="true"><result status="valid" time="0.01" steps="22"/></proof>
219 <proof prover="3"><result status="timeout" time="1.00" steps="121009"/></proof>
221 <goal name="VC iter.19" expl="loop invariant preservation">
222 <proof prover="0" obsolete="true"><result status="valid" time="0.01" steps="37"/></proof>
223 <proof prover="3"><result status="timeout" time="1.00" steps="133242"/></proof>
225 <goal name="VC iter.20" expl="loop invariant preservation">
227 <goal name="VC iter.21" expl="loop invariant preservation">
228 <proof prover="0" obsolete="true"><result status="valid" time="0.02" steps="36"/></proof>
229 <proof prover="3"><result status="timeout" time="1.00" steps="94134"/></proof>
231 <goal name="VC iter.22" expl="loop variant decrease" proved="true">
232 <proof prover="0" obsolete="true"><result status="valid" time="0.03" steps="23"/></proof>
233 <proof prover="3"><result status="valid" time="0.09" steps="33708"/></proof>
235 <goal name="VC iter.23" expl="loop invariant preservation">
236 <proof prover="0" obsolete="true"><result status="valid" time="0.01" steps="27"/></proof>
237 <proof prover="3"><result status="timeout" time="1.00" steps="106819"/></proof>
239 <goal name="VC iter.24" expl="loop invariant preservation" proved="true">
240 <proof prover="0" obsolete="true"><result status="valid" time="0.32" steps="527"/></proof>
241 <proof prover="3"><result status="valid" time="0.12" steps="30729"/></proof>
243 <goal name="VC iter.25" expl="loop invariant preservation" proved="true">
244 <proof prover="0" obsolete="true"><result status="valid" time="0.00" steps="21"/></proof>
245 <proof prover="3"><result status="valid" time="0.04" steps="30705"/></proof>
247 <goal name="VC iter.26" expl="loop invariant preservation">
248 <proof prover="0" obsolete="true"><result status="valid" time="0.02" steps="30"/></proof>
249 <proof prover="3"><result status="timeout" time="1.00" steps="119406"/></proof>
251 <goal name="VC iter.27" expl="loop invariant preservation">
253 <goal name="VC iter.28" expl="loop invariant preservation" proved="true">
254 <proof prover="0" obsolete="true"><result status="valid" time="0.03" steps="35"/></proof>
255 <proof prover="3"><result status="valid" time="0.08" steps="32014"/></proof>
257 <goal name="VC iter.29" expl="loop variant decrease" proved="true">
258 <proof prover="0" obsolete="true"><result status="valid" time="0.03" steps="27"/></proof>
259 <proof prover="3"><result status="valid" time="0.10" steps="32961"/></proof>
261 <goal name="VC iter.30" expl="loop invariant preservation">
262 <proof prover="0" obsolete="true"><result status="valid" time="0.01" steps="85"/></proof>
263 <proof prover="3"><result status="timeout" time="1.00" steps="146171"/></proof>
265 <goal name="VC iter.31" expl="loop invariant preservation">
266 <proof prover="0" obsolete="true"><result status="valid" time="0.01" steps="75"/></proof>
267 <proof prover="3"><result status="timeout" time="1.00" steps="108052"/></proof>
269 <goal name="VC iter.32" expl="loop invariant preservation" proved="true">
270 <proof prover="0" obsolete="true"><result status="valid" time="0.01" steps="26"/></proof>
271 <proof prover="3"><result status="valid" time="0.06" steps="27657"/></proof>
273 <goal name="VC iter.33" expl="loop invariant preservation">
274 <proof prover="0" obsolete="true"><result status="valid" time="0.02" steps="36"/></proof>
275 <proof prover="3"><result status="timeout" time="1.00" steps="113856"/></proof>
277 <goal name="VC iter.34" expl="loop invariant preservation">
279 <goal name="VC iter.35" expl="loop invariant preservation">
280 <proof prover="0" obsolete="true"><result status="valid" time="0.02" steps="134"/></proof>
281 <proof prover="3"><result status="timeout" time="1.00" steps="123453"/></proof>
283 <goal name="VC iter.36" expl="loop variant decrease" proved="true">
284 <proof prover="0" obsolete="true"><result status="valid" time="0.03" steps="23"/></proof>
285 <proof prover="3"><result status="valid" time="0.10" steps="33662"/></proof>
287 <goal name="VC iter.37" expl="loop invariant preservation">
288 <proof prover="0" obsolete="true"><result status="valid" time="0.01" steps="27"/></proof>
289 <proof prover="3"><result status="timeout" time="1.00" steps="96334"/></proof>
291 <goal name="VC iter.38" expl="loop invariant preservation" proved="true">
292 <proof prover="0" obsolete="true"><result status="valid" time="0.54" steps="731"/></proof>
293 <proof prover="3"><result status="valid" time="0.12" steps="30725"/></proof>
295 <goal name="VC iter.39" expl="loop invariant preservation" proved="true">
296 <proof prover="0" obsolete="true"><result status="valid" time="0.01" steps="21"/></proof>
297 <proof prover="3"><result status="valid" time="0.04" steps="30701"/></proof>
299 <goal name="VC iter.40" expl="loop invariant preservation">
300 <proof prover="0" obsolete="true"><result status="valid" time="0.02" steps="30"/></proof>
301 <proof prover="3"><result status="timeout" time="1.00" steps="91113"/></proof>
303 <goal name="VC iter.41" expl="loop invariant preservation">
305 <goal name="VC iter.42" expl="loop invariant preservation" proved="true">
306 <proof prover="0" obsolete="true"><result status="valid" time="0.02" steps="35"/></proof>
307 <proof prover="3"><result status="valid" time="0.08" steps="32010"/></proof>
309 <goal name="VC iter.43" expl="loop variant decrease" proved="true">
310 <proof prover="0" obsolete="true"><result status="valid" time="0.03" steps="27"/></proof>
311 <proof prover="3"><result status="valid" time="0.10" steps="32931"/></proof>
313 <goal name="VC iter.44" expl="loop invariant preservation">
314 <proof prover="0" obsolete="true"><result status="valid" time="0.02" steps="85"/></proof>
315 <proof prover="3"><result status="timeout" time="1.00" steps="110526"/></proof>
317 <goal name="VC iter.45" expl="loop invariant preservation" proved="true">
318 <proof prover="0" obsolete="true"><result status="valid" time="0.01" steps="97"/></proof>
319 <proof prover="3"><result status="valid" time="0.12" steps="27619"/></proof>
321 <goal name="VC iter.46" expl="loop invariant preservation">
322 <proof prover="0" obsolete="true"><result status="valid" time="0.01" steps="75"/></proof>
323 <proof prover="3"><result status="timeout" time="1.00" steps="104151"/></proof>
325 <goal name="VC iter.47" expl="loop invariant preservation">
326 <proof prover="0" obsolete="true"><result status="valid" time="0.02" steps="36"/></proof>
327 <proof prover="3"><result status="timeout" time="1.00" steps="112539"/></proof>
329 <goal name="VC iter.48" expl="loop invariant preservation">
331 <goal name="VC iter.49" expl="loop invariant preservation">
332 <proof prover="0" obsolete="true"><result status="valid" time="0.03" steps="133"/></proof>
333 <proof prover="3"><result status="timeout" time="1.00" steps="92646"/></proof>
335 <goal name="VC iter.50" expl="loop variant decrease" proved="true">
336 <proof prover="0" obsolete="true"><result status="valid" time="0.03" steps="24"/></proof>
337 <proof prover="3"><result status="valid" time="0.10" steps="33152"/></proof>
339 <goal name="VC iter.51" expl="loop invariant preservation" proved="true">
340 <proof prover="0" obsolete="true"><result status="valid" time="0.01" steps="28"/></proof>
341 <proof prover="3"><result status="valid" time="0.07" steps="33265"/></proof>
343 <goal name="VC iter.52" expl="loop invariant preservation" proved="true">
344 <proof prover="0" obsolete="true"><result status="valid" time="0.01" steps="23"/></proof>
345 <proof prover="3"><result status="valid" time="0.04" steps="30331"/></proof>
347 <goal name="VC iter.53" expl="loop invariant preservation" proved="true">
348 <proof prover="0" obsolete="true"><result status="valid" time="0.01" steps="84"/></proof>
349 <proof prover="3"><result status="valid" time="0.07" steps="30307"/></proof>
351 <goal name="VC iter.54" expl="loop invariant preservation">
352 <proof prover="0" obsolete="true"><result status="valid" time="0.02" steps="25"/></proof>
353 <proof prover="3"><result status="timeout" time="1.00" steps="168996"/></proof>
355 <goal name="VC iter.55" expl="loop invariant preservation">
356 <transf name="subst" arg1="visited">
357 <goal name="VC iter.20.0" expl="loop invariant preservation">
358 <transf name="case" arg1="(i = length2 visited1)">
359 <goal name="VC iter.20.0.0" expl="loop invariant preservation">
360 <transf name="subst" arg1="i">
361 <goal name="VC iter.20.0.0.0" expl="loop invariant preservation">
362 <transf name="rewrite" arg1="H12">
363 <goal name="VC iter.20.0.0.0.0" expl="loop invariant preservation">
369 <goal name="VC iter.20.0.1" expl="loop invariant preservation">
370 <proof prover="3"><result status="valid" time="0.07"/></proof>
376 <goal name="VC iter.56" expl="loop invariant preservation" proved="true">
377 <proof prover="0" obsolete="true"><result status="valid" time="0.03" steps="116"/></proof>
378 <proof prover="3"><result status="valid" time="0.10" steps="31658"/></proof>
380 <goal name="VC iter.57" expl="loop variant decrease" proved="true">
381 <proof prover="0" obsolete="true"><result status="valid" time="0.04" steps="28"/></proof>
382 <proof prover="3"><result status="valid" time="0.10" steps="32665"/></proof>
384 <goal name="VC iter.58" expl="loop invariant preservation">
385 <proof prover="0" obsolete="true"><result status="valid" time="0.01" steps="95"/></proof>
386 <proof prover="3"><result status="timeout" time="1.00" steps="164449"/></proof>
388 <goal name="VC iter.59" expl="loop invariant preservation" proved="true">
389 <proof prover="0" obsolete="true"><result status="valid" time="0.01" steps="27"/></proof>
390 <proof prover="3"><result status="valid" time="0.07" steps="27517"/></proof>
392 <goal name="VC iter.60" expl="loop invariant preservation" proved="true">
393 <proof prover="0" obsolete="true"><result status="valid" time="0.01" steps="27"/></proof>
394 <proof prover="3"><result status="valid" time="0.07" steps="27536"/></proof>
396 <goal name="VC iter.61" expl="loop invariant preservation">
397 <proof prover="0" obsolete="true"><result status="valid" time="0.03" steps="35"/></proof>
398 <proof prover="3"><result status="timeout" time="1.00" steps="121976"/></proof>
400 <goal name="VC iter.62" expl="loop invariant preservation">
402 <goal name="VC iter.63" expl="loop invariant preservation">
403 <proof prover="0" obsolete="true"><result status="valid" time="0.02" steps="34"/></proof>
404 <proof prover="3"><result status="timeout" time="1.00" steps="130518"/></proof>
406 <goal name="VC iter.64" expl="assertion" proved="true">
407 <proof prover="0" obsolete="true"><result status="valid" time="0.02" steps="75"/></proof>
408 <proof prover="3"><result status="valid" time="0.08" steps="35218"/></proof>
410 <goal name="VC iter.65" expl="assertion" proved="true">
411 <proof prover="0" obsolete="true"><result status="valid" time="0.01" steps="11"/></proof>
412 <proof prover="3"><result status="valid" time="0.05" steps="25538"/></proof>