4
$\begingroup$

I've encountered the following problem. There is the identity (Legendre's relation) that the special functions EllipticK[x] and EllipticE[x] satisfy:

$$K(x)E(1-x)+E(x)K(1-x)-K(x)K(1-x)=\frac{\pi}{2}$$

Mathematica does not seem to know it so I included it into assumptions:

$Assumptions = EllipticK[x] EllipticE[1 - x] + EllipticE[x] EllipticK[1 - x] -
               EllipticK[x] EllipticK[1 - x] == Pi/2

If I now evaluate

Simplify[EllipticK[x] EllipticE[1 - x] + EllipticE[x] EllipticK[1 - x] - 
       EllipticK[x] EllipticK[1 - x]]

I will get Pi/2, fine. The problem is that I want this identity to be used not only symbolically but also numerically, i.e. for example I would like Mathematica to simplify

Simplify[EllipticE[2/3] EllipticK[1/
   3] + (EllipticE[1/3] - EllipticK[1/3]) EllipticK[2/3]]

down to Pi/2. Not only It does not happen when I just stated this identity symbolically but even direct evaluation with this assumption does not yield desirable answer. Namely,

FullSimplify[
 EllipticE[2/3] EllipticK[1/
    3] + (EllipticE[1/3] - EllipticK[1/3]) EllipticK[2/3], 
 Assumptions -> 
  EllipticE[2/3] EllipticK[1/
      3] + (EllipticE[1/3] - EllipticK[1/3]) EllipticK[2/3] == Pi/2]

returns

EllipticE[2/3] EllipticK[1/
   3] + (EllipticE[1/3] - EllipticK[1/3]) EllipticK[2/3]

How can I get Pi/2 there instead?

$\endgroup$

1 Answer 1

7
$\begingroup$

The following transformation function works in this case:

xfn[e_] := e /. EllipticK[x_] EllipticE[y_] /; x + y == 1 :> 
    Pi/2 - (EllipticE[x] EllipticK[y] - EllipticK[x] EllipticK[y]);

FullSimplify[
 EllipticE[2/3] EllipticK[1/3] + (EllipticE[1/3] - EllipticK[1/3]) EllipticK[2/3], 
 TransformationFunctions -> {Automatic, xfn}]

(* π/2 *)

Edit:

The reason the using $Assumptions does not work as it is used in the question is that the assumption is effectively about the symbol x. It will not be used as a general identity about elliptic integrals.

For instance, having the assumption in terms of x and the expression in terms of y results in no simplification:

Block[{$Assumptions = 
   EllipticK[x] EllipticE[1 - x] + EllipticE[x] EllipticK[1 - x] - 
     EllipticK[x] EllipticK[1 - x] == Pi/2}, 
 Simplify[EllipticK[y] EllipticE[1 - y] + 
   EllipticE[y] EllipticK[1 - y] - EllipticK[y] EllipticK[1 - y]]
 ]

(* EllipticE[y] EllipticK[1 - y] + (EllipticE[1 - y] - EllipticK[1 - y]) EllipticK[y] *)

If the xa are changed to ys, or vice versa, the output will be π/2.

$\endgroup$
1
  • $\begingroup$ Thank you! Suggested method indeed works. $\endgroup$ Commented Apr 3, 2013 at 9:35

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.