Simplification of infinities



Am Sonntag, den 06.12.2009, 12:48 -0800 schrieb Richard Fateman:
> Dieter Kaiser wrote
> 
> ...
> 
> >  I have done it this way, to avoid to look every time into
> > the nested lists of an expression.
> >
> >   
> That is a big help.
> 
> Here are some more possible approaches:
> 
> simplus and simptimes  can be given expressions which have, at the 
> top-level, many expressions.  (Consider a dense polynomial of degree 
> 10,000).
> 
> If the subexpressions are sorted, and in the sorting order all the 
> special cases of inf, infinity, und,   etc.  come out at the front, then 
> it may be
> faster to find them.
> 
> Also, intersection may not the be right program, since all you need to 
> know is "is the intersection empty".   Intersection keeps on looking, 
> even after
> the intersection is known to be non-nil.  That is, it will look all the 
> way to the end.

Yes, the function intersection might be not the right way to implement
the algorithm. As written at this time I am interested in a working
algorithm.

I have tried several attempts to overcome the problems, because of the
missing handling of infinities. This way is the first which works well
with the whole core code of Maxima. A lot of problems might vanish or
work more correct.

I have done a first test to check the time needed for the extra
overhead. I develop Maxima on a (slow) notebook with CLISP 2.44, Ubuntu
9.10, 1800 MHZ, and 355 MB Ram. The realtime and runtime are increased
about 0,7% with the code to simplify the infinities when I run the
testsuite.

Dieter Kaiser