summaryrefslogtreecommitdiff
path: root/omega/examples/old_test/ge.oc-rt
diff options
context:
space:
mode:
authordhuth <derickhuth@gmail.com>2014-11-21 13:35:20 -0700
committerdhuth <derickhuth@gmail.com>2014-11-21 13:35:20 -0700
commita1834b22c43c282442b0cb164767e6c877cf0e5b (patch)
treebedc5be7d1bdb8d32c1868caa496a8a1530d8d8a /omega/examples/old_test/ge.oc-rt
parentded84bb4aec7461738e7b7033d782a518e2c606b (diff)
parenteb9236c5353785472ae132f27e1cfb9f1e4264a5 (diff)
downloadchill-a1834b22c43c282442b0cb164767e6c877cf0e5b.tar.gz
chill-a1834b22c43c282442b0cb164767e6c877cf0e5b.tar.bz2
chill-a1834b22c43c282442b0cb164767e6c877cf0e5b.zip
Merge branch 'master' into doe
Diffstat (limited to 'omega/examples/old_test/ge.oc-rt')
-rw-r--r--omega/examples/old_test/ge.oc-rt38
1 files changed, 38 insertions, 0 deletions
diff --git a/omega/examples/old_test/ge.oc-rt b/omega/examples/old_test/ge.oc-rt
new file mode 100644
index 0000000..1006fe5
--- /dev/null
+++ b/omega/examples/old_test/ge.oc-rt
@@ -0,0 +1,38 @@
+>>> symbolic n;
+>>> I1 := {[k,i] : 1 <= k < i <= n };
+>>> I2 := {[k,i,j] : 1 <= k < i,j <= n };
+>>> T1 := {[k,i] -> [i,k,1,0]};
+>>> T2 := {[k,i,j] -> [i,j,0,k]};
+>>> T1(I1);
+{[i,k,1,0]: 1 <= k < i <= n}
+>>> T2(I2);
+{[i,j,0,k]: 1 <= k < i,j <= n}
+>>> codegen T1:I1,T2:I2;
+for(t1 = 2; t1 <= n; t1++) {
+ for(t2 = 1; t2 <= n; t2++) {
+ for(t4 = 1; t4 <= min(t1-1,t2-1); t4++) {
+ s2(t4,t1,t2);
+ }
+ if (t2 <= t1-1) {
+ s1(t2,t1);
+ }
+ }
+}
+
+>>> codegen 2 T1:I1,T2:I2;
+for(t1 = 2; t1 <= n; t1++) {
+ s1(1,t1);
+ for(t2 = 2; t2 <= t1-1; t2++) {
+ for(t4 = 1; t4 <= t2-1; t4++) {
+ s2(t4,t1,t2);
+ }
+ s1(t2,t1);
+ }
+ for(t2 = t1; t2 <= n; t2++) {
+ for(t4 = 1; t4 <= t1-1; t4++) {
+ s2(t4,t1,t2);
+ }
+ }
+}
+
+