| Step | Hyp | Ref | Expression | 
						
							| 1 |  | simpll |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> A e. CC ) | 
						
							| 2 | 1 | sqcld |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> ( A ^ 2 ) e. CC ) | 
						
							| 3 |  | simprl |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> C e. CC ) | 
						
							| 4 | 3 | sqcld |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> ( C ^ 2 ) e. CC ) | 
						
							| 5 | 2 4 | mulcld |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> ( ( A ^ 2 ) x. ( C ^ 2 ) ) e. CC ) | 
						
							| 6 |  | simprr |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> D e. CC ) | 
						
							| 7 | 6 | sqcld |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> ( D ^ 2 ) e. CC ) | 
						
							| 8 |  | simplr |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> B e. CC ) | 
						
							| 9 | 8 | sqcld |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> ( B ^ 2 ) e. CC ) | 
						
							| 10 | 7 9 | mulcld |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> ( ( D ^ 2 ) x. ( B ^ 2 ) ) e. CC ) | 
						
							| 11 | 2 7 | mulcld |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> ( ( A ^ 2 ) x. ( D ^ 2 ) ) e. CC ) | 
						
							| 12 | 4 9 | mulcld |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> ( ( C ^ 2 ) x. ( B ^ 2 ) ) e. CC ) | 
						
							| 13 | 5 10 11 12 | add4d |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> ( ( ( ( A ^ 2 ) x. ( C ^ 2 ) ) + ( ( D ^ 2 ) x. ( B ^ 2 ) ) ) + ( ( ( A ^ 2 ) x. ( D ^ 2 ) ) + ( ( C ^ 2 ) x. ( B ^ 2 ) ) ) ) = ( ( ( ( A ^ 2 ) x. ( C ^ 2 ) ) + ( ( A ^ 2 ) x. ( D ^ 2 ) ) ) + ( ( ( D ^ 2 ) x. ( B ^ 2 ) ) + ( ( C ^ 2 ) x. ( B ^ 2 ) ) ) ) ) | 
						
							| 14 | 7 9 | mulcomd |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> ( ( D ^ 2 ) x. ( B ^ 2 ) ) = ( ( B ^ 2 ) x. ( D ^ 2 ) ) ) | 
						
							| 15 | 4 9 | mulcomd |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> ( ( C ^ 2 ) x. ( B ^ 2 ) ) = ( ( B ^ 2 ) x. ( C ^ 2 ) ) ) | 
						
							| 16 | 14 15 | oveq12d |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> ( ( ( D ^ 2 ) x. ( B ^ 2 ) ) + ( ( C ^ 2 ) x. ( B ^ 2 ) ) ) = ( ( ( B ^ 2 ) x. ( D ^ 2 ) ) + ( ( B ^ 2 ) x. ( C ^ 2 ) ) ) ) | 
						
							| 17 | 16 | oveq2d |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> ( ( ( ( A ^ 2 ) x. ( C ^ 2 ) ) + ( ( A ^ 2 ) x. ( D ^ 2 ) ) ) + ( ( ( D ^ 2 ) x. ( B ^ 2 ) ) + ( ( C ^ 2 ) x. ( B ^ 2 ) ) ) ) = ( ( ( ( A ^ 2 ) x. ( C ^ 2 ) ) + ( ( A ^ 2 ) x. ( D ^ 2 ) ) ) + ( ( ( B ^ 2 ) x. ( D ^ 2 ) ) + ( ( B ^ 2 ) x. ( C ^ 2 ) ) ) ) ) | 
						
							| 18 | 13 17 | eqtrd |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> ( ( ( ( A ^ 2 ) x. ( C ^ 2 ) ) + ( ( D ^ 2 ) x. ( B ^ 2 ) ) ) + ( ( ( A ^ 2 ) x. ( D ^ 2 ) ) + ( ( C ^ 2 ) x. ( B ^ 2 ) ) ) ) = ( ( ( ( A ^ 2 ) x. ( C ^ 2 ) ) + ( ( A ^ 2 ) x. ( D ^ 2 ) ) ) + ( ( ( B ^ 2 ) x. ( D ^ 2 ) ) + ( ( B ^ 2 ) x. ( C ^ 2 ) ) ) ) ) | 
						
							| 19 | 2 9 4 7 | muladdd |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> ( ( ( A ^ 2 ) + ( B ^ 2 ) ) x. ( ( C ^ 2 ) + ( D ^ 2 ) ) ) = ( ( ( ( A ^ 2 ) x. ( C ^ 2 ) ) + ( ( D ^ 2 ) x. ( B ^ 2 ) ) ) + ( ( ( A ^ 2 ) x. ( D ^ 2 ) ) + ( ( C ^ 2 ) x. ( B ^ 2 ) ) ) ) ) | 
						
							| 20 | 1 3 | mulcld |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> ( A x. C ) e. CC ) | 
						
							| 21 | 8 6 | mulcld |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> ( B x. D ) e. CC ) | 
						
							| 22 |  | binom2sub |  |-  ( ( ( A x. C ) e. CC /\ ( B x. D ) e. CC ) -> ( ( ( A x. C ) - ( B x. D ) ) ^ 2 ) = ( ( ( ( A x. C ) ^ 2 ) - ( 2 x. ( ( A x. C ) x. ( B x. D ) ) ) ) + ( ( B x. D ) ^ 2 ) ) ) | 
						
							| 23 | 20 21 22 | syl2anc |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> ( ( ( A x. C ) - ( B x. D ) ) ^ 2 ) = ( ( ( ( A x. C ) ^ 2 ) - ( 2 x. ( ( A x. C ) x. ( B x. D ) ) ) ) + ( ( B x. D ) ^ 2 ) ) ) | 
						
							| 24 | 1 6 | mulcld |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> ( A x. D ) e. CC ) | 
						
							| 25 | 8 3 | mulcld |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> ( B x. C ) e. CC ) | 
						
							| 26 |  | binom2 |  |-  ( ( ( A x. D ) e. CC /\ ( B x. C ) e. CC ) -> ( ( ( A x. D ) + ( B x. C ) ) ^ 2 ) = ( ( ( ( A x. D ) ^ 2 ) + ( 2 x. ( ( A x. D ) x. ( B x. C ) ) ) ) + ( ( B x. C ) ^ 2 ) ) ) | 
						
							| 27 | 24 25 26 | syl2anc |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> ( ( ( A x. D ) + ( B x. C ) ) ^ 2 ) = ( ( ( ( A x. D ) ^ 2 ) + ( 2 x. ( ( A x. D ) x. ( B x. C ) ) ) ) + ( ( B x. C ) ^ 2 ) ) ) | 
						
							| 28 | 23 27 | oveq12d |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> ( ( ( ( A x. C ) - ( B x. D ) ) ^ 2 ) + ( ( ( A x. D ) + ( B x. C ) ) ^ 2 ) ) = ( ( ( ( ( A x. C ) ^ 2 ) - ( 2 x. ( ( A x. C ) x. ( B x. D ) ) ) ) + ( ( B x. D ) ^ 2 ) ) + ( ( ( ( A x. D ) ^ 2 ) + ( 2 x. ( ( A x. D ) x. ( B x. C ) ) ) ) + ( ( B x. C ) ^ 2 ) ) ) ) | 
						
							| 29 | 20 | sqcld |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> ( ( A x. C ) ^ 2 ) e. CC ) | 
						
							| 30 |  | 2cnd |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> 2 e. CC ) | 
						
							| 31 | 20 21 | mulcld |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> ( ( A x. C ) x. ( B x. D ) ) e. CC ) | 
						
							| 32 | 30 31 | mulcld |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> ( 2 x. ( ( A x. C ) x. ( B x. D ) ) ) e. CC ) | 
						
							| 33 | 29 32 | subcld |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> ( ( ( A x. C ) ^ 2 ) - ( 2 x. ( ( A x. C ) x. ( B x. D ) ) ) ) e. CC ) | 
						
							| 34 | 21 | sqcld |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> ( ( B x. D ) ^ 2 ) e. CC ) | 
						
							| 35 | 24 | sqcld |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> ( ( A x. D ) ^ 2 ) e. CC ) | 
						
							| 36 | 24 25 | mulcld |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> ( ( A x. D ) x. ( B x. C ) ) e. CC ) | 
						
							| 37 | 30 36 | mulcld |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> ( 2 x. ( ( A x. D ) x. ( B x. C ) ) ) e. CC ) | 
						
							| 38 | 35 37 | addcld |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> ( ( ( A x. D ) ^ 2 ) + ( 2 x. ( ( A x. D ) x. ( B x. C ) ) ) ) e. CC ) | 
						
							| 39 | 25 | sqcld |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> ( ( B x. C ) ^ 2 ) e. CC ) | 
						
							| 40 | 33 34 38 39 | add4d |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> ( ( ( ( ( A x. C ) ^ 2 ) - ( 2 x. ( ( A x. C ) x. ( B x. D ) ) ) ) + ( ( B x. D ) ^ 2 ) ) + ( ( ( ( A x. D ) ^ 2 ) + ( 2 x. ( ( A x. D ) x. ( B x. C ) ) ) ) + ( ( B x. C ) ^ 2 ) ) ) = ( ( ( ( ( A x. C ) ^ 2 ) - ( 2 x. ( ( A x. C ) x. ( B x. D ) ) ) ) + ( ( ( A x. D ) ^ 2 ) + ( 2 x. ( ( A x. D ) x. ( B x. C ) ) ) ) ) + ( ( ( B x. D ) ^ 2 ) + ( ( B x. C ) ^ 2 ) ) ) ) | 
						
							| 41 |  | mul4r |  |-  ( ( ( A e. CC /\ C e. CC ) /\ ( B e. CC /\ D e. CC ) ) -> ( ( A x. C ) x. ( B x. D ) ) = ( ( A x. D ) x. ( B x. C ) ) ) | 
						
							| 42 | 41 | an4s |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> ( ( A x. C ) x. ( B x. D ) ) = ( ( A x. D ) x. ( B x. C ) ) ) | 
						
							| 43 | 42 | oveq2d |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> ( 2 x. ( ( A x. C ) x. ( B x. D ) ) ) = ( 2 x. ( ( A x. D ) x. ( B x. C ) ) ) ) | 
						
							| 44 | 43 | oveq2d |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> ( ( ( A x. C ) ^ 2 ) - ( 2 x. ( ( A x. C ) x. ( B x. D ) ) ) ) = ( ( ( A x. C ) ^ 2 ) - ( 2 x. ( ( A x. D ) x. ( B x. C ) ) ) ) ) | 
						
							| 45 | 44 | oveq1d |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> ( ( ( ( A x. C ) ^ 2 ) - ( 2 x. ( ( A x. C ) x. ( B x. D ) ) ) ) + ( ( ( A x. D ) ^ 2 ) + ( 2 x. ( ( A x. D ) x. ( B x. C ) ) ) ) ) = ( ( ( ( A x. C ) ^ 2 ) - ( 2 x. ( ( A x. D ) x. ( B x. C ) ) ) ) + ( ( ( A x. D ) ^ 2 ) + ( 2 x. ( ( A x. D ) x. ( B x. C ) ) ) ) ) ) | 
						
							| 46 | 29 37 35 | nppcan3d |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> ( ( ( ( A x. C ) ^ 2 ) - ( 2 x. ( ( A x. D ) x. ( B x. C ) ) ) ) + ( ( ( A x. D ) ^ 2 ) + ( 2 x. ( ( A x. D ) x. ( B x. C ) ) ) ) ) = ( ( ( A x. C ) ^ 2 ) + ( ( A x. D ) ^ 2 ) ) ) | 
						
							| 47 | 45 46 | eqtrd |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> ( ( ( ( A x. C ) ^ 2 ) - ( 2 x. ( ( A x. C ) x. ( B x. D ) ) ) ) + ( ( ( A x. D ) ^ 2 ) + ( 2 x. ( ( A x. D ) x. ( B x. C ) ) ) ) ) = ( ( ( A x. C ) ^ 2 ) + ( ( A x. D ) ^ 2 ) ) ) | 
						
							| 48 | 8 6 | sqmuld |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> ( ( B x. D ) ^ 2 ) = ( ( B ^ 2 ) x. ( D ^ 2 ) ) ) | 
						
							| 49 | 8 3 | sqmuld |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> ( ( B x. C ) ^ 2 ) = ( ( B ^ 2 ) x. ( C ^ 2 ) ) ) | 
						
							| 50 | 48 49 | oveq12d |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> ( ( ( B x. D ) ^ 2 ) + ( ( B x. C ) ^ 2 ) ) = ( ( ( B ^ 2 ) x. ( D ^ 2 ) ) + ( ( B ^ 2 ) x. ( C ^ 2 ) ) ) ) | 
						
							| 51 | 47 50 | oveq12d |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> ( ( ( ( ( A x. C ) ^ 2 ) - ( 2 x. ( ( A x. C ) x. ( B x. D ) ) ) ) + ( ( ( A x. D ) ^ 2 ) + ( 2 x. ( ( A x. D ) x. ( B x. C ) ) ) ) ) + ( ( ( B x. D ) ^ 2 ) + ( ( B x. C ) ^ 2 ) ) ) = ( ( ( ( A x. C ) ^ 2 ) + ( ( A x. D ) ^ 2 ) ) + ( ( ( B ^ 2 ) x. ( D ^ 2 ) ) + ( ( B ^ 2 ) x. ( C ^ 2 ) ) ) ) ) | 
						
							| 52 | 1 3 | sqmuld |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> ( ( A x. C ) ^ 2 ) = ( ( A ^ 2 ) x. ( C ^ 2 ) ) ) | 
						
							| 53 | 1 6 | sqmuld |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> ( ( A x. D ) ^ 2 ) = ( ( A ^ 2 ) x. ( D ^ 2 ) ) ) | 
						
							| 54 | 52 53 | oveq12d |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> ( ( ( A x. C ) ^ 2 ) + ( ( A x. D ) ^ 2 ) ) = ( ( ( A ^ 2 ) x. ( C ^ 2 ) ) + ( ( A ^ 2 ) x. ( D ^ 2 ) ) ) ) | 
						
							| 55 | 54 | oveq1d |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> ( ( ( ( A x. C ) ^ 2 ) + ( ( A x. D ) ^ 2 ) ) + ( ( ( B ^ 2 ) x. ( D ^ 2 ) ) + ( ( B ^ 2 ) x. ( C ^ 2 ) ) ) ) = ( ( ( ( A ^ 2 ) x. ( C ^ 2 ) ) + ( ( A ^ 2 ) x. ( D ^ 2 ) ) ) + ( ( ( B ^ 2 ) x. ( D ^ 2 ) ) + ( ( B ^ 2 ) x. ( C ^ 2 ) ) ) ) ) | 
						
							| 56 | 51 55 | eqtrd |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> ( ( ( ( ( A x. C ) ^ 2 ) - ( 2 x. ( ( A x. C ) x. ( B x. D ) ) ) ) + ( ( ( A x. D ) ^ 2 ) + ( 2 x. ( ( A x. D ) x. ( B x. C ) ) ) ) ) + ( ( ( B x. D ) ^ 2 ) + ( ( B x. C ) ^ 2 ) ) ) = ( ( ( ( A ^ 2 ) x. ( C ^ 2 ) ) + ( ( A ^ 2 ) x. ( D ^ 2 ) ) ) + ( ( ( B ^ 2 ) x. ( D ^ 2 ) ) + ( ( B ^ 2 ) x. ( C ^ 2 ) ) ) ) ) | 
						
							| 57 | 28 40 56 | 3eqtrd |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> ( ( ( ( A x. C ) - ( B x. D ) ) ^ 2 ) + ( ( ( A x. D ) + ( B x. C ) ) ^ 2 ) ) = ( ( ( ( A ^ 2 ) x. ( C ^ 2 ) ) + ( ( A ^ 2 ) x. ( D ^ 2 ) ) ) + ( ( ( B ^ 2 ) x. ( D ^ 2 ) ) + ( ( B ^ 2 ) x. ( C ^ 2 ) ) ) ) ) | 
						
							| 58 | 18 19 57 | 3eqtr4d |  |-  ( ( ( A e. CC /\ B e. CC ) /\ ( C e. CC /\ D e. CC ) ) -> ( ( ( A ^ 2 ) + ( B ^ 2 ) ) x. ( ( C ^ 2 ) + ( D ^ 2 ) ) ) = ( ( ( ( A x. C ) - ( B x. D ) ) ^ 2 ) + ( ( ( A x. D ) + ( B x. C ) ) ^ 2 ) ) ) |