MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  mul4sq Structured version   Unicode version

Theorem mul4sq 13323
Description: Euler's four-square identity: The product of two sums of four squares is also a sum of four squares. This is usually quoted as an explicit formula involving eight real variables; we save some time by working with complex numbers (gaussian integers) instead, so that we only have to work with four variables, and also hiding the actual formula for the product in the proof of mul4sqlem 13322. (For the curious, the explicit formula that is used is  (  |  a  |  ^ 2  +  |  b  |  ^
2 ) (  |  c  |  ^ 2  +  |  d  |  ^ 2 )  =  |  a *  x.  c  +  b  x.  d *  |  ^ 2  +  | 
a *  x.  d  -  b  x.  c
*  |  ^ 2.) (Contributed by Mario Carneiro, 14-Jul-2014.)
Hypothesis
Ref Expression
4sq.1  |-  S  =  { n  |  E. x  e.  ZZ  E. y  e.  ZZ  E. z  e.  ZZ  E. w  e.  ZZ  n  =  ( ( ( x ^
2 )  +  ( y ^ 2 ) )  +  ( ( z ^ 2 )  +  ( w ^
2 ) ) ) }
Assertion
Ref Expression
mul4sq  |-  ( ( A  e.  S  /\  B  e.  S )  ->  ( A  x.  B
)  e.  S )
Distinct variable groups:    w, n, x, y, z    B, n    A, n    S, n
Allowed substitution hints:    A( x, y, z, w)    B( x, y, z, w)    S( x, y, z, w)

Proof of Theorem mul4sq
Dummy variables  a 
b  c  d are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 4sq.1 . . 3  |-  S  =  { n  |  E. x  e.  ZZ  E. y  e.  ZZ  E. z  e.  ZZ  E. w  e.  ZZ  n  =  ( ( ( x ^
2 )  +  ( y ^ 2 ) )  +  ( ( z ^ 2 )  +  ( w ^
2 ) ) ) }
214sqlem4 13321 . 2  |-  ( A  e.  S  <->  E. a  e.  ZZ [ _i ]  E. b  e.  ZZ [ _i ]  A  =  ( ( ( abs `  a ) ^ 2 )  +  ( ( abs `  b ) ^ 2 ) ) )
314sqlem4 13321 . 2  |-  ( B  e.  S  <->  E. c  e.  ZZ [ _i ]  E. d  e.  ZZ [ _i ]  B  =  ( ( ( abs `  c ) ^ 2 )  +  ( ( abs `  d ) ^ 2 ) ) )
4 reeanv 2876 . . 3  |-  ( E. a  e.  ZZ [
_i ]  E. c  e.  ZZ [ _i ] 
( E. b  e.  ZZ [ _i ]  A  =  ( (
( abs `  a
) ^ 2 )  +  ( ( abs `  b ) ^ 2 ) )  /\  E. d  e.  ZZ [ _i ]  B  =  (
( ( abs `  c
) ^ 2 )  +  ( ( abs `  d ) ^ 2 ) ) )  <->  ( E. a  e.  ZZ [ _i ]  E. b  e.  ZZ [ _i ]  A  =  ( ( ( abs `  a ) ^ 2 )  +  ( ( abs `  b ) ^ 2 ) )  /\  E. c  e.  ZZ [ _i ]  E. d  e.  ZZ [ _i ]  B  =  ( ( ( abs `  c ) ^ 2 )  +  ( ( abs `  d ) ^ 2 ) ) ) )
5 reeanv 2876 . . . . 5  |-  ( E. b  e.  ZZ [
_i ]  E. d  e.  ZZ [ _i ] 
( A  =  ( ( ( abs `  a
) ^ 2 )  +  ( ( abs `  b ) ^ 2 ) )  /\  B  =  ( ( ( abs `  c ) ^ 2 )  +  ( ( abs `  d
) ^ 2 ) ) )  <->  ( E. b  e.  ZZ [ _i ]  A  =  (
( ( abs `  a
) ^ 2 )  +  ( ( abs `  b ) ^ 2 ) )  /\  E. d  e.  ZZ [ _i ]  B  =  (
( ( abs `  c
) ^ 2 )  +  ( ( abs `  d ) ^ 2 ) ) ) )
6 simpll 732 . . . . . . . . . . . . 13  |-  ( ( ( a  e.  ZZ [ _i ]  /\  c  e.  ZZ [ _i ]
)  /\  ( b  e.  ZZ [ _i ]  /\  d  e.  ZZ [ _i ] ) )  ->  a  e.  ZZ [ _i ] )
7 gzabssqcl 13310 . . . . . . . . . . . . 13  |-  ( a  e.  ZZ [ _i ]  ->  ( ( abs `  a ) ^ 2 )  e.  NN0 )
86, 7syl 16 . . . . . . . . . . . 12  |-  ( ( ( a  e.  ZZ [ _i ]  /\  c  e.  ZZ [ _i ]
)  /\  ( b  e.  ZZ [ _i ]  /\  d  e.  ZZ [ _i ] ) )  ->  ( ( abs `  a ) ^ 2 )  e.  NN0 )
9 simprl 734 . . . . . . . . . . . . 13  |-  ( ( ( a  e.  ZZ [ _i ]  /\  c  e.  ZZ [ _i ]
)  /\  ( b  e.  ZZ [ _i ]  /\  d  e.  ZZ [ _i ] ) )  ->  b  e.  ZZ [ _i ] )
10 gzabssqcl 13310 . . . . . . . . . . . . 13  |-  ( b  e.  ZZ [ _i ]  ->  ( ( abs `  b ) ^ 2 )  e.  NN0 )
119, 10syl 16 . . . . . . . . . . . 12  |-  ( ( ( a  e.  ZZ [ _i ]  /\  c  e.  ZZ [ _i ]
)  /\  ( b  e.  ZZ [ _i ]  /\  d  e.  ZZ [ _i ] ) )  ->  ( ( abs `  b ) ^ 2 )  e.  NN0 )
128, 11nn0addcld 10279 . . . . . . . . . . 11  |-  ( ( ( a  e.  ZZ [ _i ]  /\  c  e.  ZZ [ _i ]
)  /\  ( b  e.  ZZ [ _i ]  /\  d  e.  ZZ [ _i ] ) )  ->  ( ( ( abs `  a ) ^ 2 )  +  ( ( abs `  b
) ^ 2 ) )  e.  NN0 )
1312nn0cnd 10277 . . . . . . . . . 10  |-  ( ( ( a  e.  ZZ [ _i ]  /\  c  e.  ZZ [ _i ]
)  /\  ( b  e.  ZZ [ _i ]  /\  d  e.  ZZ [ _i ] ) )  ->  ( ( ( abs `  a ) ^ 2 )  +  ( ( abs `  b
) ^ 2 ) )  e.  CC )
1413div1d 9783 . . . . . . . . 9  |-  ( ( ( a  e.  ZZ [ _i ]  /\  c  e.  ZZ [ _i ]
)  /\  ( b  e.  ZZ [ _i ]  /\  d  e.  ZZ [ _i ] ) )  ->  ( ( ( ( abs `  a
) ^ 2 )  +  ( ( abs `  b ) ^ 2 ) )  /  1
)  =  ( ( ( abs `  a
) ^ 2 )  +  ( ( abs `  b ) ^ 2 ) ) )
15 simplr 733 . . . . . . . . . . . . 13  |-  ( ( ( a  e.  ZZ [ _i ]  /\  c  e.  ZZ [ _i ]
)  /\  ( b  e.  ZZ [ _i ]  /\  d  e.  ZZ [ _i ] ) )  ->  c  e.  ZZ [ _i ] )
16 gzabssqcl 13310 . . . . . . . . . . . . 13  |-  ( c  e.  ZZ [ _i ]  ->  ( ( abs `  c ) ^ 2 )  e.  NN0 )
1715, 16syl 16 . . . . . . . . . . . 12  |-  ( ( ( a  e.  ZZ [ _i ]  /\  c  e.  ZZ [ _i ]
)  /\  ( b  e.  ZZ [ _i ]  /\  d  e.  ZZ [ _i ] ) )  ->  ( ( abs `  c ) ^ 2 )  e.  NN0 )
18 simprr 735 . . . . . . . . . . . . 13  |-  ( ( ( a  e.  ZZ [ _i ]  /\  c  e.  ZZ [ _i ]
)  /\  ( b  e.  ZZ [ _i ]  /\  d  e.  ZZ [ _i ] ) )  ->  d  e.  ZZ [ _i ] )
19 gzabssqcl 13310 . . . . . . . . . . . . 13  |-  ( d  e.  ZZ [ _i ]  ->  ( ( abs `  d ) ^ 2 )  e.  NN0 )
2018, 19syl 16 . . . . . . . . . . . 12  |-  ( ( ( a  e.  ZZ [ _i ]  /\  c  e.  ZZ [ _i ]
)  /\  ( b  e.  ZZ [ _i ]  /\  d  e.  ZZ [ _i ] ) )  ->  ( ( abs `  d ) ^ 2 )  e.  NN0 )
2117, 20nn0addcld 10279 . . . . . . . . . . 11  |-  ( ( ( a  e.  ZZ [ _i ]  /\  c  e.  ZZ [ _i ]
)  /\  ( b  e.  ZZ [ _i ]  /\  d  e.  ZZ [ _i ] ) )  ->  ( ( ( abs `  c ) ^ 2 )  +  ( ( abs `  d
) ^ 2 ) )  e.  NN0 )
2221nn0cnd 10277 . . . . . . . . . 10  |-  ( ( ( a  e.  ZZ [ _i ]  /\  c  e.  ZZ [ _i ]
)  /\  ( b  e.  ZZ [ _i ]  /\  d  e.  ZZ [ _i ] ) )  ->  ( ( ( abs `  c ) ^ 2 )  +  ( ( abs `  d
) ^ 2 ) )  e.  CC )
2322div1d 9783 . . . . . . . . 9  |-  ( ( ( a  e.  ZZ [ _i ]  /\  c  e.  ZZ [ _i ]
)  /\  ( b  e.  ZZ [ _i ]  /\  d  e.  ZZ [ _i ] ) )  ->  ( ( ( ( abs `  c
) ^ 2 )  +  ( ( abs `  d ) ^ 2 ) )  /  1
)  =  ( ( ( abs `  c
) ^ 2 )  +  ( ( abs `  d ) ^ 2 ) ) )
2414, 23oveq12d 6100 . . . . . . . 8  |-  ( ( ( a  e.  ZZ [ _i ]  /\  c  e.  ZZ [ _i ]
)  /\  ( b  e.  ZZ [ _i ]  /\  d  e.  ZZ [ _i ] ) )  ->  ( ( ( ( ( abs `  a
) ^ 2 )  +  ( ( abs `  b ) ^ 2 ) )  /  1
)  x.  ( ( ( ( abs `  c
) ^ 2 )  +  ( ( abs `  d ) ^ 2 ) )  /  1
) )  =  ( ( ( ( abs `  a ) ^ 2 )  +  ( ( abs `  b ) ^ 2 ) )  x.  ( ( ( abs `  c ) ^ 2 )  +  ( ( abs `  d
) ^ 2 ) ) ) )
25 eqid 2437 . . . . . . . . 9  |-  ( ( ( abs `  a
) ^ 2 )  +  ( ( abs `  b ) ^ 2 ) )  =  ( ( ( abs `  a
) ^ 2 )  +  ( ( abs `  b ) ^ 2 ) )
26 eqid 2437 . . . . . . . . 9  |-  ( ( ( abs `  c
) ^ 2 )  +  ( ( abs `  d ) ^ 2 ) )  =  ( ( ( abs `  c
) ^ 2 )  +  ( ( abs `  d ) ^ 2 ) )
27 1nn 10012 . . . . . . . . . 10  |-  1  e.  NN
2827a1i 11 . . . . . . . . 9  |-  ( ( ( a  e.  ZZ [ _i ]  /\  c  e.  ZZ [ _i ]
)  /\  ( b  e.  ZZ [ _i ]  /\  d  e.  ZZ [ _i ] ) )  ->  1  e.  NN )
29 gzsubcl 13309 . . . . . . . . . . . . 13  |-  ( ( a  e.  ZZ [
_i ]  /\  c  e.  ZZ [ _i ]
)  ->  ( a  -  c )  e.  ZZ [ _i ]
)
3029adantr 453 . . . . . . . . . . . 12  |-  ( ( ( a  e.  ZZ [ _i ]  /\  c  e.  ZZ [ _i ]
)  /\  ( b  e.  ZZ [ _i ]  /\  d  e.  ZZ [ _i ] ) )  ->  ( a  -  c )  e.  ZZ [ _i ] )
31 gzcn 13301 . . . . . . . . . . . 12  |-  ( ( a  -  c )  e.  ZZ [ _i ]  ->  ( a  -  c )  e.  CC )
3230, 31syl 16 . . . . . . . . . . 11  |-  ( ( ( a  e.  ZZ [ _i ]  /\  c  e.  ZZ [ _i ]
)  /\  ( b  e.  ZZ [ _i ]  /\  d  e.  ZZ [ _i ] ) )  ->  ( a  -  c )  e.  CC )
3332div1d 9783 . . . . . . . . . 10  |-  ( ( ( a  e.  ZZ [ _i ]  /\  c  e.  ZZ [ _i ]
)  /\  ( b  e.  ZZ [ _i ]  /\  d  e.  ZZ [ _i ] ) )  ->  ( ( a  -  c )  / 
1 )  =  ( a  -  c ) )
3433, 30eqeltrd 2511 . . . . . . . . 9  |-  ( ( ( a  e.  ZZ [ _i ]  /\  c  e.  ZZ [ _i ]
)  /\  ( b  e.  ZZ [ _i ]  /\  d  e.  ZZ [ _i ] ) )  ->  ( ( a  -  c )  / 
1 )  e.  ZZ [ _i ] )
35 gzsubcl 13309 . . . . . . . . . . . . 13  |-  ( ( b  e.  ZZ [
_i ]  /\  d  e.  ZZ [ _i ]
)  ->  ( b  -  d )  e.  ZZ [ _i ]
)
3635adantl 454 . . . . . . . . . . . 12  |-  ( ( ( a  e.  ZZ [ _i ]  /\  c  e.  ZZ [ _i ]
)  /\  ( b  e.  ZZ [ _i ]  /\  d  e.  ZZ [ _i ] ) )  ->  ( b  -  d )  e.  ZZ [ _i ] )
37 gzcn 13301 . . . . . . . . . . . 12  |-  ( ( b  -  d )  e.  ZZ [ _i ]  ->  ( b  -  d )  e.  CC )
3836, 37syl 16 . . . . . . . . . . 11  |-  ( ( ( a  e.  ZZ [ _i ]  /\  c  e.  ZZ [ _i ]
)  /\  ( b  e.  ZZ [ _i ]  /\  d  e.  ZZ [ _i ] ) )  ->  ( b  -  d )  e.  CC )
3938div1d 9783 . . . . . . . . . 10  |-  ( ( ( a  e.  ZZ [ _i ]  /\  c  e.  ZZ [ _i ]
)  /\  ( b  e.  ZZ [ _i ]  /\  d  e.  ZZ [ _i ] ) )  ->  ( ( b  -  d )  / 
1 )  =  ( b  -  d ) )
4039, 36eqeltrd 2511 . . . . . . . . 9  |-  ( ( ( a  e.  ZZ [ _i ]  /\  c  e.  ZZ [ _i ]
)  /\  ( b  e.  ZZ [ _i ]  /\  d  e.  ZZ [ _i ] ) )  ->  ( ( b  -  d )  / 
1 )  e.  ZZ [ _i ] )
4114, 12eqeltrd 2511 . . . . . . . . 9  |-  ( ( ( a  e.  ZZ [ _i ]  /\  c  e.  ZZ [ _i ]
)  /\  ( b  e.  ZZ [ _i ]  /\  d  e.  ZZ [ _i ] ) )  ->  ( ( ( ( abs `  a
) ^ 2 )  +  ( ( abs `  b ) ^ 2 ) )  /  1
)  e.  NN0 )
421, 6, 9, 15, 18, 25, 26, 28, 34, 40, 41mul4sqlem 13322 . . . . . . . 8  |-  ( ( ( a  e.  ZZ [ _i ]  /\  c  e.  ZZ [ _i ]
)  /\  ( b  e.  ZZ [ _i ]  /\  d  e.  ZZ [ _i ] ) )  ->  ( ( ( ( ( abs `  a
) ^ 2 )  +  ( ( abs `  b ) ^ 2 ) )  /  1
)  x.  ( ( ( ( abs `  c
) ^ 2 )  +  ( ( abs `  d ) ^ 2 ) )  /  1
) )  e.  S
)
4324, 42eqeltrrd 2512 . . . . . . 7  |-  ( ( ( a  e.  ZZ [ _i ]  /\  c  e.  ZZ [ _i ]
)  /\  ( b  e.  ZZ [ _i ]  /\  d  e.  ZZ [ _i ] ) )  ->  ( ( ( ( abs `  a
) ^ 2 )  +  ( ( abs `  b ) ^ 2 ) )  x.  (
( ( abs `  c
) ^ 2 )  +  ( ( abs `  d ) ^ 2 ) ) )  e.  S )
44 oveq12 6091 . . . . . . . 8  |-  ( ( A  =  ( ( ( abs `  a
) ^ 2 )  +  ( ( abs `  b ) ^ 2 ) )  /\  B  =  ( ( ( abs `  c ) ^ 2 )  +  ( ( abs `  d
) ^ 2 ) ) )  ->  ( A  x.  B )  =  ( ( ( ( abs `  a
) ^ 2 )  +  ( ( abs `  b ) ^ 2 ) )  x.  (
( ( abs `  c
) ^ 2 )  +  ( ( abs `  d ) ^ 2 ) ) ) )
4544eleq1d 2503 . . . . . . 7  |-  ( ( A  =  ( ( ( abs `  a
) ^ 2 )  +  ( ( abs `  b ) ^ 2 ) )  /\  B  =  ( ( ( abs `  c ) ^ 2 )  +  ( ( abs `  d
) ^ 2 ) ) )  ->  (
( A  x.  B
)  e.  S  <->  ( (
( ( abs `  a
) ^ 2 )  +  ( ( abs `  b ) ^ 2 ) )  x.  (
( ( abs `  c
) ^ 2 )  +  ( ( abs `  d ) ^ 2 ) ) )  e.  S ) )
4643, 45syl5ibrcom 215 . . . . . 6  |-  ( ( ( a  e.  ZZ [ _i ]  /\  c  e.  ZZ [ _i ]
)  /\  ( b  e.  ZZ [ _i ]  /\  d  e.  ZZ [ _i ] ) )  ->  ( ( A  =  ( ( ( abs `  a ) ^ 2 )  +  ( ( abs `  b
) ^ 2 ) )  /\  B  =  ( ( ( abs `  c ) ^ 2 )  +  ( ( abs `  d ) ^ 2 ) ) )  ->  ( A  x.  B )  e.  S
) )
4746rexlimdvva 2838 . . . . 5  |-  ( ( a  e.  ZZ [
_i ]  /\  c  e.  ZZ [ _i ]
)  ->  ( E. b  e.  ZZ [ _i ]  E. d  e.  ZZ [ _i ]  ( A  =  ( ( ( abs `  a ) ^ 2 )  +  ( ( abs `  b
) ^ 2 ) )  /\  B  =  ( ( ( abs `  c ) ^ 2 )  +  ( ( abs `  d ) ^ 2 ) ) )  ->  ( A  x.  B )  e.  S
) )
485, 47syl5bir 211 . . . 4  |-  ( ( a  e.  ZZ [
_i ]  /\  c  e.  ZZ [ _i ]
)  ->  ( ( E. b  e.  ZZ [ _i ]  A  =  ( ( ( abs `  a ) ^ 2 )  +  ( ( abs `  b ) ^ 2 ) )  /\  E. d  e.  ZZ [ _i ]  B  =  ( (
( abs `  c
) ^ 2 )  +  ( ( abs `  d ) ^ 2 ) ) )  -> 
( A  x.  B
)  e.  S ) )
4948rexlimivv 2836 . . 3  |-  ( E. a  e.  ZZ [
_i ]  E. c  e.  ZZ [ _i ] 
( E. b  e.  ZZ [ _i ]  A  =  ( (
( abs `  a
) ^ 2 )  +  ( ( abs `  b ) ^ 2 ) )  /\  E. d  e.  ZZ [ _i ]  B  =  (
( ( abs `  c
) ^ 2 )  +  ( ( abs `  d ) ^ 2 ) ) )  -> 
( A  x.  B
)  e.  S )
504, 49sylbir 206 . 2  |-  ( ( E. a  e.  ZZ [ _i ]  E. b  e.  ZZ [ _i ]  A  =  ( (
( abs `  a
) ^ 2 )  +  ( ( abs `  b ) ^ 2 ) )  /\  E. c  e.  ZZ [ _i ]  E. d  e.  ZZ [ _i ]  B  =  ( ( ( abs `  c ) ^ 2 )  +  ( ( abs `  d ) ^ 2 ) ) )  ->  ( A  x.  B )  e.  S
)
512, 3, 50syl2anb 467 1  |-  ( ( A  e.  S  /\  B  e.  S )  ->  ( A  x.  B
)  e.  S )
Colors of variables: wff set class
Syntax hints:    -> wi 4    /\ wa 360    = wceq 1653    e. wcel 1726   {cab 2423   E.wrex 2707   ` cfv 5455  (class class class)co 6082   CCcc 8989   1c1 8992    + caddc 8994    x. cmul 8996    - cmin 9292    / cdiv 9678   NNcn 10001   2c2 10050   NN0cn0 10222   ZZcz 10283   ^cexp 11383   abscabs 12040   ZZ [ _i ]cgz 13298
This theorem is referenced by:  4sqlem19  13332
This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-3 7  ax-mp 8  ax-gen 1556  ax-5 1567  ax-17 1627  ax-9 1667  ax-8 1688  ax-13 1728  ax-14 1730  ax-6 1745  ax-7 1750  ax-11 1762  ax-12 1951  ax-ext 2418  ax-sep 4331  ax-nul 4339  ax-pow 4378  ax-pr 4404  ax-un 4702  ax-cnex 9047  ax-resscn 9048  ax-1cn 9049  ax-icn 9050  ax-addcl 9051  ax-addrcl 9052  ax-mulcl 9053  ax-mulrcl 9054  ax-mulcom 9055  ax-addass 9056  ax-mulass 9057  ax-distr 9058  ax-i2m1 9059  ax-1ne0 9060  ax-1rid 9061  ax-rnegex 9062  ax-rrecex 9063  ax-cnre 9064  ax-pre-lttri 9065  ax-pre-lttrn 9066  ax-pre-ltadd 9067  ax-pre-mulgt0 9068  ax-pre-sup 9069
This theorem depends on definitions:  df-bi 179  df-or 361  df-an 362  df-3or 938  df-3an 939  df-tru 1329  df-ex 1552  df-nf 1555  df-sb 1660  df-eu 2286  df-mo 2287  df-clab 2424  df-cleq 2430  df-clel 2433  df-nfc 2562  df-ne 2602  df-nel 2603  df-ral 2711  df-rex 2712  df-reu 2713  df-rmo 2714  df-rab 2715  df-v 2959  df-sbc 3163  df-csb 3253  df-dif 3324  df-un 3326  df-in 3328  df-ss 3335  df-pss 3337  df-nul 3630  df-if 3741  df-pw 3802  df-sn 3821  df-pr 3822  df-tp 3823  df-op 3824  df-uni 4017  df-iun 4096  df-br 4214  df-opab 4268  df-mpt 4269  df-tr 4304  df-eprel 4495  df-id 4499  df-po 4504  df-so 4505  df-fr 4542  df-we 4544  df-ord 4585  df-on 4586  df-lim 4587  df-suc 4588  df-om 4847  df-xp 4885  df-rel 4886  df-cnv 4887  df-co 4888  df-dm 4889  df-rn 4890  df-res 4891  df-ima 4892  df-iota 5419  df-fun 5457  df-fn 5458  df-f 5459  df-f1 5460  df-fo 5461  df-f1o 5462  df-fv 5463  df-ov 6085  df-oprab 6086  df-mpt2 6087  df-2nd 6351  df-riota 6550  df-recs 6634  df-rdg 6669  df-er 6906  df-en 7111  df-dom 7112  df-sdom 7113  df-sup 7447  df-pnf 9123  df-mnf 9124  df-xr 9125  df-ltxr 9126  df-le 9127  df-sub 9294  df-neg 9295  df-div 9679  df-nn 10002  df-2 10059  df-3 10060  df-n0 10223  df-z 10284  df-uz 10490  df-rp 10614  df-seq 11325  df-exp 11384  df-cj 11905  df-re 11906  df-im 11907  df-sqr 12041  df-abs 12042  df-gz 13299
  Copyright terms: Public domain W3C validator