summaryrefslogtreecommitdiff
path: root/omega/examples/basics
diff options
context:
space:
mode:
authorDerick Huth <derickhuth@gmail.com>2014-10-06 12:42:34 -0600
committerDerick Huth <derickhuth@gmail.com>2014-10-06 12:42:34 -0600
commit8d73c8fcc75556c1df71dd39dd99783f8f86fc3e (patch)
tree157d627863d76a4c256a27cae27ce2e8566c7ea0 /omega/examples/basics
parente87b55ad69f0ac6211daae741b32c8ee9dcbe470 (diff)
parent8c646f24570079eac53e58fcf42d0d4fbc437ee3 (diff)
downloadchill-8d73c8fcc75556c1df71dd39dd99783f8f86fc3e.tar.gz
chill-8d73c8fcc75556c1df71dd39dd99783f8f86fc3e.tar.bz2
chill-8d73c8fcc75556c1df71dd39dd99783f8f86fc3e.zip
Merge pull request #2 from dhuth/master
Moved omega into chill.
Diffstat (limited to 'omega/examples/basics')
-rw-r--r--omega/examples/basics30
1 files changed, 30 insertions, 0 deletions
diff --git a/omega/examples/basics b/omega/examples/basics
new file mode 100644
index 0000000..9f0728d
--- /dev/null
+++ b/omega/examples/basics
@@ -0,0 +1,30 @@
+#
+# Some examples from the documentation for the Omega Calculator
+# This is the input for figures 2 and 3.
+#
+
+R := { [i] -> [i'] : 1 <= i,i' <= 10 && i' = i+1 };
+R;
+inverse R;
+domain R;
+range R;
+R compose R;
+R+; # closure of R = R union (R compose R) union (R compose R ...
+complement R;
+S := {[i] : 5 <= i <= 25};
+S;
+R(S); # apply R to S
+R \ S; # restrict domain of R to S
+R / S; # restrict range of R to S
+(R\S) union (R/S);
+(R\S) intersection (R/S);
+(R/S) - (R\S);
+S*S; # cross product
+D := S - {[9:16:2]} - {[17:19]};
+D;
+T := { [i] : 1 <= i <= 11 & exists (a : i = 2a) };
+T;
+Hull T;
+Hull D;
+codegen D;
+codegen {[i,j] : 1 <= i+j,j <= 10};