Omega Calculator examples

Robert Bernecky <bernecky@acm.org>
11 Sep 2001 23:17:49 -0400

          From comp.compilers

Related articles
Omega Calculator examples bernecky@acm.org (Robert Bernecky) (2001-09-11)
Re: Omega Calculator examples rus@tamu.edu (Silvius Rus) (2001-09-16)
| List of all articles for this month |

From: Robert Bernecky <bernecky@acm.org>
Newsgroups: comp.compilers
Date: 11 Sep 2001 23:17:49 -0400
Organization: Snake Island Research Inc
Keywords: tools, question
Posted-Date: 11 Sep 2001 23:17:49 EDT

I've been trying to use the Linux version of the Omega Calculator, and
am not having a whole lot of luck with it. The only documentation I
have at hand is:


"The Omega Calculator and Library, version 1.1.0"
and
"The Omega Library, version 1.1.0 Interface Guide"


The interface guide tells how to invoke Omega from C++; the calculator
actually presents one example.


However, what I can't find is the "Owner's Guide" or reference manual
that tells what it is, how to use it in practice ( e.g., Why you want
to compute hulls and why you need several flavors of them, etc.), and
some real-life examples from the land of compilers.


I'm feeling dumb, because I see all these compilers papers that say
"Oh, we use the Omega Calculator", as if it was a photocopier.


Any citations or examples would help.


The types of problems I'm trying to solve with this are basically of
two forms:


a. Simplification of symbolic expressions. For example,
          X + Y + (-X) + 4 - 3


      Things are slightly more complex than this with sporadic multiplication
      and divide-with-remainder, but I may be able to do without those for now.


b. Intersection of two symbolically expressed arithmetic progression
      vectors,
      of the form [Start,Stride, Count] or equivalent, where Count may be
      unknown:
Start, Start+ Stride, start + 2* Stride...
      but I may have knowledge of the arithmetic relationship between the
two counts.
      I get the impression that if both Strides are symbolic, then the
problem
      is undecidable. This is usually not going to be a problem for me.


If there are other tools around that can do this sort of thing with
less work, particularly less computation, I'm very interested in those
as well.


Thanks.
Bob


--
Robert Bernecky Snake Island Research Inc.
bernecky@acm.org 18 Fifth Street, Ward's Island
+1 416 203 0854 Toronto, Ontario M5J 2B9 Canada
http://www.snakeisland.com


Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.