ILE Home Intuitionistic Logic Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  ILE Home  >  Th. List  >  fcofo Unicode version

Theorem fcofo 5920
Description: An application is surjective if a section exists. Proposition 8 of [BourbakiEns] p. E.II.18. (Contributed by FL, 17-Nov-2011.) (Proof shortened by Mario Carneiro, 27-Dec-2014.)
Assertion
Ref Expression
fcofo  |-  ( ( F : A --> B  /\  S : B --> A  /\  ( F  o.  S
)  =  (  _I  |`  B ) )  ->  F : A -onto-> B )

Proof of Theorem fcofo
Dummy variables  x  y are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 simp1 1021 . 2  |-  ( ( F : A --> B  /\  S : B --> A  /\  ( F  o.  S
)  =  (  _I  |`  B ) )  ->  F : A --> B )
2 ffvelcdm 5776 . . . . 5  |-  ( ( S : B --> A  /\  y  e.  B )  ->  ( S `  y
)  e.  A )
323ad2antl2 1184 . . . 4  |-  ( ( ( F : A --> B  /\  S : B --> A  /\  ( F  o.  S )  =  (  _I  |`  B )
)  /\  y  e.  B )  ->  ( S `  y )  e.  A )
4 simpl3 1026 . . . . . 6  |-  ( ( ( F : A --> B  /\  S : B --> A  /\  ( F  o.  S )  =  (  _I  |`  B )
)  /\  y  e.  B )  ->  ( F  o.  S )  =  (  _I  |`  B ) )
54fveq1d 5637 . . . . 5  |-  ( ( ( F : A --> B  /\  S : B --> A  /\  ( F  o.  S )  =  (  _I  |`  B )
)  /\  y  e.  B )  ->  (
( F  o.  S
) `  y )  =  ( (  _I  |`  B ) `  y
) )
6 fvco3 5713 . . . . . 6  |-  ( ( S : B --> A  /\  y  e.  B )  ->  ( ( F  o.  S ) `  y
)  =  ( F `
 ( S `  y ) ) )
763ad2antl2 1184 . . . . 5  |-  ( ( ( F : A --> B  /\  S : B --> A  /\  ( F  o.  S )  =  (  _I  |`  B )
)  /\  y  e.  B )  ->  (
( F  o.  S
) `  y )  =  ( F `  ( S `  y ) ) )
8 fvresi 5842 . . . . . 6  |-  ( y  e.  B  ->  (
(  _I  |`  B ) `
 y )  =  y )
98adantl 277 . . . . 5  |-  ( ( ( F : A --> B  /\  S : B --> A  /\  ( F  o.  S )  =  (  _I  |`  B )
)  /\  y  e.  B )  ->  (
(  _I  |`  B ) `
 y )  =  y )
105, 7, 93eqtr3rd 2271 . . . 4  |-  ( ( ( F : A --> B  /\  S : B --> A  /\  ( F  o.  S )  =  (  _I  |`  B )
)  /\  y  e.  B )  ->  y  =  ( F `  ( S `  y ) ) )
11 fveq2 5635 . . . . . 6  |-  ( x  =  ( S `  y )  ->  ( F `  x )  =  ( F `  ( S `  y ) ) )
1211eqeq2d 2241 . . . . 5  |-  ( x  =  ( S `  y )  ->  (
y  =  ( F `
 x )  <->  y  =  ( F `  ( S `
 y ) ) ) )
1312rspcev 2908 . . . 4  |-  ( ( ( S `  y
)  e.  A  /\  y  =  ( F `  ( S `  y
) ) )  ->  E. x  e.  A  y  =  ( F `  x ) )
143, 10, 13syl2anc 411 . . 3  |-  ( ( ( F : A --> B  /\  S : B --> A  /\  ( F  o.  S )  =  (  _I  |`  B )
)  /\  y  e.  B )  ->  E. x  e.  A  y  =  ( F `  x ) )
1514ralrimiva 2603 . 2  |-  ( ( F : A --> B  /\  S : B --> A  /\  ( F  o.  S
)  =  (  _I  |`  B ) )  ->  A. y  e.  B  E. x  e.  A  y  =  ( F `  x ) )
16 dffo3 5790 . 2  |-  ( F : A -onto-> B  <->  ( F : A --> B  /\  A. y  e.  B  E. x  e.  A  y  =  ( F `  x ) ) )
171, 15, 16sylanbrc 417 1  |-  ( ( F : A --> B  /\  S : B --> A  /\  ( F  o.  S
)  =  (  _I  |`  B ) )  ->  F : A -onto-> B )
Colors of variables: wff set class
Syntax hints:    -> wi 4    /\ wa 104    /\ w3a 1002    = wceq 1395    e. wcel 2200   A.wral 2508   E.wrex 2509    _I cid 4383    |` cres 4725    o. ccom 4727   -->wf 5320   -onto->wfo 5322   ` cfv 5324
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-ia1 106  ax-ia2 107  ax-ia3 108  ax-io 714  ax-5 1493  ax-7 1494  ax-gen 1495  ax-ie1 1539  ax-ie2 1540  ax-8 1550  ax-10 1551  ax-11 1552  ax-i12 1553  ax-bndl 1555  ax-4 1556  ax-17 1572  ax-i9 1576  ax-ial 1580  ax-i5r 1581  ax-14 2203  ax-ext 2211  ax-sep 4205  ax-pow 4262  ax-pr 4297
This theorem depends on definitions:  df-bi 117  df-3an 1004  df-tru 1398  df-nf 1507  df-sb 1809  df-eu 2080  df-mo 2081  df-clab 2216  df-cleq 2222  df-clel 2225  df-nfc 2361  df-ral 2513  df-rex 2514  df-v 2802  df-sbc 3030  df-un 3202  df-in 3204  df-ss 3211  df-pw 3652  df-sn 3673  df-pr 3674  df-op 3676  df-uni 3892  df-br 4087  df-opab 4149  df-mpt 4150  df-id 4388  df-xp 4729  df-rel 4730  df-cnv 4731  df-co 4732  df-dm 4733  df-rn 4734  df-res 4735  df-ima 4736  df-iota 5284  df-fun 5326  df-fn 5327  df-f 5328  df-fo 5330  df-fv 5332
This theorem is referenced by:  fcof1o  5925
  Copyright terms: Public domain W3C validator