#419 Simplifying inf and minf

open
nobody
7
2008-04-05
2003-10-08
Stavros Macrakis
No

The general simplifier currently treats the various non-
standard objects (inf, minf, und, ind, infinity) as though
they were ordinary variables.

This leads to incorrect results (inf-inf => 0, inf*0 => 0),
incomplete simplification (inf^3 doesn't simplify, though
inf is always correct), and non-canonical representations
(-minf doesn't simplify to inf).

It also seems to me that minf should be represented
uniformly as -inf, not as a special case.

Special-casing these objects in the general simplifier will
add a very small overhead to all simplifications.

The case that reminded me of this problem is abs(minf)
=>-minf.

Discussion

  • Logged In: YES
    user_id=588346

    More problematic cases with inverse functions:

    asin(sin(inf)) => inf

    This should either not simplify, or give IND (if it is clever) or
    UND (if it is less clever).

    but

    exp(log(inf)) => inf
    tan(atan(inf)) => inf

    and the like are OK (by accident, but, hey!)

     
  • Robert Dodier
    Robert Dodier
    2006-07-11

    • labels: --> Lisp Core - Simplification
     
  • Robert Dodier
    Robert Dodier
    2008-04-05

    • priority: 5 --> 7
     
  • Robert Dodier
    Robert Dodier
    2008-04-05

    Logged In: YES
    user_id=501686
    Originator: NO

    Increasing the priority of this item. See also [ 1562671 ] Handling of infinities.