| Step |
Hyp |
Ref |
Expression |
| 1 |
|
simpl |
|- ( ( F : B -onto-> C /\ G : A -onto-> B ) -> F : B -onto-> C ) |
| 2 |
|
fofun |
|- ( G : A -onto-> B -> Fun G ) |
| 3 |
2
|
adantl |
|- ( ( F : B -onto-> C /\ G : A -onto-> B ) -> Fun G ) |
| 4 |
|
forn |
|- ( G : A -onto-> B -> ran G = B ) |
| 5 |
|
eqimss2 |
|- ( ran G = B -> B C_ ran G ) |
| 6 |
4 5
|
syl |
|- ( G : A -onto-> B -> B C_ ran G ) |
| 7 |
6
|
adantl |
|- ( ( F : B -onto-> C /\ G : A -onto-> B ) -> B C_ ran G ) |
| 8 |
|
focofo |
|- ( ( F : B -onto-> C /\ Fun G /\ B C_ ran G ) -> ( F o. G ) : ( `' G " B ) -onto-> C ) |
| 9 |
1 3 7 8
|
syl3anc |
|- ( ( F : B -onto-> C /\ G : A -onto-> B ) -> ( F o. G ) : ( `' G " B ) -onto-> C ) |
| 10 |
|
focnvimacdmdm |
|- ( G : A -onto-> B -> ( `' G " B ) = A ) |
| 11 |
10
|
eqcomd |
|- ( G : A -onto-> B -> A = ( `' G " B ) ) |
| 12 |
11
|
adantl |
|- ( ( F : B -onto-> C /\ G : A -onto-> B ) -> A = ( `' G " B ) ) |
| 13 |
|
foeq2 |
|- ( A = ( `' G " B ) -> ( ( F o. G ) : A -onto-> C <-> ( F o. G ) : ( `' G " B ) -onto-> C ) ) |
| 14 |
12 13
|
syl |
|- ( ( F : B -onto-> C /\ G : A -onto-> B ) -> ( ( F o. G ) : A -onto-> C <-> ( F o. G ) : ( `' G " B ) -onto-> C ) ) |
| 15 |
9 14
|
mpbird |
|- ( ( F : B -onto-> C /\ G : A -onto-> B ) -> ( F o. G ) : A -onto-> C ) |