why3session.xml 35.2 KB
Newer Older
1
<?xml version="1.0" encoding="UTF-8"?>
MARCHE Claude's avatar
MARCHE Claude committed
2 3
<!DOCTYPE why3session PUBLIC "-//Why3//proof session v5//EN"
"http://why3.lri.fr/why3session.dtd">
Andrei Paskevich's avatar
Andrei Paskevich committed
4
<why3session shape_version="4">
5 6 7 8 9
<prover id="0" name="Coq" version="8.4pl6" timelimit="20" memlimit="4000"/>
<prover id="1" name="CVC3" version="2.4.1" timelimit="5" memlimit="0"/>
<prover id="5" name="Alt-Ergo" version="0.99.1" timelimit="10" memlimit="1000"/>
<prover id="7" name="Z3" version="3.2" timelimit="5" memlimit="1000"/>
<prover id="8" name="Z3" version="4.3.2" timelimit="5" memlimit="1000"/>
MARCHE Claude's avatar
MARCHE Claude committed
10
<file name="../vstte12_ring_buffer.mlw" expanded="true">
11
<theory name="RingBuffer" sum="3d62ac706fb45509ffb479d6963b405d" expanded="true">
12
 <goal name="WP_parameter create" expl="VC for create">
13
 <proof prover="5" memlimit="0"><result status="valid" time="0.01" steps="10"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed
14
 </goal>
15
 <goal name="WP_parameter length" expl="VC for length">
16
 <proof prover="5" memlimit="0"><result status="valid" time="0.02" steps="0"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed
17
 </goal>
18
 <goal name="WP_parameter clear" expl="VC for clear">
19
 <proof prover="5" memlimit="0"><result status="valid" time="0.01" steps="11"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed
20
 </goal>
21 22 23
 <goal name="WP_parameter push" expl="VC for push">
 <transf name="split_goal_wp">
  <goal name="WP_parameter push.1" expl="1. index in array bounds">
24
  <proof prover="5" memlimit="0"><result status="valid" time="0.01" steps="13"/></proof>
Andrei Paskevich's avatar
Andrei Paskevich committed
25
  </goal>
26 27 28 29 30
  <goal name="WP_parameter push.2" expl="2. type invariant">
  <transf name="inline_goal">
   <goal name="WP_parameter push.2.1" expl="1. type invariant">
   <transf name="split_goal_wp">
    <goal name="WP_parameter push.2.1.1" expl="1. VC for push">
31
    <proof prover="5" timelimit="5"><result status="valid" time="0.02" steps="5"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed
32
    </goal>
33
    <goal name="WP_parameter push.2.1.2" expl="2. VC for push">
34
    <proof prover="5" timelimit="5"><result status="valid" time="0.02" steps="5"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed
35
    </goal>
36
    <goal name="WP_parameter push.2.1.3" expl="3. VC for push">
37
    <proof prover="5" timelimit="5"><result status="valid" time="0.02" steps="7"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed
38
    </goal>
39
    <goal name="WP_parameter push.2.1.4" expl="4. VC for push">
40
    <proof prover="5" memlimit="0"><result status="valid" time="0.01" steps="6"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed
41
    </goal>
42
    <goal name="WP_parameter push.2.1.5" expl="5. VC for push">
43
    <proof prover="5" memlimit="0"><result status="valid" time="0.03" steps="18"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed
44
    </goal>
45
    <goal name="WP_parameter push.2.1.6" expl="6. VC for push">
46
    <proof prover="5" timelimit="5"><result status="valid" time="0.16" steps="215"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed
47
    </goal>
48
    <goal name="WP_parameter push.2.1.7" expl="7. VC for push">
49
    <proof prover="5"><result status="valid" time="0.08" steps="80"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed
50 51
    </goal>
   </transf>
52
   </goal>
MARCHE Claude's avatar
MARCHE Claude committed
53 54
  </transf>
  </goal>
55
  <goal name="WP_parameter push.3" expl="3. type invariant">
56
  <proof prover="5" timelimit="5"><result status="valid" time="0.01" steps="9"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed
57
  </goal>
58
  <goal name="WP_parameter push.4" expl="4. postcondition">
59
  <proof prover="5" timelimit="30"><result status="valid" time="0.02" steps="12"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed
60
  </goal>
61
  <goal name="WP_parameter push.5" expl="5. postcondition">
62
  <proof prover="5" timelimit="30"><result status="valid" time="0.01" steps="12"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed
63 64 65
  </goal>
 </transf>
 </goal>
66 67 68
 <goal name="WP_parameter head" expl="VC for head">
 <transf name="split_goal_wp">
  <goal name="WP_parameter head.1" expl="1. index in array bounds">
69
  <proof prover="5" memlimit="0"><result status="valid" time="0.02" steps="7"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed
70
  </goal>
71
  <goal name="WP_parameter head.2" expl="2. postcondition">
MARCHE Claude's avatar
MARCHE Claude committed
72
  <proof prover="0" timelimit="5" memlimit="1000" edited="vstte12_ring_buffer_2_RingBuffer_WP_parameter_head_1.v"><result status="valid" time="1.25"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed
73 74 75
  </goal>
 </transf>
 </goal>
76 77 78
 <goal name="WP_parameter pop" expl="VC for pop">
 <transf name="split_goal_wp">
  <goal name="WP_parameter pop.1" expl="1. unreachable point">
79
  <proof prover="5" memlimit="0"><result status="valid" time="0.00" steps="8"/></proof>
Andrei Paskevich's avatar
Andrei Paskevich committed
80
  </goal>
81
  <goal name="WP_parameter pop.2" expl="2. index in array bounds">
82
  <proof prover="5" memlimit="0"><result status="valid" time="0.02" steps="9"/></proof>
Andrei Paskevich's avatar
Andrei Paskevich committed
83
  </goal>
84 85 86
  <goal name="WP_parameter pop.3" expl="3. type invariant">
  <transf name="split_goal_wp">
   <goal name="WP_parameter pop.3.1" expl="1. VC for pop">
87
   <proof prover="5" memlimit="0"><result status="valid" time="0.01" steps="13"/></proof>
88
   </goal>
89
   <goal name="WP_parameter pop.3.2" expl="2. VC for pop">
90
   <proof prover="5" timelimit="5"><result status="valid" time="0.02" steps="13"/></proof>
91
   </goal>
92
   <goal name="WP_parameter pop.3.3" expl="3. VC for pop">
93
   <proof prover="5" memlimit="0"><result status="valid" time="0.01" steps="13"/></proof>
94
   </goal>
95
   <goal name="WP_parameter pop.3.4" expl="4. VC for pop">
Andrei Paskevich's avatar
Andrei Paskevich committed
96
   <proof prover="1" memlimit="1000"><result status="valid" time="0.02"/></proof>
97
   <proof prover="5" timelimit="5"><result status="valid" time="0.02" steps="13"/></proof>
98
   </goal>
99
   <goal name="WP_parameter pop.3.5" expl="5. VC for pop">
100
   <proof prover="5" memlimit="0"><result status="valid" time="0.01" steps="20"/></proof>
101
   </goal>
102
   <goal name="WP_parameter pop.3.6" expl="6. VC for pop">
Andrei Paskevich's avatar
Andrei Paskevich committed
103
   <proof prover="1" memlimit="1000"><result status="valid" time="0.06"/></proof>
104
   </goal>
105
   <goal name="WP_parameter pop.3.7" expl="7. VC for pop">
106
   <proof prover="5" timelimit="5"><result status="valid" time="0.02" steps="15"/></proof>
107
   </goal>
MARCHE Claude's avatar
MARCHE Claude committed
108 109
  </transf>
  </goal>
110
  <goal name="WP_parameter pop.4" expl="4. postcondition">
111
  <proof prover="5" timelimit="30"><result status="valid" time="0.01" steps="18"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed
112
  </goal>
113 114 115
  <goal name="WP_parameter pop.5" expl="5. postcondition">
  <transf name="split_goal_wp">
   <goal name="WP_parameter pop.5.1" expl="1. VC for pop">
116
   <proof prover="5" timelimit="5"><result status="valid" time="0.01" steps="19"/></proof>
117
   </goal>
118
   <goal name="WP_parameter pop.5.2" expl="2. VC for pop">
Andrei Paskevich's avatar
Andrei Paskevich committed
119
   <proof prover="1" memlimit="1000"><result status="valid" time="0.25"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed
120
   </goal>
121
   <goal name="WP_parameter pop.5.3" expl="3. VC for pop">
122
   <proof prover="5" timelimit="5"><result status="valid" time="0.00" steps="25"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed
123 124 125
   </goal>
  </transf>
  </goal>
126 127 128
  <goal name="WP_parameter pop.6" expl="6. type invariant">
  <transf name="split_goal_wp">
   <goal name="WP_parameter pop.6.1" expl="1. VC for pop">
129
   <proof prover="5" memlimit="0"><result status="valid" time="0.01" steps="12"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed
130
   </goal>
131
   <goal name="WP_parameter pop.6.2" expl="2. VC for pop">
132
   <proof prover="5" timelimit="5"><result status="valid" time="0.01" steps="12"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed
133
   </goal>
134
   <goal name="WP_parameter pop.6.3" expl="3. VC for pop">
135
   <proof prover="5" memlimit="0"><result status="valid" time="0.02" steps="12"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed
136
   </goal>
137
   <goal name="WP_parameter pop.6.4" expl="4. VC for pop">
Andrei Paskevich's avatar
Andrei Paskevich committed
138
   <proof prover="1" memlimit="1000"><result status="valid" time="0.02"/></proof>
139
   <proof prover="5" timelimit="5"><result status="valid" time="0.01" steps="12"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed
140
   </goal>
141
   <goal name="WP_parameter pop.6.5" expl="5. VC for pop">
142
   <proof prover="5" memlimit="0"><result status="valid" time="0.01" steps="19"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed
143
   </goal>
144
   <goal name="WP_parameter pop.6.6" expl="6. VC for pop">
Andrei Paskevich's avatar
Andrei Paskevich committed
145
   <proof prover="1" memlimit="1000"><result status="valid" time="0.09"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed
146
   </goal>
147 148
   <goal name="WP_parameter pop.6.7" expl="7. VC for pop">
   <metas>
Andrei Paskevich's avatar
Andrei Paskevich committed
149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172
    <ts_pos name="real" arity="0" id="2"
     ip_theory="BuiltIn">
     <ip_library name="why3"/>
     <ip_library name="BuiltIn"/>
     <ip_qualid name="real"/>
    </ts_pos>
    <ts_pos name="bool" arity="0" id="3"
     ip_theory="Bool">
     <ip_library name="why3"/>
     <ip_library name="Bool"/>
     <ip_qualid name="bool"/>
    </ts_pos>
    <ts_pos name="tuple0" arity="0" id="20"
     ip_theory="Tuple0">
     <ip_library name="why3"/>
     <ip_library name="Tuple0"/>
     <ip_qualid name="tuple0"/>
    </ts_pos>
    <ts_pos name="unit" arity="0" id="21"
     ip_theory="Unit">
     <ip_library name="why3"/>
     <ip_library name="Unit"/>
     <ip_qualid name="unit"/>
    </ts_pos>
173
    <ts_pos name="&apos;mark" arity="0" id="68"
Andrei Paskevich's avatar
Andrei Paskevich committed
174 175 176 177 178
     ip_theory="Mark">
     <ip_library name="why3"/>
     <ip_library name="Mark"/>
     <ip_qualid name="&apos;mark"/>
    </ts_pos>
179
    <ts_pos name="array" arity="1" id="4389"
Andrei Paskevich's avatar
Andrei Paskevich committed
180 181 182 183
     ip_theory="Array">
     <ip_library name="array"/>
     <ip_qualid name="array"/>
    </ts_pos>
184
    <ts_pos name="buffer" arity="1" id="5114"
Andrei Paskevich's avatar
Andrei Paskevich committed
185 186 187 188 189 190 191 192 193
     ip_theory="RingBuffer">
     <ip_qualid name="buffer"/>
    </ts_pos>
    <ls_pos name="infix =" id="10"
     ip_theory="BuiltIn">
     <ip_library name="why3"/>
     <ip_library name="BuiltIn"/>
     <ip_qualid name="infix ="/>
    </ls_pos>
194
    <ls_pos name="zero" id="297"
Andrei Paskevich's avatar
Andrei Paskevich committed
195 196 197 198
     ip_theory="Int">
     <ip_library name="int"/>
     <ip_qualid name="zero"/>
    </ls_pos>
199
    <ls_pos name="one" id="298"
Andrei Paskevich's avatar
Andrei Paskevich committed
200 201 202 203
     ip_theory="Int">
     <ip_library name="int"/>
     <ip_qualid name="one"/>
    </ls_pos>
204
    <ls_pos name="infix &lt;" id="299"
Andrei Paskevich's avatar
Andrei Paskevich committed
205 206 207 208
     ip_theory="Int">
     <ip_library name="int"/>
     <ip_qualid name="infix &lt;"/>
    </ls_pos>
209
    <ls_pos name="infix +" id="1468"
Andrei Paskevich's avatar
Andrei Paskevich committed
210 211 212 213
     ip_theory="Int">
     <ip_library name="int"/>
     <ip_qualid name="infix +"/>
    </ls_pos>
214
    <ls_pos name="prefix -" id="1469"
Andrei Paskevich's avatar
Andrei Paskevich committed
215 216 217 218
     ip_theory="Int">
     <ip_library name="int"/>
     <ip_qualid name="prefix -"/>
    </ls_pos>
219
    <ls_pos name="infix *" id="1470"
Andrei Paskevich's avatar
Andrei Paskevich committed
220 221 222 223
     ip_theory="Int">
     <ip_library name="int"/>
     <ip_qualid name="infix *"/>
    </ls_pos>
224
    <ls_pos name="mem" id="2360"
Andrei Paskevich's avatar
Andrei Paskevich committed
225 226 227 228
     ip_theory="Mem">
     <ip_library name="list"/>
     <ip_qualid name="mem"/>
    </ls_pos>
229
    <ls_pos name="get" id="3010"
Andrei Paskevich's avatar
Andrei Paskevich committed
230 231 232 233
     ip_theory="Map">
     <ip_library name="map"/>
     <ip_qualid name="get"/>
    </ls_pos>
234
    <ls_pos name="set" id="3013"
Andrei Paskevich's avatar
Andrei Paskevich committed
235 236 237 238
     ip_theory="Map">
     <ip_library name="map"/>
     <ip_qualid name="set"/>
    </ls_pos>
239
    <ls_pos name="mixfix []" id="3020"
Andrei Paskevich's avatar
Andrei Paskevich committed
240 241 242 243
     ip_theory="Map">
     <ip_library name="map"/>
     <ip_qualid name="mixfix []"/>
    </ls_pos>
244
    <ls_pos name="mixfix [&lt;-]" id="3033"
Andrei Paskevich's avatar
Andrei Paskevich committed
245 246 247 248
     ip_theory="Map">
     <ip_library name="map"/>
     <ip_qualid name="mixfix [&lt;-]"/>
    </ls_pos>
249
    <ls_pos name="infix ++" id="3718"
Andrei Paskevich's avatar
Andrei Paskevich committed
250 251 252 253
     ip_theory="Append">
     <ip_library name="list"/>
     <ip_qualid name="infix ++"/>
    </ls_pos>
254
    <ls_pos name="get" id="4397"
Andrei Paskevich's avatar
Andrei Paskevich committed
255 256 257 258
     ip_theory="Array">
     <ip_library name="array"/>
     <ip_qualid name="get"/>
    </ls_pos>
259
    <ls_pos name="set" id="4412"
Andrei Paskevich's avatar
Andrei Paskevich committed
260 261 262 263
     ip_theory="Array">
     <ip_library name="array"/>
     <ip_qualid name="set"/>
    </ls_pos>
264
    <ls_pos name="mixfix []" id="4437"
Andrei Paskevich's avatar
Andrei Paskevich committed
265 266 267 268
     ip_theory="Array">
     <ip_library name="array"/>
     <ip_qualid name="mixfix []"/>
    </ls_pos>
269
    <ls_pos name="mixfix [&lt;-]" id="4454"
Andrei Paskevich's avatar
Andrei Paskevich committed
270 271 272 273
     ip_theory="Array">
     <ip_library name="array"/>
     <ip_qualid name="mixfix [&lt;-]"/>
    </ls_pos>
274
    <ls_pos name="size" id="5128"
Andrei Paskevich's avatar
Andrei Paskevich committed
275 276 277
     ip_theory="RingBuffer">
     <ip_qualid name="size"/>
    </ls_pos>
278
    <ls_pos name="length" id="5137"
Andrei Paskevich's avatar
Andrei Paskevich committed
279 280 281
     ip_theory="RingBuffer">
     <ip_qualid name="length"/>
    </ls_pos>
282
    <pr_pos name="Assoc" id="1471"
Andrei Paskevich's avatar
Andrei Paskevich committed
283 284 285 286 287
     ip_theory="Int">
     <ip_library name="int"/>
     <ip_qualid name="CommutativeGroup"/>
     <ip_qualid name="Assoc"/>
    </pr_pos>
288
    <pr_pos name="Unit_def_l" id="1478"
Andrei Paskevich's avatar
Andrei Paskevich committed
289 290 291 292 293
     ip_theory="Int">
     <ip_library name="int"/>
     <ip_qualid name="CommutativeGroup"/>
     <ip_qualid name="Unit_def_l"/>
    </pr_pos>
294
    <pr_pos name="Unit_def_r" id="1481"
Andrei Paskevich's avatar
Andrei Paskevich committed
295 296 297 298 299
     ip_theory="Int">
     <ip_library name="int"/>
     <ip_qualid name="CommutativeGroup"/>
     <ip_qualid name="Unit_def_r"/>
    </pr_pos>
300
    <pr_pos name="Inv_def_l" id="1484"
Andrei Paskevich's avatar
Andrei Paskevich committed
301 302 303 304 305
     ip_theory="Int">
     <ip_library name="int"/>
     <ip_qualid name="CommutativeGroup"/>
     <ip_qualid name="Inv_def_l"/>
    </pr_pos>
306
    <pr_pos name="Inv_def_r" id="1487"
Andrei Paskevich's avatar
Andrei Paskevich committed
307 308 309 310 311
     ip_theory="Int">
     <ip_library name="int"/>
     <ip_qualid name="CommutativeGroup"/>
     <ip_qualid name="Inv_def_r"/>
    </pr_pos>
312
    <pr_pos name="Comm" id="1490"
Andrei Paskevich's avatar
Andrei Paskevich committed
313 314 315 316 317 318
     ip_theory="Int">
     <ip_library name="int"/>
     <ip_qualid name="CommutativeGroup"/>
     <ip_qualid name="Comm"/>
     <ip_qualid name="Comm"/>
    </pr_pos>
319
    <pr_pos name="Assoc" id="1495"
Andrei Paskevich's avatar
Andrei Paskevich committed
320 321 322 323 324
     ip_theory="Int">
     <ip_library name="int"/>
     <ip_qualid name="Assoc"/>
     <ip_qualid name="Assoc"/>
    </pr_pos>
325
    <pr_pos name="Mul_distr_l" id="1502"
Andrei Paskevich's avatar
Andrei Paskevich committed
326 327 328 329
     ip_theory="Int">
     <ip_library name="int"/>
     <ip_qualid name="Mul_distr_l"/>
    </pr_pos>
330
    <pr_pos name="Mul_distr_r" id="1509"
Andrei Paskevich's avatar
Andrei Paskevich committed
331 332 333 334
     ip_theory="Int">
     <ip_library name="int"/>
     <ip_qualid name="Mul_distr_r"/>
    </pr_pos>
335
    <pr_pos name="Comm" id="1527"
Andrei Paskevich's avatar
Andrei Paskevich committed
336 337 338 339 340
     ip_theory="Int">
     <ip_library name="int"/>
     <ip_qualid name="Comm"/>
     <ip_qualid name="Comm"/>
    </pr_pos>
341
    <pr_pos name="Unitary" id="1532"
Andrei Paskevich's avatar
Andrei Paskevich committed
342 343 344 345
     ip_theory="Int">
     <ip_library name="int"/>
     <ip_qualid name="Unitary"/>
    </pr_pos>
346
    <pr_pos name="NonTrivialRing" id="1535"
Andrei Paskevich's avatar
Andrei Paskevich committed
347 348 349 350
     ip_theory="Int">
     <ip_library name="int"/>
     <ip_qualid name="NonTrivialRing"/>
    </pr_pos>
351
    <pr_pos name="Refl" id="1547"
Andrei Paskevich's avatar
Andrei Paskevich committed
352 353 354 355
     ip_theory="Int">
     <ip_library name="int"/>
     <ip_qualid name="Refl"/>
    </pr_pos>
356
    <pr_pos name="Trans" id="1550"
Andrei Paskevich's avatar
Andrei Paskevich committed
357 358 359 360
     ip_theory="Int">
     <ip_library name="int"/>
     <ip_qualid name="Trans"/>
    </pr_pos>
361
    <pr_pos name="Antisymm" id="1557"
Andrei Paskevich's avatar
Andrei Paskevich committed
362 363 364 365
     ip_theory="Int">
     <ip_library name="int"/>
     <ip_qualid name="Antisymm"/>
    </pr_pos>
366
    <pr_pos name="Total" id="1562"
Andrei Paskevich's avatar
Andrei Paskevich committed
367 368 369 370
     ip_theory="Int">
     <ip_library name="int"/>
     <ip_qualid name="Total"/>
    </pr_pos>
371
    <pr_pos name="ZeroLessOne" id="1567"
Andrei Paskevich's avatar
Andrei Paskevich committed
372 373 374 375
     ip_theory="Int">
     <ip_library name="int"/>
     <ip_qualid name="ZeroLessOne"/>
    </pr_pos>
376
    <pr_pos name="CompatOrderAdd" id="1568"
Andrei Paskevich's avatar
Andrei Paskevich committed
377 378 379 380
     ip_theory="Int">
     <ip_library name="int"/>
     <ip_qualid name="CompatOrderAdd"/>
    </pr_pos>
381
    <pr_pos name="CompatOrderMult" id="1575"
Andrei Paskevich's avatar
Andrei Paskevich committed
382 383 384 385
     ip_theory="Int">
     <ip_library name="int"/>
     <ip_qualid name="CompatOrderMult"/>
    </pr_pos>
386
    <pr_pos name="Length_nonnegative" id="2353"
Andrei Paskevich's avatar
Andrei Paskevich committed
387 388 389 390
     ip_theory="Length">
     <ip_library name="list"/>
     <ip_qualid name="Length_nonnegative"/>
    </pr_pos>
391
    <pr_pos name="Length_nil" id="2356"
Andrei Paskevich's avatar
Andrei Paskevich committed
392 393 394 395
     ip_theory="Length">
     <ip_library name="list"/>
     <ip_qualid name="Length_nil"/>
    </pr_pos>
396
    <pr_pos name="Select_eq" id="3046"
Andrei Paskevich's avatar
Andrei Paskevich committed
397 398 399 400
     ip_theory="Map">
     <ip_library name="map"/>
     <ip_qualid name="Select_eq"/>
    </pr_pos>
401
    <pr_pos name="Select_neq" id="3055"
Andrei Paskevich's avatar
Andrei Paskevich committed
402 403 404 405
     ip_theory="Map">
     <ip_library name="map"/>
     <ip_qualid name="Select_neq"/>
    </pr_pos>
406
    <pr_pos name="nth_none_1" id="3644"
Andrei Paskevich's avatar
Andrei Paskevich committed
407 408 409 410
     ip_theory="NthLength">
     <ip_library name="list"/>
     <ip_qualid name="nth_none_1"/>
    </pr_pos>
411
    <pr_pos name="nth_none_2" id="3649"
Andrei Paskevich's avatar
Andrei Paskevich committed
412 413 414 415
     ip_theory="NthLength">
     <ip_library name="list"/>
     <ip_qualid name="nth_none_2"/>
    </pr_pos>
416
    <pr_pos name="Append_assoc" id="3735"
Andrei Paskevich's avatar
Andrei Paskevich committed
417 418 419 420
     ip_theory="Append">
     <ip_library name="list"/>
     <ip_qualid name="Append_assoc"/>
    </pr_pos>
421
    <pr_pos name="Append_l_nil" id="3742"
Andrei Paskevich's avatar
Andrei Paskevich committed
422 423 424 425
     ip_theory="Append">
     <ip_library name="list"/>
     <ip_qualid name="Append_l_nil"/>
    </pr_pos>
426
    <pr_pos name="Append_length" id="3745"
Andrei Paskevich's avatar
Andrei Paskevich committed
427 428 429 430
     ip_theory="Append">
     <ip_library name="list"/>
     <ip_qualid name="Append_length"/>
    </pr_pos>
431
    <pr_pos name="mem_append" id="3750"
Andrei Paskevich's avatar
Andrei Paskevich committed
432 433 434 435
     ip_theory="Append">
     <ip_library name="list"/>
     <ip_qualid name="mem_append"/>
    </pr_pos>
436
    <pr_pos name="mem_decomp" id="3757"
Andrei Paskevich's avatar
Andrei Paskevich committed
437 438 439 440
     ip_theory="Append">
     <ip_library name="list"/>
     <ip_qualid name="mem_decomp"/>
    </pr_pos>
441
    <pr_pos name="nth_append_1" id="3767"
Andrei Paskevich's avatar
Andrei Paskevich committed
442 443 444 445
     ip_theory="NthLengthAppend">
     <ip_library name="list"/>
     <ip_qualid name="nth_append_1"/>
    </pr_pos>
446
    <pr_pos name="nth_append_2" id="3774"
Andrei Paskevich's avatar
Andrei Paskevich committed
447 448 449 450 451 452 453 454
     ip_theory="NthLengthAppend">
     <ip_library name="list"/>
     <ip_qualid name="nth_append_2"/>
    </pr_pos>
    <meta name="remove_logic">
     <meta_arg_ls id="10"/>
    </meta>
    <meta name="remove_logic">
455
     <meta_arg_ls id="297"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
456 457
    </meta>
    <meta name="remove_logic">
458
     <meta_arg_ls id="298"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
459 460
    </meta>
    <meta name="remove_logic">
461
     <meta_arg_ls id="299"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
462 463
    </meta>
    <meta name="remove_logic">
464
     <meta_arg_ls id="1468"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
465 466
    </meta>
    <meta name="remove_logic">
467
     <meta_arg_ls id="1469"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
468 469
    </meta>
    <meta name="remove_logic">
470
     <meta_arg_ls id="1470"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
471 472
    </meta>
    <meta name="remove_logic">
473
     <meta_arg_ls id="2360"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
474 475
    </meta>
    <meta name="remove_logic">
476
     <meta_arg_ls id="3010"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
477 478
    </meta>
    <meta name="remove_logic">
479
     <meta_arg_ls id="3013"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
480 481
    </meta>
    <meta name="remove_logic">
482
     <meta_arg_ls id="3020"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
483 484
    </meta>
    <meta name="remove_logic">
485
     <meta_arg_ls id="3033"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
486 487
    </meta>
    <meta name="remove_logic">
488
     <meta_arg_ls id="3718"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
489 490
    </meta>
    <meta name="remove_logic">
491
     <meta_arg_ls id="4397"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
492 493
    </meta>
    <meta name="remove_logic">
494
     <meta_arg_ls id="4412"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
495 496
    </meta>
    <meta name="remove_logic">
497
     <meta_arg_ls id="4437"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
498 499
    </meta>
    <meta name="remove_logic">
500
     <meta_arg_ls id="4454"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
501 502
    </meta>
    <meta name="remove_logic">
503
     <meta_arg_ls id="5128"/>
MARCHE Claude's avatar
MARCHE Claude committed
504
    </meta>
MARCHE Claude's avatar
MARCHE Claude committed
505
    <meta name="remove_logic">
506
     <meta_arg_ls id="5137"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
507 508
    </meta>
    <meta name="remove_prop">
509
     <meta_arg_pr id="1471"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
510 511
    </meta>
    <meta name="remove_prop">
512
     <meta_arg_pr id="1478"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
513 514
    </meta>
    <meta name="remove_prop">
515
     <meta_arg_pr id="1481"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
516 517
    </meta>
    <meta name="remove_prop">
518
     <meta_arg_pr id="1484"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
519 520
    </meta>
    <meta name="remove_prop">
521
     <meta_arg_pr id="1487"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
522 523
    </meta>
    <meta name="remove_prop">
524
     <meta_arg_pr id="1490"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
525 526
    </meta>
    <meta name="remove_prop">
527
     <meta_arg_pr id="1495"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
528 529
    </meta>
    <meta name="remove_prop">
530
     <meta_arg_pr id="1502"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
531 532
    </meta>
    <meta name="remove_prop">
533
     <meta_arg_pr id="1509"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
534 535
    </meta>
    <meta name="remove_prop">
536
     <meta_arg_pr id="1527"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
537 538
    </meta>
    <meta name="remove_prop">
539
     <meta_arg_pr id="1532"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
540 541
    </meta>
    <meta name="remove_prop">
542
     <meta_arg_pr id="1535"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
543 544
    </meta>
    <meta name="remove_prop">
545
     <meta_arg_pr id="1547"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
546 547
    </meta>
    <meta name="remove_prop">
548
     <meta_arg_pr id="1550"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
549 550
    </meta>
    <meta name="remove_prop">
551
     <meta_arg_pr id="1557"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
552 553
    </meta>
    <meta name="remove_prop">
554
     <meta_arg_pr id="1562"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
555 556
    </meta>
    <meta name="remove_prop">
557
     <meta_arg_pr id="1567"/>
MARCHE Claude's avatar
MARCHE Claude committed
558 559
    </meta>
    <meta name="remove_prop">
560
     <meta_arg_pr id="1568"/>
MARCHE Claude's avatar
MARCHE Claude committed
561 562
    </meta>
    <meta name="remove_prop">
563
     <meta_arg_pr id="1575"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
564 565
    </meta>
    <meta name="remove_prop">
566
     <meta_arg_pr id="2353"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
567 568
    </meta>
    <meta name="remove_prop">
569
     <meta_arg_pr id="2356"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
570 571
    </meta>
    <meta name="remove_prop">
572
     <meta_arg_pr id="3046"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
573 574
    </meta>
    <meta name="remove_prop">
575
     <meta_arg_pr id="3055"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
576 577
    </meta>
    <meta name="remove_prop">
578
     <meta_arg_pr id="3644"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
579 580
    </meta>
    <meta name="remove_prop">
581
     <meta_arg_pr id="3649"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
582 583
    </meta>
    <meta name="remove_prop">
584
     <meta_arg_pr id="3735"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
585 586
    </meta>
    <meta name="remove_prop">
587
     <meta_arg_pr id="3742"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
588 589
    </meta>
    <meta name="remove_prop">
590
     <meta_arg_pr id="3745"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
591 592
    </meta>
    <meta name="remove_prop">
593
     <meta_arg_pr id="3750"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
594 595
    </meta>
    <meta name="remove_prop">
596
     <meta_arg_pr id="3757"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
597
    </meta>
598
    <meta name="remove_prop">
599
     <meta_arg_pr id="3767"/>
600 601
    </meta>
    <meta name="remove_prop">
602
     <meta_arg_pr id="3774"/>
603
    </meta>
Andrei Paskevich's avatar
Andrei Paskevich committed
604 605 606 607 608 609 610 611 612 613 614 615 616
    <meta name="remove_type">
     <meta_arg_ts id="2"/>
    </meta>
    <meta name="remove_type">
     <meta_arg_ts id="3"/>
    </meta>
    <meta name="remove_type">
     <meta_arg_ts id="20"/>
    </meta>
    <meta name="remove_type">
     <meta_arg_ts id="21"/>
    </meta>
    <meta name="remove_type">
617
     <meta_arg_ts id="68"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
618 619
    </meta>
    <meta name="remove_type">
620
     <meta_arg_ts id="4389"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
621 622
    </meta>
    <meta name="remove_type">
623
     <meta_arg_ts id="5114"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
624
    </meta>
625 626 627
    <goal name="WP_parameter pop.6.7" expl="7. VC for pop">
    <transf name="eliminate_builtin">
     <goal name="WP_parameter pop.6.7.1" expl="1. VC for pop">
Andrei Paskevich's avatar
Andrei Paskevich committed
628
     <proof prover="1" memlimit="1000"><result status="valid" time="0.07"/></proof>
629
     <proof prover="8"><result status="valid" time="0.37"/></proof>
Andrei Paskevich's avatar
Andrei Paskevich committed
630 631 632 633
     </goal>
    </transf>
    </goal>
   </metas>
MARCHE Claude's avatar
MARCHE Claude committed
634 635 636
   </goal>
  </transf>
  </goal>
637
  <goal name="WP_parameter pop.7" expl="7. postcondition">
638
  <proof prover="5" timelimit="30"><result status="valid" time="0.01" steps="17"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed
639
  </goal>
640 641 642
  <goal name="WP_parameter pop.8" expl="8. postcondition">
  <transf name="split_goal_wp">
   <goal name="WP_parameter pop.8.1" expl="1. VC for pop">
643
   <proof prover="5" timelimit="5"><result status="valid" time="0.01" steps="18"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed
644
   </goal>
645
   <goal name="WP_parameter pop.8.2" expl="2. VC for pop">
MARCHE Claude's avatar
MARCHE Claude committed
646
   <proof prover="0" edited="vstte12_ring_buffer_RingBuffer_WP_parameter_pop_2.v"><result status="valid" time="1.28"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed
647
   </goal>
648
   <goal name="WP_parameter pop.8.3" expl="3. VC for pop">
649
   <proof prover="5" timelimit="5"><result status="valid" time="0.02" steps="24"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed
650 651 652 653 654 655
   </goal>
  </transf>
  </goal>
 </transf>
 </goal>
</theory>
656
<theory name="Harness" sum="bcd9612b00cac996449666e6cf21289c" expanded="true">
657 658 659
 <goal name="WP_parameter harness" expl="VC for harness">
 <transf name="split_goal_wp">
  <goal name="WP_parameter harness.1" expl="1. precondition">
660
  <proof prover="5" memlimit="0"><result status="valid" time="0.01" steps="0"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed
661
  </goal>
662
  <goal name="WP_parameter harness.2" expl="2. precondition">
663
  <proof prover="5" memlimit="0"><result status="valid" time="0.01" steps="11"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed
664
  </goal>
665
  <goal name="WP_parameter harness.3" expl="3. precondition">
Andrei Paskevich's avatar
Andrei Paskevich committed
666
  <proof prover="1" timelimit="10"><result status="valid" time="0.02"/></proof>
667
  <proof prover="5" memlimit="0"><result status="valid" time="0.01" steps="17"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed
668
  </goal>
669
  <goal name="WP_parameter harness.4" expl="4. precondition">
670
  <proof prover="5" memlimit="0"><result status="valid" time="0.02" steps="25"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed
671
  </goal>
672
  <goal name="WP_parameter harness.5" expl="5. precondition">
673
  <proof prover="5" timelimit="15" memlimit="0"><result status="valid" time="0.02" steps="27"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed
674
  </goal>
675
  <goal name="WP_parameter harness.6" expl="6. assertion">
676
  <proof prover="5" memlimit="0"><result status="valid" time="0.18" steps="148"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed
677
  </goal>
678
  <goal name="WP_parameter harness.7" expl="7. precondition">
679
  <proof prover="5" memlimit="0"><result status="valid" time="0.03" steps="38"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed
680
  </goal>
681
  <goal name="WP_parameter harness.8" expl="8. assertion">
682
  <proof prover="5" timelimit="13" memlimit="0"><result status="valid" time="0.25" steps="171"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed
683
  </goal>
684
  <goal name="WP_parameter harness.9" expl="9. precondition">
685
  <proof prover="5" memlimit="0"><result status="valid" time="0.04" steps="49"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed
686
  </goal>
687
  <goal name="WP_parameter harness.10" expl="10. assertion">
688
  <proof prover="5" timelimit="14" memlimit="0"><result status="valid" time="0.30" steps="202"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed
689 690 691
  </goal>
 </transf>
 </goal>
692 693 694
 <goal name="WP_parameter harness2" expl="VC for harness2">
 <transf name="split_goal_wp">
  <goal name="WP_parameter harness2.1" expl="1. precondition">
695
  <proof prover="5" memlimit="0"><result status="valid" time="0.00" steps="0"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed
696
  </goal>
697
  <goal name="WP_parameter harness2.2" expl="2. precondition">
698
  <proof prover="5" memlimit="0"><result status="valid" time="0.01" steps="11"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed
699
  </goal>
700
  <goal name="WP_parameter harness2.3" expl="3. assertion">
701
  <proof prover="5" memlimit="0"><result status="valid" time="0.01" steps="17"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed
702
  </goal>
703
  <goal name="WP_parameter harness2.4" expl="4. precondition">
704
  <proof prover="5" memlimit="0"><result status="valid" time="0.01" steps="17"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed
705
  </goal>
706
  <goal name="WP_parameter harness2.5" expl="5. assertion">
707
  <proof prover="5" memlimit="0"><result status="valid" time="0.08" steps="81"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed
708
  </goal>
709
  <goal name="WP_parameter harness2.6" expl="6. precondition">
710
  <proof prover="5" memlimit="0"><result status="valid" time="0.02" steps="25"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed
711
  </goal>
712
  <goal name="WP_parameter harness2.7" expl="7. assertion">
Andrei Paskevich's avatar
Andrei Paskevich committed
713
  <proof prover="1" timelimit="10" memlimit="1000"><result status="valid" time="0.04"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed
714
  </goal>
715
  <goal name="WP_parameter harness2.8" expl="8. precondition">
716
  <proof prover="5" memlimit="0"><result status="valid" time="0.00" steps="30"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed
717
  </goal>
718
  <goal name="WP_parameter harness2.9" expl="9. assertion">
719
  <proof prover="5" memlimit="0"><result status="valid" time="0.04" steps="71"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed
720
  </goal>
721
  <goal name="WP_parameter harness2.10" expl="10. assertion">
Andrei Paskevich's avatar
Andrei Paskevich committed
722
  <proof prover="1" timelimit="10"><result status="valid" time="0.06"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed
723
  </goal>
724
  <goal name="WP_parameter harness2.11" expl="11. precondition">
725
  <proof prover="5" memlimit="0"><result status="valid" time="0.02" steps="42"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed
726
  </goal>
727
  <goal name="WP_parameter harness2.12" expl="12. assertion">
Andrei Paskevich's avatar
Andrei Paskevich committed
728
  <proof prover="1" timelimit="10" memlimit="1000"><result status="valid" time="0.06"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed
729
  </goal>
730
  <goal name="WP_parameter harness2.13" expl="13. precondition">
731
  <proof prover="5" memlimit="0"><result status="valid" time="0.03" steps="49"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed
732
  </goal>
733
  <goal name="WP_parameter harness2.14" expl="14. assertion">
Andrei Paskevich's avatar
Andrei Paskevich committed
734
  <proof prover="1" timelimit="10"><result status="valid" time="0.06"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed
735
  </goal>
736
  <goal name="WP_parameter harness2.15" expl="15. assertion">
737
  <proof prover="5" memlimit="0"><result status="valid" time="0.05" steps="93"/></proof>
MARCHE Claude's avatar
MARCHE Claude committed