Users' Mathboxes Mathbox for Thierry Arnoux < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  2sqmod Structured version   Visualization version   Unicode version

Theorem 2sqmod 29648
Description: Given two decompositions of a prime as a sum of two squares, show that they are equal. (Contributed by Thierry Arnoux, 2-Feb-2020.)
Hypotheses
Ref Expression
2sqmod.1  |-  ( ph  ->  P  e.  Prime )
2sqmod.2  |-  ( ph  ->  A  e.  NN0 )
2sqmod.3  |-  ( ph  ->  B  e.  NN0 )
2sqmod.4  |-  ( ph  ->  C  e.  NN0 )
2sqmod.5  |-  ( ph  ->  D  e.  NN0 )
2sqmod.6  |-  ( ph  ->  A  <_  B )
2sqmod.7  |-  ( ph  ->  C  <_  D )
2sqmod.8  |-  ( ph  ->  ( ( A ^
2 )  +  ( B ^ 2 ) )  =  P )
2sqmod.9  |-  ( ph  ->  ( ( C ^
2 )  +  ( D ^ 2 ) )  =  P )
Assertion
Ref Expression
2sqmod  |-  ( ph  ->  ( A  =  C  /\  B  =  D ) )

Proof of Theorem 2sqmod
StepHypRef Expression
1 2sqmod.6 . . . . . 6  |-  ( ph  ->  A  <_  B )
21adantr 481 . . . . 5  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  A  <_  B )
3 2sqmod.4 . . . . . . . 8  |-  ( ph  ->  C  e.  NN0 )
43nn0red 11352 . . . . . . 7  |-  ( ph  ->  C  e.  RR )
54adantr 481 . . . . . 6  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  C  e.  RR )
6 2sqmod.3 . . . . . . . 8  |-  ( ph  ->  B  e.  NN0 )
76nn0red 11352 . . . . . . 7  |-  ( ph  ->  B  e.  RR )
87adantr 481 . . . . . 6  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  B  e.  RR )
93nn0ge0d 11354 . . . . . . 7  |-  ( ph  ->  0  <_  C )
109adantr 481 . . . . . 6  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  0  <_  C )
116nn0ge0d 11354 . . . . . . 7  |-  ( ph  ->  0  <_  B )
1211adantr 481 . . . . . 6  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  0  <_  B )
133nn0cnd 11353 . . . . . . . . 9  |-  ( ph  ->  C  e.  CC )
1413sqcld 13006 . . . . . . . 8  |-  ( ph  ->  ( C ^ 2 )  e.  CC )
1514adantr 481 . . . . . . 7  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( C ^ 2 )  e.  CC )
166nn0cnd 11353 . . . . . . . . 9  |-  ( ph  ->  B  e.  CC )
1716sqcld 13006 . . . . . . . 8  |-  ( ph  ->  ( B ^ 2 )  e.  CC )
1817adantr 481 . . . . . . 7  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( B ^ 2 )  e.  CC )
19 2sqmod.2 . . . . . . . . . . . . 13  |-  ( ph  ->  A  e.  NN0 )
2019nn0cnd 11353 . . . . . . . . . . . 12  |-  ( ph  ->  A  e.  CC )
2120sqcld 13006 . . . . . . . . . . 11  |-  ( ph  ->  ( A ^ 2 )  e.  CC )
22 2sqmod.5 . . . . . . . . . . . . 13  |-  ( ph  ->  D  e.  NN0 )
2322nn0cnd 11353 . . . . . . . . . . . 12  |-  ( ph  ->  D  e.  CC )
2423sqcld 13006 . . . . . . . . . . 11  |-  ( ph  ->  ( D ^ 2 )  e.  CC )
25 2sqmod.8 . . . . . . . . . . . 12  |-  ( ph  ->  ( ( A ^
2 )  +  ( B ^ 2 ) )  =  P )
26 2sqmod.9 . . . . . . . . . . . 12  |-  ( ph  ->  ( ( C ^
2 )  +  ( D ^ 2 ) )  =  P )
2725, 26eqtr4d 2659 . . . . . . . . . . 11  |-  ( ph  ->  ( ( A ^
2 )  +  ( B ^ 2 ) )  =  ( ( C ^ 2 )  +  ( D ^
2 ) ) )
2821, 17, 14, 24, 27subaddeqd 10446 . . . . . . . . . 10  |-  ( ph  ->  ( ( A ^
2 )  -  ( D ^ 2 ) )  =  ( ( C ^ 2 )  -  ( B ^ 2 ) ) )
2928adantr 481 . . . . . . . . 9  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( ( A ^ 2 )  -  ( D ^ 2 ) )  =  ( ( C ^ 2 )  -  ( B ^
2 ) ) )
3019nn0zd 11480 . . . . . . . . . . . . . . . 16  |-  ( ph  ->  A  e.  ZZ )
313nn0zd 11480 . . . . . . . . . . . . . . . 16  |-  ( ph  ->  C  e.  ZZ )
32 dvdsmul1 15003 . . . . . . . . . . . . . . . 16  |-  ( ( A  e.  ZZ  /\  C  e.  ZZ )  ->  A  ||  ( A  x.  C ) )
3330, 31, 32syl2anc 693 . . . . . . . . . . . . . . 15  |-  ( ph  ->  A  ||  ( A  x.  C ) )
3433adantr 481 . . . . . . . . . . . . . 14  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  A  ||  ( A  x.  C )
)
3520, 13mulcld 10060 . . . . . . . . . . . . . . . 16  |-  ( ph  ->  ( A  x.  C
)  e.  CC )
3635adantr 481 . . . . . . . . . . . . . . 15  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( A  x.  C )  e.  CC )
3716, 23mulcld 10060 . . . . . . . . . . . . . . . 16  |-  ( ph  ->  ( B  x.  D
)  e.  CC )
3837adantr 481 . . . . . . . . . . . . . . 15  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( B  x.  D )  e.  CC )
3919nn0red 11352 . . . . . . . . . . . . . . . . . . . 20  |-  ( ph  ->  A  e.  RR )
4039, 4remulcld 10070 . . . . . . . . . . . . . . . . . . 19  |-  ( ph  ->  ( A  x.  C
)  e.  RR )
4122nn0red 11352 . . . . . . . . . . . . . . . . . . . 20  |-  ( ph  ->  D  e.  RR )
427, 41remulcld 10070 . . . . . . . . . . . . . . . . . . 19  |-  ( ph  ->  ( B  x.  D
)  e.  RR )
4340, 42resubcld 10458 . . . . . . . . . . . . . . . . . 18  |-  ( ph  ->  ( ( A  x.  C )  -  ( B  x.  D )
)  e.  RR )
4443recnd 10068 . . . . . . . . . . . . . . . . 17  |-  ( ph  ->  ( ( A  x.  C )  -  ( B  x.  D )
)  e.  CC )
4544adantr 481 . . . . . . . . . . . . . . . 16  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( ( A  x.  C )  -  ( B  x.  D ) )  e.  CC )
4643sqge0d 13036 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( ph  ->  0  <_  ( (
( A  x.  C
)  -  ( B  x.  D ) ) ^ 2 ) )
47 2sqmod.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30  |-  ( ph  ->  P  e.  Prime )
486nn0zd 11480 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30  |-  ( ph  ->  B  e.  ZZ )
4947, 30, 48, 252sqn0 29646 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  |-  ( ph  ->  A  =/=  0 )
50 elnnne0 11306 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  |-  ( A  e.  NN  <->  ( A  e.  NN0  /\  A  =/=  0 ) )
5119, 49, 50sylanbrc 698 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28  |-  ( ph  ->  A  e.  NN )
5222nn0zd 11480 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30  |-  ( ph  ->  D  e.  ZZ )
5324, 14addcomd 10238 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31  |-  ( ph  ->  ( ( D ^
2 )  +  ( C ^ 2 ) )  =  ( ( C ^ 2 )  +  ( D ^
2 ) ) )
5453, 26eqtrd 2656 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30  |-  ( ph  ->  ( ( D ^
2 )  +  ( C ^ 2 ) )  =  P )
5547, 52, 31, 542sqn0 29646 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  |-  ( ph  ->  D  =/=  0 )
56 elnnne0 11306 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  |-  ( D  e.  NN  <->  ( D  e.  NN0  /\  D  =/=  0 ) )
5722, 55, 56sylanbrc 698 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28  |-  ( ph  ->  D  e.  NN )
5851, 57nnmulcld 11068 . . . . . . . . . . . . . . . . . . . . . . . . . . 27  |-  ( ph  ->  ( A  x.  D
)  e.  NN )
5947, 31, 52, 262sqn0 29646 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  |-  ( ph  ->  C  =/=  0 )
60 elnnne0 11306 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  |-  ( C  e.  NN  <->  ( C  e.  NN0  /\  C  =/=  0 ) )
613, 59, 60sylanbrc 698 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28  |-  ( ph  ->  C  e.  NN )
6217, 21addcomd 10238 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31  |-  ( ph  ->  ( ( B ^
2 )  +  ( A ^ 2 ) )  =  ( ( A ^ 2 )  +  ( B ^
2 ) ) )
6362, 25eqtrd 2656 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30  |-  ( ph  ->  ( ( B ^
2 )  +  ( A ^ 2 ) )  =  P )
6447, 48, 30, 632sqn0 29646 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  |-  ( ph  ->  B  =/=  0 )
65 elnnne0 11306 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  |-  ( B  e.  NN  <->  ( B  e.  NN0  /\  B  =/=  0 ) )
666, 64, 65sylanbrc 698 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28  |-  ( ph  ->  B  e.  NN )
6761, 66nnmulcld 11068 . . . . . . . . . . . . . . . . . . . . . . . . . . 27  |-  ( ph  ->  ( C  x.  B
)  e.  NN )
6858, 67nnaddcld 11067 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( ph  ->  ( ( A  x.  D )  +  ( C  x.  B ) )  e.  NN )
6968nnsqcld 13029 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( ph  ->  ( ( ( A  x.  D )  +  ( C  x.  B
) ) ^ 2 )  e.  NN )
7069nnred 11035 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( ph  ->  ( ( ( A  x.  D )  +  ( C  x.  B
) ) ^ 2 )  e.  RR )
7143resqcld 13035 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( ph  ->  ( ( ( A  x.  C )  -  ( B  x.  D
) ) ^ 2 )  e.  RR )
7270, 71addge02d 10616 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( ph  ->  ( 0  <_  (
( ( A  x.  C )  -  ( B  x.  D )
) ^ 2 )  <-> 
( ( ( A  x.  D )  +  ( C  x.  B
) ) ^ 2 )  <_  ( (
( ( A  x.  C )  -  ( B  x.  D )
) ^ 2 )  +  ( ( ( A  x.  D )  +  ( C  x.  B ) ) ^
2 ) ) ) )
7346, 72mpbid 222 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ph  ->  ( ( ( A  x.  D )  +  ( C  x.  B
) ) ^ 2 )  <_  ( (
( ( A  x.  C )  -  ( B  x.  D )
) ^ 2 )  +  ( ( ( A  x.  D )  +  ( C  x.  B ) ) ^
2 ) ) )
7425, 26oveq12d 6668 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( ph  ->  ( ( ( A ^ 2 )  +  ( B ^ 2 ) )  x.  (
( C ^ 2 )  +  ( D ^ 2 ) ) )  =  ( P  x.  P ) )
75 bhmafibid1 29644 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( ( ( A  e.  RR  /\  B  e.  RR )  /\  ( C  e.  RR  /\  D  e.  RR ) )  -> 
( ( ( A ^ 2 )  +  ( B ^ 2 ) )  x.  (
( C ^ 2 )  +  ( D ^ 2 ) ) )  =  ( ( ( ( A  x.  C )  -  ( B  x.  D )
) ^ 2 )  +  ( ( ( A  x.  D )  +  ( B  x.  C ) ) ^
2 ) ) )
7639, 7, 4, 41, 75syl22anc 1327 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( ph  ->  ( ( ( A ^ 2 )  +  ( B ^ 2 ) )  x.  (
( C ^ 2 )  +  ( D ^ 2 ) ) )  =  ( ( ( ( A  x.  C )  -  ( B  x.  D )
) ^ 2 )  +  ( ( ( A  x.  D )  +  ( B  x.  C ) ) ^
2 ) ) )
7774, 76eqtr3d 2658 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( ph  ->  ( P  x.  P
)  =  ( ( ( ( A  x.  C )  -  ( B  x.  D )
) ^ 2 )  +  ( ( ( A  x.  D )  +  ( B  x.  C ) ) ^
2 ) ) )
78 prmz 15389 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( P  e.  Prime  ->  P  e.  ZZ )
7947, 78syl 17 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( ph  ->  P  e.  ZZ )
8079zcnd 11483 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( ph  ->  P  e.  CC )
8180sqvald 13005 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( ph  ->  ( P ^ 2 )  =  ( P  x.  P ) )
8213, 16mulcomd 10061 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( ph  ->  ( C  x.  B
)  =  ( B  x.  C ) )
8382oveq2d 6666 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( ph  ->  ( ( A  x.  D )  +  ( C  x.  B ) )  =  ( ( A  x.  D )  +  ( B  x.  C ) ) )
8483oveq1d 6665 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( ph  ->  ( ( ( A  x.  D )  +  ( C  x.  B
) ) ^ 2 )  =  ( ( ( A  x.  D
)  +  ( B  x.  C ) ) ^ 2 ) )
8584oveq2d 6666 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( ph  ->  ( ( ( ( A  x.  C )  -  ( B  x.  D ) ) ^
2 )  +  ( ( ( A  x.  D )  +  ( C  x.  B ) ) ^ 2 ) )  =  ( ( ( ( A  x.  C )  -  ( B  x.  D )
) ^ 2 )  +  ( ( ( A  x.  D )  +  ( B  x.  C ) ) ^
2 ) ) )
8677, 81, 853eqtr4d 2666 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ph  ->  ( P ^ 2 )  =  ( ( ( ( A  x.  C )  -  ( B  x.  D )
) ^ 2 )  +  ( ( ( A  x.  D )  +  ( C  x.  B ) ) ^
2 ) ) )
8773, 86breqtrrd 4681 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ph  ->  ( ( ( A  x.  D )  +  ( C  x.  B
) ) ^ 2 )  <_  ( P ^ 2 ) )
8887adantr 481 . . . . . . . . . . . . . . . . . . . 20  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( (
( A  x.  D
)  +  ( C  x.  B ) ) ^ 2 )  <_ 
( P ^ 2 ) )
8930, 52zmulcld 11488 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( ph  ->  ( A  x.  D
)  e.  ZZ )
9031, 48zmulcld 11488 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( ph  ->  ( C  x.  B
)  e.  ZZ )
9189, 90zaddcld 11486 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( ph  ->  ( ( A  x.  D )  +  ( C  x.  B ) )  e.  ZZ )
92 dvdssqim 15273 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( ( P  e.  ZZ  /\  ( ( A  x.  D )  +  ( C  x.  B ) )  e.  ZZ )  ->  ( P  ||  ( ( A  x.  D )  +  ( C  x.  B ) )  ->  ( P ^ 2 )  ||  ( ( ( A  x.  D )  +  ( C  x.  B
) ) ^ 2 ) ) )
9379, 91, 92syl2anc 693 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ph  ->  ( P  ||  (
( A  x.  D
)  +  ( C  x.  B ) )  ->  ( P ^
2 )  ||  (
( ( A  x.  D )  +  ( C  x.  B ) ) ^ 2 ) ) )
94 zsqcl 12934 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( P  e.  ZZ  ->  ( P ^ 2 )  e.  ZZ )
9579, 94syl 17 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( ph  ->  ( P ^ 2 )  e.  ZZ )
96 dvdsle 15032 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( ( ( P ^ 2 )  e.  ZZ  /\  ( ( ( A  x.  D )  +  ( C  x.  B
) ) ^ 2 )  e.  NN )  ->  ( ( P ^ 2 )  ||  ( ( ( A  x.  D )  +  ( C  x.  B
) ) ^ 2 )  ->  ( P ^ 2 )  <_ 
( ( ( A  x.  D )  +  ( C  x.  B
) ) ^ 2 ) ) )
9795, 69, 96syl2anc 693 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ph  ->  ( ( P ^
2 )  ||  (
( ( A  x.  D )  +  ( C  x.  B ) ) ^ 2 )  ->  ( P ^
2 )  <_  (
( ( A  x.  D )  +  ( C  x.  B ) ) ^ 2 ) ) )
9893, 97syld 47 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ph  ->  ( P  ||  (
( A  x.  D
)  +  ( C  x.  B ) )  ->  ( P ^
2 )  <_  (
( ( A  x.  D )  +  ( C  x.  B ) ) ^ 2 ) ) )
9998imp 445 . . . . . . . . . . . . . . . . . . . 20  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( P ^ 2 )  <_ 
( ( ( A  x.  D )  +  ( C  x.  B
) ) ^ 2 ) )
10095zred 11482 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ph  ->  ( P ^ 2 )  e.  RR )
10170, 100letri3d 10179 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ph  ->  ( ( ( ( A  x.  D )  +  ( C  x.  B ) ) ^
2 )  =  ( P ^ 2 )  <-> 
( ( ( ( A  x.  D )  +  ( C  x.  B ) ) ^
2 )  <_  ( P ^ 2 )  /\  ( P ^ 2 )  <_  ( ( ( A  x.  D )  +  ( C  x.  B ) ) ^
2 ) ) ) )
102101adantr 481 . . . . . . . . . . . . . . . . . . . 20  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( (
( ( A  x.  D )  +  ( C  x.  B ) ) ^ 2 )  =  ( P ^
2 )  <->  ( (
( ( A  x.  D )  +  ( C  x.  B ) ) ^ 2 )  <_  ( P ^
2 )  /\  ( P ^ 2 )  <_ 
( ( ( A  x.  D )  +  ( C  x.  B
) ) ^ 2 ) ) ) )
10388, 99, 102mpbir2and 957 . . . . . . . . . . . . . . . . . . 19  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( (
( A  x.  D
)  +  ( C  x.  B ) ) ^ 2 )  =  ( P ^ 2 ) )
10486adantr 481 . . . . . . . . . . . . . . . . . . 19  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( P ^ 2 )  =  ( ( ( ( A  x.  C )  -  ( B  x.  D ) ) ^
2 )  +  ( ( ( A  x.  D )  +  ( C  x.  B ) ) ^ 2 ) ) )
105103, 104eqtr2d 2657 . . . . . . . . . . . . . . . . . 18  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( (
( ( A  x.  C )  -  ( B  x.  D )
) ^ 2 )  +  ( ( ( A  x.  D )  +  ( C  x.  B ) ) ^
2 ) )  =  ( ( ( A  x.  D )  +  ( C  x.  B
) ) ^ 2 ) )
10670recnd 10068 . . . . . . . . . . . . . . . . . . . 20  |-  ( ph  ->  ( ( ( A  x.  D )  +  ( C  x.  B
) ) ^ 2 )  e.  CC )
10771recnd 10068 . . . . . . . . . . . . . . . . . . . 20  |-  ( ph  ->  ( ( ( A  x.  C )  -  ( B  x.  D
) ) ^ 2 )  e.  CC )
108106, 106, 107subadd2d 10411 . . . . . . . . . . . . . . . . . . 19  |-  ( ph  ->  ( ( ( ( ( A  x.  D
)  +  ( C  x.  B ) ) ^ 2 )  -  ( ( ( A  x.  D )  +  ( C  x.  B
) ) ^ 2 ) )  =  ( ( ( A  x.  C )  -  ( B  x.  D )
) ^ 2 )  <-> 
( ( ( ( A  x.  C )  -  ( B  x.  D ) ) ^
2 )  +  ( ( ( A  x.  D )  +  ( C  x.  B ) ) ^ 2 ) )  =  ( ( ( A  x.  D
)  +  ( C  x.  B ) ) ^ 2 ) ) )
109108adantr 481 . . . . . . . . . . . . . . . . . 18  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( (
( ( ( A  x.  D )  +  ( C  x.  B
) ) ^ 2 )  -  ( ( ( A  x.  D
)  +  ( C  x.  B ) ) ^ 2 ) )  =  ( ( ( A  x.  C )  -  ( B  x.  D ) ) ^
2 )  <->  ( (
( ( A  x.  C )  -  ( B  x.  D )
) ^ 2 )  +  ( ( ( A  x.  D )  +  ( C  x.  B ) ) ^
2 ) )  =  ( ( ( A  x.  D )  +  ( C  x.  B
) ) ^ 2 ) ) )
110105, 109mpbird 247 . . . . . . . . . . . . . . . . 17  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( (
( ( A  x.  D )  +  ( C  x.  B ) ) ^ 2 )  -  ( ( ( A  x.  D )  +  ( C  x.  B ) ) ^
2 ) )  =  ( ( ( A  x.  C )  -  ( B  x.  D
) ) ^ 2 ) )
111106subidd 10380 . . . . . . . . . . . . . . . . . 18  |-  ( ph  ->  ( ( ( ( A  x.  D )  +  ( C  x.  B ) ) ^
2 )  -  (
( ( A  x.  D )  +  ( C  x.  B ) ) ^ 2 ) )  =  0 )
112111adantr 481 . . . . . . . . . . . . . . . . 17  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( (
( ( A  x.  D )  +  ( C  x.  B ) ) ^ 2 )  -  ( ( ( A  x.  D )  +  ( C  x.  B ) ) ^
2 ) )  =  0 )
113110, 112eqtr3d 2658 . . . . . . . . . . . . . . . 16  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( (
( A  x.  C
)  -  ( B  x.  D ) ) ^ 2 )  =  0 )
11445, 113sqeq0d 13007 . . . . . . . . . . . . . . 15  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( ( A  x.  C )  -  ( B  x.  D ) )  =  0 )
11536, 38, 114subeq0d 10400 . . . . . . . . . . . . . 14  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( A  x.  C )  =  ( B  x.  D ) )
11634, 115breqtrd 4679 . . . . . . . . . . . . 13  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  A  ||  ( B  x.  D )
)
11747, 30, 48, 252sqcoprm 29647 . . . . . . . . . . . . . 14  |-  ( ph  ->  ( A  gcd  B
)  =  1 )
118117adantr 481 . . . . . . . . . . . . 13  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( A  gcd  B )  =  1 )
119 coprmdvds 15366 . . . . . . . . . . . . . . 15  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  D  e.  ZZ )  ->  (
( A  ||  ( B  x.  D )  /\  ( A  gcd  B
)  =  1 )  ->  A  ||  D
) )
12030, 48, 52, 119syl3anc 1326 . . . . . . . . . . . . . 14  |-  ( ph  ->  ( ( A  ||  ( B  x.  D
)  /\  ( A  gcd  B )  =  1 )  ->  A  ||  D
) )
121120adantr 481 . . . . . . . . . . . . 13  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( ( A  ||  ( B  x.  D )  /\  ( A  gcd  B )  =  1 )  ->  A  ||  D ) )
122116, 118, 121mp2and 715 . . . . . . . . . . . 12  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  A  ||  D
)
123 dvdsle 15032 . . . . . . . . . . . . . 14  |-  ( ( A  e.  ZZ  /\  D  e.  NN )  ->  ( A  ||  D  ->  A  <_  D )
)
12430, 57, 123syl2anc 693 . . . . . . . . . . . . 13  |-  ( ph  ->  ( A  ||  D  ->  A  <_  D )
)
125124adantr 481 . . . . . . . . . . . 12  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( A  ||  D  ->  A  <_  D ) )
126122, 125mpd 15 . . . . . . . . . . 11  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  A  <_  D )
12751nnrpd 11870 . . . . . . . . . . . . . 14  |-  ( ph  ->  A  e.  RR+ )
128127rprege0d 11879 . . . . . . . . . . . . 13  |-  ( ph  ->  ( A  e.  RR  /\  0  <_  A )
)
12922nn0ge0d 11354 . . . . . . . . . . . . 13  |-  ( ph  ->  0  <_  D )
130 le2sq 12938 . . . . . . . . . . . . 13  |-  ( ( ( A  e.  RR  /\  0  <_  A )  /\  ( D  e.  RR  /\  0  <_  D )
)  ->  ( A  <_  D  <->  ( A ^
2 )  <_  ( D ^ 2 ) ) )
131128, 41, 129, 130syl12anc 1324 . . . . . . . . . . . 12  |-  ( ph  ->  ( A  <_  D  <->  ( A ^ 2 )  <_  ( D ^
2 ) ) )
132131adantr 481 . . . . . . . . . . 11  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( A  <_  D  <->  ( A ^
2 )  <_  ( D ^ 2 ) ) )
133126, 132mpbid 222 . . . . . . . . . 10  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( A ^ 2 )  <_ 
( D ^ 2 ) )
13451nnsqcld 13029 . . . . . . . . . . . . 13  |-  ( ph  ->  ( A ^ 2 )  e.  NN )
135134nnred 11035 . . . . . . . . . . . 12  |-  ( ph  ->  ( A ^ 2 )  e.  RR )
136 zsqcl 12934 . . . . . . . . . . . . . 14  |-  ( D  e.  ZZ  ->  ( D ^ 2 )  e.  ZZ )
13752, 136syl 17 . . . . . . . . . . . . 13  |-  ( ph  ->  ( D ^ 2 )  e.  ZZ )
138137zred 11482 . . . . . . . . . . . 12  |-  ( ph  ->  ( D ^ 2 )  e.  RR )
139135, 138suble0d 10618 . . . . . . . . . . 11  |-  ( ph  ->  ( ( ( A ^ 2 )  -  ( D ^ 2 ) )  <_  0  <->  ( A ^ 2 )  <_ 
( D ^ 2 ) ) )
140139adantr 481 . . . . . . . . . 10  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( (
( A ^ 2 )  -  ( D ^ 2 ) )  <_  0  <->  ( A ^ 2 )  <_ 
( D ^ 2 ) ) )
141133, 140mpbird 247 . . . . . . . . 9  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( ( A ^ 2 )  -  ( D ^ 2 ) )  <_  0 )
14229, 141eqbrtrrd 4677 . . . . . . . 8  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( ( C ^ 2 )  -  ( B ^ 2 ) )  <_  0 )
143 dvdsmul1 15003 . . . . . . . . . . . . . . 15  |-  ( ( B  e.  ZZ  /\  D  e.  ZZ )  ->  B  ||  ( B  x.  D ) )
14448, 52, 143syl2anc 693 . . . . . . . . . . . . . 14  |-  ( ph  ->  B  ||  ( B  x.  D ) )
145144adantr 481 . . . . . . . . . . . . 13  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  B  ||  ( B  x.  D )
)
146145, 115breqtrrd 4681 . . . . . . . . . . . 12  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  B  ||  ( A  x.  C )
)
147 gcdcom 15235 . . . . . . . . . . . . . . 15  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ )  ->  ( A  gcd  B
)  =  ( B  gcd  A ) )
14830, 48, 147syl2anc 693 . . . . . . . . . . . . . 14  |-  ( ph  ->  ( A  gcd  B
)  =  ( B  gcd  A ) )
149148, 117eqtr3d 2658 . . . . . . . . . . . . 13  |-  ( ph  ->  ( B  gcd  A
)  =  1 )
150149adantr 481 . . . . . . . . . . . 12  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( B  gcd  A )  =  1 )
151 coprmdvds 15366 . . . . . . . . . . . . . 14  |-  ( ( B  e.  ZZ  /\  A  e.  ZZ  /\  C  e.  ZZ )  ->  (
( B  ||  ( A  x.  C )  /\  ( B  gcd  A
)  =  1 )  ->  B  ||  C
) )
15248, 30, 31, 151syl3anc 1326 . . . . . . . . . . . . 13  |-  ( ph  ->  ( ( B  ||  ( A  x.  C
)  /\  ( B  gcd  A )  =  1 )  ->  B  ||  C
) )
153152adantr 481 . . . . . . . . . . . 12  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( ( B  ||  ( A  x.  C )  /\  ( B  gcd  A )  =  1 )  ->  B  ||  C ) )
154146, 150, 153mp2and 715 . . . . . . . . . . 11  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  B  ||  C
)
155 dvdsle 15032 . . . . . . . . . . . . 13  |-  ( ( B  e.  ZZ  /\  C  e.  NN )  ->  ( B  ||  C  ->  B  <_  C )
)
15648, 61, 155syl2anc 693 . . . . . . . . . . . 12  |-  ( ph  ->  ( B  ||  C  ->  B  <_  C )
)
157156adantr 481 . . . . . . . . . . 11  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( B  ||  C  ->  B  <_  C ) )
158154, 157mpd 15 . . . . . . . . . 10  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  B  <_  C )
1597, 4, 11, 9le2sqd 13044 . . . . . . . . . . 11  |-  ( ph  ->  ( B  <_  C  <->  ( B ^ 2 )  <_  ( C ^
2 ) ) )
160159adantr 481 . . . . . . . . . 10  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( B  <_  C  <->  ( B ^
2 )  <_  ( C ^ 2 ) ) )
161158, 160mpbid 222 . . . . . . . . 9  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( B ^ 2 )  <_ 
( C ^ 2 ) )
1624resqcld 13035 . . . . . . . . . . 11  |-  ( ph  ->  ( C ^ 2 )  e.  RR )
163 zsqcl 12934 . . . . . . . . . . . . 13  |-  ( B  e.  ZZ  ->  ( B ^ 2 )  e.  ZZ )
16448, 163syl 17 . . . . . . . . . . . 12  |-  ( ph  ->  ( B ^ 2 )  e.  ZZ )
165164zred 11482 . . . . . . . . . . 11  |-  ( ph  ->  ( B ^ 2 )  e.  RR )
166162, 165subge0d 10617 . . . . . . . . . 10  |-  ( ph  ->  ( 0  <_  (
( C ^ 2 )  -  ( B ^ 2 ) )  <-> 
( B ^ 2 )  <_  ( C ^ 2 ) ) )
167166adantr 481 . . . . . . . . 9  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( 0  <_  ( ( C ^ 2 )  -  ( B ^ 2 ) )  <->  ( B ^
2 )  <_  ( C ^ 2 ) ) )
168161, 167mpbird 247 . . . . . . . 8  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  0  <_  ( ( C ^ 2 )  -  ( B ^ 2 ) ) )
169135, 138resubcld 10458 . . . . . . . . . . 11  |-  ( ph  ->  ( ( A ^
2 )  -  ( D ^ 2 ) )  e.  RR )
17028, 169eqeltrrd 2702 . . . . . . . . . 10  |-  ( ph  ->  ( ( C ^
2 )  -  ( B ^ 2 ) )  e.  RR )
171 0red 10041 . . . . . . . . . 10  |-  ( ph  ->  0  e.  RR )
172170, 171letri3d 10179 . . . . . . . . 9  |-  ( ph  ->  ( ( ( C ^ 2 )  -  ( B ^ 2 ) )  =  0  <->  (
( ( C ^
2 )  -  ( B ^ 2 ) )  <_  0  /\  0  <_  ( ( C ^
2 )  -  ( B ^ 2 ) ) ) ) )
173172adantr 481 . . . . . . . 8  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( (
( C ^ 2 )  -  ( B ^ 2 ) )  =  0  <->  ( (
( C ^ 2 )  -  ( B ^ 2 ) )  <_  0  /\  0  <_  ( ( C ^
2 )  -  ( B ^ 2 ) ) ) ) )
174142, 168, 173mpbir2and 957 . . . . . . 7  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( ( C ^ 2 )  -  ( B ^ 2 ) )  =  0 )
17515, 18, 174subeq0d 10400 . . . . . 6  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( C ^ 2 )  =  ( B ^ 2 ) )
1765, 8, 10, 12, 175sq11d 13045 . . . . 5  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  C  =  B )
1772, 176breqtrrd 4681 . . . 4  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  A  <_  C )
178 2sqmod.7 . . . . . 6  |-  ( ph  ->  C  <_  D )
179178adantr 481 . . . . 5  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  C  <_  D )
18039adantr 481 . . . . . 6  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  A  e.  RR )
18141adantr 481 . . . . . 6  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  D  e.  RR )
18219nn0ge0d 11354 . . . . . . 7  |-  ( ph  ->  0  <_  A )
183182adantr 481 . . . . . 6  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  0  <_  A )
184129adantr 481 . . . . . 6  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  0  <_  D )
18521adantr 481 . . . . . . 7  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( A ^ 2 )  e.  CC )
18624adantr 481 . . . . . . 7  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( D ^ 2 )  e.  CC )
187168, 29breqtrrd 4681 . . . . . . . 8  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  0  <_  ( ( A ^ 2 )  -  ( D ^ 2 ) ) )
188169, 171letri3d 10179 . . . . . . . . 9  |-  ( ph  ->  ( ( ( A ^ 2 )  -  ( D ^ 2 ) )  =  0  <->  (
( ( A ^
2 )  -  ( D ^ 2 ) )  <_  0  /\  0  <_  ( ( A ^
2 )  -  ( D ^ 2 ) ) ) ) )
189188adantr 481 . . . . . . . 8  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( (
( A ^ 2 )  -  ( D ^ 2 ) )  =  0  <->  ( (
( A ^ 2 )  -  ( D ^ 2 ) )  <_  0  /\  0  <_  ( ( A ^
2 )  -  ( D ^ 2 ) ) ) ) )
190141, 187, 189mpbir2and 957 . . . . . . 7  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( ( A ^ 2 )  -  ( D ^ 2 ) )  =  0 )
191185, 186, 190subeq0d 10400 . . . . . 6  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( A ^ 2 )  =  ( D ^ 2 ) )
192180, 181, 183, 184, 191sq11d 13045 . . . . 5  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  A  =  D )
193179, 192breqtrrd 4681 . . . 4  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  C  <_  A )
19439, 4letri3d 10179 . . . . 5  |-  ( ph  ->  ( A  =  C  <-> 
( A  <_  C  /\  C  <_  A ) ) )
195194adantr 481 . . . 4  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( A  =  C  <->  ( A  <_  C  /\  C  <_  A
) ) )
196177, 193, 195mpbir2and 957 . . 3  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  A  =  C )
19720adantr 481 . . . 4  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) )  ->  A  e.  CC )
19813adantr 481 . . . 4  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) )  ->  C  e.  CC )
19916adantr 481 . . . 4  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) )  ->  B  e.  CC )
20064adantr 481 . . . 4  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) )  ->  B  =/=  0 )
20141adantr 481 . . . . . . 7  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) )  ->  D  e.  RR )
2027adantr 481 . . . . . . 7  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) )  ->  B  e.  RR )
203129adantr 481 . . . . . . 7  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) )  ->  0  <_  D )
20411adantr 481 . . . . . . 7  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) )  ->  0  <_  B )
20524adantr 481 . . . . . . . 8  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) )  ->  ( D ^ 2 )  e.  CC )
20617adantr 481 . . . . . . . 8  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) )  ->  ( B ^ 2 )  e.  CC )
207 prmnn 15388 . . . . . . . . . . . . 13  |-  ( P  e.  Prime  ->  P  e.  NN )
20847, 207syl 17 . . . . . . . . . . . 12  |-  ( ph  ->  P  e.  NN )
209208nnne0d 11065 . . . . . . . . . . 11  |-  ( ph  ->  P  =/=  0 )
210209neneqd 2799 . . . . . . . . . 10  |-  ( ph  ->  -.  P  =  0 )
211210adantr 481 . . . . . . . . 9  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) )  ->  -.  P  =  0 )
21280, 24, 17subdid 10486 . . . . . . . . . . . . . . 15  |-  ( ph  ->  ( P  x.  (
( D ^ 2 )  -  ( B ^ 2 ) ) )  =  ( ( P  x.  ( D ^ 2 ) )  -  ( P  x.  ( B ^ 2 ) ) ) )
21380, 24mulcld 10060 . . . . . . . . . . . . . . . 16  |-  ( ph  ->  ( P  x.  ( D ^ 2 ) )  e.  CC )
21421, 24mulcld 10060 . . . . . . . . . . . . . . . 16  |-  ( ph  ->  ( ( A ^
2 )  x.  ( D ^ 2 ) )  e.  CC )
21580, 17mulcld 10060 . . . . . . . . . . . . . . . 16  |-  ( ph  ->  ( P  x.  ( B ^ 2 ) )  e.  CC )
21614, 17mulcld 10060 . . . . . . . . . . . . . . . 16  |-  ( ph  ->  ( ( C ^
2 )  x.  ( B ^ 2 ) )  e.  CC )
21717, 24mulcomd 10061 . . . . . . . . . . . . . . . . . 18  |-  ( ph  ->  ( ( B ^
2 )  x.  ( D ^ 2 ) )  =  ( ( D ^ 2 )  x.  ( B ^ 2 ) ) )
21825oveq1d 6665 . . . . . . . . . . . . . . . . . . . 20  |-  ( ph  ->  ( ( ( A ^ 2 )  +  ( B ^ 2 ) )  -  ( A ^ 2 ) )  =  ( P  -  ( A ^ 2 ) ) )
21921, 17pncan2d 10394 . . . . . . . . . . . . . . . . . . . 20  |-  ( ph  ->  ( ( ( A ^ 2 )  +  ( B ^ 2 ) )  -  ( A ^ 2 ) )  =  ( B ^
2 ) )
220218, 219eqtr3d 2658 . . . . . . . . . . . . . . . . . . 19  |-  ( ph  ->  ( P  -  ( A ^ 2 ) )  =  ( B ^
2 ) )
221220oveq1d 6665 . . . . . . . . . . . . . . . . . 18  |-  ( ph  ->  ( ( P  -  ( A ^ 2 ) )  x.  ( D ^ 2 ) )  =  ( ( B ^ 2 )  x.  ( D ^ 2 ) ) )
22226oveq1d 6665 . . . . . . . . . . . . . . . . . . . 20  |-  ( ph  ->  ( ( ( C ^ 2 )  +  ( D ^ 2 ) )  -  ( C ^ 2 ) )  =  ( P  -  ( C ^ 2 ) ) )
22314, 24pncan2d 10394 . . . . . . . . . . . . . . . . . . . 20  |-  ( ph  ->  ( ( ( C ^ 2 )  +  ( D ^ 2 ) )  -  ( C ^ 2 ) )  =  ( D ^
2 ) )
224222, 223eqtr3d 2658 . . . . . . . . . . . . . . . . . . 19  |-  ( ph  ->  ( P  -  ( C ^ 2 ) )  =  ( D ^
2 ) )
225224oveq1d 6665 . . . . . . . . . . . . . . . . . 18  |-  ( ph  ->  ( ( P  -  ( C ^ 2 ) )  x.  ( B ^ 2 ) )  =  ( ( D ^ 2 )  x.  ( B ^ 2 ) ) )
226217, 221, 2253eqtr4d 2666 . . . . . . . . . . . . . . . . 17  |-  ( ph  ->  ( ( P  -  ( A ^ 2 ) )  x.  ( D ^ 2 ) )  =  ( ( P  -  ( C ^
2 ) )  x.  ( B ^ 2 ) ) )
22780, 21, 24subdird 10487 . . . . . . . . . . . . . . . . 17  |-  ( ph  ->  ( ( P  -  ( A ^ 2 ) )  x.  ( D ^ 2 ) )  =  ( ( P  x.  ( D ^
2 ) )  -  ( ( A ^
2 )  x.  ( D ^ 2 ) ) ) )
22880, 14, 17subdird 10487 . . . . . . . . . . . . . . . . 17  |-  ( ph  ->  ( ( P  -  ( C ^ 2 ) )  x.  ( B ^ 2 ) )  =  ( ( P  x.  ( B ^
2 ) )  -  ( ( C ^
2 )  x.  ( B ^ 2 ) ) ) )
229226, 227, 2283eqtr3d 2664 . . . . . . . . . . . . . . . 16  |-  ( ph  ->  ( ( P  x.  ( D ^ 2 ) )  -  ( ( A ^ 2 )  x.  ( D ^
2 ) ) )  =  ( ( P  x.  ( B ^
2 ) )  -  ( ( C ^
2 )  x.  ( B ^ 2 ) ) ) )
230213, 214, 215, 216, 229subeqxfrd 29511 . . . . . . . . . . . . . . 15  |-  ( ph  ->  ( ( P  x.  ( D ^ 2 ) )  -  ( P  x.  ( B ^
2 ) ) )  =  ( ( ( A ^ 2 )  x.  ( D ^
2 ) )  -  ( ( C ^
2 )  x.  ( B ^ 2 ) ) ) )
231212, 230eqtrd 2656 . . . . . . . . . . . . . 14  |-  ( ph  ->  ( P  x.  (
( D ^ 2 )  -  ( B ^ 2 ) ) )  =  ( ( ( A ^ 2 )  x.  ( D ^ 2 ) )  -  ( ( C ^ 2 )  x.  ( B ^ 2 ) ) ) )
23220, 23sqmuld 13020 . . . . . . . . . . . . . . 15  |-  ( ph  ->  ( ( A  x.  D ) ^ 2 )  =  ( ( A ^ 2 )  x.  ( D ^
2 ) ) )
23313, 16sqmuld 13020 . . . . . . . . . . . . . . 15  |-  ( ph  ->  ( ( C  x.  B ) ^ 2 )  =  ( ( C ^ 2 )  x.  ( B ^
2 ) ) )
234232, 233oveq12d 6668 . . . . . . . . . . . . . 14  |-  ( ph  ->  ( ( ( A  x.  D ) ^
2 )  -  (
( C  x.  B
) ^ 2 ) )  =  ( ( ( A ^ 2 )  x.  ( D ^ 2 ) )  -  ( ( C ^ 2 )  x.  ( B ^ 2 ) ) ) )
23520, 23mulcld 10060 . . . . . . . . . . . . . . 15  |-  ( ph  ->  ( A  x.  D
)  e.  CC )
23613, 16mulcld 10060 . . . . . . . . . . . . . . 15  |-  ( ph  ->  ( C  x.  B
)  e.  CC )
237 subsq 12972 . . . . . . . . . . . . . . 15  |-  ( ( ( A  x.  D
)  e.  CC  /\  ( C  x.  B
)  e.  CC )  ->  ( ( ( A  x.  D ) ^ 2 )  -  ( ( C  x.  B ) ^ 2 ) )  =  ( ( ( A  x.  D )  +  ( C  x.  B ) )  x.  ( ( A  x.  D )  -  ( C  x.  B ) ) ) )
238235, 236, 237syl2anc 693 . . . . . . . . . . . . . 14  |-  ( ph  ->  ( ( ( A  x.  D ) ^
2 )  -  (
( C  x.  B
) ^ 2 ) )  =  ( ( ( A  x.  D
)  +  ( C  x.  B ) )  x.  ( ( A  x.  D )  -  ( C  x.  B
) ) ) )
239231, 234, 2383eqtr2d 2662 . . . . . . . . . . . . 13  |-  ( ph  ->  ( P  x.  (
( D ^ 2 )  -  ( B ^ 2 ) ) )  =  ( ( ( A  x.  D
)  +  ( C  x.  B ) )  x.  ( ( A  x.  D )  -  ( C  x.  B
) ) ) )
240239adantr 481 . . . . . . . . . . . 12  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) )  ->  ( P  x.  ( ( D ^
2 )  -  ( B ^ 2 ) ) )  =  ( ( ( A  x.  D
)  +  ( C  x.  B ) )  x.  ( ( A  x.  D )  -  ( C  x.  B
) ) ) )
241235adantr 481 . . . . . . . . . . . . . 14  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) )  ->  ( A  x.  D )  e.  CC )
242 simpll 790 . . . . . . . . . . . . . . . 16  |-  ( ( ( ph  /\  P  ||  ( ( A  x.  D )  -  ( C  x.  B )
) )  /\  -.  ( A  x.  D
)  =  ( C  x.  B ) )  ->  ph )
243 simpr 477 . . . . . . . . . . . . . . . . 17  |-  ( ( ( ph  /\  P  ||  ( ( A  x.  D )  -  ( C  x.  B )
) )  /\  -.  ( A  x.  D
)  =  ( C  x.  B ) )  ->  -.  ( A  x.  D )  =  ( C  x.  B ) )
244243neqned 2801 . . . . . . . . . . . . . . . 16  |-  ( ( ( ph  /\  P  ||  ( ( A  x.  D )  -  ( C  x.  B )
) )  /\  -.  ( A  x.  D
)  =  ( C  x.  B ) )  ->  ( A  x.  D )  =/=  ( C  x.  B )
)
24589, 90zsubcld 11487 . . . . . . . . . . . . . . . . . . 19  |-  ( ph  ->  ( ( A  x.  D )  -  ( C  x.  B )
)  e.  ZZ )
246 dvdssqim 15273 . . . . . . . . . . . . . . . . . . 19  |-  ( ( P  e.  ZZ  /\  ( ( A  x.  D )  -  ( C  x.  B )
)  e.  ZZ )  ->  ( P  ||  ( ( A  x.  D )  -  ( C  x.  B )
)  ->  ( P ^ 2 )  ||  ( ( ( A  x.  D )  -  ( C  x.  B
) ) ^ 2 ) ) )
24779, 245, 246syl2anc 693 . . . . . . . . . . . . . . . . . 18  |-  ( ph  ->  ( P  ||  (
( A  x.  D
)  -  ( C  x.  B ) )  ->  ( P ^
2 )  ||  (
( ( A  x.  D )  -  ( C  x.  B )
) ^ 2 ) ) )
248247imp 445 . . . . . . . . . . . . . . . . 17  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) )  ->  ( P ^ 2 )  ||  ( ( ( A  x.  D )  -  ( C  x.  B
) ) ^ 2 ) )
249248adantr 481 . . . . . . . . . . . . . . . 16  |-  ( ( ( ph  /\  P  ||  ( ( A  x.  D )  -  ( C  x.  B )
) )  /\  -.  ( A  x.  D
)  =  ( C  x.  B ) )  ->  ( P ^
2 )  ||  (
( ( A  x.  D )  -  ( C  x.  B )
) ^ 2 ) )
25095adantr 481 . . . . . . . . . . . . . . . . . 18  |-  ( (
ph  /\  ( A  x.  D )  =/=  ( C  x.  B )
)  ->  ( P ^ 2 )  e.  ZZ )
251245adantr 481 . . . . . . . . . . . . . . . . . . 19  |-  ( (
ph  /\  ( A  x.  D )  =/=  ( C  x.  B )
)  ->  ( ( A  x.  D )  -  ( C  x.  B ) )  e.  ZZ )
252235adantr 481 . . . . . . . . . . . . . . . . . . . 20  |-  ( (
ph  /\  ( A  x.  D )  =/=  ( C  x.  B )
)  ->  ( A  x.  D )  e.  CC )
253236adantr 481 . . . . . . . . . . . . . . . . . . . 20  |-  ( (
ph  /\  ( A  x.  D )  =/=  ( C  x.  B )
)  ->  ( C  x.  B )  e.  CC )
254 simpr 477 . . . . . . . . . . . . . . . . . . . 20  |-  ( (
ph  /\  ( A  x.  D )  =/=  ( C  x.  B )
)  ->  ( A  x.  D )  =/=  ( C  x.  B )
)
255252, 253, 254subne0d 10401 . . . . . . . . . . . . . . . . . . 19  |-  ( (
ph  /\  ( A  x.  D )  =/=  ( C  x.  B )
)  ->  ( ( A  x.  D )  -  ( C  x.  B ) )  =/=  0 )
256251, 255znsqcld 29512 . . . . . . . . . . . . . . . . . 18  |-  ( (
ph  /\  ( A  x.  D )  =/=  ( C  x.  B )
)  ->  ( (
( A  x.  D
)  -  ( C  x.  B ) ) ^ 2 )  e.  NN )
257 dvdsle 15032 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( P ^ 2 )  e.  ZZ  /\  ( ( ( A  x.  D )  -  ( C  x.  B
) ) ^ 2 )  e.  NN )  ->  ( ( P ^ 2 )  ||  ( ( ( A  x.  D )  -  ( C  x.  B
) ) ^ 2 )  ->  ( P ^ 2 )  <_ 
( ( ( A  x.  D )  -  ( C  x.  B
) ) ^ 2 ) ) )
258250, 256, 257syl2anc 693 . . . . . . . . . . . . . . . . 17  |-  ( (
ph  /\  ( A  x.  D )  =/=  ( C  x.  B )
)  ->  ( ( P ^ 2 )  ||  ( ( ( A  x.  D )  -  ( C  x.  B
) ) ^ 2 )  ->  ( P ^ 2 )  <_ 
( ( ( A  x.  D )  -  ( C  x.  B
) ) ^ 2 ) ) )
259258imp 445 . . . . . . . . . . . . . . . 16  |-  ( ( ( ph  /\  ( A  x.  D )  =/=  ( C  x.  B
) )  /\  ( P ^ 2 )  ||  ( ( ( A  x.  D )  -  ( C  x.  B
) ) ^ 2 ) )  ->  ( P ^ 2 )  <_ 
( ( ( A  x.  D )  -  ( C  x.  B
) ) ^ 2 ) )
260242, 244, 249, 259syl21anc 1325 . . . . . . . . . . . . . . 15  |-  ( ( ( ph  /\  P  ||  ( ( A  x.  D )  -  ( C  x.  B )
) )  /\  -.  ( A  x.  D
)  =  ( C  x.  B ) )  ->  ( P ^
2 )  <_  (
( ( A  x.  D )  -  ( C  x.  B )
) ^ 2 ) )
26139, 41remulcld 10070 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ph  ->  ( A  x.  D
)  e.  RR )
2624, 7remulcld 10070 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ph  ->  ( C  x.  B
)  e.  RR )
263261, 262resubcld 10458 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ph  ->  ( ( A  x.  D )  -  ( C  x.  B )
)  e.  RR )
264263resqcld 13035 . . . . . . . . . . . . . . . . . . . 20  |-  ( ph  ->  ( ( ( A  x.  D )  -  ( C  x.  B
) ) ^ 2 )  e.  RR )
26561nnrpd 11870 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( ph  ->  C  e.  RR+ )
266127, 265rpmulcld 11888 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ph  ->  ( A  x.  C
)  e.  RR+ )
26766nnrpd 11870 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( ph  ->  B  e.  RR+ )
26857nnrpd 11870 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( ph  ->  D  e.  RR+ )
269267, 268rpmulcld 11888 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ph  ->  ( B  x.  D
)  e.  RR+ )
270266, 269rpaddcld 11887 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ph  ->  ( ( A  x.  C )  +  ( B  x.  D ) )  e.  RR+ )
271 2z 11409 . . . . . . . . . . . . . . . . . . . . . 22  |-  2  e.  ZZ
272271a1i 11 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ph  ->  2  e.  ZZ )
273270, 272rpexpcld 13032 . . . . . . . . . . . . . . . . . . . 20  |-  ( ph  ->  ( ( ( A  x.  C )  +  ( B  x.  D
) ) ^ 2 )  e.  RR+ )
274264, 273ltaddrp2d 11906 . . . . . . . . . . . . . . . . . . 19  |-  ( ph  ->  ( ( ( A  x.  D )  -  ( C  x.  B
) ) ^ 2 )  <  ( ( ( ( A  x.  C )  +  ( B  x.  D ) ) ^ 2 )  +  ( ( ( A  x.  D )  -  ( C  x.  B ) ) ^
2 ) ) )
275 bhmafibid2 29645 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ( ( A  e.  RR  /\  B  e.  RR )  /\  ( C  e.  RR  /\  D  e.  RR ) )  -> 
( ( ( A ^ 2 )  +  ( B ^ 2 ) )  x.  (
( C ^ 2 )  +  ( D ^ 2 ) ) )  =  ( ( ( ( A  x.  C )  +  ( B  x.  D ) ) ^ 2 )  +  ( ( ( A  x.  D )  -  ( B  x.  C ) ) ^
2 ) ) )
27639, 7, 4, 41, 275syl22anc 1327 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ph  ->  ( ( ( A ^ 2 )  +  ( B ^ 2 ) )  x.  (
( C ^ 2 )  +  ( D ^ 2 ) ) )  =  ( ( ( ( A  x.  C )  +  ( B  x.  D ) ) ^ 2 )  +  ( ( ( A  x.  D )  -  ( B  x.  C ) ) ^
2 ) ) )
27774, 276eqtr3d 2658 . . . . . . . . . . . . . . . . . . . 20  |-  ( ph  ->  ( P  x.  P
)  =  ( ( ( ( A  x.  C )  +  ( B  x.  D ) ) ^ 2 )  +  ( ( ( A  x.  D )  -  ( B  x.  C ) ) ^
2 ) ) )
27882oveq2d 6666 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ph  ->  ( ( A  x.  D )  -  ( C  x.  B )
)  =  ( ( A  x.  D )  -  ( B  x.  C ) ) )
279278oveq1d 6665 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ph  ->  ( ( ( A  x.  D )  -  ( C  x.  B
) ) ^ 2 )  =  ( ( ( A  x.  D
)  -  ( B  x.  C ) ) ^ 2 ) )
280279oveq2d 6666 . . . . . . . . . . . . . . . . . . . 20  |-  ( ph  ->  ( ( ( ( A  x.  C )  +  ( B  x.  D ) ) ^
2 )  +  ( ( ( A  x.  D )  -  ( C  x.  B )
) ^ 2 ) )  =  ( ( ( ( A  x.  C )  +  ( B  x.  D ) ) ^ 2 )  +  ( ( ( A  x.  D )  -  ( B  x.  C ) ) ^
2 ) ) )
281277, 280eqtr4d 2659 . . . . . . . . . . . . . . . . . . 19  |-  ( ph  ->  ( P  x.  P
)  =  ( ( ( ( A  x.  C )  +  ( B  x.  D ) ) ^ 2 )  +  ( ( ( A  x.  D )  -  ( C  x.  B ) ) ^
2 ) ) )
282274, 281breqtrrd 4681 . . . . . . . . . . . . . . . . . 18  |-  ( ph  ->  ( ( ( A  x.  D )  -  ( C  x.  B
) ) ^ 2 )  <  ( P  x.  P ) )
283282, 81breqtrrd 4681 . . . . . . . . . . . . . . . . 17  |-  ( ph  ->  ( ( ( A  x.  D )  -  ( C  x.  B
) ) ^ 2 )  <  ( P ^ 2 ) )
284242, 283syl 17 . . . . . . . . . . . . . . . 16  |-  ( ( ( ph  /\  P  ||  ( ( A  x.  D )  -  ( C  x.  B )
) )  /\  -.  ( A  x.  D
)  =  ( C  x.  B ) )  ->  ( ( ( A  x.  D )  -  ( C  x.  B ) ) ^
2 )  <  ( P ^ 2 ) )
285264, 100ltnled 10184 . . . . . . . . . . . . . . . . 17  |-  ( ph  ->  ( ( ( ( A  x.  D )  -  ( C  x.  B ) ) ^
2 )  <  ( P ^ 2 )  <->  -.  ( P ^ 2 )  <_ 
( ( ( A  x.  D )  -  ( C  x.  B
) ) ^ 2 ) ) )
286242, 285syl 17 . . . . . . . . . . . . . . . 16  |-  ( ( ( ph  /\  P  ||  ( ( A  x.  D )  -  ( C  x.  B )
) )  /\  -.  ( A  x.  D
)  =  ( C  x.  B ) )  ->  ( ( ( ( A  x.  D
)  -  ( C  x.  B ) ) ^ 2 )  < 
( P ^ 2 )  <->  -.  ( P ^ 2 )  <_ 
( ( ( A  x.  D )  -  ( C  x.  B
) ) ^ 2 ) ) )
287284, 286mpbid 222 . . . . . . . . . . . . . . 15  |-  ( ( ( ph  /\  P  ||  ( ( A  x.  D )  -  ( C  x.  B )
) )  /\  -.  ( A  x.  D
)  =  ( C  x.  B ) )  ->  -.  ( P ^ 2 )  <_ 
( ( ( A  x.  D )  -  ( C  x.  B
) ) ^ 2 ) )
288260, 287condan 835 . . . . . . . . . . . . . 14  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) )  ->  ( A  x.  D )  =  ( C  x.  B ) )
289241, 288subeq0bd 10456 . . . . . . . . . . . . 13  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) )  ->  ( ( A  x.  D )  -  ( C  x.  B ) )  =  0 )
290289oveq2d 6666 . . . . . . . . . . . 12  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) )  ->  ( (
( A  x.  D
)  +  ( C  x.  B ) )  x.  ( ( A  x.  D )  -  ( C  x.  B
) ) )  =  ( ( ( A  x.  D )  +  ( C  x.  B
) )  x.  0 ) )
291235, 236addcld 10059 . . . . . . . . . . . . . 14  |-  ( ph  ->  ( ( A  x.  D )  +  ( C  x.  B ) )  e.  CC )
292291mul01d 10235 . . . . . . . . . . . . 13  |-  ( ph  ->  ( ( ( A  x.  D )  +  ( C  x.  B
) )  x.  0 )  =  0 )
293292adantr 481 . . . . . . . . . . . 12  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) )  ->  ( (
( A  x.  D
)  +  ( C  x.  B ) )  x.  0 )  =  0 )
294240, 290, 2933eqtrd 2660 . . . . . . . . . . 11  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) )  ->  ( P  x.  ( ( D ^
2 )  -  ( B ^ 2 ) ) )  =  0 )
29524, 17subcld 10392 . . . . . . . . . . . . 13  |-  ( ph  ->  ( ( D ^
2 )  -  ( B ^ 2 ) )  e.  CC )
29680, 295mul0ord 10677 . . . . . . . . . . . 12  |-  ( ph  ->  ( ( P  x.  ( ( D ^
2 )  -  ( B ^ 2 ) ) )  =  0  <->  ( P  =  0  \/  ( ( D ^
2 )  -  ( B ^ 2 ) )  =  0 ) ) )
297296adantr 481 . . . . . . . . . . 11  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) )  ->  ( ( P  x.  ( ( D ^ 2 )  -  ( B ^ 2 ) ) )  =  0  <-> 
( P  =  0  \/  ( ( D ^ 2 )  -  ( B ^ 2 ) )  =  0 ) ) )
298294, 297mpbid 222 . . . . . . . . . 10  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) )  ->  ( P  =  0  \/  (
( D ^ 2 )  -  ( B ^ 2 ) )  =  0 ) )
299298ord 392 . . . . . . . . 9  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) )  ->  ( -.  P  =  0  ->  ( ( D ^ 2 )  -  ( B ^ 2 ) )  =  0 ) )
300211, 299mpd 15 . . . . . . . 8  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) )  ->  ( ( D ^ 2 )  -  ( B ^ 2 ) )  =  0 )
301205, 206, 300subeq0d 10400 . . . . . . 7  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) )  ->  ( D ^ 2 )  =  ( B ^ 2 ) )
302201, 202, 203, 204, 301sq11d 13045 . . . . . 6  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) )  ->  D  =  B )
303302oveq2d 6666 . . . . 5  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) )  ->  ( A  x.  D )  =  ( A  x.  B ) )
304303, 288eqtr3d 2658 . . . 4  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) )  ->  ( A  x.  B )  =  ( C  x.  B ) )
305197, 198, 199, 200, 304mulcan2ad 10663 . . 3  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) )  ->  A  =  C )
306137, 164zsubcld 11487 . . . . . 6  |-  ( ph  ->  ( ( D ^
2 )  -  ( B ^ 2 ) )  e.  ZZ )
307 dvdsmul1 15003 . . . . . 6  |-  ( ( P  e.  ZZ  /\  ( ( D ^
2 )  -  ( B ^ 2 ) )  e.  ZZ )  ->  P  ||  ( P  x.  ( ( D ^
2 )  -  ( B ^ 2 ) ) ) )
30879, 306, 307syl2anc 693 . . . . 5  |-  ( ph  ->  P  ||  ( P  x.  ( ( D ^ 2 )  -  ( B ^ 2 ) ) ) )
309308, 239breqtrd 4679 . . . 4  |-  ( ph  ->  P  ||  ( ( ( A  x.  D
)  +  ( C  x.  B ) )  x.  ( ( A  x.  D )  -  ( C  x.  B
) ) ) )
310 euclemma 15425 . . . . 5  |-  ( ( P  e.  Prime  /\  (
( A  x.  D
)  +  ( C  x.  B ) )  e.  ZZ  /\  (
( A  x.  D
)  -  ( C  x.  B ) )  e.  ZZ )  -> 
( P  ||  (
( ( A  x.  D )  +  ( C  x.  B ) )  x.  ( ( A  x.  D )  -  ( C  x.  B ) ) )  <-> 
( P  ||  (
( A  x.  D
)  +  ( C  x.  B ) )  \/  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) ) ) )
31147, 91, 245, 310syl3anc 1326 . . . 4  |-  ( ph  ->  ( P  ||  (
( ( A  x.  D )  +  ( C  x.  B ) )  x.  ( ( A  x.  D )  -  ( C  x.  B ) ) )  <-> 
( P  ||  (
( A  x.  D
)  +  ( C  x.  B ) )  \/  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) ) ) )
312309, 311mpbid 222 . . 3  |-  ( ph  ->  ( P  ||  (
( A  x.  D
)  +  ( C  x.  B ) )  \/  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) ) )
313196, 305, 312mpjaodan 827 . 2  |-  ( ph  ->  A  =  C )
314313oveq1d 6665 . . . . 5  |-  ( ph  ->  ( A ^ 2 )  =  ( C ^ 2 ) )
315314oveq2d 6666 . . . 4  |-  ( ph  ->  ( P  -  ( A ^ 2 ) )  =  ( P  -  ( C ^ 2 ) ) )
316315, 220, 2243eqtr3d 2664 . . 3  |-  ( ph  ->  ( B ^ 2 )  =  ( D ^ 2 ) )
3177, 41, 11, 129, 316sq11d 13045 . 2  |-  ( ph  ->  B  =  D )
318313, 317jca 554 1  |-  ( ph  ->  ( A  =  C  /\  B  =  D ) )
Colors of variables: wff setvar class
Syntax hints:   -. wn 3    -> wi 4    <-> wb 196    \/ wo 383    /\ wa 384    = wceq 1483    e. wcel 1990    =/= wne 2794   class class class wbr 4653  (class class class)co 6650   CCcc 9934   RRcr 9935   0cc0 9936   1c1 9937    + caddc 9939    x. cmul 9941    < clt 10074    <_ cle 10075    - cmin 10266   NNcn 11020   2c2 11070   NN0cn0 11292   ZZcz 11377   ^cexp 12860    || cdvds 14983    gcd cgcd 15216   Primecprime 15385
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1722  ax-4 1737  ax-5 1839  ax-6 1888  ax-7 1935  ax-8 1992  ax-9 1999  ax-10 2019  ax-11 2034  ax-12 2047  ax-13 2246  ax-ext 2602  ax-sep 4781  ax-nul 4789  ax-pow 4843  ax-pr 4906  ax-un 6949  ax-cnex 9992  ax-resscn 9993  ax-1cn 9994  ax-icn 9995  ax-addcl 9996  ax-addrcl 9997  ax-mulcl 9998  ax-mulrcl 9999  ax-mulcom 10000  ax-addass 10001  ax-mulass 10002  ax-distr 10003  ax-i2m1 10004  ax-1ne0 10005  ax-1rid 10006  ax-rnegex 10007  ax-rrecex 10008  ax-cnre 10009  ax-pre-lttri 10010  ax-pre-lttrn 10011  ax-pre-ltadd 10012  ax-pre-mulgt0 10013  ax-pre-sup 10014
This theorem depends on definitions:  df-bi 197  df-or 385  df-an 386  df-3or 1038  df-3an 1039  df-tru 1486  df-ex 1705  df-nf 1710  df-sb 1881  df-eu 2474  df-mo 2475  df-clab 2609  df-cleq 2615  df-clel 2618  df-nfc 2753  df-ne 2795  df-nel 2898  df-ral 2917  df-rex 2918  df-reu 2919  df-rmo 2920  df-rab 2921  df-v 3202  df-sbc 3436  df-csb 3534  df-dif 3577  df-un 3579  df-in 3581  df-ss 3588  df-pss 3590  df-nul 3916  df-if 4087  df-pw 4160  df-sn 4178  df-pr 4180  df-tp 4182  df-op 4184  df-uni 4437  df-iun 4522  df-br 4654  df-opab 4713  df-mpt 4730  df-tr 4753  df-id 5024  df-eprel 5029  df-po 5035  df-so 5036  df-fr 5073  df-we 5075  df-xp 5120  df-rel 5121  df-cnv 5122  df-co 5123  df-dm 5124  df-rn 5125  df-res 5126  df-ima 5127  df-pred 5680  df-ord 5726  df-on 5727  df-lim 5728  df-suc 5729  df-iota 5851  df-fun 5890  df-fn 5891  df-f 5892  df-f1 5893  df-fo 5894  df-f1o 5895  df-fv 5896  df-riota 6611  df-ov 6653  df-oprab 6654  df-mpt2 6655  df-om 7066  df-2nd 7169  df-wrecs 7407  df-recs 7468  df-rdg 7506  df-1o 7560  df-2o 7561  df-er 7742  df-en 7956  df-dom 7957  df-sdom 7958  df-fin 7959  df-sup 8348  df-inf 8349  df-pnf 10076  df-mnf 10077  df-xr 10078  df-ltxr 10079  df-le 10080  df-sub 10268  df-neg 10269  df-div 10685  df-nn 11021  df-2 11079  df-3 11080  df-n0 11293  df-z 11378  df-uz 11688  df-rp 11833  df-fl 12593  df-mod 12669  df-seq 12802  df-exp 12861  df-cj 13839  df-re 13840  df-im 13841  df-sqrt 13975  df-abs 13976  df-dvds 14984  df-gcd 15217  df-prm 15386
This theorem is referenced by:  2sqmo  29649
  Copyright terms: Public domain W3C validator