Unrelated variable affects rsolve result

Showing 1-5 of 5 messages
 Unrelated variable affects rsolve result Nils Kanning 1/30/12 2:14 AM Hello, I am using Mathematica 8.0.1.0 and I observed a strange behavior of the function rsolve. The result rsolve produces is changed by a seemingly unrelated variable, which I define before calling rsolve. Especially rsolve seems to interfere with a variable called "K", whereas other variables (for example "k") do not cause problems. Here is some code, which illustrates this behavior: In[1]:= k = {{1, 0}}; In[2]:= RSolve[ h[y] == 1 + h[y + 1], h[y], y] Out[2]= {{h[y] -> -y + C[1]}} In[3]:= K = {{1, 0}}; In[4]:= RSolve[ h[y] == 1 + h[y + 1], h[y], y] During evaluation of In[4]:= Sum::write: Tag List in {{1,0}}[1] is Protected. >> Out[4]= {{h[y] -> C[1] + \!\( \*UnderoverscriptBox[\(\[Sum]\), \({{1, 0}}[1] = 0\), \(\(-1\) +        y\)]\(-1\)\)}} Is there a special meaning of "K" or does this variable just interfere with some internals of rsolve? Thanks, Nils Re: Unrelated variable affects rsolve result Szabolcs 1/31/12 2:40 AM Generally, it is best to avoid names starting with capital letters in Mathematica.  This way you can make sure that none of your symbols will conflict with system symbols. If you evaluate ?K you will see that K is a system symbol.  For some reason it is not protected, and I have never seen any use of it.  But apparently it can cause trouble, as you show in your example. Szabolcs Re: Unrelated variable affects rsolve result Bob Hanlon 1/31/12 2:43 AM Evaluate ?? K K is a default generic name for a summation index in a symbolic sum. Hence the often repeated rule: To avoid naming conflicts with existing or future internal Mathematica variable names, never start a user-defined variable name with a capital letter. Bob Hanlon Re: Unrelated variable affects rsolve result David Skulsky 1/31/12 2:37 AM If you type ?K, you'll see the response "K is a default generic name for a summation index in a symbolic sum," which I suspect is causing the problem. It's generally a bad idea to use uppercase variable names... Re: Unrelated variable affects rsolve result Shizu 1/31/12 2:38 AM ?K K is a default generic name for a summation index in a symbolic sum. K is used internally by RSolve, etc. as an index for sums and products.