| Step | Hyp | Ref
| Expression |
| 1 | | simp3 1138 |
. . 3
⊢ ((𝐹 Fn 𝐵 ∧ 𝐴 ⊆ ran 𝐹 ∧ 𝐴 ∈ Fin) → 𝐴 ∈ Fin) |
| 2 | | dfss3 3947 |
. . . . . 6
⊢ (𝐴 ⊆ ran 𝐹 ↔ ∀𝑥 ∈ 𝐴 𝑥 ∈ ran 𝐹) |
| 3 | | fvelrnb 6939 |
. . . . . . 7
⊢ (𝐹 Fn 𝐵 → (𝑥 ∈ ran 𝐹 ↔ ∃𝑦 ∈ 𝐵 (𝐹‘𝑦) = 𝑥)) |
| 4 | 3 | ralbidv 3163 |
. . . . . 6
⊢ (𝐹 Fn 𝐵 → (∀𝑥 ∈ 𝐴 𝑥 ∈ ran 𝐹 ↔ ∀𝑥 ∈ 𝐴 ∃𝑦 ∈ 𝐵 (𝐹‘𝑦) = 𝑥)) |
| 5 | 2, 4 | bitrid 283 |
. . . . 5
⊢ (𝐹 Fn 𝐵 → (𝐴 ⊆ ran 𝐹 ↔ ∀𝑥 ∈ 𝐴 ∃𝑦 ∈ 𝐵 (𝐹‘𝑦) = 𝑥)) |
| 6 | 5 | biimpa 476 |
. . . 4
⊢ ((𝐹 Fn 𝐵 ∧ 𝐴 ⊆ ran 𝐹) → ∀𝑥 ∈ 𝐴 ∃𝑦 ∈ 𝐵 (𝐹‘𝑦) = 𝑥) |
| 7 | 6 | 3adant3 1132 |
. . 3
⊢ ((𝐹 Fn 𝐵 ∧ 𝐴 ⊆ ran 𝐹 ∧ 𝐴 ∈ Fin) → ∀𝑥 ∈ 𝐴 ∃𝑦 ∈ 𝐵 (𝐹‘𝑦) = 𝑥) |
| 8 | | fveqeq2 6885 |
. . . 4
⊢ (𝑦 = (𝑓‘𝑥) → ((𝐹‘𝑦) = 𝑥 ↔ (𝐹‘(𝑓‘𝑥)) = 𝑥)) |
| 9 | 8 | ac6sfi 9292 |
. . 3
⊢ ((𝐴 ∈ Fin ∧ ∀𝑥 ∈ 𝐴 ∃𝑦 ∈ 𝐵 (𝐹‘𝑦) = 𝑥) → ∃𝑓(𝑓:𝐴⟶𝐵 ∧ ∀𝑥 ∈ 𝐴 (𝐹‘(𝑓‘𝑥)) = 𝑥)) |
| 10 | 1, 7, 9 | syl2anc 584 |
. 2
⊢ ((𝐹 Fn 𝐵 ∧ 𝐴 ⊆ ran 𝐹 ∧ 𝐴 ∈ Fin) → ∃𝑓(𝑓:𝐴⟶𝐵 ∧ ∀𝑥 ∈ 𝐴 (𝐹‘(𝑓‘𝑥)) = 𝑥)) |
| 11 | | fimass 6726 |
. . . . . 6
⊢ (𝑓:𝐴⟶𝐵 → (𝑓 “ 𝐴) ⊆ 𝐵) |
| 12 | | vex 3463 |
. . . . . . . 8
⊢ 𝑓 ∈ V |
| 13 | 12 | imaex 7910 |
. . . . . . 7
⊢ (𝑓 “ 𝐴) ∈ V |
| 14 | 13 | elpw 4579 |
. . . . . 6
⊢ ((𝑓 “ 𝐴) ∈ 𝒫 𝐵 ↔ (𝑓 “ 𝐴) ⊆ 𝐵) |
| 15 | 11, 14 | sylibr 234 |
. . . . 5
⊢ (𝑓:𝐴⟶𝐵 → (𝑓 “ 𝐴) ∈ 𝒫 𝐵) |
| 16 | 15 | ad2antrl 728 |
. . . 4
⊢ (((𝐹 Fn 𝐵 ∧ 𝐴 ⊆ ran 𝐹 ∧ 𝐴 ∈ Fin) ∧ (𝑓:𝐴⟶𝐵 ∧ ∀𝑥 ∈ 𝐴 (𝐹‘(𝑓‘𝑥)) = 𝑥)) → (𝑓 “ 𝐴) ∈ 𝒫 𝐵) |
| 17 | | ffun 6709 |
. . . . . 6
⊢ (𝑓:𝐴⟶𝐵 → Fun 𝑓) |
| 18 | 17 | ad2antrl 728 |
. . . . 5
⊢ (((𝐹 Fn 𝐵 ∧ 𝐴 ⊆ ran 𝐹 ∧ 𝐴 ∈ Fin) ∧ (𝑓:𝐴⟶𝐵 ∧ ∀𝑥 ∈ 𝐴 (𝐹‘(𝑓‘𝑥)) = 𝑥)) → Fun 𝑓) |
| 19 | | simpl3 1194 |
. . . . 5
⊢ (((𝐹 Fn 𝐵 ∧ 𝐴 ⊆ ran 𝐹 ∧ 𝐴 ∈ Fin) ∧ (𝑓:𝐴⟶𝐵 ∧ ∀𝑥 ∈ 𝐴 (𝐹‘(𝑓‘𝑥)) = 𝑥)) → 𝐴 ∈ Fin) |
| 20 | | imafi 9325 |
. . . . 5
⊢ ((Fun
𝑓 ∧ 𝐴 ∈ Fin) → (𝑓 “ 𝐴) ∈ Fin) |
| 21 | 18, 19, 20 | syl2anc 584 |
. . . 4
⊢ (((𝐹 Fn 𝐵 ∧ 𝐴 ⊆ ran 𝐹 ∧ 𝐴 ∈ Fin) ∧ (𝑓:𝐴⟶𝐵 ∧ ∀𝑥 ∈ 𝐴 (𝐹‘(𝑓‘𝑥)) = 𝑥)) → (𝑓 “ 𝐴) ∈ Fin) |
| 22 | 16, 21 | elind 4175 |
. . 3
⊢ (((𝐹 Fn 𝐵 ∧ 𝐴 ⊆ ran 𝐹 ∧ 𝐴 ∈ Fin) ∧ (𝑓:𝐴⟶𝐵 ∧ ∀𝑥 ∈ 𝐴 (𝐹‘(𝑓‘𝑥)) = 𝑥)) → (𝑓 “ 𝐴) ∈ (𝒫 𝐵 ∩ Fin)) |
| 23 | | fvco3 6978 |
. . . . . . . . . . 11
⊢ ((𝑓:𝐴⟶𝐵 ∧ 𝑥 ∈ 𝐴) → ((𝐹 ∘ 𝑓)‘𝑥) = (𝐹‘(𝑓‘𝑥))) |
| 24 | | fvresi 7165 |
. . . . . . . . . . . 12
⊢ (𝑥 ∈ 𝐴 → (( I ↾ 𝐴)‘𝑥) = 𝑥) |
| 25 | 24 | adantl 481 |
. . . . . . . . . . 11
⊢ ((𝑓:𝐴⟶𝐵 ∧ 𝑥 ∈ 𝐴) → (( I ↾ 𝐴)‘𝑥) = 𝑥) |
| 26 | 23, 25 | eqeq12d 2751 |
. . . . . . . . . 10
⊢ ((𝑓:𝐴⟶𝐵 ∧ 𝑥 ∈ 𝐴) → (((𝐹 ∘ 𝑓)‘𝑥) = (( I ↾ 𝐴)‘𝑥) ↔ (𝐹‘(𝑓‘𝑥)) = 𝑥)) |
| 27 | 26 | ralbidva 3161 |
. . . . . . . . 9
⊢ (𝑓:𝐴⟶𝐵 → (∀𝑥 ∈ 𝐴 ((𝐹 ∘ 𝑓)‘𝑥) = (( I ↾ 𝐴)‘𝑥) ↔ ∀𝑥 ∈ 𝐴 (𝐹‘(𝑓‘𝑥)) = 𝑥)) |
| 28 | 27 | biimprd 248 |
. . . . . . . 8
⊢ (𝑓:𝐴⟶𝐵 → (∀𝑥 ∈ 𝐴 (𝐹‘(𝑓‘𝑥)) = 𝑥 → ∀𝑥 ∈ 𝐴 ((𝐹 ∘ 𝑓)‘𝑥) = (( I ↾ 𝐴)‘𝑥))) |
| 29 | 28 | adantl 481 |
. . . . . . 7
⊢ (((𝐹 Fn 𝐵 ∧ 𝐴 ⊆ ran 𝐹 ∧ 𝐴 ∈ Fin) ∧ 𝑓:𝐴⟶𝐵) → (∀𝑥 ∈ 𝐴 (𝐹‘(𝑓‘𝑥)) = 𝑥 → ∀𝑥 ∈ 𝐴 ((𝐹 ∘ 𝑓)‘𝑥) = (( I ↾ 𝐴)‘𝑥))) |
| 30 | 29 | impr 454 |
. . . . . 6
⊢ (((𝐹 Fn 𝐵 ∧ 𝐴 ⊆ ran 𝐹 ∧ 𝐴 ∈ Fin) ∧ (𝑓:𝐴⟶𝐵 ∧ ∀𝑥 ∈ 𝐴 (𝐹‘(𝑓‘𝑥)) = 𝑥)) → ∀𝑥 ∈ 𝐴 ((𝐹 ∘ 𝑓)‘𝑥) = (( I ↾ 𝐴)‘𝑥)) |
| 31 | | simpl1 1192 |
. . . . . . . 8
⊢ (((𝐹 Fn 𝐵 ∧ 𝐴 ⊆ ran 𝐹 ∧ 𝐴 ∈ Fin) ∧ (𝑓:𝐴⟶𝐵 ∧ ∀𝑥 ∈ 𝐴 (𝐹‘(𝑓‘𝑥)) = 𝑥)) → 𝐹 Fn 𝐵) |
| 32 | | ffn 6706 |
. . . . . . . . 9
⊢ (𝑓:𝐴⟶𝐵 → 𝑓 Fn 𝐴) |
| 33 | 32 | ad2antrl 728 |
. . . . . . . 8
⊢ (((𝐹 Fn 𝐵 ∧ 𝐴 ⊆ ran 𝐹 ∧ 𝐴 ∈ Fin) ∧ (𝑓:𝐴⟶𝐵 ∧ ∀𝑥 ∈ 𝐴 (𝐹‘(𝑓‘𝑥)) = 𝑥)) → 𝑓 Fn 𝐴) |
| 34 | | frn 6713 |
. . . . . . . . 9
⊢ (𝑓:𝐴⟶𝐵 → ran 𝑓 ⊆ 𝐵) |
| 35 | 34 | ad2antrl 728 |
. . . . . . . 8
⊢ (((𝐹 Fn 𝐵 ∧ 𝐴 ⊆ ran 𝐹 ∧ 𝐴 ∈ Fin) ∧ (𝑓:𝐴⟶𝐵 ∧ ∀𝑥 ∈ 𝐴 (𝐹‘(𝑓‘𝑥)) = 𝑥)) → ran 𝑓 ⊆ 𝐵) |
| 36 | | fnco 6656 |
. . . . . . . 8
⊢ ((𝐹 Fn 𝐵 ∧ 𝑓 Fn 𝐴 ∧ ran 𝑓 ⊆ 𝐵) → (𝐹 ∘ 𝑓) Fn 𝐴) |
| 37 | 31, 33, 35, 36 | syl3anc 1373 |
. . . . . . 7
⊢ (((𝐹 Fn 𝐵 ∧ 𝐴 ⊆ ran 𝐹 ∧ 𝐴 ∈ Fin) ∧ (𝑓:𝐴⟶𝐵 ∧ ∀𝑥 ∈ 𝐴 (𝐹‘(𝑓‘𝑥)) = 𝑥)) → (𝐹 ∘ 𝑓) Fn 𝐴) |
| 38 | | fnresi 6667 |
. . . . . . 7
⊢ ( I
↾ 𝐴) Fn 𝐴 |
| 39 | | eqfnfv 7021 |
. . . . . . 7
⊢ (((𝐹 ∘ 𝑓) Fn 𝐴 ∧ ( I ↾ 𝐴) Fn 𝐴) → ((𝐹 ∘ 𝑓) = ( I ↾ 𝐴) ↔ ∀𝑥 ∈ 𝐴 ((𝐹 ∘ 𝑓)‘𝑥) = (( I ↾ 𝐴)‘𝑥))) |
| 40 | 37, 38, 39 | sylancl 586 |
. . . . . 6
⊢ (((𝐹 Fn 𝐵 ∧ 𝐴 ⊆ ran 𝐹 ∧ 𝐴 ∈ Fin) ∧ (𝑓:𝐴⟶𝐵 ∧ ∀𝑥 ∈ 𝐴 (𝐹‘(𝑓‘𝑥)) = 𝑥)) → ((𝐹 ∘ 𝑓) = ( I ↾ 𝐴) ↔ ∀𝑥 ∈ 𝐴 ((𝐹 ∘ 𝑓)‘𝑥) = (( I ↾ 𝐴)‘𝑥))) |
| 41 | 30, 40 | mpbird 257 |
. . . . 5
⊢ (((𝐹 Fn 𝐵 ∧ 𝐴 ⊆ ran 𝐹 ∧ 𝐴 ∈ Fin) ∧ (𝑓:𝐴⟶𝐵 ∧ ∀𝑥 ∈ 𝐴 (𝐹‘(𝑓‘𝑥)) = 𝑥)) → (𝐹 ∘ 𝑓) = ( I ↾ 𝐴)) |
| 42 | 41 | imaeq1d 6046 |
. . . 4
⊢ (((𝐹 Fn 𝐵 ∧ 𝐴 ⊆ ran 𝐹 ∧ 𝐴 ∈ Fin) ∧ (𝑓:𝐴⟶𝐵 ∧ ∀𝑥 ∈ 𝐴 (𝐹‘(𝑓‘𝑥)) = 𝑥)) → ((𝐹 ∘ 𝑓) “ 𝐴) = (( I ↾ 𝐴) “ 𝐴)) |
| 43 | | imaco 6240 |
. . . 4
⊢ ((𝐹 ∘ 𝑓) “ 𝐴) = (𝐹 “ (𝑓 “ 𝐴)) |
| 44 | | ssid 3981 |
. . . . 5
⊢ 𝐴 ⊆ 𝐴 |
| 45 | | resiima 6063 |
. . . . 5
⊢ (𝐴 ⊆ 𝐴 → (( I ↾ 𝐴) “ 𝐴) = 𝐴) |
| 46 | 44, 45 | ax-mp 5 |
. . . 4
⊢ (( I
↾ 𝐴) “ 𝐴) = 𝐴 |
| 47 | 42, 43, 46 | 3eqtr3g 2793 |
. . 3
⊢ (((𝐹 Fn 𝐵 ∧ 𝐴 ⊆ ran 𝐹 ∧ 𝐴 ∈ Fin) ∧ (𝑓:𝐴⟶𝐵 ∧ ∀𝑥 ∈ 𝐴 (𝐹‘(𝑓‘𝑥)) = 𝑥)) → (𝐹 “ (𝑓 “ 𝐴)) = 𝐴) |
| 48 | | imaeq2 6043 |
. . . . 5
⊢ (𝑐 = (𝑓 “ 𝐴) → (𝐹 “ 𝑐) = (𝐹 “ (𝑓 “ 𝐴))) |
| 49 | 48 | eqeq1d 2737 |
. . . 4
⊢ (𝑐 = (𝑓 “ 𝐴) → ((𝐹 “ 𝑐) = 𝐴 ↔ (𝐹 “ (𝑓 “ 𝐴)) = 𝐴)) |
| 50 | 49 | rspcev 3601 |
. . 3
⊢ (((𝑓 “ 𝐴) ∈ (𝒫 𝐵 ∩ Fin) ∧ (𝐹 “ (𝑓 “ 𝐴)) = 𝐴) → ∃𝑐 ∈ (𝒫 𝐵 ∩ Fin)(𝐹 “ 𝑐) = 𝐴) |
| 51 | 22, 47, 50 | syl2anc 584 |
. 2
⊢ (((𝐹 Fn 𝐵 ∧ 𝐴 ⊆ ran 𝐹 ∧ 𝐴 ∈ Fin) ∧ (𝑓:𝐴⟶𝐵 ∧ ∀𝑥 ∈ 𝐴 (𝐹‘(𝑓‘𝑥)) = 𝑥)) → ∃𝑐 ∈ (𝒫 𝐵 ∩ Fin)(𝐹 “ 𝑐) = 𝐴) |
| 52 | 10, 51 | exlimddv 1935 |
1
⊢ ((𝐹 Fn 𝐵 ∧ 𝐴 ⊆ ran 𝐹 ∧ 𝐴 ∈ Fin) → ∃𝑐 ∈ (𝒫 𝐵 ∩ Fin)(𝐹 “ 𝑐) = 𝐴) |