MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  isf32lem9 Structured version   Visualization version   GIF version

Theorem isf32lem9 10345
Description: Lemma for isfin3-2 10351. Construction of the onto function. (Contributed by Stefan O'Rear, 5-Nov-2014.) (Revised by Mario Carneiro, 2-Oct-2015.)
Hypotheses
Ref Expression
isf32lem.a (𝜑𝐹:ω⟶𝒫 𝐺)
isf32lem.b (𝜑 → ∀𝑥 ∈ ω (𝐹‘suc 𝑥) ⊆ (𝐹𝑥))
isf32lem.c (𝜑 → ¬ ran 𝐹 ∈ ran 𝐹)
isf32lem.d 𝑆 = {𝑦 ∈ ω ∣ (𝐹‘suc 𝑦) ⊊ (𝐹𝑦)}
isf32lem.e 𝐽 = (𝑢 ∈ ω ↦ (𝑣𝑆 (𝑣𝑆) ≈ 𝑢))
isf32lem.f 𝐾 = ((𝑤𝑆 ↦ ((𝐹𝑤) ∖ (𝐹‘suc 𝑤))) ∘ 𝐽)
isf32lem.g 𝐿 = (𝑡𝐺 ↦ (℩𝑠(𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾𝑠))))
Assertion
Ref Expression
isf32lem9 (𝜑𝐿:𝐺onto→ω)
Distinct variable groups:   𝑥,𝑤   𝑡,𝐺   𝑥,𝐿   𝑡,𝑠,𝑢,𝑣,𝑤,𝑥,𝑦,𝜑   𝑤,𝐹,𝑥,𝑦   𝑆,𝑠,𝑡,𝑢,𝑣,𝑤,𝑥,𝑦   𝐽,𝑠,𝑡,𝑤,𝑥,𝑦   𝐾,𝑠,𝑡,𝑥,𝑦
Allowed substitution hints:   𝐹(𝑣,𝑢,𝑡,𝑠)   𝐺(𝑥,𝑦,𝑤,𝑣,𝑢,𝑠)   𝐽(𝑣,𝑢)   𝐾(𝑤,𝑣,𝑢)   𝐿(𝑦,𝑤,𝑣,𝑢,𝑡,𝑠)

Proof of Theorem isf32lem9
Dummy variables 𝑎 𝑏 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 isf32lem.g . . . 4 𝐿 = (𝑡𝐺 ↦ (℩𝑠(𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾𝑠))))
2 ssab2 4039 . . . . . . 7 {𝑠 ∣ (𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾𝑠))} ⊆ ω
3 iotacl 6523 . . . . . . 7 (∃!𝑠(𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾𝑠)) → (℩𝑠(𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾𝑠))) ∈ {𝑠 ∣ (𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾𝑠))})
42, 3sselid 3941 . . . . . 6 (∃!𝑠(𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾𝑠)) → (℩𝑠(𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾𝑠))) ∈ ω)
5 iotanul 6517 . . . . . . 7 (¬ ∃!𝑠(𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾𝑠)) → (℩𝑠(𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾𝑠))) = ∅)
6 peano1 7885 . . . . . . 7 ∅ ∈ ω
75, 6eqeltrdi 2877 . . . . . 6 (¬ ∃!𝑠(𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾𝑠)) → (℩𝑠(𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾𝑠))) ∈ ω)
84, 7pm2.61i 184 . . . . 5 (℩𝑠(𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾𝑠))) ∈ ω
98a1i 11 . . . 4 (𝑡𝐺 → (℩𝑠(𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾𝑠))) ∈ ω)
101, 9fmpti 7108 . . 3 𝐿:𝐺⟶ω
1110a1i 11 . 2 (𝜑𝐿:𝐺⟶ω)
12 isf32lem.a . . . . . 6 (𝜑𝐹:ω⟶𝒫 𝐺)
13 isf32lem.b . . . . . 6 (𝜑 → ∀𝑥 ∈ ω (𝐹‘suc 𝑥) ⊆ (𝐹𝑥))
14 isf32lem.c . . . . . 6 (𝜑 → ¬ ran 𝐹 ∈ ran 𝐹)
15 isf32lem.d . . . . . 6 𝑆 = {𝑦 ∈ ω ∣ (𝐹‘suc 𝑦) ⊊ (𝐹𝑦)}
16 isf32lem.e . . . . . 6 𝐽 = (𝑢 ∈ ω ↦ (𝑣𝑆 (𝑣𝑆) ≈ 𝑢))
17 isf32lem.f . . . . . 6 𝐾 = ((𝑤𝑆 ↦ ((𝐹𝑤) ∖ (𝐹‘suc 𝑤))) ∘ 𝐽)
1812, 13, 14, 15, 16, 17isf32lem6 10342 . . . . 5 ((𝜑𝑎 ∈ ω) → (𝐾𝑎) ≠ ∅)
19 n0 4313 . . . . 5 ((𝐾𝑎) ≠ ∅ ↔ ∃𝑏 𝑏 ∈ (𝐾𝑎))
2018, 19sylib 221 . . . 4 ((𝜑𝑎 ∈ ω) → ∃𝑏 𝑏 ∈ (𝐾𝑎))
2112, 13, 14, 15, 16, 17isf32lem8 10344 . . . . . . . . 9 ((𝜑𝑎 ∈ ω) → (𝐾𝑎) ⊆ 𝐺)
2221sselda 3943 . . . . . . . 8 (((𝜑𝑎 ∈ ω) ∧ 𝑏 ∈ (𝐾𝑎)) → 𝑏𝐺)
23 eleq1w 2852 . . . . . . . . . . . . 13 (𝑡 = 𝑏 → (𝑡 ∈ (𝐾𝑠) ↔ 𝑏 ∈ (𝐾𝑠)))
2423anbi2d 641 . . . . . . . . . . . 12 (𝑡 = 𝑏 → ((𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾𝑠)) ↔ (𝑠 ∈ ω ∧ 𝑏 ∈ (𝐾𝑠))))
2524iotabidv 6521 . . . . . . . . . . 11 (𝑡 = 𝑏 → (℩𝑠(𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾𝑠))) = (℩𝑠(𝑠 ∈ ω ∧ 𝑏 ∈ (𝐾𝑠))))
26 iotaex 6513 . . . . . . . . . . 11 (℩𝑠(𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾𝑠))) ∈ V
2725, 1, 26fvmpt3i 6996 . . . . . . . . . 10 (𝑏𝐺 → (𝐿𝑏) = (℩𝑠(𝑠 ∈ ω ∧ 𝑏 ∈ (𝐾𝑠))))
2822, 27syl 18 . . . . . . . . 9 (((𝜑𝑎 ∈ ω) ∧ 𝑏 ∈ (𝐾𝑎)) → (𝐿𝑏) = (℩𝑠(𝑠 ∈ ω ∧ 𝑏 ∈ (𝐾𝑠))))
29 simp1r 1215 . . . . . . . . . . . . . . . 16 (((𝜑𝑏 ∈ (𝐾𝑎)) ∧ 𝑎 ∈ ω ∧ 𝑠 ∈ ω) → 𝑏 ∈ (𝐾𝑎))
30 simpl1 1208 . . . . . . . . . . . . . . . . . . . . . 22 (((𝜑𝑎 ∈ ω ∧ 𝑠 ∈ ω) ∧ 𝑠𝑎) → 𝜑)
31 simpr 489 . . . . . . . . . . . . . . . . . . . . . . 23 (((𝜑𝑎 ∈ ω ∧ 𝑠 ∈ ω) ∧ 𝑠𝑎) → 𝑠𝑎)
3231necomd 3019 . . . . . . . . . . . . . . . . . . . . . 22 (((𝜑𝑎 ∈ ω ∧ 𝑠 ∈ ω) ∧ 𝑠𝑎) → 𝑎𝑠)
33 simpl2 1209 . . . . . . . . . . . . . . . . . . . . . 22 (((𝜑𝑎 ∈ ω ∧ 𝑠 ∈ ω) ∧ 𝑠𝑎) → 𝑎 ∈ ω)
34 simpl3 1210 . . . . . . . . . . . . . . . . . . . . . 22 (((𝜑𝑎 ∈ ω ∧ 𝑠 ∈ ω) ∧ 𝑠𝑎) → 𝑠 ∈ ω)
3512, 13, 14, 15, 16, 17isf32lem7 10343 . . . . . . . . . . . . . . . . . . . . . 22 (((𝜑𝑎𝑠) ∧ (𝑎 ∈ ω ∧ 𝑠 ∈ ω)) → ((𝐾𝑎) ∩ (𝐾𝑠)) = ∅)
3630, 32, 33, 34, 35syl22anc 851 . . . . . . . . . . . . . . . . . . . . 21 (((𝜑𝑎 ∈ ω ∧ 𝑠 ∈ ω) ∧ 𝑠𝑎) → ((𝐾𝑎) ∩ (𝐾𝑠)) = ∅)
37 disj1 4416 . . . . . . . . . . . . . . . . . . . . 21 (((𝐾𝑎) ∩ (𝐾𝑠)) = ∅ ↔ ∀𝑏(𝑏 ∈ (𝐾𝑎) → ¬ 𝑏 ∈ (𝐾𝑠)))
3836, 37sylib 221 . . . . . . . . . . . . . . . . . . . 20 (((𝜑𝑎 ∈ ω ∧ 𝑠 ∈ ω) ∧ 𝑠𝑎) → ∀𝑏(𝑏 ∈ (𝐾𝑎) → ¬ 𝑏 ∈ (𝐾𝑠)))
3938ex 417 . . . . . . . . . . . . . . . . . . 19 ((𝜑𝑎 ∈ ω ∧ 𝑠 ∈ ω) → (𝑠𝑎 → ∀𝑏(𝑏 ∈ (𝐾𝑎) → ¬ 𝑏 ∈ (𝐾𝑠))))
40 sp 2225 . . . . . . . . . . . . . . . . . . 19 (∀𝑏(𝑏 ∈ (𝐾𝑎) → ¬ 𝑏 ∈ (𝐾𝑠)) → (𝑏 ∈ (𝐾𝑎) → ¬ 𝑏 ∈ (𝐾𝑠)))
4139, 40syl6 36 . . . . . . . . . . . . . . . . . 18 ((𝜑𝑎 ∈ ω ∧ 𝑠 ∈ ω) → (𝑠𝑎 → (𝑏 ∈ (𝐾𝑎) → ¬ 𝑏 ∈ (𝐾𝑠))))
4241com23 87 . . . . . . . . . . . . . . . . 17 ((𝜑𝑎 ∈ ω ∧ 𝑠 ∈ ω) → (𝑏 ∈ (𝐾𝑎) → (𝑠𝑎 → ¬ 𝑏 ∈ (𝐾𝑠))))
43423adant1r 1194 . . . . . . . . . . . . . . . 16 (((𝜑𝑏 ∈ (𝐾𝑎)) ∧ 𝑎 ∈ ω ∧ 𝑠 ∈ ω) → (𝑏 ∈ (𝐾𝑎) → (𝑠𝑎 → ¬ 𝑏 ∈ (𝐾𝑠))))
4429, 43mpd 16 . . . . . . . . . . . . . . 15 (((𝜑𝑏 ∈ (𝐾𝑎)) ∧ 𝑎 ∈ ω ∧ 𝑠 ∈ ω) → (𝑠𝑎 → ¬ 𝑏 ∈ (𝐾𝑠)))
4544necon4ad 2983 . . . . . . . . . . . . . 14 (((𝜑𝑏 ∈ (𝐾𝑎)) ∧ 𝑎 ∈ ω ∧ 𝑠 ∈ ω) → (𝑏 ∈ (𝐾𝑠) → 𝑠 = 𝑎))
46453expia 1137 . . . . . . . . . . . . 13 (((𝜑𝑏 ∈ (𝐾𝑎)) ∧ 𝑎 ∈ ω) → (𝑠 ∈ ω → (𝑏 ∈ (𝐾𝑠) → 𝑠 = 𝑎)))
4746impd 415 . . . . . . . . . . . 12 (((𝜑𝑏 ∈ (𝐾𝑎)) ∧ 𝑎 ∈ ω) → ((𝑠 ∈ ω ∧ 𝑏 ∈ (𝐾𝑠)) → 𝑠 = 𝑎))
48 eleq1w 2852 . . . . . . . . . . . . . . . 16 (𝑠 = 𝑎 → (𝑠 ∈ ω ↔ 𝑎 ∈ ω))
49 fveq2 6882 . . . . . . . . . . . . . . . . 17 (𝑠 = 𝑎 → (𝐾𝑠) = (𝐾𝑎))
5049eleq2d 2855 . . . . . . . . . . . . . . . 16 (𝑠 = 𝑎 → (𝑏 ∈ (𝐾𝑠) ↔ 𝑏 ∈ (𝐾𝑎)))
5148, 50anbi12d 643 . . . . . . . . . . . . . . 15 (𝑠 = 𝑎 → ((𝑠 ∈ ω ∧ 𝑏 ∈ (𝐾𝑠)) ↔ (𝑎 ∈ ω ∧ 𝑏 ∈ (𝐾𝑎))))
5251biimprcd 253 . . . . . . . . . . . . . 14 ((𝑎 ∈ ω ∧ 𝑏 ∈ (𝐾𝑎)) → (𝑠 = 𝑎 → (𝑠 ∈ ω ∧ 𝑏 ∈ (𝐾𝑠))))
5352ancoms 463 . . . . . . . . . . . . 13 ((𝑏 ∈ (𝐾𝑎) ∧ 𝑎 ∈ ω) → (𝑠 = 𝑎 → (𝑠 ∈ ω ∧ 𝑏 ∈ (𝐾𝑠))))
5453adantll 726 . . . . . . . . . . . 12 (((𝜑𝑏 ∈ (𝐾𝑎)) ∧ 𝑎 ∈ ω) → (𝑠 = 𝑎 → (𝑠 ∈ ω ∧ 𝑏 ∈ (𝐾𝑠))))
5547, 54impbid 215 . . . . . . . . . . 11 (((𝜑𝑏 ∈ (𝐾𝑎)) ∧ 𝑎 ∈ ω) → ((𝑠 ∈ ω ∧ 𝑏 ∈ (𝐾𝑠)) ↔ 𝑠 = 𝑎))
5655iota5 6520 . . . . . . . . . 10 (((𝜑𝑏 ∈ (𝐾𝑎)) ∧ 𝑎 ∈ ω) → (℩𝑠(𝑠 ∈ ω ∧ 𝑏 ∈ (𝐾𝑠))) = 𝑎)
5756an32s 664 . . . . . . . . 9 (((𝜑𝑎 ∈ ω) ∧ 𝑏 ∈ (𝐾𝑎)) → (℩𝑠(𝑠 ∈ ω ∧ 𝑏 ∈ (𝐾𝑠))) = 𝑎)
5828, 57eqtr2d 2805 . . . . . . . 8 (((𝜑𝑎 ∈ ω) ∧ 𝑏 ∈ (𝐾𝑎)) → 𝑎 = (𝐿𝑏))
5922, 58jca 520 . . . . . . 7 (((𝜑𝑎 ∈ ω) ∧ 𝑏 ∈ (𝐾𝑎)) → (𝑏𝐺𝑎 = (𝐿𝑏)))
6059ex 417 . . . . . 6 ((𝜑𝑎 ∈ ω) → (𝑏 ∈ (𝐾𝑎) → (𝑏𝐺𝑎 = (𝐿𝑏))))
6160eximdv 1944 . . . . 5 ((𝜑𝑎 ∈ ω) → (∃𝑏 𝑏 ∈ (𝐾𝑎) → ∃𝑏(𝑏𝐺𝑎 = (𝐿𝑏))))
62 df-rex 3096 . . . . 5 (∃𝑏𝐺 𝑎 = (𝐿𝑏) ↔ ∃𝑏(𝑏𝐺𝑎 = (𝐿𝑏)))
6361, 62imbitrrdi 255 . . . 4 ((𝜑𝑎 ∈ ω) → (∃𝑏 𝑏 ∈ (𝐾𝑎) → ∃𝑏𝐺 𝑎 = (𝐿𝑏)))
6420, 63mpd 16 . . 3 ((𝜑𝑎 ∈ ω) → ∃𝑏𝐺 𝑎 = (𝐿𝑏))
6564ralrimiva 3163 . 2 (𝜑 → ∀𝑎 ∈ ω ∃𝑏𝐺 𝑎 = (𝐿𝑏))
66 dffo3 7098 . 2 (𝐿:𝐺onto→ω ↔ (𝐿:𝐺⟶ω ∧ ∀𝑎 ∈ ω ∃𝑏𝐺 𝑎 = (𝐿𝑏)))
6711, 65, 66sylanbrc 594 1 (𝜑𝐿:𝐺onto→ω)
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wa 400  w3a 1101  wal 1565   = wceq 1567  wex 1806  wcel 2149  ∃!weu 2602  {cab 2747  wne 2964  wral 3085  wrex 3095  {crab 3422  cdif 3908  cin 3910  wss 3911  wpss 3912  c0 4292  𝒫 cpw 4565   cint 4914   class class class wbr 5111  cmpt 5194  ran crn 5663  ccom 5666  suc csuc 6363  cio 6491  wf 6533  ontowfo 6535  cfv 6537  crio 7367  ωcom 7862  cen 8940
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1822  ax-4 1836  ax-5 1937  ax-6 1994  ax-7 2035  ax-8 2151  ax-9 2159  ax-10 2182  ax-11 2198  ax-12 2219  ax-ext 2741  ax-rep 5240  ax-sep 5259  ax-nul 5271  ax-pow 5337  ax-pr 5405  ax-un 7733
This theorem depends on definitions:  df-bi 210  df-an 401  df-or 861  df-3or 1102  df-3an 1103  df-tru 1570  df-fal 1580  df-ex 1807  df-nf 1811  df-sb 2098  df-mo 2573  df-eu 2603  df-clab 2748  df-cleq 2761  df-clel 2844  df-nfc 2918  df-ne 2965  df-ral 3086  df-rex 3096  df-rmo 3375  df-reu 3376  df-rab 3423  df-v 3463  df-sbc 3752  df-csb 3860  df-dif 3914  df-un 3916  df-in 3918  df-ss 3928  df-pss 3931  df-nul 4293  df-if 4491  df-pw 4567  df-sn 4593  df-pr 4595  df-op 4599  df-uni 4875  df-int 4915  df-iun 4960  df-br 5112  df-opab 5176  df-mpt 5195  df-tr 5221  df-id 5557  df-eprel 5562  df-po 5570  df-so 5571  df-fr 5615  df-se 5616  df-we 5617  df-xp 5668  df-rel 5669  df-cnv 5670  df-co 5671  df-dm 5672  df-rn 5673  df-res 5674  df-ima 5675  df-pred 6303  df-ord 6364  df-on 6365  df-lim 6366  df-suc 6367  df-iota 6493  df-fun 6539  df-fn 6540  df-f 6541  df-f1 6542  df-fo 6543  df-f1o 6544  df-fv 6545  df-isom 6546  df-riota 7368  df-ov 7414  df-om 7863  df-2nd 7987  df-frecs 8278  df-wrecs 8309  df-recs 8358  df-1o 8453  df-er 8694  df-en 8944  df-dom 8945  df-sdom 8946  df-fin 8947  df-card 9925
This theorem is referenced by:  isf32lem10  10346
  Copyright terms: Public domain W3C validator