Re: Re: Re: Bug Report - Two numerical values for a same variable

*To*: mathgroup at smc.vnet.net*Subject*: [mg54361] Re: [mg54300] Re: [mg54271] Re: Bug Report - Two numerical values for a same variable*From*: Andrzej Kozlowski <akoz at mimuw.edu.pl>*Date*: Sat, 19 Feb 2005 02:32:08 -0500 (EST)*References*: <00ed01c512b0$2f242850$6400a8c0@Main> <curpbn$r28$1@smc.vnet.net> <200502150438.XAA29728@smc.vnet.net> <200502161936.OAA19223@smc.vnet.net> <bc260b75189ab899a75c3a5c65dc0bcf@gmail.com> <4214B60F.2050207@math.umass.edu>*Sender*: owner-wri-mathgroup at wolfram.com

Obviously this was meant as an illustration of how things "would have worked" had Rational[2,3] not been an Atom! Note the "would have"! Rational[a,b] is just an undefined expression with head Rational and is not an atom. Andrzej On 17 Feb 2005, at 16:19, Murray Eisenberg wrote: > Given that Rational[a, b] is, as you say, meaningless, I'm not yet > convinced by your reasoning on grounds of Mathematica consistency! > > Andrzej Kozlowski wrote: >> The reasons why Rational[2,3] or Complex[2,3] are atoms are nor >> really mathematical but come from considering the structure of >> expressions in the Mathematica language and way expressions are >> transformed by various structured operations. To see what I mean >> consider the following list >> ls = {1, 2, 3/4, 5 + 6*I, Rational[a, b]}; >> Note that 3/4 evaluates to the atom Rational[3,4] but Rational[a,b] >> is not an atom and is actually meaningless. >> I think most people would agree that we would like all the numbers >> 1.2,3/4 and 5+6I to be treated "in the same way" by various >> structured operations that accept level specifications, such as like >> Map, Apply etc. This is indeed the case. Consider >> In[2]:= >> Map[g, ls, -1] >> Out[2]= >> {g[1], g[2], g[3/4], g[5 + 6*I], g[Rational[g[a], g[b]]]} >> You can see the difference between the treatment of the atomic >> Rational[3,4] (or Complex[5,6]) and non-atomic Rational[a,b]. This >> and similar reasons justify treating Rational[3,4] and Complex[5,6] >> as atoms. This is a quite different issue from the one whether >> rationals or complex numbers are in some mathematical sense "atoms" >> or not. A case can be made both for the "yes" and the "no" answer, >> but it has nothing to do with the reason why in Mathematica >> Rational[2,3] and Complex[5,6] are atoms. >> Andrzej Kozlowski >> On 16 Feb 2005, at 20:36, Murray Eisenberg wrote: >>> The manipulations below are precisely what's so confusing about >>> Rational >>> objects (and Complex objects) being atoms. If >>> >>> 1/2 /. Rational[x_, 2] -> Rational[x, 7] >>> >>> works, then why not the following? >>> >>> Part[Rational[1, 2], 2] >>> >>> I can "believe" that integers and reals (and maybe strings) are >>> atoms; >>> but believing that rationals and complex numbers are atoms is a hard >>> thing to swallow! >>> >>> This has always bothered me -- and hence given me trouble trying to, >>> um, >>> rationalize this to students when I've taught Mathematica. >>> >>> >>> Scott Hemphill wrote: >>> >>>> DrBob <drbob at bigfoot.com> writes: >>>> >>>> >>>>> That explains it, but only in the sense that "things fall down" is >>>>> a theory of gravity. Why should Rationals be atomic, for goodness >>>>> sake? And how did I use Mathematica all this time without hearing >>>>> about it? >>>>> >>>>> Sigh... >>>> >>>> >>>> >>>> >>>> In[1]:= FullForm[1/2] >>>> >>>> Out[1]//FullForm= Rational[1, 2] >>>> >>>> In[2]:= 1/2 /. Rational[x_,2] -> Rational[x,7] >>>> >>>> 1 >>>> Out[2]= - >>>> 7 >>>> >>>> Scott >>> >>> >>> -- >>> Murray Eisenberg murray at math.umass.edu >>> Mathematics & Statistics Dept. >>> Lederle Graduate Research Tower phone 413 549-1020 (H) >>> University of Massachusetts 413 545-2859 (W) >>> 710 North Pleasant Street fax 413 545-1801 >>> Amherst, MA 01003-9305 >>> >>> > > -- > Murray Eisenberg murray at math.umass.edu > Mathematics & Statistics Dept. > Lederle Graduate Research Tower phone 413 549-1020 (H) > University of Massachusetts 413 545-2859 (W) > 710 North Pleasant Street fax 413 545-1801 > Amherst, MA 01003-9305

**References**:**Re: Bug Report - Two numerical values for a same variable***From:*Scott Hemphill <hemphill@hemphills.net>

**Re: Re: Bug Report - Two numerical values for a same variable***From:*Murray Eisenberg <murray@math.umass.edu>