Metamath Proof Explorer


Theorem idomnzd

Description: A domain has no zero-divisors (besides zero). (Contributed by Jeff Madsen, 19-Jun-2010) (Revised by AV, 12-Jul-2026)

Ref Expression
Hypotheses isidom3.b 𝐵 = ( Base ‘ 𝑅 )
isidom3.t · = ( .r𝑅 )
isidom3.0 0 = ( 0g𝑅 )
Assertion idomnzd ( ( 𝑅 ∈ IDomn ∧ ( 𝑋𝐵𝑌𝐵 ∧ ( 𝑋 · 𝑌 ) = 0 ) ) → ( 𝑋 = 0𝑌 = 0 ) )

Proof

Step Hyp Ref Expression
1 isidom3.b 𝐵 = ( Base ‘ 𝑅 )
2 isidom3.t · = ( .r𝑅 )
3 isidom3.0 0 = ( 0g𝑅 )
4 eqid ( 1r𝑅 ) = ( 1r𝑅 )
5 1 2 3 4 isidom3 ( 𝑅 ∈ IDomn ↔ ( 𝑅 ∈ CRing ∧ 0 ≠ ( 1r𝑅 ) ∧ ∀ 𝑎𝐵𝑏𝐵 ( ( 𝑎 · 𝑏 ) = 0 → ( 𝑎 = 0𝑏 = 0 ) ) ) )
6 5 simp3bi ( 𝑅 ∈ IDomn → ∀ 𝑎𝐵𝑏𝐵 ( ( 𝑎 · 𝑏 ) = 0 → ( 𝑎 = 0𝑏 = 0 ) ) )
7 oveq1 ( 𝑎 = 𝑋 → ( 𝑎 · 𝑏 ) = ( 𝑋 · 𝑏 ) )
8 7 eqeq1d ( 𝑎 = 𝑋 → ( ( 𝑎 · 𝑏 ) = 0 ↔ ( 𝑋 · 𝑏 ) = 0 ) )
9 eqeq1 ( 𝑎 = 𝑋 → ( 𝑎 = 0𝑋 = 0 ) )
10 9 orbi1d ( 𝑎 = 𝑋 → ( ( 𝑎 = 0𝑏 = 0 ) ↔ ( 𝑋 = 0𝑏 = 0 ) ) )
11 8 10 imbi12d ( 𝑎 = 𝑋 → ( ( ( 𝑎 · 𝑏 ) = 0 → ( 𝑎 = 0𝑏 = 0 ) ) ↔ ( ( 𝑋 · 𝑏 ) = 0 → ( 𝑋 = 0𝑏 = 0 ) ) ) )
12 oveq2 ( 𝑏 = 𝑌 → ( 𝑋 · 𝑏 ) = ( 𝑋 · 𝑌 ) )
13 12 eqeq1d ( 𝑏 = 𝑌 → ( ( 𝑋 · 𝑏 ) = 0 ↔ ( 𝑋 · 𝑌 ) = 0 ) )
14 eqeq1 ( 𝑏 = 𝑌 → ( 𝑏 = 0𝑌 = 0 ) )
15 14 orbi2d ( 𝑏 = 𝑌 → ( ( 𝑋 = 0𝑏 = 0 ) ↔ ( 𝑋 = 0𝑌 = 0 ) ) )
16 13 15 imbi12d ( 𝑏 = 𝑌 → ( ( ( 𝑋 · 𝑏 ) = 0 → ( 𝑋 = 0𝑏 = 0 ) ) ↔ ( ( 𝑋 · 𝑌 ) = 0 → ( 𝑋 = 0𝑌 = 0 ) ) ) )
17 11 16 rspc2v ( ( 𝑋𝐵𝑌𝐵 ) → ( ∀ 𝑎𝐵𝑏𝐵 ( ( 𝑎 · 𝑏 ) = 0 → ( 𝑎 = 0𝑏 = 0 ) ) → ( ( 𝑋 · 𝑌 ) = 0 → ( 𝑋 = 0𝑌 = 0 ) ) ) )
18 6 17 syl5com ( 𝑅 ∈ IDomn → ( ( 𝑋𝐵𝑌𝐵 ) → ( ( 𝑋 · 𝑌 ) = 0 → ( 𝑋 = 0𝑌 = 0 ) ) ) )
19 18 expd ( 𝑅 ∈ IDomn → ( 𝑋𝐵 → ( 𝑌𝐵 → ( ( 𝑋 · 𝑌 ) = 0 → ( 𝑋 = 0𝑌 = 0 ) ) ) ) )
20 19 3imp2 ( ( 𝑅 ∈ IDomn ∧ ( 𝑋𝐵𝑌𝐵 ∧ ( 𝑋 · 𝑌 ) = 0 ) ) → ( 𝑋 = 0𝑌 = 0 ) )