|
|
Re: clearing a variable with a dummy subscript
Posted:
May 19, 2012 5:44 AM
|
|
Am 18.05.2012 11:27, schrieb Andre Hautot: > Hi ! > Here is something very simple I don't understand : > > f[x_] := x; f[2] (*A function*) > 2 > > Clear[f]; f[2] (*The same perfectly cleared as expected*) > f[2] > > > Subscript[u, k_] := k; Subscript[u, 2] (*u with subscript k_ > entered via the palette*) > 2 > > Clear[u]; Subscript[u, 2] (*I found no way to clear u; a > suggestion ?) > 2 >
Use:
Subscript[u, k_] =.
or (if you don't have other definitions for Subscript you want to keep):
Clear[Subscript]
the deeper reason is that this rule is stored in the DownValues of Subscript:
Subscript[u, k_] := k; DownValues[Subscript]
What you probably want to do is to store it as an UpValue to u instead of a DownValue of Subscript:
u /: Subscript[u, k_] := k
DownValues[Subscript] UpValues[u]
now you can get rid of the definition as expected:
Clear[u]
Subscript[u,2]
hth,
albert
|
|