summaryrefslogtreecommitdiff
path: root/omega/examples/union.out
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/union.out
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/union.out')
-rw-r--r--omega/examples/union.out96
1 files changed, 96 insertions, 0 deletions
diff --git a/omega/examples/union.out b/omega/examples/union.out
new file mode 100644
index 0000000..bf42f02
--- /dev/null
+++ b/omega/examples/union.out
@@ -0,0 +1,96 @@
+>>> # test ConvexRepresentation
+>>>
+>>> symbolic n;
+>>>
+>>> #
+>>> # result is convex, same behavior as PairwiseCheck
+>>> #
+>>> r1:={[i,j]: 0<=i,j<=100};
+>>> r2:={[i,j]: i>=100 && j>=0 && i+j<=200};
+>>> r3:={[i,j]: i>=0 && j>=100 && i+j<=200};
+>>> PairwiseCheck (r1 union r2 union r3);
+{[i,j]: 0 <= i <= -j+200 && 0 <= j}
+>>> ConvexRepresentation (r1 union r2 union r3);
+{[i,j]: 0 <= i <= -j+200 && 0 <= j}
+>>>
+>>> r1:={[i]: 1<=i<=n && exists (alpha: i=2alpha)};
+>>> r2:={[i]: 1<=i<=n && exists (alpha: i=2alpha+1)};
+>>> PairwiseCheck (r1 union r2);
+{[i]: 1 <= i <= n}
+>>> ConvexRepresentation (r1 union r2);
+{[i]: 1 <= i <= n}
+>>>
+>>> #
+>>> # test neighboring regions merge
+>>> #
+>>> r1:={[i]: 1<=i<=9 && exists (alpha: i=2alpha+1)};
+>>> r2:={[i]: 9<=i<=99 && exists (alpha: i=2alpha+1)};
+>>> PairwiseCheck (r1 union r2);
+{[i]: Exists ( alpha : 2alpha = 1+i && 1 <= i <= 9)} union
+ {[i]: Exists ( alpha : 2alpha = 1+i && 9 <= i <= 99)}
+>>> ConvexRepresentation (r1 union r2);
+{[i]: Exists ( alpha : 2alpha = 1+i && 1 <= i <= 99)}
+>>>
+>>> r1:={[i,j]:1<=i,j<=100};
+>>> r2:={[i,j]:50<=i<=100 && 100<=j<=200};
+>>> r3:={[i,j]:1<=i<=50 && 100<=j<=200};
+>>> r4:={[i,j]: 1000<=i,j<=2000};
+>>> PairwiseCheck (r1 union r2 union r3 union r4);
+{[i,j]: 1 <= i <= 100 && 1 <= j <= 100} union
+ {[i,j]: 50 <= i <= 100 && 100 <= j <= 200} union
+ {[i,j]: 1 <= i <= 50 && 100 <= j <= 200} union
+ {[i,j]: 1000 <= i <= 2000 && 1000 <= j <= 2000}
+>>> ConvexRepresentation (r1 union r2 union r3 union r4);
+{[i,j]: 1 <= i <= 100 && 1 <= j <= 200} union
+ {[i,j]: 1000 <= i <= 2000 && 1000 <= j <= 2000}
+>>>
+>>> #
+>>> # test stride condition merge, filling up holes
+>>> #
+>>> r1:={[i]:1<=i<=100 && exists (alpha: 1+7alpha<=i<=3+7alpha)};
+>>> r2:={[i]:1<=i<=100 && exists (alpha: i=4+7alpha)};
+>>> r3:={[i]:1<=i<=100 && exists (alpha: i=5+7alpha)};
+>>> r4:={[i]:1<=i<=100 && exists (alpha: 6+7alpha<=i<=9+7alpha)};
+>>> PairwiseCheck (r1 union r2 union r3);
+{[i]: Exists ( alpha : 1, 7alpha+1 <= i <= 100, 7alpha+3)} union
+ {[i]: Exists ( alpha : 3+i = 7alpha && 4 <= i <= 95)} union
+ {[i]: Exists ( alpha : 2+i = 7alpha && 5 <= i <= 96)}
+>>> ConvexRepresentation (r1 union r2 union r3);
+{[i]: Exists ( alpha : 1, 7alpha+1 <= i <= 100, 7alpha+5)}
+>>>
+>>> PairwiseCheck (r1 union r2 union r4);
+{[i]: Exists ( alpha : 1, 7alpha+1 <= i <= 100, 7alpha+3)} union
+ {[i]: Exists ( alpha : 3+i = 7alpha && 4 <= i <= 95)} union
+ {[i]: Exists ( alpha : 1, 7alpha+6 <= i <= 100, 7alpha+9)}
+>>> ConvexRepresentation (r1 union r2 union r4);
+{[i]: Exists ( alpha : 1, 7alpha+6 <= i <= 100, 7alpha+11)}
+>>>
+>>> r1:={[i]:6<=i<=96 && exists (alpha: i=6alpha)};
+>>> r2:={[i]:3<=i<=93 && exists (alpha: i=3+6alpha)};
+>>> PairwiseCheck (r1 union r2);
+{[i]: Exists ( alpha : i = 6alpha && 6 <= i <= 96)} union
+ {[i]: Exists ( alpha : i = 3+6alpha && 3 <= i <= 93)}
+>>> ConvexRepresentation (r1 union r2);
+{[i]: Exists ( alpha : i = 3alpha && 3 <= i <= 96)}
+>>>
+>>> r1:={[i]:1<=i<=100 && exists (alpha: 1+15alpha<=i<=4+15alpha)};
+>>> r2:={[i]:1<=i<=100 && exists (alpha: 6+15alpha<=i<=8+15alpha)};
+>>> r3:={[i]:1<=i<=100 && exists (alpha: 11+15alpha<=i<=13+15alpha)};
+>>> PairwiseCheck (r1 union r2 union r3);
+{[i]: Exists ( alpha : 1, 15alpha+1 <= i <= 100, 15alpha+4)} union
+ {[i]: Exists ( alpha : 1, 15alpha+6 <= i <= 100, 15alpha+8)} union
+ {[i]: Exists ( alpha : 1, 15alpha+11 <= i <= 100, 15alpha+13)}
+>>> ConvexRepresentation (r1 union r2 union r3);
+{[i]: Exists ( alpha : i = 4+15alpha && 4 <= i <= 94)} union
+ {[i]: Exists ( alpha : 1, 5alpha+1 <= i <= 100, 5alpha+3)}
+>>>
+>>> #
+>>> # additional test cases
+>>> #
+>>> r1:={[i]:0<=i<=100};
+>>> r2:={[i]: 10<=i<=100 && exists (alpha: i=1+5alpha)};
+>>> PairwiseCheck (r1 union r2);
+{[i]: 0 <= i <= 100}
+>>> ConvexRepresentation (r1 union r2);
+{[i]: 0 <= i <= 100}
+>>>