why3session.xml 37.9 KB
Newer Older
1
<?xml version="1.0" encoding="UTF-8"?>
MARCHE Claude's avatar
MARCHE Claude committed
2
<!DOCTYPE why3session PUBLIC "-//Why3//proof session v2//EN" "http://why3.lri.fr/why3session.dtd">
Andrei Paskevich's avatar
Andrei Paskevich committed
3
<why3session shape_version="4">
4
 <prover
Andrei Paskevich's avatar
Andrei Paskevich committed
5
  id="0"
6
  name="Alt-Ergo"
Andrei Paskevich's avatar
Andrei Paskevich committed
7
  version="0.95.2"/>
8 9
 <file
  name="../flag.mlw"
10
  verified="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
11
  expanded="true">
12
  <theory
Andrei Paskevich's avatar
Andrei Paskevich committed
13
   name="Flag"
14
   locfile="../flag.mlw"
Andrei Paskevich's avatar
Andrei Paskevich committed
15
   loclnum="3" loccnumb="7" loccnume="11"
16
   verified="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
17
   expanded="true">
18 19
   <goal
    name="WP_parameter dutch_flag"
20
    locfile="../flag.mlw"
21
    loclnum="26" loccnumb="6" loccnume="16"
22
    expl="VC for dutch_flag"
MARCHE Claude's avatar
MARCHE Claude committed
23
    sum="f2f25b38560ca870594369a863614794"
24
    proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
25
    expanded="true"
26
    shape="iapermut_allV2V7AamonochromeV7V9V0aRedAamonochromeV7V8V9aWhiteAamonochromeV7c0V8aBlueEAainfix &lt;=c0V0Cainfix &lt;ainfix -V3V13ainfix -V3V4Aainfix &lt;=c0ainfix -V3V4Aapermut_allV2V11AamonochromeV11V3V0aRedAamonochromeV11V12V13aWhiteAamonochromeV11c0V12aBlueAainfix &lt;=V3V0Aainfix &lt;=V13V3Aainfix &lt;=V12V13Aainfix &lt;=c0V12Iainfix =V13ainfix +V4c1FIainfix =V12ainfix +V5c1FIaexchangeV7V11V5V4Aainfix &lt;=c0V0Lamk arrayV0V10FAainfix &lt;V4V0Aainfix &lt;=c0V4Aainfix &lt;V5V0Aainfix &lt;=c0V5aBlueainfix &lt;ainfix -V3V14ainfix -V3V4Aainfix &lt;=c0ainfix -V3V4Aapermut_allV2V7AamonochromeV7V3V0aRedAamonochromeV7V5V14aWhiteAamonochromeV7c0V5aBlueAainfix &lt;=V3V0Aainfix &lt;=V14V3Aainfix &lt;=V5V14Aainfix &lt;=c0V5Iainfix =V14ainfix +V4c1FaWhiteainfix &lt;ainfix -V15V4ainfix -V3V4Aainfix &lt;=c0ainfix -V3V4Aapermut_allV2V17AamonochromeV17V15V0aRedAamonochromeV17V5V4aWhiteAamonochromeV17c0V5aBlueAainfix &lt;=V15V0Aainfix &lt;=V4V15Aainfix &lt;=V5V4Aainfix &lt;=c0V5IaexchangeV7V17V15V4Aainfix &lt;=c0V0Lamk arrayV0V16FAainfix &lt;V4V0Aainfix &lt;=c0V4Aainfix &lt;V15V0Aainfix &lt;=c0V15Iainfix =V15ainfix -V3c1FaRedagetV6V4Aainfix &lt;V4V0Aainfix &lt;=c0V4Aainfix &lt;=c0V0ainfix &lt;V4V3Iapermut_allV2V7AamonochromeV7V3V0aRedAamonochromeV7V5V4aWhiteAamonochromeV7c0V5aBlueAainfix &lt;=V3V0Aainfix &lt;=V4V3Aainfix &lt;=V5V4Aainfix &lt;=c0V5Lamk arrayV0V6FAapermut_allV2V2AamonochromeV2V0V0aRedAamonochromeV2c0c0aWhiteAamonochromeV2c0c0aBlueAainfix &lt;=V0V0Aainfix &lt;=c0V0Aainfix &lt;=c0c0Aainfix &lt;=c0c0Iainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
27
    <label
28
     name="expl:VC for dutch_flag"/>
29 30
    <transf
     name="split_goal"
31
     proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
32
     expanded="true">
33 34
     <goal
      name="WP_parameter dutch_flag.1"
35
      locfile="../flag.mlw"
36
      loclnum="26" loccnumb="6" loccnume="16"
37
      expl="1. loop invariant init"
MARCHE Claude's avatar
MARCHE Claude committed
38
      sum="b8c0900836779146beffa188164a32c0"
39
      proved="true"
40
      expanded="false"
Andrei Paskevich's avatar
Andrei Paskevich committed
41
      shape="loop invariant initainfix &lt;=V0V0Aainfix &lt;=c0V0Aainfix &lt;=c0c0Aainfix &lt;=c0c0Iainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
42
      <label
43
       name="expl:VC for dutch_flag"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
44 45 46 47 48 49 50 51
      <proof
       prover="0"
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
       <result status="valid" time="0.00"/>
      </proof>
52
     </goal>
53 54
     <goal
      name="WP_parameter dutch_flag.2"
55
      locfile="../flag.mlw"
56
      loclnum="26" loccnumb="6" loccnume="16"
57
      expl="2. loop invariant init"
MARCHE Claude's avatar
MARCHE Claude committed
58
      sum="b0cf4d4d3984ff20a8656fdd00376fbb"
Andrei Paskevich's avatar
Andrei Paskevich committed
59
      proved="true"
60
      expanded="false"
61
      shape="loop invariant initamonochromeV2c0c0aBlueIainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
62
      <label
63
       name="expl:VC for dutch_flag"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
64 65 66 67 68 69 70 71 72 73 74
      <proof
       prover="0"
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
       <result status="valid" time="0.00"/>
      </proof>
     </goal>
     <goal
      name="WP_parameter dutch_flag.3"
75
      locfile="../flag.mlw"
76
      loclnum="26" loccnumb="6" loccnume="16"
77
      expl="3. loop invariant init"
MARCHE Claude's avatar
MARCHE Claude committed
78
      sum="70ba4a23c94a11d543ffbabaecd24ac8"
Andrei Paskevich's avatar
Andrei Paskevich committed
79
      proved="true"
80
      expanded="false"
81
      shape="loop invariant initamonochromeV2c0c0aWhiteIainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
82
      <label
83
       name="expl:VC for dutch_flag"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
84 85 86 87 88 89 90 91 92 93 94
      <proof
       prover="0"
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
       <result status="valid" time="0.01"/>
      </proof>
     </goal>
     <goal
      name="WP_parameter dutch_flag.4"
95
      locfile="../flag.mlw"
96
      loclnum="26" loccnumb="6" loccnume="16"
97
      expl="4. loop invariant init"
MARCHE Claude's avatar
MARCHE Claude committed
98
      sum="07a254d8c097c4a91116176acf0cdfb6"
Andrei Paskevich's avatar
Andrei Paskevich committed
99
      proved="true"
100
      expanded="false"
101
      shape="loop invariant initamonochromeV2V0V0aRedIainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
102
      <label
103
       name="expl:VC for dutch_flag"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
104 105 106 107 108 109 110 111 112 113 114
      <proof
       prover="0"
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
       <result status="valid" time="0.01"/>
      </proof>
     </goal>
     <goal
      name="WP_parameter dutch_flag.5"
115
      locfile="../flag.mlw"
116
      loclnum="26" loccnumb="6" loccnume="16"
117
      expl="5. loop invariant init"
MARCHE Claude's avatar
MARCHE Claude committed
118
      sum="d79dfdf8c5fe55c8d33c66f6a2699729"
Andrei Paskevich's avatar
Andrei Paskevich committed
119
      proved="true"
120
      expanded="false"
121
      shape="loop invariant initapermut_allV2V2Iainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
122
      <label
123
       name="expl:VC for dutch_flag"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
124 125 126 127 128 129 130 131 132 133 134
      <proof
       prover="0"
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
       <result status="valid" time="0.01"/>
      </proof>
     </goal>
     <goal
      name="WP_parameter dutch_flag.6"
135
      locfile="../flag.mlw"
136
      loclnum="26" loccnumb="6" loccnume="16"
Andrei Paskevich's avatar
Andrei Paskevich committed
137
      expl="6. type invariant"
MARCHE Claude's avatar
MARCHE Claude committed
138
      sum="24abd164f92037501f0daa221c9ef085"
Andrei Paskevich's avatar
Andrei Paskevich committed
139
      proved="true"
Andrei Paskevich's avatar
Andrei Paskevich committed
140
      expanded="false"
141
      shape="type invariantainfix &lt;=c0V0Iainfix &lt;V4V3Iapermut_allV2V7AamonochromeV7V3V0aRedAamonochromeV7V5V4aWhiteAamonochromeV7c0V5aBlueAainfix &lt;=V3V0Aainfix &lt;=V4V3Aainfix &lt;=V5V4Aainfix &lt;=c0V5Lamk arrayV0V6FIainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
142
      <label
143
       name="expl:VC for dutch_flag"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
144
      <proof
145
       prover="0"
Andrei Paskevich's avatar
Andrei Paskevich committed
146 147 148 149
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
Andrei Paskevich's avatar
Andrei Paskevich committed
150
       <result status="valid" time="0.02"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
151 152 153 154
      </proof>
     </goal>
     <goal
      name="WP_parameter dutch_flag.7"
155
      locfile="../flag.mlw"
156
      loclnum="26" loccnumb="6" loccnume="16"
157
      expl="7. index in array bounds"
MARCHE Claude's avatar
MARCHE Claude committed
158
      sum="19db785b536b32f3f209686c140bf905"
159
      proved="true"
160
      expanded="false"
161
      shape="index in array boundsainfix &lt;V4V0Aainfix &lt;=c0V4Iainfix &lt;=c0V0Iainfix &lt;V4V3Iapermut_allV2V7AamonochromeV7V3V0aRedAamonochromeV7V5V4aWhiteAamonochromeV7c0V5aBlueAainfix &lt;=V3V0Aainfix &lt;=V4V3Aainfix &lt;=V5V4Aainfix &lt;=c0V5Lamk arrayV0V6FIainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
162
      <label
163
       name="expl:VC for dutch_flag"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
164 165 166 167 168 169 170 171
      <proof
       prover="0"
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
       <result status="valid" time="0.01"/>
      </proof>
172
     </goal>
173
     <goal
Andrei Paskevich's avatar
Andrei Paskevich committed
174
      name="WP_parameter dutch_flag.8"
175
      locfile="../flag.mlw"
176
      loclnum="26" loccnumb="6" loccnume="16"
Andrei Paskevich's avatar
Andrei Paskevich committed
177
      expl="8. precondition"
MARCHE Claude's avatar
MARCHE Claude committed
178
      sum="6f2d4d16b17635c9ccd6644e43df197c"
179
      proved="true"
180
      expanded="false"
181
      shape="preconditionCainfix &lt;V4V0Aainfix &lt;=c0V4Aainfix &lt;V5V0Aainfix &lt;=c0V5aBluetaWhitetaRedagetV6V4Iainfix &lt;V4V0Aainfix &lt;=c0V4Aainfix &lt;=c0V0Iainfix &lt;V4V3Iapermut_allV2V7AamonochromeV7V3V0aRedAamonochromeV7V5V4aWhiteAamonochromeV7c0V5aBlueAainfix &lt;=V3V0Aainfix &lt;=V4V3Aainfix &lt;=V5V4Aainfix &lt;=c0V5Lamk arrayV0V6FIainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
182
      <label
183
       name="expl:VC for dutch_flag"/>
184
      <proof
Andrei Paskevich's avatar
Andrei Paskevich committed
185 186
       prover="0"
       timelimit="5"
187
       memlimit="1000"
188
       obsolete="false"
Andrei Paskevich's avatar
Andrei Paskevich committed
189
       archived="false">
Andrei Paskevich's avatar
Andrei Paskevich committed
190
       <result status="valid" time="0.01"/>
191
      </proof>
192
     </goal>
193
     <goal
Andrei Paskevich's avatar
Andrei Paskevich committed
194
      name="WP_parameter dutch_flag.9"
195
      locfile="../flag.mlw"
196
      loclnum="26" loccnumb="6" loccnume="16"
197
      expl="9. loop invariant preservation"
MARCHE Claude's avatar
MARCHE Claude committed
198
      sum="6e2ee7868095c7e03dce1ebc341a4f10"
199
      proved="true"
200
      expanded="false"
201
      shape="loop invariant preservationCainfix &lt;=V3V0Aainfix &lt;=V11V3Aainfix &lt;=V10V11Aainfix &lt;=c0V10Iainfix =V11ainfix +V4c1FIainfix =V10ainfix +V5c1FIaexchangeV7V9V5V4Aainfix &lt;=c0V0Lamk arrayV0V8FIainfix &lt;V4V0Aainfix &lt;=c0V4Aainfix &lt;V5V0Aainfix &lt;=c0V5aBluetaWhitetaRedagetV6V4Iainfix &lt;V4V0Aainfix &lt;=c0V4Aainfix &lt;=c0V0Iainfix &lt;V4V3Iapermut_allV2V7AamonochromeV7V3V0aRedAamonochromeV7V5V4aWhiteAamonochromeV7c0V5aBlueAainfix &lt;=V3V0Aainfix &lt;=V4V3Aainfix &lt;=V5V4Aainfix &lt;=c0V5Lamk arrayV0V6FIainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
202
      <label
203
       name="expl:VC for dutch_flag"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
204
      <proof
Andrei Paskevich's avatar
Andrei Paskevich committed
205 206
       prover="0"
       timelimit="5"
Andrei Paskevich's avatar
Andrei Paskevich committed
207 208 209
       memlimit="1000"
       obsolete="false"
       archived="false">
Andrei Paskevich's avatar
Andrei Paskevich committed
210
       <result status="valid" time="0.01"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
211
      </proof>
212
     </goal>
213
     <goal
Andrei Paskevich's avatar
Andrei Paskevich committed
214
      name="WP_parameter dutch_flag.10"
215
      locfile="../flag.mlw"
216
      loclnum="26" loccnumb="6" loccnume="16"
217
      expl="10. loop invariant preservation"
MARCHE Claude's avatar
MARCHE Claude committed
218
      sum="c943ce801943803d4fa71b5f93fe5aca"
Andrei Paskevich's avatar
Andrei Paskevich committed
219
      proved="true"
220
      expanded="false"
221
      shape="loop invariant preservationCamonochromeV9c0V10aBlueIainfix =V11ainfix +V4c1FIainfix =V10ainfix +V5c1FIaexchangeV7V9V5V4Aainfix &lt;=c0V0Lamk arrayV0V8FIainfix &lt;V4V0Aainfix &lt;=c0V4Aainfix &lt;V5V0Aainfix &lt;=c0V5aBluetaWhitetaRedagetV6V4Iainfix &lt;V4V0Aainfix &lt;=c0V4Aainfix &lt;=c0V0Iainfix &lt;V4V3Iapermut_allV2V7AamonochromeV7V3V0aRedAamonochromeV7V5V4aWhiteAamonochromeV7c0V5aBlueAainfix &lt;=V3V0Aainfix &lt;=V4V3Aainfix &lt;=V5V4Aainfix &lt;=c0V5Lamk arrayV0V6FIainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
222
      <label
223
       name="expl:VC for dutch_flag"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
224 225 226 227 228 229 230 231 232
      <transf
       name="inline_all"
       proved="true"
       expanded="false">
       <goal
        name="WP_parameter dutch_flag.10.1"
        locfile="../flag.mlw"
        loclnum="26" loccnumb="6" loccnume="16"
        expl="1. loop invariant preservation"
MARCHE Claude's avatar
MARCHE Claude committed
233
        sum="84263bc3feb07ea3985a83a4a4c9ae5f"
Andrei Paskevich's avatar
Andrei Paskevich committed
234 235 236 237 238 239 240 241 242 243 244 245 246 247 248
        proved="true"
        expanded="false"
        shape="loop invariant preservationCainfix =agetaeltsV9V12aBlueIainfix &lt;V12V10Aainfix =c0V12Oainfix &lt;c0V12FIainfix =V11ainfix +V4c1FIainfix =V10ainfix +V5c1FIainfix =agetaeltsV7V13agetaeltsV9V13INainfix =V13V4INainfix =V13V5Iainfix &lt;V13alengthV7Aainfix =c0V13Oainfix &lt;c0V13FAainfix =agetaeltsV7V4agetaeltsV9V5Aainfix =agetaeltsV7V5agetaeltsV9V4Aainfix &lt;V4alengthV7Aainfix =c0V4Oainfix &lt;c0V4Aainfix &lt;V5alengthV7Aainfix =c0V5Oainfix &lt;c0V5Aainfix =alengthV7alengthV9Aainfix =c0V0Oainfix &lt;c0V0Lamk arrayV0V8FIainfix &lt;V4V0Aainfix =c0V4Oainfix &lt;c0V4Aainfix &lt;V5V0Aainfix =c0V5Oainfix &lt;c0V5aBluetaWhitetaRedagetV6V4Iainfix &lt;V4V0Aainfix =c0V4Oainfix &lt;c0V4Aainfix =c0V0Oainfix &lt;c0V0Iainfix &lt;V4V3IapermutaeltsV2aeltsV7c0alengthV2Aainfix =alengthV2alengthV7Aainfix =agetaeltsV7V14aRedIainfix &lt;V14V0Aainfix =V3V14Oainfix &lt;V3V14FAainfix =agetaeltsV7V15aWhiteIainfix &lt;V15V4Aainfix =V5V15Oainfix &lt;V5V15FAainfix =agetaeltsV7V16aBlueIainfix &lt;V16V5Aainfix =c0V16Oainfix &lt;c0V16FAainfix =V3V0Oainfix &lt;V3V0Aainfix =V4V3Oainfix &lt;V4V3Aainfix =V5V4Oainfix &lt;V5V4Aainfix =c0V5Oainfix &lt;c0V5Lamk arrayV0V6FIainfix =c0V0Oainfix &lt;c0V0Lamk arrayV0V1F">
        <label
         name="expl:VC for dutch_flag"/>
        <proof
         prover="0"
         timelimit="5"
         memlimit="1000"
         obsolete="false"
         archived="false">
         <result status="valid" time="0.22"/>
        </proof>
       </goal>
      </transf>
Andrei Paskevich's avatar
Andrei Paskevich committed
249 250 251
     </goal>
     <goal
      name="WP_parameter dutch_flag.11"
252
      locfile="../flag.mlw"
253
      loclnum="26" loccnumb="6" loccnume="16"
254
      expl="11. loop invariant preservation"
MARCHE Claude's avatar
MARCHE Claude committed
255
      sum="c349f788505036104ff9012731cdd284"
Andrei Paskevich's avatar
Andrei Paskevich committed
256
      proved="true"
257
      expanded="false"
258
      shape="loop invariant preservationCamonochromeV9V10V11aWhiteIainfix =V11ainfix +V4c1FIainfix =V10ainfix +V5c1FIaexchangeV7V9V5V4Aainfix &lt;=c0V0Lamk arrayV0V8FIainfix &lt;V4V0Aainfix &lt;=c0V4Aainfix &lt;V5V0Aainfix &lt;=c0V5aBluetaWhitetaRedagetV6V4Iainfix &lt;V4V0Aainfix &lt;=c0V4Aainfix &lt;=c0V0Iainfix &lt;V4V3Iapermut_allV2V7AamonochromeV7V3V0aRedAamonochromeV7V5V4aWhiteAamonochromeV7c0V5aBlueAainfix &lt;=V3V0Aainfix &lt;=V4V3Aainfix &lt;=V5V4Aainfix &lt;=c0V5Lamk arrayV0V6FIainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
259
      <label
260
       name="expl:VC for dutch_flag"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
261 262 263 264 265 266 267 268 269
      <transf
       name="inline_all"
       proved="true"
       expanded="false">
       <goal
        name="WP_parameter dutch_flag.11.1"
        locfile="../flag.mlw"
        loclnum="26" loccnumb="6" loccnume="16"
        expl="1. loop invariant preservation"
MARCHE Claude's avatar
MARCHE Claude committed
270
        sum="6584096f9b51a034ac74cc534a8dbbec"
Andrei Paskevich's avatar
Andrei Paskevich committed
271 272 273 274 275 276 277 278 279 280 281
        proved="true"
        expanded="false"
        shape="loop invariant preservationCainfix =agetaeltsV9V12aWhiteIainfix &lt;V12V11Aainfix =V10V12Oainfix &lt;V10V12FIainfix =V11ainfix +V4c1FIainfix =V10ainfix +V5c1FIainfix =agetaeltsV7V13agetaeltsV9V13INainfix =V13V4INainfix =V13V5Iainfix &lt;V13alengthV7Aainfix =c0V13Oainfix &lt;c0V13FAainfix =agetaeltsV7V4agetaeltsV9V5Aainfix =agetaeltsV7V5agetaeltsV9V4Aainfix &lt;V4alengthV7Aainfix =c0V4Oainfix &lt;c0V4Aainfix &lt;V5alengthV7Aainfix =c0V5Oainfix &lt;c0V5Aainfix =alengthV7alengthV9Aainfix =c0V0Oainfix &lt;c0V0Lamk arrayV0V8FIainfix &lt;V4V0Aainfix =c0V4Oainfix &lt;c0V4Aainfix &lt;V5V0Aainfix =c0V5Oainfix &lt;c0V5aBluetaWhitetaRedagetV6V4Iainfix &lt;V4V0Aainfix =c0V4Oainfix &lt;c0V4Aainfix =c0V0Oainfix &lt;c0V0Iainfix &lt;V4V3IapermutaeltsV2aeltsV7c0alengthV2Aainfix =alengthV2alengthV7Aainfix =agetaeltsV7V14aRedIainfix &lt;V14V0Aainfix =V3V14Oainfix &lt;V3V14FAainfix =agetaeltsV7V15aWhiteIainfix &lt;V15V4Aainfix =V5V15Oainfix &lt;V5V15FAainfix =agetaeltsV7V16aBlueIainfix &lt;V16V5Aainfix =c0V16Oainfix &lt;c0V16FAainfix =V3V0Oainfix &lt;V3V0Aainfix =V4V3Oainfix &lt;V4V3Aainfix =V5V4Oainfix &lt;V5V4Aainfix =c0V5Oainfix &lt;c0V5Lamk arrayV0V6FIainfix =c0V0Oainfix &lt;c0V0Lamk arrayV0V1F">
        <label
         name="expl:VC for dutch_flag"/>
        <proof
         prover="0"
         timelimit="5"
         memlimit="1000"
         obsolete="false"
         archived="false">
MARCHE Claude's avatar
MARCHE Claude committed
282
         <result status="valid" time="0.44"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
283 284 285
        </proof>
       </goal>
      </transf>
Andrei Paskevich's avatar
Andrei Paskevich committed
286 287 288
     </goal>
     <goal
      name="WP_parameter dutch_flag.12"
289
      locfile="../flag.mlw"
290
      loclnum="26" loccnumb="6" loccnume="16"
291
      expl="12. loop invariant preservation"
MARCHE Claude's avatar
MARCHE Claude committed
292
      sum="013645a3fd9bd955c1f4f8295b0ce89e"
Andrei Paskevich's avatar
Andrei Paskevich committed
293
      proved="true"
294
      expanded="false"
295
      shape="loop invariant preservationCamonochromeV9V3V0aRedIainfix =V11ainfix +V4c1FIainfix =V10ainfix +V5c1FIaexchangeV7V9V5V4Aainfix &lt;=c0V0Lamk arrayV0V8FIainfix &lt;V4V0Aainfix &lt;=c0V4Aainfix &lt;V5V0Aainfix &lt;=c0V5aBluetaWhitetaRedagetV6V4Iainfix &lt;V4V0Aainfix &lt;=c0V4Aainfix &lt;=c0V0Iainfix &lt;V4V3Iapermut_allV2V7AamonochromeV7V3V0aRedAamonochromeV7V5V4aWhiteAamonochromeV7c0V5aBlueAainfix &lt;=V3V0Aainfix &lt;=V4V3Aainfix &lt;=V5V4Aainfix &lt;=c0V5Lamk arrayV0V6FIainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
296
      <label
297
       name="expl:VC for dutch_flag"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
298 299 300 301 302 303 304 305 306
      <transf
       name="inline_all"
       proved="true"
       expanded="false">
       <goal
        name="WP_parameter dutch_flag.12.1"
        locfile="../flag.mlw"
        loclnum="26" loccnumb="6" loccnume="16"
        expl="1. loop invariant preservation"
MARCHE Claude's avatar
MARCHE Claude committed
307
        sum="2707dc54b74375769e2fd3f9d42b826b"
Andrei Paskevich's avatar
Andrei Paskevich committed
308 309 310 311 312 313 314 315 316 317 318
        proved="true"
        expanded="false"
        shape="loop invariant preservationCainfix =agetaeltsV9V12aRedIainfix &lt;V12V0Aainfix =V3V12Oainfix &lt;V3V12FIainfix =V11ainfix +V4c1FIainfix =V10ainfix +V5c1FIainfix =agetaeltsV7V13agetaeltsV9V13INainfix =V13V4INainfix =V13V5Iainfix &lt;V13alengthV7Aainfix =c0V13Oainfix &lt;c0V13FAainfix =agetaeltsV7V4agetaeltsV9V5Aainfix =agetaeltsV7V5agetaeltsV9V4Aainfix &lt;V4alengthV7Aainfix =c0V4Oainfix &lt;c0V4Aainfix &lt;V5alengthV7Aainfix =c0V5Oainfix &lt;c0V5Aainfix =alengthV7alengthV9Aainfix =c0V0Oainfix &lt;c0V0Lamk arrayV0V8FIainfix &lt;V4V0Aainfix =c0V4Oainfix &lt;c0V4Aainfix &lt;V5V0Aainfix =c0V5Oainfix &lt;c0V5aBluetaWhitetaRedagetV6V4Iainfix &lt;V4V0Aainfix =c0V4Oainfix &lt;c0V4Aainfix =c0V0Oainfix &lt;c0V0Iainfix &lt;V4V3IapermutaeltsV2aeltsV7c0alengthV2Aainfix =alengthV2alengthV7Aainfix =agetaeltsV7V14aRedIainfix &lt;V14V0Aainfix =V3V14Oainfix &lt;V3V14FAainfix =agetaeltsV7V15aWhiteIainfix &lt;V15V4Aainfix =V5V15Oainfix &lt;V5V15FAainfix =agetaeltsV7V16aBlueIainfix &lt;V16V5Aainfix =c0V16Oainfix &lt;c0V16FAainfix =V3V0Oainfix &lt;V3V0Aainfix =V4V3Oainfix &lt;V4V3Aainfix =V5V4Oainfix &lt;V5V4Aainfix =c0V5Oainfix &lt;c0V5Lamk arrayV0V6FIainfix =c0V0Oainfix &lt;c0V0Lamk arrayV0V1F">
        <label
         name="expl:VC for dutch_flag"/>
        <proof
         prover="0"
         timelimit="5"
         memlimit="1000"
         obsolete="false"
         archived="false">
MARCHE Claude's avatar
MARCHE Claude committed
319
         <result status="valid" time="0.31"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
320 321 322
        </proof>
       </goal>
      </transf>
Andrei Paskevich's avatar
Andrei Paskevich committed
323 324 325
     </goal>
     <goal
      name="WP_parameter dutch_flag.13"
326
      locfile="../flag.mlw"
327
      loclnum="26" loccnumb="6" loccnume="16"
Andrei Paskevich's avatar
Andrei Paskevich committed
328
      expl="13. loop invariant preservation"
MARCHE Claude's avatar
MARCHE Claude committed
329
      sum="739ba27fcf4429654a1146f8bbd466a8"
Andrei Paskevich's avatar
Andrei Paskevich committed
330
      proved="true"
331
      expanded="false"
332
      shape="loop invariant preservationCapermut_allV2V9Iainfix =V11ainfix +V4c1FIainfix =V10ainfix +V5c1FIaexchangeV7V9V5V4Aainfix &lt;=c0V0Lamk arrayV0V8FIainfix &lt;V4V0Aainfix &lt;=c0V4Aainfix &lt;V5V0Aainfix &lt;=c0V5aBluetaWhitetaRedagetV6V4Iainfix &lt;V4V0Aainfix &lt;=c0V4Aainfix &lt;=c0V0Iainfix &lt;V4V3Iapermut_allV2V7AamonochromeV7V3V0aRedAamonochromeV7V5V4aWhiteAamonochromeV7c0V5aBlueAainfix &lt;=V3V0Aainfix &lt;=V4V3Aainfix &lt;=V5V4Aainfix &lt;=c0V5Lamk arrayV0V6FIainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
333
      <label
334
       name="expl:VC for dutch_flag"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
335 336 337 338 339 340
      <proof
       prover="0"
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
341
       <result status="valid" time="0.14"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
342 343 344 345
      </proof>
     </goal>
     <goal
      name="WP_parameter dutch_flag.14"
346
      locfile="../flag.mlw"
347
      loclnum="26" loccnumb="6" loccnume="16"
Andrei Paskevich's avatar
Andrei Paskevich committed
348
      expl="14. loop variant decrease"
MARCHE Claude's avatar
MARCHE Claude committed
349
      sum="1042c4c86bc36c0d8b5ec71e147a15f4"
Andrei Paskevich's avatar
Andrei Paskevich committed
350
      proved="true"
351
      expanded="false"
352
      shape="loop variant decreaseCainfix &lt;ainfix -V3V11ainfix -V3V4Aainfix &lt;=c0ainfix -V3V4Iainfix =V11ainfix +V4c1FIainfix =V10ainfix +V5c1FIaexchangeV7V9V5V4Aainfix &lt;=c0V0Lamk arrayV0V8FIainfix &lt;V4V0Aainfix &lt;=c0V4Aainfix &lt;V5V0Aainfix &lt;=c0V5aBluetaWhitetaRedagetV6V4Iainfix &lt;V4V0Aainfix &lt;=c0V4Aainfix &lt;=c0V0Iainfix &lt;V4V3Iapermut_allV2V7AamonochromeV7V3V0aRedAamonochromeV7V5V4aWhiteAamonochromeV7c0V5aBlueAainfix &lt;=V3V0Aainfix &lt;=V4V3Aainfix &lt;=V5V4Aainfix &lt;=c0V5Lamk arrayV0V6FIainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
353
      <label
354
       name="expl:VC for dutch_flag"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
355 356
      <proof
       prover="0"
357
       timelimit="5"
Andrei Paskevich's avatar
Andrei Paskevich committed
358 359 360
       memlimit="1000"
       obsolete="false"
       archived="false">
Andrei Paskevich's avatar
Andrei Paskevich committed
361
       <result status="valid" time="0.01"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
362 363 364 365
      </proof>
     </goal>
     <goal
      name="WP_parameter dutch_flag.15"
366
      locfile="../flag.mlw"
367
      loclnum="26" loccnumb="6" loccnume="16"
368
      expl="15. loop invariant preservation"
MARCHE Claude's avatar
MARCHE Claude committed
369
      sum="5dbf167c15f65ee6249a84313301d73a"
370
      proved="true"
371
      expanded="false"
372
      shape="loop invariant preservationCtaBlueainfix &lt;=V3V0Aainfix &lt;=V8V3Aainfix &lt;=V5V8Aainfix &lt;=c0V5Iainfix =V8ainfix +V4c1FaWhitetaRedagetV6V4Iainfix &lt;V4V0Aainfix &lt;=c0V4Aainfix &lt;=c0V0Iainfix &lt;V4V3Iapermut_allV2V7AamonochromeV7V3V0aRedAamonochromeV7V5V4aWhiteAamonochromeV7c0V5aBlueAainfix &lt;=V3V0Aainfix &lt;=V4V3Aainfix &lt;=V5V4Aainfix &lt;=c0V5Lamk arrayV0V6FIainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
373
      <label
374
       name="expl:VC for dutch_flag"/>
375
      <proof
Andrei Paskevich's avatar
Andrei Paskevich committed
376
       prover="0"
377 378
       timelimit="5"
       memlimit="1000"
379
       obsolete="false"
Andrei Paskevich's avatar
Andrei Paskevich committed
380
       archived="false">
Andrei Paskevich's avatar
Andrei Paskevich committed
381
       <result status="valid" time="0.00"/>
382 383
      </proof>
     </goal>
384
     <goal
Andrei Paskevich's avatar
Andrei Paskevich committed
385
      name="WP_parameter dutch_flag.16"
386
      locfile="../flag.mlw"
387
      loclnum="26" loccnumb="6" loccnume="16"
388
      expl="16. loop invariant preservation"
MARCHE Claude's avatar
MARCHE Claude committed
389
      sum="d5815f30ccbd02f148c49540c9ae11cf"
390
      proved="true"
391
      expanded="false"
392
      shape="loop invariant preservationCtaBlueamonochromeV7c0V5aBlueIainfix =V8ainfix +V4c1FaWhitetaRedagetV6V4Iainfix &lt;V4V0Aainfix &lt;=c0V4Aainfix &lt;=c0V0Iainfix &lt;V4V3Iapermut_allV2V7AamonochromeV7V3V0aRedAamonochromeV7V5V4aWhiteAamonochromeV7c0V5aBlueAainfix &lt;=V3V0Aainfix &lt;=V4V3Aainfix &lt;=V5V4Aainfix &lt;=c0V5Lamk arrayV0V6FIainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
393
      <label
394
       name="expl:VC for dutch_flag"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
395 396 397 398 399 400 401 402
      <proof
       prover="0"
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
       <result status="valid" time="0.01"/>
      </proof>
403
     </goal>
404
     <goal
Andrei Paskevich's avatar
Andrei Paskevich committed
405
      name="WP_parameter dutch_flag.17"
406
      locfile="../flag.mlw"
407
      loclnum="26" loccnumb="6" loccnume="16"
408
      expl="17. loop invariant preservation"
MARCHE Claude's avatar
MARCHE Claude committed
409
      sum="327cee87ddb48f171e02c9a341c4639d"
Andrei Paskevich's avatar
Andrei Paskevich committed
410
      proved="true"
411
      expanded="false"
412
      shape="loop invariant preservationCtaBlueamonochromeV7V5V8aWhiteIainfix =V8ainfix +V4c1FaWhitetaRedagetV6V4Iainfix &lt;V4V0Aainfix &lt;=c0V4Aainfix &lt;=c0V0Iainfix &lt;V4V3Iapermut_allV2V7AamonochromeV7V3V0aRedAamonochromeV7V5V4aWhiteAamonochromeV7c0V5aBlueAainfix &lt;=V3V0Aainfix &lt;=V4V3Aainfix &lt;=V5V4Aainfix &lt;=c0V5Lamk arrayV0V6FIainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
413
      <label
414
       name="expl:VC for dutch_flag"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
415 416 417 418 419 420
      <proof
       prover="0"
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
Andrei Paskevich's avatar
Andrei Paskevich committed
421
       <result status="valid" time="0.01"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
422 423 424 425
      </proof>
     </goal>
     <goal
      name="WP_parameter dutch_flag.18"
426
      locfile="../flag.mlw"
427
      loclnum="26" loccnumb="6" loccnume="16"
428
      expl="18. loop invariant preservation"
MARCHE Claude's avatar
MARCHE Claude committed
429
      sum="65fe5e6aacf408d952808de5345c0af5"
Andrei Paskevich's avatar
Andrei Paskevich committed
430
      proved="true"
431
      expanded="false"
432
      shape="loop invariant preservationCtaBlueamonochromeV7V3V0aRedIainfix =V8ainfix +V4c1FaWhitetaRedagetV6V4Iainfix &lt;V4V0Aainfix &lt;=c0V4Aainfix &lt;=c0V0Iainfix &lt;V4V3Iapermut_allV2V7AamonochromeV7V3V0aRedAamonochromeV7V5V4aWhiteAamonochromeV7c0V5aBlueAainfix &lt;=V3V0Aainfix &lt;=V4V3Aainfix &lt;=V5V4Aainfix &lt;=c0V5Lamk arrayV0V6FIainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
433 434 435 436 437 438 439 440 441 442 443 444 445 446
      <label
       name="expl:VC for dutch_flag"/>
      <proof
       prover="0"
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
       <result status="valid" time="0.00"/>
      </proof>
     </goal>
     <goal
      name="WP_parameter dutch_flag.19"
      locfile="../flag.mlw"
447
      loclnum="26" loccnumb="6" loccnume="16"
Andrei Paskevich's avatar
Andrei Paskevich committed
448
      expl="19. loop invariant preservation"
MARCHE Claude's avatar
MARCHE Claude committed
449
      sum="ccd7095e7104a686fdbdc7afcc5e494a"
Andrei Paskevich's avatar
Andrei Paskevich committed
450
      proved="true"
451
      expanded="false"
452
      shape="loop invariant preservationCtaBlueapermut_allV2V7Iainfix =V8ainfix +V4c1FaWhitetaRedagetV6V4Iainfix &lt;V4V0Aainfix &lt;=c0V4Aainfix &lt;=c0V0Iainfix &lt;V4V3Iapermut_allV2V7AamonochromeV7V3V0aRedAamonochromeV7V5V4aWhiteAamonochromeV7c0V5aBlueAainfix &lt;=V3V0Aainfix &lt;=V4V3Aainfix &lt;=V5V4Aainfix &lt;=c0V5Lamk arrayV0V6FIainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
453
      <label
454
       name="expl:VC for dutch_flag"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
455 456
      <proof
       prover="0"
457
       timelimit="35"
Andrei Paskevich's avatar
Andrei Paskevich committed
458 459 460
       memlimit="1000"
       obsolete="false"
       archived="false">
461
       <result status="valid" time="0.04"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
462 463 464
      </proof>
     </goal>
     <goal
Andrei Paskevich's avatar
Andrei Paskevich committed
465
      name="WP_parameter dutch_flag.20"
466
      locfile="../flag.mlw"
467
      loclnum="26" loccnumb="6" loccnume="16"
Andrei Paskevich's avatar
Andrei Paskevich committed
468
      expl="20. loop variant decrease"
MARCHE Claude's avatar
MARCHE Claude committed
469
      sum="03463d2d6d65e87cac3b69fbc08fcbb1"
Andrei Paskevich's avatar
Andrei Paskevich committed
470
      proved="true"
471
      expanded="false"
472
      shape="loop variant decreaseCtaBlueainfix &lt;ainfix -V3V8ainfix -V3V4Aainfix &lt;=c0ainfix -V3V4Iainfix =V8ainfix +V4c1FaWhitetaRedagetV6V4Iainfix &lt;V4V0Aainfix &lt;=c0V4Aainfix &lt;=c0V0Iainfix &lt;V4V3Iapermut_allV2V7AamonochromeV7V3V0aRedAamonochromeV7V5V4aWhiteAamonochromeV7c0V5aBlueAainfix &lt;=V3V0Aainfix &lt;=V4V3Aainfix &lt;=V5V4Aainfix &lt;=c0V5Lamk arrayV0V6FIainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
473
      <label
474
       name="expl:VC for dutch_flag"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
475 476 477 478 479 480 481 482 483 484
      <proof
       prover="0"
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
       <result status="valid" time="0.01"/>
      </proof>
     </goal>
     <goal
Andrei Paskevich's avatar
Andrei Paskevich committed
485
      name="WP_parameter dutch_flag.21"
486
      locfile="../flag.mlw"
487
      loclnum="26" loccnumb="6" loccnume="16"
Andrei Paskevich's avatar
Andrei Paskevich committed
488
      expl="21. precondition"
MARCHE Claude's avatar
MARCHE Claude committed
489
      sum="5260c55d9b819ef7868ddbc69304594c"
Andrei Paskevich's avatar
Andrei Paskevich committed
490
      proved="true"
491
      expanded="false"
492
      shape="preconditionCtaBluetaWhiteainfix &lt;V4V0Aainfix &lt;=c0V4Aainfix &lt;V8V0Aainfix &lt;=c0V8Iainfix =V8ainfix -V3c1FaRedagetV6V4Iainfix &lt;V4V0Aainfix &lt;=c0V4Aainfix &lt;=c0V0Iainfix &lt;V4V3Iapermut_allV2V7AamonochromeV7V3V0aRedAamonochromeV7V5V4aWhiteAamonochromeV7c0V5aBlueAainfix &lt;=V3V0Aainfix &lt;=V4V3Aainfix &lt;=V5V4Aainfix &lt;=c0V5Lamk arrayV0V6FIainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
493
      <label
494
       name="expl:VC for dutch_flag"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
495
      <proof
Andrei Paskevich's avatar
Andrei Paskevich committed
496
       prover="0"
Andrei Paskevich's avatar
Andrei Paskevich committed
497 498 499 500
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
Andrei Paskevich's avatar
Andrei Paskevich committed
501
       <result status="valid" time="0.01"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
502 503 504
      </proof>
     </goal>
     <goal
Andrei Paskevich's avatar
Andrei Paskevich committed
505
      name="WP_parameter dutch_flag.22"
506
      locfile="../flag.mlw"
507
      loclnum="26" loccnumb="6" loccnume="16"
Andrei Paskevich's avatar
Andrei Paskevich committed
508
      expl="22. loop invariant preservation"
MARCHE Claude's avatar
MARCHE Claude committed
509
      sum="9d0aaf767dde98b15bd035f9a308c04e"
Andrei Paskevich's avatar
Andrei Paskevich committed
510
      proved="true"
511
      expanded="false"
512
      shape="loop invariant preservationCtaBluetaWhiteainfix &lt;=V8V0Aainfix &lt;=V4V8Aainfix &lt;=V5V4Aainfix &lt;=c0V5IaexchangeV7V10V8V4Aainfix &lt;=c0V0Lamk arrayV0V9FIainfix &lt;V4V0Aainfix &lt;=c0V4Aainfix &lt;V8V0Aainfix &lt;=c0V8Iainfix =V8ainfix -V3c1FaRedagetV6V4Iainfix &lt;V4V0Aainfix &lt;=c0V4Aainfix &lt;=c0V0Iainfix &lt;V4V3Iapermut_allV2V7AamonochromeV7V3V0aRedAamonochromeV7V5V4aWhiteAamonochromeV7c0V5aBlueAainfix &lt;=V3V0Aainfix &lt;=V4V3Aainfix &lt;=V5V4Aainfix &lt;=c0V5Lamk arrayV0V6FIainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
513
      <label
514
       name="expl:VC for dutch_flag"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
515 516
      <proof
       prover="0"
517
       timelimit="8"
Andrei Paskevich's avatar
Andrei Paskevich committed
518 519 520
       memlimit="1000"
       obsolete="false"
       archived="false">
521
       <result status="valid" time="0.04"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
522 523 524
      </proof>
     </goal>
     <goal
Andrei Paskevich's avatar
Andrei Paskevich committed
525
      name="WP_parameter dutch_flag.23"
526
      locfile="../flag.mlw"
527
      loclnum="26" loccnumb="6" loccnume="16"
Andrei Paskevich's avatar
Andrei Paskevich committed
528
      expl="23. loop invariant preservation"
MARCHE Claude's avatar
MARCHE Claude committed
529
      sum="d5d32d6ec092b273ee2f82c19a3b9ffc"
530
      proved="true"
531
      expanded="false"
532
      shape="loop invariant preservationCtaBluetaWhiteamonochromeV10c0V5aBlueIaexchangeV7V10V8V4Aainfix &lt;=c0V0Lamk arrayV0V9FIainfix &lt;V4V0Aainfix &lt;=c0V4Aainfix &lt;V8V0Aainfix &lt;=c0V8Iainfix =V8ainfix -V3c1FaRedagetV6V4Iainfix &lt;V4V0Aainfix &lt;=c0V4Aainfix &lt;=c0V0Iainfix &lt;V4V3Iapermut_allV2V7AamonochromeV7V3V0aRedAamonochromeV7V5V4aWhiteAamonochromeV7c0V5aBlueAainfix &lt;=V3V0Aainfix &lt;=V4V3Aainfix &lt;=V5V4Aainfix &lt;=c0V5Lamk arrayV0V6FIainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
533
      <label
534
       name="expl:VC for dutch_flag"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
535 536 537 538 539 540 541 542 543
      <transf
       name="inline_all"
       proved="true"
       expanded="false">
       <goal
        name="WP_parameter dutch_flag.23.1"
        locfile="../flag.mlw"
        loclnum="26" loccnumb="6" loccnume="16"
        expl="1. loop invariant preservation"
MARCHE Claude's avatar
MARCHE Claude committed
544
        sum="b75cba656011defd600c7099360576f3"
Andrei Paskevich's avatar
Andrei Paskevich committed
545 546 547 548 549 550 551 552 553 554 555 556 557 558 559
        proved="true"
        expanded="false"
        shape="loop invariant preservationCtaBluetaWhiteainfix =agetaeltsV10V11aBlueIainfix &lt;V11V5Aainfix =c0V11Oainfix &lt;c0V11FIainfix =agetaeltsV7V12agetaeltsV10V12INainfix =V12V4INainfix =V12V8Iainfix &lt;V12alengthV7Aainfix =c0V12Oainfix &lt;c0V12FAainfix =agetaeltsV7V4agetaeltsV10V8Aainfix =agetaeltsV7V8agetaeltsV10V4Aainfix &lt;V4alengthV7Aainfix =c0V4Oainfix &lt;c0V4Aainfix &lt;V8alengthV7Aainfix =c0V8Oainfix &lt;c0V8Aainfix =alengthV7alengthV10Aainfix =c0V0Oainfix &lt;c0V0Lamk arrayV0V9FIainfix &lt;V4V0Aainfix =c0V4Oainfix &lt;c0V4Aainfix &lt;V8V0Aainfix =c0V8Oainfix &lt;c0V8Iainfix =V8ainfix +V3aprefix -c1FaRedagetV6V4Iainfix &lt;V4V0Aainfix =c0V4Oainfix &lt;c0V4Aainfix =c0V0Oainfix &lt;c0V0Iainfix &lt;V4V3IapermutaeltsV2aeltsV7c0alengthV2Aainfix =alengthV2alengthV7Aainfix =agetaeltsV7V13aRedIainfix &lt;V13V0Aainfix =V3V13Oainfix &lt;V3V13FAainfix =agetaeltsV7V14aWhiteIainfix &lt;V14V4Aainfix =V5V14Oainfix &lt;V5V14FAainfix =agetaeltsV7V15aBlueIainfix &lt;V15V5Aainfix =c0V15Oainfix &lt;c0V15FAainfix =V3V0Oainfix &lt;V3V0Aainfix =V4V3Oainfix &lt;V4V3Aainfix =V5V4Oainfix &lt;V5V4Aainfix =c0V5Oainfix &lt;c0V5Lamk arrayV0V6FIainfix =c0V0Oainfix &lt;c0V0Lamk arrayV0V1F">
        <label
         name="expl:VC for dutch_flag"/>
        <proof
         prover="0"
         timelimit="5"
         memlimit="1000"
         obsolete="false"
         archived="false">
         <result status="valid" time="0.46"/>
        </proof>
       </goal>
      </transf>
560
     </goal>
561
     <goal
Andrei Paskevich's avatar
Andrei Paskevich committed
562
      name="WP_parameter dutch_flag.24"
563
      locfile="../flag.mlw"
564
      loclnum="26" loccnumb="6" loccnume="16"
Andrei Paskevich's avatar
Andrei Paskevich committed
565
      expl="24. loop invariant preservation"
MARCHE Claude's avatar
MARCHE Claude committed
566
      sum="1651bb42f4c51780edba962d6c631b87"
567
      proved="true"
568
      expanded="false"
569
      shape="loop invariant preservationCtaBluetaWhiteamonochromeV10V5V4aWhiteIaexchangeV7V10V8V4Aainfix &lt;=c0V0Lamk arrayV0V9FIainfix &lt;V4V0Aainfix &lt;=c0V4Aainfix &lt;V8V0Aainfix &lt;=c0V8Iainfix =V8ainfix -V3c1FaRedagetV6V4Iainfix &lt;V4V0Aainfix &lt;=c0V4Aainfix &lt;=c0V0Iainfix &lt;V4V3Iapermut_allV2V7AamonochromeV7V3V0aRedAamonochromeV7V5V4aWhiteAamonochromeV7c0V5aBlueAainfix &lt;=V3V0Aainfix &lt;=V4V3Aainfix &lt;=V5V4Aainfix &lt;=c0V5Lamk arrayV0V6FIainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
570
      <label
571
       name="expl:VC for dutch_flag"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
572 573 574 575 576 577 578 579 580
      <transf
       name="inline_all"
       proved="true"
       expanded="false">
       <goal
        name="WP_parameter dutch_flag.24.1"
        locfile="../flag.mlw"
        loclnum="26" loccnumb="6" loccnume="16"
        expl="1. loop invariant preservation"
MARCHE Claude's avatar
MARCHE Claude committed
581
        sum="513c45642b491d14868890ae2dbd4a05"
Andrei Paskevich's avatar
Andrei Paskevich committed
582 583 584 585 586 587 588 589 590 591 592
        proved="true"
        expanded="false"
        shape="loop invariant preservationCtaBluetaWhiteainfix =agetaeltsV10V11aWhiteIainfix &lt;V11V4Aainfix =V5V11Oainfix &lt;V5V11FIainfix =agetaeltsV7V12agetaeltsV10V12INainfix =V12V4INainfix =V12V8Iainfix &lt;V12alengthV7Aainfix =c0V12Oainfix &lt;c0V12FAainfix =agetaeltsV7V4agetaeltsV10V8Aainfix =agetaeltsV7V8agetaeltsV10V4Aainfix &lt;V4alengthV7Aainfix =c0V4Oainfix &lt;c0V4Aainfix &lt;V8alengthV7Aainfix =c0V8Oainfix &lt;c0V8Aainfix =alengthV7alengthV10Aainfix =c0V0Oainfix &lt;c0V0Lamk arrayV0V9FIainfix &lt;V4V0Aainfix =c0V4Oainfix &lt;c0V4Aainfix &lt;V8V0Aainfix =c0V8Oainfix &lt;c0V8Iainfix =V8ainfix +V3aprefix -c1FaRedagetV6V4Iainfix &lt;V4V0Aainfix =c0V4Oainfix &lt;c0V4Aainfix =c0V0Oainfix &lt;c0V0Iainfix &lt;V4V3IapermutaeltsV2aeltsV7c0alengthV2Aainfix =alengthV2alengthV7Aainfix =agetaeltsV7V13aRedIainfix &lt;V13V0Aainfix =V3V13Oainfix &lt;V3V13FAainfix =agetaeltsV7V14aWhiteIainfix &lt;V14V4Aainfix =V5V14Oainfix &lt;V5V14FAainfix =agetaeltsV7V15aBlueIainfix &lt;V15V5Aainfix =c0V15Oainfix &lt;c0V15FAainfix =V3V0Oainfix &lt;V3V0Aainfix =V4V3Oainfix &lt;V4V3Aainfix =V5V4Oainfix &lt;V5V4Aainfix =c0V5Oainfix &lt;c0V5Lamk arrayV0V6FIainfix =c0V0Oainfix &lt;c0V0Lamk arrayV0V1F">
        <label
         name="expl:VC for dutch_flag"/>
        <proof
         prover="0"
         timelimit="5"
         memlimit="1000"
         obsolete="false"
         archived="false">
MARCHE Claude's avatar
MARCHE Claude committed
593
         <result status="valid" time="0.29"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
594 595 596
        </proof>
       </goal>
      </transf>
597
     </goal>
598
     <goal
Andrei Paskevich's avatar
Andrei Paskevich committed
599
      name="WP_parameter dutch_flag.25"
600
      locfile="../flag.mlw"
601
      loclnum="26" loccnumb="6" loccnume="16"
Andrei Paskevich's avatar
Andrei Paskevich committed
602
      expl="25. loop invariant preservation"
MARCHE Claude's avatar
MARCHE Claude committed
603
      sum="a2562e8d6d7353e9e6526f3927cb595c"
604
      proved="true"
605
      expanded="false"
606
      shape="loop invariant preservationCtaBluetaWhiteamonochromeV10V8V0aRedIaexchangeV7V10V8V4Aainfix &lt;=c0V0Lamk arrayV0V9FIainfix &lt;V4V0Aainfix &lt;=c0V4Aainfix &lt;V8V0Aainfix &lt;=c0V8Iainfix =V8ainfix -V3c1FaRedagetV6V4Iainfix &lt;V4V0Aainfix &lt;=c0V4Aainfix &lt;=c0V0Iainfix &lt;V4V3Iapermut_allV2V7AamonochromeV7V3V0aRedAamonochromeV7V5V4aWhiteAamonochromeV7c0V5aBlueAainfix &lt;=V3V0Aainfix &lt;=V4V3Aainfix &lt;=V5V4Aainfix &lt;=c0V5Lamk arrayV0V6FIainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
607
      <label
608
       name="expl:VC for dutch_flag"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
609 610 611 612 613 614 615 616 617
      <transf
       name="inline_all"
       proved="true"
       expanded="false">
       <goal
        name="WP_parameter dutch_flag.25.1"
        locfile="../flag.mlw"
        loclnum="26" loccnumb="6" loccnume="16"
        expl="1. loop invariant preservation"
MARCHE Claude's avatar
MARCHE Claude committed
618
        sum="0cceecdcf33870c4f6142a10a3f291be"
Andrei Paskevich's avatar
Andrei Paskevich committed
619 620 621 622 623 624 625 626 627 628 629 630 631 632 633
        proved="true"
        expanded="false"
        shape="loop invariant preservationCtaBluetaWhiteainfix =agetaeltsV10V11aRedIainfix &lt;V11V0Aainfix =V8V11Oainfix &lt;V8V11FIainfix =agetaeltsV7V12agetaeltsV10V12INainfix =V12V4INainfix =V12V8Iainfix &lt;V12alengthV7Aainfix =c0V12Oainfix &lt;c0V12FAainfix =agetaeltsV7V4agetaeltsV10V8Aainfix =agetaeltsV7V8agetaeltsV10V4Aainfix &lt;V4alengthV7Aainfix =c0V4Oainfix &lt;c0V4Aainfix &lt;V8alengthV7Aainfix =c0V8Oainfix &lt;c0V8Aainfix =alengthV7alengthV10Aainfix =c0V0Oainfix &lt;c0V0Lamk arrayV0V9FIainfix &lt;V4V0Aainfix =c0V4Oainfix &lt;c0V4Aainfix &lt;V8V0Aainfix =c0V8Oainfix &lt;c0V8Iainfix =V8ainfix +V3aprefix -c1FaRedagetV6V4Iainfix &lt;V4V0Aainfix =c0V4Oainfix &lt;c0V4Aainfix =c0V0Oainfix &lt;c0V0Iainfix &lt;V4V3IapermutaeltsV2aeltsV7c0alengthV2Aainfix =alengthV2alengthV7Aainfix =agetaeltsV7V13aRedIainfix &lt;V13V0Aainfix =V3V13Oainfix &lt;V3V13FAainfix =agetaeltsV7V14aWhiteIainfix &lt;V14V4Aainfix =V5V14Oainfix &lt;V5V14FAainfix =agetaeltsV7V15aBlueIainfix &lt;V15V5Aainfix =c0V15Oainfix &lt;c0V15FAainfix =V3V0Oainfix &lt;V3V0Aainfix =V4V3Oainfix &lt;V4V3Aainfix =V5V4Oainfix &lt;V5V4Aainfix =c0V5Oainfix &lt;c0V5Lamk arrayV0V6FIainfix =c0V0Oainfix &lt;c0V0Lamk arrayV0V1F">
        <label
         name="expl:VC for dutch_flag"/>
        <proof
         prover="0"
         timelimit="5"
         memlimit="1000"
         obsolete="false"
         archived="false">
         <result status="valid" time="0.26"/>
        </proof>
       </goal>
      </transf>
634
     </goal>
635
     <goal
Andrei Paskevich's avatar
Andrei Paskevich committed
636
      name="WP_parameter dutch_flag.26"
637
      locfile="../flag.mlw"
638
      loclnum="26" loccnumb="6" loccnume="16"
Andrei Paskevich's avatar
Andrei Paskevich committed
639
      expl="26. loop invariant preservation"
MARCHE Claude's avatar
MARCHE Claude committed
640
      sum="49cd489eced72b687bd415f6fc793bdb"
Andrei Paskevich's avatar
Andrei Paskevich committed
641
      proved="true"
642
      expanded="false"
643
      shape="loop invariant preservationCtaBluetaWhiteapermut_allV2V10IaexchangeV7V10V8V4Aainfix &lt;=c0V0Lamk arrayV0V9FIainfix &lt;V4V0Aainfix &lt;=c0V4Aainfix &lt;V8V0Aainfix &lt;=c0V8Iainfix =V8ainfix -V3c1FaRedagetV6V4Iainfix &lt;V4V0Aainfix &lt;=c0V4Aainfix &lt;=c0V0Iainfix &lt;V4V3Iapermut_allV2V7AamonochromeV7V3V0aRedAamonochromeV7V5V4aWhiteAamonochromeV7c0V5aBlueAainfix &lt;=V3V0Aainfix &lt;=V4V3Aainfix &lt;=V5V4Aainfix &lt;=c0V5Lamk arrayV0V6FIainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
644
      <label
645
       name="expl:VC for dutch_flag"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
646 647 648 649 650 651
      <proof
       prover="0"
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
652
       <result status="valid" time="0.12"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
653 654 655
      </proof>
     </goal>
     <goal
Andrei Paskevich's avatar
Andrei Paskevich committed
656
      name="WP_parameter dutch_flag.27"
657
      locfile="../flag.mlw"
658
      loclnum="26" loccnumb="6" loccnume="16"
Andrei Paskevich's avatar
Andrei Paskevich committed
659
      expl="27. loop variant decrease"
MARCHE Claude's avatar
MARCHE Claude committed
660
      sum="1368cf5f164a7ff95b46fbd2d097de02"
661
      proved="true"
662
      expanded="false"
663
      shape="loop variant decreaseCtaBluetaWhiteainfix &lt;ainfix -V8V4ainfix -V3V4Aainfix &lt;=c0ainfix -V3V4IaexchangeV7V10V8V4Aainfix &lt;=c0V0Lamk arrayV0V9FIainfix &lt;V4V0Aainfix &lt;=c0V4Aainfix &lt;V8V0Aainfix &lt;=c0V8Iainfix =V8ainfix -V3c1FaRedagetV6V4Iainfix &lt;V4V0Aainfix &lt;=c0V4Aainfix &lt;=c0V0Iainfix &lt;V4V3Iapermut_allV2V7AamonochromeV7V3V0aRedAamonochromeV7V5V4aWhiteAamonochromeV7c0V5aBlueAainfix &lt;=V3V0Aainfix &lt;=V4V3Aainfix &lt;=V5V4Aainfix &lt;=c0V5Lamk arrayV0V6FIainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
664
      <label
665
       name="expl:VC for dutch_flag"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
666
      <proof
Andrei Paskevich's avatar
Andrei Paskevich committed
667 668
       prover="0"
       timelimit="5"
Andrei Paskevich's avatar
Andrei Paskevich committed
669 670 671
       memlimit="1000"
       obsolete="false"
       archived="false">
Andrei Paskevich's avatar
Andrei Paskevich committed
672
       <result status="valid" time="0.01"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
673
      </proof>
674
     </goal>
675
     <goal
Andrei Paskevich's avatar
Andrei Paskevich committed
676 677
      name="WP_parameter dutch_flag.28"
      locfile="../flag.mlw"
678
      loclnum="26" loccnumb="6" loccnume="16"
Andrei Paskevich's avatar
Andrei Paskevich committed
679
      expl="28. type invariant"
MARCHE Claude's avatar
MARCHE Claude committed
680
      sum="d5b1c35230363fc29018ccc0ccadfacd"
Andrei Paskevich's avatar
Andrei Paskevich committed
681 682
      proved="true"
      expanded="false"
683
      shape="type invariantainfix &lt;=c0V0INainfix &lt;V4V3Iapermut_allV2V7AamonochromeV7V3V0aRedAamonochromeV7V5V4aWhiteAamonochromeV7c0V5aBlueAainfix &lt;=V3V0Aainfix &lt;=V4V3Aainfix &lt;=V5V4Aainfix &lt;=c0V5Lamk arrayV0V6FIainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
684 685 686
      <label
       name="expl:VC for dutch_flag"/>
      <proof
687
       prover="0"
Andrei Paskevich's avatar
Andrei Paskevich committed
688 689 690 691 692 693 694 695 696
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
       <result status="valid" time="0.02"/>
      </proof>
     </goal>
     <goal
      name="WP_parameter dutch_flag.29"
697
      locfile="../flag.mlw"
698
      loclnum="26" loccnumb="6" loccnume="16"
Andrei Paskevich's avatar
Andrei Paskevich committed
699
      expl="29. postcondition"
MARCHE Claude's avatar
MARCHE Claude committed
700
      sum="3782157e50cc3040d08266cfb325fec1"
701
      proved="true"
702
      expanded="false"
703
      shape="postconditionamonochromeV7V9V0aRedAamonochromeV7V8V9aWhiteAamonochromeV7c0V8aBlueEIainfix &lt;=c0V0INainfix &lt;V4V3Iapermut_allV2V7AamonochromeV7V3V0aRedAamonochromeV7V5V4aWhiteAamonochromeV7c0V5aBlueAainfix &lt;=V3V0Aainfix &lt;=V4V3Aainfix &lt;=V5V4Aainfix &lt;=c0V5Lamk arrayV0V6FIainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
704
      <label
705
       name="expl:VC for dutch_flag"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
706 707
      <proof
       prover="0"
708
       timelimit="8"
Andrei Paskevich's avatar
Andrei Paskevich committed
709 710 711
       memlimit="1000"
       obsolete="false"
       archived="false">
712
       <result status="valid" time="0.04"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
713 714 715
      </proof>
     </goal>
     <goal
Andrei Paskevich's avatar
Andrei Paskevich committed
716
      name="WP_parameter dutch_flag.30"
717
      locfile="../flag.mlw"
718
      loclnum="26" loccnumb="6" loccnume="16"
Andrei Paskevich's avatar
Andrei Paskevich committed
719
      expl="30. postcondition"
MARCHE Claude's avatar
MARCHE Claude committed
720
      sum="60b7dd9a846ed75642fcfff2c6d4b235"
Andrei Paskevich's avatar
Andrei Paskevich committed
721
      proved="true"
722
      expanded="false"
723
      shape="postconditionapermut_allV2V7Iainfix &lt;=c0V0INainfix &lt;V4V3Iapermut_allV2V7AamonochromeV7V3V0aRedAamonochromeV7V5V4aWhiteAamonochromeV7c0V5aBlueAainfix &lt;=V3V0Aainfix &lt;=V4V3Aainfix &lt;=V5V4Aainfix &lt;=c0V5Lamk arrayV0V6FIainfix &lt;=c0V0Lamk arrayV0V1F">
Andrei Paskevich's avatar
Andrei Paskevich committed
724
      <label
725
       name="expl:VC for dutch_flag"/>
Andrei Paskevich's avatar
Andrei Paskevich committed
726 727 728 729 730 731 732 733
      <proof
       prover="0"
       timelimit="5"
       memlimit="1000"
       obsolete="false"
       archived="false">
       <result status="valid" time="0.01"/>
      </proof>
734 735 736 737 738 739
     </goal>
    </transf>
   </goal>
  </theory>
 </file>
</why3session>