MathGroup Archive 2012

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

Search the Archive

Re: Transcendental functions

  • To: mathgroup at smc.vnet.net
  • Subject: [mg126302] Re: Transcendental functions
  • From: Andrzej Kozlowski <akozlowski at gmail.com>
  • Date: Mon, 30 Apr 2012 04:39:13 -0400 (EDT)
  • Delivered-to: l-mathgroup@mail-archive0.wolfram.com
  • References: <201204280925.FAA00665@smc.vnet.net>

On 28 Apr 2012, at 11:25, David Egan wrote:

> Hi,
> I am trying to teach mathematica to recognize this function
>
>  ArcTan[x] - I/2 Log [(I + x)/(I - x)] == 0
>
> Any thoughts on how to force mathematica to use it in simplifications.
> Thanks
> David
>

First, this identity is not valid for all complex x, for example, it is not valid for x=2I:

ArcTan[x] - I/2 Log[(I + x)/(I - x)] /. x -> 2 I // N

3.14159 + 0. I

So the least you need is the assumption that x is real.

Secondly, Mathematica already knows something pretty close to this:

TrigToExp[ArcTan[x]]

1/2 I Log[1 - I x] - 1/2 I Log[1 + I x]

ExpToTrig[1/2 I Log[1 - I x] - 1/2 I Log[1 + I x]]

ArcTan[x]

So the question reduces to: is   Log[1 - I x] - Log[1 + I x] ==  Log[(I + x)/(I - x)]  for all real x? 
This in turn reduces easily to:

Arg[1 - I*x] - Arg[1 + I*x] == Arg[(I + x)/(I - x)]

This identity is easy to prove "geometrically" by hand (for real x of course) but Mathematica doesn't seem to be able to do it. 
In any case, you don't really explain what you mean by Mathematica "using" this identity. There are several different ways in which one could "use it", for example direct replacement or TransformationFunctions option in Simplify and FullSimplify. The latter method will only work with a suitable ComplexityFunction so it may be too much effort to bother with.

Andrzej Kozlowski







  • Prev by Date: Re: Find all roots with FindRoot
  • Next by Date: Re: Creating 'smart' textbooks with mathematica?
  • Previous by thread: Re: Transcendental functions
  • Next by thread: How to see the source code of Wolfram Demonstrations when it isn't provided?