summaryrefslogtreecommitdiff
path: root/omega/examples/basics
diff options
context:
space:
mode:
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};