Merge branch 'master' of github.com:periscop/clay
[clay.git] / tests / unitary / unroll2.c.clay.scop
blob64ccbf4bed0c725b92e1c04a0ab282884eda384a
2 <OpenScop>
4 # =============================================== Global
5 # Language
8 # Context
9 CONTEXT
10 0 5 0 0 0 3
12 # Parameters are provided
14 <strings>
15 N P M
16 </strings>
18 # Number of statements
21 # =============================================== Statement 1
22 # Number of relations describing the statement:
25 # ----------------------------------------------  1.1 Domain
26 DOMAIN
27 0 5 0 0 0 3
29 # ----------------------------------------------  1.2 Scattering
30 SCATTERING
31 1 6 1 0 0 3
32 # e/i| c1 |  N    P    M |  1  
33    0   -1    0    0    0    0    ## c1 == 0
35 # ----------------------------------------------  1.3 Access
36 WRITE
37 1 6 1 0 0 3
38 # e/i| Arr|  N    P    M |  1  
39    0   -1    0    0    0    1    ## Arr == a
41 # ----------------------------------------------  1.4 Statement Extensions
42 # Number of Statement Extensions
44 <body>
45 # Number of original iterators
47 # Statement body expression
48 a = 0;
49 </body>
51 # =============================================== Statement 2
52 # Number of relations describing the statement:
55 # ----------------------------------------------  2.1 Domain
56 DOMAIN
57 3 6 1 0 0 3
58 # e/i|  i |  N    P    M |  1  
59    1    1    0    0    0    0    ## i >= 0
60    1   -1    1    0    0    0    ## -i+N >= 0
61    1    0    1    0    0    0    ## N >= 0
63 # ----------------------------------------------  2.2 Scattering
64 SCATTERING
65 3 9 3 1 0 3
66 # e/i| c1   c2   c3 |  i |  N    P    M |  1  
67    0   -1    0    0    0    0    0    0    1    ## c1 == 1
68    0    0   -1    0    1    0    0    0    0    ## c2 == i
69    0    0    0   -1    0    0    0    0    0    ## c3 == 0
71 # ----------------------------------------------  2.3 Access
72 WRITE
73 2 8 2 1 0 3
74 # e/i| Arr  [1]|  i |  N    P    M |  1  
75    0   -1    0    0    0    0    0    4    ## Arr == b
76    0    0   -1    1    0    0    0    0    ## [1] == i
78 # ----------------------------------------------  2.4 Statement Extensions
79 # Number of Statement Extensions
81 <body>
82 # Number of original iterators
84 # List of original iterators
86 # Statement body expression
87 b[i] = 0;
88 </body>
90 # =============================================== Statement 3
91 # Number of relations describing the statement:
94 # ----------------------------------------------  3.1 Domain
95 DOMAIN
96 9 8 3 0 0 3
97 # e/i|  i    k    j |  N    P    M |  1  
98    1    1    0    0    0    0    0    0    ## i >= 0
99    1   -1    0    0    1    0    0    0    ## -i+N >= 0
100    1    0    0    0    1    0    0    0    ## N >= 0
101    1    0    1    0    0    0    0    0    ## k >= 0
102    1    0   -1    0    0    1    0    0    ## -k+P >= 0
103    1    0    0    0    0    1    0    0    ## P >= 0
104    1    0    0    1    0    0    0    0    ## j >= 0
105    1    0    0   -1    0    0    1   -4    ## -j+M-4 >= 0
106    1    0    0    0    0    0    1    0    ## M >= 0
108 # ----------------------------------------------  3.2 Scattering
109 SCATTERING
110 8 16 7 3 1 3
111 # e/i| c1   c2   c3   c4   c5   c6   c7 |  i    k    j | l1 |  N    P    M |  1  
112    0   -1    0    0    0    0    0    0    0    0    0    0    0    0    0    1    ## c1 == 1
113    0    0   -1    0    0    0    0    0    1    0    0    0    0    0    0    0    ## c2 == i
114    0    0    0   -1    0    0    0    0    0    0    0    0    0    0    0    1    ## c3 == 1
115    0    0    0    0   -1    0    0    0    0    1    0    0    0    0    0    0    ## c4 == k
116    0    0    0    0    0   -1    0    0    0    0    0    0    0    0    0    0    ## c5 == 0
117    0    0    0    0    0    0   -1    0    0    0    1    0    0    0    0    0    ## c6 == j
118    0    0    0    0    0    0    0   -1    0    0    0    0    0    0    0    0    ## c7 == 0
119    0    0    0    0    0    0    1    0    0    0    0   -4    0    0    0    0    ## c6 == 4*l1
121 # ----------------------------------------------  3.3 Access
122 WRITE
123 4 12 4 3 0 3
124 # e/i| Arr  [1]  [2]  [3]|  i    k    j |  N    P    M |  1  
125    0   -1    0    0    0    0    0    0    0    0    0    9    ## Arr == c
126    0    0   -1    0    0    1    0    0    0    0    0    0    ## [1] == i
127    0    0    0   -1    0    0    0    1    0    0    0    0    ## [2] == j
128    0    0    0    0   -1    0    1    0    0    0    0    0    ## [3] == k
130 # ----------------------------------------------  3.4 Statement Extensions
131 # Number of Statement Extensions
133 <body>
134 # Number of original iterators
136 # List of original iterators
137 i k j
138 # Statement body expression
139 c[i][j][k] = 0;
140 </body>
142 # =============================================== Statement 4
143 # Number of relations describing the statement:
146 # ----------------------------------------------  4.1 Domain
147 DOMAIN
148 8 8 3 0 0 3
149 # e/i|  i    k    j |  N    P    M |  1  
150    1    1    0    0    0    0    0    0    ## i >= 0
151    1   -1    0    0    1    0    0    0    ## -i+N >= 0
152    1    0    0    0    1    0    0    0    ## N >= 0
153    1    0    1    0    0    0    0    0    ## k >= 0
154    1    0   -1    0    0    1    0    0    ## -k+P >= 0
155    1    0    0    0    0    1    0    0    ## P >= 0
156    1    0    0   -1    0    0    1    0    ## -j+M >= 0
157    1    0    0    0    0    0    1    0    ## M >= 0
159 # ----------------------------------------------  4.2 Scattering
160 SCATTERING
161 7 15 7 3 0 3
162 # e/i| c1   c2   c3   c4   c5   c6   c7 |  i    k    j |  N    P    M |  1  
163    0   -1    0    0    0    0    0    0    0    0    0    0    0    0    1    ## c1 == 1
164    0    0   -1    0    0    0    0    0    1    0    0    0    0    0    0    ## c2 == i
165    0    0    0   -1    0    0    0    0    0    0    0    0    0    0    1    ## c3 == 1
166    0    0    0    0   -1    0    0    0    0    1    0    0    0    0    0    ## c4 == k
167    0    0    0    0    0   -1    0    0    0    0    0    0    0    0    1    ## c5 == 1
168    0    0    0    0    0    0   -1    0    0    0    1    0    0    0    0    ## c6 == j
169    0    0    0    0    0    0    0   -1    0    0    0    0    0    0    0    ## c7 == 0
171 # ----------------------------------------------  4.3 Access
172 WRITE
173 4 12 4 3 0 3
174 # e/i| Arr  [1]  [2]  [3]|  i    k    j |  N    P    M |  1  
175    0   -1    0    0    0    0    0    0    0    0    0    9    ## Arr == c
176    0    0   -1    0    0    1    0    0    0    0    0    0    ## [1] == i
177    0    0    0   -1    0    0    0    1    0    0    0    0    ## [2] == j
178    0    0    0    0   -1    0    1    0    0    0    0    0    ## [3] == k
180 # ----------------------------------------------  4.4 Statement Extensions
181 # Number of Statement Extensions
183 <body>
184 # Number of original iterators
186 # List of original iterators
187 i k j
188 # Statement body expression
189 c[i][j][k] = 0;
190 </body>
192 # =============================================== Statement 5
193 # Number of relations describing the statement:
196 # ----------------------------------------------  5.1 Domain
197 DOMAIN
198 9 8 3 0 0 3
199 # e/i|  i    k    j |  N    P    M |  1  
200    1    1    0    0    0    0    0    0    ## i >= 0
201    1   -1    0    0    1    0    0    0    ## -i+N >= 0
202    1    0    0    0    1    0    0    0    ## N >= 0
203    1    0    1    0    0    0    0    0    ## k >= 0
204    1    0   -1    0    0    1    0    0    ## -k+P >= 0
205    1    0    0    0    0    1    0    0    ## P >= 0
206    1    0    0    1    0    0    0    0    ## j >= 0
207    1    0    0   -1    0    0    1   -4    ## -j+M-4 >= 0
208    1    0    0    0    0    0    1    0    ## M >= 0
210 # ----------------------------------------------  5.2 Scattering
211 SCATTERING
212 8 16 7 3 1 3
213 # e/i| c1   c2   c3   c4   c5   c6   c7 |  i    k    j | l1 |  N    P    M |  1  
214    0   -1    0    0    0    0    0    0    0    0    0    0    0    0    0    1    ## c1 == 1
215    0    0   -1    0    0    0    0    0    1    0    0    0    0    0    0    0    ## c2 == i
216    0    0    0   -1    0    0    0    0    0    0    0    0    0    0    0    1    ## c3 == 1
217    0    0    0    0   -1    0    0    0    0    1    0    0    0    0    0    0    ## c4 == k
218    0    0    0    0    0   -1    0    0    0    0    0    0    0    0    0    0    ## c5 == 0
219    0    0    0    0    0    0   -1    0    0    0    1    0    0    0    0    0    ## c6 == j
220    0    0    0    0    0    0    0   -1    0    0    0    0    0    0    0    2    ## c7 == 2
221    0    0    0    0    0    0    1    0    0    0    0   -4    0    0    0    0    ## c6 == 4*l1
223 # ----------------------------------------------  5.3 Access
224 WRITE
225 4 12 4 3 0 3
226 # e/i| Arr  [1]  [2]  [3]|  i    k    j |  N    P    M |  1  
227    0   -1    0    0    0    0    0    0    0    0    0    9    ## Arr == c
228    0    0   -1    0    0    1    0    0    0    0    0    0    ## [1] == i
229    0    0    0   -1    0    0    0    1    0    0    0    0    ## [2] == j
230    0    0    0    0   -1    0    1    0    0    0    0    0    ## [3] == k
232 # ----------------------------------------------  5.4 Statement Extensions
233 # Number of Statement Extensions
235 <body>
236 # Number of original iterators
238 # List of original iterators
239 i k j
240 # Statement body expression
241 c[i][(j+1)][k] = 0;
242 </body>
244 # =============================================== Statement 6
245 # Number of relations describing the statement:
248 # ----------------------------------------------  6.1 Domain
249 DOMAIN
250 9 8 3 0 0 3
251 # e/i|  i    k    j |  N    P    M |  1  
252    1    1    0    0    0    0    0    0    ## i >= 0
253    1   -1    0    0    1    0    0    0    ## -i+N >= 0
254    1    0    0    0    1    0    0    0    ## N >= 0
255    1    0    1    0    0    0    0    0    ## k >= 0
256    1    0   -1    0    0    1    0    0    ## -k+P >= 0
257    1    0    0    0    0    1    0    0    ## P >= 0
258    1    0    0    1    0    0    0    0    ## j >= 0
259    1    0    0   -1    0    0    1   -4    ## -j+M-4 >= 0
260    1    0    0    0    0    0    1    0    ## M >= 0
262 # ----------------------------------------------  6.2 Scattering
263 SCATTERING
264 8 16 7 3 1 3
265 # e/i| c1   c2   c3   c4   c5   c6   c7 |  i    k    j | l1 |  N    P    M |  1  
266    0   -1    0    0    0    0    0    0    0    0    0    0    0    0    0    1    ## c1 == 1
267    0    0   -1    0    0    0    0    0    1    0    0    0    0    0    0    0    ## c2 == i
268    0    0    0   -1    0    0    0    0    0    0    0    0    0    0    0    1    ## c3 == 1
269    0    0    0    0   -1    0    0    0    0    1    0    0    0    0    0    0    ## c4 == k
270    0    0    0    0    0   -1    0    0    0    0    0    0    0    0    0    0    ## c5 == 0
271    0    0    0    0    0    0   -1    0    0    0    1    0    0    0    0    0    ## c6 == j
272    0    0    0    0    0    0    0   -1    0    0    0    0    0    0    0    4    ## c7 == 4
273    0    0    0    0    0    0    1    0    0    0    0   -4    0    0    0    0    ## c6 == 4*l1
275 # ----------------------------------------------  6.3 Access
276 WRITE
277 4 12 4 3 0 3
278 # e/i| Arr  [1]  [2]  [3]|  i    k    j |  N    P    M |  1  
279    0   -1    0    0    0    0    0    0    0    0    0    9    ## Arr == c
280    0    0   -1    0    0    1    0    0    0    0    0    0    ## [1] == i
281    0    0    0   -1    0    0    0    1    0    0    0    0    ## [2] == j
282    0    0    0    0   -1    0    1    0    0    0    0    0    ## [3] == k
284 # ----------------------------------------------  6.4 Statement Extensions
285 # Number of Statement Extensions
287 <body>
288 # Number of original iterators
290 # List of original iterators
291 i k j
292 # Statement body expression
293 c[i][(j+2)][k] = 0;
294 </body>
296 # =============================================== Statement 7
297 # Number of relations describing the statement:
300 # ----------------------------------------------  7.1 Domain
301 DOMAIN
302 9 8 3 0 0 3
303 # e/i|  i    k    j |  N    P    M |  1  
304    1    1    0    0    0    0    0    0    ## i >= 0
305    1   -1    0    0    1    0    0    0    ## -i+N >= 0
306    1    0    0    0    1    0    0    0    ## N >= 0
307    1    0    1    0    0    0    0    0    ## k >= 0
308    1    0   -1    0    0    1    0    0    ## -k+P >= 0
309    1    0    0    0    0    1    0    0    ## P >= 0
310    1    0    0    1    0    0    0    0    ## j >= 0
311    1    0    0   -1    0    0    1   -4    ## -j+M-4 >= 0
312    1    0    0    0    0    0    1    0    ## M >= 0
314 # ----------------------------------------------  7.2 Scattering
315 SCATTERING
316 8 16 7 3 1 3
317 # e/i| c1   c2   c3   c4   c5   c6   c7 |  i    k    j | l1 |  N    P    M |  1  
318    0   -1    0    0    0    0    0    0    0    0    0    0    0    0    0    1    ## c1 == 1
319    0    0   -1    0    0    0    0    0    1    0    0    0    0    0    0    0    ## c2 == i
320    0    0    0   -1    0    0    0    0    0    0    0    0    0    0    0    1    ## c3 == 1
321    0    0    0    0   -1    0    0    0    0    1    0    0    0    0    0    0    ## c4 == k
322    0    0    0    0    0   -1    0    0    0    0    0    0    0    0    0    0    ## c5 == 0
323    0    0    0    0    0    0   -1    0    0    0    1    0    0    0    0    0    ## c6 == j
324    0    0    0    0    0    0    0   -1    0    0    0    0    0    0    0    6    ## c7 == 6
325    0    0    0    0    0    0    1    0    0    0    0   -4    0    0    0    0    ## c6 == 4*l1
327 # ----------------------------------------------  7.3 Access
328 WRITE
329 4 12 4 3 0 3
330 # e/i| Arr  [1]  [2]  [3]|  i    k    j |  N    P    M |  1  
331    0   -1    0    0    0    0    0    0    0    0    0    9    ## Arr == c
332    0    0   -1    0    0    1    0    0    0    0    0    0    ## [1] == i
333    0    0    0   -1    0    0    0    1    0    0    0    0    ## [2] == j
334    0    0    0    0   -1    0    1    0    0    0    0    0    ## [3] == k
336 # ----------------------------------------------  7.4 Statement Extensions
337 # Number of Statement Extensions
339 <body>
340 # Number of original iterators
342 # List of original iterators
343 i k j
344 # Statement body expression
345 c[i][(j+3)][k] = 0;
346 </body>
348 # =============================================== Statement 8
349 # Number of relations describing the statement:
352 # ----------------------------------------------  8.1 Domain
353 DOMAIN
354 9 8 3 0 0 3
355 # e/i|  i    k    j |  N    P    M |  1  
356    1    1    0    0    0    0    0    0    ## i >= 0
357    1   -1    0    0    1    0    0    0    ## -i+N >= 0
358    1    0    0    0    1    0    0    0    ## N >= 0
359    1    0    1    0    0    0    0    0    ## k >= 0
360    1    0   -1    0    0    1    0    0    ## -k+P >= 0
361    1    0    0    0    0    1    0    0    ## P >= 0
362    1    0    0    1    0    0    0    0    ## j >= 0
363    1    0    0   -1    0    0    1   -4    ## -j+M-4 >= 0
364    1    0    0    0    0    0    1    0    ## M >= 0
366 # ----------------------------------------------  8.2 Scattering
367 SCATTERING
368 8 16 7 3 1 3
369 # e/i| c1   c2   c3   c4   c5   c6   c7 |  i    k    j | l1 |  N    P    M |  1  
370    0   -1    0    0    0    0    0    0    0    0    0    0    0    0    0    1    ## c1 == 1
371    0    0   -1    0    0    0    0    0    1    0    0    0    0    0    0    0    ## c2 == i
372    0    0    0   -1    0    0    0    0    0    0    0    0    0    0    0    1    ## c3 == 1
373    0    0    0    0   -1    0    0    0    0    1    0    0    0    0    0    0    ## c4 == k
374    0    0    0    0    0   -1    0    0    0    0    0    0    0    0    0    0    ## c5 == 0
375    0    0    0    0    0    0   -1    0    0    0    1    0    0    0    0    0    ## c6 == j
376    0    0    0    0    0    0    0   -1    0    0    0    0    0    0    0    1    ## c7 == 1
377    0    0    0    0    0    0    1    0    0    0    0   -4    0    0    0    0    ## c6 == 4*l1
379 # ----------------------------------------------  8.3 Access
380 WRITE
381 4 12 4 3 0 3
382 # e/i| Arr  [1]  [2]  [3]|  i    k    j |  N    P    M |  1  
383    0   -1    0    0    0    0    0    0    0    0    0   10    ## Arr == d
384    0    0   -1    0    0    1    0    0    0    0    0    0    ## [1] == i
385    0    0    0   -1    0    0    0    1    0    0    0    0    ## [2] == j
386    0    0    0    0   -1    0    1    0    0    0    0    0    ## [3] == k
388 # ----------------------------------------------  8.4 Statement Extensions
389 # Number of Statement Extensions
391 <body>
392 # Number of original iterators
394 # List of original iterators
395 i k j
396 # Statement body expression
397 d[i][j][k] = 0;
398 </body>
400 # =============================================== Statement 9
401 # Number of relations describing the statement:
404 # ----------------------------------------------  9.1 Domain
405 DOMAIN
406 8 8 3 0 0 3
407 # e/i|  i    k    j |  N    P    M |  1  
408    1    1    0    0    0    0    0    0    ## i >= 0
409    1   -1    0    0    1    0    0    0    ## -i+N >= 0
410    1    0    0    0    1    0    0    0    ## N >= 0
411    1    0    1    0    0    0    0    0    ## k >= 0
412    1    0   -1    0    0    1    0    0    ## -k+P >= 0
413    1    0    0    0    0    1    0    0    ## P >= 0
414    1    0    0   -1    0    0    1    0    ## -j+M >= 0
415    1    0    0    0    0    0    1    0    ## M >= 0
417 # ----------------------------------------------  9.2 Scattering
418 SCATTERING
419 7 15 7 3 0 3
420 # e/i| c1   c2   c3   c4   c5   c6   c7 |  i    k    j |  N    P    M |  1  
421    0   -1    0    0    0    0    0    0    0    0    0    0    0    0    1    ## c1 == 1
422    0    0   -1    0    0    0    0    0    1    0    0    0    0    0    0    ## c2 == i
423    0    0    0   -1    0    0    0    0    0    0    0    0    0    0    1    ## c3 == 1
424    0    0    0    0   -1    0    0    0    0    1    0    0    0    0    0    ## c4 == k
425    0    0    0    0    0   -1    0    0    0    0    0    0    0    0    1    ## c5 == 1
426    0    0    0    0    0    0   -1    0    0    0    1    0    0    0    0    ## c6 == j
427    0    0    0    0    0    0    0   -1    0    0    0    0    0    0    1    ## c7 == 1
429 # ----------------------------------------------  9.3 Access
430 WRITE
431 4 12 4 3 0 3
432 # e/i| Arr  [1]  [2]  [3]|  i    k    j |  N    P    M |  1  
433    0   -1    0    0    0    0    0    0    0    0    0   10    ## Arr == d
434    0    0   -1    0    0    1    0    0    0    0    0    0    ## [1] == i
435    0    0    0   -1    0    0    0    1    0    0    0    0    ## [2] == j
436    0    0    0    0   -1    0    1    0    0    0    0    0    ## [3] == k
438 # ----------------------------------------------  9.4 Statement Extensions
439 # Number of Statement Extensions
441 <body>
442 # Number of original iterators
444 # List of original iterators
445 i k j
446 # Statement body expression
447 d[i][j][k] = 0;
448 </body>
450 # =============================================== Statement 10
451 # Number of relations describing the statement:
454 # ---------------------------------------------- 10.1 Domain
455 DOMAIN
456 9 8 3 0 0 3
457 # e/i|  i    k    j |  N    P    M |  1  
458    1    1    0    0    0    0    0    0    ## i >= 0
459    1   -1    0    0    1    0    0    0    ## -i+N >= 0
460    1    0    0    0    1    0    0    0    ## N >= 0
461    1    0    1    0    0    0    0    0    ## k >= 0
462    1    0   -1    0    0    1    0    0    ## -k+P >= 0
463    1    0    0    0    0    1    0    0    ## P >= 0
464    1    0    0    1    0    0    0    0    ## j >= 0
465    1    0    0   -1    0    0    1   -4    ## -j+M-4 >= 0
466    1    0    0    0    0    0    1    0    ## M >= 0
468 # ---------------------------------------------- 10.2 Scattering
469 SCATTERING
470 8 16 7 3 1 3
471 # e/i| c1   c2   c3   c4   c5   c6   c7 |  i    k    j | l1 |  N    P    M |  1  
472    0   -1    0    0    0    0    0    0    0    0    0    0    0    0    0    1    ## c1 == 1
473    0    0   -1    0    0    0    0    0    1    0    0    0    0    0    0    0    ## c2 == i
474    0    0    0   -1    0    0    0    0    0    0    0    0    0    0    0    1    ## c3 == 1
475    0    0    0    0   -1    0    0    0    0    1    0    0    0    0    0    0    ## c4 == k
476    0    0    0    0    0   -1    0    0    0    0    0    0    0    0    0    0    ## c5 == 0
477    0    0    0    0    0    0   -1    0    0    0    1    0    0    0    0    0    ## c6 == j
478    0    0    0    0    0    0    0   -1    0    0    0    0    0    0    0    3    ## c7 == 3
479    0    0    0    0    0    0    1    0    0    0    0   -4    0    0    0    0    ## c6 == 4*l1
481 # ---------------------------------------------- 10.3 Access
482 WRITE
483 4 12 4 3 0 3
484 # e/i| Arr  [1]  [2]  [3]|  i    k    j |  N    P    M |  1  
485    0   -1    0    0    0    0    0    0    0    0    0   10    ## Arr == d
486    0    0   -1    0    0    1    0    0    0    0    0    0    ## [1] == i
487    0    0    0   -1    0    0    0    1    0    0    0    0    ## [2] == j
488    0    0    0    0   -1    0    1    0    0    0    0    0    ## [3] == k
490 # ---------------------------------------------- 10.4 Statement Extensions
491 # Number of Statement Extensions
493 <body>
494 # Number of original iterators
496 # List of original iterators
497 i k j
498 # Statement body expression
499 d[i][(j+1)][k] = 0;
500 </body>
502 # =============================================== Statement 11
503 # Number of relations describing the statement:
506 # ---------------------------------------------- 11.1 Domain
507 DOMAIN
508 9 8 3 0 0 3
509 # e/i|  i    k    j |  N    P    M |  1  
510    1    1    0    0    0    0    0    0    ## i >= 0
511    1   -1    0    0    1    0    0    0    ## -i+N >= 0
512    1    0    0    0    1    0    0    0    ## N >= 0
513    1    0    1    0    0    0    0    0    ## k >= 0
514    1    0   -1    0    0    1    0    0    ## -k+P >= 0
515    1    0    0    0    0    1    0    0    ## P >= 0
516    1    0    0    1    0    0    0    0    ## j >= 0
517    1    0    0   -1    0    0    1   -4    ## -j+M-4 >= 0
518    1    0    0    0    0    0    1    0    ## M >= 0
520 # ---------------------------------------------- 11.2 Scattering
521 SCATTERING
522 8 16 7 3 1 3
523 # e/i| c1   c2   c3   c4   c5   c6   c7 |  i    k    j | l1 |  N    P    M |  1  
524    0   -1    0    0    0    0    0    0    0    0    0    0    0    0    0    1    ## c1 == 1
525    0    0   -1    0    0    0    0    0    1    0    0    0    0    0    0    0    ## c2 == i
526    0    0    0   -1    0    0    0    0    0    0    0    0    0    0    0    1    ## c3 == 1
527    0    0    0    0   -1    0    0    0    0    1    0    0    0    0    0    0    ## c4 == k
528    0    0    0    0    0   -1    0    0    0    0    0    0    0    0    0    0    ## c5 == 0
529    0    0    0    0    0    0   -1    0    0    0    1    0    0    0    0    0    ## c6 == j
530    0    0    0    0    0    0    0   -1    0    0    0    0    0    0    0    5    ## c7 == 5
531    0    0    0    0    0    0    1    0    0    0    0   -4    0    0    0    0    ## c6 == 4*l1
533 # ---------------------------------------------- 11.3 Access
534 WRITE
535 4 12 4 3 0 3
536 # e/i| Arr  [1]  [2]  [3]|  i    k    j |  N    P    M |  1  
537    0   -1    0    0    0    0    0    0    0    0    0   10    ## Arr == d
538    0    0   -1    0    0    1    0    0    0    0    0    0    ## [1] == i
539    0    0    0   -1    0    0    0    1    0    0    0    0    ## [2] == j
540    0    0    0    0   -1    0    1    0    0    0    0    0    ## [3] == k
542 # ---------------------------------------------- 11.4 Statement Extensions
543 # Number of Statement Extensions
545 <body>
546 # Number of original iterators
548 # List of original iterators
549 i k j
550 # Statement body expression
551 d[i][(j+2)][k] = 0;
552 </body>
554 # =============================================== Statement 12
555 # Number of relations describing the statement:
558 # ---------------------------------------------- 12.1 Domain
559 DOMAIN
560 9 8 3 0 0 3
561 # e/i|  i    k    j |  N    P    M |  1  
562    1    1    0    0    0    0    0    0    ## i >= 0
563    1   -1    0    0    1    0    0    0    ## -i+N >= 0
564    1    0    0    0    1    0    0    0    ## N >= 0
565    1    0    1    0    0    0    0    0    ## k >= 0
566    1    0   -1    0    0    1    0    0    ## -k+P >= 0
567    1    0    0    0    0    1    0    0    ## P >= 0
568    1    0    0    1    0    0    0    0    ## j >= 0
569    1    0    0   -1    0    0    1   -4    ## -j+M-4 >= 0
570    1    0    0    0    0    0    1    0    ## M >= 0
572 # ---------------------------------------------- 12.2 Scattering
573 SCATTERING
574 8 16 7 3 1 3
575 # e/i| c1   c2   c3   c4   c5   c6   c7 |  i    k    j | l1 |  N    P    M |  1  
576    0   -1    0    0    0    0    0    0    0    0    0    0    0    0    0    1    ## c1 == 1
577    0    0   -1    0    0    0    0    0    1    0    0    0    0    0    0    0    ## c2 == i
578    0    0    0   -1    0    0    0    0    0    0    0    0    0    0    0    1    ## c3 == 1
579    0    0    0    0   -1    0    0    0    0    1    0    0    0    0    0    0    ## c4 == k
580    0    0    0    0    0   -1    0    0    0    0    0    0    0    0    0    0    ## c5 == 0
581    0    0    0    0    0    0   -1    0    0    0    1    0    0    0    0    0    ## c6 == j
582    0    0    0    0    0    0    0   -1    0    0    0    0    0    0    0    7    ## c7 == 7
583    0    0    0    0    0    0    1    0    0    0    0   -4    0    0    0    0    ## c6 == 4*l1
585 # ---------------------------------------------- 12.3 Access
586 WRITE
587 4 12 4 3 0 3
588 # e/i| Arr  [1]  [2]  [3]|  i    k    j |  N    P    M |  1  
589    0   -1    0    0    0    0    0    0    0    0    0   10    ## Arr == d
590    0    0   -1    0    0    1    0    0    0    0    0    0    ## [1] == i
591    0    0    0   -1    0    0    0    1    0    0    0    0    ## [2] == j
592    0    0    0    0   -1    0    1    0    0    0    0    0    ## [3] == k
594 # ---------------------------------------------- 12.4 Statement Extensions
595 # Number of Statement Extensions
597 <body>
598 # Number of original iterators
600 # List of original iterators
601 i k j
602 # Statement body expression
603 d[i][(j+3)][k] = 0;
604 </body>
606 # =============================================== Statement 13
607 # Number of relations describing the statement:
610 # ---------------------------------------------- 13.1 Domain
611 DOMAIN
612 3 6 1 0 0 3
613 # e/i|  i |  N    P    M |  1  
614    1    1    0    0    0    0    ## i >= 0
615    1   -1    1    0    0    0    ## -i+N >= 0
616    1    0    1    0    0    0    ## N >= 0
618 # ---------------------------------------------- 13.2 Scattering
619 SCATTERING
620 3 9 3 1 0 3
621 # e/i| c1   c2   c3 |  i |  N    P    M |  1  
622    0   -1    0    0    0    0    0    0    1    ## c1 == 1
623    0    0   -1    0    1    0    0    0    0    ## c2 == i
624    0    0    0   -1    0    0    0    0    2    ## c3 == 2
626 # ---------------------------------------------- 13.3 Access
627 WRITE
628 2 8 2 1 0 3
629 # e/i| Arr  [1]|  i |  N    P    M |  1  
630    0   -1    0    0    0    0    0   11    ## Arr == e
631    0    0   -1    1    0    0    0    0    ## [1] == i
633 # ---------------------------------------------- 13.4 Statement Extensions
634 # Number of Statement Extensions
636 <body>
637 # Number of original iterators
639 # List of original iterators
641 # Statement body expression
642 e[i] = 0;
643 </body>
645 # =============================================== Statement 14
646 # Number of relations describing the statement:
649 # ---------------------------------------------- 14.1 Domain
650 DOMAIN
651 0 5 0 0 0 3
653 # ---------------------------------------------- 14.2 Scattering
654 SCATTERING
655 1 6 1 0 0 3
656 # e/i| c1 |  N    P    M |  1  
657    0   -1    0    0    0    2    ## c1 == 2
659 # ---------------------------------------------- 14.3 Access
660 WRITE
661 1 6 1 0 0 3
662 # e/i| Arr|  N    P    M |  1  
663    0   -1    0    0    0   12    ## Arr == f
665 # ---------------------------------------------- 14.4 Statement Extensions
666 # Number of Statement Extensions
668 <body>
669 # Number of original iterators
671 # Statement body expression
672 f = 0;
673 </body>
675 # =============================================== Extensions
676 <scatnames>
677 b0 i b1 k b2 j b3
678 </scatnames>
680 <arrays>
681 # Number of arrays
683 # Mapping array-identifiers/array-names
684 1 a
685 2 i
686 3 N
687 4 b
688 5 k
689 6 P
690 7 j
691 8 M
692 9 c
693 10 d
694 11 e
695 12 f
696 </arrays>
698 <coordinates>
699 # File name
700 ./unitary/unroll2.c
701 # Starting line and column
702 2 0
703 # Ending line and column
704 17 0
705 # Indentation
707 </coordinates>
709 </OpenScop>