Re: Re: Re: Log[4]==2*Log[2]
- To: mathgroup at smc.vnet.net
- Subject: [mg50618] Re: [mg50599] Re: [mg50557] Re: [mg50520] Log[4]==2*Log[2]
- From: Andrzej Kozlowski <andrzej at akikoz.net>
- Date: Mon, 13 Sep 2004 02:19:35 -0400 (EDT)
- References: <200409120842.EAA01340@smc.vnet.net> <opsd8augkviz9bcq@monster.cox-internet.com>
- Sender: owner-wri-mathgroup at wolfram.com
On 13 Sep 2004, at 04:24, DrBob wrote: > > If Equal can't decide equality for exact expressions, then it should > return unevaluated. It shouldn't interrupt everything with a useless > error message. > > Bobby I am not sure about that. You are right as far as the "aesthetics" of the interface of CAS is concerned. But when this sort of thing happens in a program it is likely to be the result of an error (probably not intended by the programmer) and it seems to me that it is a good idea for errors to produce error messages since it makes it debugging easier (such messages can be caught with Check). Andrzej > > > On Sun, 12 Sep 2004 04:42:10 -0400 (EDT), Andrzej Kozlowski > <andrzej at akikoz.net> wrote: > >> Actually, I don't think Mathematica does any real "determining" since >> it does not replace the exact values given in the input by >> numerical approximations. The message issued is, I think, purely >> formal. Mathematica could not determine anything because it tries to >> compare the numbers "numerically" without using approximate numerical >> values, which can't be done. (You have to apply N for it to use >> numerical values). That't what I meant by "not surprisingly". I don't >> think I really understand your point? >> >> ANdrzej >> >> >> On 11 Sep 2004, at 01:52, DrBob wrote: >> >> >>>>> Mathematica does not apply any simplification rules but just tries >>>>> 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 >>>>> >>>>> There must be some systematic behind thid surprising behaviour. >>>>> Could somebody give me a hint please >>>>> >>>>> With best regards >>>>> >>>>> Andreas >>>>> -- >>>>> Andreas Stahel E-Mail: Andreas.Stahel at [ANTI-SPAM]hti.bfh.ch >>>>> Mathematics, HTI Phone: ++41 +32 32 16 258 >>>>> Quellgasse 21 Fax: ++41 +32 321 500 >>>>> CH-2501 Biel WWW: www.hta-bi.bfh.ch/~sha >>>>> Switzerland >>>>> >>>>> >>>> >>>> When you enter >>>> >>>> Log[4] - 2*Log[2] == 0 >>>> >>>> Mathematica does not apply any simplification rules but just tries >>>> to >>>> evaluate the expression numerically and, not surprisingly, it can't >>>> determine if the LHS is zero or not up to the required precision. >>>> >>>> If you use >>>> >>>> Simplify[Log[4] - 2*Log[2] == 0] >>>> >>>> Mathematica first tries to evaluate the argument of Simplify and the >>>> same thig happens as above, but then it actually applies Simplify to >>>> the output and gets the right answer True. >>>> >>>> The best thing to do is: >>>> >>>> >>>> Simplify[Unevaluated[Log[4]-2*Log[2]==0]] >>>> >>>> >>>> True >>>> >>>> which avoids evaluation of the argument and instead uses Simplify on >>>> the unevaluated input. >>>> >>>> >>>> >>>> Andrzej Kozlowski >>>> Chiba, Japan >>>> http://www.akikoz.net/~andrzej/ >>>> http://www.mimuw.edu.pl/~akoz/ >>>> >>>> >>>> >>> >>> >>> >>> -- >>> DrBob at bigfoot.com >>> www.eclecticdreams.net >>> >> >> >> > > > > -- > DrBob at bigfoot.com > www.eclecticdreams.net >
- References:
- Re: Re: Log[4]==2*Log[2]
- From: Andrzej Kozlowski <andrzej@akikoz.net>
- Re: Re: Log[4]==2*Log[2]