Re: More /.{I->-1} craziness, con brio

*To*: mathgroup at smc.vnet.net*Subject*: [mg106637] Re: More /.{I->-1} craziness, con brio*From*: Andrzej Kozlowski <akozlowski at gmail.com>*Date*: Tue, 19 Jan 2010 05:15:18 -0500 (EST)*References*: <200912300915.EAA17299@smc.vnet.net> <hhhmn8$o9t$1@smc.vnet.net> <his71l$lad$1@smc.vnet.net> <201001171213.HAA09349@smc.vnet.net> <hj131g$bdr$1@smc.vnet.net> <4B5489D0.6050602@cs.berkeley.edu> <32552F29-F98C-497E-A6F0-9D2D03B13BF2@gmail.com>

And, by the way, any claims to the effect that something like what you "explained" must be going on in the C source code in which Mathematica is written do not count for that would be at best pure speculation which something anyone else can do as well as you . Andrzej Kozlowski On 18 Jan 2010, at 18:22, Andrzej Kozlowski wrote: > > On 18 Jan 2010, at 17:18, Richard Fateman wrote: > >> Andrzej Kozlowski wrote: >> >>> I is never evaluated and is seen as an object with Head Symbol. >> >> Yes, so that explains why the "error" is not caught and the message given for that case, too. In fact the "symbol" is converted to something like I$1234, which was explained in my note. Explaining why a system behaves in a certain way is not equivalent to proving that it is correct. At least in my book. > > Of course you did not explain anything at all, or rather what you explained is wrong. Or perhaps you can explain why there is no renaming in the first case but there is in the second: > > Trace[With[{I = -I}, 3 + 4 I]] > > {With[{I=-I},3+4 I],{{I,I},-I,-I},3+4 (-1) I,{4 (-1) I,-4 I},3-4 I,3-4 I} > > Trace[Module[{I = -I}, 3 + 4 I]] > > {Module[{I=-I},3+4 I],{{I,I},-I,-I},{I$4671=-I,-I},{{{I$4671,-I},4 (-1) I,-4 I},3-4 I,3-4 I},3-4 I} > > Guessing wrongly, particularly when one it is easy to check that the guess is wrong, is not the same as explaining. >

**References**:**Re: More /.{I->-1} craziness, con brio***From:*Richard Fateman <fateman@cs.berkeley.edu>