HoldAll for Integrate

*To*: mathgroup at smc.vnet.net*Subject*: [mg97923] HoldAll for Integrate*From*: Tammo Jan Dijkema <T.J.Dijkema at gmail.com>*Date*: Thu, 26 Mar 2009 05:18:07 -0500 (EST)

The following commands yield unexpected output: x=10; Integrate[x^2, {x,0,1}] That is because Integrate does not have attributes HoldAll, so that the second command will be interpreted as Integrate[100, {10,0,1}] which is not a command that Integrate can work with (so a warning message is returned). However, I can add the attribute HoldAll to Integrate myself: SetAttributes[Integrate, HoldAll]; I'm not very sure what to expect when now trying the same experiment (the correct answer 1/3 would be nice), but the actual output surprised me: x=10; Integrate[x^2, {x,0,1}] Yields as output: 0 (without any warnings). Could anyone explain why I should have expected this result? On a side note, I found a similar in the Tech Support column of the Mathematica Journal Volume 6, Issue 2, by Carl Roy. He tried the integral without limits: x=10; SetAttributes[Integrate, HoldAll]; Integrate[x^2, x] In the journal, the output 1000/3 is mentioned, whereas in Mathematica 7.0.1 this outputs 1000. Again, does anyone understand this? Regards, Tammo Jan Dijkema