diff options
author | Tuowen Zhao <ztuowen@gmail.com> | 2016-09-17 03:22:53 +0000 |
---|---|---|
committer | Tuowen Zhao <ztuowen@gmail.com> | 2016-09-17 03:22:53 +0000 |
commit | 75ff98e4d65862ff5b36b533b4f6e3ea71ede1d5 (patch) | |
tree | 498ac06b4cf78568b807fafd2619856afff69c28 /omegalib/examples/basics.out | |
parent | 29efa7b1a0d089e02a70f73f348f11878955287c (diff) | |
download | chill-75ff98e4d65862ff5b36b533b4f6e3ea71ede1d5.tar.gz chill-75ff98e4d65862ff5b36b533b4f6e3ea71ede1d5.tar.bz2 chill-75ff98e4d65862ff5b36b533b4f6e3ea71ede1d5.zip |
cmake build
Diffstat (limited to 'omegalib/examples/basics.out')
-rw-r--r-- | omegalib/examples/basics.out | 76 |
1 files changed, 76 insertions, 0 deletions
diff --git a/omegalib/examples/basics.out b/omegalib/examples/basics.out new file mode 100644 index 0000000..6f8f2bb --- /dev/null +++ b/omegalib/examples/basics.out @@ -0,0 +1,76 @@ +>>> # +>>> # 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; +{[i] -> [i+1] : 1 <= i <= 9} +>>> inverse R; +{[i] -> [i-1] : 2 <= i <= 10} +>>> domain R; +{[i]: 1 <= i <= 9} +>>> range R; +{[i]: 2 <= i <= 10} +>>> R compose R; +{[i] -> [i+2] : 1 <= i <= 8} +>>> R+; +{[i] -> [i'] : 1 <= i < i' <= 10} +>>> # closure of R = R union (R compose R) union (R compose R ... +>>> complement R; +{[i] -> [i'] : i <= 0} union + {[i] -> [i'] : 10 <= i} union + {[i] -> [i'] : 1, i' <= i <= 9} union + {[i] -> [i'] : 1 <= i <= 9, i'-2} +>>> S := {[i] : 5 <= i <= 25}; +>>> S; +{[i]: 5 <= i <= 25} +>>> R(S); +{[i]: 6 <= i <= 10} +>>> # apply R to S +>>> R \ S; +{[i] -> [i+1] : 5 <= i <= 9} +>>> # restrict domain of R to S +>>> R / S; +{[i] -> [i+1] : 4 <= i <= 9} +>>> # restrict range of R to S +>>> (R\S) union (R/S); +{[i] -> [i+1] : 4 <= i <= 9} +>>> (R\S) intersection (R/S); +{[i] -> [i+1] : 5 <= i <= 9} +>>> (R/S) - (R\S); +{[4] -> [5] } +>>> S*S; +{[i] -> [i'] : 5 <= i <= 25 && 5 <= i' <= 25} +>>> # cross product +>>> D := S - {[9:16:2]} - {[17:19]}; +>>> D; +{[i]: 5 <= i <= 8} union + {[i]: exists ( alpha : 2alpha = i && 10 <= i <= 16)} union + {[i]: 20 <= i <= 25} +>>> T := { [i] : 1 <= i <= 11 & exists (a : i = 2a) }; +>>> T; +{[i]: exists ( alpha : 2alpha = i && 2 <= i <= 10)} +>>> Hull T; +{[i]: exists ( alpha : 2alpha = i && 2 <= i <= 10)} +>>> Hull D; +{[i]: 5 <= i <= 25} +>>> codegen D; +for(t1 = 5; t1 <= 8; t1++) { + s0(t1); +} +for(t1 = 10; t1 <= 16; t1 += 2) { + s0(t1); +} +for(t1 = 20; t1 <= 25; t1++) { + s0(t1); +} + +>>> codegen {[i,j] : 1 <= i+j,j <= 10}; +for(t1 = -9; t1 <= 9; t1++) { + for(t2 = max(1,-t1+1); t2 <= min(-t1+10,10); t2++) { + s0(t1,t2); + } +} + +>>> |