Services & Resources / Wolfram Forums / MathGroup Archive

MathGroup Archive 2011

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

Search the Archive

Re: Dt@x@1

  • To: mathgroup at
  • Subject: [mg119399] Re: Dt@x@1
  • From: magma <maderri2 at>
  • Date: Thu, 2 Jun 2011 07:14:40 -0400 (EDT)
  • References: <is4tgc$b3t$> <is55ug$d2e$>

On Jun 1, 12:57 pm, "Nasser M. Abbasi" <n... at> wrote:
> On 6/1/2011 1:33 AM, Chris Chiasson wrote:
> > Why does Dt@x@1 return zero?
> Dt[ x[1] ]
> The last evaluation of x[1] in the call gave 1, and this is
> what is left and is passed to Dt and then Dt[1] returns zero.
> You can see that by
> -----------------------
> In[65]:= Remove["Global`*"]
> TracePrint@Dt [ x[1] ]
> During evaluation of In[65]:=  Dt[x[1]]
> During evaluation of In[65]:=   Dt
> During evaluation of In[65]:=   x[1]
> During evaluation of In[65]:=    x
> During evaluation of In[65]:=    1
> During evaluation of In[65]:=  0
> Out[66]= 0
> ------------------------------
> But what I do not know, is why when typing
> In[84]:= x[1]
> one gets back
> Out[84]= x[1]
> and so, now it did not 'evaluate' to 1 like it seems to have
> done inside Dt call above.
> I can see that x[1] should return x[1], but I am not sure
> why x[1] ended 1 inside the Dt call as shown by the trace above
> and not when typing it on the top level.
> This is for the experts to explain, something to do with how
> different evaluation rules works in different contexts I suppose.
> --Nasser

To Chris:
Dt@x@1 is grouped and parsed from right to left as Dt[x[1]].
Now x[1] is the VALUE of function x applied to the argument 1.
Unless x[1] as been defined earlier with some symbols, it is
considered a constant so its differential Dt is zero.
There is nothing strange or unusual about it, just plain math.

To Nasser:
the 1 that you see in TracePrint is the result of evaluating the
argument 1. So the result is 1. You can verify this by evaluating


where you get 2 as a result of evaluating the argument 2

x[1] is left unevaluated (so the result is still x[1]) when you just
type it by itself.

  • Prev by Date: Re: Mapping to Create Nested Loops
  • Next by Date: Re: Pure functions and Select[] sequential elements of list
  • Previous by thread: Re: Dt@x@1
  • Next by thread: Re: Dt@x@1