Metamath Proof Explorer


Theorem fidomndrng

Description: A finite domain is a division ring. (Contributed by Mario Carneiro, 15-Jun-2015)

Ref Expression
Hypothesis fidomndrng.b 𝐵 = ( Base ‘ 𝑅 )
Assertion fidomndrng ( 𝐵 ∈ Fin → ( 𝑅 ∈ Domn ↔ 𝑅 ∈ DivRing ) )

Proof

Step Hyp Ref Expression
1 fidomndrng.b 𝐵 = ( Base ‘ 𝑅 )
2 domnring ( 𝑅 ∈ Domn → 𝑅 ∈ Ring )
3 2 adantl ( ( 𝐵 ∈ Fin ∧ 𝑅 ∈ Domn ) → 𝑅 ∈ Ring )
4 domnnzr ( 𝑅 ∈ Domn → 𝑅 ∈ NzRing )
5 4 adantl ( ( 𝐵 ∈ Fin ∧ 𝑅 ∈ Domn ) → 𝑅 ∈ NzRing )
6 eqid ( 1r𝑅 ) = ( 1r𝑅 )
7 eqid ( 0g𝑅 ) = ( 0g𝑅 )
8 6 7 nzrnz ( 𝑅 ∈ NzRing → ( 1r𝑅 ) ≠ ( 0g𝑅 ) )
9 5 8 syl ( ( 𝐵 ∈ Fin ∧ 𝑅 ∈ Domn ) → ( 1r𝑅 ) ≠ ( 0g𝑅 ) )
10 9 neneqd ( ( 𝐵 ∈ Fin ∧ 𝑅 ∈ Domn ) → ¬ ( 1r𝑅 ) = ( 0g𝑅 ) )
11 eqid ( Unit ‘ 𝑅 ) = ( Unit ‘ 𝑅 )
12 11 7 6 0unit ( 𝑅 ∈ Ring → ( ( 0g𝑅 ) ∈ ( Unit ‘ 𝑅 ) ↔ ( 1r𝑅 ) = ( 0g𝑅 ) ) )
13 3 12 syl ( ( 𝐵 ∈ Fin ∧ 𝑅 ∈ Domn ) → ( ( 0g𝑅 ) ∈ ( Unit ‘ 𝑅 ) ↔ ( 1r𝑅 ) = ( 0g𝑅 ) ) )
14 10 13 mtbird ( ( 𝐵 ∈ Fin ∧ 𝑅 ∈ Domn ) → ¬ ( 0g𝑅 ) ∈ ( Unit ‘ 𝑅 ) )
15 disjsn ( ( ( Unit ‘ 𝑅 ) ∩ { ( 0g𝑅 ) } ) = ∅ ↔ ¬ ( 0g𝑅 ) ∈ ( Unit ‘ 𝑅 ) )
16 14 15 sylibr ( ( 𝐵 ∈ Fin ∧ 𝑅 ∈ Domn ) → ( ( Unit ‘ 𝑅 ) ∩ { ( 0g𝑅 ) } ) = ∅ )
17 1 11 unitss ( Unit ‘ 𝑅 ) ⊆ 𝐵
18 reldisj ( ( Unit ‘ 𝑅 ) ⊆ 𝐵 → ( ( ( Unit ‘ 𝑅 ) ∩ { ( 0g𝑅 ) } ) = ∅ ↔ ( Unit ‘ 𝑅 ) ⊆ ( 𝐵 ∖ { ( 0g𝑅 ) } ) ) )
19 17 18 ax-mp ( ( ( Unit ‘ 𝑅 ) ∩ { ( 0g𝑅 ) } ) = ∅ ↔ ( Unit ‘ 𝑅 ) ⊆ ( 𝐵 ∖ { ( 0g𝑅 ) } ) )
20 16 19 sylib ( ( 𝐵 ∈ Fin ∧ 𝑅 ∈ Domn ) → ( Unit ‘ 𝑅 ) ⊆ ( 𝐵 ∖ { ( 0g𝑅 ) } ) )
21 eqid ( ∥r𝑅 ) = ( ∥r𝑅 )
22 eqid ( .r𝑅 ) = ( .r𝑅 )
23 simplr ( ( ( 𝐵 ∈ Fin ∧ 𝑅 ∈ Domn ) ∧ 𝑥 ∈ ( 𝐵 ∖ { ( 0g𝑅 ) } ) ) → 𝑅 ∈ Domn )
24 simpll ( ( ( 𝐵 ∈ Fin ∧ 𝑅 ∈ Domn ) ∧ 𝑥 ∈ ( 𝐵 ∖ { ( 0g𝑅 ) } ) ) → 𝐵 ∈ Fin )
25 simpr ( ( ( 𝐵 ∈ Fin ∧ 𝑅 ∈ Domn ) ∧ 𝑥 ∈ ( 𝐵 ∖ { ( 0g𝑅 ) } ) ) → 𝑥 ∈ ( 𝐵 ∖ { ( 0g𝑅 ) } ) )
26 eqid ( 𝑦𝐵 ↦ ( 𝑦 ( .r𝑅 ) 𝑥 ) ) = ( 𝑦𝐵 ↦ ( 𝑦 ( .r𝑅 ) 𝑥 ) )
27 1 7 6 21 22 23 24 25 26 fidomndrnglem ( ( ( 𝐵 ∈ Fin ∧ 𝑅 ∈ Domn ) ∧ 𝑥 ∈ ( 𝐵 ∖ { ( 0g𝑅 ) } ) ) → 𝑥 ( ∥r𝑅 ) ( 1r𝑅 ) )
28 eqid ( oppr𝑅 ) = ( oppr𝑅 )
29 28 1 opprbas 𝐵 = ( Base ‘ ( oppr𝑅 ) )
30 28 7 oppr0 ( 0g𝑅 ) = ( 0g ‘ ( oppr𝑅 ) )
31 28 6 oppr1 ( 1r𝑅 ) = ( 1r ‘ ( oppr𝑅 ) )
32 eqid ( ∥r ‘ ( oppr𝑅 ) ) = ( ∥r ‘ ( oppr𝑅 ) )
33 eqid ( .r ‘ ( oppr𝑅 ) ) = ( .r ‘ ( oppr𝑅 ) )
34 28 opprdomn ( 𝑅 ∈ Domn → ( oppr𝑅 ) ∈ Domn )
35 23 34 syl ( ( ( 𝐵 ∈ Fin ∧ 𝑅 ∈ Domn ) ∧ 𝑥 ∈ ( 𝐵 ∖ { ( 0g𝑅 ) } ) ) → ( oppr𝑅 ) ∈ Domn )
36 eqid ( 𝑦𝐵 ↦ ( 𝑦 ( .r ‘ ( oppr𝑅 ) ) 𝑥 ) ) = ( 𝑦𝐵 ↦ ( 𝑦 ( .r ‘ ( oppr𝑅 ) ) 𝑥 ) )
37 29 30 31 32 33 35 24 25 36 fidomndrnglem ( ( ( 𝐵 ∈ Fin ∧ 𝑅 ∈ Domn ) ∧ 𝑥 ∈ ( 𝐵 ∖ { ( 0g𝑅 ) } ) ) → 𝑥 ( ∥r ‘ ( oppr𝑅 ) ) ( 1r𝑅 ) )
38 11 6 21 28 32 isunit ( 𝑥 ∈ ( Unit ‘ 𝑅 ) ↔ ( 𝑥 ( ∥r𝑅 ) ( 1r𝑅 ) ∧ 𝑥 ( ∥r ‘ ( oppr𝑅 ) ) ( 1r𝑅 ) ) )
39 27 37 38 sylanbrc ( ( ( 𝐵 ∈ Fin ∧ 𝑅 ∈ Domn ) ∧ 𝑥 ∈ ( 𝐵 ∖ { ( 0g𝑅 ) } ) ) → 𝑥 ∈ ( Unit ‘ 𝑅 ) )
40 20 39 eqelssd ( ( 𝐵 ∈ Fin ∧ 𝑅 ∈ Domn ) → ( Unit ‘ 𝑅 ) = ( 𝐵 ∖ { ( 0g𝑅 ) } ) )
41 1 11 7 isdrng ( 𝑅 ∈ DivRing ↔ ( 𝑅 ∈ Ring ∧ ( Unit ‘ 𝑅 ) = ( 𝐵 ∖ { ( 0g𝑅 ) } ) ) )
42 3 40 41 sylanbrc ( ( 𝐵 ∈ Fin ∧ 𝑅 ∈ Domn ) → 𝑅 ∈ DivRing )
43 42 ex ( 𝐵 ∈ Fin → ( 𝑅 ∈ Domn → 𝑅 ∈ DivRing ) )
44 drngdomn ( 𝑅 ∈ DivRing → 𝑅 ∈ Domn )
45 43 44 impbid1 ( 𝐵 ∈ Fin → ( 𝑅 ∈ Domn ↔ 𝑅 ∈ DivRing ) )