code:
FreeQ[\[Lambda]^i, i]
! FreeQ[2 \[Lambda]^i, i]
output:
False
True
reset Sum :
a3 = Attributes[Sum];
Unprotect[Sum];
ClearAttributes[Sum, a3];
Attributes[Sum];
Sum[f_ g_, i_] := f Sum[g, i] /; FreeQ[f, i];
SetAttributes[Sum, a3];
Protect[Sum];
test:
\!\(
\*UnderoverscriptBox[\(\[Sum]\), \(i\), \(n\)]\(2\
\*SuperscriptBox[\(\[Lambda]\), \(k\)]\
\*SuperscriptBox[\(x[i]\), \(j\)]\)\)
\!\(
\*UnderoverscriptBox[\(\[Sum]\), \(i\), \(n\)]\(2\
\*SuperscriptBox[\(\[Lambda]\), \(i\)]\
\*SuperscriptBox[\(x[i]\), \(j\)]\)\)
output:
2 \[Lambda]^k \!\(
\*UnderoverscriptBox[\(\[Sum]\), \(i\), \(n\)]
\*SuperscriptBox[\(x[i]\), \(j\)]\)
2 \[Lambda]^i \!\(
\*UnderoverscriptBox[\(\[Sum]\), \(i\), \(n\)]
\*SuperscriptBox[\(x[i]\), \(j\)]\)
I found that the lambda^i in Sum was factor out, but it has i index. By the way the software version I use is mathematica 7.0. Thank you in advance!