| Step | Hyp | Ref | Expression | 
						
							| 1 |  | ringinvnzdiv.b | ⊢ 𝐵  =  ( Base ‘ 𝑅 ) | 
						
							| 2 |  | ringinvnzdiv.t | ⊢  ·   =  ( .r ‘ 𝑅 ) | 
						
							| 3 |  | ringinvnzdiv.u | ⊢  1   =  ( 1r ‘ 𝑅 ) | 
						
							| 4 |  | ringinvnzdiv.z | ⊢  0   =  ( 0g ‘ 𝑅 ) | 
						
							| 5 |  | ringinvnzdiv.r | ⊢ ( 𝜑  →  𝑅  ∈  Ring ) | 
						
							| 6 |  | ringinvnzdiv.x | ⊢ ( 𝜑  →  𝑋  ∈  𝐵 ) | 
						
							| 7 |  | ringinvnzdiv.a | ⊢ ( 𝜑  →  ∃ 𝑎  ∈  𝐵 ( 𝑎  ·  𝑋 )  =   1  ) | 
						
							| 8 |  | ringinvnzdiv.y | ⊢ ( 𝜑  →  𝑌  ∈  𝐵 ) | 
						
							| 9 | 1 2 3 | ringlidm | ⊢ ( ( 𝑅  ∈  Ring  ∧  𝑌  ∈  𝐵 )  →  (  1   ·  𝑌 )  =  𝑌 ) | 
						
							| 10 | 5 8 9 | syl2anc | ⊢ ( 𝜑  →  (  1   ·  𝑌 )  =  𝑌 ) | 
						
							| 11 | 10 | eqcomd | ⊢ ( 𝜑  →  𝑌  =  (  1   ·  𝑌 ) ) | 
						
							| 12 | 11 | ad3antrrr | ⊢ ( ( ( ( 𝜑  ∧  𝑎  ∈  𝐵 )  ∧  ( 𝑎  ·  𝑋 )  =   1  )  ∧  ( 𝑋  ·  𝑌 )  =   0  )  →  𝑌  =  (  1   ·  𝑌 ) ) | 
						
							| 13 |  | oveq1 | ⊢ (  1   =  ( 𝑎  ·  𝑋 )  →  (  1   ·  𝑌 )  =  ( ( 𝑎  ·  𝑋 )  ·  𝑌 ) ) | 
						
							| 14 | 13 | eqcoms | ⊢ ( ( 𝑎  ·  𝑋 )  =   1   →  (  1   ·  𝑌 )  =  ( ( 𝑎  ·  𝑋 )  ·  𝑌 ) ) | 
						
							| 15 | 14 | adantl | ⊢ ( ( ( 𝜑  ∧  𝑎  ∈  𝐵 )  ∧  ( 𝑎  ·  𝑋 )  =   1  )  →  (  1   ·  𝑌 )  =  ( ( 𝑎  ·  𝑋 )  ·  𝑌 ) ) | 
						
							| 16 | 5 | adantr | ⊢ ( ( 𝜑  ∧  𝑎  ∈  𝐵 )  →  𝑅  ∈  Ring ) | 
						
							| 17 |  | simpr | ⊢ ( ( 𝜑  ∧  𝑎  ∈  𝐵 )  →  𝑎  ∈  𝐵 ) | 
						
							| 18 | 6 | adantr | ⊢ ( ( 𝜑  ∧  𝑎  ∈  𝐵 )  →  𝑋  ∈  𝐵 ) | 
						
							| 19 | 8 | adantr | ⊢ ( ( 𝜑  ∧  𝑎  ∈  𝐵 )  →  𝑌  ∈  𝐵 ) | 
						
							| 20 | 17 18 19 | 3jca | ⊢ ( ( 𝜑  ∧  𝑎  ∈  𝐵 )  →  ( 𝑎  ∈  𝐵  ∧  𝑋  ∈  𝐵  ∧  𝑌  ∈  𝐵 ) ) | 
						
							| 21 | 16 20 | jca | ⊢ ( ( 𝜑  ∧  𝑎  ∈  𝐵 )  →  ( 𝑅  ∈  Ring  ∧  ( 𝑎  ∈  𝐵  ∧  𝑋  ∈  𝐵  ∧  𝑌  ∈  𝐵 ) ) ) | 
						
							| 22 | 21 | adantr | ⊢ ( ( ( 𝜑  ∧  𝑎  ∈  𝐵 )  ∧  ( 𝑎  ·  𝑋 )  =   1  )  →  ( 𝑅  ∈  Ring  ∧  ( 𝑎  ∈  𝐵  ∧  𝑋  ∈  𝐵  ∧  𝑌  ∈  𝐵 ) ) ) | 
						
							| 23 | 1 2 | ringass | ⊢ ( ( 𝑅  ∈  Ring  ∧  ( 𝑎  ∈  𝐵  ∧  𝑋  ∈  𝐵  ∧  𝑌  ∈  𝐵 ) )  →  ( ( 𝑎  ·  𝑋 )  ·  𝑌 )  =  ( 𝑎  ·  ( 𝑋  ·  𝑌 ) ) ) | 
						
							| 24 | 22 23 | syl | ⊢ ( ( ( 𝜑  ∧  𝑎  ∈  𝐵 )  ∧  ( 𝑎  ·  𝑋 )  =   1  )  →  ( ( 𝑎  ·  𝑋 )  ·  𝑌 )  =  ( 𝑎  ·  ( 𝑋  ·  𝑌 ) ) ) | 
						
							| 25 | 15 24 | eqtrd | ⊢ ( ( ( 𝜑  ∧  𝑎  ∈  𝐵 )  ∧  ( 𝑎  ·  𝑋 )  =   1  )  →  (  1   ·  𝑌 )  =  ( 𝑎  ·  ( 𝑋  ·  𝑌 ) ) ) | 
						
							| 26 | 25 | adantr | ⊢ ( ( ( ( 𝜑  ∧  𝑎  ∈  𝐵 )  ∧  ( 𝑎  ·  𝑋 )  =   1  )  ∧  ( 𝑋  ·  𝑌 )  =   0  )  →  (  1   ·  𝑌 )  =  ( 𝑎  ·  ( 𝑋  ·  𝑌 ) ) ) | 
						
							| 27 |  | oveq2 | ⊢ ( ( 𝑋  ·  𝑌 )  =   0   →  ( 𝑎  ·  ( 𝑋  ·  𝑌 ) )  =  ( 𝑎  ·   0  ) ) | 
						
							| 28 | 1 2 4 | ringrz | ⊢ ( ( 𝑅  ∈  Ring  ∧  𝑎  ∈  𝐵 )  →  ( 𝑎  ·   0  )  =   0  ) | 
						
							| 29 | 5 28 | sylan | ⊢ ( ( 𝜑  ∧  𝑎  ∈  𝐵 )  →  ( 𝑎  ·   0  )  =   0  ) | 
						
							| 30 | 29 | adantr | ⊢ ( ( ( 𝜑  ∧  𝑎  ∈  𝐵 )  ∧  ( 𝑎  ·  𝑋 )  =   1  )  →  ( 𝑎  ·   0  )  =   0  ) | 
						
							| 31 | 27 30 | sylan9eqr | ⊢ ( ( ( ( 𝜑  ∧  𝑎  ∈  𝐵 )  ∧  ( 𝑎  ·  𝑋 )  =   1  )  ∧  ( 𝑋  ·  𝑌 )  =   0  )  →  ( 𝑎  ·  ( 𝑋  ·  𝑌 ) )  =   0  ) | 
						
							| 32 | 12 26 31 | 3eqtrd | ⊢ ( ( ( ( 𝜑  ∧  𝑎  ∈  𝐵 )  ∧  ( 𝑎  ·  𝑋 )  =   1  )  ∧  ( 𝑋  ·  𝑌 )  =   0  )  →  𝑌  =   0  ) | 
						
							| 33 | 32 | exp31 | ⊢ ( ( 𝜑  ∧  𝑎  ∈  𝐵 )  →  ( ( 𝑎  ·  𝑋 )  =   1   →  ( ( 𝑋  ·  𝑌 )  =   0   →  𝑌  =   0  ) ) ) | 
						
							| 34 | 33 | rexlimdva | ⊢ ( 𝜑  →  ( ∃ 𝑎  ∈  𝐵 ( 𝑎  ·  𝑋 )  =   1   →  ( ( 𝑋  ·  𝑌 )  =   0   →  𝑌  =   0  ) ) ) | 
						
							| 35 | 7 34 | mpd | ⊢ ( 𝜑  →  ( ( 𝑋  ·  𝑌 )  =   0   →  𝑌  =   0  ) ) | 
						
							| 36 |  | oveq2 | ⊢ ( 𝑌  =   0   →  ( 𝑋  ·  𝑌 )  =  ( 𝑋  ·   0  ) ) | 
						
							| 37 | 1 2 4 | ringrz | ⊢ ( ( 𝑅  ∈  Ring  ∧  𝑋  ∈  𝐵 )  →  ( 𝑋  ·   0  )  =   0  ) | 
						
							| 38 | 5 6 37 | syl2anc | ⊢ ( 𝜑  →  ( 𝑋  ·   0  )  =   0  ) | 
						
							| 39 | 36 38 | sylan9eqr | ⊢ ( ( 𝜑  ∧  𝑌  =   0  )  →  ( 𝑋  ·  𝑌 )  =   0  ) | 
						
							| 40 | 39 | ex | ⊢ ( 𝜑  →  ( 𝑌  =   0   →  ( 𝑋  ·  𝑌 )  =   0  ) ) | 
						
							| 41 | 35 40 | impbid | ⊢ ( 𝜑  →  ( ( 𝑋  ·  𝑌 )  =   0   ↔  𝑌  =   0  ) ) |