Mathematica 9 is now available
Services & Resources / Wolfram Forums / MathGroup Archive
-----

MathGroup Archive 2013

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Wrong result of Integrate with assumptions -- my

  • To: mathgroup at smc.vnet.net
  • Subject: [mg131612] Re: Wrong result of Integrate with assumptions -- my
  • From: Alex Krasnov <akrasnov at cory.eecs.berkeley.edu>
  • Date: Wed, 11 Sep 2013 03:51:33 -0400 (EDT)
  • Delivered-to: l-mathgroup@mail-archive0.wolfram.com
  • Delivered-to: l-mathgroup@wolfram.com
  • Delivered-to: mathgroup-outx@smc.vnet.net
  • Delivered-to: mathgroup-newsendx@smc.vnet.net
  • References: <ks82sr$jnp$1@smc.vnet.net> <20130909040629.D3B716A22@smc.vnet.net>

Consider the following simpler examples (Mathematica 8.0.4):

In:	Expand[ExpToTrig[Integrate[t*E^(I*3*t), {t, a, b}] /. {a -> -1, b -> 2}]]
Out:	(-1/9 - I/3)*Cos[3] + (1/9 - (2*I)/3)*Cos[6] - (1/3 - I/9)*Sin[3] + (2/3 + I/9)*Sin[6]

In:	Expand[Assuming[Element[{a, b}, Reals], Integrate[t*E^(I*3*t), {t, a, b}]] /. {a -> -1, b -> 2}]
Out:	(-1/9 + I/3)*Cos[3] + (1/9 - (2*I)/3)*Cos[6] - (1/3 + I/9)*Sin[3] + (2/3 + I/9)*Sin[6]

The second result is already incorrect.

Alex


On Mon, 9 Sep 2013, Youngjoo Chung wrote:

> Hi,
>
> Actually, none of the assumptions are necessary. Integrate returns the result in the form ConditionalExpresssion[...] in case certain conditions must be met for the result to be valid. Otherwise, it is not necessary to add the Assumptions option.
>
> Nevertheless, res2 is not always correct as you mentioned. After some arithmetic, I observed that Re[res2] is always correct but Im[res2] is correct only when a > 0 and b > 0 regardless of w assuming Abs[a] < Infinity and Abs[b] < Infinity.
>
> Sincerely,
> Youngjoo Chung
>



  • Prev by Date: Re: basic namespace question, and access to BinarySearch
  • Next by Date: Re: Problem with change of variables in an integral
  • Previous by thread: Re: Wrong result of Integrate with assumptions -- my fault?
  • Next by thread: Problem with DSolve