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 39078
Description: Obsolete theorem, use isfieldidl 21541 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 39014 . . 3 (𝐾 ∈ Fld → 𝐾 ∈ CRingOps)
2 flddivrng 39009 . . . 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 38964 . . . 4 (𝐾 ∈ DivRingOps → 𝑈 ≠ 𝑍)
92, 8syl 18 . . 3 (𝐾 ∈ Fld → 𝑈 ≠ 𝑍)
103, 4, 5, 6divrngidl 39038 . . . 4 (𝐾 ∈ DivRingOps → (Idl‘𝐾) = {{𝑍}, 𝑋})
112, 10syl 18 . . 3 (𝐾 ∈ Fld → (Idl‘𝐾) = {{𝑍}, 𝑋})
121, 9, 113jca 1146 . 2 (𝐾 ∈ Fld → (𝐾 ∈ CRingOps ∧ 𝑈 ≠ 𝑍 ∧ (Idl‘𝐾) = {{𝑍}, 𝑋}))
13 crngorngo 39010 . . . . . 6 (𝐾 ∈ CRingOps → 𝐾 ∈ RingOps)
14133ad2ant1 1151 . . . . 5 ((𝐾 ∈ CRingOps ∧ 𝑈 ≠ 𝑍 ∧ (Idl‘𝐾) = {{𝑍}, 𝑋}) → 𝐾 ∈ RingOps)
15 simp2 1155 . . . . 5 ((𝐾 ∈ CRingOps ∧ 𝑈 ≠ 𝑍 ∧ (Idl‘𝐾) = {{𝑍}, 𝑋}) → 𝑈 ≠ 𝑍)
163rneqi 5918 . . . . . . . . . . . . . . 15 ran 𝐺 = ran (1st ‘𝐾)
175, 16eqtri 2783 . . . . . . . . . . . . . 14 𝑋 = ran (1st ‘𝐾)
1817, 4, 7rngo1cl 38949 . . . . . . . . . . . . 13 (𝐾 ∈ RingOps → 𝑈 ∈ 𝑋)
1913, 18syl 18 . . . . . . . . . . . 12 (𝐾 ∈ CRingOps → 𝑈 ∈ 𝑋)
2019ad2antrr 739 . . . . . . . . . . 11 (((𝐾 ∈ CRingOps ∧ (Idl‘𝐾) = {{𝑍}, 𝑋}) ∧ 𝑥 ∈ (𝑋 ∖ {𝑍})) → 𝑈 ∈ 𝑋)
21 eldif 4049 . . . . . . . . . . . . . . . 16 (𝑥 ∈ (𝑋 ∖ {𝑍}) ↔ (𝑥 ∈ 𝑋 ∧ ¬ 𝑥 ∈ {𝑍}))
22 snssi 4745 . . . . . . . . . . . . . . . . . . 19 (𝑥 ∈ 𝑋 → {𝑥} ⊆ 𝑋)
233, 5igenss 39072 . . . . . . . . . . . . . . . . . . 19 ((𝐾 ∈ RingOps ∧ {𝑥} ⊆ 𝑋) → {𝑥} ⊆ (𝐾 IdlGen {𝑥}))
2422, 23sylan2 605 . . . . . . . . . . . . . . . . . 18 ((𝐾 ∈ RingOps ∧ 𝑥 ∈ 𝑋) → {𝑥} ⊆ (𝐾 IdlGen {𝑥}))
25 vex 3454 . . . . . . . . . . . . . . . . . . . . . 22 𝑥 ∈ V
2625snss 4744 . . . . . . . . . . . . . . . . . . . . 21 (𝑥 ∈ (𝐾 IdlGen {𝑥}) ↔ {𝑥} ⊆ (𝐾 IdlGen {𝑥}))
2726biimpri 231 . . . . . . . . . . . . . . . . . . . 20 ({𝑥} ⊆ (𝐾 IdlGen {𝑥}) → 𝑥 ∈ (𝐾 IdlGen {𝑥}))
28 eleq2 2849 . . . . . . . . . . . . . . . . . . . 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 4067 . . . . . . . . . . . . . . . . . . . . 21 (𝑥 ∈ (𝑋 ∖ {𝑍}) → 𝑥 ∈ 𝑋)
3635snssd 4746 . . . . . . . . . . . . . . . . . . . 20 (𝑥 ∈ (𝑋 ∖ {𝑍}) → {𝑥} ⊆ 𝑋)
373, 5igenidl 39073 . . . . . . . . . . . . . . . . . . . 20 ((𝐾 ∈ RingOps ∧ {𝑥} ⊆ 𝑋) → (𝐾 IdlGen {𝑥}) ∈ (Idl‘𝐾))
3836, 37sylan2 605 . . . . . . . . . . . . . . . . . . 19 ((𝐾 ∈ RingOps ∧ 𝑥 ∈ (𝑋 ∖ {𝑍})) → (𝐾 IdlGen {𝑥}) ∈ (Idl‘𝐾))
39 eleq2 2849 . . . . . . . . . . . . . . . . . . 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 7453 . . . . . . . . . . . . . . . . 17 (𝐾 IdlGen {𝑥}) ∈ V
4443elpr 4608 . . . . . . . . . . . . . . . 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 39077 . . . . . . . . . . . . . 14 ((𝐾 ∈ CRingOps ∧ 𝑥 ∈ 𝑋) → (𝐾 IdlGen {𝑥}) = {𝑧 ∈ 𝑋 ∣ ∃𝑦 ∈ 𝑋 𝑧 = (𝑦𝐻𝑥)})
5035, 49sylan2 605 . . . . . . . . . . . . 13 ((𝐾 ∈ CRingOps ∧ 𝑥 ∈ (𝑋 ∖ {𝑍})) → (𝐾 IdlGen {𝑥}) = {𝑧 ∈ 𝑋 ∣ ∃𝑦 ∈ 𝑋 𝑧 = (𝑦𝐻𝑥)})
5150adantlr 728 . . . . . . . . . . . 12 (((𝐾 ∈ CRingOps ∧ (Idl‘𝐾) = {{𝑍}, 𝑋}) ∧ 𝑥 ∈ (𝑋 ∖ {𝑍})) → (𝐾 IdlGen {𝑥}) = {𝑧 ∈ 𝑋 ∣ ∃𝑦 ∈ 𝑋 𝑧 = (𝑦𝐻𝑥)})
5248, 51eqtr3d 2797 . . . . . . . . . . 11 (((𝐾 ∈ CRingOps ∧ (Idl‘𝐾) = {{𝑍}, 𝑋}) ∧ 𝑥 ∈ (𝑋 ∖ {𝑍})) → 𝑋 = {𝑧 ∈ 𝑋 ∣ ∃𝑦 ∈ 𝑋 𝑧 = (𝑦𝐻𝑥)})
5320, 52eleqtrd 2862 . . . . . . . . . 10 (((𝐾 ∈ CRingOps ∧ (Idl‘𝐾) = {{𝑍}, 𝑋}) ∧ 𝑥 ∈ (𝑋 ∖ {𝑍})) → 𝑈 ∈ {𝑧 ∈ 𝑋 ∣ ∃𝑦 ∈ 𝑋 𝑧 = (𝑦𝐻𝑥)})
54 eqeq1 2764 . . . . . . . . . . . 12 (𝑧 = 𝑈 → (𝑧 = (𝑦𝐻𝑥) ↔ 𝑈 = (𝑦𝐻𝑥)))
5554rexbidv 3186 . . . . . . . . . . 11 (𝑧 = 𝑈 → (∃𝑦 ∈ 𝑋 𝑧 = (𝑦𝐻𝑥) ↔ ∃𝑦 ∈ 𝑋 𝑈 = (𝑦𝐻𝑥)))
5655elrab 3644 . . . . . . . . . 10 (𝑈 ∈ {𝑧 ∈ 𝑋 ∣ ∃𝑦 ∈ 𝑋 𝑧 = (𝑦𝐻𝑥)} ↔ (𝑈 ∈ 𝑋 ∧ ∃𝑦 ∈ 𝑋 𝑈 = (𝑦𝐻𝑥)))
5753, 56sylib 221 . . . . . . . . 9 (((𝐾 ∈ CRingOps ∧ (Idl‘𝐾) = {{𝑍}, 𝑋}) ∧ 𝑥 ∈ (𝑋 ∖ {𝑍})) → (𝑈 ∈ 𝑋 ∧ ∃𝑦 ∈ 𝑋 𝑈 = (𝑦𝐻𝑥)))
5857simprd 501 . . . . . . . 8 (((𝐾 ∈ CRingOps ∧ (Idl‘𝐾) = {{𝑍}, 𝑋}) ∧ 𝑥 ∈ (𝑋 ∖ {𝑍})) → ∃𝑦 ∈ 𝑋 𝑈 = (𝑦𝐻𝑥))
59 eqcom 2767 . . . . . . . . 9 ((𝑦𝐻𝑥) = 𝑈 ↔ 𝑈 = (𝑦𝐻𝑥))
6059rexbii 3109 . . . . . . . 8 (∃𝑦 ∈ 𝑋 (𝑦𝐻𝑥) = 𝑈 ↔ ∃𝑦 ∈ 𝑋 𝑈 = (𝑦𝐻𝑥))
6158, 60sylibr 237 . . . . . . 7 (((𝐾 ∈ CRingOps ∧ (Idl‘𝐾) = {{𝑍}, 𝑋}) ∧ 𝑥 ∈ (𝑋 ∖ {𝑍})) → ∃𝑦 ∈ 𝑋 (𝑦𝐻𝑥) = 𝑈)
6261ralrimiva 3154 . . . . . 6 ((𝐾 ∈ CRingOps ∧ (Idl‘𝐾) = {{𝑍}, 𝑋}) → ∀𝑥 ∈ (𝑋 ∖ {𝑍})∃𝑦 ∈ 𝑋 (𝑦𝐻𝑥) = 𝑈)
63623adant2 1149 . . . . 5 ((𝐾 ∈ CRingOps ∧ 𝑈 ≠ 𝑍 ∧ (Idl‘𝐾) = {{𝑍}, 𝑋}) → ∀𝑥 ∈ (𝑋 ∖ {𝑍})∃𝑦 ∈ 𝑋 (𝑦𝐻𝑥) = 𝑈)
6414, 15, 63jca32 525 . . . 4 ((𝐾 ∈ CRingOps ∧ 𝑈 ≠ 𝑍 ∧ (Idl‘𝐾) = {{𝑍}, 𝑋}) → (𝐾 ∈ RingOps ∧ (𝑈 ≠ 𝑍 ∧ ∀𝑥 ∈ (𝑋 ∖ {𝑍})∃𝑦 ∈ 𝑋 (𝑦𝐻𝑥) = 𝑈)))
653, 4, 6, 5, 7isdrngo3 38969 . . . 4 (𝐾 ∈ DivRingOps ↔ (𝐾 ∈ RingOps ∧ (𝑈 ≠ 𝑍 ∧ ∀𝑥 ∈ (𝑋 ∖ {𝑍})∃𝑦 ∈ 𝑋 (𝑦𝐻𝑥) = 𝑈)))
6664, 65sylibr 237 . . 3 ((𝐾 ∈ CRingOps ∧ 𝑈 ≠ 𝑍 ∧ (Idl‘𝐾) = {{𝑍}, 𝑋}) → 𝐾 ∈ DivRingOps)
67 simp1 1154 . . 3 ((𝐾 ∈ CRingOps ∧ 𝑈 ≠ 𝑍 ∧ (Idl‘𝐾) = {{𝑍}, 𝑋}) → 𝐾 ∈ CRingOps)
68 isfld2 39015 . . 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 1569   ∈ wcel 2144   ≠ wne 2955  ∀wral 3076  ∃wrex 3086  {crab 3412   ⊆ wss 3895   ∖ cdif 4045  {csn 4583  {cpr 4585  ran crn 5651  ‘cfv 6538  (class class class)co 7420  1st c1st 7999  2nd c2nd 8000  GIdcgi 31093  RingOpscrngo 38904  DivRingOpscdrng 38958  Fldcfld 39001  CRingOpsccring 39003  Idlcidl 39017   IdlGen cigen 39069
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1827  ax-4 1841  ax-5 1942  ax-6 1999  ax-7 2040  ax-8 2146  ax-9 2154  ax-10 2177  ax-11 2193  ax-12 2212  ax-ext 2732  ax-rep 5231  ax-sep 5248  ax-nul 5259  ax-pow 5326  ax-pr 5390  ax-un 7751
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3an 1105  df-tru 1572  df-fal 1582  df-ex 1812  df-nf 1816  df-sb 2099  df-mo 2564  df-eu 2594  df-clab 2739  df-cleq 2752  df-clel 2835  df-nfc 2909  df-ne 2956  df-ral 3077  df-rex 3087  df-rmo 3365  df-reu 3366  df-rab 3413  df-v 3452  df-sbc 3739  df-csb 3847  df-ss 3896  df-dif 4047  df-in 4091  df-un 4151  df-nul 4279  df-if 4482  df-pw 4558  df-sn 4584  df-pr 4586  df-op 4590  df-uni 4867  df-int 4907  df-iun 4952  df-br 5103  df-opab 5167  df-mpt 5186  df-id 5545  df-xp 5656  df-rel 5657  df-cnv 5658  df-co 5659  df-dm 5660  df-rn 5661  df-res 5662  df-ima 5663  df-suc 6368  df-iota 6494  df-fun 6540  df-fn 6541  df-f 6542  df-f1 6543  df-fo 6544  df-f1o 6545  df-fv 6546  df-riota 7377  df-ov 7423  df-oprab 7424  df-mpo 7425  df-1st 8001  df-2nd 8002  df-1o 8477  df-en 8975  df-grpo 31096  df-gid 31097  df-ginv 31098  df-ablo 31148  df-ass 38853  df-exid 38855  df-mgmOLD 38859  df-sgrOLD 38871  df-mndo 38877  df-rngo 38905  df-drngo 38959  df-com2 39000  df-fld 39002  df-crngo 39004  df-idl 39020  df-igen 39070
This theorem is used by:  isfldidl2  39079
  Copyright terms: Public domain W3C validator