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 smc.vnet.net
  • Subject: [mg119394] Re: Dt@x@1
  • From: "Nasser M. Abbasi" <nma at 12000.org>
  • Date: Wed, 1 Jun 2011 06:57:25 -0400 (EDT)
  • References: <is4tgc$b3t$1@smc.vnet.net>
  • Reply-to: nma at 12000.org

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


  • Prev by Date: Appending to Dispatch[] tables
  • Next by Date: Re: Mapping to Create Nested Loops
  • Previous by thread: Dt@x@1
  • Next by thread: Re: Dt@x@1