MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  fcofo Structured version   Visualization version   Unicode version

Theorem fcofo 6191
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 1009 . 2  |-  ( ( F : A --> B  /\  S : B --> A  /\  ( F  o.  S
)  =  (  _I  |`  B ) )  ->  F : A --> B )
2 ffvelrn 6025 . . . . 5  |-  ( ( S : B --> A  /\  y  e.  B )  ->  ( S `  y
)  e.  A )
323ad2antl2 1172 . . . 4  |-  ( ( ( F : A --> B  /\  S : B --> A  /\  ( F  o.  S )  =  (  _I  |`  B )
)  /\  y  e.  B )  ->  ( S `  y )  e.  A )
4 simpl3 1014 . . . . . 6  |-  ( ( ( F : A --> B  /\  S : B --> A  /\  ( F  o.  S )  =  (  _I  |`  B )
)  /\  y  e.  B )  ->  ( F  o.  S )  =  (  _I  |`  B ) )
54fveq1d 5872 . . . . 5  |-  ( ( ( F : A --> B  /\  S : B --> A  /\  ( F  o.  S )  =  (  _I  |`  B )
)  /\  y  e.  B )  ->  (
( F  o.  S
) `  y )  =  ( (  _I  |`  B ) `  y
) )
6 fvco3 5947 . . . . . 6  |-  ( ( S : B --> A  /\  y  e.  B )  ->  ( ( F  o.  S ) `  y
)  =  ( F `
 ( S `  y ) ) )
763ad2antl2 1172 . . . . 5  |-  ( ( ( F : A --> B  /\  S : B --> A  /\  ( F  o.  S )  =  (  _I  |`  B )
)  /\  y  e.  B )  ->  (
( F  o.  S
) `  y )  =  ( F `  ( S `  y ) ) )
8 fvresi 6095 . . . . . 6  |-  ( y  e.  B  ->  (
(  _I  |`  B ) `
 y )  =  y )
98adantl 468 . . . . 5  |-  ( ( ( F : A --> B  /\  S : B --> A  /\  ( F  o.  S )  =  (  _I  |`  B )
)  /\  y  e.  B )  ->  (
(  _I  |`  B ) `
 y )  =  y )
105, 7, 93eqtr3rd 2496 . . . 4  |-  ( ( ( F : A --> B  /\  S : B --> A  /\  ( F  o.  S )  =  (  _I  |`  B )
)  /\  y  e.  B )  ->  y  =  ( F `  ( S `  y ) ) )
11 fveq2 5870 . . . . . 6  |-  ( x  =  ( S `  y )  ->  ( F `  x )  =  ( F `  ( S `  y ) ) )
1211eqeq2d 2463 . . . . 5  |-  ( x  =  ( S `  y )  ->  (
y  =  ( F `
 x )  <->  y  =  ( F `  ( S `
 y ) ) ) )
1312rspcev 3152 . . . 4  |-  ( ( ( S `  y
)  e.  A  /\  y  =  ( F `  ( S `  y
) ) )  ->  E. x  e.  A  y  =  ( F `  x ) )
143, 10, 13syl2anc 667 . . 3  |-  ( ( ( F : A --> B  /\  S : B --> A  /\  ( F  o.  S )  =  (  _I  |`  B )
)  /\  y  e.  B )  ->  E. x  e.  A  y  =  ( F `  x ) )
1514ralrimiva 2804 . 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 6042 . 2  |-  ( F : A -onto-> B  <->  ( F : A --> B  /\  A. y  e.  B  E. x  e.  A  y  =  ( F `  x ) ) )
171, 15, 16sylanbrc 671 1  |-  ( ( F : A --> B  /\  S : B --> A  /\  ( F  o.  S
)  =  (  _I  |`  B ) )  ->  F : A -onto-> B )
Colors of variables: wff setvar class
Syntax hints:    -> wi 4    /\ wa 371    /\ w3a 986    = wceq 1446    e. wcel 1889   A.wral 2739   E.wrex 2740    _I cid 4747    |` cres 4839    o. ccom 4841   -->wf 5581   -onto->wfo 5583   ` cfv 5585
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1671  ax-4 1684  ax-5 1760  ax-6 1807  ax-7 1853  ax-8 1891  ax-9 1898  ax-10 1917  ax-11 1922  ax-12 1935  ax-13 2093  ax-ext 2433  ax-sep 4528  ax-nul 4537  ax-pow 4584  ax-pr 4642
This theorem depends on definitions:  df-bi 189  df-or 372  df-an 373  df-3an 988  df-tru 1449  df-ex 1666  df-nf 1670  df-sb 1800  df-eu 2305  df-mo 2306  df-clab 2440  df-cleq 2446  df-clel 2449  df-nfc 2583  df-ne 2626  df-ral 2744  df-rex 2745  df-rab 2748  df-v 3049  df-sbc 3270  df-dif 3409  df-un 3411  df-in 3413  df-ss 3420  df-nul 3734  df-if 3884  df-sn 3971  df-pr 3973  df-op 3977  df-uni 4202  df-br 4406  df-opab 4465  df-mpt 4466  df-id 4752  df-xp 4843  df-rel 4844  df-cnv 4845  df-co 4846  df-dm 4847  df-rn 4848  df-res 4849  df-ima 4850  df-iota 5549  df-fun 5587  df-fn 5588  df-f 5589  df-fo 5591  df-fv 5593
This theorem is referenced by:  fcof1od  6197
  Copyright terms: Public domain W3C validator