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

Theorem isf32lem9 10351
Description: Lemma for isfin3-2 10357. 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 4032 . . . . . . 7 {𝑠 ∣ (𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾𝑠))} ⊆ ω
3 iotacl 6522 . . . . . . 7 (∃!𝑠(𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾𝑠)) → (℩𝑠(𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾𝑠))) ∈ {𝑠 ∣ (𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾𝑠))})
42, 3sselid 3934 . . . . . 6 (∃!𝑠(𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾𝑠)) → (℩𝑠(𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾𝑠))) ∈ ω)
5 iotanul 6516 . . . . . . 7 (¬ ∃!𝑠(𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾𝑠)) → (℩𝑠(𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾𝑠))) = ∅)
6 peano1 7883 . . . . . . 7 ∅ ∈ ω
75, 6eqeltrdi 2870 . . . . . 6 (¬ ∃!𝑠(𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾𝑠)) → (℩𝑠(𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾𝑠))) ∈ ω)
84, 7pm2.61i 184 . . . . 5 (℩𝑠(𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾𝑠))) ∈ ω
98a1i 11 . . . 4 (𝑡𝐺 → (℩𝑠(𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾𝑠))) ∈ ω)
101, 9fmpti 7107 . . 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 10348 . . . . 5 ((𝜑𝑎 ∈ ω) → (𝐾𝑎) ≠ ∅)
19 n0 4306 . . . . 5 ((𝐾𝑎) ≠ ∅ ↔ ∃𝑏 𝑏 ∈ (𝐾𝑎))
2018, 19sylib 221 . . . 4 ((𝜑𝑎 ∈ ω) → ∃𝑏 𝑏 ∈ (𝐾𝑎))
2112, 13, 14, 15, 16, 17isf32lem8 10350 . . . . . . . . 9 ((𝜑𝑎 ∈ ω) → (𝐾𝑎) ⊆ 𝐺)
2221sselda 3936 . . . . . . . 8 (((𝜑𝑎 ∈ ω) ∧ 𝑏 ∈ (𝐾𝑎)) → 𝑏𝐺)
23 eleq1w 2845 . . . . . . . . . . . . 13 (𝑡 = 𝑏 → (𝑡 ∈ (𝐾𝑠) ↔ 𝑏 ∈ (𝐾𝑠)))
2423anbi2d 641 . . . . . . . . . . . 12 (𝑡 = 𝑏 → ((𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾𝑠)) ↔ (𝑠 ∈ ω ∧ 𝑏 ∈ (𝐾𝑠))))
2524iotabidv 6520 . . . . . . . . . . 11 (𝑡 = 𝑏 → (℩𝑠(𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾𝑠))) = (℩𝑠(𝑠 ∈ ω ∧ 𝑏 ∈ (𝐾𝑠))))
26 iotaex 6512 . . . . . . . . . . 11 (℩𝑠(𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾𝑠))) ∈ V
2725, 1, 26fvmpt3i 6995 . . . . . . . . . 10 (𝑏𝐺 → (𝐿𝑏) = (℩𝑠(𝑠 ∈ ω ∧ 𝑏 ∈ (𝐾𝑠))))
2822, 27syl 18 . . . . . . . . 9 (((𝜑𝑎 ∈ ω) ∧ 𝑏 ∈ (𝐾𝑎)) → (𝐿𝑏) = (℩𝑠(𝑠 ∈ ω ∧ 𝑏 ∈ (𝐾𝑠))))
29 simp1r 1216 . . . . . . . . . . . . . . . 16 (((𝜑𝑏 ∈ (𝐾𝑎)) ∧ 𝑎 ∈ ω ∧ 𝑠 ∈ ω) → 𝑏 ∈ (𝐾𝑎))
30 simpl1 1209 . . . . . . . . . . . . . . . . . . . . . 22 (((𝜑𝑎 ∈ ω ∧ 𝑠 ∈ ω) ∧ 𝑠𝑎) → 𝜑)
31 simpr 489 . . . . . . . . . . . . . . . . . . . . . . 23 (((𝜑𝑎 ∈ ω ∧ 𝑠 ∈ ω) ∧ 𝑠𝑎) → 𝑠𝑎)
3231necomd 3012 . . . . . . . . . . . . . . . . . . . . . 22 (((𝜑𝑎 ∈ ω ∧ 𝑠 ∈ ω) ∧ 𝑠𝑎) → 𝑎𝑠)
33 simpl2 1210 . . . . . . . . . . . . . . . . . . . . . 22 (((𝜑𝑎 ∈ ω ∧ 𝑠 ∈ ω) ∧ 𝑠𝑎) → 𝑎 ∈ ω)
34 simpl3 1211 . . . . . . . . . . . . . . . . . . . . . 22 (((𝜑𝑎 ∈ ω ∧ 𝑠 ∈ ω) ∧ 𝑠𝑎) → 𝑠 ∈ ω)
3512, 13, 14, 15, 16, 17isf32lem7 10349 . . . . . . . . . . . . . . . . . . . . . 22 (((𝜑𝑎𝑠) ∧ (𝑎 ∈ ω ∧ 𝑠 ∈ ω)) → ((𝐾𝑎) ∩ (𝐾𝑠)) = ∅)
3630, 32, 33, 34, 35syl22anc 851 . . . . . . . . . . . . . . . . . . . . 21 (((𝜑𝑎 ∈ ω ∧ 𝑠 ∈ ω) ∧ 𝑠𝑎) → ((𝐾𝑎) ∩ (𝐾𝑠)) = ∅)
37 disj1 4411 . . . . . . . . . . . . . . . . . . . . 21 (((𝐾𝑎) ∩ (𝐾𝑠)) = ∅ ↔ ∀𝑏(𝑏 ∈ (𝐾𝑎) → ¬ 𝑏 ∈ (𝐾𝑠)))
3836, 37sylib 221 . . . . . . . . . . . . . . . . . . . 20 (((𝜑𝑎 ∈ ω ∧ 𝑠 ∈ ω) ∧ 𝑠𝑎) → ∀𝑏(𝑏 ∈ (𝐾𝑎) → ¬ 𝑏 ∈ (𝐾𝑠)))
3938ex 417 . . . . . . . . . . . . . . . . . . 19 ((𝜑𝑎 ∈ ω ∧ 𝑠 ∈ ω) → (𝑠𝑎 → ∀𝑏(𝑏 ∈ (𝐾𝑎) → ¬ 𝑏 ∈ (𝐾𝑠))))
40 sp 2218 . . . . . . . . . . . . . . . . . . 19 (∀𝑏(𝑏 ∈ (𝐾𝑎) → ¬ 𝑏 ∈ (𝐾𝑠)) → (𝑏 ∈ (𝐾𝑎) → ¬ 𝑏 ∈ (𝐾𝑠)))
4139, 40syl6 36 . . . . . . . . . . . . . . . . . 18 ((𝜑𝑎 ∈ ω ∧ 𝑠 ∈ ω) → (𝑠𝑎 → (𝑏 ∈ (𝐾𝑎) → ¬ 𝑏 ∈ (𝐾𝑠))))
4241com23 87 . . . . . . . . . . . . . . . . 17 ((𝜑𝑎 ∈ ω ∧ 𝑠 ∈ ω) → (𝑏 ∈ (𝐾𝑎) → (𝑠𝑎 → ¬ 𝑏 ∈ (𝐾𝑠))))
43423adant1r 1195 . . . . . . . . . . . . . . . 16 (((𝜑𝑏 ∈ (𝐾𝑎)) ∧ 𝑎 ∈ ω ∧ 𝑠 ∈ ω) → (𝑏 ∈ (𝐾𝑎) → (𝑠𝑎 → ¬ 𝑏 ∈ (𝐾𝑠))))
4429, 43mpd 16 . . . . . . . . . . . . . . 15 (((𝜑𝑏 ∈ (𝐾𝑎)) ∧ 𝑎 ∈ ω ∧ 𝑠 ∈ ω) → (𝑠𝑎 → ¬ 𝑏 ∈ (𝐾𝑠)))
4544necon4ad 2976 . . . . . . . . . . . . . 14 (((𝜑𝑏 ∈ (𝐾𝑎)) ∧ 𝑎 ∈ ω ∧ 𝑠 ∈ ω) → (𝑏 ∈ (𝐾𝑠) → 𝑠 = 𝑎))
46453expia 1138 . . . . . . . . . . . . 13 (((𝜑𝑏 ∈ (𝐾𝑎)) ∧ 𝑎 ∈ ω) → (𝑠 ∈ ω → (𝑏 ∈ (𝐾𝑠) → 𝑠 = 𝑎)))
4746impd 415 . . . . . . . . . . . 12 (((𝜑𝑏 ∈ (𝐾𝑎)) ∧ 𝑎 ∈ ω) → ((𝑠 ∈ ω ∧ 𝑏 ∈ (𝐾𝑠)) → 𝑠 = 𝑎))
48 eleq1w 2845 . . . . . . . . . . . . . . . 16 (𝑠 = 𝑎 → (𝑠 ∈ ω ↔ 𝑎 ∈ ω))
49 fveq2 6881 . . . . . . . . . . . . . . . . 17 (𝑠 = 𝑎 → (𝐾𝑠) = (𝐾𝑎))
5049eleq2d 2848 . . . . . . . . . . . . . . . 16 (𝑠 = 𝑎 → (𝑏 ∈ (𝐾𝑠) ↔ 𝑏 ∈ (𝐾𝑎)))
5148, 50anbi12d 643 . . . . . . . . . . . . . . 15 (𝑠 = 𝑎 → ((𝑠 ∈ ω ∧ 𝑏 ∈ (𝐾𝑠)) ↔ (𝑎 ∈ ω ∧ 𝑏 ∈ (𝐾𝑎))))
5251biimprcd 253 . . . . . . . . . . . . . 14 ((𝑎 ∈ ω ∧ 𝑏 ∈ (𝐾𝑎)) → (𝑠 = 𝑎 → (𝑠 ∈ ω ∧ 𝑏 ∈ (𝐾𝑠))))
5352ancoms 463 . . . . . . . . . . . . 13 ((𝑏 ∈ (𝐾𝑎) ∧ 𝑎 ∈ ω) → (𝑠 = 𝑎 → (𝑠 ∈ ω ∧ 𝑏 ∈ (𝐾𝑠))))
5453adantll 726 . . . . . . . . . . . 12 (((𝜑𝑏 ∈ (𝐾𝑎)) ∧ 𝑎 ∈ ω) → (𝑠 = 𝑎 → (𝑠 ∈ ω ∧ 𝑏 ∈ (𝐾𝑠))))
5547, 54impbid 215 . . . . . . . . . . 11 (((𝜑𝑏 ∈ (𝐾𝑎)) ∧ 𝑎 ∈ ω) → ((𝑠 ∈ ω ∧ 𝑏 ∈ (𝐾𝑠)) ↔ 𝑠 = 𝑎))
5655iota5 6519 . . . . . . . . . 10 (((𝜑𝑏 ∈ (𝐾𝑎)) ∧ 𝑎 ∈ ω) → (℩𝑠(𝑠 ∈ ω ∧ 𝑏 ∈ (𝐾𝑠))) = 𝑎)
5756an32s 664 . . . . . . . . 9 (((𝜑𝑎 ∈ ω) ∧ 𝑏 ∈ (𝐾𝑎)) → (℩𝑠(𝑠 ∈ ω ∧ 𝑏 ∈ (𝐾𝑠))) = 𝑎)
5828, 57eqtr2d 2798 . . . . . . . 8 (((𝜑𝑎 ∈ ω) ∧ 𝑏 ∈ (𝐾𝑎)) → 𝑎 = (𝐿𝑏))
5922, 58jca 520 . . . . . . 7 (((𝜑𝑎 ∈ ω) ∧ 𝑏 ∈ (𝐾𝑎)) → (𝑏𝐺𝑎 = (𝐿𝑏)))
6059ex 417 . . . . . 6 ((𝜑𝑎 ∈ ω) → (𝑏 ∈ (𝐾𝑎) → (𝑏𝐺𝑎 = (𝐿𝑏))))
6160eximdv 1946 . . . . 5 ((𝜑𝑎 ∈ ω) → (∃𝑏 𝑏 ∈ (𝐾𝑎) → ∃𝑏(𝑏𝐺𝑎 = (𝐿𝑏))))
62 df-rex 3089 . . . . 5 (∃𝑏𝐺 𝑎 = (𝐿𝑏) ↔ ∃𝑏(𝑏𝐺𝑎 = (𝐿𝑏)))
6361, 62imbitrrdi 255 . . . 4 ((𝜑𝑎 ∈ ω) → (∃𝑏 𝑏 ∈ (𝐾𝑎) → ∃𝑏𝐺 𝑎 = (𝐿𝑏)))
6420, 63mpd 16 . . 3 ((𝜑𝑎 ∈ ω) → ∃𝑏𝐺 𝑎 = (𝐿𝑏))
6564ralrimiva 3156 . 2 (𝜑 → ∀𝑎 ∈ ω ∃𝑏𝐺 𝑎 = (𝐿𝑏))
66 dffo3 7097 . 2 (𝐿:𝐺onto→ω ↔ (𝐿:𝐺⟶ω ∧ ∀𝑎 ∈ ω ∃𝑏𝐺 𝑎 = (𝐿𝑏)))
6711, 65, 66sylanbrc 594 1 (𝜑𝐿:𝐺onto→ω)
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  ¬ wn 3  wi 4  wa 400  w3a 1102  wal 1567   = wceq 1569  wex 1808  wcel 2142  ∃!weu 2595  {cab 2740  wne 2957  wral 3078  wrex 3088  {crab 3415  cdif 3901  cin 3903  wss 3904  wpss 3905  c0 4285  𝒫 cpw 4561   cint 4911   class class class wbr 5108  cmpt 5191  ran crn 5661  ccom 5664  suc csuc 6362  cio 6490  wf 6532  ontowfo 6534  cfv 6536  crio 7368  ωcom 7860  cen 8938
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1824  ax-4 1838  ax-5 1939  ax-6 1996  ax-7 2037  ax-8 2144  ax-9 2152  ax-10 2175  ax-11 2191  ax-12 2212  ax-ext 2734  ax-rep 5237  ax-sep 5256  ax-nul 5268  ax-pow 5335  ax-pr 5403  ax-un 7734
This proof depends on definitions:  df-bi 210  df-an 401  df-or 861  df-3or 1103  df-3an 1104  df-tru 1572  df-fal 1582  df-ex 1809  df-nf 1813  df-sb 2096  df-mo 2566  df-eu 2596  df-clab 2741  df-cleq 2754  df-clel 2837  df-nfc 2911  df-ne 2958  df-ral 3079  df-rex 3089  df-rmo 3368  df-reu 3369  df-rab 3416  df-v 3456  df-sbc 3744  df-csb 3853  df-dif 3907  df-un 3909  df-in 3911  df-ss 3921  df-pss 3924  df-nul 4286  df-if 4487  df-pw 4563  df-sn 4589  df-pr 4591  df-op 4595  df-uni 4872  df-int 4912  df-iun 4957  df-br 5109  df-opab 5173  df-mpt 5192  df-tr 5218  df-id 5555  df-eprel 5560  df-po 5568  df-so 5569  df-fr 5613  df-se 5614  df-we 5615  df-xp 5666  df-rel 5667  df-cnv 5668  df-co 5669  df-dm 5670  df-rn 5671  df-res 5672  df-ima 5673  df-pred 6302  df-ord 6363  df-on 6364  df-lim 6365  df-suc 6366  df-iota 6492  df-fun 6538  df-fn 6539  df-f 6540  df-f1 6541  df-fo 6542  df-f1o 6543  df-fv 6544  df-isom 6545  df-riota 7369  df-ov 7415  df-om 7861  df-2nd 7985  df-frecs 8276  df-wrecs 8307  df-recs 8356  df-1o 8451  df-er 8692  df-en 8942  df-dom 8943  df-sdom 8944  df-fin 8945  df-card 9932
This theorem is used by:  isf32lem10  10352
  Copyright terms: Public domain W3C validator