MathGroup Archive 2004

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Re: Log[4]==2*Log[2]


This is well known and even has been discussed on this list in the 
past. But it has nothing to do with this subject, which was about 
determining whether two arbitrary exact expressions are exactly equal.

Andrzej Kozlowski


On 17 Sep 2004, at 14:17, Richard J. Fateman wrote:

> Sorry to join the fray so late, and even dare to put
> the subject in the Subject line.
>
> There is no reason to suppose that it is impossible
> to determine equality by numerical testing.
>   One could potentially compute, over a class of
> expressions, a bound p that depends on the actual expressions A, B
> such that evaluating A within absolute error p, and B within
> absolute error p, will show that they are different, if in fact
> they are different. And otherwise they are the same.
>
> If the class of expressions is "integers, + * -"  then we know
> that evaluation to 0.1 will do it.
> There have been papers written on this subject, and even programs.
> I am not being coy, just avoiding this newsgroup's censor.
>
> Richard Fateman
>
>
> DrBob wrote:
>
>>>> Mathematica does not apply any simplification rules but justtries 
>>>> to evaluate the expression numerically and, not
>>>> surprisingly, it can't determine if the LHS is zero or not
>>>> up to the required precision.
>>
>>
>> On the contrary, I think the error message itself clearly indicates 
>> the difference IS zero to "the required precision". If 50 digits 
>> extra precision isn't enough to determine that the difference ISN'T 
>> zero, why doesn't Equal return True?
>>
>> Bobby
>>
>> On Fri, 10 Sep 2004 04:05:56 -0400 (EDT), Andrzej Kozlowski 
>> <andrzej at akikoz.net> wrote:
>>
>>
>>> On 9 Sep 2004, at 18:17, Andreas Stahel wrote:
>>>
>>>
>>>> To whom it may concern
>>>>
>>>> the following answer of Mathematica 5.0 puzzeled me
>>>>
>>>> Log[4]==2*Log[2]
>>>> leads to
>>>>
>>>> N::meprec: Internal precision limit $MaxExtraPrecision = 50.` 
>>>> reached
>>>> while \
>>>> evaluating -2\Log[2]+Log[4]
>>>>
>>>> with the inputs given as answer. But the input
>>>>
>>>> Log[4.0]==2*Log[2]
>>>>
>>>> leads to a sound "True"
>>>>
>>>> Simplify[Log[4]-2*Log[2]]
>>>> leads to the correct 0, but
>>>> Simplify[Log[4]-2*Log[2]==0]
>>>> yields no result
>>>>
> ..........etc etc <snip>
>


  • Prev by Date: Re: How to simplify to a result that is real
  • Next by Date: Re: Inline Formulas and Answers
  • Previous by thread: Re: Log[4]==2*Log[2]
  • Next by thread: Re: Re: Log[4]==2*Log[2]