Metamath Proof Explorer


Theorem rmxdbl

Description: "Double-angle formula" for X-values. Equation 2.13 of JonesMatijasevic p. 695. (Contributed by Stefan O'Rear, 2-Oct-2014)

Ref Expression
Assertion rmxdbl
|- ( ( A e. ( ZZ>= ` 2 ) /\ N e. ZZ ) -> ( A rmX ( 2 x. N ) ) = ( ( 2 x. ( ( A rmX N ) ^ 2 ) ) - 1 ) )

Proof

Step Hyp Ref Expression
1 zcn
 |-  ( N e. ZZ -> N e. CC )
2 1 adantl
 |-  ( ( A e. ( ZZ>= ` 2 ) /\ N e. ZZ ) -> N e. CC )
3 2 2timesd
 |-  ( ( A e. ( ZZ>= ` 2 ) /\ N e. ZZ ) -> ( 2 x. N ) = ( N + N ) )
4 3 oveq2d
 |-  ( ( A e. ( ZZ>= ` 2 ) /\ N e. ZZ ) -> ( A rmX ( 2 x. N ) ) = ( A rmX ( N + N ) ) )
5 rmxadd
 |-  ( ( A e. ( ZZ>= ` 2 ) /\ N e. ZZ /\ N e. ZZ ) -> ( A rmX ( N + N ) ) = ( ( ( A rmX N ) x. ( A rmX N ) ) + ( ( ( A ^ 2 ) - 1 ) x. ( ( A rmY N ) x. ( A rmY N ) ) ) ) )
6 5 3anidm23
 |-  ( ( A e. ( ZZ>= ` 2 ) /\ N e. ZZ ) -> ( A rmX ( N + N ) ) = ( ( ( A rmX N ) x. ( A rmX N ) ) + ( ( ( A ^ 2 ) - 1 ) x. ( ( A rmY N ) x. ( A rmY N ) ) ) ) )
7 frmx
 |-  rmX : ( ( ZZ>= ` 2 ) X. ZZ ) --> NN0
8 7 fovcl
 |-  ( ( A e. ( ZZ>= ` 2 ) /\ N e. ZZ ) -> ( A rmX N ) e. NN0 )
9 8 nn0cnd
 |-  ( ( A e. ( ZZ>= ` 2 ) /\ N e. ZZ ) -> ( A rmX N ) e. CC )
10 9 sqcld
 |-  ( ( A e. ( ZZ>= ` 2 ) /\ N e. ZZ ) -> ( ( A rmX N ) ^ 2 ) e. CC )
11 rmspecnonsq
 |-  ( A e. ( ZZ>= ` 2 ) -> ( ( A ^ 2 ) - 1 ) e. ( NN \ []NN ) )
12 11 eldifad
 |-  ( A e. ( ZZ>= ` 2 ) -> ( ( A ^ 2 ) - 1 ) e. NN )
13 12 nncnd
 |-  ( A e. ( ZZ>= ` 2 ) -> ( ( A ^ 2 ) - 1 ) e. CC )
14 13 adantr
 |-  ( ( A e. ( ZZ>= ` 2 ) /\ N e. ZZ ) -> ( ( A ^ 2 ) - 1 ) e. CC )
15 frmy
 |-  rmY : ( ( ZZ>= ` 2 ) X. ZZ ) --> ZZ
16 15 fovcl
 |-  ( ( A e. ( ZZ>= ` 2 ) /\ N e. ZZ ) -> ( A rmY N ) e. ZZ )
17 16 zcnd
 |-  ( ( A e. ( ZZ>= ` 2 ) /\ N e. ZZ ) -> ( A rmY N ) e. CC )
18 17 sqcld
 |-  ( ( A e. ( ZZ>= ` 2 ) /\ N e. ZZ ) -> ( ( A rmY N ) ^ 2 ) e. CC )
19 14 18 mulcld
 |-  ( ( A e. ( ZZ>= ` 2 ) /\ N e. ZZ ) -> ( ( ( A ^ 2 ) - 1 ) x. ( ( A rmY N ) ^ 2 ) ) e. CC )
20 10 10 19 pnncand
 |-  ( ( A e. ( ZZ>= ` 2 ) /\ N e. ZZ ) -> ( ( ( ( A rmX N ) ^ 2 ) + ( ( A rmX N ) ^ 2 ) ) - ( ( ( A rmX N ) ^ 2 ) - ( ( ( A ^ 2 ) - 1 ) x. ( ( A rmY N ) ^ 2 ) ) ) ) = ( ( ( A rmX N ) ^ 2 ) + ( ( ( A ^ 2 ) - 1 ) x. ( ( A rmY N ) ^ 2 ) ) ) )
21 10 2timesd
 |-  ( ( A e. ( ZZ>= ` 2 ) /\ N e. ZZ ) -> ( 2 x. ( ( A rmX N ) ^ 2 ) ) = ( ( ( A rmX N ) ^ 2 ) + ( ( A rmX N ) ^ 2 ) ) )
22 21 eqcomd
 |-  ( ( A e. ( ZZ>= ` 2 ) /\ N e. ZZ ) -> ( ( ( A rmX N ) ^ 2 ) + ( ( A rmX N ) ^ 2 ) ) = ( 2 x. ( ( A rmX N ) ^ 2 ) ) )
23 rmxynorm
 |-  ( ( A e. ( ZZ>= ` 2 ) /\ N e. ZZ ) -> ( ( ( A rmX N ) ^ 2 ) - ( ( ( A ^ 2 ) - 1 ) x. ( ( A rmY N ) ^ 2 ) ) ) = 1 )
24 22 23 oveq12d
 |-  ( ( A e. ( ZZ>= ` 2 ) /\ N e. ZZ ) -> ( ( ( ( A rmX N ) ^ 2 ) + ( ( A rmX N ) ^ 2 ) ) - ( ( ( A rmX N ) ^ 2 ) - ( ( ( A ^ 2 ) - 1 ) x. ( ( A rmY N ) ^ 2 ) ) ) ) = ( ( 2 x. ( ( A rmX N ) ^ 2 ) ) - 1 ) )
25 9 sqvald
 |-  ( ( A e. ( ZZ>= ` 2 ) /\ N e. ZZ ) -> ( ( A rmX N ) ^ 2 ) = ( ( A rmX N ) x. ( A rmX N ) ) )
26 17 sqvald
 |-  ( ( A e. ( ZZ>= ` 2 ) /\ N e. ZZ ) -> ( ( A rmY N ) ^ 2 ) = ( ( A rmY N ) x. ( A rmY N ) ) )
27 26 oveq2d
 |-  ( ( A e. ( ZZ>= ` 2 ) /\ N e. ZZ ) -> ( ( ( A ^ 2 ) - 1 ) x. ( ( A rmY N ) ^ 2 ) ) = ( ( ( A ^ 2 ) - 1 ) x. ( ( A rmY N ) x. ( A rmY N ) ) ) )
28 25 27 oveq12d
 |-  ( ( A e. ( ZZ>= ` 2 ) /\ N e. ZZ ) -> ( ( ( A rmX N ) ^ 2 ) + ( ( ( A ^ 2 ) - 1 ) x. ( ( A rmY N ) ^ 2 ) ) ) = ( ( ( A rmX N ) x. ( A rmX N ) ) + ( ( ( A ^ 2 ) - 1 ) x. ( ( A rmY N ) x. ( A rmY N ) ) ) ) )
29 20 24 28 3eqtr3rd
 |-  ( ( A e. ( ZZ>= ` 2 ) /\ N e. ZZ ) -> ( ( ( A rmX N ) x. ( A rmX N ) ) + ( ( ( A ^ 2 ) - 1 ) x. ( ( A rmY N ) x. ( A rmY N ) ) ) ) = ( ( 2 x. ( ( A rmX N ) ^ 2 ) ) - 1 ) )
30 4 6 29 3eqtrd
 |-  ( ( A e. ( ZZ>= ` 2 ) /\ N e. ZZ ) -> ( A rmX ( 2 x. N ) ) = ( ( 2 x. ( ( A rmX N ) ^ 2 ) ) - 1 ) )