[Date Index]
[Thread Index]
[Author Index]
Re: Dt@x@1
*To*: mathgroup at smc.vnet.net
*Subject*: [mg119400] Re: Dt@x@1
*From*: Chris Chiasson <chris.chiasson at gmail.com>
*Date*: Thu, 2 Jun 2011 07:14:51 -0400 (EDT)
*References*: <is4tgc$b3t$1@smc.vnet.net> <is55ug$d2e$1@smc.vnet.net>
On Jun 1, 5:57 am, "Nasser M. Abbasi" <n... at 12000.org> 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
Just shooting from the hip:
The 1 that you are seeing is just Mathematica attempting to evaluate
the argument of a function before looking for DownValues of x. I.e.
x[1+1] would see {1+1,2} in its evaluation chain, or 1+1 newline 2 at
the same indentation level in the TracePrint.
Prev by Date:
**Re: FixedPoint[Cos, 1.0]**
Next by Date:
**Re: Mapping to Create Nested Loops**
Previous by thread:
**Re: Dt@x@1**
Next by thread:
**Re: Dt@x@1**
| |