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

Theorem isf32lem9 10463
Description: Lemma for isfin3-2 10469. 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 4007 . . . . . . 7 {𝑠 ∣ (𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾‘𝑠))} ⊆ ω
3 iotacl 6540 . . . . . . 7 (∃!𝑠(𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾‘𝑠)) → (℩𝑠(𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾‘𝑠))) ∈ {𝑠 ∣ (𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾‘𝑠))})
42, 3sselid 3911 . . . . . 6 (∃!𝑠(𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾‘𝑠)) → (℩𝑠(𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾‘𝑠))) ∈ ω)
5 iotanul 6534 . . . . . . 7 (¬ ∃!𝑠(𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾‘𝑠)) → (℩𝑠(𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾‘𝑠))) = ∅)
6 peano1 7921 . . . . . . 7 ∅ ∈ ω
75, 6eqeltrdi 2872 . . . . . 6 (¬ ∃!𝑠(𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾‘𝑠)) → (℩𝑠(𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾‘𝑠))) ∈ ω)
84, 7pm2.61i 184 . . . . 5 (℩𝑠(𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾‘𝑠))) ∈ ω
98a1i 11 . . . 4 (𝑡 ∈ 𝐺 → (℩𝑠(𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾‘𝑠))) ∈ ω)
101, 9fmpti 7133 . . 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 10460 . . . . 5 ((𝜑 ∧ 𝑎 ∈ ω) → (𝐾‘𝑎) ≠ ∅)
19 n0 4303 . . . . 5 ((𝐾‘𝑎) ≠ ∅ ↔ ∃𝑏 𝑏 ∈ (𝐾‘𝑎))
2018, 19sylib 221 . . . 4 ((𝜑 ∧ 𝑎 ∈ ω) → ∃𝑏 𝑏 ∈ (𝐾‘𝑎))
2112, 13, 14, 15, 16, 17isf32lem8 10462 . . . . . . . . 9 ((𝜑 ∧ 𝑎 ∈ ω) → (𝐾‘𝑎) ⊆ 𝐺)
2221sselda 3913 . . . . . . . 8 (((𝜑 ∧ 𝑎 ∈ ω) ∧ 𝑏 ∈ (𝐾‘𝑎)) → 𝑏 ∈ 𝐺)
23 eleq1w 2847 . . . . . . . . . . . . 13 (𝑡 = 𝑏 → (𝑡 ∈ (𝐾‘𝑠) ↔ 𝑏 ∈ (𝐾‘𝑠)))
2423anbi2d 642 . . . . . . . . . . . 12 (𝑡 = 𝑏 → ((𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾‘𝑠)) ↔ (𝑠 ∈ ω ∧ 𝑏 ∈ (𝐾‘𝑠))))
2524iotabidv 6538 . . . . . . . . . . 11 (𝑡 = 𝑏 → (℩𝑠(𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾‘𝑠))) = (℩𝑠(𝑠 ∈ ω ∧ 𝑏 ∈ (𝐾‘𝑠))))
26 iotaex 6530 . . . . . . . . . . 11 (℩𝑠(𝑠 ∈ ω ∧ 𝑡 ∈ (𝐾‘𝑠))) ∈ V
2725, 1, 26fvmpt3i 7019 . . . . . . . . . 10 (𝑏 ∈ 𝐺 → (𝐿‘𝑏) = (℩𝑠(𝑠 ∈ ω ∧ 𝑏 ∈ (𝐾‘𝑠))))
2822, 27syl 18 . . . . . . . . 9 (((𝜑 ∧ 𝑎 ∈ ω) ∧ 𝑏 ∈ (𝐾‘𝑎)) → (𝐿‘𝑏) = (℩𝑠(𝑠 ∈ ω ∧ 𝑏 ∈ (𝐾‘𝑠))))
29 simp1r 1217 . . . . . . . . . . . . . . . 16 (((𝜑 ∧ 𝑏 ∈ (𝐾‘𝑎)) ∧ 𝑎 ∈ ω ∧ 𝑠 ∈ ω) → 𝑏 ∈ (𝐾‘𝑎))
30 simpl1 1210 . . . . . . . . . . . . . . . . . . . . . 22 (((𝜑 ∧ 𝑎 ∈ ω ∧ 𝑠 ∈ ω) ∧ 𝑠 ≠ 𝑎) → 𝜑)
31 simpr 490 . . . . . . . . . . . . . . . . . . . . . . 23 (((𝜑 ∧ 𝑎 ∈ ω ∧ 𝑠 ∈ ω) ∧ 𝑠 ≠ 𝑎) → 𝑠 ≠ 𝑎)
3231necomd 3014 . . . . . . . . . . . . . . . . . . . . . 22 (((𝜑 ∧ 𝑎 ∈ ω ∧ 𝑠 ∈ ω) ∧ 𝑠 ≠ 𝑎) → 𝑎 ≠ 𝑠)
33 simpl2 1211 . . . . . . . . . . . . . . . . . . . . . 22 (((𝜑 ∧ 𝑎 ∈ ω ∧ 𝑠 ∈ ω) ∧ 𝑠 ≠ 𝑎) → 𝑎 ∈ ω)
34 simpl3 1212 . . . . . . . . . . . . . . . . . . . . . 22 (((𝜑 ∧ 𝑎 ∈ ω ∧ 𝑠 ∈ ω) ∧ 𝑠 ≠ 𝑎) → 𝑠 ∈ ω)
3512, 13, 14, 15, 16, 17isf32lem7 10461 . . . . . . . . . . . . . . . . . . . . . 22 (((𝜑 ∧ 𝑎 ≠ 𝑠) ∧ (𝑎 ∈ ω ∧ 𝑠 ∈ ω)) → ((𝐾‘𝑎) ∩ (𝐾‘𝑠)) = ∅)
3630, 32, 33, 34, 35syl22anc 852 . . . . . . . . . . . . . . . . . . . . 21 (((𝜑 ∧ 𝑎 ∈ ω ∧ 𝑠 ∈ ω) ∧ 𝑠 ≠ 𝑎) → ((𝐾‘𝑎) ∩ (𝐾‘𝑠)) = ∅)
37 disj1 4408 . . . . . . . . . . . . . . . . . . . . 21 (((𝐾‘𝑎) ∩ (𝐾‘𝑠)) = ∅ ↔ ∀𝑏(𝑏 ∈ (𝐾‘𝑎) → ¬ 𝑏 ∈ (𝐾‘𝑠)))
3836, 37sylib 221 . . . . . . . . . . . . . . . . . . . 20 (((𝜑 ∧ 𝑎 ∈ ω ∧ 𝑠 ∈ ω) ∧ 𝑠 ≠ 𝑎) → ∀𝑏(𝑏 ∈ (𝐾‘𝑎) → ¬ 𝑏 ∈ (𝐾‘𝑠)))
3938ex 418 . . . . . . . . . . . . . . . . . . 19 ((𝜑 ∧ 𝑎 ∈ ω ∧ 𝑠 ∈ ω) → (𝑠 ≠ 𝑎 → ∀𝑏(𝑏 ∈ (𝐾‘𝑎) → ¬ 𝑏 ∈ (𝐾‘𝑠))))
40 sp 2223 . . . . . . . . . . . . . . . . . . 19 (∀𝑏(𝑏 ∈ (𝐾‘𝑎) → ¬ 𝑏 ∈ (𝐾‘𝑠)) → (𝑏 ∈ (𝐾‘𝑎) → ¬ 𝑏 ∈ (𝐾‘𝑠)))
4139, 40syl6 36 . . . . . . . . . . . . . . . . . 18 ((𝜑 ∧ 𝑎 ∈ ω ∧ 𝑠 ∈ ω) → (𝑠 ≠ 𝑎 → (𝑏 ∈ (𝐾‘𝑎) → ¬ 𝑏 ∈ (𝐾‘𝑠))))
4241com23 87 . . . . . . . . . . . . . . . . 17 ((𝜑 ∧ 𝑎 ∈ ω ∧ 𝑠 ∈ ω) → (𝑏 ∈ (𝐾‘𝑎) → (𝑠 ≠ 𝑎 → ¬ 𝑏 ∈ (𝐾‘𝑠))))
43423adant1r 1196 . . . . . . . . . . . . . . . 16 (((𝜑 ∧ 𝑏 ∈ (𝐾‘𝑎)) ∧ 𝑎 ∈ ω ∧ 𝑠 ∈ ω) → (𝑏 ∈ (𝐾‘𝑎) → (𝑠 ≠ 𝑎 → ¬ 𝑏 ∈ (𝐾‘𝑠))))
4429, 43mpd 16 . . . . . . . . . . . . . . 15 (((𝜑 ∧ 𝑏 ∈ (𝐾‘𝑎)) ∧ 𝑎 ∈ ω ∧ 𝑠 ∈ ω) → (𝑠 ≠ 𝑎 → ¬ 𝑏 ∈ (𝐾‘𝑠)))
4544necon4ad 2978 . . . . . . . . . . . . . 14 (((𝜑 ∧ 𝑏 ∈ (𝐾‘𝑎)) ∧ 𝑎 ∈ ω ∧ 𝑠 ∈ ω) → (𝑏 ∈ (𝐾‘𝑠) → 𝑠 = 𝑎))
46453expia 1139 . . . . . . . . . . . . 13 (((𝜑 ∧ 𝑏 ∈ (𝐾‘𝑎)) ∧ 𝑎 ∈ ω) → (𝑠 ∈ ω → (𝑏 ∈ (𝐾‘𝑠) → 𝑠 = 𝑎)))
4746impd 416 . . . . . . . . . . . 12 (((𝜑 ∧ 𝑏 ∈ (𝐾‘𝑎)) ∧ 𝑎 ∈ ω) → ((𝑠 ∈ ω ∧ 𝑏 ∈ (𝐾‘𝑠)) → 𝑠 = 𝑎))
48 eleq1w 2847 . . . . . . . . . . . . . . . 16 (𝑠 = 𝑎 → (𝑠 ∈ ω ↔ 𝑎 ∈ ω))
49 fveq2 6905 . . . . . . . . . . . . . . . . 17 (𝑠 = 𝑎 → (𝐾‘𝑠) = (𝐾‘𝑎))
5049eleq2d 2850 . . . . . . . . . . . . . . . 16 (𝑠 = 𝑎 → (𝑏 ∈ (𝐾‘𝑠) ↔ 𝑏 ∈ (𝐾‘𝑎)))
5148, 50anbi12d 644 . . . . . . . . . . . . . . 15 (𝑠 = 𝑎 → ((𝑠 ∈ ω ∧ 𝑏 ∈ (𝐾‘𝑠)) ↔ (𝑎 ∈ ω ∧ 𝑏 ∈ (𝐾‘𝑎))))
5251biimprcd 253 . . . . . . . . . . . . . 14 ((𝑎 ∈ ω ∧ 𝑏 ∈ (𝐾‘𝑎)) → (𝑠 = 𝑎 → (𝑠 ∈ ω ∧ 𝑏 ∈ (𝐾‘𝑠))))
5352ancoms 464 . . . . . . . . . . . . 13 ((𝑏 ∈ (𝐾‘𝑎) ∧ 𝑎 ∈ ω) → (𝑠 = 𝑎 → (𝑠 ∈ ω ∧ 𝑏 ∈ (𝐾‘𝑠))))
5453adantll 727 . . . . . . . . . . . 12 (((𝜑 ∧ 𝑏 ∈ (𝐾‘𝑎)) ∧ 𝑎 ∈ ω) → (𝑠 = 𝑎 → (𝑠 ∈ ω ∧ 𝑏 ∈ (𝐾‘𝑠))))
5547, 54impbid 215 . . . . . . . . . . 11 (((𝜑 ∧ 𝑏 ∈ (𝐾‘𝑎)) ∧ 𝑎 ∈ ω) → ((𝑠 ∈ ω ∧ 𝑏 ∈ (𝐾‘𝑠)) ↔ 𝑠 = 𝑎))
5655iota5 6537 . . . . . . . . . 10 (((𝜑 ∧ 𝑏 ∈ (𝐾‘𝑎)) ∧ 𝑎 ∈ ω) → (℩𝑠(𝑠 ∈ ω ∧ 𝑏 ∈ (𝐾‘𝑠))) = 𝑎)
5756an32s 665 . . . . . . . . 9 (((𝜑 ∧ 𝑎 ∈ ω) ∧ 𝑏 ∈ (𝐾‘𝑎)) → (℩𝑠(𝑠 ∈ ω ∧ 𝑏 ∈ (𝐾‘𝑠))) = 𝑎)
5828, 57eqtr2d 2799 . . . . . . . 8 (((𝜑 ∧ 𝑎 ∈ ω) ∧ 𝑏 ∈ (𝐾‘𝑎)) → 𝑎 = (𝐿‘𝑏))
5922, 58jca 521 . . . . . . 7 (((𝜑 ∧ 𝑎 ∈ ω) ∧ 𝑏 ∈ (𝐾‘𝑎)) → (𝑏 ∈ 𝐺 ∧ 𝑎 = (𝐿‘𝑏)))
6059ex 418 . . . . . 6 ((𝜑 ∧ 𝑎 ∈ ω) → (𝑏 ∈ (𝐾‘𝑎) → (𝑏 ∈ 𝐺 ∧ 𝑎 = (𝐿‘𝑏))))
6160eximdv 1952 . . . . 5 ((𝜑 ∧ 𝑎 ∈ ω) → (∃𝑏 𝑏 ∈ (𝐾‘𝑎) → ∃𝑏(𝑏 ∈ 𝐺 ∧ 𝑎 = (𝐿‘𝑏))))
62 df-rex 3091 . . . . 5 (∃𝑏 ∈ 𝐺 𝑎 = (𝐿‘𝑏) ↔ ∃𝑏(𝑏 ∈ 𝐺 ∧ 𝑎 = (𝐿‘𝑏)))
6361, 62imbitrrdi 255 . . . 4 ((𝜑 ∧ 𝑎 ∈ ω) → (∃𝑏 𝑏 ∈ (𝐾‘𝑎) → ∃𝑏 ∈ 𝐺 𝑎 = (𝐿‘𝑏)))
6420, 63mpd 16 . . 3 ((𝜑 ∧ 𝑎 ∈ ω) → ∃𝑏 ∈ 𝐺 𝑎 = (𝐿‘𝑏))
6564ralrimiva 3158 . 2 (𝜑 → ∀𝑎 ∈ ω ∃𝑏 ∈ 𝐺 𝑎 = (𝐿‘𝑏))
66 dffo3 7123 . 2 (𝐿:𝐺⟶ontoω ↔ (𝐿:𝐺⟶ω ∧ ∀𝑎 ∈ ω ∃𝑏 ∈ 𝐺 𝑎 = (𝐿‘𝑏)))
6711, 65, 66sylanbrc 595 1 (𝜑 → 𝐿:𝐺⟶ontoω)
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  ¬ wn 3   → wi 4   ∧ wa 401   ∧ w3a 1103  ∀wal 1568   = wceq 1570  ∃wex 1812   ∈ wcel 2147  ∃!weu 2596  {cab 2741   ≠ wne 2959  ∀wral 3080  ∃wrex 3090  {crab 3416   ⊆ wss 3900   ⊊ wpss 4016   ∖ cdif 4048   ∩ cin 4092  ∅c0 4281  𝒫 cpw 4560  ∩ cint 4910   class class class wbr 5106   ↦ cmpt 5189  ran crn 5656   ∘ ccom 5659  suc csuc 6379  ℩cio 6507  ⟶wf 6551  ⟶ontowfo 6553  ‘cfv 6555  ℩crio 7396  ωcom 7898   ≈ cen 8995
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 7772
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3or 1104  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-pss 4017  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-tr 5216  df-id 5550  df-eprel 5555  df-po 5563  df-so 5564  df-fr 5608  df-se 5609  df-we 5610  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-pred 6319  df-ord 6380  df-on 6381  df-lim 6382  df-suc 6383  df-iota 6509  df-fun 6557  df-fn 6558  df-f 6559  df-f1 6560  df-fo 6561  df-f1o 6562  df-fv 6563  df-isom 6564  df-riota 7397  df-ov 7443  df-om 7899  df-2nd 8023  df-frecs 8324  df-wrecs 8355  df-recs 8404  df-1o 8501  df-er 8742  df-en 8999  df-dom 9000  df-sdom 9001  df-fin 9002  df-card 10044
This theorem is used by:  isf32lem10  10464
  Copyright terms: Public domain W3C validator