Metamath Proof Explorer


Theorem isringrng

Description: The predicate "is a unital ring" as extension of the predicate "is a non-unital ring". (Contributed by AV, 17-Feb-2020)

Ref Expression
Hypotheses isringrng.b ⊢ 𝐵 = ( Base ‘ 𝑅 )
isringrng.t ⊢ · = ( .r ‘ 𝑅 )
Assertion isringrng ( 𝑅 ∈ Ring ↔ ( 𝑅 ∈ Rng ∧ ∃ 𝑥 ∈ 𝐵 ∀ 𝑦 ∈ 𝐵 ( ( 𝑥 · 𝑦 ) = 𝑦 ∧ ( 𝑦 · 𝑥 ) = 𝑦 ) ) )

Proof

Step Hyp Ref Expression
1 isringrng.b ⊢ 𝐵 = ( Base ‘ 𝑅 )
2 isringrng.t ⊢ · = ( .r ‘ 𝑅 )
3 ringrng ⊢ ( 𝑅 ∈ Ring → 𝑅 ∈ Rng )
4 1 2 ringideu ⊢ ( 𝑅 ∈ Ring → ∃! 𝑥 ∈ 𝐵 ∀ 𝑦 ∈ 𝐵 ( ( 𝑥 · 𝑦 ) = 𝑦 ∧ ( 𝑦 · 𝑥 ) = 𝑦 ) )
5 reurex ⊢ ( ∃! 𝑥 ∈ 𝐵 ∀ 𝑦 ∈ 𝐵 ( ( 𝑥 · 𝑦 ) = 𝑦 ∧ ( 𝑦 · 𝑥 ) = 𝑦 ) → ∃ 𝑥 ∈ 𝐵 ∀ 𝑦 ∈ 𝐵 ( ( 𝑥 · 𝑦 ) = 𝑦 ∧ ( 𝑦 · 𝑥 ) = 𝑦 ) )
6 4 5 syl ⊢ ( 𝑅 ∈ Ring → ∃ 𝑥 ∈ 𝐵 ∀ 𝑦 ∈ 𝐵 ( ( 𝑥 · 𝑦 ) = 𝑦 ∧ ( 𝑦 · 𝑥 ) = 𝑦 ) )
7 3 6 jca ⊢ ( 𝑅 ∈ Ring → ( 𝑅 ∈ Rng ∧ ∃ 𝑥 ∈ 𝐵 ∀ 𝑦 ∈ 𝐵 ( ( 𝑥 · 𝑦 ) = 𝑦 ∧ ( 𝑦 · 𝑥 ) = 𝑦 ) ) )
8 rngabl ⊢ ( 𝑅 ∈ Rng → 𝑅 ∈ Abel )
9 ablgrp ⊢ ( 𝑅 ∈ Abel → 𝑅 ∈ Grp )
10 8 9 syl ⊢ ( 𝑅 ∈ Rng → 𝑅 ∈ Grp )
11 10 adantr ⊢ ( ( 𝑅 ∈ Rng ∧ ∃ 𝑥 ∈ 𝐵 ∀ 𝑦 ∈ 𝐵 ( ( 𝑥 · 𝑦 ) = 𝑦 ∧ ( 𝑦 · 𝑥 ) = 𝑦 ) ) → 𝑅 ∈ Grp )
12 eqid ⊢ ( mulGrp ‘ 𝑅 ) = ( mulGrp ‘ 𝑅 )
13 12 rngmgp ⊢ ( 𝑅 ∈ Rng → ( mulGrp ‘ 𝑅 ) ∈ Smgrp )
14 13 anim1i ⊢ ( ( 𝑅 ∈ Rng ∧ ∃ 𝑥 ∈ 𝐵 ∀ 𝑦 ∈ 𝐵 ( ( 𝑥 · 𝑦 ) = 𝑦 ∧ ( 𝑦 · 𝑥 ) = 𝑦 ) ) → ( ( mulGrp ‘ 𝑅 ) ∈ Smgrp ∧ ∃ 𝑥 ∈ 𝐵 ∀ 𝑦 ∈ 𝐵 ( ( 𝑥 · 𝑦 ) = 𝑦 ∧ ( 𝑦 · 𝑥 ) = 𝑦 ) ) )
15 12 1 mgpbas ⊢ 𝐵 = ( Base ‘ ( mulGrp ‘ 𝑅 ) )
16 12 2 mgpplusg ⊢ · = ( +g ‘ ( mulGrp ‘ 𝑅 ) )
17 15 16 ismnddef ⊢ ( ( mulGrp ‘ 𝑅 ) ∈ Mnd ↔ ( ( mulGrp ‘ 𝑅 ) ∈ Smgrp ∧ ∃ 𝑥 ∈ 𝐵 ∀ 𝑦 ∈ 𝐵 ( ( 𝑥 · 𝑦 ) = 𝑦 ∧ ( 𝑦 · 𝑥 ) = 𝑦 ) ) )
18 14 17 sylibr ⊢ ( ( 𝑅 ∈ Rng ∧ ∃ 𝑥 ∈ 𝐵 ∀ 𝑦 ∈ 𝐵 ( ( 𝑥 · 𝑦 ) = 𝑦 ∧ ( 𝑦 · 𝑥 ) = 𝑦 ) ) → ( mulGrp ‘ 𝑅 ) ∈ Mnd )
19 eqid ⊢ ( +g ‘ 𝑅 ) = ( +g ‘ 𝑅 )
20 1 12 19 2 isrng ⊢ ( 𝑅 ∈ Rng ↔ ( 𝑅 ∈ Abel ∧ ( mulGrp ‘ 𝑅 ) ∈ Smgrp ∧ ∀ 𝑥 ∈ 𝐵 ∀ 𝑦 ∈ 𝐵 ∀ 𝑧 ∈ 𝐵 ( ( 𝑥 · ( 𝑦 ( +g ‘ 𝑅 ) 𝑧 ) ) = ( ( 𝑥 · 𝑦 ) ( +g ‘ 𝑅 ) ( 𝑥 · 𝑧 ) ) ∧ ( ( 𝑥 ( +g ‘ 𝑅 ) 𝑦 ) · 𝑧 ) = ( ( 𝑥 · 𝑧 ) ( +g ‘ 𝑅 ) ( 𝑦 · 𝑧 ) ) ) ) )
21 20 simp3bi ⊢ ( 𝑅 ∈ Rng → ∀ 𝑥 ∈ 𝐵 ∀ 𝑦 ∈ 𝐵 ∀ 𝑧 ∈ 𝐵 ( ( 𝑥 · ( 𝑦 ( +g ‘ 𝑅 ) 𝑧 ) ) = ( ( 𝑥 · 𝑦 ) ( +g ‘ 𝑅 ) ( 𝑥 · 𝑧 ) ) ∧ ( ( 𝑥 ( +g ‘ 𝑅 ) 𝑦 ) · 𝑧 ) = ( ( 𝑥 · 𝑧 ) ( +g ‘ 𝑅 ) ( 𝑦 · 𝑧 ) ) ) )
22 21 adantr ⊢ ( ( 𝑅 ∈ Rng ∧ ∃ 𝑥 ∈ 𝐵 ∀ 𝑦 ∈ 𝐵 ( ( 𝑥 · 𝑦 ) = 𝑦 ∧ ( 𝑦 · 𝑥 ) = 𝑦 ) ) → ∀ 𝑥 ∈ 𝐵 ∀ 𝑦 ∈ 𝐵 ∀ 𝑧 ∈ 𝐵 ( ( 𝑥 · ( 𝑦 ( +g ‘ 𝑅 ) 𝑧 ) ) = ( ( 𝑥 · 𝑦 ) ( +g ‘ 𝑅 ) ( 𝑥 · 𝑧 ) ) ∧ ( ( 𝑥 ( +g ‘ 𝑅 ) 𝑦 ) · 𝑧 ) = ( ( 𝑥 · 𝑧 ) ( +g ‘ 𝑅 ) ( 𝑦 · 𝑧 ) ) ) )
23 1 12 19 2 isring ⊢ ( 𝑅 ∈ Ring ↔ ( 𝑅 ∈ Grp ∧ ( mulGrp ‘ 𝑅 ) ∈ Mnd ∧ ∀ 𝑥 ∈ 𝐵 ∀ 𝑦 ∈ 𝐵 ∀ 𝑧 ∈ 𝐵 ( ( 𝑥 · ( 𝑦 ( +g ‘ 𝑅 ) 𝑧 ) ) = ( ( 𝑥 · 𝑦 ) ( +g ‘ 𝑅 ) ( 𝑥 · 𝑧 ) ) ∧ ( ( 𝑥 ( +g ‘ 𝑅 ) 𝑦 ) · 𝑧 ) = ( ( 𝑥 · 𝑧 ) ( +g ‘ 𝑅 ) ( 𝑦 · 𝑧 ) ) ) ) )
24 11 18 22 23 syl3anbrc ⊢ ( ( 𝑅 ∈ Rng ∧ ∃ 𝑥 ∈ 𝐵 ∀ 𝑦 ∈ 𝐵 ( ( 𝑥 · 𝑦 ) = 𝑦 ∧ ( 𝑦 · 𝑥 ) = 𝑦 ) ) → 𝑅 ∈ Ring )
25 7 24 impbii ⊢ ( 𝑅 ∈ Ring ↔ ( 𝑅 ∈ Rng ∧ ∃ 𝑥 ∈ 𝐵 ∀ 𝑦 ∈ 𝐵 ( ( 𝑥 · 𝑦 ) = 𝑦 ∧ ( 𝑦 · 𝑥 ) = 𝑦 ) ) )