1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
|
# Omega Calculator v1.2 (based on Omega Library 1.2, August, 2000):
#
# Symbolic a1,a2,a3,b1,b2,b3;
#
#
# IS1 := {[i] : a1 <= i <= b1 };
#
# IS2 := {[i] : a2 <= i <= b2 };
#
# IS3 := {[i] : a3 <= i <= b3 };
#
#
# T1 := {[i] -> [i,0]};
#
# T2 := {[i] -> [i,1]};
#
# T3 := {[i] -> [i,2]};
#
#
# codegen T1:IS1,T2:IS2,T3:IS3;
for(t1 = a3; t1 <= min(b3,a1-1,a2-1); t1++) {
s3(t1);
}
for(t1 = a2; t1 <= min(b2,a1-1,a3-1,b3); t1++) {
s2(t1);
}
for(t1 = max(a2,a3); t1 <= min(a1-1,b2,b3); t1++) {
s2(t1);
s3(t1);
}
for(t1 = max(a2,b3+1); t1 <= min(b2,a1-1); t1++) {
s2(t1);
}
for(t1 = max(a3,a2,b2+1); t1 <= min(b3,a1-1); t1++) {
s3(t1);
}
for(t1 = a1; t1 <= min(b1,a3-1,b3,a2-1); t1++) {
s1(t1);
}
for(t1 = max(a1,a3); t1 <= min(b1,a2-1,b3); t1++) {
s1(t1);
s3(t1);
}
for(t1 = max(a1,b3+1); t1 <= min(b1,a2-1); t1++) {
s1(t1);
}
for(t1 = max(a1,a2); t1 <= min(b1,b2,a3-1); t1++) {
s1(t1);
s2(t1);
}
for(t1 = max(a1,a2,a3); t1 <= min(b1,b2,b3); t1++) {
s1(t1);
s2(t1);
s3(t1);
}
for(t1 = max(a1,a2,a3,b3+1); t1 <= min(b1,b2); t1++) {
s1(t1);
s2(t1);
}
for(t1 = max(a1,b2+1,a2); t1 <= min(b1,a3-1); t1++) {
s1(t1);
}
for(t1 = max(a1,a2,b2+1,a3); t1 <= min(b1,b3); t1++) {
s1(t1);
s3(t1);
}
for(t1 = max(a1,b3+1,a3,a2,b2+1); t1 <= b1; t1++) {
s1(t1);
}
for(t1 = max(a3,a1,b1+1); t1 <= min(b3,b2,a2-1); t1++) {
s3(t1);
}
for(t1 = max(a2,a1,b1+1); t1 <= min(b2,a3-1); t1++) {
s2(t1);
}
for(t1 = max(a1,b1+1,a2,a3); t1 <= min(b2,b3); t1++) {
s2(t1);
s3(t1);
}
for(t1 = max(a2,a1,b1+1,b3+1,a3); t1 <= b2; t1++) {
s2(t1);
}
for(t1 = max(a3,a1,b1+1,b2+1); t1 <= b3; t1++) {
s3(t1);
}
#
|