diff options
Diffstat (limited to 'omegalib/examples/old_test/closure2.oc-rt')
-rw-r--r-- | omegalib/examples/old_test/closure2.oc-rt | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/omegalib/examples/old_test/closure2.oc-rt b/omegalib/examples/old_test/closure2.oc-rt new file mode 100644 index 0000000..e10a428 --- /dev/null +++ b/omegalib/examples/old_test/closure2.oc-rt @@ -0,0 +1,22 @@ +# Omega Calculator v1.2 (based on Omega Library 1.2, August, 2000): +# R := {[i,j] -> [i+3,j]} union {[i,j] -> [i+2,j-1]} union {[i,j] -> [i+1,j+1]}; +# +# R+; + +{[i,j] -> [Out_1,j'] : Out_1+2j' = i+2j && j' < j} union + {[i,j] -> [Out_1,j'] : Exists ( alpha : i+j' = j+Out_1+3alpha && 3+i+2j <= Out_1+2j' && i+j' <= j+Out_1)} + +# +# R+ compose R; + +{[i,j] -> [Out_1,j'] : Out_1+2j' = i+2j && j' <= j-2} union + {[i,j] -> [Out_1,j'] : Exists ( alpha : i+j' = j+Out_1+3alpha && 3+i+2j <= Out_1+2j' && 3+i+j' <= j+Out_1)} union + {[i,j] -> [Out_1,j'] : Exists ( alpha : i+j' = j+Out_1+3alpha && 6+i+2j <= Out_1+2j' && i+j' <= j+Out_1)} + +# +# R - (R+ compose R); + +{[i,j] -> [i+2,j-1] } union + {[i,j] -> [i+1,j+1] } + +# |