1#         program cholesau
2#
3#        integer i, j, k,l,n
4#        real a(10,10),s1(10,10),s2(10),s3(10,10,10),s4(10,10)
5#
6#         do i=1,n
7#              do j =1,i-1
8#                   if (j.EQ.1) then
9#                         s1(i,j)=a(i,j)s4(j,i)**2
10#                    else
11#                         s1(i,j)=s1(i,j-1)-s4(j,i)**2
12#                    end if
13#              end do
14#              if (i .EQ. 1) then
15#                   s2(i)=sqrt(a(i,i))
16#              else
17#                   s2(i)=sqrt (s1(i,i-1))
18#              end if
19#              do k=i+1,n
20#                   do l=1,i-1
21#                       if (l .EQ. 1) then
22#                           s3(i,k,l)=a(k,i)-(s4(l,k)*s4(l,i))
23#                       else
24#                            s3(i,k,l)=s3(i,k,l-1)-(s4(l,k)*s4(l,i))
25#                       end if
26#                   end do
27#                   if (i .EQ.1) then
28#                         s4(i,k)=a(k,i)/s2(i)
29#                   else
30#                         s4(i,k)=s3(i,k,i-1)/s2(i)
31#                   end if
32#              end do
33#         end do
34#        end
35
36
37# language: FORTRAN
38f
39
40# One parameter : n >= 10
411 3
42#  n  1
431  1 -10
44# We want to set the parameter names...
451
46# and 'n' is the name of the unique parameter
47n
48
498 # Number of statements: 8.
50
511
52# {i, j | 1<=i<=n; 1<=j<=i-1; j=1}
535 5
54#  i  j  n  1
551  1  0  0 -1 # 1<=i
561 -1  0  1  0 # i<=n
571  0  1  0 -1 # 1<=j
581  1 -1  0 -1 # j<=i-1
590  0  1  0 -1 # j=1
600  0  0
61
622
63# {i, j | 1<=i<=n; 1<=j<=i-1; j!=1}
645 5
65#  i  j  n  1
661  1  0  0 -1 # 1<=i
671 -1  0  1  0 # i<=n
681  0  1  0 -1 # 1<=j
691  1 -1  0 -1 # j<=i-1
701  0  1  0 -2 # j>=2
715 5
72#  i  j  n  1
731  1  0  0 -1 # 1<=i
741 -1  0  1  0 # i<=n
751  0  1  0 -1 # 1<=j
761  1 -1  0 -1 # j<=i-1
771  0 -1  0  0 # j<=0
780  0  0
79
801
81# {i | 1<=i<=n; i=1}
823 4
83#  i  n  1
841  1  0 -1 # 1<=i
851 -1  1  0 # i<=n
860  1  0 -1 # i=1
870  0  0
88
892
90# {i | 1<=i<=n; i!=1}
913 4
92#  i  n  1
931  1  0 -1 # 1<=i
941 -1  1  0 # i<=n
951  1  0 -2 # i>=2
963 4
97#  i  n  1
981  1  0 -1 # 1<=i
991 -1  1  0 # i<=n
1001 -1  0  0 # i<=0
1010  0  0
102
1031
104# {i, j | 1<=i<=n; i+1<=j<=n; 1<=k<=i-1; k=1}
1057 6
106#  i  j  k  n  1
1071  1  0  0  0 -1 # 1<=i
1081 -1  0  0  1  0 # i<=n
1091 -1  1  0  0 -1 # i+1<=j
1101  0 -1  0  1  0 # j<=n
1111  0  0  1  0 -1 # 1<=k
1121  1  0 -1  0 -1 # k<=i-1
1130  0  0  1  0 -1 # k=1
1140  0  0
115
1162
117# {i, j | 1<=i<=n; i+1<=j<=n; 1<=k<=i-1; k!=1}
1187 6
119#  i  j  k  n  1
1201  1  0  0  0 -1 # 1<=i
1211 -1  0  0  1  0 # i<=n
1221 -1  1  0  0 -1 # i+1<=j
1231  0 -1  0  1  0 # j<=n
1241  0  0  1  0 -1 # 1<=k
1251  1  0 -1  0 -1 # k<=i-1
1261  0  0  1  0 -2 # k>=2
1277 6
128#  i  j  k  n  1
1291  1  0  0  0 -1 # 1<=i
1301 -1  0  0  1  0 # i<=n
1311 -1  1  0  0 -1 # i+1<=j
1321  0 -1  0  1  0 # j<=n
1331  0  0  1  0 -1 # 1<=k
1341  1  0 -1  0 -1 # k<=i-1
1351  0  0 -1  0  0 # k<=0
1360  0  0
137
1381
139# {i, j | 1<=i<=n; i+1<=j<=n; i=1}
1405 5
141#  i  j  n  1
1421  1  0  0 -1 # 1<=i
1431 -1  0  1  0 # i<=n
1441 -1  1  0 -1 # i+1<=j
1451  0 -1  1  0 # j<=n
1460  1  0  0 -1 # i=1
1470  0  0
148
1492
150# {i, j | 1<=i<=n; i+1<=j<=n; i!=1}
1515 5
152#  i  j  n  1
1531  1  0  0 -1 # 1<=i
1541 -1  0  1  0 # i<=n
1551 -1  1  0 -1 # i+1<=j
1561  0 -1  1  0 # j<=n
1571  1  0  0 -2 # i>=2
1585 5
159#  i  j  n  1
1601  1  0  0 -1 # 1<=i
1611 -1  0  1  0 # i<=n
1621 -1  1  0 -1 # i+1<=j
1631  0 -1  1  0 # j<=n
1641 -1  0  0  0 # i<=0
1650  0  0
166
167# We want to let CLooG set the iterator names.
1680
169
1708
171# Scattering functions ALLOCATION + ORIGINAL SCHEDULING
1727 12
173#  p c1 c2 c3 c4 c5 c6  i  j  n  1
1740  1  0  0  0  0  0  0 -1 -1  0  1 # ins1 : i+j-1
1750  0  1  0  0  0  0  0 -1  0  0  0 # i
1760  0  0  1  0  0  0  0  0  0  0  0 # 0
1770  0  0  0  1  0  0  0  0 -1  0  0 # j
1780  0  0  0  0  1  0  0  0  0  0  0 # 0
1790  0  0  0  0  0  1  0  0  0  0  0 # 0
1800  0  0  0  0  0  0  1  0  0  0  0 # 0
181
1827 12
183#  p c1 c2 c3 c4 c5 c6  i  j  n  1
1840  1  0  0  0  0  0  0 -1  0  0  0 # ins2 : i
1850  0  1  0  0  0  0  0 -1  0  0  0 # i
1860  0  0  1  0  0  0  0  0  0  0  0 # 0
1870  0  0  0  1  0  0  0  0 -1  0  0 # j
1880  0  0  0  0  1  0  0  0  0  0 -1 # 1
1890  0  0  0  0  0  1  0  0  0  0  0 # 0
1900  0  0  0  0  0  0  1  0  0  0  0 # 0
191
1927 11
193#  p c1 c2 c3 c4 c5 c6  i  n  1
1940  1  0  0  0  0  0  0 -1  0  1 # ins3 : i-1
1950  0  1  0  0  0  0  0 -1  0  0 # i
1960  0  0  1  0  0  0  0  0  0 -1 # 1
1970  0  0  0  1  0  0  0  0  0  0 # 0
1980  0  0  0  0  1  0  0  0  0  0 # 0
1990  0  0  0  0  0  1  0  0  0  0 # 0
2000  0  0  0  0  0  0  1  0  0  0 # 0
201
2027 11
203#  p c1 c2 c3 c4 c5 c6  i  n  1
2040  1  0  0  0  0  0  0  0  0  0 # ins4 : 0
2050  0  1  0  0  0  0  0 -1  0  0 # i
2060  0  0  1  0  0  0  0  0  0 -2 # 2
2070  0  0  0  1  0  0  0  0  0  0 # 0
2080  0  0  0  0  1  0  0  0  0  0 # 0
2090  0  0  0  0  0  1  0  0  0  0 # 0
2100  0  0  0  0  0  0  1  0  0  0 # 0
211
2127 13
213#  p c1 c2 c3 c4 c5 c6  i  j  k  n  1
2140  1  0  0  0  0  0  0  0 -1 -1  0  1 # ins 5 : j+k-1
2150  0  1  0  0  0  0  0 -1  0  0  0  0 # i
2160  0  0  1  0  0  0  0  0  0  0  0 -3 # 3
2170  0  0  0  1  0  0  0  0 -1  0  0  0 # j
2180  0  0  0  0  1  0  0  0  0  0  0  0 # 0
2190  0  0  0  0  0  1  0  0  0 -1  0  0 # k
2200  0  0  0  0  0  0  1  0  0  0  0  0 # 0
221
2227 13
223#  p c1 c2 c3 c4 c5 c6  i  j  k  n  1
2240  1  0  0  0  0  0  0  0  0 -1  0  0 # ins 6 : k
2250  0  1  0  0  0  0  0 -1  0  0  0  0 # i
2260  0  0  1  0  0  0  0  0  0  0  0 -3 # 3
2270  0  0  0  1  0  0  0  0 -1  0  0  0 # j
2280  0  0  0  0  1  0  0  0  0  0  0  0 # 0
2290  0  0  0  0  0  1  0  0  0 -1  0  0 # k
2300  0  0  0  0  0  0  1  0  0  0  0 -1 # 1
231
2327 12
233#  p c1 c2 c3 c4 c5 c6  i  j  n  1
2340  1  0  0  0  0  0  0 -1 -1  0  0 # ins 7 : i+j
2350  0  1  0  0  0  0  0 -1  0  0  0 # i
2360  0  0  1  0  0  0  0  0  0  0 -3 # 3
2370  0  0  0  1  0  0  0  0 -1  0  0 # j
2380  0  0  0  0  1  0  0  0  0  0 -1 # 1
2390  0  0  0  0  0  1  0  0  0  0  0 # 0
2400  0  0  0  0  0  0  1  0  0  0  0 # 0
241
2427 12
243#  p c1 c2 c3 c4 c5 c6  i  j  n  1
2440  1  0  0  0  0  0  0  0 -1  0  0 # ins 8 : j
2450  0  1  0  0  0  0  0 -1  0  0  0 # i
2460  0  0  1  0  0  0  0  0  0  0 -3 # 3
2470  0  0  0  1  0  0  0  0 -1  0  0 # j
2480  0  0  0  0  1  0  0  0  0  0 -2 # 2
2490  0  0  0  0  0  1  0  0  0  0  0 # 0
2500  0  0  0  0  0  0  1  0  0  0  0 # 0
251
2521 # We want to set the scatering dimension names.
253proc c1 c2 c3 c4 c5 c6
254
255