Users' Mathboxes Mathbox for Jeff Madsen < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  isfldidl Structured version   Visualization version   GIF version

Theorem isfldidl 39194
Description: Obsolete theorem, use isfieldidl 21570 instead. Determine if a ring is a field based on its ideals. (Contributed by Jeff Madsen, 10-Jun-2010.) (New usage is discouraged.) (Proof modification is discouraged.)
Hypotheses
Ref Expression
isfldidl.1 𝐺 = (1st ‘𝐾)
isfldidl.2 𝐻 = (2nd ‘𝐾)
isfldidl.3 𝑋 = ran 𝐺
isfldidl.4 𝑍 = (GId‘𝐺)
isfldidl.5 𝑈 = (GId‘𝐻)
Assertion
Ref Expression
isfldidl (𝐾 ∈ Fld ↔ (𝐾 ∈ CRingOps ∧ 𝑈 ≠ 𝑍 ∧ (Idl‘𝐾) = {{𝑍}, 𝑋}))

Proof of Theorem isfldidl
Dummy variables 𝑥 𝑦 𝑧 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 fldcrngo 39130 . . 3 (𝐾 ∈ Fld → 𝐾 ∈ CRingOps)
2 flddivrng 39125 . . . 4 (𝐾 ∈ Fld → 𝐾 ∈ DivRingOps)
3 isfldidl.1 . . . . 5 𝐺 = (1st ‘𝐾)
4 isfldidl.2 . . . . 5 𝐻 = (2nd ‘𝐾)
5 isfldidl.3 . . . . 5 𝑋 = ran 𝐺
6 isfldidl.4 . . . . 5 𝑍 = (GId‘𝐺)
7 isfldidl.5 . . . . 5 𝑈 = (GId‘𝐻)
83, 4, 5, 6, 7dvrunz 39080 . . . 4 (𝐾 ∈ DivRingOps → 𝑈 ≠ 𝑍)
92, 8syl 18 . . 3 (𝐾 ∈ Fld → 𝑈 ≠ 𝑍)
103, 4, 5, 6divrngidl 39154 . . . 4 (𝐾 ∈ DivRingOps → (Idl‘𝐾) = {{𝑍}, 𝑋})
112, 10syl 18 . . 3 (𝐾 ∈ Fld → (Idl‘𝐾) = {{𝑍}, 𝑋})
121, 9, 113jca 1146 . 2 (𝐾 ∈ Fld → (𝐾 ∈ CRingOps ∧ 𝑈 ≠ 𝑍 ∧ (Idl‘𝐾) = {{𝑍}, 𝑋}))
13 crngorngo 39126 . . . . . 6 (𝐾 ∈ CRingOps → 𝐾 ∈ RingOps)
14133ad2ant1 1151 . . . . 5 ((𝐾 ∈ CRingOps ∧ 𝑈 ≠ 𝑍 ∧ (Idl‘𝐾) = {{𝑍}, 𝑋}) → 𝐾 ∈ RingOps)
15 simp2 1155 . . . . 5 ((𝐾 ∈ CRingOps ∧ 𝑈 ≠ 𝑍 ∧ (Idl‘𝐾) = {{𝑍}, 𝑋}) → 𝑈 ≠ 𝑍)
163rneqi 5926 . . . . . . . . . . . . . . 15 ran 𝐺 = ran (1st ‘𝐾)
175, 16eqtri 2786 . . . . . . . . . . . . . 14 𝑋 = ran (1st ‘𝐾)
1817, 4, 7rngo1cl 39065 . . . . . . . . . . . . 13 (𝐾 ∈ RingOps → 𝑈 ∈ 𝑋)
1913, 18syl 18 . . . . . . . . . . . 12 (𝐾 ∈ CRingOps → 𝑈 ∈ 𝑋)
2019ad2antrr 739 . . . . . . . . . . 11 (((𝐾 ∈ CRingOps ∧ (Idl‘𝐾) = {{𝑍}, 𝑋}) ∧ 𝑥 ∈ (𝑋 ∖ {𝑍})) → 𝑈 ∈ 𝑋)
21 eldif 4052 . . . . . . . . . . . . . . . 16 (𝑥 ∈ (𝑋 ∖ {𝑍}) ↔ (𝑥 ∈ 𝑋 ∧ ¬ 𝑥 ∈ {𝑍}))
22 snssi 4746 . . . . . . . . . . . . . . . . . . 19 (𝑥 ∈ 𝑋 → {𝑥} ⊆ 𝑋)
233, 5igenss 39188 . . . . . . . . . . . . . . . . . . 19 ((𝐾 ∈ RingOps ∧ {𝑥} ⊆ 𝑋) → {𝑥} ⊆ (𝐾 IdlGen {𝑥}))
2422, 23sylan2 605 . . . . . . . . . . . . . . . . . 18 ((𝐾 ∈ RingOps ∧ 𝑥 ∈ 𝑋) → {𝑥} ⊆ (𝐾 IdlGen {𝑥}))
25 vex 3458 . . . . . . . . . . . . . . . . . . . . . 22 𝑥 ∈ V
2625snss 4745 . . . . . . . . . . . . . . . . . . . . 21 (𝑥 ∈ (𝐾 IdlGen {𝑥}) ↔ {𝑥} ⊆ (𝐾 IdlGen {𝑥}))
2726biimpri 231 . . . . . . . . . . . . . . . . . . . 20 ({𝑥} ⊆ (𝐾 IdlGen {𝑥}) → 𝑥 ∈ (𝐾 IdlGen {𝑥}))
28 eleq2 2853 . . . . . . . . . . . . . . . . . . . 20 ((𝐾 IdlGen {𝑥}) = {𝑍} → (𝑥 ∈ (𝐾 IdlGen {𝑥}) ↔ 𝑥 ∈ {𝑍}))
2927, 28syl5ibcom 248 . . . . . . . . . . . . . . . . . . 19 ({𝑥} ⊆ (𝐾 IdlGen {𝑥}) → ((𝐾 IdlGen {𝑥}) = {𝑍} → 𝑥 ∈ {𝑍}))
3029con3dimp 414 . . . . . . . . . . . . . . . . . 18 (({𝑥} ⊆ (𝐾 IdlGen {𝑥}) ∧ ¬ 𝑥 ∈ {𝑍}) → ¬ (𝐾 IdlGen {𝑥}) = {𝑍})
3124, 30sylan 592 . . . . . . . . . . . . . . . . 17 (((𝐾 ∈ RingOps ∧ 𝑥 ∈ 𝑋) ∧ ¬ 𝑥 ∈ {𝑍}) → ¬ (𝐾 IdlGen {𝑥}) = {𝑍})
3231anasss 472 . . . . . . . . . . . . . . . 16 ((𝐾 ∈ RingOps ∧ (𝑥 ∈ 𝑋 ∧ ¬ 𝑥 ∈ {𝑍})) → ¬ (𝐾 IdlGen {𝑥}) = {𝑍})
3321, 32sylan2b 606 . . . . . . . . . . . . . . 15 ((𝐾 ∈ RingOps ∧ 𝑥 ∈ (𝑋 ∖ {𝑍})) → ¬ (𝐾 IdlGen {𝑥}) = {𝑍})
3433adantlr 728 . . . . . . . . . . . . . 14 (((𝐾 ∈ RingOps ∧ (Idl‘𝐾) = {{𝑍}, 𝑋}) ∧ 𝑥 ∈ (𝑋 ∖ {𝑍})) → ¬ (𝐾 IdlGen {𝑥}) = {𝑍})
35 eldifi 4070 . . . . . . . . . . . . . . . . . . . . 21 (𝑥 ∈ (𝑋 ∖ {𝑍}) → 𝑥 ∈ 𝑋)
3635snssd 4747 . . . . . . . . . . . . . . . . . . . 20 (𝑥 ∈ (𝑋 ∖ {𝑍}) → {𝑥} ⊆ 𝑋)
373, 5igenidl 39189 . . . . . . . . . . . . . . . . . . . 20 ((𝐾 ∈ RingOps ∧ {𝑥} ⊆ 𝑋) → (𝐾 IdlGen {𝑥}) ∈ (Idl‘𝐾))
3836, 37sylan2 605 . . . . . . . . . . . . . . . . . . 19 ((𝐾 ∈ RingOps ∧ 𝑥 ∈ (𝑋 ∖ {𝑍})) → (𝐾 IdlGen {𝑥}) ∈ (Idl‘𝐾))
39 eleq2 2853 . . . . . . . . . . . . . . . . . . 19 ((Idl‘𝐾) = {{𝑍}, 𝑋} → ((𝐾 IdlGen {𝑥}) ∈ (Idl‘𝐾) ↔ (𝐾 IdlGen {𝑥}) ∈ {{𝑍}, 𝑋}))
4038, 39syl5ibcom 248 . . . . . . . . . . . . . . . . . 18 ((𝐾 ∈ RingOps ∧ 𝑥 ∈ (𝑋 ∖ {𝑍})) → ((Idl‘𝐾) = {{𝑍}, 𝑋} → (𝐾 IdlGen {𝑥}) ∈ {{𝑍}, 𝑋}))
4140imp 412 . . . . . . . . . . . . . . . . 17 (((𝐾 ∈ RingOps ∧ 𝑥 ∈ (𝑋 ∖ {𝑍})) ∧ (Idl‘𝐾) = {{𝑍}, 𝑋}) → (𝐾 IdlGen {𝑥}) ∈ {{𝑍}, 𝑋})
4241an32s 665 . . . . . . . . . . . . . . . 16 (((𝐾 ∈ RingOps ∧ (Idl‘𝐾) = {{𝑍}, 𝑋}) ∧ 𝑥 ∈ (𝑋 ∖ {𝑍})) → (𝐾 IdlGen {𝑥}) ∈ {{𝑍}, 𝑋})
43 ovex 7476 . . . . . . . . . . . . . . . . 17 (𝐾 IdlGen {𝑥}) ∈ V
4443elpr 4609 . . . . . . . . . . . . . . . 16 ((𝐾 IdlGen {𝑥}) ∈ {{𝑍}, 𝑋} ↔ ((𝐾 IdlGen {𝑥}) = {𝑍} ∨ (𝐾 IdlGen {𝑥}) = 𝑋))
4542, 44sylib 221 . . . . . . . . . . . . . . 15 (((𝐾 ∈ RingOps ∧ (Idl‘𝐾) = {{𝑍}, 𝑋}) ∧ 𝑥 ∈ (𝑋 ∖ {𝑍})) → ((𝐾 IdlGen {𝑥}) = {𝑍} ∨ (𝐾 IdlGen {𝑥}) = 𝑋))
4645ord 878 . . . . . . . . . . . . . 14 (((𝐾 ∈ RingOps ∧ (Idl‘𝐾) = {{𝑍}, 𝑋}) ∧ 𝑥 ∈ (𝑋 ∖ {𝑍})) → (¬ (𝐾 IdlGen {𝑥}) = {𝑍} → (𝐾 IdlGen {𝑥}) = 𝑋))
4734, 46mpd 16 . . . . . . . . . . . . 13 (((𝐾 ∈ RingOps ∧ (Idl‘𝐾) = {{𝑍}, 𝑋}) ∧ 𝑥 ∈ (𝑋 ∖ {𝑍})) → (𝐾 IdlGen {𝑥}) = 𝑋)
4813, 47sylanl1 693 . . . . . . . . . . . 12 (((𝐾 ∈ CRingOps ∧ (Idl‘𝐾) = {{𝑍}, 𝑋}) ∧ 𝑥 ∈ (𝑋 ∖ {𝑍})) → (𝐾 IdlGen {𝑥}) = 𝑋)
493, 4, 5prnc 39193 . . . . . . . . . . . . . 14 ((𝐾 ∈ CRingOps ∧ 𝑥 ∈ 𝑋) → (𝐾 IdlGen {𝑥}) = {𝑧 ∈ 𝑋 ∣ ∃𝑦 ∈ 𝑋 𝑧 = (𝑦𝐻𝑥)})
5035, 49sylan2 605 . . . . . . . . . . . . 13 ((𝐾 ∈ CRingOps ∧ 𝑥 ∈ (𝑋 ∖ {𝑍})) → (𝐾 IdlGen {𝑥}) = {𝑧 ∈ 𝑋 ∣ ∃𝑦 ∈ 𝑋 𝑧 = (𝑦𝐻𝑥)})
5150adantlr 728 . . . . . . . . . . . 12 (((𝐾 ∈ CRingOps ∧ (Idl‘𝐾) = {{𝑍}, 𝑋}) ∧ 𝑥 ∈ (𝑋 ∖ {𝑍})) → (𝐾 IdlGen {𝑥}) = {𝑧 ∈ 𝑋 ∣ ∃𝑦 ∈ 𝑋 𝑧 = (𝑦𝐻𝑥)})
5248, 51eqtr3d 2800 . . . . . . . . . . 11 (((𝐾 ∈ CRingOps ∧ (Idl‘𝐾) = {{𝑍}, 𝑋}) ∧ 𝑥 ∈ (𝑋 ∖ {𝑍})) → 𝑋 = {𝑧 ∈ 𝑋 ∣ ∃𝑦 ∈ 𝑋 𝑧 = (𝑦𝐻𝑥)})
5320, 52eleqtrd 2866 . . . . . . . . . 10 (((𝐾 ∈ CRingOps ∧ (Idl‘𝐾) = {{𝑍}, 𝑋}) ∧ 𝑥 ∈ (𝑋 ∖ {𝑍})) → 𝑈 ∈ {𝑧 ∈ 𝑋 ∣ ∃𝑦 ∈ 𝑋 𝑧 = (𝑦𝐻𝑥)})
54 eqeq1 2767 . . . . . . . . . . . 12 (𝑧 = 𝑈 → (𝑧 = (𝑦𝐻𝑥) ↔ 𝑈 = (𝑦𝐻𝑥)))
5554rexbidv 3190 . . . . . . . . . . 11 (𝑧 = 𝑈 → (∃𝑦 ∈ 𝑋 𝑧 = (𝑦𝐻𝑥) ↔ ∃𝑦 ∈ 𝑋 𝑈 = (𝑦𝐻𝑥)))
5655elrab 3648 . . . . . . . . . 10 (𝑈 ∈ {𝑧 ∈ 𝑋 ∣ ∃𝑦 ∈ 𝑋 𝑧 = (𝑦𝐻𝑥)} ↔ (𝑈 ∈ 𝑋 ∧ ∃𝑦 ∈ 𝑋 𝑈 = (𝑦𝐻𝑥)))
5753, 56sylib 221 . . . . . . . . 9 (((𝐾 ∈ CRingOps ∧ (Idl‘𝐾) = {{𝑍}, 𝑋}) ∧ 𝑥 ∈ (𝑋 ∖ {𝑍})) → (𝑈 ∈ 𝑋 ∧ ∃𝑦 ∈ 𝑋 𝑈 = (𝑦𝐻𝑥)))
5857simprd 501 . . . . . . . 8 (((𝐾 ∈ CRingOps ∧ (Idl‘𝐾) = {{𝑍}, 𝑋}) ∧ 𝑥 ∈ (𝑋 ∖ {𝑍})) → ∃𝑦 ∈ 𝑋 𝑈 = (𝑦𝐻𝑥))
59 eqcom 2770 . . . . . . . . 9 ((𝑦𝐻𝑥) = 𝑈 ↔ 𝑈 = (𝑦𝐻𝑥))
6059rexbii 3113 . . . . . . . 8 (∃𝑦 ∈ 𝑋 (𝑦𝐻𝑥) = 𝑈 ↔ ∃𝑦 ∈ 𝑋 𝑈 = (𝑦𝐻𝑥))
6158, 60sylibr 237 . . . . . . 7 (((𝐾 ∈ CRingOps ∧ (Idl‘𝐾) = {{𝑍}, 𝑋}) ∧ 𝑥 ∈ (𝑋 ∖ {𝑍})) → ∃𝑦 ∈ 𝑋 (𝑦𝐻𝑥) = 𝑈)
6261ralrimiva 3158 . . . . . 6 ((𝐾 ∈ CRingOps ∧ (Idl‘𝐾) = {{𝑍}, 𝑋}) → ∀𝑥 ∈ (𝑋 ∖ {𝑍})∃𝑦 ∈ 𝑋 (𝑦𝐻𝑥) = 𝑈)
63623adant2 1149 . . . . 5 ((𝐾 ∈ CRingOps ∧ 𝑈 ≠ 𝑍 ∧ (Idl‘𝐾) = {{𝑍}, 𝑋}) → ∀𝑥 ∈ (𝑋 ∖ {𝑍})∃𝑦 ∈ 𝑋 (𝑦𝐻𝑥) = 𝑈)
6414, 15, 63jca32 525 . . . 4 ((𝐾 ∈ CRingOps ∧ 𝑈 ≠ 𝑍 ∧ (Idl‘𝐾) = {{𝑍}, 𝑋}) → (𝐾 ∈ RingOps ∧ (𝑈 ≠ 𝑍 ∧ ∀𝑥 ∈ (𝑋 ∖ {𝑍})∃𝑦 ∈ 𝑋 (𝑦𝐻𝑥) = 𝑈)))
653, 4, 6, 5, 7isdrngo3 39085 . . . 4 (𝐾 ∈ DivRingOps ↔ (𝐾 ∈ RingOps ∧ (𝑈 ≠ 𝑍 ∧ ∀𝑥 ∈ (𝑋 ∖ {𝑍})∃𝑦 ∈ 𝑋 (𝑦𝐻𝑥) = 𝑈)))
6664, 65sylibr 237 . . 3 ((𝐾 ∈ CRingOps ∧ 𝑈 ≠ 𝑍 ∧ (Idl‘𝐾) = {{𝑍}, 𝑋}) → 𝐾 ∈ DivRingOps)
67 simp1 1154 . . 3 ((𝐾 ∈ CRingOps ∧ 𝑈 ≠ 𝑍 ∧ (Idl‘𝐾) = {{𝑍}, 𝑋}) → 𝐾 ∈ CRingOps)
68 isfld2 39131 . . 3 (𝐾 ∈ Fld ↔ (𝐾 ∈ DivRingOps ∧ 𝐾 ∈ CRingOps))
6966, 67, 68sylanbrc 595 . 2 ((𝐾 ∈ CRingOps ∧ 𝑈 ≠ 𝑍 ∧ (Idl‘𝐾) = {{𝑍}, 𝑋}) → 𝐾 ∈ Fld)
7012, 69impbii 212 1 (𝐾 ∈ Fld ↔ (𝐾 ∈ CRingOps ∧ 𝑈 ≠ 𝑍 ∧ (Idl‘𝐾) = {{𝑍}, 𝑋}))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  ¬ wn 3   ↔ wb 209   ∧ wa 401   ∨ wo 861   ∧ w3a 1103   = wceq 1570   ∈ wcel 2147   ≠ wne 2959  ∀wral 3080  ∃wrex 3090  {crab 3416   ⊆ wss 3900   ∖ cdif 4048  {csn 4588  {cpr 4590  ran crn 5656  ‘cfv 6558  (class class class)co 7443  1st c1st 8023  2nd c2nd 8024  GIdcgi 31122  RingOpscrngo 39020  DivRingOpscdrng 39074  Fldcfld 39117  CRingOpsccring 39119  Idlcidl 39133   IdlGen cigen 39185
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1945  ax-6 2002  ax-7 2043  ax-8 2149  ax-9 2157  ax-10 2180  ax-11 2197  ax-12 2216  ax-ext 2735  ax-rep 5235  ax-sep 5252  ax-nul 5263  ax-pow 5331  ax-pr 5395  ax-un 7775
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2102  df-mo 2567  df-eu 2597  df-clab 2742  df-cleq 2755  df-clel 2839  df-nfc 2913  df-ne 2960  df-ral 3081  df-rex 3091  df-rmo 3369  df-reu 3370  df-rab 3417  df-v 3456  df-sbc 3743  df-csb 3852  df-ss 3901  df-dif 4050  df-in 4094  df-un 4154  df-nul 4282  df-if 4486  df-pw 4562  df-sn 4589  df-pr 4591  df-op 4839  df-uni 4871  df-int 4911  df-iun 4956  df-br 5107  df-opab 5171  df-mpt 5190  df-id 5550  df-xp 5661  df-rel 5662  df-cnv 5663  df-co 5664  df-dm 5665  df-rn 5666  df-res 5667  df-ima 5668  df-suc 6386  df-iota 6512  df-fun 6560  df-fn 6561  df-f 6562  df-f1 6563  df-fo 6564  df-f1o 6565  df-fv 6566  df-riota 7400  df-ov 7446  df-oprab 7447  df-mpo 7448  df-1st 8025  df-2nd 8026  df-1o 8504  df-en 9002  df-grpo 31125  df-gid 31126  df-ginv 31127  df-ablo 31177  df-ass 38969  df-exid 38971  df-mgmOLD 38975  df-sgrOLD 38987  df-mndo 38993  df-rngo 39021  df-drngo 39075  df-com2 39116  df-fld 39118  df-crngo 39120  df-idl 39136  df-igen 39186
This theorem is used by:  isfldidl2  39195
  Copyright terms: Public domain W3C validator