4
$\begingroup$

I'm trying to make Mathematica confirm that the following is true:

FullSimplify[ArcCos[Sqrt[1/2 (2 + M)/(1 + M)]] == ArcCsc[Sqrt[2 + 2/M]], M > 0]

But it stubbornly returns me unchanged equality. How to make Mathematica evaluate it to True (since it is true)?

$\endgroup$

2 Answers 2

5
$\begingroup$

Use a change of variables M == 1/m

M > 0 /. M -> 1/m // Simplify

(*  m > 0  *)

eqn = ArcCos[Sqrt[1/2 (2 + M)/(1 + M)]] == ArcCsc[Sqrt[2 + 2/M]];

eqn /. M -> 1/m // TrigToExp //
  ComplexExpand[#, TargetFunctions -> {Re, Im}] & //
 FullSimplify[#, m > 0] &

(*  True  *)

Or equivalently,

expr = ArcCos[Sqrt[1/2 (2 + M)/(1 + M)]] - ArcCsc[Sqrt[2 + 2/M]];

expr /. M -> 1/m // TrigToExp //
  ComplexExpand[#, TargetFunctions -> {Re, Im}] & //
 FullSimplify[#, m > 0] &

(*  0  *)
$\endgroup$
2
  • 1
    $\begingroup$ Funnily, neither Re nor Im appear in the output of ComplexExpand, although the whole thing ultimately does evaluate to True. Also, how did you guess to do this exact change of variables? $\endgroup$
    – Ruslan
    Commented Jan 9, 2017 at 5:30
  • $\begingroup$ @Ruslan - I was looking for a simpler form and eqn /. M -> 1/m // Simplify looked simpler and the arguments of the trig functions had more commonality. $\endgroup$
    – Bob Hanlon
    Commented Jan 9, 2017 at 14:01
5
$\begingroup$

If you are fine with reformulating the equation as

eq = ArcCos[Sqrt[1/2 (2 + M)/(1 + M)]] - ArcCsc[Sqrt[2 + 2/M]] == 0

then one option is the slightly clunky

FullSimplify[TrigToExp[eq] /. a_ Log[b_] + a_ Log[c_] :> a Log[b c], M > 0]

True

Looking at the output of TrigToExp[eq] should explain the need for the Log replacement rule.

$\endgroup$

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.