MathGroup Archive 2006

[Date Index] [Thread Index] [Author Index]

Search the Archive

DownValues question

  • To: mathgroup at smc.vnet.net
  • Subject: [mg70004] DownValues question
  • From: dimmechan at yahoo.com
  • Date: Sat, 30 Sep 2006 05:12:29 -0400 (EDT)

One more question. (I apologise for the number of questions).

The following rule is not allowed

x + y = z
Set::write : Tag Plus in x + y is Protected.
z

since Plus has the attribute Protected.

If you want to avoid the drastic way of Unprotect Plus and add the rule

you can use

x /: x + y = z
z

Suppose now the following

Clear[f]
f[x_, 2] := foo
f[2, x_] := foofoo

Then

DownValues[f]
{HoldPattern[f[x_, 2]] :> foo, HoldPattern[f[2, x_]] :> foofoo}

If you want, you can change the order that assigned down values are
stored by

DownValues[f] = Reverse[DownValues[f]]
{HoldPattern[f[2, x_]] :> foofoo, HoldPattern[f[x_, 2]] :> foo}

However

Attributes[DownValues]
{HoldAll, Protected}

Using Set we attach a value to the head of the left-hand side.
So, how we can (re)assign a new value to DownValues if its Head
has the attribute Protected?

Thanks in advance for any help.


  • Prev by Date: Linear regression, error on both vaules x and y
  • Next by Date: Definition of SE (standard error) in LinearRegress and NonlinearRegress
  • Previous by thread: Linear regression, error on both vaules x and y
  • Next by thread: Definition of SE (standard error) in LinearRegress and NonlinearRegress