[Date Index]
[Thread Index]
[Author Index]
Re: Re: is 3?
*To*: mathgroup at smc.vnet.net
*Subject*: [mg73725] Re: [mg73669] Re: is 3?
*From*: Andrzej Kozlowski <akoz at mimuw.edu.pl>
*Date*: Sun, 25 Feb 2007 04:44:56 -0500 (EST)
*References*: <ermdak$hnh$1@smc.vnet.net> <200702240717.CAA09240@smc.vnet.net>
On 24 Feb 2007, at 08:17, David W.Cantrell wrote:
> "Tony Harker" <a.harker at ucl.ac.uk> wrote:
>> Dear Oleksandr,
>>
>> That's interesting: but looking at what is produced by
>> ArcSinh[2]/ArcCsch[2] == 3 // FullSimplify
>> makes me wonder just how Mathematica achieved this.
>
> Spec., before saying True, it gives the warning
>
> N::meprec : Internal precision limit $MaxExtraPrecision =
> 49.99999999999999` reached while evaluating -3 + ArcSinh[2]/ArcCsch
> [2].
>
>> In other words, what
>> does the message that Bob Hanlon so carefully suppressed mean?
>> Similar
>> messages sometimes occur when checking the results of simple
>> equations by
>> back-substituting, especially when the solutions contain surds, and
>> appear to show that Mathematica is diving off into real numbers to
>> prove
>> results involving integers and powers of integers.
>
> Yes, I find such things disconcerting. Would someone please explain
> what's
> going on? It's probably been explained here before; if so, maybe
> just a
> reference to an earlier thread could be given.
This has been explained before (more than once). It is only due to
the fact that FullSimplify does not hold its arguments, so
Mathematica's evaluates receives a numerical equality to evaluate it
tries to disprove it, which can be done using extended precision
arithmetic when equality does not hold. It then returns the message
telling you that it could nto settle the equality and only then
FullSimplify starts its work. In fact this approach (first try a
numerical check, then use symbolic methods) is exactly what I use
myself when trying to solve such a problem by habnd; doesn't everyone?
Of course there is no need to suppress any messages:
Unevaluated[ArcSinh[2]/ArcCsch[2] == 3] // FullSimplify
True
>
> BTW, another example, which was never explained, appeared here at
> the end
> of last Nov. in the thread "Unexpected Warning with ArcTan" by Andrew
> Moylan.
>
> Simplify[ArcTan[1/(1/2 + (1/2)*(-1 + 1/E^40))]] yields ArcTan
> [2*E^40].
> But that correct result is preceeded by the warnings
>
> Power::infy : Infinite expression 1/0. encountered.
> Power::infy : Infinite expression 1/0.^1. encountered.
>
> which make it seem as though approximate arithmetic were involved
> in some
> intermediate steps.
>
This is actually hard to explain although again it has nothing to do
with Smplify. Mathematica's evaluator sees a numerical expression
and rather than leaving it alone attempts to evaluate it
numerically. Note that evaluating
ArcTan[1/(1/2 + (1/2)*(-1 + 1/E^40))]
produces the same message, so Simplify plays no role. Hence
Simplify[Unevaluated[ArcTan[
1/(1/2 + (1/2)*(-1 + 1/E^40))]]]
ArcTan[2*E^40]
without any messages, because this time only Simplify does the job.
This shows anyway that Simplify and FullSImplify do not in these case
atempt to use any numerical techniques and all these messages come
form "the Evaluator".
There still remains the question why the Evaluator does anything at
all with
ArcTan[1/(1/2 + (1/2)*(-1 + 1/E^40))]
since all the numbers are exact an in such cases it is supposed to
return an exact answer. This seems to be something do do with the
function ArcTan itself, because no such check is performed if you enter
1/((1/2)*(1/E^40 - 1) + 1/2)
By the way, the same thing will happen if you replace E by Pi:
ArcTan[1/(1/2 + (1/2)*(-1 + 1/Pi^40))]
but not, for example, for
ArcTan[1/(1/2 + (1/2)*(-1 + 1/Pi^E))]
ArcTan[1/(1/2 + (1/2)*(-1 + Pi^(-E)))]
I myself feel pretty sure that this is a "bug", in the sense that it
was never intended to do anything useful and is probably a side
effect of something. Since it it harmless and probably nobody at WRI
will feel it worth spending any time on, I guess it can be called a
"feature".
A "quirk" is probably a more accurate description.
(However, I still think that
ArcCosh[x]+O[x]
is a "bad thing", whether it is called a bug, feature or just a quirk. )
Andrzej Kozlowski
**References**:
**Re: is 3?**
*From:* "David W.Cantrell" <DWCantrell@sigmaxi.net>
Prev by Date:
**Re: simple question**
Next by Date:
**Re: simple question**
Previous by thread:
**Re: is 3?**
Next by thread:
**Re: Re: Re: is 3?**
| |