I'm not sure why you call this overloading or are critical of it. An
interval is after all as a special kind of set; that is, interval(2,3)
== { x | 2 < x < 3 } (leaving aside the < vs. ? issue). Of course,
there are various *interpretations* of that set -- all possible
values, superset of possible values, etc. etc.
A limit set is a well-defined notion in analysis. The limit set of
sin(x) as x->inf is in fact { x | -1 ? x ? 1 } i.e. interval(-1,1).
The main problem with intervals here is of course that it can't
represent general sets. For example, the limit set of 1/sin(x) as x->
inf is Union(interval(1,inf),interval(-inf,-1)).
And 'arithmetic' on limit sets works like arithmetic on intervals in
the sense that you get a *superset* of the correct answer....
-s
On Tue, Sep 8, 2009 at 12:42 PM, Richard Fateman<fateman at cs.berkeley.edu> wrote:
> I've been critical of Mathematica's use of Intervals? for the result of
> Limit, but perhaps we could come up with something similar.
>
> Mathematica says this..
>
> Limit[Sin[x],x->Infinity]??? is? Interval[{-1,1}]
>
> I object to the overloading of the "interval" arithmetic to represent this,
> but I would not mind a notion of a limit set or constraint or something like
> that.
>
> e.g.? limit(sin(x),x,inf)? might be? bounds(-1,1).
>
> To some extent? bounds(a,b) can be handled arithmetically like an interval
> (which Maxima does not have now anyway!)
> but it fails to satisfy the epsilon-delta kind of definition of limit, or
> consequences that follow from that. But I have not
> fully thought this through.
> RJF
>
> For people with access to Mathematica, try
> Limit[Tan[x]^2+Sec[x]^2,x->Infinity]
>
> Raymond Toy wrote:
>
> Barton Willis wrote:
>
>
> I was playing with the idea of appending a simplim%function for the
> hypergeometric
> functions. To start, I wrote some 100% fake code:
>
>
>
>
> [snip]
>
>
> Limit assumes continuity?
>
> (%i14) limit(hypergeometric([a],[b],x),x,0);
> (%o14) 1
>
> Limit doesn't even try limit-hg?
>
> (%i16) limit(hypergeometric([a],[b],x),a,0);
> (%o16) limit(hypergeometric([a],[b],x),a,0)
>
>
>
>
> This is caused by the following in simplimit:
>
> (defmfun simplimit (exp var val &aux op)
> (cond
> ((eq var exp) val)
> ((or (atom exp) (mnump exp)) exp)
> ((and (not (infinityp val))
> ;; *** HERE ***
> (not (amongl '(%sin %cos %atanh %cosh %sinh %tanh mfactorial %log)
> exp))
> (not (inf-typep exp))
> (simplimsubst val exp)))
>
> Since hypergeometric isn't among the list of "special" functions,
> simplimsubst is called.
>
> This looks like a bug in simplimit. The list of special functions needs
> to expanded. Or probably better, it should be removed and the rest of
> the code adjusted accordingly so that the special limit functions can
> decide what to do about continuity and such.
>
> Ray
>
> _______________________________________________
> Maxima mailing list
> Maxima at math.utexas.edu
> http://www.math.utexas.edu/mailman/listinfo/maxima
>
>
> _______________________________________________
> Maxima mailing list
> Maxima at math.utexas.edu
> http://www.math.utexas.edu/mailman/listinfo/maxima
>
>