Mathematica Stack Exchange is a question and answer site for users of Mathematica. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

why does the following instruction ok in mathematica, and it returns a boolean value

In[398]:= catenary[x, 1, 0, 0] == catenary[-x, 1, 0, 0]
Out[398]:= True

and not this one?

In[406]:= catenary[-x, 1, 0, 0] == -catenary[x, 1, 0, 0]
Out[406]:= Cosh[x] == -Cosh[x]

I wanted to have a boolean value too.. to prove the symmetry.. Thanks for your help!

share|improve this question
Wrap the entire thing in TrueQ[] if need be. Less facetiously: your last equation is true for x an odd multiple of $\dfrac{\pi i}{2}$ and false otherwise. – J. M. Jun 19 '12 at 15:52
up vote 1 down vote accepted

I think you should use three "="s, i.e.,


(* True *)

If you need the Boolean value, then

Cosh[x] === Cosh[-x] // Boole

(* 1 *)

share|improve this answer
Cosh[x] == Cosh[-x] works fine; Mathematica is not too dumb to not know that the hyperbolic cosine is even. – J. M. Jun 19 '12 at 16:30
@J.M. But Sinh[x]==Sinh[-x] return itself, which is not the purpose of the programmer, whereas, Sinh[x]===Sinh[-x] works fine. – yulinlinyu Jun 21 '12 at 1:28
Again: Sinh[] is not the function in the OP. – J. M. Jun 21 '12 at 1:29
This is an example to illustrate the way to cope with the problem. I don't think the author need Cosh ONLY but no other functions. – yulinlinyu Jun 21 '12 at 1:31
You'd think that, until you see OP's other questions... – J. M. Jun 21 '12 at 1:32

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

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