why3session.xml 161 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">
3
<why3session shape_version="2">
4
5
6
7
8
9
 <prover
  id="0"
  name="Alt-Ergo"
  version="0.94"/>
 <prover
  id="1"
Andrei Paskevich's avatar
Andrei Paskevich committed
10
  name="Alt-Ergo"
11
  version="0.95.1"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
12
13
 <prover
  id="2"
14
  name="CVC3"
15
  version="2.4.1"/>
16
 <prover
Andrei Paskevich's avatar
Andrei Paskevich committed
17
  id="3"
18
  name="Coq"
19
  version="8.3pl4"/>
20
21
22
 <file
  name="../vstte12_ring_buffer.mlw"
  verified="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
23
  expanded="true">
24
  <theory
Andrei Paskevich's avatar
Andrei Paskevich committed
25
   name="RingBuffer"
26
   locfile="../vstte12_ring_buffer.mlw"
27
   loclnum="10" loccnumb="7" loccnume="17"
28
29
30
31
   verified="true"
   expanded="true">
   <goal
    name="WP_parameter create"
32
    locfile="../vstte12_ring_buffer.mlw"
33
    loclnum="42" loccnumb="6" loccnume="12"
34
    expl="VC for create"
35
    sum="21f670bd24a030ea7ffd014116bb85ec"
36
    proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
37
38
    expanded="false"
    shape="ainfix =V0V0Aainfix =anthV2aNilaSomeagetaconstV1ainfix -ainfix +c0V2V0Iainfix &lt;=c0ainfix -ainfix +c0V2V0Aainfix =anthV2aNilaSomeagetaconstV1ainfix +c0V2Iainfix &lt;ainfix +c0V2V0Iainfix &lt;V2c0Aainfix &lt;=c0V2FAainfix =c0alengthaNilAainfix &lt;=c0V0Aainfix &lt;=c0c0Aainfix &lt;c0V0Aainfix &lt;=c0c0Iainfix &lt;=c0V0Aainfix &gt;=V0c0Iainfix &gt;V0c0F">
39
    <label
40
     name="expl:VC for create"/>
41
42
43
    <proof
     prover="0"
     timelimit="10"
44
     memlimit="0"
45
46
     obsolete="false"
     archived="false">
47
     <result status="valid" time="0.01"/>
48
49
50
51
    </proof>
   </goal>
   <goal
    name="WP_parameter length"
52
    locfile="../vstte12_ring_buffer.mlw"
53
    loclnum="47" loccnumb="6" loccnume="12"
54
    expl="VC for length"
55
    sum="58ca5352b5e2f547a5f7820fcce4c506"
56
    proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
57
58
    expanded="false"
    shape="ainfix =V3V3Iainfix &lt;=c0V0Aainfix =anthV5V1aSomeagetV2ainfix -ainfix +V4V5V0Iainfix &lt;=c0ainfix -ainfix +V4V5V0Aainfix =anthV5V1aSomeagetV2ainfix +V4V5Iainfix &lt;ainfix +V4V5V0Iainfix &lt;V5V3Aainfix &lt;=c0V5FAainfix =V3alengthV1Aainfix &lt;=V3V0Aainfix &lt;=c0V3Aainfix &lt;V4V0Aainfix &lt;=c0V4FF">
59
    <label
60
     name="expl:VC for length"/>
61
62
63
    <proof
     prover="0"
     timelimit="10"
64
     memlimit="0"
65
66
     obsolete="false"
     archived="false">
67
     <result status="valid" time="0.02"/>
68
69
70
71
    </proof>
   </goal>
   <goal
    name="WP_parameter clear"
72
    locfile="../vstte12_ring_buffer.mlw"
73
    loclnum="51" loccnumb="6" loccnume="11"
74
    expl="VC for clear"
75
    sum="6721c3558ed97746fcc2d64d8a878650"
76
    proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
77
78
    expanded="false"
    shape="ainfix =V5aNilAainfix =V6c0Aainfix =anthV7V5aSomeagetV2ainfix -ainfix +V4V7V0Iainfix &lt;=c0ainfix -ainfix +V4V7V0Aainfix =anthV7V5aSomeagetV2ainfix +V4V7Iainfix &lt;ainfix +V4V7V0Iainfix &lt;V7V6Aainfix &lt;=c0V7FAainfix =V6alengthV5Aainfix &lt;=V6V0Aainfix &lt;=c0V6Aainfix &lt;V4V0Aainfix &lt;=c0V4Iainfix =V6c0FIainfix =V5aNilFIainfix &lt;=c0V0Aainfix =anthV8V1aSomeagetV2ainfix -ainfix +V4V8V0Iainfix &lt;=c0ainfix -ainfix +V4V8V0Aainfix =anthV8V1aSomeagetV2ainfix +V4V8Iainfix &lt;ainfix +V4V8V0Iainfix &lt;V8V3Aainfix &lt;=c0V8FAainfix =V3alengthV1Aainfix &lt;=V3V0Aainfix &lt;=c0V3Aainfix &lt;V4V0Aainfix &lt;=c0V4FF">
79
    <label
80
     name="expl:VC for clear"/>
81
82
83
    <proof
     prover="0"
     timelimit="10"
84
     memlimit="0"
85
86
     obsolete="false"
     archived="false">
87
     <result status="valid" time="0.01"/>
88
89
90
91
    </proof>
   </goal>
   <goal
    name="WP_parameter push"
92
    locfile="../vstte12_ring_buffer.mlw"
93
    loclnum="56" loccnumb="6" loccnume="10"
94
    expl="VC for push"
95
    sum="76e025e2ab928a731f60fa7947d32289"
96
    proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
97
98
    expanded="false"
    shape="ainfix =V6ainfix ++V2aConsV1aNilAainfix =V8ainfix +V4c1Aainfix &lt;=c0V0Aainfix =anthV9V6aSomeagetV7ainfix -ainfix +V5V9V0Iainfix &lt;=c0ainfix -ainfix +V5V9V0Aainfix =anthV9V6aSomeagetV7ainfix +V5V9Iainfix &lt;ainfix +V5V9V0Iainfix &lt;V9V8Aainfix &lt;=c0V9FAainfix =V8alengthV6Aainfix &lt;=V8V0Aainfix &lt;=c0V8Aainfix &lt;V5V0Aainfix &lt;=c0V5Iainfix =V8ainfix +V4c1FIainfix =V7asetV3iainfix &gt;=ainfix +V5V4V0ainfix -ainfix +V5V4V0ainfix +V5V4V1Aainfix &lt;=c0V0FAainfix &lt;iainfix &gt;=ainfix +V5V4V0ainfix -ainfix +V5V4V0ainfix +V5V4V0Aainfix &lt;=c0iainfix &gt;=ainfix +V5V4V0ainfix -ainfix +V5V4V0ainfix +V5V4Iainfix =V6ainfix ++V2aConsV1aNilFIainfix &lt;V4V0Aainfix &lt;=c0V0Aainfix =anthV10V2aSomeagetV3ainfix -ainfix +V5V10V0Iainfix &lt;=c0ainfix -ainfix +V5V10V0Aainfix =anthV10V2aSomeagetV3ainfix +V5V10Iainfix &lt;ainfix +V5V10V0Iainfix &lt;V10V4Aainfix &lt;=c0V10FAainfix =V4alengthV2Aainfix &lt;=V4V0Aainfix &lt;=c0V4Aainfix &lt;V5V0Aainfix &lt;=c0V5FF">
99
    <label
100
     name="expl:VC for push"/>
101
102
103
    <transf
     name="split_goal"
     proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
104
     expanded="false">
105
106
     <goal
      name="WP_parameter push.1"
107
      locfile="../vstte12_ring_buffer.mlw"
108
      loclnum="56" loccnumb="6" loccnume="10"
109
      expl="1. precondition"
110
      sum="05cf49680bb50811b58f581ea7aa2291"
111
      proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
112
113
      expanded="false"
      shape="ainfix &lt;iainfix &gt;=ainfix +V5V4V0ainfix -ainfix +V5V4V0ainfix +V5V4V0Aainfix &lt;=c0iainfix &gt;=ainfix +V5V4V0ainfix -ainfix +V5V4V0ainfix +V5V4Iainfix =V6ainfix ++V2aConsV1aNilFIainfix &lt;V4V0Aainfix &lt;=c0V0Aainfix =anthV7V2aSomeagetV3ainfix -ainfix +V5V7V0Iainfix &lt;=c0ainfix -ainfix +V5V7V0Aainfix =anthV7V2aSomeagetV3ainfix +V5V7Iainfix &lt;ainfix +V5V7V0Iainfix &lt;V7V4Aainfix &lt;=c0V7FAainfix =V4alengthV2Aainfix &lt;=V4V0Aainfix &lt;=c0V4Aainfix &lt;V5V0Aainfix &lt;=c0V5FF">
114
      <label
115
       name="expl:VC for push"/>
116
117
118
      <proof
       prover="0"
       timelimit="10"
119
       memlimit="0"
120
121
       obsolete="false"
       archived="false">
122
       <result status="valid" time="0.01"/>
123
124
125
126
      </proof>
     </goal>
     <goal
      name="WP_parameter push.2"
127
      locfile="../vstte12_ring_buffer.mlw"
128
129
      loclnum="56" loccnumb="6" loccnume="10"
      expl="2. type invariant"
130
      sum="08fb6478a72800456c0bb31161679b0a"
131
      proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
132
133
      expanded="false"
      shape="ainfix =anthV9V6aSomeagetV7ainfix -ainfix +V5V9V0Iainfix &lt;=c0ainfix -ainfix +V5V9V0Aainfix =anthV9V6aSomeagetV7ainfix +V5V9Iainfix &lt;ainfix +V5V9V0Iainfix &lt;V9V8Aainfix &lt;=c0V9FAainfix =V8alengthV6Aainfix &lt;=V8V0Aainfix &lt;=c0V8Aainfix &lt;V5V0Aainfix &lt;=c0V5Iainfix =V8ainfix +V4c1FIainfix =V7asetV3iainfix &gt;=ainfix +V5V4V0ainfix -ainfix +V5V4V0ainfix +V5V4V1Aainfix &lt;=c0V0FIainfix &lt;iainfix &gt;=ainfix +V5V4V0ainfix -ainfix +V5V4V0ainfix +V5V4V0Aainfix &lt;=c0iainfix &gt;=ainfix +V5V4V0ainfix -ainfix +V5V4V0ainfix +V5V4Iainfix =V6ainfix ++V2aConsV1aNilFIainfix &lt;V4V0Aainfix &lt;=c0V0Aainfix =anthV10V2aSomeagetV3ainfix -ainfix +V5V10V0Iainfix &lt;=c0ainfix -ainfix +V5V10V0Aainfix =anthV10V2aSomeagetV3ainfix +V5V10Iainfix &lt;ainfix +V5V10V0Iainfix &lt;V10V4Aainfix &lt;=c0V10FAainfix =V4alengthV2Aainfix &lt;=V4V0Aainfix &lt;=c0V4Aainfix &lt;V5V0Aainfix &lt;=c0V5FF">
134
      <label
135
       name="expl:VC for push"/>
136
      <transf
137
       name="inline_goal"
138
       proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
139
       expanded="false">
140
       <goal
141
        name="WP_parameter push.2.1"
142
        locfile="../vstte12_ring_buffer.mlw"
143
144
        loclnum="56" loccnumb="6" loccnume="10"
        expl="1. type invariant"
145
        sum="f9b3e18b77a7c529af5dda8bd515c8a8"
146
        proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
147
148
        expanded="false"
        shape="ainfix =anthV9V6aSomeagetV7ainfix -ainfix +V5V9V0Iainfix =c0ainfix -ainfix +V5V9V0Oainfix &lt;c0ainfix -ainfix +V5V9V0Aainfix =anthV9V6aSomeagetV7ainfix +V5V9Iainfix &lt;ainfix +V5V9V0Iainfix &lt;V9V8Aainfix =c0V9Oainfix &lt;c0V9FAainfix =V8alengthV6Aainfix =V8V0Oainfix &lt;V8V0Aainfix =c0V8Oainfix &lt;c0V8Aainfix &lt;V5V0Aainfix =c0V5Oainfix &lt;c0V5Iainfix =V8ainfix +V4c1FIainfix =V7asetV3iainfix &gt;=ainfix +V5V4V0ainfix -ainfix +V5V4V0ainfix +V5V4V1Aainfix =c0V0Oainfix &lt;c0V0FIainfix &lt;iainfix &gt;=ainfix +V5V4V0ainfix -ainfix +V5V4V0ainfix +V5V4V0Aainfix =c0iainfix &gt;=ainfix +V5V4V0ainfix -ainfix +V5V4V0ainfix +V5V4Oainfix &lt;c0iainfix &gt;=ainfix +V5V4V0ainfix -ainfix +V5V4V0ainfix +V5V4Iainfix =V6ainfix ++V2aConsV1aNilFIainfix &lt;V4V0Aainfix =c0V0Oainfix &lt;c0V0Aainfix =anthV10V2aSomeagetV3ainfix -ainfix +V5V10V0Iainfix =c0ainfix -ainfix +V5V10V0Oainfix &lt;c0ainfix -ainfix +V5V10V0Aainfix =anthV10V2aSomeagetV3ainfix +V5V10Iainfix &lt;ainfix +V5V10V0Iainfix &lt;V10V4Aainfix =c0V10Oainfix &lt;c0V10FAainfix =V4alengthV2Aainfix =V4V0Oainfix &lt;V4V0Aainfix =c0V4Oainfix &lt;c0V4Aainfix &lt;V5V0Aainfix =c0V5Oainfix &lt;c0V5FF">
149
        <label
150
         name="expl:VC for push"/>
151
152
153
        <transf
         name="split_goal"
         proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
154
         expanded="false">
155
156
157
158
159
         <goal
          name="WP_parameter push.2.1.1"
          locfile="../vstte12_ring_buffer.mlw"
          loclnum="56" loccnumb="6" loccnume="10"
          expl="1."
160
          sum="2c1073b5dc64c87e8ed4851f69321c89"
161
          proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
162
163
          expanded="false"
          shape="ainfix =c0V5Oainfix &lt;c0V5Iainfix =V8ainfix +V4c1FIainfix =V7asetV3iainfix &gt;=ainfix +V5V4V0ainfix -ainfix +V5V4V0ainfix +V5V4V1Aainfix =c0V0Oainfix &lt;c0V0FIainfix &lt;iainfix &gt;=ainfix +V5V4V0ainfix -ainfix +V5V4V0ainfix +V5V4V0Aainfix =c0iainfix &gt;=ainfix +V5V4V0ainfix -ainfix +V5V4V0ainfix +V5V4Oainfix &lt;c0iainfix &gt;=ainfix +V5V4V0ainfix -ainfix +V5V4V0ainfix +V5V4Iainfix =V6ainfix ++V2aConsV1aNilFIainfix &lt;V4V0Aainfix =c0V0Oainfix &lt;c0V0Aainfix =anthV9V2aSomeagetV3ainfix -ainfix +V5V9V0Iainfix =c0ainfix -ainfix +V5V9V0Oainfix &lt;c0ainfix -ainfix +V5V9V0Aainfix =anthV9V2aSomeagetV3ainfix +V5V9Iainfix &lt;ainfix +V5V9V0Iainfix &lt;V9V4Aainfix =c0V9Oainfix &lt;c0V9FAainfix =V4alengthV2Aainfix =V4V0Oainfix &lt;V4V0Aainfix =c0V4Oainfix &lt;c0V4Aainfix &lt;V5V0Aainfix =c0V5Oainfix &lt;c0V5FF">
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
          <label
           name="expl:VC for push"/>
          <proof
           prover="0"
           timelimit="5"
           memlimit="1000"
           obsolete="false"
           archived="false">
           <result status="valid" time="0.02"/>
          </proof>
         </goal>
         <goal
          name="WP_parameter push.2.1.2"
          locfile="../vstte12_ring_buffer.mlw"
          loclnum="56" loccnumb="6" loccnume="10"
          expl="2."
180
          sum="cd4291656a7c8d8bc4a503e0ddd4adb7"
181
          proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
182
183
          expanded="false"
          shape="ainfix &lt;V5V0Iainfix =V8ainfix +V4c1FIainfix =V7asetV3iainfix &gt;=ainfix +V5V4V0ainfix -ainfix +V5V4V0ainfix +V5V4V1Aainfix =c0V0Oainfix &lt;c0V0FIainfix &lt;iainfix &gt;=ainfix +V5V4V0ainfix -ainfix +V5V4V0ainfix +V5V4V0Aainfix =c0iainfix &gt;=ainfix +V5V4V0ainfix -ainfix +V5V4V0ainfix +V5V4Oainfix &lt;c0iainfix &gt;=ainfix +V5V4V0ainfix -ainfix +V5V4V0ainfix +V5V4Iainfix =V6ainfix ++V2aConsV1aNilFIainfix &lt;V4V0Aainfix =c0V0Oainfix &lt;c0V0Aainfix =anthV9V2aSomeagetV3ainfix -ainfix +V5V9V0Iainfix =c0ainfix -ainfix +V5V9V0Oainfix &lt;c0ainfix -ainfix +V5V9V0Aainfix =anthV9V2aSomeagetV3ainfix +V5V9Iainfix &lt;ainfix +V5V9V0Iainfix &lt;V9V4Aainfix =c0V9Oainfix &lt;c0V9FAainfix =V4alengthV2Aainfix =V4V0Oainfix &lt;V4V0Aainfix =c0V4Oainfix &lt;c0V4Aainfix &lt;V5V0Aainfix =c0V5Oainfix &lt;c0V5FF">
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
          <label
           name="expl:VC for push"/>
          <proof
           prover="0"
           timelimit="5"
           memlimit="1000"
           obsolete="false"
           archived="false">
           <result status="valid" time="0.02"/>
          </proof>
         </goal>
         <goal
          name="WP_parameter push.2.1.3"
          locfile="../vstte12_ring_buffer.mlw"
          loclnum="56" loccnumb="6" loccnume="10"
          expl="3."
200
          sum="9351f67bc4cb1ce244816be0f6fc791e"
201
          proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
202
203
          expanded="false"
          shape="ainfix =c0V8Oainfix &lt;c0V8Iainfix =V8ainfix +V4c1FIainfix =V7asetV3iainfix &gt;=ainfix +V5V4V0ainfix -ainfix +V5V4V0ainfix +V5V4V1Aainfix =c0V0Oainfix &lt;c0V0FIainfix &lt;iainfix &gt;=ainfix +V5V4V0ainfix -ainfix +V5V4V0ainfix +V5V4V0Aainfix =c0iainfix &gt;=ainfix +V5V4V0ainfix -ainfix +V5V4V0ainfix +V5V4Oainfix &lt;c0iainfix &gt;=ainfix +V5V4V0ainfix -ainfix +V5V4V0ainfix +V5V4Iainfix =V6ainfix ++V2aConsV1aNilFIainfix &lt;V4V0Aainfix =c0V0Oainfix &lt;c0V0Aainfix =anthV9V2aSomeagetV3ainfix -ainfix +V5V9V0Iainfix =c0ainfix -ainfix +V5V9V0Oainfix &lt;c0ainfix -ainfix +V5V9V0Aainfix =anthV9V2aSomeagetV3ainfix +V5V9Iainfix &lt;ainfix +V5V9V0Iainfix &lt;V9V4Aainfix =c0V9Oainfix &lt;c0V9FAainfix =V4alengthV2Aainfix =V4V0Oainfix &lt;V4V0Aainfix =c0V4Oainfix &lt;c0V4Aainfix &lt;V5V0Aainfix =c0V5Oainfix &lt;c0V5FF">
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
          <label
           name="expl:VC for push"/>
          <proof
           prover="0"
           timelimit="5"
           memlimit="1000"
           obsolete="false"
           archived="false">
           <result status="valid" time="0.02"/>
          </proof>
         </goal>
         <goal
          name="WP_parameter push.2.1.4"
          locfile="../vstte12_ring_buffer.mlw"
          loclnum="56" loccnumb="6" loccnume="10"
          expl="4."
220
          sum="00b041b2f8f6c385e8ab67c6892628e4"
221
          proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
222
223
          expanded="false"
          shape="ainfix =V8V0Oainfix &lt;V8V0Iainfix =V8ainfix +V4c1FIainfix =V7asetV3iainfix &gt;=ainfix +V5V4V0ainfix -ainfix +V5V4V0ainfix +V5V4V1Aainfix =c0V0Oainfix &lt;c0V0FIainfix &lt;iainfix &gt;=ainfix +V5V4V0ainfix -ainfix +V5V4V0ainfix +V5V4V0Aainfix =c0iainfix &gt;=ainfix +V5V4V0ainfix -ainfix +V5V4V0ainfix +V5V4Oainfix &lt;c0iainfix &gt;=ainfix +V5V4V0ainfix -ainfix +V5V4V0ainfix +V5V4Iainfix =V6ainfix ++V2aConsV1aNilFIainfix &lt;V4V0Aainfix =c0V0Oainfix &lt;c0V0Aainfix =anthV9V2aSomeagetV3ainfix -ainfix +V5V9V0Iainfix =c0ainfix -ainfix +V5V9V0Oainfix &lt;c0ainfix -ainfix +V5V9V0Aainfix =anthV9V2aSomeagetV3ainfix +V5V9Iainfix &lt;ainfix +V5V9V0Iainfix &lt;V9V4Aainfix =c0V9Oainfix &lt;c0V9FAainfix =V4alengthV2Aainfix =V4V0Oainfix &lt;V4V0Aainfix =c0V4Oainfix &lt;c0V4Aainfix &lt;V5V0Aainfix =c0V5Oainfix &lt;c0V5FF">
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
          <label
           name="expl:VC for push"/>
          <proof
           prover="0"
           timelimit="10"
           memlimit="0"
           obsolete="false"
           archived="false">
           <result status="valid" time="0.01"/>
          </proof>
         </goal>
         <goal
          name="WP_parameter push.2.1.5"
          locfile="../vstte12_ring_buffer.mlw"
          loclnum="56" loccnumb="6" loccnume="10"
          expl="5."
240
          sum="23ba8d0bb0a8558ce97ce5ce370b8d96"
241
          proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
242
243
          expanded="false"
          shape="ainfix =V8alengthV6Iainfix =V8ainfix +V4c1FIainfix =V7asetV3iainfix &gt;=ainfix +V5V4V0ainfix -ainfix +V5V4V0ainfix +V5V4V1Aainfix =c0V0Oainfix &lt;c0V0FIainfix &lt;iainfix &gt;=ainfix +V5V4V0ainfix -ainfix +V5V4V0ainfix +V5V4V0Aainfix =c0iainfix &gt;=ainfix +V5V4V0ainfix -ainfix +V5V4V0ainfix +V5V4Oainfix &lt;c0iainfix &gt;=ainfix +V5V4V0ainfix -ainfix +V5V4V0ainfix +V5V4Iainfix =V6ainfix ++V2aConsV1aNilFIainfix &lt;V4V0Aainfix =c0V0Oainfix &lt;c0V0Aainfix =anthV9V2aSomeagetV3ainfix -ainfix +V5V9V0Iainfix =c0ainfix -ainfix +V5V9V0Oainfix &lt;c0ainfix -ainfix +V5V9V0Aainfix =anthV9V2aSomeagetV3ainfix +V5V9Iainfix &lt;ainfix +V5V9V0Iainfix &lt;V9V4Aainfix =c0V9Oainfix &lt;c0V9FAainfix =V4alengthV2Aainfix =V4V0Oainfix &lt;V4V0Aainfix =c0V4Oainfix &lt;c0V4Aainfix &lt;V5V0Aainfix =c0V5Oainfix &lt;c0V5FF">
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
          <label
           name="expl:VC for push"/>
          <proof
           prover="0"
           timelimit="10"
           memlimit="0"
           obsolete="false"
           archived="false">
           <result status="valid" time="0.03"/>
          </proof>
         </goal>
         <goal
          name="WP_parameter push.2.1.6"
          locfile="../vstte12_ring_buffer.mlw"
          loclnum="56" loccnumb="6" loccnume="10"
          expl="6."
260
          sum="b1fa305ad4bbcfb113169c0f52ce9139"
261
          proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
262
263
          expanded="false"
          shape="ainfix =anthV9V6aSomeagetV7ainfix +V5V9Iainfix &lt;ainfix +V5V9V0Iainfix &lt;V9V8Aainfix =c0V9Oainfix &lt;c0V9FIainfix =V8ainfix +V4c1FIainfix =V7asetV3iainfix &gt;=ainfix +V5V4V0ainfix -ainfix +V5V4V0ainfix +V5V4V1Aainfix =c0V0Oainfix &lt;c0V0FIainfix &lt;iainfix &gt;=ainfix +V5V4V0ainfix -ainfix +V5V4V0ainfix +V5V4V0Aainfix =c0iainfix &gt;=ainfix +V5V4V0ainfix -ainfix +V5V4V0ainfix +V5V4Oainfix &lt;c0iainfix &gt;=ainfix +V5V4V0ainfix -ainfix +V5V4V0ainfix +V5V4Iainfix =V6ainfix ++V2aConsV1aNilFIainfix &lt;V4V0Aainfix =c0V0Oainfix &lt;c0V0Aainfix =anthV10V2aSomeagetV3ainfix -ainfix +V5V10V0Iainfix =c0ainfix -ainfix +V5V10V0Oainfix &lt;c0ainfix -ainfix +V5V10V0Aainfix =anthV10V2aSomeagetV3ainfix +V5V10Iainfix &lt;ainfix +V5V10V0Iainfix &lt;V10V4Aainfix =c0V10Oainfix &lt;c0V10FAainfix =V4alengthV2Aainfix =V4V0Oainfix &lt;V4V0Aainfix =c0V4Oainfix &lt;c0V4Aainfix &lt;V5V0Aainfix =c0V5Oainfix &lt;c0V5FF">
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
          <label
           name="expl:VC for push"/>
          <proof
           prover="0"
           timelimit="5"
           memlimit="1000"
           obsolete="false"
           archived="false">
           <result status="valid" time="0.16"/>
          </proof>
         </goal>
         <goal
          name="WP_parameter push.2.1.7"
          locfile="../vstte12_ring_buffer.mlw"
          loclnum="56" loccnumb="6" loccnume="10"
          expl="7."
280
          sum="322c6931be65d57b2255e8aeaf5922fa"
281
          proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
282
283
          expanded="false"
          shape="ainfix =anthV9V6aSomeagetV7ainfix -ainfix +V5V9V0Iainfix =c0ainfix -ainfix +V5V9V0Oainfix &lt;c0ainfix -ainfix +V5V9V0Iainfix &lt;V9V8Aainfix =c0V9Oainfix &lt;c0V9FIainfix =V8ainfix +V4c1FIainfix =V7asetV3iainfix &gt;=ainfix +V5V4V0ainfix -ainfix +V5V4V0ainfix +V5V4V1Aainfix =c0V0Oainfix &lt;c0V0FIainfix &lt;iainfix &gt;=ainfix +V5V4V0ainfix -ainfix +V5V4V0ainfix +V5V4V0Aainfix =c0iainfix &gt;=ainfix +V5V4V0ainfix -ainfix +V5V4V0ainfix +V5V4Oainfix &lt;c0iainfix &gt;=ainfix +V5V4V0ainfix -ainfix +V5V4V0ainfix +V5V4Iainfix =V6ainfix ++V2aConsV1aNilFIainfix &lt;V4V0Aainfix =c0V0Oainfix &lt;c0V0Aainfix =anthV10V2aSomeagetV3ainfix -ainfix +V5V10V0Iainfix =c0ainfix -ainfix +V5V10V0Oainfix &lt;c0ainfix -ainfix +V5V10V0Aainfix =anthV10V2aSomeagetV3ainfix +V5V10Iainfix &lt;ainfix +V5V10V0Iainfix &lt;V10V4Aainfix =c0V10Oainfix &lt;c0V10FAainfix =V4alengthV2Aainfix =V4V0Oainfix &lt;V4V0Aainfix =c0V4Oainfix &lt;c0V4Aainfix &lt;V5V0Aainfix =c0V5Oainfix &lt;c0V5FF">
284
285
286
287
288
289
290
291
292
293
294
295
          <label
           name="expl:VC for push"/>
          <proof
           prover="0"
           timelimit="10"
           memlimit="1000"
           obsolete="false"
           archived="false">
           <result status="valid" time="0.08"/>
          </proof>
         </goal>
        </transf>
296
297
298
       </goal>
      </transf>
     </goal>
299
300
301
302
     <goal
      name="WP_parameter push.3"
      locfile="../vstte12_ring_buffer.mlw"
      loclnum="56" loccnumb="6" loccnume="10"
Andrei Paskevich's avatar
Andrei Paskevich committed
303
      expl="3. type invariant"
304
      sum="838123c3d07cb801ba1b6ce2050f0684"
305
      proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
      expanded="false"
      shape="ainfix &lt;=c0V0Iainfix =V8ainfix +V4c1FIainfix =V7asetV3iainfix &gt;=ainfix +V5V4V0ainfix -ainfix +V5V4V0ainfix +V5V4V1Aainfix &lt;=c0V0FIainfix &lt;iainfix &gt;=ainfix +V5V4V0ainfix -ainfix +V5V4V0ainfix +V5V4V0Aainfix &lt;=c0iainfix &gt;=ainfix +V5V4V0ainfix -ainfix +V5V4V0ainfix +V5V4Iainfix =V6ainfix ++V2aConsV1aNilFIainfix &lt;V4V0Aainfix &lt;=c0V0Aainfix =anthV9V2aSomeagetV3ainfix -ainfix +V5V9V0Iainfix &lt;=c0ainfix -ainfix +V5V9V0Aainfix =anthV9V2aSomeagetV3ainfix +V5V9Iainfix &lt;ainfix +V5V9V0Iainfix &lt;V9V4Aainfix &lt;=c0V9FAainfix =V4alengthV2Aainfix &lt;=V4V0Aainfix &lt;=c0V4Aainfix &lt;V5V0Aainfix &lt;=c0V5FF">
      <label
       name="expl:VC for push"/>
      <proof
       prover="1"
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
       <result status="valid" time="0.01"/>
      </proof>
     </goal>
     <goal
      name="WP_parameter push.4"
      locfile="../vstte12_ring_buffer.mlw"
      loclnum="56" loccnumb="6" loccnume="10"
      expl="4. postcondition"
324
      sum="93466d11b7c736cb2cad1762a731b6c0"
Andrei Paskevich's avatar
Andrei Paskevich committed
325
326
327
      proved="true"
      expanded="false"
      shape="ainfix =V6ainfix ++V2aConsV1aNilAainfix =V8ainfix +V4c1Iainfix &lt;=c0V0Aainfix =anthV9V6aSomeagetV7ainfix -ainfix +V5V9V0Iainfix &lt;=c0ainfix -ainfix +V5V9V0Aainfix =anthV9V6aSomeagetV7ainfix +V5V9Iainfix &lt;ainfix +V5V9V0Iainfix &lt;V9V8Aainfix &lt;=c0V9FAainfix =V8alengthV6Aainfix &lt;=V8V0Aainfix &lt;=c0V8Aainfix &lt;V5V0Aainfix &lt;=c0V5Iainfix =V8ainfix +V4c1FIainfix =V7asetV3iainfix &gt;=ainfix +V5V4V0ainfix -ainfix +V5V4V0ainfix +V5V4V1Aainfix &lt;=c0V0FIainfix &lt;iainfix &gt;=ainfix +V5V4V0ainfix -ainfix +V5V4V0ainfix +V5V4V0Aainfix &lt;=c0iainfix &gt;=ainfix +V5V4V0ainfix -ainfix +V5V4V0ainfix +V5V4Iainfix =V6ainfix ++V2aConsV1aNilFIainfix &lt;V4V0Aainfix &lt;=c0V0Aainfix =anthV10V2aSomeagetV3ainfix -ainfix +V5V10V0Iainfix &lt;=c0ainfix -ainfix +V5V10V0Aainfix =anthV10V2aSomeagetV3ainfix +V5V10Iainfix &lt;ainfix +V5V10V0Iainfix &lt;V10V4Aainfix &lt;=c0V10FAainfix =V4alengthV2Aainfix &lt;=V4V0Aainfix &lt;=c0V4Aainfix &lt;V5V0Aainfix &lt;=c0V5FF">
328
329
330
331
332
333
334
335
336
337
338
      <label
       name="expl:VC for push"/>
      <proof
       prover="0"
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
       <result status="valid" time="0.01"/>
      </proof>
     </goal>
339
340
341
342
    </transf>
   </goal>
   <goal
    name="WP_parameter head"
343
    locfile="../vstte12_ring_buffer.mlw"
344
    loclnum="66" loccnumb="6" loccnume="10"
345
    expl="VC for head"
346
    sum="0e86e46ed0134818c0434188a4231477"
347
    proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
348
349
    expanded="false"
    shape="CV1aNilfaConsVwainfix =agetV2V4V5Aainfix &lt;V4V0Aainfix &lt;=c0V4Iainfix &gt;V3c0Aainfix &lt;=c0V0Aainfix =anthV6V1aSomeagetV2ainfix -ainfix +V4V6V0Iainfix &lt;=c0ainfix -ainfix +V4V6V0Aainfix =anthV6V1aSomeagetV2ainfix +V4V6Iainfix &lt;ainfix +V4V6V0Iainfix &lt;V6V3Aainfix &lt;=c0V6FAainfix =V3alengthV1Aainfix &lt;=V3V0Aainfix &lt;=c0V3Aainfix &lt;V4V0Aainfix &lt;=c0V4FF">
350
    <label
351
     name="expl:VC for head"/>
352
353
354
    <transf
     name="split_goal"
     proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
355
     expanded="false">
356
357
     <goal
      name="WP_parameter head.1"
358
      locfile="../vstte12_ring_buffer.mlw"
359
      loclnum="66" loccnumb="6" loccnume="10"
360
      expl="1. precondition"
361
      sum="ad146c1a26864a566ae0252a9c3a31dc"
362
      proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
363
364
      expanded="false"
      shape="ainfix &lt;V4V0Aainfix &lt;=c0V4Iainfix &gt;V3c0Aainfix &lt;=c0V0Aainfix =anthV5V1aSomeagetV2ainfix -ainfix +V4V5V0Iainfix &lt;=c0ainfix -ainfix +V4V5V0Aainfix =anthV5V1aSomeagetV2ainfix +V4V5Iainfix &lt;ainfix +V4V5V0Iainfix &lt;V5V3Aainfix &lt;=c0V5FAainfix =V3alengthV1Aainfix &lt;=V3V0Aainfix &lt;=c0V3Aainfix &lt;V4V0Aainfix &lt;=c0V4FF">
365
      <label
366
       name="expl:VC for head"/>
367
368
369
      <proof
       prover="0"
       timelimit="10"
370
       memlimit="0"
371
372
       obsolete="false"
       archived="false">
373
       <result status="valid" time="0.02"/>
374
375
376
377
      </proof>
     </goal>
     <goal
      name="WP_parameter head.2"
378
      locfile="../vstte12_ring_buffer.mlw"
379
      loclnum="66" loccnumb="6" loccnume="10"
380
      expl="2. postcondition"
381
      sum="cfafa40c1b9ee442228a0524536b2198"
382
      proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
383
384
      expanded="false"
      shape="CV1aNilfaConsVwainfix =agetV2V4V5Iainfix &lt;V4V0Aainfix &lt;=c0V4Iainfix &gt;V3c0Aainfix &lt;=c0V0Aainfix =anthV6V1aSomeagetV2ainfix -ainfix +V4V6V0Iainfix &lt;=c0ainfix -ainfix +V4V6V0Aainfix =anthV6V1aSomeagetV2ainfix +V4V6Iainfix &lt;ainfix +V4V6V0Iainfix &lt;V6V3Aainfix &lt;=c0V6FAainfix =V3alengthV1Aainfix &lt;=V3V0Aainfix &lt;=c0V3Aainfix &lt;V4V0Aainfix &lt;=c0V4FF">
385
      <label
386
       name="expl:VC for head"/>
387
      <proof
Andrei Paskevich's avatar
Andrei Paskevich committed
388
       prover="3"
389
390
391
       timelimit="5"
       memlimit="1000"
       edited="vstte12_ring_buffer_2_RingBuffer_WP_parameter_head_1.v"
392
393
       obsolete="false"
       archived="false">
394
       <result status="valid" time="0.66"/>
395
396
397
398
399
400
      </proof>
     </goal>
    </transf>
   </goal>
   <goal
    name="WP_parameter pop"
401
    locfile="../vstte12_ring_buffer.mlw"
402
    loclnum="71" loccnumb="6" loccnume="9"
403
    expl="VC for pop"
404
    sum="d832565a5bba9668ca829e085c347894"
405
406
    proved="true"
    expanded="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
407
    shape="CV1aNilfaConswViainfix =V9V0CV1aNilfaConsVVainfix =V6V12Aainfix =V7V11Aainfix =V8ainfix -V3c1Aainfix =anthV13V6aSomeagetV2ainfix -ainfix +V10V13V0Iainfix &lt;=c0ainfix -ainfix +V10V13V0Aainfix =anthV13V6aSomeagetV2ainfix +V10V13Iainfix &lt;ainfix +V10V13V0Iainfix &lt;V13V8Aainfix &lt;=c0V13FAainfix =V8alengthV6Aainfix &lt;=V8V0Aainfix &lt;=c0V8Aainfix &lt;V10V0Aainfix &lt;=c0V10Iainfix =V10c0FCV1aNilfaConsVVainfix =V6V15Aainfix =V7V14Aainfix =V8ainfix -V3c1Aainfix =anthV16V6aSomeagetV2ainfix -ainfix +V9V16V0Iainfix &lt;=c0ainfix -ainfix +V9V16V0Aainfix =anthV16V6aSomeagetV2ainfix +V9V16Iainfix &lt;ainfix +V9V16V0Iainfix &lt;V16V8Aainfix &lt;=c0V16FAainfix =V8alengthV6Aainfix &lt;=V8V0Aainfix &lt;=c0V8Aainfix &lt;V9V0Aainfix &lt;=c0V9Iainfix =V9ainfix +V4c1FIainfix =V8ainfix -V3c1FLagetV2V4Aainfix &lt;V4V0Aainfix &lt;=c0V4Iainfix =V6V5FIainfix &gt;V3c0Aainfix &lt;=c0V0Aainfix =anthV17V1aSomeagetV2ainfix -ainfix +V4V17V0Iainfix &lt;=c0ainfix -ainfix +V4V17V0Aainfix =anthV17V1aSomeagetV2ainfix +V4V17Iainfix &lt;ainfix +V4V17V0Iainfix &lt;V17V3Aainfix &lt;=c0V17FAainfix =V3alengthV1Aainfix &lt;=V3V0Aainfix &lt;=c0V3Aainfix &lt;V4V0Aainfix &lt;=c0V4FF">
408
    <label
409
     name="expl:VC for pop"/>
410
411
412
413
414
415
    <transf
     name="split_goal"
     proved="true"
     expanded="true">
     <goal
      name="WP_parameter pop.1"
416
      locfile="../vstte12_ring_buffer.mlw"
417
      loclnum="71" loccnumb="6" loccnume="9"
418
      expl="1. unreachable point"
419
      sum="37a8b373e4c343bc19100671d7647a43"
420
      proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
421
422
      expanded="false"
      shape="CV1aNilfaConswVtIainfix &gt;V3c0Aainfix &lt;=c0V0Aainfix =anthV6V1aSomeagetV2ainfix -ainfix +V4V6V0Iainfix &lt;=c0ainfix -ainfix +V4V6V0Aainfix =anthV6V1aSomeagetV2ainfix +V4V6Iainfix &lt;ainfix +V4V6V0Iainfix &lt;V6V3Aainfix &lt;=c0V6FAainfix =V3alengthV1Aainfix &lt;=V3V0Aainfix &lt;=c0V3Aainfix &lt;V4V0Aainfix &lt;=c0V4FF">
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
      <label
       name="expl:VC for pop"/>
      <proof
       prover="0"
       timelimit="10"
       memlimit="0"
       obsolete="false"
       archived="false">
       <result status="valid" time="0.00"/>
      </proof>
     </goal>
     <goal
      name="WP_parameter pop.2"
      locfile="../vstte12_ring_buffer.mlw"
      loclnum="71" loccnumb="6" loccnume="9"
      expl="2. precondition"
439
      sum="6481c32b131c3bc44af893e6e7d70266"
440
      proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
441
442
      expanded="false"
      shape="CV1aNiltaConswVainfix &lt;V4V0Aainfix &lt;=c0V4Iainfix =V6V5FIainfix &gt;V3c0Aainfix &lt;=c0V0Aainfix =anthV7V1aSomeagetV2ainfix -ainfix +V4V7V0Iainfix &lt;=c0ainfix -ainfix +V4V7V0Aainfix =anthV7V1aSomeagetV2ainfix +V4V7Iainfix &lt;ainfix +V4V7V0Iainfix &lt;V7V3Aainfix &lt;=c0V7FAainfix =V3alengthV1Aainfix &lt;=V3V0Aainfix &lt;=c0V3Aainfix &lt;V4V0Aainfix &lt;=c0V4FF">
443
      <label
444
       name="expl:VC for pop"/>
445
446
447
      <proof
       prover="0"
       timelimit="10"
448
       memlimit="0"
449
450
       obsolete="false"
       archived="false">
Andrei Paskevich's avatar
Andrei Paskevich committed
451
       <result status="valid" time="0.02"/>
452
453
454
      </proof>
     </goal>
     <goal
455
456
457
458
      name="WP_parameter pop.3"
      locfile="../vstte12_ring_buffer.mlw"
      loclnum="71" loccnumb="6" loccnume="9"
      expl="3. type invariant"
459
      sum="e1ab5a67d33ed6e8e3241d4fc5843b53"
460
      proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
461
462
      expanded="false"
      shape="CV1aNiltaConswVainfix =anthV11V6aSomeagetV2ainfix -ainfix +V10V11V0Iainfix &lt;=c0ainfix -ainfix +V10V11V0Aainfix =anthV11V6aSomeagetV2ainfix +V10V11Iainfix &lt;ainfix +V10V11V0Iainfix &lt;V11V8Aainfix &lt;=c0V11FAainfix =V8alengthV6Aainfix &lt;=V8V0Aainfix &lt;=c0V8Aainfix &lt;V10V0Aainfix &lt;=c0V10Iainfix =V10c0FIainfix =V9V0Iainfix =V9ainfix +V4c1FIainfix =V8ainfix -V3c1FLagetV2V4Iainfix &lt;V4V0Aainfix &lt;=c0V4Iainfix =V6V5FIainfix &gt;V3c0Aainfix &lt;=c0V0Aainfix =anthV12V1aSomeagetV2ainfix -ainfix +V4V12V0Iainfix &lt;=c0ainfix -ainfix +V4V12V0Aainfix =anthV12V1aSomeagetV2ainfix +V4V12Iainfix &lt;ainfix +V4V12V0Iainfix &lt;V12V3Aainfix &lt;=c0V12FAainfix =V3alengthV1Aainfix &lt;=V3V0Aainfix &lt;=c0V3Aainfix &lt;V4V0Aainfix &lt;=c0V4FF">
463
464
465
466
467
      <label
       name="expl:VC for pop"/>
      <transf
       name="split_goal"
       proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
468
       expanded="false">
469
470
471
472
473
       <goal
        name="WP_parameter pop.3.1"
        locfile="../vstte12_ring_buffer.mlw"
        loclnum="71" loccnumb="6" loccnume="9"
        expl="1."
474
        sum="604dfcd9ce96658ae9554fbdecbc3fb9"
475
        proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
476
477
        expanded="false"
        shape="CV1aNiltaConswVainfix &lt;=c0V10Iainfix =V10c0FIainfix =V9V0Iainfix =V9ainfix +V4c1FIainfix =V8ainfix -V3c1FLagetV2V4Iainfix &lt;V4V0Aainfix &lt;=c0V4Iainfix =V6V5FIainfix &gt;V3c0Aainfix &lt;=c0V0Aainfix =anthV11V1aSomeagetV2ainfix -ainfix +V4V11V0Iainfix &lt;=c0ainfix -ainfix +V4V11V0Aainfix =anthV11V1aSomeagetV2ainfix +V4V11Iainfix &lt;ainfix +V4V11V0Iainfix &lt;V11V3Aainfix &lt;=c0V11FAainfix =V3alengthV1Aainfix &lt;=V3V0Aainfix &lt;=c0V3Aainfix &lt;V4V0Aainfix &lt;=c0V4FF">
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
        <label
         name="expl:VC for pop"/>
        <proof
         prover="0"
         timelimit="10"
         memlimit="0"
         obsolete="false"
         archived="false">
         <result status="valid" time="0.01"/>
        </proof>
       </goal>
       <goal
        name="WP_parameter pop.3.2"
        locfile="../vstte12_ring_buffer.mlw"
        loclnum="71" loccnumb="6" loccnume="9"
        expl="2."
494
        sum="e8279083524be126d80aa3df127de700"
495
        proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
496
497
        expanded="false"
        shape="CV1aNiltaConswVainfix &lt;V10V0Iainfix =V10c0FIainfix =V9V0Iainfix =V9ainfix +V4c1FIainfix =V8ainfix -V3c1FLagetV2V4Iainfix &lt;V4V0Aainfix &lt;=c0V4Iainfix =V6V5FIainfix &gt;V3c0Aainfix &lt;=c0V0Aainfix =anthV11V1aSomeagetV2ainfix -ainfix +V4V11V0Iainfix &lt;=c0ainfix -ainfix +V4V11V0Aainfix =anthV11V1aSomeagetV2ainfix +V4V11Iainfix &lt;ainfix +V4V11V0Iainfix &lt;V11V3Aainfix &lt;=c0V11FAainfix =V3alengthV1Aainfix &lt;=V3V0Aainfix &lt;=c0V3Aainfix &lt;V4V0Aainfix &lt;=c0V4FF">
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
        <label
         name="expl:VC for pop"/>
        <proof
         prover="0"
         timelimit="5"
         memlimit="1000"
         obsolete="false"
         archived="false">
         <result status="valid" time="0.02"/>
        </proof>
       </goal>
       <goal
        name="WP_parameter pop.3.3"
        locfile="../vstte12_ring_buffer.mlw"
        loclnum="71" loccnumb="6" loccnume="9"
        expl="3."
514
        sum="fe7cd2557271fdf8b18a21a303195ee1"
515
        proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
516
517
        expanded="false"
        shape="CV1aNiltaConswVainfix &lt;=c0V8Iainfix =V10c0FIainfix =V9V0Iainfix =V9ainfix +V4c1FIainfix =V8ainfix -V3c1FLagetV2V4Iainfix &lt;V4V0Aainfix &lt;=c0V4Iainfix =V6V5FIainfix &gt;V3c0Aainfix &lt;=c0V0Aainfix =anthV11V1aSomeagetV2ainfix -ainfix +V4V11V0Iainfix &lt;=c0ainfix -ainfix +V4V11V0Aainfix =anthV11V1aSomeagetV2ainfix +V4V11Iainfix &lt;ainfix +V4V11V0Iainfix &lt;V11V3Aainfix &lt;=c0V11FAainfix =V3alengthV1Aainfix &lt;=V3V0Aainfix &lt;=c0V3Aainfix &lt;V4V0Aainfix &lt;=c0V4FF">
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
        <label
         name="expl:VC for pop"/>
        <proof
         prover="0"
         timelimit="10"
         memlimit="0"
         obsolete="false"
         archived="false">
         <result status="valid" time="0.01"/>
        </proof>
       </goal>
       <goal
        name="WP_parameter pop.3.4"
        locfile="../vstte12_ring_buffer.mlw"
        loclnum="71" loccnumb="6" loccnume="9"
        expl="4."
534
        sum="fc567ad35fbb1fb8c69f71237342f109"
535
        proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
536
537
        expanded="false"
        shape="CV1aNiltaConswVainfix &lt;=V8V0Iainfix =V10c0FIainfix =V9V0Iainfix =V9ainfix +V4c1FIainfix =V8ainfix -V3c1FLagetV2V4Iainfix &lt;V4V0Aainfix &lt;=c0V4Iainfix =V6V5FIainfix &gt;V3c0Aainfix &lt;=c0V0Aainfix =anthV11V1aSomeagetV2ainfix -ainfix +V4V11V0Iainfix &lt;=c0ainfix -ainfix +V4V11V0Aainfix =anthV11V1aSomeagetV2ainfix +V4V11Iainfix &lt;ainfix +V4V11V0Iainfix &lt;V11V3Aainfix &lt;=c0V11FAainfix =V3alengthV1Aainfix &lt;=V3V0Aainfix &lt;=c0V3Aainfix &lt;V4V0Aainfix &lt;=c0V4FF">
538
539
540
541
542
543
544
545
546
547
548
        <label
         name="expl:VC for pop"/>
        <proof
         prover="0"
         timelimit="5"
         memlimit="1000"
         obsolete="false"
         archived="false">
         <result status="valid" time="0.02"/>
        </proof>
        <proof
Andrei Paskevich's avatar
Andrei Paskevich committed
549
         prover="2"
550
551
552
553
554
555
556
557
558
559
560
561
         timelimit="5"
         memlimit="1000"
         obsolete="false"
         archived="false">
         <result status="valid" time="0.02"/>
        </proof>
       </goal>
       <goal
        name="WP_parameter pop.3.5"
        locfile="../vstte12_ring_buffer.mlw"
        loclnum="71" loccnumb="6" loccnume="9"
        expl="5."
562
        sum="e98e3e271dd0ef0b051b44b1208682a0"
563
        proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
564
565
        expanded="false"
        shape="CV1aNiltaConswVainfix =V8alengthV6Iainfix =V10c0FIainfix =V9V0Iainfix =V9ainfix +V4c1FIainfix =V8ainfix -V3c1FLagetV2V4Iainfix &lt;V4V0Aainfix &lt;=c0V4Iainfix =V6V5FIainfix &gt;V3c0Aainfix &lt;=c0V0Aainfix =anthV11V1aSomeagetV2ainfix -ainfix +V4V11V0Iainfix &lt;=c0ainfix -ainfix +V4V11V0Aainfix =anthV11V1aSomeagetV2ainfix +V4V11Iainfix &lt;ainfix +V4V11V0Iainfix &lt;V11V3Aainfix &lt;=c0V11FAainfix =V3alengthV1Aainfix &lt;=V3V0Aainfix &lt;=c0V3Aainfix &lt;V4V0Aainfix &lt;=c0V4FF">
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
        <label
         name="expl:VC for pop"/>
        <proof
         prover="0"
         timelimit="10"
         memlimit="0"
         obsolete="false"
         archived="false">
         <result status="valid" time="0.01"/>
        </proof>
       </goal>
       <goal
        name="WP_parameter pop.3.6"
        locfile="../vstte12_ring_buffer.mlw"
        loclnum="71" loccnumb="6" loccnume="9"
        expl="6."
582
        sum="bc5dbb09014720e9648e5dd00f600d45"
583
        proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
584
585
        expanded="false"
        shape="CV1aNiltaConswVainfix =anthV11V6aSomeagetV2ainfix +V10V11Iainfix &lt;ainfix +V10V11V0Iainfix &lt;V11V8Aainfix &lt;=c0V11FIainfix =V10c0FIainfix =V9V0Iainfix =V9ainfix +V4c1FIainfix =V8ainfix -V3c1FLagetV2V4Iainfix &lt;V4V0Aainfix &lt;=c0V4Iainfix =V6V5FIainfix &gt;V3c0Aainfix &lt;=c0V0Aainfix =anthV12V1aSomeagetV2ainfix -ainfix +V4V12V0Iainfix &lt;=c0ainfix -ainfix +V4V12V0Aainfix =anthV12V1aSomeagetV2ainfix +V4V12Iainfix &lt;ainfix +V4V12V0Iainfix &lt;V12V3Aainfix &lt;=c0V12FAainfix =V3alengthV1Aainfix &lt;=V3V0Aainfix &lt;=c0V3Aainfix &lt;V4V0Aainfix &lt;=c0V4FF">
586
587
588
589
590
591
592
593
594
595
596
        <label
         name="expl:VC for pop"/>
        <proof
         prover="0"
         timelimit="5"
         memlimit="1000"
         obsolete="false"
         archived="false">
         <result status="unknown" time="0.07"/>
        </proof>
        <proof
Andrei Paskevich's avatar
Andrei Paskevich committed
597
         prover="2"
598
599
600
601
602
603
604
605
606
607
608
609
         timelimit="5"
         memlimit="1000"
         obsolete="false"
         archived="false">
         <result status="valid" time="0.21"/>
        </proof>
       </goal>
       <goal
        name="WP_parameter pop.3.7"
        locfile="../vstte12_ring_buffer.mlw"
        loclnum="71" loccnumb="6" loccnume="9"
        expl="7."
610
        sum="a1ff6acd92f9c516776bddc8b0f0cebc"
611
        proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
612
613
        expanded="false"
        shape="CV1aNiltaConswVainfix =anthV11V6aSomeagetV2ainfix -ainfix +V10V11V0Iainfix &lt;=c0ainfix -ainfix +V10V11V0Iainfix &lt;V11V8Aainfix &lt;=c0V11FIainfix =V10c0FIainfix =V9V0Iainfix =V9ainfix +V4c1FIainfix =V8ainfix -V3c1FLagetV2V4Iainfix &lt;V4V0Aainfix &lt;=c0V4Iainfix =V6V5FIainfix &gt;V3c0Aainfix &lt;=c0V0Aainfix =anthV12V1aSomeagetV2ainfix -ainfix +V4V12V0Iainfix &lt;=c0ainfix -ainfix +V4V12V0Aainfix =anthV12V1aSomeagetV2ainfix +V4V12Iainfix &lt;ainfix +V4V12V0Iainfix &lt;V12V3Aainfix &lt;=c0V12FAainfix =V3alengthV1Aainfix &lt;=V3V0Aainfix &lt;=c0V3Aainfix &lt;V4V0Aainfix &lt;=c0V4FF">
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
        <label
         name="expl:VC for pop"/>
        <proof
         prover="0"
         timelimit="5"
         memlimit="1000"
         obsolete="false"
         archived="false">
         <result status="valid" time="0.02"/>
        </proof>
       </goal>
      </transf>
     </goal>
     <goal
      name="WP_parameter pop.4"
      locfile="../vstte12_ring_buffer.mlw"
      loclnum="71" loccnumb="6" loccnume="9"
      expl="4. postcondition"
632
      sum="065911d4e45194bc7cccf0535b014b34"
633
      proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
634
635
      expanded="false"
      shape="CV1aNiltaConswVCV1aNilfaConsVVainfix =V6V12Aainfix =V7V11Aainfix =V8ainfix -V3c1Iainfix =anthV13V6aSomeagetV2ainfix -ainfix +V10V13V0Iainfix &lt;=c0ainfix -ainfix +V10V13V0Aainfix =anthV13V6aSomeagetV2ainfix +V10V13Iainfix &lt;ainfix +V10V13V0Iainfix &lt;V13V8Aainfix &lt;=c0V13FAainfix =V8alengthV6Aainfix &lt;=V8V0Aainfix &lt;=c0V8Aainfix &lt;V10V0Aainfix &lt;=c0V10Iainfix =V10c0FIainfix =V9V0Iainfix =V9ainfix +V4c1FIainfix =V8ainfix -V3c1FLagetV2V4Iainfix &lt;V4V0Aainfix &lt;=c0V4Iainfix =V6V5FIainfix &gt;V3c0Aainfix &lt;=c0V0Aainfix =anthV14V1aSomeagetV2ainfix -ainfix +V4V14V0Iainfix &lt;=c0ainfix -ainfix +V4V14V0Aainfix =anthV14V1aSomeagetV2ainfix +V4V14Iainfix &lt;ainfix +V4V14V0Iainfix &lt;V14V3Aainfix &lt;=c0V14FAainfix =V3alengthV1Aainfix &lt;=V3V0Aainfix &lt;=c0V3Aainfix &lt;V4V0Aainfix &lt;=c0V4FF">
636
637
638
639
640
      <label
       name="expl:VC for pop"/>
      <transf
       name="split_goal_wp"
       proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
641
       expanded="false">
642
643
644
645
646
       <goal
        name="WP_parameter pop.4.1"
        locfile="../vstte12_ring_buffer.mlw"
        loclnum="71" loccnumb="6" loccnume="9"
        expl="1."
647
        sum="4963becbd03b9d1a0e9d32f509300ba1"
648
        proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
649
650
        expanded="false"
        shape="CV1aNiltaConswVainfix =V8ainfix -V3c1Iainfix =anthV11V6aSomeagetV2ainfix -ainfix +V10V11V0Iainfix &lt;=c0ainfix -ainfix +V10V11V0Aainfix =anthV11V6aSomeagetV2ainfix +V10V11Iainfix &lt;ainfix +V10V11V0Iainfix &lt;V11V8Aainfix &lt;=c0V11FAainfix =V8alengthV6Aainfix &lt;=V8V0Aainfix &lt;=c0V8Aainfix &lt;V10V0Aainfix &lt;=c0V10Iainfix =V10c0FIainfix =V9V0Iainfix =V9ainfix +V4c1FIainfix =V8ainfix -V3c1FLagetV2V4Iainfix &lt;V4V0Aainfix &lt;=c0V4Iainfix =V6V5FIainfix &gt;V3c0Aainfix &lt;=c0V0Aainfix =anthV12V1aSomeagetV2ainfix -ainfix +V4V12V0Iainfix &lt;=c0ainfix -ainfix +V4V12V0Aainfix =anthV12V1aSomeagetV2ainfix +V4V12Iainfix &lt;ainfix +V4V12V0Iainfix &lt;V12V3Aainfix &lt;=c0V12FAainfix =V3alengthV1Aainfix &lt;=V3V0Aainfix &lt;=c0V3Aainfix &lt;V4V0Aainfix &lt;=c0V4FF">
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
        <label
         name="expl:VC for pop"/>
        <proof
         prover="0"
         timelimit="5"
         memlimit="1000"
         obsolete="false"
         archived="false">
         <result status="valid" time="0.01"/>
        </proof>
       </goal>
       <goal
        name="WP_parameter pop.4.2"
        locfile="../vstte12_ring_buffer.mlw"
        loclnum="71" loccnumb="6" loccnume="9"
        expl="2."
667
        sum="7e1731373e481889a2eb2ced8fadbaa9"
668
        proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
669
670
        expanded="false"
        shape="CV1aNiltaConswVCV1aNilfaConsVVtIainfix =anthV13V6aSomeagetV2ainfix -ainfix +V10V13V0Iainfix &lt;=c0ainfix -ainfix +V10V13V0Aainfix =anthV13V6aSomeagetV2ainfix +V10V13Iainfix &lt;ainfix +V10V13V0Iainfix &lt;V13V8Aainfix &lt;=c0V13FAainfix =V8alengthV6Aainfix &lt;=V8V0Aainfix &lt;=c0V8Aainfix &lt;V10V0Aainfix &lt;=c0V10Iainfix =V10c0FIainfix =V9V0Iainfix =V9ainfix +V4c1FIainfix =V8ainfix -V3c1FLagetV2V4Iainfix &lt;V4V0Aainfix &lt;=c0V4Iainfix =V6V5FIainfix &gt;V3c0Aainfix &lt;=c0V0Aainfix =anthV14V1aSomeagetV2ainfix -ainfix +V4V14V0Iainfix &lt;=c0ainfix -ainfix +V4V14V0Aainfix =anthV14V1aSomeagetV2ainfix +V4V14Iainfix &lt;ainfix +V4V14V0Iainfix &lt;V14V3Aainfix &lt;=c0V14FAainfix =V3alengthV1Aainfix &lt;=V3V0Aainfix &lt;=c0V3Aainfix &lt;V4V0Aainfix &lt;=c0V4FF">
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
        <label
         name="expl:VC for pop"/>
        <proof
         prover="0"
         timelimit="5"
         memlimit="1000"
         obsolete="false"
         archived="false">
         <result status="valid" time="0.01"/>
        </proof>
       </goal>
       <goal
        name="WP_parameter pop.4.3"
        locfile="../vstte12_ring_buffer.mlw"
        loclnum="71" loccnumb="6" loccnume="9"
        expl="3."
687
        sum="3807898cd58462a2a705ede2f445f5fe"
688
        proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
689
690
        expanded="false"
        shape="CV1aNiltaConswVCV1aNiltaConsVVainfix =V7V11Iainfix =anthV13V6aSomeagetV2ainfix -ainfix +V10V13V0Iainfix &lt;=c0ainfix -ainfix +V10V13V0Aainfix =anthV13V6aSomeagetV2ainfix +V10V13Iainfix &lt;ainfix +V10V13V0Iainfix &lt;V13V8Aainfix &lt;=c0V13FAainfix =V8alengthV6Aainfix &lt;=V8V0Aainfix &lt;=c0V8Aainfix &lt;V10V0Aainfix &lt;=c0V10Iainfix =V10c0FIainfix =V9V0Iainfix =V9ainfix +V4c1FIainfix =V8ainfix -V3c1FLagetV2V4Iainfix &lt;V4V0Aainfix &lt;=c0V4Iainfix =V6V5FIainfix &gt;V3c0Aainfix &lt;=c0V0Aainfix =anthV14V1aSomeagetV2ainfix -ainfix +V4V14V0Iainfix &lt;=c0ainfix -ainfix +V4V14V0Aainfix =anthV14V1aSomeagetV2ainfix +V4V14Iainfix &lt;ainfix +V4V14V0Iainfix &lt;V14V3Aainfix &lt;=c0V14FAainfix =V3alengthV1Aainfix &lt;=V3V0Aainfix &lt;=c0V3Aainfix &lt;V4V0Aainfix &lt;=c0V4FF">
691
692
693
        <label
         name="expl:VC for pop"/>
        <proof
Andrei Paskevich's avatar
Andrei Paskevich committed
694
         prover="3"
695
696
697
698
699
         timelimit="5"
         memlimit="1000"
         edited="vstte12_ring_buffer_2_RingBuffer_WP_parameter_pop_4.v"
         obsolete="false"
         archived="false">
Andrei Paskevich's avatar
Andrei Paskevich committed
700
         <result status="valid" time="0.74"/>
701
702
703
704
705
706
707
        </proof>
       </goal>
       <goal
        name="WP_parameter pop.4.4"
        locfile="../vstte12_ring_buffer.mlw"
        loclnum="71" loccnumb="6" loccnume="9"
        expl="4."
708
        sum="1398ed2fe343e6d9a24afed3b15b86d6"
709
        proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
710
711
        expanded="false"
        shape="CV1aNiltaConswVCV1aNiltaConsVVainfix =V6V12Iainfix =anthV13V6aSomeagetV2ainfix -ainfix +V10V13V0Iainfix &lt;=c0ainfix -ainfix +V10V13V0Aainfix =anthV13V6aSomeagetV2ainfix +V10V13Iainfix &lt;ainfix +V10V13V0Iainfix &lt;V13V8Aainfix &lt;=c0V13FAainfix =V8alengthV6Aainfix &lt;=V8V0Aainfix &lt;=c0V8Aainfix &lt;V10V0Aainfix &lt;=c0V10Iainfix =V10c0FIainfix =V9V0Iainfix =V9ainfix +V4c1FIainfix =V8ainfix -V3c1FLagetV2V4Iainfix &lt;V4V0Aainfix &lt;=c0V4Iainfix =V6V5FIainfix &gt;V3c0Aainfix &lt;=c0V0Aainfix =anthV14V1aSomeagetV2ainfix -ainfix +V4V14V0Iainfix &lt;=c0ainfix -ainfix +V4V14V0Aainfix =anthV14V1aSomeagetV2ainfix +V4V14Iainfix &lt;ainfix +V4V14V0Iainfix &lt;V14V3Aainfix &lt;=c0V14FAainfix =V3alengthV1Aainfix &lt;=V3V0Aainfix &lt;=c0V3Aainfix &lt;V4V0Aainfix &lt;=c0V4FF">
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
        <label
         name="expl:VC for pop"/>
        <proof
         prover="0"
         timelimit="5"
         memlimit="1000"
         obsolete="false"
         archived="false">
         <result status="valid" time="0.00"/>
        </proof>
       </goal>
      </transf>
     </goal>
     <goal
      name="WP_parameter pop.5"
727
      locfile="../vstte12_ring_buffer.mlw"
728
729
      loclnum="71" loccnumb="6" loccnume="9"
      expl="5. type invariant"
730
      sum="8dada37548cf25c617132aed1db90936"
731
      proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
732
733
      expanded="false"
      shape="CV1aNiltaConswVainfix =anthV10V6aSomeagetV2ainfix -ainfix +V9V10V0Iainfix &lt;=c0ainfix -ainfix +V9V10V0Aainfix =anthV10V6aSomeagetV2ainfix +V9V10Iainfix &lt;ainfix +V9V10V0Iainfix &lt;V10V8Aainfix &lt;=c0V10FAainfix =V8alengthV6Aainfix &lt;=V8V0Aainfix &lt;=c0V8Aainfix &lt;V9V0Aainfix &lt;=c0V9Iainfix =V9V0NIainfix =V9ainfix +V4c1FIainfix =V8ainfix -V3c1FLagetV2V4Iainfix &lt;V4V0Aainfix &lt;=c0V4Iainfix =V6V5FIainfix &gt;V3c0Aainfix &lt;=c0V0Aainfix =anthV11V1aSomeagetV2ainfix -ainfix +V4V11V0Iainfix &lt;=c0ainfix -ainfix +V4V11V0Aainfix =anthV11V1aSomeagetV2ainfix +V4V11Iainfix &lt;ainfix +V4V11V0Iainfix &lt;V11V3Aainfix &lt;=c0V11FAainfix =V3alengthV1Aainfix &lt;=V3V0Aainfix &lt;=c0V3Aainfix &lt;V4V0Aainfix &lt;=c0V4FF">
734
      <label
735
       name="expl:VC for pop"/>
736
737
738
      <transf
       name="split_goal"
       proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
739
       expanded="false">
740
       <goal
741
        name="WP_parameter pop.5.1"
742
        locfile="../vstte12_ring_buffer.mlw"
743
        loclnum="71" loccnumb="6" loccnume="9"
744
        expl="1."
745
        sum="8e9fb2b030df1ebda46744ca372aaf68"
746
        proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
747
748
        expanded="false"
        shape="CV1aNiltaConswVainfix &lt;=c0V9Iainfix =V9V0NIainfix =V9ainfix +V4c1FIainfix =V8ainfix -V3c1FLagetV2V4Iainfix &lt;V4V0Aainfix &lt;=c0V4Iainfix =V6V5FIainfix &gt;V3c0Aainfix &lt;=c0V0Aainfix =anthV10V1aSomeagetV2ainfix -ainfix +V4V10V0Iainfix &lt;=c0ainfix -ainfix +V4V10V0Aainfix =anthV10V1aSomeagetV2ainfix +V4V10Iainfix &lt;ainfix +V4V10V0Iainfix &lt;V10V3Aainfix &lt;=c0V10FAainfix =V3alengthV1Aainfix &lt;=V3V0Aainfix &lt;=c0V3Aainfix &lt;V4V0Aainfix &lt;=c0V4FF">
749
        <label
750
         name="expl:VC for pop"/>
751
752
753
        <proof
         prover="0"
         timelimit="10"
754
         memlimit="0"
755
756
         obsolete="false"
         archived="false">
757
         <result status="valid" time="0.01"/>
758
759
760
        </proof>
       </goal>
       <goal
761
        name="WP_parameter pop.5.2"
762
        locfile="../vstte12_ring_buffer.mlw"
763
        loclnum="71" loccnumb="6" loccnume="9"
764
        expl="2."
765
        sum="6498a2833fa046e816a15116f75bcd04"
766
        proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
767
768
        expanded="false"
        shape="CV1aNiltaConswVainfix &lt;V9V0Iainfix =V9V0NIainfix =V9ainfix +V4c1FIainfix =V8ainfix -V3c1FLagetV2V4Iainfix &lt;V4V0Aainfix &lt;=c0V4Iainfix =V6V5FIainfix &gt;V3c0Aainfix &lt;=c0V0Aainfix =anthV10V1aSomeagetV2ainfix -ainfix +V4V10V0Iainfix &lt;=c0ainfix -ainfix +V4V10V0Aainfix =anthV10V1aSomeagetV2ainfix +V4V10Iainfix &lt;ainfix +V4V10V0Iainfix &lt;V10V3Aainfix &lt;=c0V10FAainfix =V3alengthV1Aainfix &lt;=V3V0Aainfix &lt;=c0V3Aainfix &lt;V4V0Aainfix &lt;=c0V4FF">
769
        <label
770
         name="expl:VC for pop"/>
771
772
        <proof
         prover="0"
773
774
         timelimit="5"
         memlimit="1000"
775
776
         obsolete="false"
         archived="false">
777
         <result status="valid" time="0.01"/>
778
779
780
        </proof>
       </goal>
       <goal
781
        name="WP_parameter pop.5.3"
782
        locfile="../vstte12_ring_buffer.mlw"
783
        loclnum="71" loccnumb="6" loccnume="9"
784
        expl="3."
785
        sum="402fd8315c180c3f4771ffe409a08a8a"
786
        proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
787
788
        expanded="false"
        shape="CV1aNiltaConswVainfix &lt;=c0V8Iainfix =V9V0NIainfix =V9ainfix +V4c1FIainfix =V8ainfix -V3c1FLagetV2V4Iainfix &lt;V4V0Aainfix &lt;=c0V4Iainfix =V6V5FIainfix &gt;V3c0Aainfix &lt;=c0V0Aainfix =anthV10V1aSomeagetV2ainfix -ainfix +V4V10V0Iainfix &lt;=c0ainfix -ainfix +V4V10V0Aainfix =anthV10V1aSomeagetV2ainfix +V4V10Iainfix &lt;ainfix +V4V10V0Iainfix &lt;V10V3Aainfix &lt;=c0V10FAainfix =V3alengthV1Aainfix &lt;=V3V0Aainfix &lt;=c0V3Aainfix &lt;V4V0Aainfix &lt;=c0V4FF">
789
        <label
790
         name="expl:VC for pop"/>
791
        <proof
792
         prover="0"
793
         timelimit="10"
794
         memlimit="0"
795
796
         obsolete="false"
         archived="false">
797
         <result status="valid" time="0.02"/>
798
799
800
        </proof>
       </goal>
       <goal
801
        name="WP_parameter pop.5.4"
802
        locfile="../vstte12_ring_buffer.mlw"
803
        loclnum="71" loccnumb="6" loccnume="9"
804
        expl="4."
805
        sum="e0e67a1054d4531cfc746a3aef3f4509"
806
        proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
807
808
        expanded="false"
        shape="CV1aNiltaConswVainfix &lt;=V8V0Iainfix =V9V0NIainfix =V9ainfix +V4c1FIainfix =V8ainfix -V3c1FLagetV2V4Iainfix &lt;V4V0Aainfix &lt;=c0V4Iainfix =V6V5FIainfix &gt;V3c0Aainfix &lt;=c0V0Aainfix =anthV10V1aSomeagetV2ainfix -ainfix +V4V10V0Iainfix &lt;=c0ainfix -ainfix +V4V10V0Aainfix =anthV10V1aSomeagetV2ainfix +V4V10Iainfix &lt;ainfix +V4V10V0Iainfix &lt;V10V3Aainfix &lt;=c0V10FAainfix =V3alengthV1Aainfix &lt;=V3V0Aainfix &lt;=c0V3Aainfix &lt;V4V0Aainfix &lt;=c0V4FF">
809
        <label
810
         name="expl:VC for pop"/>
811
812
813
814
815
816
817
818
        <proof
         prover="0"
         timelimit="5"
         memlimit="1000"
         obsolete="false"
         archived="false">
         <result status="valid" time="0.01"/>
        </proof>
819
        <proof
Andrei Paskevich's avatar
Andrei Paskevich committed
820
         prover="2"
821
822
         timelimit="5"
         memlimit="1000"
823
824
         obsolete="false"
         archived="false">
825
         <result status="valid" time="0.02"/>
826
827
828
        </proof>
       </goal>
       <goal
829
        name="WP_parameter pop.5.5"
830
        locfile="../vstte12_ring_buffer.mlw"
831
        loclnum="71" loccnumb="6" loccnume="9"
832
        expl="5."
833
        sum="708d9245c5c62bd8e4a7cad83e3a8611"
834
        proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
835
836
        expanded="false"
        shape="CV1aNiltaConswVainfix =V8alengthV6Iainfix =V9V0NIainfix =V9ainfix +V4c1FIainfix =V8ainfix -V3c1FLagetV2V4Iainfix &lt;V4V0Aainfix &lt;=c0V4Iainfix =V6V5FIainfix &gt;V3c0Aainfix &lt;=c0V0Aainfix =anthV10V1aSomeagetV2ainfix -ainfix +V4V10V0Iainfix &lt;=c0ainfix -ainfix +V4V10V0Aainfix =anthV10V1aSomeagetV2ainfix +V4V10Iainfix &lt;ainfix +V4V10V0Iainfix &lt;V10V3Aainfix &lt;=c0V10FAainfix =V3alengthV1Aainfix &lt;=V3V0Aainfix &lt;=c0V3Aainfix &lt;V4V0Aainfix &lt;=c0V4FF">
837
        <label
838
         name="expl:VC for pop"/>
839
        <proof
840
         prover="0"
841
         timelimit="10"
842
         memlimit="0"
843
844
         obsolete="false"
         archived="false">
845
846
847
848
849
850
851
852
         <result status="valid" time="0.01"/>
        </proof>
       </goal>
       <goal
        name="WP_parameter pop.5.6"
        locfile="../vstte12_ring_buffer.mlw"
        loclnum="71" loccnumb="6" loccnume="9"
        expl="6."
853
        sum="dfb0aefafb0d67de046f5cd063834970"
854
        proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
855
856
        expanded="false"
        shape="CV1aNiltaConswVainfix =anthV10V6aSomeagetV2ainfix +V9V10Iainfix &lt;ainfix +V9V10V0Iainfix &lt;V10V8Aainfix &lt;=c0V10FIainfix =V9V0NIainfix =V9ainfix +V4c1FIainfix =V8ainfix -V3c1FLagetV2V4Iainfix &lt;V4V0Aainfix &lt;=c0V4Iainfix =V6V5FIainfix &gt;V3c0Aainfix &lt;=c0V0Aainfix =anthV11V1aSomeagetV2ainfix -ainfix +V4V11V0Iainfix &lt;=c0ainfix -ainfix +V4V11V0Aainfix =anthV11V1aSomeagetV2ainfix +V4V11Iainfix &lt;ainfix +V4V11V0Iainfix &lt;V11V3Aainfix &lt;=c0V11FAainfix =V3alengthV1Aainfix &lt;=V3V0Aainfix &lt;=c0V3Aainfix &lt;V4V0Aainfix &lt;=c0V4FF">
857
858
859
860
861
862
863
864
865
866
867
        <label
         name="expl:VC for pop"/>
        <proof
         prover="0"
         timelimit="5"
         memlimit="1000"
         obsolete="false"
         archived="false">
         <result status="unknown" time="0.08"/>
        </proof>
        <proof
Andrei Paskevich's avatar
Andrei Paskevich committed
868
         prover="2"
869
870
871
872
         timelimit="5"
         memlimit="1000"
         obsolete="false"
         archived="false">
873
         <result status="valid" time="0.99"/>
874
875
876
877
878
879
880
        </proof>
       </goal>
       <goal
        name="WP_parameter pop.5.7"
        locfile="../vstte12_ring_buffer.mlw"
        loclnum="71" loccnumb="6" loccnume="9"
        expl="7."
881
        sum="cb6cd9fd916fc70241cfcfdb283b954d"
882
        proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
883
884
        expanded="false"
        shape="CV1aNiltaConswVainfix =anthV10V6aSomeagetV2ainfix -ainfix +V9V10V0Iainfix &lt;=c0ainfix -ainfix +V9V10V0Iainfix &lt;V10V8Aainfix &lt;=c0V10FIainfix =V9V0NIainfix =V9ainfix +V4c1FIainfix =V8ainfix -V3c1FLagetV2V4Iainfix &lt;V4V0Aainfix &lt;=c0V4Iainfix =V6V5FIainfix &gt;V3c0Aainfix &lt;=c0V0Aainfix =anthV11V1aSomeagetV2ainfix -ainfix +V4V11V0Iainfix &lt;=c0ainfix -ainfix +V4V11V0Aainfix =anthV11V1aSomeagetV2ainfix +V4V11Iainfix &lt;ainfix +V4V11V0Iainfix &lt;V11V3Aainfix &lt;=c0V11FAainfix =V3alengthV1Aainfix &lt;=V3V0Aainfix &lt;=c0V3Aainfix &lt;V4V0Aainfix &lt;=c0V4FF">
885
886
887
888
889
890
891
892
893
894
895
        <label
         name="expl:VC for pop"/>
        <proof
         prover="0"
         timelimit="5"
         memlimit="1000"
         obsolete="false"
         archived="false">
         <result status="unknown" time="0.06"/>
        </proof>
        <proof
Andrei Paskevich's avatar
Andrei Paskevich committed
896
         prover="2"
897
898
899
900
         timelimit="5"
         memlimit="1000"
         obsolete="false"
         archived="false">
901
         <result status="valid" time="1.44"/>
902
903
904
905
906
        </proof>
       </goal>
      </transf>
     </goal>
     <goal
907
      name="WP_parameter pop.6"
908
      locfile="../vstte12_ring_buffer.mlw"
909
910
      loclnum="71" loccnumb="6" loccnume="9"
      expl="6. postcondition"
911
      sum="d3e40003e3875bccf0f2def7d652fd69"
912
913
      proved="true"
      expanded="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
914
      shape="CV1aNiltaConswVCV1aNilfaConsVVainfix =V6V11Aainfix =V7V10Aainfix =V8ainfix -V3c1Iainfix =anthV12V6aSomeagetV2ainfix -ainfix +V9V12V0Iainfix &lt;=c0ainfix -ainfix +V9V12V0Aainfix =anthV12V6aSomeagetV2ainfix +V9V12Iainfix &lt;ainfix +V9V12V0Iainfix &lt;V12V8Aainfix &lt;=c0V12FAainfix =V8alengthV6Aainfix &lt;=V8V0Aainfix &lt;=c0V8Aainfix &lt;V9V0Aainfix &lt;=c0V9Iainfix =V9V0NIainfix =V9ainfix +V4c1FIainfix =V8ainfix -V3c1FLagetV2V4Iainfix &lt;V4V0Aainfix &lt;=c0V4Iainfix =V6V5FIainfix &gt;V3c0Aainfix &lt;=c0V0Aainfix =anthV13V1aSomeagetV2ainfix -ainfix +V4V13V0Iainfix &lt;=c0ainfix -ainfix +V4V13V0Aainfix =anthV13V1aSomeagetV2ainfix +V4V13Iainfix &lt;ainfix +V4V13V0Iainfix &lt;V13V3Aainfix &lt;=c0V13FAainfix =V3alengthV1Aainfix &lt;=V3V0Aainfix &lt;=c0V3Aainfix &lt;V4V0Aainfix &lt;=c0V4FF">
915
      <label
916
       name="expl:VC for pop"/>
917
      <transf
918
       name="split_goal_wp"
919
920
921
       proved="true"
       expanded="true">
       <goal
922
        name="WP_parameter pop.6.1"
923
        locfile="../vstte12_ring_buffer.mlw"
924
        loclnum="71" loccnumb="6" loccnume="9"
925
        expl="1."
926
        sum="bf508694bf5fbc82221f9fe86cd4e4e0"
927
        proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
928
929
        expanded="false"
        shape="CV1aNiltaConswVainfix =V8ainfix -V3c1Iainfix =anthV10V6aSomeagetV2ainfix -ainfix +V9V10V0Iainfix &lt;=c0ainfix -ainfix +V9V10V0Aainfix =anthV10V6aSomeagetV2ainfix +V9V10Iainfix &lt;ainfix +V9V10V0Iainfix &lt;V10V8Aainfix &lt;=c0V10FAainfix =V8alengthV6Aainfix &lt;=V8V0Aainfix &lt;=c0V8Aainfix &lt;V9V0Aainfix &lt;=c0V9Iainfix =V9V0NIainfix =V9ainfix +V4c1FIainfix =V8ainfix -V3c1FLagetV2V4Iainfix &lt;V4V0Aainfix &lt;=c0V4Iainfix =V6V5FIainfix &gt;V3c0Aainfix &lt;=c0V0Aainfix =anthV11V1aSomeagetV2ainfix -ainfix +V4V11V0Iainfix &lt;=c0ainfix -ainfix +V4V11V0Aainfix =anthV11V1aSomeagetV2ainfix +V4V11Iainfix &lt;ainfix +V4V11V0Iainfix &lt;V11V3Aainfix &lt;=c0V11FAainfix =V3alengthV1Aainfix &lt;=V3V0Aainfix &lt;=c0V3Aainfix &lt;V4V0Aainfix &lt;=c0V4FF">
930
        <label
931
         name="expl:VC for pop"/>
932
933
        <proof
         prover="0"
934
935
         timelimit="5"
         memlimit="1000"
936
937
         obsolete="false"
         archived="false">
938
         <result status="valid" time="0.01"/>
939
940
941
        </proof>
       </goal>
       <goal
942
        name="WP_parameter pop.6.2"
943
        locfile="../vstte12_ring_buffer.mlw"
944
        loclnum="71" loccnumb="6" loccnume="9"
945
        expl="2."
946
        sum="7fc5fb7c4b86641725d37539a788e82b"
947
        proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
948
949
        expanded="false"
        shape="CV1aNiltaConswVCV1aNilfaConsVVtIainfix =anthV12V6aSomeagetV2ainfix -ainfix +V9V12V0Iainfix &lt;=c0ainfix -ainfix +V9V12V0Aainfix =anthV12V6aSomeagetV2ainfix +V9V12Iainfix &lt;ainfix +V9V12V0Iainfix &lt;V12V8Aainfix &lt;=c0V12FAainfix =V8alengthV6Aainfix &lt;=V8V0Aainfix &lt;=c0V8Aainfix &lt;V9V0Aainfix &lt;=c0V9Iainfix =V9V0NIainfix =V9ainfix +V4c1FIainfix =V8ainfix -V3c1FLagetV2V4Iainfix &lt;V4V0Aainfix &lt;=c0V4Iainfix =V6V5FIainfix &gt;V3c0Aainfix &lt;=c0V0Aainfix =anthV13V1aSomeagetV2ainfix -ainfix +V4V13V0Iainfix &lt;=c0ainfix -ainfix +V4V13V0Aainfix =anthV13V1aSomeagetV2ainfix +V4V13Iainfix &lt;ainfix +V4V13V0Iainfix &lt;V13V3Aainfix &lt;=c0V13FAainfix =V3alengthV1Aainfix &lt;=V3V0Aainfix &lt;=c0V3Aainfix &lt;V4V0Aainfix &lt;=c0V4FF">
950
        <label
951
         name="expl:VC for pop"/>
952
953
        <proof
         prover="0"
954
955
         timelimit="5"
         memlimit="1000"
956
957
         obsolete="false"
         archived="false">
958
         <result status="valid" time="0.01"/>
959
960
961
        </proof>
       </goal>
       <goal
962
        name="WP_parameter pop.6.3"
963
        locfile="../vstte12_ring_buffer.mlw"
964
        loclnum="71" loccnumb="6" loccnume="9"
965
        expl="3."
966
        sum="21571a657abfff53fc9c1ae427ccc9c9"
967
        proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
968
969
        expanded="false"
        shape="CV1aNiltaConswVCV1aNiltaConsVVainfix =V7V10Iainfix =anthV12V6aSomeagetV2ainfix -ainfix +V9V12V0Iainfix &lt;=c0ainfix -ainfix +V9V12V0Aainfix =anthV12V6aSomeagetV2ainfix +V9V12Iainfix &lt;ainfix +V9V12V0Iainfix &lt;V12V8Aainfix &lt;=c0V12FAainfix =V8alengthV6Aainfix &lt;=V8V0Aainfix &lt;=c0V8Aainfix &lt;V9V0Aainfix &lt;=c0V9Iainfix =V9V0NIainfix =V9ainfix +V4c1FIainfix =V8ainfix -V3c1FLagetV2V4Iainfix &lt;V4V0Aainfix &lt;=c0V4Iainfix =V6V5FIainfix &gt;V3c0Aainfix &lt;=c0V0Aainfix =anthV13V1aSomeagetV2ainfix -ainfix +V4V13V0Iainfix &lt;=c0ainfix -ainfix +V4V13V0Aainfix =anthV13V1aSomeagetV2ainfix +V4V13Iainfix &lt;ainfix +V4V13V0Iainfix &lt;V13V3Aainfix &lt;=c0V13FAainfix =V3alengthV1Aainfix &lt;=V3V0Aainfix &lt;=c0V3Aainfix &lt;V4V0Aainfix &lt;=c0V4FF">
970
        <label
971
         name="expl:VC for pop"/>
972
        <proof
Andrei Paskevich's avatar
Andrei Paskevich committed
973
         prover="3"
974
975
976
         timelimit="5"
         memlimit="1000"
         edited="vstte12_ring_buffer_2_RingBuffer_WP_parameter_pop_3.v"
977
978
         obsolete="false"
         archived="false">
Andrei Paskevich's avatar
Andrei Paskevich committed
979
         <result status="valid" time="0.71"/>
980
981
982
        </proof>
       </goal>
       <goal
983
        name="WP_parameter pop.6.4"
984
        locfile="../vstte12_ring_buffer.mlw"
985
        loclnum="71" loccnumb="6" loccnume="9"
986
        expl="4."
987
        sum="7de1f397efc1c949b3714fc981739822"
988
        proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
989
990
        expanded="false"
        shape="CV1aNiltaConswVCV1aNiltaConsVVainfix =V6V11Iainfix =anthV12V6aSomeagetV2ainfix -ainfix +V9V12V0Iainfix &lt;=c0ainfix -ainfix +V9V12V0Aainfix =anthV12V6aSomeagetV2ainfix +V9V12Iainfix &lt;ainfix +V9V12V0Iainfix &lt;V12V8Aainfix &lt;=c0V12FAainfix =V8alengthV6Aainfix &lt;=V8V0Aainfix &lt;=c0V8Aainfix &lt;V9V0Aainfix &lt;=c0V9Iainfix =V9V0NIainfix =V9ainfix +V4c1FIainfix =V8ainfix -V3c1FLagetV2V4Iainfix &lt;V4V0Aainfix &lt;=c0V4Iainfix =V6V5FIainfix &gt;V3c0Aainfix &lt;=c0V0Aainfix =anthV13V1aSomeagetV2ainfix -ainfix +V4V13V0Iainfix &lt;=c0ainfix -ainfix +V4V13V0Aainfix =anthV13V1aSomeagetV2ainfix +V4V13Iainfix &lt;ainfix +V4V13V0Iainfix &lt;V13V3Aainfix &lt;=c0V13FAainfix =V3alengthV1Aainfix &lt;=V3V0Aainfix &lt;=c0V3Aainfix &lt;V4V0Aainfix &lt;=c0V4FF">
991
        <label
992
         name="expl:VC for pop"/>
993
        <proof
994
995
996
         prover="0"
         timelimit="5"
         memlimit="1000"
997
998
         obsolete="false"
         archived="false">
999
         <result status="valid" time="0.02"/>
1000
1001
1002
1003
1004
1005
1006
1007
        </proof>
       </goal>
      </transf>
     </goal>
    </transf>
   </goal>
  </theory>
  <theory
Andrei Paskevich's avatar
Andrei Paskevich committed
1008
   name="Harness"