       Re: Simplifying Jacobian elliptic functions

• To: mathgroup at smc.vnet.net
• Subject: [mg56372] Re: Simplifying Jacobian elliptic functions
• From: Peter Pein <petsie at arcor.de>
• Date: Sat, 23 Apr 2005 01:16:05 -0400 (EDT)
• References: <d2j8j8\$k2\$1@smc.vnet.net> <d4ak9q\$iof\$1@smc.vnet.net>
• Sender: owner-wri-mathgroup at wolfram.com

```John Billingham wrote:
>>Unprotect[Plus]
>>JacobiDN[p_, k_]^2 + k_ JacobiSN[p_, k_]^2 := 1
>>Protect[Plus]
>>
>
>
> Thanks for the tip. Why does your suggestion work, but
>
> Unprotect[Minus];
> 1 -  JacobiSN[p_, m_]^2 := JacobiCN[p, m]^2;
> Protect[Minus];
>
> doesn't??
>
> John
>
There are (at least) two reasons:
1.) 1 -  JacobiSN[p_, m_]^2 has no call of the Function Minus[] in it:
In:=
FullForm[1 - JacobiSN[p_, m_]^2]
Out//FullForm=
Plus[1, Times[-1, Power[JacobiSN[
Pattern[p, Blank[]], Pattern[m, Blank[]]], 2]]]

2.) Minus is not the operator for subtraction:
In:=
?? Minus
"-x is the arithmetic negation of x."*
Button[More\[Ellipsis], ButtonData :> "Minus", Active -> True,
Attributes[Minus] = {Listable, NumericFunction, Protected}

As you can see from the FullForm of the difference, even Subtract[] does