| Step | 
						Hyp | 
						Ref | 
						Expression | 
					
						
							| 1 | 
							
								
							 | 
							nncn | 
							 |-  ( A e. NN -> A e. CC )  | 
						
						
							| 2 | 
							
								1
							 | 
							3ad2ant2 | 
							 |-  ( ( D e. NN /\ A e. NN /\ B e. NN ) -> A e. CC )  | 
						
						
							| 3 | 
							
								2
							 | 
							sqcld | 
							 |-  ( ( D e. NN /\ A e. NN /\ B e. NN ) -> ( A ^ 2 ) e. CC )  | 
						
						
							| 4 | 
							
								
							 | 
							nncn | 
							 |-  ( D e. NN -> D e. CC )  | 
						
						
							| 5 | 
							
								4
							 | 
							3ad2ant1 | 
							 |-  ( ( D e. NN /\ A e. NN /\ B e. NN ) -> D e. CC )  | 
						
						
							| 6 | 
							
								
							 | 
							nncn | 
							 |-  ( B e. NN -> B e. CC )  | 
						
						
							| 7 | 
							
								6
							 | 
							3ad2ant3 | 
							 |-  ( ( D e. NN /\ A e. NN /\ B e. NN ) -> B e. CC )  | 
						
						
							| 8 | 
							
								7
							 | 
							sqcld | 
							 |-  ( ( D e. NN /\ A e. NN /\ B e. NN ) -> ( B ^ 2 ) e. CC )  | 
						
						
							| 9 | 
							
								5 8
							 | 
							mulcld | 
							 |-  ( ( D e. NN /\ A e. NN /\ B e. NN ) -> ( D x. ( B ^ 2 ) ) e. CC )  | 
						
						
							| 10 | 
							
								3 9
							 | 
							subeq0ad | 
							 |-  ( ( D e. NN /\ A e. NN /\ B e. NN ) -> ( ( ( A ^ 2 ) - ( D x. ( B ^ 2 ) ) ) = 0 <-> ( A ^ 2 ) = ( D x. ( B ^ 2 ) ) ) )  | 
						
						
							| 11 | 
							
								
							 | 
							nnne0 | 
							 |-  ( B e. NN -> B =/= 0 )  | 
						
						
							| 12 | 
							
								11
							 | 
							3ad2ant3 | 
							 |-  ( ( D e. NN /\ A e. NN /\ B e. NN ) -> B =/= 0 )  | 
						
						
							| 13 | 
							
								
							 | 
							sqne0 | 
							 |-  ( B e. CC -> ( ( B ^ 2 ) =/= 0 <-> B =/= 0 ) )  | 
						
						
							| 14 | 
							
								7 13
							 | 
							syl | 
							 |-  ( ( D e. NN /\ A e. NN /\ B e. NN ) -> ( ( B ^ 2 ) =/= 0 <-> B =/= 0 ) )  | 
						
						
							| 15 | 
							
								12 14
							 | 
							mpbird | 
							 |-  ( ( D e. NN /\ A e. NN /\ B e. NN ) -> ( B ^ 2 ) =/= 0 )  | 
						
						
							| 16 | 
							
								3 5 8 15
							 | 
							divmul3d | 
							 |-  ( ( D e. NN /\ A e. NN /\ B e. NN ) -> ( ( ( A ^ 2 ) / ( B ^ 2 ) ) = D <-> ( A ^ 2 ) = ( D x. ( B ^ 2 ) ) ) )  | 
						
						
							| 17 | 
							
								
							 | 
							sqdiv | 
							 |-  ( ( A e. CC /\ B e. CC /\ B =/= 0 ) -> ( ( A / B ) ^ 2 ) = ( ( A ^ 2 ) / ( B ^ 2 ) ) )  | 
						
						
							| 18 | 
							
								17
							 | 
							fveq2d | 
							 |-  ( ( A e. CC /\ B e. CC /\ B =/= 0 ) -> ( sqrt ` ( ( A / B ) ^ 2 ) ) = ( sqrt ` ( ( A ^ 2 ) / ( B ^ 2 ) ) ) )  | 
						
						
							| 19 | 
							
								2 7 12 18
							 | 
							syl3anc | 
							 |-  ( ( D e. NN /\ A e. NN /\ B e. NN ) -> ( sqrt ` ( ( A / B ) ^ 2 ) ) = ( sqrt ` ( ( A ^ 2 ) / ( B ^ 2 ) ) ) )  | 
						
						
							| 20 | 
							
								
							 | 
							nnre | 
							 |-  ( A e. NN -> A e. RR )  | 
						
						
							| 21 | 
							
								20
							 | 
							3ad2ant2 | 
							 |-  ( ( D e. NN /\ A e. NN /\ B e. NN ) -> A e. RR )  | 
						
						
							| 22 | 
							
								
							 | 
							nnre | 
							 |-  ( B e. NN -> B e. RR )  | 
						
						
							| 23 | 
							
								22
							 | 
							3ad2ant3 | 
							 |-  ( ( D e. NN /\ A e. NN /\ B e. NN ) -> B e. RR )  | 
						
						
							| 24 | 
							
								21 23 12
							 | 
							redivcld | 
							 |-  ( ( D e. NN /\ A e. NN /\ B e. NN ) -> ( A / B ) e. RR )  | 
						
						
							| 25 | 
							
								
							 | 
							nnnn0 | 
							 |-  ( A e. NN -> A e. NN0 )  | 
						
						
							| 26 | 
							
								25
							 | 
							nn0ge0d | 
							 |-  ( A e. NN -> 0 <_ A )  | 
						
						
							| 27 | 
							
								26
							 | 
							3ad2ant2 | 
							 |-  ( ( D e. NN /\ A e. NN /\ B e. NN ) -> 0 <_ A )  | 
						
						
							| 28 | 
							
								
							 | 
							nngt0 | 
							 |-  ( B e. NN -> 0 < B )  | 
						
						
							| 29 | 
							
								28
							 | 
							3ad2ant3 | 
							 |-  ( ( D e. NN /\ A e. NN /\ B e. NN ) -> 0 < B )  | 
						
						
							| 30 | 
							
								
							 | 
							divge0 | 
							 |-  ( ( ( A e. RR /\ 0 <_ A ) /\ ( B e. RR /\ 0 < B ) ) -> 0 <_ ( A / B ) )  | 
						
						
							| 31 | 
							
								21 27 23 29 30
							 | 
							syl22anc | 
							 |-  ( ( D e. NN /\ A e. NN /\ B e. NN ) -> 0 <_ ( A / B ) )  | 
						
						
							| 32 | 
							
								24 31
							 | 
							sqrtsqd | 
							 |-  ( ( D e. NN /\ A e. NN /\ B e. NN ) -> ( sqrt ` ( ( A / B ) ^ 2 ) ) = ( A / B ) )  | 
						
						
							| 33 | 
							
								19 32
							 | 
							eqtr3d | 
							 |-  ( ( D e. NN /\ A e. NN /\ B e. NN ) -> ( sqrt ` ( ( A ^ 2 ) / ( B ^ 2 ) ) ) = ( A / B ) )  | 
						
						
							| 34 | 
							
								
							 | 
							nnq | 
							 |-  ( A e. NN -> A e. QQ )  | 
						
						
							| 35 | 
							
								34
							 | 
							3ad2ant2 | 
							 |-  ( ( D e. NN /\ A e. NN /\ B e. NN ) -> A e. QQ )  | 
						
						
							| 36 | 
							
								
							 | 
							nnq | 
							 |-  ( B e. NN -> B e. QQ )  | 
						
						
							| 37 | 
							
								36
							 | 
							3ad2ant3 | 
							 |-  ( ( D e. NN /\ A e. NN /\ B e. NN ) -> B e. QQ )  | 
						
						
							| 38 | 
							
								
							 | 
							qdivcl | 
							 |-  ( ( A e. QQ /\ B e. QQ /\ B =/= 0 ) -> ( A / B ) e. QQ )  | 
						
						
							| 39 | 
							
								35 37 12 38
							 | 
							syl3anc | 
							 |-  ( ( D e. NN /\ A e. NN /\ B e. NN ) -> ( A / B ) e. QQ )  | 
						
						
							| 40 | 
							
								33 39
							 | 
							eqeltrd | 
							 |-  ( ( D e. NN /\ A e. NN /\ B e. NN ) -> ( sqrt ` ( ( A ^ 2 ) / ( B ^ 2 ) ) ) e. QQ )  | 
						
						
							| 41 | 
							
								
							 | 
							fveq2 | 
							 |-  ( ( ( A ^ 2 ) / ( B ^ 2 ) ) = D -> ( sqrt ` ( ( A ^ 2 ) / ( B ^ 2 ) ) ) = ( sqrt ` D ) )  | 
						
						
							| 42 | 
							
								41
							 | 
							eleq1d | 
							 |-  ( ( ( A ^ 2 ) / ( B ^ 2 ) ) = D -> ( ( sqrt ` ( ( A ^ 2 ) / ( B ^ 2 ) ) ) e. QQ <-> ( sqrt ` D ) e. QQ ) )  | 
						
						
							| 43 | 
							
								40 42
							 | 
							syl5ibcom | 
							 |-  ( ( D e. NN /\ A e. NN /\ B e. NN ) -> ( ( ( A ^ 2 ) / ( B ^ 2 ) ) = D -> ( sqrt ` D ) e. QQ ) )  | 
						
						
							| 44 | 
							
								16 43
							 | 
							sylbird | 
							 |-  ( ( D e. NN /\ A e. NN /\ B e. NN ) -> ( ( A ^ 2 ) = ( D x. ( B ^ 2 ) ) -> ( sqrt ` D ) e. QQ ) )  | 
						
						
							| 45 | 
							
								10 44
							 | 
							sylbid | 
							 |-  ( ( D e. NN /\ A e. NN /\ B e. NN ) -> ( ( ( A ^ 2 ) - ( D x. ( B ^ 2 ) ) ) = 0 -> ( sqrt ` D ) e. QQ ) )  | 
						
						
							| 46 | 
							
								45
							 | 
							necon3bd | 
							 |-  ( ( D e. NN /\ A e. NN /\ B e. NN ) -> ( -. ( sqrt ` D ) e. QQ -> ( ( A ^ 2 ) - ( D x. ( B ^ 2 ) ) ) =/= 0 ) )  | 
						
						
							| 47 | 
							
								46
							 | 
							imp | 
							 |-  ( ( ( D e. NN /\ A e. NN /\ B e. NN ) /\ -. ( sqrt ` D ) e. QQ ) -> ( ( A ^ 2 ) - ( D x. ( B ^ 2 ) ) ) =/= 0 )  |