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

Theorem 2sqmod 27788
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 465 . . . . 5  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  A  <_  B )
3 2sqmod.4 . . . . . . . 8  |-  ( ph  ->  C  e.  NN0 )
43nn0red 10874 . . . . . . 7  |-  ( ph  ->  C  e.  RR )
54adantr 465 . . . . . 6  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  C  e.  RR )
6 2sqmod.3 . . . . . . . 8  |-  ( ph  ->  B  e.  NN0 )
76nn0red 10874 . . . . . . 7  |-  ( ph  ->  B  e.  RR )
87adantr 465 . . . . . 6  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  B  e.  RR )
93nn0ge0d 10876 . . . . . . 7  |-  ( ph  ->  0  <_  C )
109adantr 465 . . . . . 6  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  0  <_  C )
116nn0ge0d 10876 . . . . . . 7  |-  ( ph  ->  0  <_  B )
1211adantr 465 . . . . . 6  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  0  <_  B )
133nn0cnd 10875 . . . . . . . . 9  |-  ( ph  ->  C  e.  CC )
1413sqcld 12310 . . . . . . . 8  |-  ( ph  ->  ( C ^ 2 )  e.  CC )
1514adantr 465 . . . . . . 7  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( C ^ 2 )  e.  CC )
166nn0cnd 10875 . . . . . . . . 9  |-  ( ph  ->  B  e.  CC )
1716sqcld 12310 . . . . . . . 8  |-  ( ph  ->  ( B ^ 2 )  e.  CC )
1817adantr 465 . . . . . . 7  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( B ^ 2 )  e.  CC )
19 2sqmod.2 . . . . . . . . . . . . 13  |-  ( ph  ->  A  e.  NN0 )
2019nn0cnd 10875 . . . . . . . . . . . 12  |-  ( ph  ->  A  e.  CC )
2120sqcld 12310 . . . . . . . . . . 11  |-  ( ph  ->  ( A ^ 2 )  e.  CC )
22 2sqmod.5 . . . . . . . . . . . . 13  |-  ( ph  ->  D  e.  NN0 )
2322nn0cnd 10875 . . . . . . . . . . . 12  |-  ( ph  ->  D  e.  CC )
2423sqcld 12310 . . . . . . . . . . 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 2501 . . . . . . . . . . 11  |-  ( ph  ->  ( ( A ^
2 )  +  ( B ^ 2 ) )  =  ( ( C ^ 2 )  +  ( D ^
2 ) ) )
2821, 17, 14, 24, 27addeqxfrd 27710 . . . . . . . . . 10  |-  ( ph  ->  ( ( A ^
2 )  -  ( D ^ 2 ) )  =  ( ( C ^ 2 )  -  ( B ^ 2 ) ) )
2928adantr 465 . . . . . . . . 9  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( ( A ^ 2 )  -  ( D ^ 2 ) )  =  ( ( C ^ 2 )  -  ( B ^
2 ) ) )
3019nn0zd 10988 . . . . . . . . . . . . . . . 16  |-  ( ph  ->  A  e.  ZZ )
313nn0zd 10988 . . . . . . . . . . . . . . . 16  |-  ( ph  ->  C  e.  ZZ )
32 dvdsmul1 14016 . . . . . . . . . . . . . . . 16  |-  ( ( A  e.  ZZ  /\  C  e.  ZZ )  ->  A  ||  ( A  x.  C ) )
3330, 31, 32syl2anc 661 . . . . . . . . . . . . . . 15  |-  ( ph  ->  A  ||  ( A  x.  C ) )
3433adantr 465 . . . . . . . . . . . . . 14  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  A  ||  ( A  x.  C )
)
3520, 13mulcld 9633 . . . . . . . . . . . . . . . 16  |-  ( ph  ->  ( A  x.  C
)  e.  CC )
3635adantr 465 . . . . . . . . . . . . . . 15  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( A  x.  C )  e.  CC )
3716, 23mulcld 9633 . . . . . . . . . . . . . . . 16  |-  ( ph  ->  ( B  x.  D
)  e.  CC )
3837adantr 465 . . . . . . . . . . . . . . 15  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( B  x.  D )  e.  CC )
3919nn0red 10874 . . . . . . . . . . . . . . . . . . . 20  |-  ( ph  ->  A  e.  RR )
4039, 4remulcld 9641 . . . . . . . . . . . . . . . . . . 19  |-  ( ph  ->  ( A  x.  C
)  e.  RR )
4122nn0red 10874 . . . . . . . . . . . . . . . . . . . 20  |-  ( ph  ->  D  e.  RR )
427, 41remulcld 9641 . . . . . . . . . . . . . . . . . . 19  |-  ( ph  ->  ( B  x.  D
)  e.  RR )
4340, 42resubcld 10008 . . . . . . . . . . . . . . . . . 18  |-  ( ph  ->  ( ( A  x.  C )  -  ( B  x.  D )
)  e.  RR )
4443recnd 9639 . . . . . . . . . . . . . . . . 17  |-  ( ph  ->  ( ( A  x.  C )  -  ( B  x.  D )
)  e.  CC )
4544adantr 465 . . . . . . . . . . . . . . . 16  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( ( A  x.  C )  -  ( B  x.  D ) )  e.  CC )
4643sqge0d 12339 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( ph  ->  0  <_  ( (
( A  x.  C
)  -  ( B  x.  D ) ) ^ 2 ) )
47 2sqmod.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30  |-  ( ph  ->  P  e.  Prime )
486nn0zd 10988 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30  |-  ( ph  ->  B  e.  ZZ )
4947, 30, 48, 252sqn0 27786 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  |-  ( ph  ->  A  =/=  0 )
50 elnnne0 10830 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  |-  ( A  e.  NN  <->  ( A  e.  NN0  /\  A  =/=  0 ) )
5119, 49, 50sylanbrc 664 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28  |-  ( ph  ->  A  e.  NN )
5222nn0zd 10988 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30  |-  ( ph  ->  D  e.  ZZ )
5324, 14addcomd 9799 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31  |-  ( ph  ->  ( ( D ^
2 )  +  ( C ^ 2 ) )  =  ( ( C ^ 2 )  +  ( D ^
2 ) ) )
5453, 26eqtrd 2498 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30  |-  ( ph  ->  ( ( D ^
2 )  +  ( C ^ 2 ) )  =  P )
5547, 52, 31, 542sqn0 27786 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  |-  ( ph  ->  D  =/=  0 )
56 elnnne0 10830 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  |-  ( D  e.  NN  <->  ( D  e.  NN0  /\  D  =/=  0 ) )
5722, 55, 56sylanbrc 664 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28  |-  ( ph  ->  D  e.  NN )
5851, 57nnmulcld 10604 . . . . . . . . . . . . . . . . . . . . . . . . . . 27  |-  ( ph  ->  ( A  x.  D
)  e.  NN )
5947, 31, 52, 262sqn0 27786 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  |-  ( ph  ->  C  =/=  0 )
60 elnnne0 10830 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  |-  ( C  e.  NN  <->  ( C  e.  NN0  /\  C  =/=  0 ) )
613, 59, 60sylanbrc 664 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28  |-  ( ph  ->  C  e.  NN )
6217, 21addcomd 9799 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31  |-  ( ph  ->  ( ( B ^
2 )  +  ( A ^ 2 ) )  =  ( ( A ^ 2 )  +  ( B ^
2 ) ) )
6362, 25eqtrd 2498 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30  |-  ( ph  ->  ( ( B ^
2 )  +  ( A ^ 2 ) )  =  P )
6447, 48, 30, 632sqn0 27786 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  |-  ( ph  ->  B  =/=  0 )
65 elnnne0 10830 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  |-  ( B  e.  NN  <->  ( B  e.  NN0  /\  B  =/=  0 ) )
666, 64, 65sylanbrc 664 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28  |-  ( ph  ->  B  e.  NN )
6761, 66nnmulcld 10604 . . . . . . . . . . . . . . . . . . . . . . . . . . 27  |-  ( ph  ->  ( C  x.  B
)  e.  NN )
6858, 67nnaddcld 10603 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( ph  ->  ( ( A  x.  D )  +  ( C  x.  B ) )  e.  NN )
6968nnsqcld 12332 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( ph  ->  ( ( ( A  x.  D )  +  ( C  x.  B
) ) ^ 2 )  e.  NN )
7069nnred 10571 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( ph  ->  ( ( ( A  x.  D )  +  ( C  x.  B
) ) ^ 2 )  e.  RR )
7143resqcld 12338 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( ph  ->  ( ( ( A  x.  C )  -  ( B  x.  D
) ) ^ 2 )  e.  RR )
7270, 71addge02d 10162 . . . . . . . . . . . . . . . . . . . . . . 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 210 . . . . . . . . . . . . . . . . . . . . . 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 6314 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( ph  ->  ( ( ( A ^ 2 )  +  ( B ^ 2 ) )  x.  (
( C ^ 2 )  +  ( D ^ 2 ) ) )  =  ( P  x.  P ) )
75 bhmafibid1 27784 . . . . . . . . . . . . . . . . . . . . . . . . 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 1229 . . . . . . . . . . . . . . . . . . . . . . . 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 2500 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( ph  ->  ( P  x.  P
)  =  ( ( ( ( A  x.  C )  -  ( B  x.  D )
) ^ 2 )  +  ( ( ( A  x.  D )  +  ( B  x.  C ) ) ^
2 ) ) )
78 prmz 14232 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( P  e.  Prime  ->  P  e.  ZZ )
7947, 78syl 16 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( ph  ->  P  e.  ZZ )
8079zcnd 10991 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( ph  ->  P  e.  CC )
8180sqvald 12309 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( ph  ->  ( P ^ 2 )  =  ( P  x.  P ) )
8213, 16mulcomd 9634 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( ph  ->  ( C  x.  B
)  =  ( B  x.  C ) )
8382oveq2d 6312 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( ph  ->  ( ( A  x.  D )  +  ( C  x.  B ) )  =  ( ( A  x.  D )  +  ( B  x.  C ) ) )
8483oveq1d 6311 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( ph  ->  ( ( ( A  x.  D )  +  ( C  x.  B
) ) ^ 2 )  =  ( ( ( A  x.  D
)  +  ( B  x.  C ) ) ^ 2 ) )
8584oveq2d 6312 . . . . . . . . . . . . . . . . . . . . . . 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 2508 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ph  ->  ( P ^ 2 )  =  ( ( ( ( A  x.  C )  -  ( B  x.  D )
) ^ 2 )  +  ( ( ( A  x.  D )  +  ( C  x.  B ) ) ^
2 ) ) )
8773, 86breqtrrd 4482 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ph  ->  ( ( ( A  x.  D )  +  ( C  x.  B
) ) ^ 2 )  <_  ( P ^ 2 ) )
8887adantr 465 . . . . . . . . . . . . . . . . . . . 20  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( (
( A  x.  D
)  +  ( C  x.  B ) ) ^ 2 )  <_ 
( P ^ 2 ) )
8930, 52zmulcld 10996 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( ph  ->  ( A  x.  D
)  e.  ZZ )
9031, 48zmulcld 10996 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( ph  ->  ( C  x.  B
)  e.  ZZ )
9189, 90zaddcld 10994 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( ph  ->  ( ( A  x.  D )  +  ( C  x.  B ) )  e.  ZZ )
92 dvdssqim 14202 . . . . . . . . . . . . . . . . . . . . . . 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 661 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ph  ->  ( P  ||  (
( A  x.  D
)  +  ( C  x.  B ) )  ->  ( P ^
2 )  ||  (
( ( A  x.  D )  +  ( C  x.  B ) ) ^ 2 ) ) )
94 zsqcl 12240 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( P  e.  ZZ  ->  ( P ^ 2 )  e.  ZZ )
9579, 94syl 16 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( ph  ->  ( P ^ 2 )  e.  ZZ )
96 dvdsle 14042 . . . . . . . . . . . . . . . . . . . . . . 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 661 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ph  ->  ( ( P ^
2 )  ||  (
( ( A  x.  D )  +  ( C  x.  B ) ) ^ 2 )  ->  ( P ^
2 )  <_  (
( ( A  x.  D )  +  ( C  x.  B ) ) ^ 2 ) ) )
9893, 97syld 44 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ph  ->  ( P  ||  (
( A  x.  D
)  +  ( C  x.  B ) )  ->  ( P ^
2 )  <_  (
( ( A  x.  D )  +  ( C  x.  B ) ) ^ 2 ) ) )
9998imp 429 . . . . . . . . . . . . . . . . . . . 20  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( P ^ 2 )  <_ 
( ( ( A  x.  D )  +  ( C  x.  B
) ) ^ 2 ) )
10095zred 10990 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ph  ->  ( P ^ 2 )  e.  RR )
10170, 100letri3d 9744 . . . . . . . . . . . . . . . . . . . . 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 465 . . . . . . . . . . . . . . . . . . . 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 922 . . . . . . . . . . . . . . . . . . 19  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( (
( A  x.  D
)  +  ( C  x.  B ) ) ^ 2 )  =  ( P ^ 2 ) )
10486adantr 465 . . . . . . . . . . . . . . . . . . 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 2499 . . . . . . . . . . . . . . . . . 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 9639 . . . . . . . . . . . . . . . . . . . 20  |-  ( ph  ->  ( ( ( A  x.  D )  +  ( C  x.  B
) ) ^ 2 )  e.  CC )
10771recnd 9639 . . . . . . . . . . . . . . . . . . . 20  |-  ( ph  ->  ( ( ( A  x.  C )  -  ( B  x.  D
) ) ^ 2 )  e.  CC )
108106, 106, 107subadd2d 9969 . . . . . . . . . . . . . . . . . . 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 465 . . . . . . . . . . . . . . . . . 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 232 . . . . . . . . . . . . . . . . 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 9938 . . . . . . . . . . . . . . . . . 18  |-  ( ph  ->  ( ( ( ( A  x.  D )  +  ( C  x.  B ) ) ^
2 )  -  (
( ( A  x.  D )  +  ( C  x.  B ) ) ^ 2 ) )  =  0 )
112111adantr 465 . . . . . . . . . . . . . . . . 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 2500 . . . . . . . . . . . . . . . 16  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( (
( A  x.  C
)  -  ( B  x.  D ) ) ^ 2 )  =  0 )
11445, 113sqeq0d 12311 . . . . . . . . . . . . . . 15  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( ( A  x.  C )  -  ( B  x.  D ) )  =  0 )
11536, 38, 114subeq0d 9958 . . . . . . . . . . . . . 14  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( A  x.  C )  =  ( B  x.  D ) )
11634, 115breqtrd 4480 . . . . . . . . . . . . 13  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  A  ||  ( B  x.  D )
)
11747, 30, 48, 252sqcoprm 27787 . . . . . . . . . . . . . 14  |-  ( ph  ->  ( A  gcd  B
)  =  1 )
118117adantr 465 . . . . . . . . . . . . 13  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( A  gcd  B )  =  1 )
119 coprmdvds 14254 . . . . . . . . . . . . . . 15  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  D  e.  ZZ )  ->  (
( A  ||  ( B  x.  D )  /\  ( A  gcd  B
)  =  1 )  ->  A  ||  D
) )
12030, 48, 52, 119syl3anc 1228 . . . . . . . . . . . . . 14  |-  ( ph  ->  ( ( A  ||  ( B  x.  D
)  /\  ( A  gcd  B )  =  1 )  ->  A  ||  D
) )
121120adantr 465 . . . . . . . . . . . . 13  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( ( A  ||  ( B  x.  D )  /\  ( A  gcd  B )  =  1 )  ->  A  ||  D ) )
122116, 118, 121mp2and 679 . . . . . . . . . . . 12  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  A  ||  D
)
123 dvdsle 14042 . . . . . . . . . . . . . 14  |-  ( ( A  e.  ZZ  /\  D  e.  NN )  ->  ( A  ||  D  ->  A  <_  D )
)
12430, 57, 123syl2anc 661 . . . . . . . . . . . . 13  |-  ( ph  ->  ( A  ||  D  ->  A  <_  D )
)
125124adantr 465 . . . . . . . . . . . 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 11280 . . . . . . . . . . . . . 14  |-  ( ph  ->  A  e.  RR+ )
128127rprege0d 11288 . . . . . . . . . . . . 13  |-  ( ph  ->  ( A  e.  RR  /\  0  <_  A )
)
12922nn0ge0d 10876 . . . . . . . . . . . . 13  |-  ( ph  ->  0  <_  D )
130 le2sq 12244 . . . . . . . . . . . . 13  |-  ( ( ( A  e.  RR  /\  0  <_  A )  /\  ( D  e.  RR  /\  0  <_  D )
)  ->  ( A  <_  D  <->  ( A ^
2 )  <_  ( D ^ 2 ) ) )
131128, 41, 129, 130syl12anc 1226 . . . . . . . . . . . 12  |-  ( ph  ->  ( A  <_  D  <->  ( A ^ 2 )  <_  ( D ^
2 ) ) )
132131adantr 465 . . . . . . . . . . 11  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( A  <_  D  <->  ( A ^
2 )  <_  ( D ^ 2 ) ) )
133126, 132mpbid 210 . . . . . . . . . 10  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( A ^ 2 )  <_ 
( D ^ 2 ) )
13451nnsqcld 12332 . . . . . . . . . . . . 13  |-  ( ph  ->  ( A ^ 2 )  e.  NN )
135134nnred 10571 . . . . . . . . . . . 12  |-  ( ph  ->  ( A ^ 2 )  e.  RR )
136 zsqcl 12240 . . . . . . . . . . . . . 14  |-  ( D  e.  ZZ  ->  ( D ^ 2 )  e.  ZZ )
13752, 136syl 16 . . . . . . . . . . . . 13  |-  ( ph  ->  ( D ^ 2 )  e.  ZZ )
138137zred 10990 . . . . . . . . . . . 12  |-  ( ph  ->  ( D ^ 2 )  e.  RR )
139135, 138suble0d 10164 . . . . . . . . . . 11  |-  ( ph  ->  ( ( ( A ^ 2 )  -  ( D ^ 2 ) )  <_  0  <->  ( A ^ 2 )  <_ 
( D ^ 2 ) ) )
140139adantr 465 . . . . . . . . . 10  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( (
( A ^ 2 )  -  ( D ^ 2 ) )  <_  0  <->  ( A ^ 2 )  <_ 
( D ^ 2 ) ) )
141133, 140mpbird 232 . . . . . . . . 9  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( ( A ^ 2 )  -  ( D ^ 2 ) )  <_  0 )
14229, 141eqbrtrrd 4478 . . . . . . . 8  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( ( C ^ 2 )  -  ( B ^ 2 ) )  <_  0 )
143 dvdsmul1 14016 . . . . . . . . . . . . . . 15  |-  ( ( B  e.  ZZ  /\  D  e.  ZZ )  ->  B  ||  ( B  x.  D ) )
14448, 52, 143syl2anc 661 . . . . . . . . . . . . . 14  |-  ( ph  ->  B  ||  ( B  x.  D ) )
145144adantr 465 . . . . . . . . . . . . 13  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  B  ||  ( B  x.  D )
)
146145, 115breqtrrd 4482 . . . . . . . . . . . 12  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  B  ||  ( A  x.  C )
)
147 gcdcom 14169 . . . . . . . . . . . . . . 15  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ )  ->  ( A  gcd  B
)  =  ( B  gcd  A ) )
14830, 48, 147syl2anc 661 . . . . . . . . . . . . . 14  |-  ( ph  ->  ( A  gcd  B
)  =  ( B  gcd  A ) )
149148, 117eqtr3d 2500 . . . . . . . . . . . . 13  |-  ( ph  ->  ( B  gcd  A
)  =  1 )
150149adantr 465 . . . . . . . . . . . 12  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( B  gcd  A )  =  1 )
151 coprmdvds 14254 . . . . . . . . . . . . . 14  |-  ( ( B  e.  ZZ  /\  A  e.  ZZ  /\  C  e.  ZZ )  ->  (
( B  ||  ( A  x.  C )  /\  ( B  gcd  A
)  =  1 )  ->  B  ||  C
) )
15248, 30, 31, 151syl3anc 1228 . . . . . . . . . . . . 13  |-  ( ph  ->  ( ( B  ||  ( A  x.  C
)  /\  ( B  gcd  A )  =  1 )  ->  B  ||  C
) )
153152adantr 465 . . . . . . . . . . . 12  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( ( B  ||  ( A  x.  C )  /\  ( B  gcd  A )  =  1 )  ->  B  ||  C ) )
154146, 150, 153mp2and 679 . . . . . . . . . . 11  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  B  ||  C
)
155 dvdsle 14042 . . . . . . . . . . . . 13  |-  ( ( B  e.  ZZ  /\  C  e.  NN )  ->  ( B  ||  C  ->  B  <_  C )
)
15648, 61, 155syl2anc 661 . . . . . . . . . . . 12  |-  ( ph  ->  ( B  ||  C  ->  B  <_  C )
)
157156adantr 465 . . . . . . . . . . 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 12347 . . . . . . . . . . 11  |-  ( ph  ->  ( B  <_  C  <->  ( B ^ 2 )  <_  ( C ^
2 ) ) )
160159adantr 465 . . . . . . . . . 10  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( B  <_  C  <->  ( B ^
2 )  <_  ( C ^ 2 ) ) )
161158, 160mpbid 210 . . . . . . . . 9  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( B ^ 2 )  <_ 
( C ^ 2 ) )
1624resqcld 12338 . . . . . . . . . . 11  |-  ( ph  ->  ( C ^ 2 )  e.  RR )
163 zsqcl 12240 . . . . . . . . . . . . 13  |-  ( B  e.  ZZ  ->  ( B ^ 2 )  e.  ZZ )
16448, 163syl 16 . . . . . . . . . . . 12  |-  ( ph  ->  ( B ^ 2 )  e.  ZZ )
165164zred 10990 . . . . . . . . . . 11  |-  ( ph  ->  ( B ^ 2 )  e.  RR )
166162, 165subge0d 10163 . . . . . . . . . 10  |-  ( ph  ->  ( 0  <_  (
( C ^ 2 )  -  ( B ^ 2 ) )  <-> 
( B ^ 2 )  <_  ( C ^ 2 ) ) )
167166adantr 465 . . . . . . . . 9  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( 0  <_  ( ( C ^ 2 )  -  ( B ^ 2 ) )  <->  ( B ^
2 )  <_  ( C ^ 2 ) ) )
168161, 167mpbird 232 . . . . . . . 8  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  0  <_  ( ( C ^ 2 )  -  ( B ^ 2 ) ) )
169135, 138resubcld 10008 . . . . . . . . . . 11  |-  ( ph  ->  ( ( A ^
2 )  -  ( D ^ 2 ) )  e.  RR )
17028, 169eqeltrrd 2546 . . . . . . . . . 10  |-  ( ph  ->  ( ( C ^
2 )  -  ( B ^ 2 ) )  e.  RR )
171 0red 9614 . . . . . . . . . 10  |-  ( ph  ->  0  e.  RR )
172170, 171letri3d 9744 . . . . . . . . 9  |-  ( ph  ->  ( ( ( C ^ 2 )  -  ( B ^ 2 ) )  =  0  <->  (
( ( C ^
2 )  -  ( B ^ 2 ) )  <_  0  /\  0  <_  ( ( C ^
2 )  -  ( B ^ 2 ) ) ) ) )
173172adantr 465 . . . . . . . 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 922 . . . . . . 7  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( ( C ^ 2 )  -  ( B ^ 2 ) )  =  0 )
17515, 18, 174subeq0d 9958 . . . . . 6  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( C ^ 2 )  =  ( B ^ 2 ) )
1765, 8, 10, 12, 175sq11d 12348 . . . . 5  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  C  =  B )
1772, 176breqtrrd 4482 . . . 4  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  A  <_  C )
178 2sqmod.7 . . . . . 6  |-  ( ph  ->  C  <_  D )
179178adantr 465 . . . . 5  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  C  <_  D )
18039adantr 465 . . . . . 6  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  A  e.  RR )
18141adantr 465 . . . . . 6  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  D  e.  RR )
18219nn0ge0d 10876 . . . . . . 7  |-  ( ph  ->  0  <_  A )
183182adantr 465 . . . . . 6  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  0  <_  A )
184129adantr 465 . . . . . 6  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  0  <_  D )
18521adantr 465 . . . . . . 7  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( A ^ 2 )  e.  CC )
18624adantr 465 . . . . . . 7  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( D ^ 2 )  e.  CC )
187168, 29breqtrrd 4482 . . . . . . . 8  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  0  <_  ( ( A ^ 2 )  -  ( D ^ 2 ) ) )
188169, 171letri3d 9744 . . . . . . . . 9  |-  ( ph  ->  ( ( ( A ^ 2 )  -  ( D ^ 2 ) )  =  0  <->  (
( ( A ^
2 )  -  ( D ^ 2 ) )  <_  0  /\  0  <_  ( ( A ^
2 )  -  ( D ^ 2 ) ) ) ) )
189188adantr 465 . . . . . . . 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 922 . . . . . . 7  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( ( A ^ 2 )  -  ( D ^ 2 ) )  =  0 )
191185, 186, 190subeq0d 9958 . . . . . 6  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( A ^ 2 )  =  ( D ^ 2 ) )
192180, 181, 183, 184, 191sq11d 12348 . . . . 5  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  A  =  D )
193179, 192breqtrrd 4482 . . . 4  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  C  <_  A )
19439, 4letri3d 9744 . . . . 5  |-  ( ph  ->  ( A  =  C  <-> 
( A  <_  C  /\  C  <_  A ) ) )
195194adantr 465 . . . 4  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  ( A  =  C  <->  ( A  <_  C  /\  C  <_  A
) ) )
196177, 193, 195mpbir2and 922 . . 3  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  +  ( C  x.  B ) ) )  ->  A  =  C )
19720adantr 465 . . . 4  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) )  ->  A  e.  CC )
19813adantr 465 . . . 4  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) )  ->  C  e.  CC )
19916adantr 465 . . . 4  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) )  ->  B  e.  CC )
20064adantr 465 . . . 4  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) )  ->  B  =/=  0 )
20141adantr 465 . . . . . . 7  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) )  ->  D  e.  RR )
2027adantr 465 . . . . . . 7  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) )  ->  B  e.  RR )
203129adantr 465 . . . . . . 7  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) )  ->  0  <_  D )
20411adantr 465 . . . . . . 7  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) )  ->  0  <_  B )
20524adantr 465 . . . . . . . 8  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) )  ->  ( D ^ 2 )  e.  CC )
20617adantr 465 . . . . . . . 8  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) )  ->  ( B ^ 2 )  e.  CC )
207 prmnn 14231 . . . . . . . . . . . . 13  |-  ( P  e.  Prime  ->  P  e.  NN )
20847, 207syl 16 . . . . . . . . . . . 12  |-  ( ph  ->  P  e.  NN )
209208nnne0d 10601 . . . . . . . . . . 11  |-  ( ph  ->  P  =/=  0 )
210209neneqd 2659 . . . . . . . . . 10  |-  ( ph  ->  -.  P  =  0 )
211210adantr 465 . . . . . . . . 9  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) )  ->  -.  P  =  0 )
21280, 24, 17subdid 10033 . . . . . . . . . . . . . . 15  |-  ( ph  ->  ( P  x.  (
( D ^ 2 )  -  ( B ^ 2 ) ) )  =  ( ( P  x.  ( D ^ 2 ) )  -  ( P  x.  ( B ^ 2 ) ) ) )
21380, 24mulcld 9633 . . . . . . . . . . . . . . . 16  |-  ( ph  ->  ( P  x.  ( D ^ 2 ) )  e.  CC )
21421, 24mulcld 9633 . . . . . . . . . . . . . . . 16  |-  ( ph  ->  ( ( A ^
2 )  x.  ( D ^ 2 ) )  e.  CC )
21580, 17mulcld 9633 . . . . . . . . . . . . . . . 16  |-  ( ph  ->  ( P  x.  ( B ^ 2 ) )  e.  CC )
21614, 17mulcld 9633 . . . . . . . . . . . . . . . 16  |-  ( ph  ->  ( ( C ^
2 )  x.  ( B ^ 2 ) )  e.  CC )
21717, 24mulcomd 9634 . . . . . . . . . . . . . . . . . 18  |-  ( ph  ->  ( ( B ^
2 )  x.  ( D ^ 2 ) )  =  ( ( D ^ 2 )  x.  ( B ^ 2 ) ) )
21825oveq1d 6311 . . . . . . . . . . . . . . . . . . . 20  |-  ( ph  ->  ( ( ( A ^ 2 )  +  ( B ^ 2 ) )  -  ( A ^ 2 ) )  =  ( P  -  ( A ^ 2 ) ) )
21921, 17pncan2d 9952 . . . . . . . . . . . . . . . . . . . 20  |-  ( ph  ->  ( ( ( A ^ 2 )  +  ( B ^ 2 ) )  -  ( A ^ 2 ) )  =  ( B ^
2 ) )
220218, 219eqtr3d 2500 . . . . . . . . . . . . . . . . . . 19  |-  ( ph  ->  ( P  -  ( A ^ 2 ) )  =  ( B ^
2 ) )
221220oveq1d 6311 . . . . . . . . . . . . . . . . . 18  |-  ( ph  ->  ( ( P  -  ( A ^ 2 ) )  x.  ( D ^ 2 ) )  =  ( ( B ^ 2 )  x.  ( D ^ 2 ) ) )
22226oveq1d 6311 . . . . . . . . . . . . . . . . . . . 20  |-  ( ph  ->  ( ( ( C ^ 2 )  +  ( D ^ 2 ) )  -  ( C ^ 2 ) )  =  ( P  -  ( C ^ 2 ) ) )
22314, 24pncan2d 9952 . . . . . . . . . . . . . . . . . . . 20  |-  ( ph  ->  ( ( ( C ^ 2 )  +  ( D ^ 2 ) )  -  ( C ^ 2 ) )  =  ( D ^
2 ) )
224222, 223eqtr3d 2500 . . . . . . . . . . . . . . . . . . 19  |-  ( ph  ->  ( P  -  ( C ^ 2 ) )  =  ( D ^
2 ) )
225224oveq1d 6311 . . . . . . . . . . . . . . . . . 18  |-  ( ph  ->  ( ( P  -  ( C ^ 2 ) )  x.  ( B ^ 2 ) )  =  ( ( D ^ 2 )  x.  ( B ^ 2 ) ) )
226217, 221, 2253eqtr4d 2508 . . . . . . . . . . . . . . . . 17  |-  ( ph  ->  ( ( P  -  ( A ^ 2 ) )  x.  ( D ^ 2 ) )  =  ( ( P  -  ( C ^
2 ) )  x.  ( B ^ 2 ) ) )
22780, 21, 24subdird 10034 . . . . . . . . . . . . . . . . 17  |-  ( ph  ->  ( ( P  -  ( A ^ 2 ) )  x.  ( D ^ 2 ) )  =  ( ( P  x.  ( D ^
2 ) )  -  ( ( A ^
2 )  x.  ( D ^ 2 ) ) ) )
22880, 14, 17subdird 10034 . . . . . . . . . . . . . . . . 17  |-  ( ph  ->  ( ( P  -  ( C ^ 2 ) )  x.  ( B ^ 2 ) )  =  ( ( P  x.  ( B ^
2 ) )  -  ( ( C ^
2 )  x.  ( B ^ 2 ) ) ) )
229226, 227, 2283eqtr3d 2506 . . . . . . . . . . . . . . . 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 27709 . . . . . . . . . . . . . . 15  |-  ( ph  ->  ( ( P  x.  ( D ^ 2 ) )  -  ( P  x.  ( B ^
2 ) ) )  =  ( ( ( A ^ 2 )  x.  ( D ^
2 ) )  -  ( ( C ^
2 )  x.  ( B ^ 2 ) ) ) )
231212, 230eqtrd 2498 . . . . . . . . . . . . . 14  |-  ( ph  ->  ( P  x.  (
( D ^ 2 )  -  ( B ^ 2 ) ) )  =  ( ( ( A ^ 2 )  x.  ( D ^ 2 ) )  -  ( ( C ^ 2 )  x.  ( B ^ 2 ) ) ) )
23220, 23sqmuld 12324 . . . . . . . . . . . . . . 15  |-  ( ph  ->  ( ( A  x.  D ) ^ 2 )  =  ( ( A ^ 2 )  x.  ( D ^
2 ) ) )
23313, 16sqmuld 12324 . . . . . . . . . . . . . . 15  |-  ( ph  ->  ( ( C  x.  B ) ^ 2 )  =  ( ( C ^ 2 )  x.  ( B ^
2 ) ) )
234232, 233oveq12d 6314 . . . . . . . . . . . . . 14  |-  ( ph  ->  ( ( ( A  x.  D ) ^
2 )  -  (
( C  x.  B
) ^ 2 ) )  =  ( ( ( A ^ 2 )  x.  ( D ^ 2 ) )  -  ( ( C ^ 2 )  x.  ( B ^ 2 ) ) ) )
23520, 23mulcld 9633 . . . . . . . . . . . . . . 15  |-  ( ph  ->  ( A  x.  D
)  e.  CC )
23613, 16mulcld 9633 . . . . . . . . . . . . . . 15  |-  ( ph  ->  ( C  x.  B
)  e.  CC )
237 subsq 12277 . . . . . . . . . . . . . . 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 661 . . . . . . . . . . . . . 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 2504 . . . . . . . . . . . . 13  |-  ( ph  ->  ( P  x.  (
( D ^ 2 )  -  ( B ^ 2 ) ) )  =  ( ( ( A  x.  D
)  +  ( C  x.  B ) )  x.  ( ( A  x.  D )  -  ( C  x.  B
) ) ) )
240239adantr 465 . . . . . . . . . . . 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 465 . . . . . . . . . . . . . 14  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) )  ->  ( A  x.  D )  e.  CC )
242 simpll 753 . . . . . . . . . . . . . . . 16  |-  ( ( ( ph  /\  P  ||  ( ( A  x.  D )  -  ( C  x.  B )
) )  /\  -.  ( A  x.  D
)  =  ( C  x.  B ) )  ->  ph )
243 simpr 461 . . . . . . . . . . . . . . . . 17  |-  ( ( ( ph  /\  P  ||  ( ( A  x.  D )  -  ( C  x.  B )
) )  /\  -.  ( A  x.  D
)  =  ( C  x.  B ) )  ->  -.  ( A  x.  D )  =  ( C  x.  B ) )
244243neqned 2660 . . . . . . . . . . . . . . . 16  |-  ( ( ( ph  /\  P  ||  ( ( A  x.  D )  -  ( C  x.  B )
) )  /\  -.  ( A  x.  D
)  =  ( C  x.  B ) )  ->  ( A  x.  D )  =/=  ( C  x.  B )
)
24589, 90zsubcld 10995 . . . . . . . . . . . . . . . . . . 19  |-  ( ph  ->  ( ( A  x.  D )  -  ( C  x.  B )
)  e.  ZZ )
246 dvdssqim 14202 . . . . . . . . . . . . . . . . . . 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 661 . . . . . . . . . . . . . . . . . 18  |-  ( ph  ->  ( P  ||  (
( A  x.  D
)  -  ( C  x.  B ) )  ->  ( P ^
2 )  ||  (
( ( A  x.  D )  -  ( C  x.  B )
) ^ 2 ) ) )
248247imp 429 . . . . . . . . . . . . . . . . 17  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) )  ->  ( P ^ 2 )  ||  ( ( ( A  x.  D )  -  ( C  x.  B
) ) ^ 2 ) )
249248adantr 465 . . . . . . . . . . . . . . . 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 465 . . . . . . . . . . . . . . . . . 18  |-  ( (
ph  /\  ( A  x.  D )  =/=  ( C  x.  B )
)  ->  ( P ^ 2 )  e.  ZZ )
251245adantr 465 . . . . . . . . . . . . . . . . . . 19  |-  ( (
ph  /\  ( A  x.  D )  =/=  ( C  x.  B )
)  ->  ( ( A  x.  D )  -  ( C  x.  B ) )  e.  ZZ )
252235adantr 465 . . . . . . . . . . . . . . . . . . . 20  |-  ( (
ph  /\  ( A  x.  D )  =/=  ( C  x.  B )
)  ->  ( A  x.  D )  e.  CC )
253236adantr 465 . . . . . . . . . . . . . . . . . . . 20  |-  ( (
ph  /\  ( A  x.  D )  =/=  ( C  x.  B )
)  ->  ( C  x.  B )  e.  CC )
254 simpr 461 . . . . . . . . . . . . . . . . . . . 20  |-  ( (
ph  /\  ( A  x.  D )  =/=  ( C  x.  B )
)  ->  ( A  x.  D )  =/=  ( C  x.  B )
)
255252, 253, 254subne0d 9959 . . . . . . . . . . . . . . . . . . 19  |-  ( (
ph  /\  ( A  x.  D )  =/=  ( C  x.  B )
)  ->  ( ( A  x.  D )  -  ( C  x.  B ) )  =/=  0 )
256251, 255znsqcld 27711 . . . . . . . . . . . . . . . . . 18  |-  ( (
ph  /\  ( A  x.  D )  =/=  ( C  x.  B )
)  ->  ( (
( A  x.  D
)  -  ( C  x.  B ) ) ^ 2 )  e.  NN )
257 dvdsle 14042 . . . . . . . . . . . . . . . . . 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 661 . . . . . . . . . . . . . . . . 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 429 . . . . . . . . . . . . . . . 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 1227 . . . . . . . . . . . . . . 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 9641 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ph  ->  ( A  x.  D
)  e.  RR )
2624, 7remulcld 9641 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ph  ->  ( C  x.  B
)  e.  RR )
263261, 262resubcld 10008 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ph  ->  ( ( A  x.  D )  -  ( C  x.  B )
)  e.  RR )
264263resqcld 12338 . . . . . . . . . . . . . . . . . . . 20  |-  ( ph  ->  ( ( ( A  x.  D )  -  ( C  x.  B
) ) ^ 2 )  e.  RR )
26561nnrpd 11280 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( ph  ->  C  e.  RR+ )
266127, 265rpmulcld 11297 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ph  ->  ( A  x.  C
)  e.  RR+ )
26766nnrpd 11280 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( ph  ->  B  e.  RR+ )
26857nnrpd 11280 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( ph  ->  D  e.  RR+ )
269267, 268rpmulcld 11297 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ph  ->  ( B  x.  D
)  e.  RR+ )
270266, 269rpaddcld 11296 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ph  ->  ( ( A  x.  C )  +  ( B  x.  D ) )  e.  RR+ )
271 2z 10917 . . . . . . . . . . . . . . . . . . . . . 22  |-  2  e.  ZZ
272271a1i 11 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ph  ->  2  e.  ZZ )
273270, 272rpexpcld 12335 . . . . . . . . . . . . . . . . . . . 20  |-  ( ph  ->  ( ( ( A  x.  C )  +  ( B  x.  D
) ) ^ 2 )  e.  RR+ )
274264, 273ltaddrp2d 11311 . . . . . . . . . . . . . . . . . . 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 27785 . . . . . . . . . . . . . . . . . . . . . 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 1229 . . . . . . . . . . . . . . . . . . . . 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 2500 . . . . . . . . . . . . . . . . . . . 20  |-  ( ph  ->  ( P  x.  P
)  =  ( ( ( ( A  x.  C )  +  ( B  x.  D ) ) ^ 2 )  +  ( ( ( A  x.  D )  -  ( B  x.  C ) ) ^
2 ) ) )
27882oveq2d 6312 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ph  ->  ( ( A  x.  D )  -  ( C  x.  B )
)  =  ( ( A  x.  D )  -  ( B  x.  C ) ) )
279278oveq1d 6311 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ph  ->  ( ( ( A  x.  D )  -  ( C  x.  B
) ) ^ 2 )  =  ( ( ( A  x.  D
)  -  ( B  x.  C ) ) ^ 2 ) )
280279oveq2d 6312 . . . . . . . . . . . . . . . . . . . 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 2501 . . . . . . . . . . . . . . . . . . 19  |-  ( ph  ->  ( P  x.  P
)  =  ( ( ( ( A  x.  C )  +  ( B  x.  D ) ) ^ 2 )  +  ( ( ( A  x.  D )  -  ( C  x.  B ) ) ^
2 ) ) )
282274, 281breqtrrd 4482 . . . . . . . . . . . . . . . . . 18  |-  ( ph  ->  ( ( ( A  x.  D )  -  ( C  x.  B
) ) ^ 2 )  <  ( P  x.  P ) )
283282, 81breqtrrd 4482 . . . . . . . . . . . . . . . . 17  |-  ( ph  ->  ( ( ( A  x.  D )  -  ( C  x.  B
) ) ^ 2 )  <  ( P ^ 2 ) )
284242, 283syl 16 . . . . . . . . . . . . . . . 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 9749 . . . . . . . . . . . . . . . . 17  |-  ( ph  ->  ( ( ( ( A  x.  D )  -  ( C  x.  B ) ) ^
2 )  <  ( P ^ 2 )  <->  -.  ( P ^ 2 )  <_ 
( ( ( A  x.  D )  -  ( C  x.  B
) ) ^ 2 ) ) )
286242, 285syl 16 . . . . . . . . . . . . . . . 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 210 . . . . . . . . . . . . . . 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 794 . . . . . . . . . . . . . 14  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) )  ->  ( A  x.  D )  =  ( C  x.  B ) )
289241, 288subeq0bd 10006 . . . . . . . . . . . . 13  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) )  ->  ( ( A  x.  D )  -  ( C  x.  B ) )  =  0 )
290289oveq2d 6312 . . . . . . . . . . . 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 9632 . . . . . . . . . . . . . 14  |-  ( ph  ->  ( ( A  x.  D )  +  ( C  x.  B ) )  e.  CC )
292291mul01d 9796 . . . . . . . . . . . . 13  |-  ( ph  ->  ( ( ( A  x.  D )  +  ( C  x.  B
) )  x.  0 )  =  0 )
293292adantr 465 . . . . . . . . . . . 12  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) )  ->  ( (
( A  x.  D
)  +  ( C  x.  B ) )  x.  0 )  =  0 )
294240, 290, 2933eqtrd 2502 . . . . . . . . . . 11  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) )  ->  ( P  x.  ( ( D ^
2 )  -  ( B ^ 2 ) ) )  =  0 )
29524, 17subcld 9950 . . . . . . . . . . . . 13  |-  ( ph  ->  ( ( D ^
2 )  -  ( B ^ 2 ) )  e.  CC )
29680, 295mul0ord 10220 . . . . . . . . . . . 12  |-  ( ph  ->  ( ( P  x.  ( ( D ^
2 )  -  ( B ^ 2 ) ) )  =  0  <->  ( P  =  0  \/  ( ( D ^
2 )  -  ( B ^ 2 ) )  =  0 ) ) )
297296adantr 465 . . . . . . . . . . 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 210 . . . . . . . . . 10  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) )  ->  ( P  =  0  \/  (
( D ^ 2 )  -  ( B ^ 2 ) )  =  0 ) )
299298ord 377 . . . . . . . . 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 9958 . . . . . . 7  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) )  ->  ( D ^ 2 )  =  ( B ^ 2 ) )
302201, 202, 203, 204, 301sq11d 12348 . . . . . 6  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) )  ->  D  =  B )
303302oveq2d 6312 . . . . 5  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) )  ->  ( A  x.  D )  =  ( A  x.  B ) )
304303, 288eqtr3d 2500 . . . 4  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) )  ->  ( A  x.  B )  =  ( C  x.  B ) )
305197, 198, 199, 200, 304mulcan2ad 10206 . . 3  |-  ( (
ph  /\  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) )  ->  A  =  C )
306137, 164zsubcld 10995 . . . . . 6  |-  ( ph  ->  ( ( D ^
2 )  -  ( B ^ 2 ) )  e.  ZZ )
307 dvdsmul1 14016 . . . . . 6  |-  ( ( P  e.  ZZ  /\  ( ( D ^
2 )  -  ( B ^ 2 ) )  e.  ZZ )  ->  P  ||  ( P  x.  ( ( D ^
2 )  -  ( B ^ 2 ) ) ) )
30879, 306, 307syl2anc 661 . . . . 5  |-  ( ph  ->  P  ||  ( P  x.  ( ( D ^ 2 )  -  ( B ^ 2 ) ) ) )
309308, 239breqtrd 4480 . . . 4  |-  ( ph  ->  P  ||  ( ( ( A  x.  D
)  +  ( C  x.  B ) )  x.  ( ( A  x.  D )  -  ( C  x.  B
) ) ) )
310 euclemma 14260 . . . . 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 1228 . . . 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 210 . . 3  |-  ( ph  ->  ( P  ||  (
( A  x.  D
)  +  ( C  x.  B ) )  \/  P  ||  (
( A  x.  D
)  -  ( C  x.  B ) ) ) )
313196, 305, 312mpjaodan 786 . 2  |-  ( ph  ->  A  =  C )
314313oveq1d 6311 . . . . 5  |-  ( ph  ->  ( A ^ 2 )  =  ( C ^ 2 ) )
315314oveq2d 6312 . . . 4  |-  ( ph  ->  ( P  -  ( A ^ 2 ) )  =  ( P  -  ( C ^ 2 ) ) )
316315, 220, 2243eqtr3d 2506 . . 3  |-  ( ph  ->  ( B ^ 2 )  =  ( D ^ 2 ) )
3177, 41, 11, 129, 316sq11d 12348 . 2  |-  ( ph  ->  B  =  D )
318313, 317jca 532 1  |-  ( ph  ->  ( A  =  C  /\  B  =  D ) )
Colors of variables: wff setvar class
Syntax hints:   -. wn 3    -> wi 4    <-> wb 184    \/ wo 368    /\ wa 369    = wceq 1395    e. wcel 1819    =/= wne 2652   class class class wbr 4456  (class class class)co 6296   CCcc 9507   RRcr 9508   0cc0 9509   1c1 9510    + caddc 9512    x. cmul 9514    < clt 9645    <_ cle 9646    - cmin 9824   NNcn 10556   2c2 10606   NN0cn0 10816   ZZcz 10885   ^cexp 12168    || cdvds 13997    gcd cgcd 14155   Primecprime 14228
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1619  ax-4 1632  ax-5 1705  ax-6 1748  ax-7 1791  ax-8 1821  ax-9 1823  ax-10 1838  ax-11 1843  ax-12 1855  ax-13 2000  ax-ext 2435  ax-sep 4578  ax-nul 4586  ax-pow 4634  ax-pr 4695  ax-un 6591  ax-cnex 9565  ax-resscn 9566  ax-1cn 9567  ax-icn 9568  ax-addcl 9569  ax-addrcl 9570  ax-mulcl 9571  ax-mulrcl 9572  ax-mulcom 9573  ax-addass 9574  ax-mulass 9575  ax-distr 9576  ax-i2m1 9577  ax-1ne0 9578  ax-1rid 9579  ax-rnegex 9580  ax-rrecex 9581  ax-cnre 9582  ax-pre-lttri 9583  ax-pre-lttrn 9584  ax-pre-ltadd 9585  ax-pre-mulgt0 9586  ax-pre-sup 9587
This theorem depends on definitions:  df-bi 185  df-or 370  df-an 371  df-3or 974  df-3an 975  df-tru 1398  df-ex 1614  df-nf 1618  df-sb 1741  df-eu 2287  df-mo 2288  df-clab 2443  df-cleq 2449  df-clel 2452  df-nfc 2607  df-ne 2654  df-nel 2655  df-ral 2812  df-rex 2813  df-reu 2814  df-rmo 2815  df-rab 2816  df-v 3111  df-sbc 3328  df-csb 3431  df-dif 3474  df-un 3476  df-in 3478  df-ss 3485  df-pss 3487  df-nul 3794  df-if 3945  df-pw 4017  df-sn 4033  df-pr 4035  df-tp 4037  df-op 4039  df-uni 4252  df-int 4289  df-iun 4334  df-br 4457  df-opab 4516  df-mpt 4517  df-tr 4551  df-eprel 4800  df-id 4804  df-po 4809  df-so 4810  df-fr 4847  df-we 4849  df-ord 4890  df-on 4891  df-lim 4892  df-suc 4893  df-xp 5014  df-rel 5015  df-cnv 5016  df-co 5017  df-dm 5018  df-rn 5019  df-res 5020  df-ima 5021  df-iota 5557  df-fun 5596  df-fn 5597  df-f 5598  df-f1 5599  df-fo 5600  df-f1o 5601  df-fv 5602  df-riota 6258  df-ov 6299  df-oprab 6300  df-mpt2 6301  df-om 6700  df-2nd 6800  df-recs 7060  df-rdg 7094  df-1o 7148  df-2o 7149  df-oadd 7152  df-er 7329  df-en 7536  df-dom 7537  df-sdom 7538  df-fin 7539  df-sup 7919  df-pnf 9647  df-mnf 9648  df-xr 9649  df-ltxr 9650  df-le 9651  df-sub 9826  df-neg 9827  df-div 10228  df-nn 10557  df-2 10615  df-3 10616  df-n0 10817  df-z 10886  df-uz 11107  df-rp 11246  df-fl 11931  df-mod 11999  df-seq 12110  df-exp 12169  df-cj 12943  df-re 12944  df-im 12945  df-sqrt 13079  df-abs 13080  df-dvds 13998  df-gcd 14156  df-prm 14229
This theorem is referenced by:  2sqmo  27789
  Copyright terms: Public domain W3C validator