Proof of Theorem foimacnv
Step | Hyp | Ref
| Expression |
1 | | resima 5007 |
. 2
⊢ ((F ↾ (◡F
“ C)) “ (◡F
“ C)) = (F “ (◡F
“ C)) |
2 | | fofun 5271 |
. . . . . 6
⊢ (F:A–onto→B
→ Fun F) |
3 | 2 | adantr 451 |
. . . . 5
⊢ ((F:A–onto→B
∧ C ⊆ B) →
Fun F) |
4 | | funcnvres2 5168 |
. . . . 5
⊢ (Fun F → ◡(◡F ↾ C) =
(F ↾
(◡F
“ C))) |
5 | 3, 4 | syl 15 |
. . . 4
⊢ ((F:A–onto→B
∧ C ⊆ B) →
◡(◡F ↾ C) =
(F ↾
(◡F
“ C))) |
6 | 5 | imaeq1d 4942 |
. . 3
⊢ ((F:A–onto→B
∧ C ⊆ B) →
(◡(◡F ↾ C) “
(◡F
“ C)) = ((F ↾ (◡F
“ C)) “ (◡F
“ C))) |
7 | | resss 4989 |
. . . . . . . . . . 11
⊢ (◡F ↾ C) ⊆ ◡F |
8 | | cnvss 4886 |
. . . . . . . . . . 11
⊢ ((◡F ↾ C) ⊆ ◡F →
◡(◡F ↾ C) ⊆ ◡◡F) |
9 | 7, 8 | ax-mp 5 |
. . . . . . . . . 10
⊢ ◡(◡F ↾ C) ⊆ ◡◡F |
10 | | cnvcnv 5063 |
. . . . . . . . . 10
⊢ ◡◡F =
F |
11 | 9, 10 | sseqtri 3304 |
. . . . . . . . 9
⊢ ◡(◡F ↾ C) ⊆ F |
12 | | funss 5127 |
. . . . . . . . 9
⊢ (◡(◡F ↾ C) ⊆ F →
(Fun F → Fun ◡(◡F ↾ C))) |
13 | 11, 2, 12 | mpsyl 59 |
. . . . . . . 8
⊢ (F:A–onto→B
→ Fun ◡(◡F ↾ C)) |
14 | 13 | adantr 451 |
. . . . . . 7
⊢ ((F:A–onto→B
∧ C ⊆ B) →
Fun ◡(◡F ↾ C)) |
15 | | dfima3 4952 |
. . . . . . . 8
⊢ (◡F
“ C) = ran (◡F ↾ C) |
16 | | dfrn4 4905 |
. . . . . . . 8
⊢ ran (◡F ↾ C) = dom
◡(◡F ↾ C) |
17 | 15, 16 | eqtr2i 2374 |
. . . . . . 7
⊢ dom ◡(◡F ↾ C) = (◡F
“ C) |
18 | 14, 17 | jctir 524 |
. . . . . 6
⊢ ((F:A–onto→B
∧ C ⊆ B) →
(Fun ◡(◡F ↾ C) ∧ dom ◡(◡F ↾ C) = (◡F
“ C))) |
19 | | df-fn 4791 |
. . . . . 6
⊢ (◡(◡F ↾ C) Fn (◡F
“ C) ↔ (Fun ◡(◡F ↾ C) ∧ dom ◡(◡F ↾ C) = (◡F
“ C))) |
20 | 18, 19 | sylibr 203 |
. . . . 5
⊢ ((F:A–onto→B
∧ C ⊆ B) →
◡(◡F ↾ C) Fn (◡F
“ C)) |
21 | | df-dm 4788 |
. . . . . 6
⊢ dom (◡F ↾ C) = ran
◡(◡F ↾ C) |
22 | | forn 5273 |
. . . . . . . . . 10
⊢ (F:A–onto→B
→ ran F = B) |
23 | 22 | sseq2d 3300 |
. . . . . . . . 9
⊢ (F:A–onto→B
→ (C ⊆ ran F ↔
C ⊆
B)) |
24 | 23 | biimpar 471 |
. . . . . . . 8
⊢ ((F:A–onto→B
∧ C ⊆ B) →
C ⊆ ran
F) |
25 | | dfrn4 4905 |
. . . . . . . 8
⊢ ran F = dom ◡F |
26 | 24, 25 | syl6sseq 3318 |
. . . . . . 7
⊢ ((F:A–onto→B
∧ C ⊆ B) →
C ⊆ dom
◡F) |
27 | | ssdmres 4988 |
. . . . . . 7
⊢ (C ⊆ dom ◡F ↔
dom (◡F ↾ C) = C) |
28 | 26, 27 | sylib 188 |
. . . . . 6
⊢ ((F:A–onto→B
∧ C ⊆ B) →
dom (◡F ↾ C) = C) |
29 | 21, 28 | syl5eqr 2399 |
. . . . 5
⊢ ((F:A–onto→B
∧ C ⊆ B) →
ran ◡(◡F ↾ C) =
C) |
30 | | df-fo 4794 |
. . . . 5
⊢ (◡(◡F ↾ C):(◡F
“ C)–onto→C ↔
(◡(◡F ↾ C) Fn (◡F
“ C) ∧ ran ◡(◡F ↾ C) =
C)) |
31 | 20, 29, 30 | sylanbrc 645 |
. . . 4
⊢ ((F:A–onto→B
∧ C ⊆ B) →
◡(◡F ↾ C):(◡F
“ C)–onto→C) |
32 | | foima 5275 |
. . . 4
⊢ (◡(◡F ↾ C):(◡F
“ C)–onto→C →
(◡(◡F ↾ C) “
(◡F
“ C)) = C) |
33 | 31, 32 | syl 15 |
. . 3
⊢ ((F:A–onto→B
∧ C ⊆ B) →
(◡(◡F ↾ C) “
(◡F
“ C)) = C) |
34 | 6, 33 | eqtr3d 2387 |
. 2
⊢ ((F:A–onto→B
∧ C ⊆ B) →
((F ↾
(◡F
“ C)) “ (◡F
“ C)) = C) |
35 | 1, 34 | syl5eqr 2399 |
1
⊢ ((F:A–onto→B
∧ C ⊆ B) →
(F “ (◡F
“ C)) = C) |