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

Theorem foeqcnvco 5769
Description: Condition for function equality in terms of vanishing of the composition with the converse. EDITORIAL: Is there a relation-algebraic proof of this? (Contributed by Stefan O'Rear, 12-Feb-2015.)
Assertion
Ref Expression
foeqcnvco  |-  ( ( F : A -onto-> B  /\  G : A -onto-> B
)  ->  ( F  =  G  <->  ( F  o.  `' G )  =  (  _I  |`  B )
) )

Proof of Theorem foeqcnvco
Dummy variables  x  y are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 fococnv2 5468 . . . 4  |-  ( F : A -onto-> B  -> 
( F  o.  `' F )  =  (  _I  |`  B )
)
2 cnveq 4785 . . . . . 6  |-  ( F  =  G  ->  `' F  =  `' G
)
32coeq2d 4773 . . . . 5  |-  ( F  =  G  ->  ( F  o.  `' F
)  =  ( F  o.  `' G ) )
43eqeq1d 2179 . . . 4  |-  ( F  =  G  ->  (
( F  o.  `' F )  =  (  _I  |`  B )  <->  ( F  o.  `' G
)  =  (  _I  |`  B ) ) )
51, 4syl5ibcom 154 . . 3  |-  ( F : A -onto-> B  -> 
( F  =  G  ->  ( F  o.  `' G )  =  (  _I  |`  B )
) )
65adantr 274 . 2  |-  ( ( F : A -onto-> B  /\  G : A -onto-> B
)  ->  ( F  =  G  ->  ( F  o.  `' G )  =  (  _I  |`  B ) ) )
7 fofn 5422 . . . . 5  |-  ( F : A -onto-> B  ->  F  Fn  A )
87ad2antrr 485 . . . 4  |-  ( ( ( F : A -onto-> B  /\  G : A -onto-> B )  /\  ( F  o.  `' G
)  =  (  _I  |`  B ) )  ->  F  Fn  A )
9 fofn 5422 . . . . 5  |-  ( G : A -onto-> B  ->  G  Fn  A )
109ad2antlr 486 . . . 4  |-  ( ( ( F : A -onto-> B  /\  G : A -onto-> B )  /\  ( F  o.  `' G
)  =  (  _I  |`  B ) )  ->  G  Fn  A )
119adantl 275 . . . . . . . . . . . 12  |-  ( ( F : A -onto-> B  /\  G : A -onto-> B
)  ->  G  Fn  A )
12 fnopfv 5626 . . . . . . . . . . . 12  |-  ( ( G  Fn  A  /\  x  e.  A )  -> 
<. x ,  ( G `
 x ) >.  e.  G )
1311, 12sylan 281 . . . . . . . . . . 11  |-  ( ( ( F : A -onto-> B  /\  G : A -onto-> B )  /\  x  e.  A )  ->  <. x ,  ( G `  x ) >.  e.  G
)
149anim1i 338 . . . . . . . . . . . . 13  |-  ( ( G : A -onto-> B  /\  x  e.  A
)  ->  ( G  Fn  A  /\  x  e.  A ) )
1514adantll 473 . . . . . . . . . . . 12  |-  ( ( ( F : A -onto-> B  /\  G : A -onto-> B )  /\  x  e.  A )  ->  ( G  Fn  A  /\  x  e.  A )
)
16 funfvex 5513 . . . . . . . . . . . . . . 15  |-  ( ( Fun  G  /\  x  e.  dom  G )  -> 
( G `  x
)  e.  _V )
1716funfni 5298 . . . . . . . . . . . . . 14  |-  ( ( G  Fn  A  /\  x  e.  A )  ->  ( G `  x
)  e.  _V )
18 vex 2733 . . . . . . . . . . . . . 14  |-  x  e. 
_V
19 brcnvg 4792 . . . . . . . . . . . . . 14  |-  ( ( ( G `  x
)  e.  _V  /\  x  e.  _V )  ->  ( ( G `  x ) `' G x 
<->  x G ( G `
 x ) ) )
2017, 18, 19sylancl 411 . . . . . . . . . . . . 13  |-  ( ( G  Fn  A  /\  x  e.  A )  ->  ( ( G `  x ) `' G x 
<->  x G ( G `
 x ) ) )
21 df-br 3990 . . . . . . . . . . . . 13  |-  ( x G ( G `  x )  <->  <. x ,  ( G `  x
) >.  e.  G )
2220, 21bitrdi 195 . . . . . . . . . . . 12  |-  ( ( G  Fn  A  /\  x  e.  A )  ->  ( ( G `  x ) `' G x 
<-> 
<. x ,  ( G `
 x ) >.  e.  G ) )
2315, 22syl 14 . . . . . . . . . . 11  |-  ( ( ( F : A -onto-> B  /\  G : A -onto-> B )  /\  x  e.  A )  ->  (
( G `  x
) `' G x  <->  <. x ,  ( G `
 x ) >.  e.  G ) )
2413, 23mpbird 166 . . . . . . . . . 10  |-  ( ( ( F : A -onto-> B  /\  G : A -onto-> B )  /\  x  e.  A )  ->  ( G `  x ) `' G x )
257adantr 274 . . . . . . . . . . . 12  |-  ( ( F : A -onto-> B  /\  G : A -onto-> B
)  ->  F  Fn  A )
26 fnopfv 5626 . . . . . . . . . . . 12  |-  ( ( F  Fn  A  /\  x  e.  A )  -> 
<. x ,  ( F `
 x ) >.  e.  F )
2725, 26sylan 281 . . . . . . . . . . 11  |-  ( ( ( F : A -onto-> B  /\  G : A -onto-> B )  /\  x  e.  A )  ->  <. x ,  ( F `  x ) >.  e.  F
)
28 df-br 3990 . . . . . . . . . . 11  |-  ( x F ( F `  x )  <->  <. x ,  ( F `  x
) >.  e.  F )
2927, 28sylibr 133 . . . . . . . . . 10  |-  ( ( ( F : A -onto-> B  /\  G : A -onto-> B )  /\  x  e.  A )  ->  x F ( F `  x ) )
30 breq2 3993 . . . . . . . . . . . 12  |-  ( y  =  x  ->  (
( G `  x
) `' G y  <-> 
( G `  x
) `' G x ) )
31 breq1 3992 . . . . . . . . . . . 12  |-  ( y  =  x  ->  (
y F ( F `
 x )  <->  x F
( F `  x
) ) )
3230, 31anbi12d 470 . . . . . . . . . . 11  |-  ( y  =  x  ->  (
( ( G `  x ) `' G
y  /\  y F
( F `  x
) )  <->  ( ( G `  x ) `' G x  /\  x F ( F `  x ) ) ) )
3318, 32spcev 2825 . . . . . . . . . 10  |-  ( ( ( G `  x
) `' G x  /\  x F ( F `  x ) )  ->  E. y
( ( G `  x ) `' G
y  /\  y F
( F `  x
) ) )
3424, 29, 33syl2anc 409 . . . . . . . . 9  |-  ( ( ( F : A -onto-> B  /\  G : A -onto-> B )  /\  x  e.  A )  ->  E. y
( ( G `  x ) `' G
y  /\  y F
( F `  x
) ) )
3515, 17syl 14 . . . . . . . . . 10  |-  ( ( ( F : A -onto-> B  /\  G : A -onto-> B )  /\  x  e.  A )  ->  ( G `  x )  e.  _V )
367anim1i 338 . . . . . . . . . . . 12  |-  ( ( F : A -onto-> B  /\  x  e.  A
)  ->  ( F  Fn  A  /\  x  e.  A ) )
3736adantlr 474 . . . . . . . . . . 11  |-  ( ( ( F : A -onto-> B  /\  G : A -onto-> B )  /\  x  e.  A )  ->  ( F  Fn  A  /\  x  e.  A )
)
38 funfvex 5513 . . . . . . . . . . . 12  |-  ( ( Fun  F  /\  x  e.  dom  F )  -> 
( F `  x
)  e.  _V )
3938funfni 5298 . . . . . . . . . . 11  |-  ( ( F  Fn  A  /\  x  e.  A )  ->  ( F `  x
)  e.  _V )
4037, 39syl 14 . . . . . . . . . 10  |-  ( ( ( F : A -onto-> B  /\  G : A -onto-> B )  /\  x  e.  A )  ->  ( F `  x )  e.  _V )
41 brcog 4778 . . . . . . . . . 10  |-  ( ( ( G `  x
)  e.  _V  /\  ( F `  x )  e.  _V )  -> 
( ( G `  x ) ( F  o.  `' G ) ( F `  x
)  <->  E. y ( ( G `  x ) `' G y  /\  y F ( F `  x ) ) ) )
4235, 40, 41syl2anc 409 . . . . . . . . 9  |-  ( ( ( F : A -onto-> B  /\  G : A -onto-> B )  /\  x  e.  A )  ->  (
( G `  x
) ( F  o.  `' G ) ( F `
 x )  <->  E. y
( ( G `  x ) `' G
y  /\  y F
( F `  x
) ) ) )
4334, 42mpbird 166 . . . . . . . 8  |-  ( ( ( F : A -onto-> B  /\  G : A -onto-> B )  /\  x  e.  A )  ->  ( G `  x )
( F  o.  `' G ) ( F `
 x ) )
4443adantlr 474 . . . . . . 7  |-  ( ( ( ( F : A -onto-> B  /\  G : A -onto-> B )  /\  ( F  o.  `' G
)  =  (  _I  |`  B ) )  /\  x  e.  A )  ->  ( G `  x
) ( F  o.  `' G ) ( F `
 x ) )
45 breq 3991 . . . . . . . 8  |-  ( ( F  o.  `' G
)  =  (  _I  |`  B )  ->  (
( G `  x
) ( F  o.  `' G ) ( F `
 x )  <->  ( G `  x ) (  _I  |`  B ) ( F `
 x ) ) )
4645ad2antlr 486 . . . . . . 7  |-  ( ( ( ( F : A -onto-> B  /\  G : A -onto-> B )  /\  ( F  o.  `' G
)  =  (  _I  |`  B ) )  /\  x  e.  A )  ->  ( ( G `  x ) ( F  o.  `' G ) ( F `  x
)  <->  ( G `  x ) (  _I  |`  B ) ( F `
 x ) ) )
4744, 46mpbid 146 . . . . . 6  |-  ( ( ( ( F : A -onto-> B  /\  G : A -onto-> B )  /\  ( F  o.  `' G
)  =  (  _I  |`  B ) )  /\  x  e.  A )  ->  ( G `  x
) (  _I  |`  B ) ( F `  x
) )
48 fof 5420 . . . . . . . . . 10  |-  ( G : A -onto-> B  ->  G : A --> B )
4948adantl 275 . . . . . . . . 9  |-  ( ( F : A -onto-> B  /\  G : A -onto-> B
)  ->  G : A
--> B )
5049ffvelrnda 5631 . . . . . . . 8  |-  ( ( ( F : A -onto-> B  /\  G : A -onto-> B )  /\  x  e.  A )  ->  ( G `  x )  e.  B )
51 fof 5420 . . . . . . . . . 10  |-  ( F : A -onto-> B  ->  F : A --> B )
5251adantr 274 . . . . . . . . 9  |-  ( ( F : A -onto-> B  /\  G : A -onto-> B
)  ->  F : A
--> B )
5352ffvelrnda 5631 . . . . . . . 8  |-  ( ( ( F : A -onto-> B  /\  G : A -onto-> B )  /\  x  e.  A )  ->  ( F `  x )  e.  B )
54 resieq 4901 . . . . . . . 8  |-  ( ( ( G `  x
)  e.  B  /\  ( F `  x )  e.  B )  -> 
( ( G `  x ) (  _I  |`  B ) ( F `
 x )  <->  ( G `  x )  =  ( F `  x ) ) )
5550, 53, 54syl2anc 409 . . . . . . 7  |-  ( ( ( F : A -onto-> B  /\  G : A -onto-> B )  /\  x  e.  A )  ->  (
( G `  x
) (  _I  |`  B ) ( F `  x
)  <->  ( G `  x )  =  ( F `  x ) ) )
5655adantlr 474 . . . . . 6  |-  ( ( ( ( F : A -onto-> B  /\  G : A -onto-> B )  /\  ( F  o.  `' G
)  =  (  _I  |`  B ) )  /\  x  e.  A )  ->  ( ( G `  x ) (  _I  |`  B ) ( F `
 x )  <->  ( G `  x )  =  ( F `  x ) ) )
5747, 56mpbid 146 . . . . 5  |-  ( ( ( ( F : A -onto-> B  /\  G : A -onto-> B )  /\  ( F  o.  `' G
)  =  (  _I  |`  B ) )  /\  x  e.  A )  ->  ( G `  x
)  =  ( F `
 x ) )
5857eqcomd 2176 . . . 4  |-  ( ( ( ( F : A -onto-> B  /\  G : A -onto-> B )  /\  ( F  o.  `' G
)  =  (  _I  |`  B ) )  /\  x  e.  A )  ->  ( F `  x
)  =  ( G `
 x ) )
598, 10, 58eqfnfvd 5596 . . 3  |-  ( ( ( F : A -onto-> B  /\  G : A -onto-> B )  /\  ( F  o.  `' G
)  =  (  _I  |`  B ) )  ->  F  =  G )
6059ex 114 . 2  |-  ( ( F : A -onto-> B  /\  G : A -onto-> B
)  ->  ( ( F  o.  `' G
)  =  (  _I  |`  B )  ->  F  =  G ) )
616, 60impbid 128 1  |-  ( ( F : A -onto-> B  /\  G : A -onto-> B
)  ->  ( F  =  G  <->  ( F  o.  `' G )  =  (  _I  |`  B )
) )
Colors of variables: wff set class
Syntax hints:    -> wi 4    /\ wa 103    <-> wb 104    = wceq 1348   E.wex 1485    e. wcel 2141   _Vcvv 2730   <.cop 3586   class class class wbr 3989    _I cid 4273   `'ccnv 4610    |` cres 4613    o. ccom 4615    Fn wfn 5193   -->wf 5194   -onto->wfo 5196   ` cfv 5198
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-ia1 105  ax-ia2 106  ax-ia3 107  ax-io 704  ax-5 1440  ax-7 1441  ax-gen 1442  ax-ie1 1486  ax-ie2 1487  ax-8 1497  ax-10 1498  ax-11 1499  ax-i12 1500  ax-bndl 1502  ax-4 1503  ax-17 1519  ax-i9 1523  ax-ial 1527  ax-i5r 1528  ax-14 2144  ax-ext 2152  ax-sep 4107  ax-pow 4160  ax-pr 4194
This theorem depends on definitions:  df-bi 116  df-3an 975  df-tru 1351  df-nf 1454  df-sb 1756  df-eu 2022  df-mo 2023  df-clab 2157  df-cleq 2163  df-clel 2166  df-nfc 2301  df-ral 2453  df-rex 2454  df-v 2732  df-sbc 2956  df-csb 3050  df-un 3125  df-in 3127  df-ss 3134  df-pw 3568  df-sn 3589  df-pr 3590  df-op 3592  df-uni 3797  df-br 3990  df-opab 4051  df-mpt 4052  df-id 4278  df-xp 4617  df-rel 4618  df-cnv 4619  df-co 4620  df-dm 4621  df-rn 4622  df-res 4623  df-iota 5160  df-fun 5200  df-fn 5201  df-f 5202  df-fo 5204  df-fv 5206
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator