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

Theorem foeqcnvco 5833
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 5526 . . . 4  |-  ( F : A -onto-> B  -> 
( F  o.  `' F )  =  (  _I  |`  B )
)
2 cnveq 4836 . . . . . 6  |-  ( F  =  G  ->  `' F  =  `' G
)
32coeq2d 4824 . . . . 5  |-  ( F  =  G  ->  ( F  o.  `' F
)  =  ( F  o.  `' G ) )
43eqeq1d 2202 . . . 4  |-  ( F  =  G  ->  (
( F  o.  `' F )  =  (  _I  |`  B )  <->  ( F  o.  `' G
)  =  (  _I  |`  B ) ) )
51, 4syl5ibcom 155 . . 3  |-  ( F : A -onto-> B  -> 
( F  =  G  ->  ( F  o.  `' G )  =  (  _I  |`  B )
) )
65adantr 276 . 2  |-  ( ( F : A -onto-> B  /\  G : A -onto-> B
)  ->  ( F  =  G  ->  ( F  o.  `' G )  =  (  _I  |`  B ) ) )
7 fofn 5478 . . . . 5  |-  ( F : A -onto-> B  ->  F  Fn  A )
87ad2antrr 488 . . . 4  |-  ( ( ( F : A -onto-> B  /\  G : A -onto-> B )  /\  ( F  o.  `' G
)  =  (  _I  |`  B ) )  ->  F  Fn  A )
9 fofn 5478 . . . . 5  |-  ( G : A -onto-> B  ->  G  Fn  A )
109ad2antlr 489 . . . 4  |-  ( ( ( F : A -onto-> B  /\  G : A -onto-> B )  /\  ( F  o.  `' G
)  =  (  _I  |`  B ) )  ->  G  Fn  A )
119adantl 277 . . . . . . . . . . . 12  |-  ( ( F : A -onto-> B  /\  G : A -onto-> B
)  ->  G  Fn  A )
12 fnopfv 5688 . . . . . . . . . . . 12  |-  ( ( G  Fn  A  /\  x  e.  A )  -> 
<. x ,  ( G `
 x ) >.  e.  G )
1311, 12sylan 283 . . . . . . . . . . 11  |-  ( ( ( F : A -onto-> B  /\  G : A -onto-> B )  /\  x  e.  A )  ->  <. x ,  ( G `  x ) >.  e.  G
)
149anim1i 340 . . . . . . . . . . . . 13  |-  ( ( G : A -onto-> B  /\  x  e.  A
)  ->  ( G  Fn  A  /\  x  e.  A ) )
1514adantll 476 . . . . . . . . . . . 12  |-  ( ( ( F : A -onto-> B  /\  G : A -onto-> B )  /\  x  e.  A )  ->  ( G  Fn  A  /\  x  e.  A )
)
16 funfvex 5571 . . . . . . . . . . . . . . 15  |-  ( ( Fun  G  /\  x  e.  dom  G )  -> 
( G `  x
)  e.  _V )
1716funfni 5354 . . . . . . . . . . . . . 14  |-  ( ( G  Fn  A  /\  x  e.  A )  ->  ( G `  x
)  e.  _V )
18 vex 2763 . . . . . . . . . . . . . 14  |-  x  e. 
_V
19 brcnvg 4843 . . . . . . . . . . . . . 14  |-  ( ( ( G `  x
)  e.  _V  /\  x  e.  _V )  ->  ( ( G `  x ) `' G x 
<->  x G ( G `
 x ) ) )
2017, 18, 19sylancl 413 . . . . . . . . . . . . 13  |-  ( ( G  Fn  A  /\  x  e.  A )  ->  ( ( G `  x ) `' G x 
<->  x G ( G `
 x ) ) )
21 df-br 4030 . . . . . . . . . . . . 13  |-  ( x G ( G `  x )  <->  <. x ,  ( G `  x
) >.  e.  G )
2220, 21bitrdi 196 . . . . . . . . . . . 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 167 . . . . . . . . . 10  |-  ( ( ( F : A -onto-> B  /\  G : A -onto-> B )  /\  x  e.  A )  ->  ( G `  x ) `' G x )
257adantr 276 . . . . . . . . . . . 12  |-  ( ( F : A -onto-> B  /\  G : A -onto-> B
)  ->  F  Fn  A )
26 fnopfv 5688 . . . . . . . . . . . 12  |-  ( ( F  Fn  A  /\  x  e.  A )  -> 
<. x ,  ( F `
 x ) >.  e.  F )
2725, 26sylan 283 . . . . . . . . . . 11  |-  ( ( ( F : A -onto-> B  /\  G : A -onto-> B )  /\  x  e.  A )  ->  <. x ,  ( F `  x ) >.  e.  F
)
28 df-br 4030 . . . . . . . . . . 11  |-  ( x F ( F `  x )  <->  <. x ,  ( F `  x
) >.  e.  F )
2927, 28sylibr 134 . . . . . . . . . 10  |-  ( ( ( F : A -onto-> B  /\  G : A -onto-> B )  /\  x  e.  A )  ->  x F ( F `  x ) )
30 breq2 4033 . . . . . . . . . . . 12  |-  ( y  =  x  ->  (
( G `  x
) `' G y  <-> 
( G `  x
) `' G x ) )
31 breq1 4032 . . . . . . . . . . . 12  |-  ( y  =  x  ->  (
y F ( F `
 x )  <->  x F
( F `  x
) ) )
3230, 31anbi12d 473 . . . . . . . . . . 11  |-  ( y  =  x  ->  (
( ( G `  x ) `' G
y  /\  y F
( F `  x
) )  <->  ( ( G `  x ) `' G x  /\  x F ( F `  x ) ) ) )
3318, 32spcev 2855 . . . . . . . . . 10  |-  ( ( ( G `  x
) `' G x  /\  x F ( F `  x ) )  ->  E. y
( ( G `  x ) `' G
y  /\  y F
( F `  x
) ) )
3424, 29, 33syl2anc 411 . . . . . . . . 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 340 . . . . . . . . . . . 12  |-  ( ( F : A -onto-> B  /\  x  e.  A
)  ->  ( F  Fn  A  /\  x  e.  A ) )
3736adantlr 477 . . . . . . . . . . 11  |-  ( ( ( F : A -onto-> B  /\  G : A -onto-> B )  /\  x  e.  A )  ->  ( F  Fn  A  /\  x  e.  A )
)
38 funfvex 5571 . . . . . . . . . . . 12  |-  ( ( Fun  F  /\  x  e.  dom  F )  -> 
( F `  x
)  e.  _V )
3938funfni 5354 . . . . . . . . . . 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 4829 . . . . . . . . . 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 411 . . . . . . . . 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 167 . . . . . . . 8  |-  ( ( ( F : A -onto-> B  /\  G : A -onto-> B )  /\  x  e.  A )  ->  ( G `  x )
( F  o.  `' G ) ( F `
 x ) )
4443adantlr 477 . . . . . . 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 4031 . . . . . . . 8  |-  ( ( F  o.  `' G
)  =  (  _I  |`  B )  ->  (
( G `  x
) ( F  o.  `' G ) ( F `
 x )  <->  ( G `  x ) (  _I  |`  B ) ( F `
 x ) ) )
4645ad2antlr 489 . . . . . . 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 147 . . . . . 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 5476 . . . . . . . . . 10  |-  ( G : A -onto-> B  ->  G : A --> B )
4948adantl 277 . . . . . . . . 9  |-  ( ( F : A -onto-> B  /\  G : A -onto-> B
)  ->  G : A
--> B )
5049ffvelcdmda 5693 . . . . . . . 8  |-  ( ( ( F : A -onto-> B  /\  G : A -onto-> B )  /\  x  e.  A )  ->  ( G `  x )  e.  B )
51 fof 5476 . . . . . . . . . 10  |-  ( F : A -onto-> B  ->  F : A --> B )
5251adantr 276 . . . . . . . . 9  |-  ( ( F : A -onto-> B  /\  G : A -onto-> B
)  ->  F : A
--> B )
5352ffvelcdmda 5693 . . . . . . . 8  |-  ( ( ( F : A -onto-> B  /\  G : A -onto-> B )  /\  x  e.  A )  ->  ( F `  x )  e.  B )
54 resieq 4952 . . . . . . . 8  |-  ( ( ( G `  x
)  e.  B  /\  ( F `  x )  e.  B )  -> 
( ( G `  x ) (  _I  |`  B ) ( F `
 x )  <->  ( G `  x )  =  ( F `  x ) ) )
5550, 53, 54syl2anc 411 . . . . . . 7  |-  ( ( ( F : A -onto-> B  /\  G : A -onto-> B )  /\  x  e.  A )  ->  (
( G `  x
) (  _I  |`  B ) ( F `  x
)  <->  ( G `  x )  =  ( F `  x ) ) )
5655adantlr 477 . . . . . 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 147 . . . . 5  |-  ( ( ( ( F : A -onto-> B  /\  G : A -onto-> B )  /\  ( F  o.  `' G
)  =  (  _I  |`  B ) )  /\  x  e.  A )  ->  ( G `  x
)  =  ( F `
 x ) )
5857eqcomd 2199 . . . 4  |-  ( ( ( ( F : A -onto-> B  /\  G : A -onto-> B )  /\  ( F  o.  `' G
)  =  (  _I  |`  B ) )  /\  x  e.  A )  ->  ( F `  x
)  =  ( G `
 x ) )
598, 10, 58eqfnfvd 5658 . . 3  |-  ( ( ( F : A -onto-> B  /\  G : A -onto-> B )  /\  ( F  o.  `' G
)  =  (  _I  |`  B ) )  ->  F  =  G )
6059ex 115 . 2  |-  ( ( F : A -onto-> B  /\  G : A -onto-> B
)  ->  ( ( F  o.  `' G
)  =  (  _I  |`  B )  ->  F  =  G ) )
616, 60impbid 129 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 104    <-> wb 105    = wceq 1364   E.wex 1503    e. wcel 2164   _Vcvv 2760   <.cop 3621   class class class wbr 4029    _I cid 4319   `'ccnv 4658    |` cres 4661    o. ccom 4663    Fn wfn 5249   -->wf 5250   -onto->wfo 5252   ` cfv 5254
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 710  ax-5 1458  ax-7 1459  ax-gen 1460  ax-ie1 1504  ax-ie2 1505  ax-8 1515  ax-10 1516  ax-11 1517  ax-i12 1518  ax-bndl 1520  ax-4 1521  ax-17 1537  ax-i9 1541  ax-ial 1545  ax-i5r 1546  ax-14 2167  ax-ext 2175  ax-sep 4147  ax-pow 4203  ax-pr 4238
This theorem depends on definitions:  df-bi 117  df-3an 982  df-tru 1367  df-nf 1472  df-sb 1774  df-eu 2045  df-mo 2046  df-clab 2180  df-cleq 2186  df-clel 2189  df-nfc 2325  df-ral 2477  df-rex 2478  df-v 2762  df-sbc 2986  df-csb 3081  df-un 3157  df-in 3159  df-ss 3166  df-pw 3603  df-sn 3624  df-pr 3625  df-op 3627  df-uni 3836  df-br 4030  df-opab 4091  df-mpt 4092  df-id 4324  df-xp 4665  df-rel 4666  df-cnv 4667  df-co 4668  df-dm 4669  df-rn 4670  df-res 4671  df-iota 5215  df-fun 5256  df-fn 5257  df-f 5258  df-fo 5260  df-fv 5262
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator