pet_scop_from_pet_tree: take into account assumptions
[pet.git] / tests / break4.scop
blob455bac9bd64c88af07339e7c799e203e29ddf57f
1 start: 43
2 end: 357
3 indent: "\t"
4 context: '{  :  }'
5 schedule: '{ domain: "{ S_3[i, j] : 0 <= i <= 99 and 81 <= j <= 99; S_20[i, j] : 0
6   <= i <= 99 and 0 <= j <= 99; S_15[i, j] : 0 <= i <= 99 and 0 <= j <= 99; S_23[];
7   S_19[i, j] : 0 <= i <= 99 and 0 <= j <= 99; S_9[i, j] : 0 <= i <= 99 and 0 <= j
8   <= 99; S_1[i] : 0 <= i <= 99; S_6[i, j] : 0 <= i <= 99 and 0 <= j <= 99; S_4[i,
9   j] : 0 <= i <= 99 and 0 <= j <= 99; S_10[i, j] : 0 <= i <= 99 and 0 <= j <= 99;
10   S_2[i, j] : 0 <= i <= 99 and 0 <= j <= 99; S_24[]; S_17[i, j] : 0 <= i <= 99 and
11   0 <= j <= 99; S_5[i, j] : 0 <= i <= 99 and 0 <= j <= 99; S_8[i, j] : 0 <= i <= 99
12   and 0 <= j <= 99; S_18[i, j] : 0 <= i <= 99 and 0 <= j <= 99; S_22[]; S_13[i, j]
13   : 0 <= i <= 99 and 0 <= j <= 99; S_16[i, j] : 0 <= i <= 99 and 0 <= j <= 99; S_14[i,
14   j] : 0 <= i <= 99 and 0 <= j <= 99; S_11[i, j] : 0 <= i <= 99 and 0 <= j <= 99;
15   S_12[i, j] : 0 <= i <= 99 and 0 <= j <= 99; S_0[]; S_21[i] : 0 <= i <= 99; S_7[i,
16   j] : 0 <= i <= 99 and 0 <= j <= 99 }", child: { sequence: [ { filter: "{ S_0[] }"
17   }, { filter: "{ S_11[i, j]; S_12[i, j]; S_14[i, j]; S_15[i, j]; S_18[i, j]; S_10[i,
18   j]; S_13[i, j]; S_6[i, j]; S_3[i, j]; S_16[i, j]; S_8[i, j]; S_9[i, j]; S_17[i,
19   j]; S_20[i, j]; S_2[i, j]; S_7[i, j]; S_4[i, j]; S_5[i, j]; S_21[i]; S_19[i, j];
20   S_1[i] }", child: { schedule: "L_0[{ S_11[i, j] -> [(i)]; S_12[i, j] -> [(i)]; S_14[i,
21   j] -> [(i)]; S_15[i, j] -> [(i)]; S_18[i, j] -> [(i)]; S_10[i, j] -> [(i)]; S_13[i,
22   j] -> [(i)]; S_6[i, j] -> [(i)]; S_3[i, j] -> [(i)]; S_16[i, j] -> [(i)]; S_8[i,
23   j] -> [(i)]; S_9[i, j] -> [(i)]; S_17[i, j] -> [(i)]; S_20[i, j] -> [(i)]; S_2[i,
24   j] -> [(i)]; S_7[i, j] -> [(i)]; S_4[i, j] -> [(i)]; S_5[i, j] -> [(i)]; S_21[i]
25   -> [(i)]; S_19[i, j] -> [(i)]; S_1[i] -> [(i)] }]", child: { sequence: [ { filter:
26   "{ S_1[i] }" }, { filter: "{ S_11[i, j]; S_12[i, j]; S_14[i, j]; S_15[i, j]; S_18[i,
27   j]; S_10[i, j]; S_13[i, j]; S_6[i, j]; S_3[i, j]; S_16[i, j]; S_8[i, j]; S_9[i,
28   j]; S_17[i, j]; S_20[i, j]; S_2[i, j]; S_7[i, j]; S_4[i, j]; S_5[i, j]; S_19[i,
29   j] }", child: { schedule: "L_1[{ S_11[i, j] -> [(j)]; S_12[i, j] -> [(j)]; S_14[i,
30   j] -> [(j)]; S_15[i, j] -> [(j)]; S_18[i, j] -> [(j)]; S_10[i, j] -> [(j)]; S_13[i,
31   j] -> [(j)]; S_6[i, j] -> [(j)]; S_3[i, j] -> [(j)]; S_16[i, j] -> [(j)]; S_8[i,
32   j] -> [(j)]; S_9[i, j] -> [(j)]; S_17[i, j] -> [(j)]; S_20[i, j] -> [(j)]; S_2[i,
33   j] -> [(j)]; S_7[i, j] -> [(j)]; S_4[i, j] -> [(j)]; S_5[i, j] -> [(j)]; S_19[i,
34   j] -> [(j)] }]", child: { sequence: [ { filter: "{ S_2[i, j] }" }, { filter: "{
35   S_3[i, j] }" }, { filter: "{ S_4[i, j] }" }, { filter: "{ S_5[i, j] }" }, { filter:
36   "{ S_6[i, j] }" }, { filter: "{ S_7[i, j] }" }, { filter: "{ S_8[i, j] }" }, { filter:
37   "{ S_9[i, j] }" }, { filter: "{ S_10[i, j] }" }, { filter: "{ S_11[i, j] }" }, {
38   filter: "{ S_12[i, j]; S_13[i, j] }", child: { set: [ { filter: "{ S_12[i, j] }"
39   }, { filter: "{ S_13[i, j] }" } ] } }, { filter: "{ S_14[i, j]; S_15[i, j] }", child:
40   { set: [ { filter: "{ S_14[i, j] }" }, { filter: "{ S_15[i, j] }" } ] } }, { filter:
41   "{ S_16[i, j] }" }, { filter: "{ S_18[i, j]; S_17[i, j] }", child: { set: [ { filter:
42   "{ S_17[i, j] }" }, { filter: "{ S_18[i, j] }" } ] } }, { filter: "{ S_19[i, j]
43   }" }, { filter: "{ S_20[i, j] }" } ] } } }, { filter: "{ S_21[i] }" } ] } } }, {
44   filter: "{ S_22[]; S_24[]; S_23[] }", child: { set: [ { filter: "{ S_22[] }" },
45   { filter: "{ S_23[] }" }, { filter: "{ S_24[] }" } ] } } ] } }'
46 arrays:
47 - context: '{  :  }'
48   extent: '{ __pet_test_0[i, j] : 0 <= i <= 99 and 81 <= j <= 99 }'
49   value_bounds: '{ [i0] : 0 <= i0 <= 1 }'
50   element_type: int
51   element_size: 4
52   uniquely_defined: 1
53 - context: '{  :  }'
54   extent: '{ __pet_test_1[i, j] : 0 <= i <= 99 and 0 <= j <= 99 }'
55   value_bounds: '{ [i0] : 0 <= i0 <= 1 }'
56   element_type: int
57   element_size: 4
58   uniquely_defined: 1
59 - context: '{  :  }'
60   extent: '{ __pet_test_2[i, j] : 0 <= i <= 99 and 0 <= j <= 99 }'
61   value_bounds: '{ [i0] : 0 <= i0 <= 1 }'
62   element_type: int
63   element_size: 4
64   uniquely_defined: 1
65 - context: '{  :  }'
66   extent: '{ __pet_test_3[i, j] : 0 <= i <= 99 and 0 <= j <= 99 }'
67   value_bounds: '{ [i0] : 0 <= i0 <= 1 }'
68   element_type: int
69   element_size: 4
70   uniquely_defined: 1
71 - context: '{  :  }'
72   extent: '{ __pet_test_4[i, j] : 0 <= i <= 99 and 0 <= j <= 99 }'
73   value_bounds: '{ [i0] : 0 <= i0 <= 1 }'
74   element_type: int
75   element_size: 4
76   uniquely_defined: 1
77 - context: '{  :  }'
78   extent: '{ __pet_test_5[i, j] : 0 <= i <= 99 and 0 <= j <= 99 }'
79   value_bounds: '{ [i0] : 0 <= i0 <= 1 }'
80   element_type: int
81   element_size: 4
82   uniquely_defined: 1
83 - context: '{  :  }'
84   extent: '{ __pet_test_6[i, j] : 0 <= i <= 99 and 0 <= j <= 99 }'
85   value_bounds: '{ [i0] : 0 <= i0 <= 1 }'
86   element_type: int
87   element_size: 4
88   uniquely_defined: 1
89 - context: '{  :  }'
90   extent: '{ __pet_test_7[i, j] : 0 <= i <= 99 and 0 <= j <= 99 }'
91   value_bounds: '{ [i0] : 0 <= i0 <= 1 }'
92   element_type: int
93   element_size: 4
94   uniquely_defined: 1
95 - context: '{  :  }'
96   extent: '{ __pet_test_8[i, j] : 0 <= i <= 99 and 0 <= j <= 99 }'
97   value_bounds: '{ [i0] : 0 <= i0 <= 1 }'
98   element_type: int
99   element_size: 4
100   uniquely_defined: 1
101 - context: '{  :  }'
102   extent: '{ __pet_test_9[i, j] : 0 <= i <= 99 and 0 <= j <= 99 }'
103   value_bounds: '{ [i0] : 0 <= i0 <= 1 }'
104   element_type: int
105   element_size: 4
106   uniquely_defined: 1
107 - context: '{  :  }'
108   extent: '{ __pet_test_10[i, j] : 0 <= i <= 99 and 0 <= j <= 99 }'
109   value_bounds: '{ [i0] : 0 <= i0 <= 1 }'
110   element_type: int
111   element_size: 4
112   uniquely_defined: 1
113 - context: '{  :  }'
114   extent: '{ __pet_test_11[i, j] : 0 <= i <= 99 and 0 <= j <= 99 }'
115   value_bounds: '{ [i0] : 0 <= i0 <= 1 }'
116   element_type: int
117   element_size: 4
118   uniquely_defined: 1
119 - context: '{  :  }'
120   extent: '{ __pet_test_12[i, j] : 0 <= i <= 99 and 0 <= j <= 99 }'
121   value_bounds: '{ [i0] : 0 <= i0 <= 1 }'
122   element_type: int
123   element_size: 4
124   uniquely_defined: 1
125 - context: '{  :  }'
126   extent: '{ a[i0] : 0 <= i0 <= 99 }'
127   element_type: int
128   element_size: 4
129 - context: '{  :  }'
130   extent: '{ i[] }'
131   element_type: int
132   element_size: 4
133 - context: '{  :  }'
134   extent: '{ j[] }'
135   element_type: int
136   element_size: 4
137 statements:
138 - line: 8
139   domain: '{ S_0[] }'
140   body:
141     type: expression
142     expr:
143       type: op
144       operation: =
145       arguments:
146       - type: access
147         index: '{ S_0[] -> i[] }'
148         reference: __pet_ref_0
149         read: 0
150         write: 1
151       - type: int
152         value: 0
153 - line: 9
154   domain: '{ S_1[i] : 0 <= i <= 99 }'
155   body:
156     type: expression
157     expr:
158       type: op
159       operation: =
160       arguments:
161       - type: access
162         index: '{ S_1[i] -> j[] }'
163         reference: __pet_ref_1
164         read: 0
165         write: 1
166       - type: int
167         value: 0
168 - line: 10
169   domain: '{ [S_2[i, j] -> [__pet_test_12 = 0]] : 0 <= i <= 99 and 0 <= j <= 99 }'
170   body:
171     type: expression
172     expr:
173       type: op
174       operation: =
175       arguments:
176       - type: access
177         index: '{ S_2[i, j] -> a[(i)] }'
178         reference: __pet_ref_3
179         read: 0
180         write: 1
181       - type: int
182         value: 0
183   arguments:
184   - type: access
185     index: '{ S_2[i, j] -> __pet_test_12[(i), ((-1 + j) : j > 0)] }'
186     reference: __pet_ref_2
187     read: 1
188     write: 0
189 - line: 12
190   domain: '{ [S_3[i, j] -> [__pet_test_12 = 0]] : 0 <= i <= 99 and 81 <= j <= 99 }'
191   body:
192     type: expression
193     expr:
194       type: op
195       operation: =
196       arguments:
197       - type: access
198         index: '{ S_3[i, j] -> __pet_test_0[(i), (j)] }'
199         reference: __pet_ref_5
200         read: 0
201         write: 1
202       - type: call
203         name: f
204   arguments:
205   - type: access
206     index: '{ S_3[i, j] -> __pet_test_12[(i), (-1 + j)] }'
207     reference: __pet_ref_4
208     read: 1
209     write: 0
210 - line: -1
211   domain: '{ [S_4[i, j] -> [__pet_test_12 = 0]] : 0 <= i <= 99 and 0 <= j <= 99 }'
212   body:
213     type: expression
214     expr:
215       type: op
216       operation: =
217       arguments:
218       - type: access
219         index: '{ S_4[i, j] -> __pet_test_1[(i), (j)] }'
220         reference: __pet_ref_7
221         read: 0
222         write: 1
223       - type: op
224         operation: '?:'
225         arguments:
226         - type: access
227           index: '{ S_4[i, j] -> [((1) : j >= 81; (0) : j <= 80)] }'
228           reference: __pet_ref_8
229           read: 1
230           write: 0
231         - type: access
232           may_read: '{ S_4[i, j] -> __pet_test_0[i'' = i, j'' = j] : j >= 81 }'
233           index: '{ S_4[i, j] -> __pet_test_0[(i), (j)] }'
234           reference: __pet_ref_9
235           read: 1
236           write: 0
237         - type: access
238           index: '{ S_4[i, j] -> [(0)] }'
239           reference: __pet_ref_10
240           read: 1
241           write: 0
242   arguments:
243   - type: access
244     index: '{ S_4[i, j] -> __pet_test_12[(i), ((-1 + j) : j > 0)] }'
245     reference: __pet_ref_6
246     read: 1
247     write: 0
248 - line: 15
249   domain: '{ [S_5[i, j] -> [__pet_test_12 = 0, __pet_test_1 = 0]] : 0 <= i <= 99 and
250     0 <= j <= 99 }'
251   body:
252     type: expression
253     expr:
254       type: op
255       operation: =
256       arguments:
257       - type: access
258         index: '{ S_5[i, j] -> __pet_test_2[(i), (j)] }'
259         reference: __pet_ref_13
260         read: 0
261         write: 1
262       - type: call
263         name: f
264   arguments:
265   - type: access
266     index: '{ S_5[i, j] -> __pet_test_12[(i), ((-1 + j) : j > 0)] }'
267     reference: __pet_ref_11
268     read: 1
269     write: 0
270   - type: access
271     index: '{ S_5[i, j] -> __pet_test_1[(i), (j)] }'
272     reference: __pet_ref_12
273     read: 1
274     write: 0
275 - line: 16
276   domain: '{ [S_6[i, j] -> [__pet_test_12 = 0, __pet_test_1 = 0, __pet_test_2 = 1]]
277     : 0 <= i <= 99 and 0 <= j <= 99 }'
278   body:
279     type: expression
280     expr:
281       type: op
282       operation: =
283       arguments:
284       - type: access
285         index: '{ S_6[i, j] -> __pet_test_3[(i), (j)] }'
286         reference: __pet_ref_17
287         read: 0
288         write: 1
289       - type: call
290         name: f
291   arguments:
292   - type: access
293     index: '{ S_6[i, j] -> __pet_test_12[(i), ((-1 + j) : j > 0)] }'
294     reference: __pet_ref_14
295     read: 1
296     write: 0
297   - type: access
298     index: '{ S_6[i, j] -> __pet_test_1[(i), (j)] }'
299     reference: __pet_ref_15
300     read: 1
301     write: 0
302   - type: access
303     index: '{ S_6[i, j] -> __pet_test_2[(i), (j)] }'
304     reference: __pet_ref_16
305     read: 1
306     write: 0
307 - line: 18
308   domain: '{ [S_7[i, j] -> [__pet_test_12 = 0, __pet_test_1 = 0, __pet_test_2 = 1,
309     __pet_test_3 = 0]] : 0 <= i <= 99 and 0 <= j <= 99 }'
310   body:
311     type: expression
312     expr:
313       type: op
314       operation: =
315       arguments:
316       - type: access
317         index: '{ S_7[i, j] -> a[(i)] }'
318         reference: __pet_ref_22
319         read: 0
320         write: 1
321       - type: int
322         value: 1
323   arguments:
324   - type: access
325     index: '{ S_7[i, j] -> __pet_test_12[(i), ((-1 + j) : j > 0)] }'
326     reference: __pet_ref_18
327     read: 1
328     write: 0
329   - type: access
330     index: '{ S_7[i, j] -> __pet_test_1[(i), (j)] }'
331     reference: __pet_ref_19
332     read: 1
333     write: 0
334   - type: access
335     index: '{ S_7[i, j] -> __pet_test_2[(i), (j)] }'
336     reference: __pet_ref_20
337     read: 1
338     write: 0
339   - type: access
340     index: '{ S_7[i, j] -> __pet_test_3[(i), (j)] }'
341     reference: __pet_ref_21
342     read: 1
343     write: 0
344 - line: 19
345   domain: '{ [S_8[i, j] -> [__pet_test_12 = 0, __pet_test_1 = 0, __pet_test_2 = 1,
346     __pet_test_3 = 0]] : 0 <= i <= 99 and 0 <= j <= 99 }'
347   body:
348     type: expression
349     expr:
350       type: op
351       operation: =
352       arguments:
353       - type: access
354         index: '{ S_8[i, j] -> __pet_test_4[(i), (j)] }'
355         reference: __pet_ref_27
356         read: 0
357         write: 1
358       - type: call
359         name: f
360   arguments:
361   - type: access
362     index: '{ S_8[i, j] -> __pet_test_12[(i), ((-1 + j) : j > 0)] }'
363     reference: __pet_ref_23
364     read: 1
365     write: 0
366   - type: access
367     index: '{ S_8[i, j] -> __pet_test_1[(i), (j)] }'
368     reference: __pet_ref_24
369     read: 1
370     write: 0
371   - type: access
372     index: '{ S_8[i, j] -> __pet_test_2[(i), (j)] }'
373     reference: __pet_ref_25
374     read: 1
375     write: 0
376   - type: access
377     index: '{ S_8[i, j] -> __pet_test_3[(i), (j)] }'
378     reference: __pet_ref_26
379     read: 1
380     write: 0
381 - line: 22
382   domain: '{ [S_9[i, j] -> [__pet_test_12 = 0, __pet_test_1 = 0, __pet_test_2 = 1,
383     __pet_test_3 = 0, __pet_test_4 = 0]] : 0 <= i <= 99 and 0 <= j <= 99 }'
384   body:
385     type: expression
386     expr:
387       type: op
388       operation: =
389       arguments:
390       - type: access
391         index: '{ S_9[i, j] -> a[(i)] }'
392         reference: __pet_ref_33
393         read: 0
394         write: 1
395       - type: int
396         value: 2
397   arguments:
398   - type: access
399     index: '{ S_9[i, j] -> __pet_test_12[(i), ((-1 + j) : j > 0)] }'
400     reference: __pet_ref_28
401     read: 1
402     write: 0
403   - type: access
404     index: '{ S_9[i, j] -> __pet_test_1[(i), (j)] }'
405     reference: __pet_ref_29
406     read: 1
407     write: 0
408   - type: access
409     index: '{ S_9[i, j] -> __pet_test_2[(i), (j)] }'
410     reference: __pet_ref_30
411     read: 1
412     write: 0
413   - type: access
414     index: '{ S_9[i, j] -> __pet_test_3[(i), (j)] }'
415     reference: __pet_ref_31
416     read: 1
417     write: 0
418   - type: access
419     index: '{ S_9[i, j] -> __pet_test_4[(i), (j)] }'
420     reference: __pet_ref_32
421     read: 1
422     write: 0
423 - line: -1
424   domain: '{ [S_10[i, j] -> [__pet_test_12 = 0, __pet_test_1 = 0, __pet_test_2 = 1]]
425     : 0 <= i <= 99 and 0 <= j <= 99 }'
426   body:
427     type: expression
428     expr:
429       type: op
430       operation: =
431       arguments:
432       - type: access
433         index: '{ S_10[i, j] -> __pet_test_5[(i), (j)] }'
434         reference: __pet_ref_37
435         read: 0
436         write: 1
437       - type: op
438         operation: '?:'
439         arguments:
440         - type: access
441           index: '{ S_10[i, j] -> __pet_test_3[(i), (j)] }'
442           reference: __pet_ref_38
443           read: 1
444           write: 0
445         - type: access
446           index: '{ S_10[i, j] -> [(1)] }'
447           reference: __pet_ref_39
448           read: 1
449           write: 0
450         - type: access
451           may_read: '{ [S_10[i, j] -> [__pet_test_3 = 0]] -> __pet_test_4[i'' = i,
452             j'' = j] }'
453           index: '{ [S_10[i, j] -> [__pet_test_3]] -> __pet_test_4[(i), (j)] }'
454           reference: __pet_ref_41
455           read: 1
456           write: 0
457           arguments:
458           - type: access
459             index: '{ S_10[i, j] -> __pet_test_3[(i), (j)] }'
460             reference: __pet_ref_40
461             read: 1
462             write: 0
463   arguments:
464   - type: access
465     index: '{ S_10[i, j] -> __pet_test_12[(i), ((-1 + j) : j > 0)] }'
466     reference: __pet_ref_34
467     read: 1
468     write: 0
469   - type: access
470     index: '{ S_10[i, j] -> __pet_test_1[(i), (j)] }'
471     reference: __pet_ref_35
472     read: 1
473     write: 0
474   - type: access
475     index: '{ S_10[i, j] -> __pet_test_2[(i), (j)] }'
476     reference: __pet_ref_36
477     read: 1
478     write: 0
479 - line: 23
480   domain: '{ [S_11[i, j] -> [__pet_test_12 = 0, __pet_test_1 = 0, __pet_test_2 = 1,
481     __pet_test_5 = 0]] : 0 <= i <= 99 and 0 <= j <= 99 }'
482   body:
483     type: expression
484     expr:
485       type: op
486       operation: =
487       arguments:
488       - type: access
489         index: '{ S_11[i, j] -> a[(i)] }'
490         reference: __pet_ref_46
491         read: 0
492         write: 1
493       - type: int
494         value: 3
495   arguments:
496   - type: access
497     index: '{ S_11[i, j] -> __pet_test_12[(i), ((-1 + j) : j > 0)] }'
498     reference: __pet_ref_42
499     read: 1
500     write: 0
501   - type: access
502     index: '{ S_11[i, j] -> __pet_test_1[(i), (j)] }'
503     reference: __pet_ref_43
504     read: 1
505     write: 0
506   - type: access
507     index: '{ S_11[i, j] -> __pet_test_2[(i), (j)] }'
508     reference: __pet_ref_44
509     read: 1
510     write: 0
511   - type: access
512     index: '{ S_11[i, j] -> __pet_test_5[(i), (j)] }'
513     reference: __pet_ref_45
514     read: 1
515     write: 0
516 - line: -1
517   domain: '{ [S_12[i, j] -> [__pet_test_12 = 0, __pet_test_1 = 0]] : 0 <= i <= 99
518     and 0 <= j <= 99 }'
519   body:
520     type: expression
521     expr:
522       type: op
523       operation: =
524       arguments:
525       - type: access
526         index: '{ S_12[i, j] -> __pet_test_6[(i), (j)] }'
527         reference: __pet_ref_49
528         read: 0
529         write: 1
530       - type: op
531         operation: '?:'
532         arguments:
533         - type: access
534           index: '{ S_12[i, j] -> __pet_test_2[(i), (j)] }'
535           reference: __pet_ref_50
536           read: 1
537           write: 0
538         - type: access
539           may_read: '{ [S_12[i, j] -> [__pet_test_2 = 1]] -> __pet_test_5[i'' = i,
540             j'' = j] }'
541           index: '{ [S_12[i, j] -> [__pet_test_2]] -> __pet_test_5[(i), (j)] }'
542           reference: __pet_ref_52
543           read: 1
544           write: 0
545           arguments:
546           - type: access
547             index: '{ S_12[i, j] -> __pet_test_2[(i), (j)] }'
548             reference: __pet_ref_51
549             read: 1
550             write: 0
551         - type: access
552           index: '{ S_12[i, j] -> [(0)] }'
553           reference: __pet_ref_53
554           read: 1
555           write: 0
556   arguments:
557   - type: access
558     index: '{ S_12[i, j] -> __pet_test_12[(i), ((-1 + j) : j > 0)] }'
559     reference: __pet_ref_47
560     read: 1
561     write: 0
562   - type: access
563     index: '{ S_12[i, j] -> __pet_test_1[(i), (j)] }'
564     reference: __pet_ref_48
565     read: 1
566     write: 0
567 - line: -1
568   domain: '{ [S_13[i, j] -> [__pet_test_12 = 0, __pet_test_1 = 0]] : 0 <= i <= 99
569     and 0 <= j <= 99 }'
570   body:
571     type: expression
572     expr:
573       type: op
574       operation: =
575       arguments:
576       - type: access
577         index: '{ S_13[i, j] -> __pet_test_7[(i), (j)] }'
578         reference: __pet_ref_56
579         read: 0
580         write: 1
581       - type: op
582         operation: '?:'
583         arguments:
584         - type: access
585           index: '{ S_13[i, j] -> __pet_test_2[(i), (j)] }'
586           reference: __pet_ref_57
587           read: 1
588           write: 0
589         - type: access
590           may_read: '{ [S_13[i, j] -> [__pet_test_2 = 1]] -> __pet_test_3[i'' = i,
591             j'' = j] }'
592           index: '{ [S_13[i, j] -> [__pet_test_2]] -> __pet_test_3[(i), (j)] }'
593           reference: __pet_ref_59
594           read: 1
595           write: 0
596           arguments:
597           - type: access
598             index: '{ S_13[i, j] -> __pet_test_2[(i), (j)] }'
599             reference: __pet_ref_58
600             read: 1
601             write: 0
602         - type: access
603           index: '{ S_13[i, j] -> [(0)] }'
604           reference: __pet_ref_60
605           read: 1
606           write: 0
607   arguments:
608   - type: access
609     index: '{ S_13[i, j] -> __pet_test_12[(i), ((-1 + j) : j > 0)] }'
610     reference: __pet_ref_54
611     read: 1
612     write: 0
613   - type: access
614     index: '{ S_13[i, j] -> __pet_test_1[(i), (j)] }'
615     reference: __pet_ref_55
616     read: 1
617     write: 0
618 - line: -1
619   domain: '{ [S_14[i, j] -> [__pet_test_12 = 0]] : 0 <= i <= 99 and 0 <= j <= 99 }'
620   body:
621     type: expression
622     expr:
623       type: op
624       operation: =
625       arguments:
626       - type: access
627         index: '{ S_14[i, j] -> __pet_test_8[(i), (j)] }'
628         reference: __pet_ref_62
629         read: 0
630         write: 1
631       - type: op
632         operation: '?:'
633         arguments:
634         - type: access
635           index: '{ S_14[i, j] -> __pet_test_1[(i), (j)] }'
636           reference: __pet_ref_63
637           read: 1
638           write: 0
639         - type: access
640           index: '{ S_14[i, j] -> [(1)] }'
641           reference: __pet_ref_64
642           read: 1
643           write: 0
644         - type: access
645           may_read: '{ [S_14[i, j] -> [__pet_test_1 = 0]] -> __pet_test_6[i'' = i,
646             j'' = j] }'
647           index: '{ [S_14[i, j] -> [__pet_test_1]] -> __pet_test_6[(i), (j)] }'
648           reference: __pet_ref_66
649           read: 1
650           write: 0
651           arguments:
652           - type: access
653             index: '{ S_14[i, j] -> __pet_test_1[(i), (j)] }'
654             reference: __pet_ref_65
655             read: 1
656             write: 0
657   arguments:
658   - type: access
659     index: '{ S_14[i, j] -> __pet_test_12[(i), ((-1 + j) : j > 0)] }'
660     reference: __pet_ref_61
661     read: 1
662     write: 0
663 - line: -1
664   domain: '{ [S_15[i, j] -> [__pet_test_12 = 0]] : 0 <= i <= 99 and 0 <= j <= 99 }'
665   body:
666     type: expression
667     expr:
668       type: op
669       operation: =
670       arguments:
671       - type: access
672         index: '{ S_15[i, j] -> __pet_test_9[(i), (j)] }'
673         reference: __pet_ref_68
674         read: 0
675         write: 1
676       - type: op
677         operation: '?:'
678         arguments:
679         - type: access
680           index: '{ S_15[i, j] -> __pet_test_1[(i), (j)] }'
681           reference: __pet_ref_69
682           read: 1
683           write: 0
684         - type: access
685           index: '{ S_15[i, j] -> [(1)] }'
686           reference: __pet_ref_70
687           read: 1
688           write: 0
689         - type: access
690           may_read: '{ [S_15[i, j] -> [__pet_test_1 = 0]] -> __pet_test_7[i'' = i,
691             j'' = j] }'
692           index: '{ [S_15[i, j] -> [__pet_test_1]] -> __pet_test_7[(i), (j)] }'
693           reference: __pet_ref_72
694           read: 1
695           write: 0
696           arguments:
697           - type: access
698             index: '{ S_15[i, j] -> __pet_test_1[(i), (j)] }'
699             reference: __pet_ref_71
700             read: 1
701             write: 0
702   arguments:
703   - type: access
704     index: '{ S_15[i, j] -> __pet_test_12[(i), ((-1 + j) : j > 0)] }'
705     reference: __pet_ref_67
706     read: 1
707     write: 0
708 - line: 25
709   domain: '{ [S_16[i, j] -> [__pet_test_12 = 0, __pet_test_8 = 0]] : 0 <= i <= 99
710     and 0 <= j <= 99 }'
711   body:
712     type: expression
713     expr:
714       type: op
715       operation: =
716       arguments:
717       - type: access
718         index: '{ S_16[i, j] -> __pet_test_10[(i), (j)] }'
719         reference: __pet_ref_75
720         read: 0
721         write: 1
722       - type: call
723         name: f
724   arguments:
725   - type: access
726     index: '{ S_16[i, j] -> __pet_test_12[(i), ((-1 + j) : j > 0)] }'
727     reference: __pet_ref_73
728     read: 1
729     write: 0
730   - type: access
731     index: '{ S_16[i, j] -> __pet_test_8[(i), (j)] }'
732     reference: __pet_ref_74
733     read: 1
734     write: 0
735 - line: -1
736   domain: '{ [S_17[i, j] -> [__pet_test_12 = 0]] : 0 <= i <= 99 and 0 <= j <= 99 }'
737   body:
738     type: expression
739     expr:
740       type: op
741       operation: =
742       arguments:
743       - type: access
744         index: '{ S_17[i, j] -> __pet_test_11[(i), (j)] }'
745         reference: __pet_ref_77
746         read: 0
747         write: 1
748       - type: op
749         operation: '?:'
750         arguments:
751         - type: access
752           index: '{ S_17[i, j] -> __pet_test_8[(i), (j)] }'
753           reference: __pet_ref_78
754           read: 1
755           write: 0
756         - type: access
757           index: '{ S_17[i, j] -> [(1)] }'
758           reference: __pet_ref_79
759           read: 1
760           write: 0
761         - type: access
762           may_read: '{ [S_17[i, j] -> [__pet_test_8 = 0]] -> __pet_test_10[i'' = i,
763             j'' = j] }'
764           index: '{ [S_17[i, j] -> [__pet_test_8]] -> __pet_test_10[(i), (j)] }'
765           reference: __pet_ref_81
766           read: 1
767           write: 0
768           arguments:
769           - type: access
770             index: '{ S_17[i, j] -> __pet_test_8[(i), (j)] }'
771             reference: __pet_ref_80
772             read: 1
773             write: 0
774   arguments:
775   - type: access
776     index: '{ S_17[i, j] -> __pet_test_12[(i), ((-1 + j) : j > 0)] }'
777     reference: __pet_ref_76
778     read: 1
779     write: 0
780 - line: -1
781   domain: '{ [S_18[i, j] -> [__pet_test_12 = 0]] : 0 <= i <= 99 and 0 <= j <= 99 }'
782   body:
783     type: expression
784     expr:
785       type: op
786       operation: =
787       arguments:
788       - type: access
789         index: '{ S_18[i, j] -> __pet_test_12[(i), (j)] }'
790         reference: __pet_ref_83
791         read: 0
792         write: 1
793       - type: op
794         operation: '?:'
795         arguments:
796         - type: access
797           index: '{ S_18[i, j] -> __pet_test_9[(i), (j)] }'
798           reference: __pet_ref_84
799           read: 1
800           write: 0
801         - type: access
802           index: '{ S_18[i, j] -> [(1)] }'
803           reference: __pet_ref_85
804           read: 1
805           write: 0
806         - type: access
807           may_read: '{ [S_18[i, j] -> [__pet_test_9 = 0]] -> __pet_test_10[i'' = i,
808             j'' = j] }'
809           index: '{ [S_18[i, j] -> [__pet_test_9]] -> __pet_test_10[(i), (j)] }'
810           reference: __pet_ref_87
811           read: 1
812           write: 0
813           arguments:
814           - type: access
815             index: '{ S_18[i, j] -> __pet_test_9[(i), (j)] }'
816             reference: __pet_ref_86
817             read: 1
818             write: 0
819   arguments:
820   - type: access
821     index: '{ S_18[i, j] -> __pet_test_12[(i), ((-1 + j) : j > 0)] }'
822     reference: __pet_ref_82
823     read: 1
824     write: 0
825 - line: 27
826   domain: '{ [S_19[i, j] -> [__pet_test_12 = 0, __pet_test_11 = 0]] : 0 <= i <= 99
827     and 0 <= j <= 99 }'
828   body:
829     type: expression
830     expr:
831       type: op
832       operation: =
833       arguments:
834       - type: access
835         index: '{ S_19[i, j] -> a[(i)] }'
836         reference: __pet_ref_90
837         read: 0
838         write: 1
839       - type: access
840         index: '{ S_19[i, j] -> [(i + j)] }'
841         reference: __pet_ref_91
842         read: 1
843         write: 0
844   arguments:
845   - type: access
846     index: '{ S_19[i, j] -> __pet_test_12[(i), ((-1 + j) : j > 0)] }'
847     reference: __pet_ref_88
848     read: 1
849     write: 0
850   - type: access
851     index: '{ S_19[i, j] -> __pet_test_11[(i), (j)] }'
852     reference: __pet_ref_89
853     read: 1
854     write: 0
855 - line: 9
856   domain: '{ [S_20[i, j] -> [__pet_test_12 = 0]] : 0 <= i <= 99 and 0 <= j <= 99 }'
857   body:
858     type: expression
859     expr:
860       type: op
861       operation: =
862       arguments:
863       - type: access
864         index: '{ S_20[i, j] -> j[] }'
865         reference: __pet_ref_93
866         read: 0
867         write: 1
868       - type: access
869         index: '{ S_20[i, j] -> [(1 + j)] }'
870         reference: __pet_ref_94
871         read: 1
872         write: 0
873   arguments:
874   - type: access
875     index: '{ S_20[i, j] -> __pet_test_12[(i), (j)] }'
876     reference: __pet_ref_92
877     read: 1
878     write: 0
879 - line: 8
880   domain: '{ S_21[i] : 0 <= i <= 99 }'
881   body:
882     type: expression
883     expr:
884       type: op
885       operation: =
886       arguments:
887       - type: access
888         index: '{ S_21[i] -> i[] }'
889         reference: __pet_ref_95
890         read: 0
891         write: 1
892       - type: access
893         index: '{ S_21[i] -> [(1 + i)] }'
894         reference: __pet_ref_96
895         read: 1
896         write: 0
897 - line: -1
898   domain: '{ S_22[] }'
899   body:
900     type: expression
901     expr:
902       type: op
903       operation: kill
904       arguments:
905       - type: access
906         killed: '{ S_22[] -> i[] }'
907         index: '{ S_22[] -> i[] }'
908         reference: __pet_ref_97
909         kill: 1
910 - line: -1
911   domain: '{ S_23[] }'
912   body:
913     type: expression
914     expr:
915       type: op
916       operation: kill
917       arguments:
918       - type: access
919         killed: '{ S_23[] -> j[] }'
920         index: '{ S_23[] -> j[] }'
921         reference: __pet_ref_98
922         kill: 1
923 - line: -1
924   domain: '{ S_24[] }'
925   body:
926     type: expression
927     expr:
928       type: op
929       operation: kill
930       arguments:
931       - type: access
932         killed: '{ S_24[] -> a[o0] : 0 <= o0 <= 99 }'
933         index: '{ S_24[] -> a[] }'
934         depth: 1
935         reference: __pet_ref_99
936         kill: 1
937 implications:
938 - satisfied: 0
939   extension: '{ __pet_test_12[i, j] -> __pet_test_12[i'' = i, j''] : 0 <= i <= 99
940     and 0 <= j'' <= 99 and j'' <= j }'