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

Theorem isf32lem9 10117
Description: Lemma for isfin3-2 10123. 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 4012 . . . . . . 7 {𝑠 ∣ (𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾𝑠))} ⊆ ω
3 iotacl 6419 . . . . . . 7 (∃!𝑠(𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾𝑠)) → (℩𝑠(𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾𝑠))) ∈ {𝑠 ∣ (𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾𝑠))})
42, 3sselid 3919 . . . . . 6 (∃!𝑠(𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾𝑠)) → (℩𝑠(𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾𝑠))) ∈ ω)
5 iotanul 6411 . . . . . . 7 (¬ ∃!𝑠(𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾𝑠)) → (℩𝑠(𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾𝑠))) = ∅)
6 peano1 7735 . . . . . . 7 ∅ ∈ ω
75, 6eqeltrdi 2847 . . . . . 6 (¬ ∃!𝑠(𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾𝑠)) → (℩𝑠(𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾𝑠))) ∈ ω)
84, 7pm2.61i 182 . . . . 5 (℩𝑠(𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾𝑠))) ∈ ω
98a1i 11 . . . 4 (𝑡𝐺 → (℩𝑠(𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾𝑠))) ∈ ω)
101, 9fmpti 6986 . . 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 10114 . . . . 5 ((𝜑𝑎 ∈ ω) → (𝐾𝑎) ≠ ∅)
19 n0 4280 . . . . 5 ((𝐾𝑎) ≠ ∅ ↔ ∃𝑏 𝑏 ∈ (𝐾𝑎))
2018, 19sylib 217 . . . 4 ((𝜑𝑎 ∈ ω) → ∃𝑏 𝑏 ∈ (𝐾𝑎))
2112, 13, 14, 15, 16, 17isf32lem8 10116 . . . . . . . . 9 ((𝜑𝑎 ∈ ω) → (𝐾𝑎) ⊆ 𝐺)
2221sselda 3921 . . . . . . . 8 (((𝜑𝑎 ∈ ω) ∧ 𝑏 ∈ (𝐾𝑎)) → 𝑏𝐺)
23 eleq1w 2821 . . . . . . . . . . . . 13 (𝑡 = 𝑏 → (𝑡 ∈ (𝐾𝑠) ↔ 𝑏 ∈ (𝐾𝑠)))
2423anbi2d 629 . . . . . . . . . . . 12 (𝑡 = 𝑏 → ((𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾𝑠)) ↔ (𝑠 ∈ ω ∧ 𝑏 ∈ (𝐾𝑠))))
2524iotabidv 6417 . . . . . . . . . . 11 (𝑡 = 𝑏 → (℩𝑠(𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾𝑠))) = (℩𝑠(𝑠 ∈ ω ∧ 𝑏 ∈ (𝐾𝑠))))
26 iotaex 6413 . . . . . . . . . . 11 (℩𝑠(𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾𝑠))) ∈ V
2725, 1, 26fvmpt3i 6880 . . . . . . . . . 10 (𝑏𝐺 → (𝐿𝑏) = (℩𝑠(𝑠 ∈ ω ∧ 𝑏 ∈ (𝐾𝑠))))
2822, 27syl 17 . . . . . . . . 9 (((𝜑𝑎 ∈ ω) ∧ 𝑏 ∈ (𝐾𝑎)) → (𝐿𝑏) = (℩𝑠(𝑠 ∈ ω ∧ 𝑏 ∈ (𝐾𝑠))))
29 simp1r 1197 . . . . . . . . . . . . . . . 16 (((𝜑𝑏 ∈ (𝐾𝑎)) ∧ 𝑎 ∈ ω ∧ 𝑠 ∈ ω) → 𝑏 ∈ (𝐾𝑎))
30 simpl1 1190 . . . . . . . . . . . . . . . . . . . . . 22 (((𝜑𝑎 ∈ ω ∧ 𝑠 ∈ ω) ∧ 𝑠𝑎) → 𝜑)
31 simpr 485 . . . . . . . . . . . . . . . . . . . . . . 23 (((𝜑𝑎 ∈ ω ∧ 𝑠 ∈ ω) ∧ 𝑠𝑎) → 𝑠𝑎)
3231necomd 2999 . . . . . . . . . . . . . . . . . . . . . 22 (((𝜑𝑎 ∈ ω ∧ 𝑠 ∈ ω) ∧ 𝑠𝑎) → 𝑎𝑠)
33 simpl2 1191 . . . . . . . . . . . . . . . . . . . . . 22 (((𝜑𝑎 ∈ ω ∧ 𝑠 ∈ ω) ∧ 𝑠𝑎) → 𝑎 ∈ ω)
34 simpl3 1192 . . . . . . . . . . . . . . . . . . . . . 22 (((𝜑𝑎 ∈ ω ∧ 𝑠 ∈ ω) ∧ 𝑠𝑎) → 𝑠 ∈ ω)
3512, 13, 14, 15, 16, 17isf32lem7 10115 . . . . . . . . . . . . . . . . . . . . . 22 (((𝜑𝑎𝑠) ∧ (𝑎 ∈ ω ∧ 𝑠 ∈ ω)) → ((𝐾𝑎) ∩ (𝐾𝑠)) = ∅)
3630, 32, 33, 34, 35syl22anc 836 . . . . . . . . . . . . . . . . . . . . 21 (((𝜑𝑎 ∈ ω ∧ 𝑠 ∈ ω) ∧ 𝑠𝑎) → ((𝐾𝑎) ∩ (𝐾𝑠)) = ∅)
37 disj1 4384 . . . . . . . . . . . . . . . . . . . . 21 (((𝐾𝑎) ∩ (𝐾𝑠)) = ∅ ↔ ∀𝑏(𝑏 ∈ (𝐾𝑎) → ¬ 𝑏 ∈ (𝐾𝑠)))
3836, 37sylib 217 . . . . . . . . . . . . . . . . . . . 20 (((𝜑𝑎 ∈ ω ∧ 𝑠 ∈ ω) ∧ 𝑠𝑎) → ∀𝑏(𝑏 ∈ (𝐾𝑎) → ¬ 𝑏 ∈ (𝐾𝑠)))
3938ex 413 . . . . . . . . . . . . . . . . . . 19 ((𝜑𝑎 ∈ ω ∧ 𝑠 ∈ ω) → (𝑠𝑎 → ∀𝑏(𝑏 ∈ (𝐾𝑎) → ¬ 𝑏 ∈ (𝐾𝑠))))
40 sp 2176 . . . . . . . . . . . . . . . . . . 19 (∀𝑏(𝑏 ∈ (𝐾𝑎) → ¬ 𝑏 ∈ (𝐾𝑠)) → (𝑏 ∈ (𝐾𝑎) → ¬ 𝑏 ∈ (𝐾𝑠)))
4139, 40syl6 35 . . . . . . . . . . . . . . . . . 18 ((𝜑𝑎 ∈ ω ∧ 𝑠 ∈ ω) → (𝑠𝑎 → (𝑏 ∈ (𝐾𝑎) → ¬ 𝑏 ∈ (𝐾𝑠))))
4241com23 86 . . . . . . . . . . . . . . . . 17 ((𝜑𝑎 ∈ ω ∧ 𝑠 ∈ ω) → (𝑏 ∈ (𝐾𝑎) → (𝑠𝑎 → ¬ 𝑏 ∈ (𝐾𝑠))))
43423adant1r 1176 . . . . . . . . . . . . . . . 16 (((𝜑𝑏 ∈ (𝐾𝑎)) ∧ 𝑎 ∈ ω ∧ 𝑠 ∈ ω) → (𝑏 ∈ (𝐾𝑎) → (𝑠𝑎 → ¬ 𝑏 ∈ (𝐾𝑠))))
4429, 43mpd 15 . . . . . . . . . . . . . . 15 (((𝜑𝑏 ∈ (𝐾𝑎)) ∧ 𝑎 ∈ ω ∧ 𝑠 ∈ ω) → (𝑠𝑎 → ¬ 𝑏 ∈ (𝐾𝑠)))
4544necon4ad 2962 . . . . . . . . . . . . . 14 (((𝜑𝑏 ∈ (𝐾𝑎)) ∧ 𝑎 ∈ ω ∧ 𝑠 ∈ ω) → (𝑏 ∈ (𝐾𝑠) → 𝑠 = 𝑎))
46453expia 1120 . . . . . . . . . . . . 13 (((𝜑𝑏 ∈ (𝐾𝑎)) ∧ 𝑎 ∈ ω) → (𝑠 ∈ ω → (𝑏 ∈ (𝐾𝑠) → 𝑠 = 𝑎)))
4746impd 411 . . . . . . . . . . . 12 (((𝜑𝑏 ∈ (𝐾𝑎)) ∧ 𝑎 ∈ ω) → ((𝑠 ∈ ω ∧ 𝑏 ∈ (𝐾𝑠)) → 𝑠 = 𝑎))
48 eleq1w 2821 . . . . . . . . . . . . . . . 16 (𝑠 = 𝑎 → (𝑠 ∈ ω ↔ 𝑎 ∈ ω))
49 fveq2 6774 . . . . . . . . . . . . . . . . 17 (𝑠 = 𝑎 → (𝐾𝑠) = (𝐾𝑎))
5049eleq2d 2824 . . . . . . . . . . . . . . . 16 (𝑠 = 𝑎 → (𝑏 ∈ (𝐾𝑠) ↔ 𝑏 ∈ (𝐾𝑎)))
5148, 50anbi12d 631 . . . . . . . . . . . . . . 15 (𝑠 = 𝑎 → ((𝑠 ∈ ω ∧ 𝑏 ∈ (𝐾𝑠)) ↔ (𝑎 ∈ ω ∧ 𝑏 ∈ (𝐾𝑎))))
5251biimprcd 249 . . . . . . . . . . . . . 14 ((𝑎 ∈ ω ∧ 𝑏 ∈ (𝐾𝑎)) → (𝑠 = 𝑎 → (𝑠 ∈ ω ∧ 𝑏 ∈ (𝐾𝑠))))
5352ancoms 459 . . . . . . . . . . . . 13 ((𝑏 ∈ (𝐾𝑎) ∧ 𝑎 ∈ ω) → (𝑠 = 𝑎 → (𝑠 ∈ ω ∧ 𝑏 ∈ (𝐾𝑠))))
5453adantll 711 . . . . . . . . . . . 12 (((𝜑𝑏 ∈ (𝐾𝑎)) ∧ 𝑎 ∈ ω) → (𝑠 = 𝑎 → (𝑠 ∈ ω ∧ 𝑏 ∈ (𝐾𝑠))))
5547, 54impbid 211 . . . . . . . . . . 11 (((𝜑𝑏 ∈ (𝐾𝑎)) ∧ 𝑎 ∈ ω) → ((𝑠 ∈ ω ∧ 𝑏 ∈ (𝐾𝑠)) ↔ 𝑠 = 𝑎))
5655iota5 6416 . . . . . . . . . 10 (((𝜑𝑏 ∈ (𝐾𝑎)) ∧ 𝑎 ∈ ω) → (℩𝑠(𝑠 ∈ ω ∧ 𝑏 ∈ (𝐾𝑠))) = 𝑎)
5756an32s 649 . . . . . . . . 9 (((𝜑𝑎 ∈ ω) ∧ 𝑏 ∈ (𝐾𝑎)) → (℩𝑠(𝑠 ∈ ω ∧ 𝑏 ∈ (𝐾𝑠))) = 𝑎)
5828, 57eqtr2d 2779 . . . . . . . 8 (((𝜑𝑎 ∈ ω) ∧ 𝑏 ∈ (𝐾𝑎)) → 𝑎 = (𝐿𝑏))
5922, 58jca 512 . . . . . . 7 (((𝜑𝑎 ∈ ω) ∧ 𝑏 ∈ (𝐾𝑎)) → (𝑏𝐺𝑎 = (𝐿𝑏)))
6059ex 413 . . . . . 6 ((𝜑𝑎 ∈ ω) → (𝑏 ∈ (𝐾𝑎) → (𝑏𝐺𝑎 = (𝐿𝑏))))
6160eximdv 1920 . . . . 5 ((𝜑𝑎 ∈ ω) → (∃𝑏 𝑏 ∈ (𝐾𝑎) → ∃𝑏(𝑏𝐺𝑎 = (𝐿𝑏))))
62 df-rex 3070 . . . . 5 (∃𝑏𝐺 𝑎 = (𝐿𝑏) ↔ ∃𝑏(𝑏𝐺𝑎 = (𝐿𝑏)))
6361, 62syl6ibr 251 . . . 4 ((𝜑𝑎 ∈ ω) → (∃𝑏 𝑏 ∈ (𝐾𝑎) → ∃𝑏𝐺 𝑎 = (𝐿𝑏)))
6420, 63mpd 15 . . 3 ((𝜑𝑎 ∈ ω) → ∃𝑏𝐺 𝑎 = (𝐿𝑏))
6564ralrimiva 3103 . 2 (𝜑 → ∀𝑎 ∈ ω ∃𝑏𝐺 𝑎 = (𝐿𝑏))
66 dffo3 6978 . 2 (𝐿:𝐺onto→ω ↔ (𝐿:𝐺⟶ω ∧ ∀𝑎 ∈ ω ∃𝑏𝐺 𝑎 = (𝐿𝑏)))
6711, 65, 66sylanbrc 583 1 (𝜑𝐿:𝐺onto→ω)
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wa 396  w3a 1086  wal 1537   = wceq 1539  wex 1782  wcel 2106  ∃!weu 2568  {cab 2715  wne 2943  wral 3064  wrex 3065  {crab 3068  cdif 3884  cin 3886  wss 3887  wpss 3888  c0 4256  𝒫 cpw 4533   cint 4879   class class class wbr 5074  cmpt 5157  ran crn 5590  ccom 5593  suc csuc 6268  cio 6389  wf 6429  ontowfo 6431  cfv 6433  crio 7231  ωcom 7712  cen 8730
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1798  ax-4 1812  ax-5 1913  ax-6 1971  ax-7 2011  ax-8 2108  ax-9 2116  ax-10 2137  ax-11 2154  ax-12 2171  ax-ext 2709  ax-rep 5209  ax-sep 5223  ax-nul 5230  ax-pow 5288  ax-pr 5352  ax-un 7588
This theorem depends on definitions:  df-bi 206  df-an 397  df-or 845  df-3or 1087  df-3an 1088  df-tru 1542  df-fal 1552  df-ex 1783  df-nf 1787  df-sb 2068  df-mo 2540  df-eu 2569  df-clab 2716  df-cleq 2730  df-clel 2816  df-nfc 2889  df-ne 2944  df-ral 3069  df-rex 3070  df-rmo 3071  df-reu 3072  df-rab 3073  df-v 3434  df-sbc 3717  df-csb 3833  df-dif 3890  df-un 3892  df-in 3894  df-ss 3904  df-pss 3906  df-nul 4257  df-if 4460  df-pw 4535  df-sn 4562  df-pr 4564  df-op 4568  df-uni 4840  df-int 4880  df-iun 4926  df-br 5075  df-opab 5137  df-mpt 5158  df-tr 5192  df-id 5489  df-eprel 5495  df-po 5503  df-so 5504  df-fr 5544  df-se 5545  df-we 5546  df-xp 5595  df-rel 5596  df-cnv 5597  df-co 5598  df-dm 5599  df-rn 5600  df-res 5601  df-ima 5602  df-pred 6202  df-ord 6269  df-on 6270  df-lim 6271  df-suc 6272  df-iota 6391  df-fun 6435  df-fn 6436  df-f 6437  df-f1 6438  df-fo 6439  df-f1o 6440  df-fv 6441  df-isom 6442  df-riota 7232  df-ov 7278  df-om 7713  df-2nd 7832  df-frecs 8097  df-wrecs 8128  df-recs 8202  df-1o 8297  df-er 8498  df-en 8734  df-dom 8735  df-sdom 8736  df-fin 8737  df-card 9697
This theorem is referenced by:  isf32lem10  10118
  Copyright terms: Public domain W3C validator