Re: List manipulation?

• To: mathgroup at smc.vnet.net
• Subject: [mg128323] Re: List manipulation?
• From: awnl <awnl at gmx-topmail.de>
• Date: Sat, 6 Oct 2012 01:54:12 -0400 (EDT)
• Delivered-to: l-mathgroup@mail-archive0.wolfram.com
• Delivered-to: l-mathgroup@wolfram.com
• Delivered-to: mathgroup-newout@smc.vnet.net
• Delivered-to: mathgroup-newsend@smc.vnet.net
• References: <20121004034155.8617868D2@smc.vnet.net> <k4lvjt\$d41\$1@smc.vnet.net>

```Hi,

>
> I got a problem with List manipulation. I have the following list item:
>
>    a = -Subscript[50, 5]
>
> and I would like to change the value of 50 to 360-50 and also change the
> sign to +. First I tried to change the sign and then the value and I got
> an outcome I didn't understand. Doing the other way round I get the
> outcome I expected. Does anybody know what the difference is?
>
> Here is the Example file:
> http://dl.dropbox.com/u/4920002/Example.nb
>
>
>
> a = -Subscript[50, 5]
> a[[2, 1]] = 360 - a[[2, 1]]
> a[[1]] = -1*a[[1]]
> a
>
>
> b = -Subscript[50, 5]
> b[[1]] = -1*b[[1]]
> b[[1]] = 360 - b[[1]]
> b

what happens is that you change the OwnValue of b in place from

Times[-1,Subscript[50,5]]

to:

Times[1,Subscript[50,5]]

and finally to:

Times[310,Subscript[50,5]]

which you can check from looking at:

OwnValues[b] // FullForm

after every step. The subtlety is that in the second step the b[[1]] on
the right hand side is evaluated. As usual the b itself is evaluated
first, which will get rid of Times, and only after that Part ([[]])
actually is applied, which you can see from e.g.:

b = -Subscript[50, 5]
b[[1]] = -1*b[[1]]
Trace[b[[1]]]

hth,

albert

```

• Prev by Date: Problem importing java class
• Next by Date: Re: ordering a group of symbolic operators
• Previous by thread: List manipulation?
• Next by thread: problem with DSolve and spheroidal harmonics