如何在mma中替换n-1> n

时间:2011-02-11 03:32:32

标签: wolfram-mathematica

我已经定义了

Subscript[S,n]=Subscript[X,n]+Subscript[S,n-1]

表达式:

3*n^2 – 6* n* Subscript[S, -1 + n] ^2 

我想n-1->n,但似乎

3*n^2 – 6* n* Subscript[S, -1 + n] ^2/. {n-1->n}

这样我得到了

3 n^2 - 6 n (Subscript[S, -1 + n] + Subscript[X, n])^2

没有做我想要的。我希望使用3*n^2n-1重写为等效内容,在本例中为3*(n-1)^2+6*(n-1)+3,然后执行替换以获取3*n^2+6*n+3

总的来说,我希望:

3*n^2+6*n+3+6*n*Subscript[S, n] ^2+6* Subscript[S, n] ^2

即。我也不希望mma在最终结果中扩展Subscript[S, n]

如何在mma中自动执行此操作?

非常感谢。

1 个答案:

答案 0 :(得分:1)

我不确定你为什么有最初的定义......

看起来你想要的结果(除了一些标志之外)来自简单的

In[1]:= (3n^2-6 n Subsuperscript[S, n-1, 2])/.n->n+1//Expand
Out[1]= 3 n^2 + 6 n + 3 - 6 n Subscript[S, n]^2 - 6 Subscript[S, n]^2

至于不在最终结果中扩展下标条款,也许你想要像

这样的东西
Collect[%1, Subscript[__], Factor]