Re: Complex -> List does not work
- To: mathgroup@smc.vnet.net
- Subject: [mg10592] Re: [mg10495] Complex -> List does not work
- From: Andrzej Kozlowski <andrzej@tuins.ac.jp>
- Date: Mon, 26 Jan 1998 04:42:24 -0500
It probably does not answer the question "why" but the following might throw some light it: In[28]:= ReleaseHold[Hold[Complex[2,3]]/.Complex->List] Out[28]= {2,3} In[29]:= ReleaseHold[Hold[2+3 I]/.Complex->List] Out[29]= 2+3 I So 2+3 I is not "really" the same as Complex[2,3]. After evaluating Complex[2,3] its head Complex behaves like the head "Integer" that (for example) the integer 2 has rather than like the head List in {2,3}. At 2:22 AM -0500 1/20/98, Gianluca Gorni wrote: >Hello! > >I naively tried the following way of turning a complex number into a >couple of real numbers: > > 2 + 3 I /. Complex -> List > >but it gives me back > > 2 + 3 I > >even though the full form of 2+3I is Complex[2,3]. The reverse however >is possible: > > {2,3}/.List->Complex gives 2+3I > >The help browser says that "you have to use Re and Im to extract parts >of Complex numbers". > >Why this exception to the basic principles of replacement rules? > > Gianluca Gorni > > >%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% > >Gianluca Gorni >Universita` di Udine >Dipartimento di Matematica e Informatica via delle Scienze 208 >I-33100 Udine UD >Italy > >Ph.:(39) (432) 558422 Fax:(39) (432) 558499 >mailto:gorni@dimi.uniud.it >http://www.dimi.uniud.it