3
Clear["Global`*"]
Integrate[t f[x, y], {y, 0, 1}] - 
  t Integrate[f[x, y], {y, 0, 1}] // FullSimplify

なぜ M@ は結果がゼロであることを知らないのですか?

4

1 に答える 1

3

これはバグではありません。にf[x,y]は定義がないため、Mathematica は被積分関数について何も仮定できませんt f[x, y]

以下に示すように、Mathematica を支援するルールを作成できます。しかし、ルールがなければ、Mathematica はここで正しいことをしています。

これは以前にも多くの場所で議論されてきました。ここにいくつかのリンクがあります

https://groups.google.com/forum/#!msg/comp.soft-sys.math.mathematica/jsiYo9tRj04/rQYCy-X3SXQJ

https://mathematica.stackexchange.com/questions/5610/how-to-simplify-symbolic-integration

たとえば、次のルールを追加できます。

Clear["Global`*"]
Unprotect[Integrate];
Integrate[t_Symbol*f_,dom_]:=t*Integrate[f,dom];
Protect[Integrate];

これでゼロになります

Simplify@Integrate[t f[x,y],{y,0,1}]-t Integrate[f[x,y],{y,0,1}]
(*--->  0 *)
于 2012-11-12T10:47:34.297 に答える