This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: Lemma for isfin3-2 . Construction of the onto function. (Contributed by Stefan O'Rear, 5-Nov-2014) (Revised by Mario Carneiro, 2-Oct-2015)
| Ref | Expression | ||
|---|---|---|---|
| Hypotheses | isf32lem.a | ⊢ ( 𝜑 → 𝐹 : ω ⟶ 𝒫 𝐺 ) | |
| isf32lem.b | ⊢ ( 𝜑 → ∀ 𝑥 ∈ ω ( 𝐹 ‘ suc 𝑥 ) ⊆ ( 𝐹 ‘ 𝑥 ) ) | ||
| isf32lem.c | ⊢ ( 𝜑 → ¬ ∩ ran 𝐹 ∈ ran 𝐹 ) | ||
| isf32lem.d | ⊢ 𝑆 = { 𝑦 ∈ ω ∣ ( 𝐹 ‘ suc 𝑦 ) ⊊ ( 𝐹 ‘ 𝑦 ) } | ||
| isf32lem.e | ⊢ 𝐽 = ( 𝑢 ∈ ω ↦ ( ℩ 𝑣 ∈ 𝑆 ( 𝑣 ∩ 𝑆 ) ≈ 𝑢 ) ) | ||
| isf32lem.f | ⊢ 𝐾 = ( ( 𝑤 ∈ 𝑆 ↦ ( ( 𝐹 ‘ 𝑤 ) ∖ ( 𝐹 ‘ suc 𝑤 ) ) ) ∘ 𝐽 ) | ||
| isf32lem.g | ⊢ 𝐿 = ( 𝑡 ∈ 𝐺 ↦ ( ℩ 𝑠 ( 𝑠 ∈ ω ∧ 𝑡 ∈ ( 𝐾 ‘ 𝑠 ) ) ) ) | ||
| Assertion | isf32lem9 | ⊢ ( 𝜑 → 𝐿 : 𝐺 –onto→ ω ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | isf32lem.a | ⊢ ( 𝜑 → 𝐹 : ω ⟶ 𝒫 𝐺 ) | |
| 2 | isf32lem.b | ⊢ ( 𝜑 → ∀ 𝑥 ∈ ω ( 𝐹 ‘ suc 𝑥 ) ⊆ ( 𝐹 ‘ 𝑥 ) ) | |
| 3 | isf32lem.c | ⊢ ( 𝜑 → ¬ ∩ ran 𝐹 ∈ ran 𝐹 ) | |
| 4 | isf32lem.d | ⊢ 𝑆 = { 𝑦 ∈ ω ∣ ( 𝐹 ‘ suc 𝑦 ) ⊊ ( 𝐹 ‘ 𝑦 ) } | |
| 5 | isf32lem.e | ⊢ 𝐽 = ( 𝑢 ∈ ω ↦ ( ℩ 𝑣 ∈ 𝑆 ( 𝑣 ∩ 𝑆 ) ≈ 𝑢 ) ) | |
| 6 | isf32lem.f | ⊢ 𝐾 = ( ( 𝑤 ∈ 𝑆 ↦ ( ( 𝐹 ‘ 𝑤 ) ∖ ( 𝐹 ‘ suc 𝑤 ) ) ) ∘ 𝐽 ) | |
| 7 | isf32lem.g | ⊢ 𝐿 = ( 𝑡 ∈ 𝐺 ↦ ( ℩ 𝑠 ( 𝑠 ∈ ω ∧ 𝑡 ∈ ( 𝐾 ‘ 𝑠 ) ) ) ) | |
| 8 | ssab2 | ⊢ { 𝑠 ∣ ( 𝑠 ∈ ω ∧ 𝑡 ∈ ( 𝐾 ‘ 𝑠 ) ) } ⊆ ω | |
| 9 | iotacl | ⊢ ( ∃! 𝑠 ( 𝑠 ∈ ω ∧ 𝑡 ∈ ( 𝐾 ‘ 𝑠 ) ) → ( ℩ 𝑠 ( 𝑠 ∈ ω ∧ 𝑡 ∈ ( 𝐾 ‘ 𝑠 ) ) ) ∈ { 𝑠 ∣ ( 𝑠 ∈ ω ∧ 𝑡 ∈ ( 𝐾 ‘ 𝑠 ) ) } ) | |
| 10 | 8 9 | sselid | ⊢ ( ∃! 𝑠 ( 𝑠 ∈ ω ∧ 𝑡 ∈ ( 𝐾 ‘ 𝑠 ) ) → ( ℩ 𝑠 ( 𝑠 ∈ ω ∧ 𝑡 ∈ ( 𝐾 ‘ 𝑠 ) ) ) ∈ ω ) |
| 11 | iotanul | ⊢ ( ¬ ∃! 𝑠 ( 𝑠 ∈ ω ∧ 𝑡 ∈ ( 𝐾 ‘ 𝑠 ) ) → ( ℩ 𝑠 ( 𝑠 ∈ ω ∧ 𝑡 ∈ ( 𝐾 ‘ 𝑠 ) ) ) = ∅ ) | |
| 12 | peano1 | ⊢ ∅ ∈ ω | |
| 13 | 11 12 | eqeltrdi | ⊢ ( ¬ ∃! 𝑠 ( 𝑠 ∈ ω ∧ 𝑡 ∈ ( 𝐾 ‘ 𝑠 ) ) → ( ℩ 𝑠 ( 𝑠 ∈ ω ∧ 𝑡 ∈ ( 𝐾 ‘ 𝑠 ) ) ) ∈ ω ) |
| 14 | 10 13 | pm2.61i | ⊢ ( ℩ 𝑠 ( 𝑠 ∈ ω ∧ 𝑡 ∈ ( 𝐾 ‘ 𝑠 ) ) ) ∈ ω |
| 15 | 14 | a1i | ⊢ ( 𝑡 ∈ 𝐺 → ( ℩ 𝑠 ( 𝑠 ∈ ω ∧ 𝑡 ∈ ( 𝐾 ‘ 𝑠 ) ) ) ∈ ω ) |
| 16 | 7 15 | fmpti | ⊢ 𝐿 : 𝐺 ⟶ ω |
| 17 | 16 | a1i | ⊢ ( 𝜑 → 𝐿 : 𝐺 ⟶ ω ) |
| 18 | 1 2 3 4 5 6 | isf32lem6 | ⊢ ( ( 𝜑 ∧ 𝑎 ∈ ω ) → ( 𝐾 ‘ 𝑎 ) ≠ ∅ ) |
| 19 | n0 | ⊢ ( ( 𝐾 ‘ 𝑎 ) ≠ ∅ ↔ ∃ 𝑏 𝑏 ∈ ( 𝐾 ‘ 𝑎 ) ) | |
| 20 | 18 19 | sylib | ⊢ ( ( 𝜑 ∧ 𝑎 ∈ ω ) → ∃ 𝑏 𝑏 ∈ ( 𝐾 ‘ 𝑎 ) ) |
| 21 | 1 2 3 4 5 6 | isf32lem8 | ⊢ ( ( 𝜑 ∧ 𝑎 ∈ ω ) → ( 𝐾 ‘ 𝑎 ) ⊆ 𝐺 ) |
| 22 | 21 | sselda | ⊢ ( ( ( 𝜑 ∧ 𝑎 ∈ ω ) ∧ 𝑏 ∈ ( 𝐾 ‘ 𝑎 ) ) → 𝑏 ∈ 𝐺 ) |
| 23 | eleq1w | ⊢ ( 𝑡 = 𝑏 → ( 𝑡 ∈ ( 𝐾 ‘ 𝑠 ) ↔ 𝑏 ∈ ( 𝐾 ‘ 𝑠 ) ) ) | |
| 24 | 23 | anbi2d | ⊢ ( 𝑡 = 𝑏 → ( ( 𝑠 ∈ ω ∧ 𝑡 ∈ ( 𝐾 ‘ 𝑠 ) ) ↔ ( 𝑠 ∈ ω ∧ 𝑏 ∈ ( 𝐾 ‘ 𝑠 ) ) ) ) |
| 25 | 24 | iotabidv | ⊢ ( 𝑡 = 𝑏 → ( ℩ 𝑠 ( 𝑠 ∈ ω ∧ 𝑡 ∈ ( 𝐾 ‘ 𝑠 ) ) ) = ( ℩ 𝑠 ( 𝑠 ∈ ω ∧ 𝑏 ∈ ( 𝐾 ‘ 𝑠 ) ) ) ) |
| 26 | iotaex | ⊢ ( ℩ 𝑠 ( 𝑠 ∈ ω ∧ 𝑡 ∈ ( 𝐾 ‘ 𝑠 ) ) ) ∈ V | |
| 27 | 25 7 26 | fvmpt3i | ⊢ ( 𝑏 ∈ 𝐺 → ( 𝐿 ‘ 𝑏 ) = ( ℩ 𝑠 ( 𝑠 ∈ ω ∧ 𝑏 ∈ ( 𝐾 ‘ 𝑠 ) ) ) ) |
| 28 | 22 27 | syl | ⊢ ( ( ( 𝜑 ∧ 𝑎 ∈ ω ) ∧ 𝑏 ∈ ( 𝐾 ‘ 𝑎 ) ) → ( 𝐿 ‘ 𝑏 ) = ( ℩ 𝑠 ( 𝑠 ∈ ω ∧ 𝑏 ∈ ( 𝐾 ‘ 𝑠 ) ) ) ) |
| 29 | simp1r | ⊢ ( ( ( 𝜑 ∧ 𝑏 ∈ ( 𝐾 ‘ 𝑎 ) ) ∧ 𝑎 ∈ ω ∧ 𝑠 ∈ ω ) → 𝑏 ∈ ( 𝐾 ‘ 𝑎 ) ) | |
| 30 | simpl1 | ⊢ ( ( ( 𝜑 ∧ 𝑎 ∈ ω ∧ 𝑠 ∈ ω ) ∧ 𝑠 ≠ 𝑎 ) → 𝜑 ) | |
| 31 | simpr | ⊢ ( ( ( 𝜑 ∧ 𝑎 ∈ ω ∧ 𝑠 ∈ ω ) ∧ 𝑠 ≠ 𝑎 ) → 𝑠 ≠ 𝑎 ) | |
| 32 | 31 | necomd | ⊢ ( ( ( 𝜑 ∧ 𝑎 ∈ ω ∧ 𝑠 ∈ ω ) ∧ 𝑠 ≠ 𝑎 ) → 𝑎 ≠ 𝑠 ) |
| 33 | simpl2 | ⊢ ( ( ( 𝜑 ∧ 𝑎 ∈ ω ∧ 𝑠 ∈ ω ) ∧ 𝑠 ≠ 𝑎 ) → 𝑎 ∈ ω ) | |
| 34 | simpl3 | ⊢ ( ( ( 𝜑 ∧ 𝑎 ∈ ω ∧ 𝑠 ∈ ω ) ∧ 𝑠 ≠ 𝑎 ) → 𝑠 ∈ ω ) | |
| 35 | 1 2 3 4 5 6 | isf32lem7 | ⊢ ( ( ( 𝜑 ∧ 𝑎 ≠ 𝑠 ) ∧ ( 𝑎 ∈ ω ∧ 𝑠 ∈ ω ) ) → ( ( 𝐾 ‘ 𝑎 ) ∩ ( 𝐾 ‘ 𝑠 ) ) = ∅ ) |
| 36 | 30 32 33 34 35 | syl22anc | ⊢ ( ( ( 𝜑 ∧ 𝑎 ∈ ω ∧ 𝑠 ∈ ω ) ∧ 𝑠 ≠ 𝑎 ) → ( ( 𝐾 ‘ 𝑎 ) ∩ ( 𝐾 ‘ 𝑠 ) ) = ∅ ) |
| 37 | disj1 | ⊢ ( ( ( 𝐾 ‘ 𝑎 ) ∩ ( 𝐾 ‘ 𝑠 ) ) = ∅ ↔ ∀ 𝑏 ( 𝑏 ∈ ( 𝐾 ‘ 𝑎 ) → ¬ 𝑏 ∈ ( 𝐾 ‘ 𝑠 ) ) ) | |
| 38 | 36 37 | sylib | ⊢ ( ( ( 𝜑 ∧ 𝑎 ∈ ω ∧ 𝑠 ∈ ω ) ∧ 𝑠 ≠ 𝑎 ) → ∀ 𝑏 ( 𝑏 ∈ ( 𝐾 ‘ 𝑎 ) → ¬ 𝑏 ∈ ( 𝐾 ‘ 𝑠 ) ) ) |
| 39 | 38 | ex | ⊢ ( ( 𝜑 ∧ 𝑎 ∈ ω ∧ 𝑠 ∈ ω ) → ( 𝑠 ≠ 𝑎 → ∀ 𝑏 ( 𝑏 ∈ ( 𝐾 ‘ 𝑎 ) → ¬ 𝑏 ∈ ( 𝐾 ‘ 𝑠 ) ) ) ) |
| 40 | sp | ⊢ ( ∀ 𝑏 ( 𝑏 ∈ ( 𝐾 ‘ 𝑎 ) → ¬ 𝑏 ∈ ( 𝐾 ‘ 𝑠 ) ) → ( 𝑏 ∈ ( 𝐾 ‘ 𝑎 ) → ¬ 𝑏 ∈ ( 𝐾 ‘ 𝑠 ) ) ) | |
| 41 | 39 40 | syl6 | ⊢ ( ( 𝜑 ∧ 𝑎 ∈ ω ∧ 𝑠 ∈ ω ) → ( 𝑠 ≠ 𝑎 → ( 𝑏 ∈ ( 𝐾 ‘ 𝑎 ) → ¬ 𝑏 ∈ ( 𝐾 ‘ 𝑠 ) ) ) ) |
| 42 | 41 | com23 | ⊢ ( ( 𝜑 ∧ 𝑎 ∈ ω ∧ 𝑠 ∈ ω ) → ( 𝑏 ∈ ( 𝐾 ‘ 𝑎 ) → ( 𝑠 ≠ 𝑎 → ¬ 𝑏 ∈ ( 𝐾 ‘ 𝑠 ) ) ) ) |
| 43 | 42 | 3adant1r | ⊢ ( ( ( 𝜑 ∧ 𝑏 ∈ ( 𝐾 ‘ 𝑎 ) ) ∧ 𝑎 ∈ ω ∧ 𝑠 ∈ ω ) → ( 𝑏 ∈ ( 𝐾 ‘ 𝑎 ) → ( 𝑠 ≠ 𝑎 → ¬ 𝑏 ∈ ( 𝐾 ‘ 𝑠 ) ) ) ) |
| 44 | 29 43 | mpd | ⊢ ( ( ( 𝜑 ∧ 𝑏 ∈ ( 𝐾 ‘ 𝑎 ) ) ∧ 𝑎 ∈ ω ∧ 𝑠 ∈ ω ) → ( 𝑠 ≠ 𝑎 → ¬ 𝑏 ∈ ( 𝐾 ‘ 𝑠 ) ) ) |
| 45 | 44 | necon4ad | ⊢ ( ( ( 𝜑 ∧ 𝑏 ∈ ( 𝐾 ‘ 𝑎 ) ) ∧ 𝑎 ∈ ω ∧ 𝑠 ∈ ω ) → ( 𝑏 ∈ ( 𝐾 ‘ 𝑠 ) → 𝑠 = 𝑎 ) ) |
| 46 | 45 | 3expia | ⊢ ( ( ( 𝜑 ∧ 𝑏 ∈ ( 𝐾 ‘ 𝑎 ) ) ∧ 𝑎 ∈ ω ) → ( 𝑠 ∈ ω → ( 𝑏 ∈ ( 𝐾 ‘ 𝑠 ) → 𝑠 = 𝑎 ) ) ) |
| 47 | 46 | impd | ⊢ ( ( ( 𝜑 ∧ 𝑏 ∈ ( 𝐾 ‘ 𝑎 ) ) ∧ 𝑎 ∈ ω ) → ( ( 𝑠 ∈ ω ∧ 𝑏 ∈ ( 𝐾 ‘ 𝑠 ) ) → 𝑠 = 𝑎 ) ) |
| 48 | eleq1w | ⊢ ( 𝑠 = 𝑎 → ( 𝑠 ∈ ω ↔ 𝑎 ∈ ω ) ) | |
| 49 | fveq2 | ⊢ ( 𝑠 = 𝑎 → ( 𝐾 ‘ 𝑠 ) = ( 𝐾 ‘ 𝑎 ) ) | |
| 50 | 49 | eleq2d | ⊢ ( 𝑠 = 𝑎 → ( 𝑏 ∈ ( 𝐾 ‘ 𝑠 ) ↔ 𝑏 ∈ ( 𝐾 ‘ 𝑎 ) ) ) |
| 51 | 48 50 | anbi12d | ⊢ ( 𝑠 = 𝑎 → ( ( 𝑠 ∈ ω ∧ 𝑏 ∈ ( 𝐾 ‘ 𝑠 ) ) ↔ ( 𝑎 ∈ ω ∧ 𝑏 ∈ ( 𝐾 ‘ 𝑎 ) ) ) ) |
| 52 | 51 | biimprcd | ⊢ ( ( 𝑎 ∈ ω ∧ 𝑏 ∈ ( 𝐾 ‘ 𝑎 ) ) → ( 𝑠 = 𝑎 → ( 𝑠 ∈ ω ∧ 𝑏 ∈ ( 𝐾 ‘ 𝑠 ) ) ) ) |
| 53 | 52 | ancoms | ⊢ ( ( 𝑏 ∈ ( 𝐾 ‘ 𝑎 ) ∧ 𝑎 ∈ ω ) → ( 𝑠 = 𝑎 → ( 𝑠 ∈ ω ∧ 𝑏 ∈ ( 𝐾 ‘ 𝑠 ) ) ) ) |
| 54 | 53 | adantll | ⊢ ( ( ( 𝜑 ∧ 𝑏 ∈ ( 𝐾 ‘ 𝑎 ) ) ∧ 𝑎 ∈ ω ) → ( 𝑠 = 𝑎 → ( 𝑠 ∈ ω ∧ 𝑏 ∈ ( 𝐾 ‘ 𝑠 ) ) ) ) |
| 55 | 47 54 | impbid | ⊢ ( ( ( 𝜑 ∧ 𝑏 ∈ ( 𝐾 ‘ 𝑎 ) ) ∧ 𝑎 ∈ ω ) → ( ( 𝑠 ∈ ω ∧ 𝑏 ∈ ( 𝐾 ‘ 𝑠 ) ) ↔ 𝑠 = 𝑎 ) ) |
| 56 | 55 | iota5 | ⊢ ( ( ( 𝜑 ∧ 𝑏 ∈ ( 𝐾 ‘ 𝑎 ) ) ∧ 𝑎 ∈ ω ) → ( ℩ 𝑠 ( 𝑠 ∈ ω ∧ 𝑏 ∈ ( 𝐾 ‘ 𝑠 ) ) ) = 𝑎 ) |
| 57 | 56 | an32s | ⊢ ( ( ( 𝜑 ∧ 𝑎 ∈ ω ) ∧ 𝑏 ∈ ( 𝐾 ‘ 𝑎 ) ) → ( ℩ 𝑠 ( 𝑠 ∈ ω ∧ 𝑏 ∈ ( 𝐾 ‘ 𝑠 ) ) ) = 𝑎 ) |
| 58 | 28 57 | eqtr2d | ⊢ ( ( ( 𝜑 ∧ 𝑎 ∈ ω ) ∧ 𝑏 ∈ ( 𝐾 ‘ 𝑎 ) ) → 𝑎 = ( 𝐿 ‘ 𝑏 ) ) |
| 59 | 22 58 | jca | ⊢ ( ( ( 𝜑 ∧ 𝑎 ∈ ω ) ∧ 𝑏 ∈ ( 𝐾 ‘ 𝑎 ) ) → ( 𝑏 ∈ 𝐺 ∧ 𝑎 = ( 𝐿 ‘ 𝑏 ) ) ) |
| 60 | 59 | ex | ⊢ ( ( 𝜑 ∧ 𝑎 ∈ ω ) → ( 𝑏 ∈ ( 𝐾 ‘ 𝑎 ) → ( 𝑏 ∈ 𝐺 ∧ 𝑎 = ( 𝐿 ‘ 𝑏 ) ) ) ) |
| 61 | 60 | eximdv | ⊢ ( ( 𝜑 ∧ 𝑎 ∈ ω ) → ( ∃ 𝑏 𝑏 ∈ ( 𝐾 ‘ 𝑎 ) → ∃ 𝑏 ( 𝑏 ∈ 𝐺 ∧ 𝑎 = ( 𝐿 ‘ 𝑏 ) ) ) ) |
| 62 | df-rex | ⊢ ( ∃ 𝑏 ∈ 𝐺 𝑎 = ( 𝐿 ‘ 𝑏 ) ↔ ∃ 𝑏 ( 𝑏 ∈ 𝐺 ∧ 𝑎 = ( 𝐿 ‘ 𝑏 ) ) ) | |
| 63 | 61 62 | imbitrrdi | ⊢ ( ( 𝜑 ∧ 𝑎 ∈ ω ) → ( ∃ 𝑏 𝑏 ∈ ( 𝐾 ‘ 𝑎 ) → ∃ 𝑏 ∈ 𝐺 𝑎 = ( 𝐿 ‘ 𝑏 ) ) ) |
| 64 | 20 63 | mpd | ⊢ ( ( 𝜑 ∧ 𝑎 ∈ ω ) → ∃ 𝑏 ∈ 𝐺 𝑎 = ( 𝐿 ‘ 𝑏 ) ) |
| 65 | 64 | ralrimiva | ⊢ ( 𝜑 → ∀ 𝑎 ∈ ω ∃ 𝑏 ∈ 𝐺 𝑎 = ( 𝐿 ‘ 𝑏 ) ) |
| 66 | dffo3 | ⊢ ( 𝐿 : 𝐺 –onto→ ω ↔ ( 𝐿 : 𝐺 ⟶ ω ∧ ∀ 𝑎 ∈ ω ∃ 𝑏 ∈ 𝐺 𝑎 = ( 𝐿 ‘ 𝑏 ) ) ) | |
| 67 | 17 65 66 | sylanbrc | ⊢ ( 𝜑 → 𝐿 : 𝐺 –onto→ ω ) |