2 context: '[N] -> { : N <= 21 and N >= 7 }'
3 iterator_map: '{ [c0, c1] -> [c0] }'
5 all_iterators: [c0, c1]
7 - {name: N, lb: '{ [(7)] }', ub: '{ [(21)] }', val: '{ [(20)] }'}
13 - {var: {access: '[N] -> { ND_0[i0] -> in_0ND_0[] }', type: int}, type: value}
15 - {var: {access: '[N] -> { ND_0[i0] -> out_1ND_0[] }', type: int}, type: return}
17 bounds: '[N] -> { ND_0[0] }'
19 bounds: '[N] -> { ND_0[0] }'
20 schedule: '[N] -> { ND_0[0] -> [0, 0] }'
22 - {name: in_0ND_0, expr: '[N] -> { ND_0[c0] -> [(0)] : c0 = 0 }'}
27 - {var: {access: '[N] -> { ND_1[i0] -> in_0ND_1[] }', type: int}, type: value}
29 bounds: '[N] -> { ND_1[0] }'
31 bounds: '[N] -> { ND_1[0] }'
32 schedule: '[N] -> { ND_1[0] -> [0, 0] }'
34 - {name: in_0ND_1, expr: '[N] -> { ND_1[c0] -> [(0)] : c0 = 0 }'}
39 - {var: {access: '[N] -> { ND_2[i0] -> in_0ND_2[] }', type: int}, type: value}
41 - {var: {access: '[N] -> { ND_2[i0] -> out_1ND_2[] }', type: int}, type: return}
43 bounds: '[N] -> { ND_2[i0] : i0 <= -1 + N and i0 >= 0 }'
45 bounds: '[N] -> { ND_2[i0] : i0 <= -1 + N and i0 >= 0 }'
46 schedule: '[N] -> { ND_2[i0] -> [i0, 0] : i0 <= -1 + N and i0 >= 0 }'
48 - name: ND_2OP_ED_0_0_V_1
52 - {access: '[N] -> { ND_2[i0] -> out_1ND_2[] }', type: int}
54 bounds: '[N] -> { ND_2[i0] : i0 <= -1 + N and i0 >= 0 and N <= 21 and N >= 7
56 - name: ND_2OP_ED_1_0_V_1
60 - {access: '[N] -> { ND_2[i0] -> out_1ND_2[] }', type: int}
62 bounds: '[N] -> { ND_2[i0] : i0 <= -1 + N and i0 >= 0 and N <= 21 and N >= 7
65 - {name: in_0ND_2, expr: '[N] -> { ND_2[c0] -> [(c0)] }'}
70 - {var: {access: '[N] -> { [ND_3[i0] -> [i1]] -> in_1ND_3[] }', type: int}, type: value}
72 - {var: {access: '[N] -> { [ND_3[i0] -> [i1]] -> out_2ND_3[] }', type: int}, type: return}
74 bounds: '[N] -> { [ND_3[i0] -> [1]] : N >= 7 and N <= 21 and i0 <= -1 + N and
77 - {access: '[N] -> { [ND_3[i0] -> [i1]] -> in_0ND_3[] }', type: int}
79 bounds: '[N] -> { ND_3[i0] : N >= 7 and N <= 21 and i0 <= -1 + N and i0 >= 0 }'
80 schedule: '[N] -> { ND_3[i0] -> [i0, 1] : N >= 7 and N <= 21 and i0 <= -1 + N and
83 - name: ND_3IP_ED_0_0_V_0
87 - {access: '[N] -> { [ND_3[i0] -> local[]] -> in_0ND_3[] }', type: int}
89 bounds: '[N] -> { [ND_3[i0] -> local[]] : i0 <= -1 + N and i0 >= 0 and N <=
92 - name: ND_3OP_ED_2_0_V_2
96 - {access: '[N] -> { [ND_3[i0] -> [i1]] -> out_2ND_3[] }', type: int}
98 bounds: '[N] -> { [ND_3[i0] -> [1]] : i0 <= -1 + N and i0 >= 0 and N <= 21 and
101 - {access: '[N] -> { [ND_3[i0] -> [i1]] -> in_0ND_3[] }', type: int}
103 - {name: in_1ND_3, expr: '[N] -> { ND_3[c0] -> [(c0)] : N >= 7 and N <= 21 }'}
108 - {var: {access: '[N] -> { [ND_4[i0] -> [i1]] -> in_1ND_4[] }', type: int}, type: value}
110 bounds: '[N] -> { [ND_4[i0] -> [1]] : N >= 7 and N <= 21 and i0 <= -1 + N and
113 - {access: '[N] -> { [ND_4[i0] -> [i1]] -> in_0ND_4[] }', type: int}
115 bounds: '[N] -> { ND_4[i0] : N >= 7 and N <= 21 and i0 <= -1 + N and i0 >= 0 }'
116 schedule: '[N] -> { ND_4[i0] -> [i0, 2] : N >= 7 and N <= 21 and i0 <= -1 + N and
119 - name: ND_4IP_ED_1_0_V_0
123 - {access: '[N] -> { [ND_4[i0] -> local[]] -> in_0ND_4[] }', type: int}
125 bounds: '[N] -> { [ND_4[i0] -> local[]] : i0 <= -1 + N and i0 >= 0 and N <=
127 - name: ND_4IP_ED_2_0_V_1
131 - {access: '[N] -> { [[ND_4[i0] -> [i1]] -> local[]] -> in_1ND_4[] }', type: int}
133 bounds: '[N] -> { [[ND_4[i0] -> [1]] -> local[]] : i0 <= -1 + N and i0 >= 0
134 and N <= 21 and N >= 7 }'
136 - {access: '[N] -> { [ND_4[i0] -> [i1]] -> in_0ND_4[] }', type: int}
140 map: '[N] -> { lifted[ND_3[i0] -> local[]] -> ND_2[(i0)] }'
142 from_port: ND_2OP_ED_0_0_V_1
144 to_port: ND_3IP_ED_0_0_V_0
148 map: '[N] -> { lifted[ND_4[i0] -> local[]] -> ND_2[(i0)] }'
150 from_port: ND_2OP_ED_1_0_V_1
152 to_port: ND_4IP_ED_1_0_V_0
156 map: '[N] -> { lifted[[ND_4[i0] -> [i1]] -> local[]] -> ND_3[(i0)] }'
158 from_port: ND_3OP_ED_2_0_V_2
160 to_port: ND_4IP_ED_2_0_V_1