Proof of Theorem fodomfib
| Step | Hyp | Ref | Expression | 
|---|
| 1 |  | fof 6820 | . . . . . . . . . . . . 13
⊢ (𝑓:𝐴–onto→𝐵 → 𝑓:𝐴⟶𝐵) | 
| 2 | 1 | fdmd 6746 | . . . . . . . . . . . 12
⊢ (𝑓:𝐴–onto→𝐵 → dom 𝑓 = 𝐴) | 
| 3 | 2 | eqeq1d 2739 | . . . . . . . . . . 11
⊢ (𝑓:𝐴–onto→𝐵 → (dom 𝑓 = ∅ ↔ 𝐴 = ∅)) | 
| 4 |  | dm0rn0 5935 | . . . . . . . . . . . 12
⊢ (dom
𝑓 = ∅ ↔ ran
𝑓 =
∅) | 
| 5 |  | forn 6823 | . . . . . . . . . . . . 13
⊢ (𝑓:𝐴–onto→𝐵 → ran 𝑓 = 𝐵) | 
| 6 | 5 | eqeq1d 2739 | . . . . . . . . . . . 12
⊢ (𝑓:𝐴–onto→𝐵 → (ran 𝑓 = ∅ ↔ 𝐵 = ∅)) | 
| 7 | 4, 6 | bitrid 283 | . . . . . . . . . . 11
⊢ (𝑓:𝐴–onto→𝐵 → (dom 𝑓 = ∅ ↔ 𝐵 = ∅)) | 
| 8 | 3, 7 | bitr3d 281 | . . . . . . . . . 10
⊢ (𝑓:𝐴–onto→𝐵 → (𝐴 = ∅ ↔ 𝐵 = ∅)) | 
| 9 | 8 | necon3bid 2985 | . . . . . . . . 9
⊢ (𝑓:𝐴–onto→𝐵 → (𝐴 ≠ ∅ ↔ 𝐵 ≠ ∅)) | 
| 10 | 9 | biimpac 478 | . . . . . . . 8
⊢ ((𝐴 ≠ ∅ ∧ 𝑓:𝐴–onto→𝐵) → 𝐵 ≠ ∅) | 
| 11 | 10 | adantll 714 | . . . . . . 7
⊢ (((𝐴 ∈ Fin ∧ 𝐴 ≠ ∅) ∧ 𝑓:𝐴–onto→𝐵) → 𝐵 ≠ ∅) | 
| 12 |  | vex 3484 | . . . . . . . . . . . 12
⊢ 𝑓 ∈ V | 
| 13 | 12 | rnex 7932 | . . . . . . . . . . 11
⊢ ran 𝑓 ∈ V | 
| 14 | 5, 13 | eqeltrrdi 2850 | . . . . . . . . . 10
⊢ (𝑓:𝐴–onto→𝐵 → 𝐵 ∈ V) | 
| 15 | 14 | adantl 481 | . . . . . . . . 9
⊢ ((𝐴 ∈ Fin ∧ 𝑓:𝐴–onto→𝐵) → 𝐵 ∈ V) | 
| 16 |  | 0sdomg 9144 | . . . . . . . . 9
⊢ (𝐵 ∈ V → (∅
≺ 𝐵 ↔ 𝐵 ≠ ∅)) | 
| 17 | 15, 16 | syl 17 | . . . . . . . 8
⊢ ((𝐴 ∈ Fin ∧ 𝑓:𝐴–onto→𝐵) → (∅ ≺ 𝐵 ↔ 𝐵 ≠ ∅)) | 
| 18 | 17 | adantlr 715 | . . . . . . 7
⊢ (((𝐴 ∈ Fin ∧ 𝐴 ≠ ∅) ∧ 𝑓:𝐴–onto→𝐵) → (∅ ≺ 𝐵 ↔ 𝐵 ≠ ∅)) | 
| 19 | 11, 18 | mpbird 257 | . . . . . 6
⊢ (((𝐴 ∈ Fin ∧ 𝐴 ≠ ∅) ∧ 𝑓:𝐴–onto→𝐵) → ∅ ≺ 𝐵) | 
| 20 | 19 | ex 412 | . . . . 5
⊢ ((𝐴 ∈ Fin ∧ 𝐴 ≠ ∅) → (𝑓:𝐴–onto→𝐵 → ∅ ≺ 𝐵)) | 
| 21 |  | fodomfi 9350 | . . . . . . 7
⊢ ((𝐴 ∈ Fin ∧ 𝑓:𝐴–onto→𝐵) → 𝐵 ≼ 𝐴) | 
| 22 | 21 | ex 412 | . . . . . 6
⊢ (𝐴 ∈ Fin → (𝑓:𝐴–onto→𝐵 → 𝐵 ≼ 𝐴)) | 
| 23 | 22 | adantr 480 | . . . . 5
⊢ ((𝐴 ∈ Fin ∧ 𝐴 ≠ ∅) → (𝑓:𝐴–onto→𝐵 → 𝐵 ≼ 𝐴)) | 
| 24 | 20, 23 | jcad 512 | . . . 4
⊢ ((𝐴 ∈ Fin ∧ 𝐴 ≠ ∅) → (𝑓:𝐴–onto→𝐵 → (∅ ≺ 𝐵 ∧ 𝐵 ≼ 𝐴))) | 
| 25 | 24 | exlimdv 1933 | . . 3
⊢ ((𝐴 ∈ Fin ∧ 𝐴 ≠ ∅) →
(∃𝑓 𝑓:𝐴–onto→𝐵 → (∅ ≺ 𝐵 ∧ 𝐵 ≼ 𝐴))) | 
| 26 | 25 | expimpd 453 | . 2
⊢ (𝐴 ∈ Fin → ((𝐴 ≠ ∅ ∧ ∃𝑓 𝑓:𝐴–onto→𝐵) → (∅ ≺ 𝐵 ∧ 𝐵 ≼ 𝐴))) | 
| 27 |  | 0fi 9082 | . . . . 5
⊢ ∅
∈ Fin | 
| 28 |  | sdomdomtrfi 9241 | . . . . 5
⊢ ((∅
∈ Fin ∧ ∅ ≺ 𝐵 ∧ 𝐵 ≼ 𝐴) → ∅ ≺ 𝐴) | 
| 29 | 27, 28 | mp3an1 1450 | . . . 4
⊢ ((∅
≺ 𝐵 ∧ 𝐵 ≼ 𝐴) → ∅ ≺ 𝐴) | 
| 30 |  | 0sdomg 9144 | . . . 4
⊢ (𝐴 ∈ Fin → (∅
≺ 𝐴 ↔ 𝐴 ≠ ∅)) | 
| 31 | 29, 30 | imbitrid 244 | . . 3
⊢ (𝐴 ∈ Fin → ((∅
≺ 𝐵 ∧ 𝐵 ≼ 𝐴) → 𝐴 ≠ ∅)) | 
| 32 |  | fodomfir 9368 | . . . 4
⊢ ((𝐴 ∈ Fin ∧ ∅
≺ 𝐵 ∧ 𝐵 ≼ 𝐴) → ∃𝑓 𝑓:𝐴–onto→𝐵) | 
| 33 | 32 | 3expib 1123 | . . 3
⊢ (𝐴 ∈ Fin → ((∅
≺ 𝐵 ∧ 𝐵 ≼ 𝐴) → ∃𝑓 𝑓:𝐴–onto→𝐵)) | 
| 34 | 31, 33 | jcad 512 | . 2
⊢ (𝐴 ∈ Fin → ((∅
≺ 𝐵 ∧ 𝐵 ≼ 𝐴) → (𝐴 ≠ ∅ ∧ ∃𝑓 𝑓:𝐴–onto→𝐵))) | 
| 35 | 26, 34 | impbid 212 | 1
⊢ (𝐴 ∈ Fin → ((𝐴 ≠ ∅ ∧ ∃𝑓 𝑓:𝐴–onto→𝐵) ↔ (∅ ≺ 𝐵 ∧ 𝐵 ≼ 𝐴))) |