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

Theorem f1eqcocnv 6192
Description: Condition for function equality in terms of vanishing of the composition with the inverse. (Contributed by Stefan O'Rear, 12-Feb-2015.)
Assertion
Ref Expression
f1eqcocnv  |-  ( ( F : A -1-1-> B  /\  G : A -1-1-> B
)  ->  ( F  =  G  <->  ( `' F  o.  G )  =  (  _I  |`  A )
) )

Proof of Theorem f1eqcocnv
Dummy variables  x  y are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 f1cocnv1 5845 . . . 4  |-  ( F : A -1-1-> B  -> 
( `' F  o.  F )  =  (  _I  |`  A )
)
2 coeq2 5161 . . . . 5  |-  ( F  =  G  ->  ( `' F  o.  F
)  =  ( `' F  o.  G ) )
32eqeq1d 2469 . . . 4  |-  ( F  =  G  ->  (
( `' F  o.  F )  =  (  _I  |`  A )  <->  ( `' F  o.  G
)  =  (  _I  |`  A ) ) )
41, 3syl5ibcom 220 . . 3  |-  ( F : A -1-1-> B  -> 
( F  =  G  ->  ( `' F  o.  G )  =  (  _I  |`  A )
) )
54adantr 465 . 2  |-  ( ( F : A -1-1-> B  /\  G : A -1-1-> B
)  ->  ( F  =  G  ->  ( `' F  o.  G )  =  (  _I  |`  A ) ) )
6 f1fn 5782 . . . . . . 7  |-  ( G : A -1-1-> B  ->  G  Fn  A )
76adantl 466 . . . . . 6  |-  ( ( F : A -1-1-> B  /\  G : A -1-1-> B
)  ->  G  Fn  A )
87adantr 465 . . . . 5  |-  ( ( ( F : A -1-1-> B  /\  G : A -1-1-> B )  /\  ( `' F  o.  G )  =  (  _I  |`  A ) )  ->  G  Fn  A )
9 f1fn 5782 . . . . . . 7  |-  ( F : A -1-1-> B  ->  F  Fn  A )
109adantr 465 . . . . . 6  |-  ( ( F : A -1-1-> B  /\  G : A -1-1-> B
)  ->  F  Fn  A )
1110adantr 465 . . . . 5  |-  ( ( ( F : A -1-1-> B  /\  G : A -1-1-> B )  /\  ( `' F  o.  G )  =  (  _I  |`  A ) )  ->  F  Fn  A )
12 equid 1740 . . . . . . . . . 10  |-  x  =  x
13 resieq 5284 . . . . . . . . . 10  |-  ( ( x  e.  A  /\  x  e.  A )  ->  ( x (  _I  |`  A ) x  <->  x  =  x ) )
1412, 13mpbiri 233 . . . . . . . . 9  |-  ( ( x  e.  A  /\  x  e.  A )  ->  x (  _I  |`  A ) x )
1514anidms 645 . . . . . . . 8  |-  ( x  e.  A  ->  x
(  _I  |`  A ) x )
1615adantl 466 . . . . . . 7  |-  ( ( ( ( F : A -1-1-> B  /\  G : A -1-1-> B )  /\  ( `' F  o.  G
)  =  (  _I  |`  A ) )  /\  x  e.  A )  ->  x (  _I  |`  A ) x )
17 breq 4449 . . . . . . . 8  |-  ( ( `' F  o.  G
)  =  (  _I  |`  A )  ->  (
x ( `' F  o.  G ) x  <->  x (  _I  |`  A ) x ) )
1817ad2antlr 726 . . . . . . 7  |-  ( ( ( ( F : A -1-1-> B  /\  G : A -1-1-> B )  /\  ( `' F  o.  G
)  =  (  _I  |`  A ) )  /\  x  e.  A )  ->  ( x ( `' F  o.  G ) x  <->  x (  _I  |`  A ) x ) )
1916, 18mpbird 232 . . . . . 6  |-  ( ( ( ( F : A -1-1-> B  /\  G : A -1-1-> B )  /\  ( `' F  o.  G
)  =  (  _I  |`  A ) )  /\  x  e.  A )  ->  x ( `' F  o.  G ) x )
20 fnfun 5678 . . . . . . . . . . . . . . . 16  |-  ( G  Fn  A  ->  Fun  G )
217, 20syl 16 . . . . . . . . . . . . . . 15  |-  ( ( F : A -1-1-> B  /\  G : A -1-1-> B
)  ->  Fun  G )
2221adantr 465 . . . . . . . . . . . . . 14  |-  ( ( ( F : A -1-1-> B  /\  G : A -1-1-> B )  /\  x  e.  A )  ->  Fun  G )
23 fndm 5680 . . . . . . . . . . . . . . . . 17  |-  ( G  Fn  A  ->  dom  G  =  A )
247, 23syl 16 . . . . . . . . . . . . . . . 16  |-  ( ( F : A -1-1-> B  /\  G : A -1-1-> B
)  ->  dom  G  =  A )
2524eleq2d 2537 . . . . . . . . . . . . . . 15  |-  ( ( F : A -1-1-> B  /\  G : A -1-1-> B
)  ->  ( x  e.  dom  G  <->  x  e.  A ) )
2625biimpar 485 . . . . . . . . . . . . . 14  |-  ( ( ( F : A -1-1-> B  /\  G : A -1-1-> B )  /\  x  e.  A )  ->  x  e.  dom  G )
27 funopfvb 5911 . . . . . . . . . . . . . 14  |-  ( ( Fun  G  /\  x  e.  dom  G )  -> 
( ( G `  x )  =  y  <->  <. x ,  y >.  e.  G ) )
2822, 26, 27syl2anc 661 . . . . . . . . . . . . 13  |-  ( ( ( F : A -1-1-> B  /\  G : A -1-1-> B )  /\  x  e.  A )  ->  (
( G `  x
)  =  y  <->  <. x ,  y >.  e.  G
) )
2928bicomd 201 . . . . . . . . . . . 12  |-  ( ( ( F : A -1-1-> B  /\  G : A -1-1-> B )  /\  x  e.  A )  ->  ( <. x ,  y >.  e.  G  <->  ( G `  x )  =  y ) )
30 df-br 4448 . . . . . . . . . . . 12  |-  ( x G y  <->  <. x ,  y >.  e.  G
)
31 eqcom 2476 . . . . . . . . . . . 12  |-  ( y  =  ( G `  x )  <->  ( G `  x )  =  y )
3229, 30, 313bitr4g 288 . . . . . . . . . . 11  |-  ( ( ( F : A -1-1-> B  /\  G : A -1-1-> B )  /\  x  e.  A )  ->  (
x G y  <->  y  =  ( G `  x ) ) )
3332biimpd 207 . . . . . . . . . 10  |-  ( ( ( F : A -1-1-> B  /\  G : A -1-1-> B )  /\  x  e.  A )  ->  (
x G y  -> 
y  =  ( G `
 x ) ) )
34 fnfun 5678 . . . . . . . . . . . . . . . 16  |-  ( F  Fn  A  ->  Fun  F )
3510, 34syl 16 . . . . . . . . . . . . . . 15  |-  ( ( F : A -1-1-> B  /\  G : A -1-1-> B
)  ->  Fun  F )
3635adantr 465 . . . . . . . . . . . . . 14  |-  ( ( ( F : A -1-1-> B  /\  G : A -1-1-> B )  /\  x  e.  A )  ->  Fun  F )
37 fndm 5680 . . . . . . . . . . . . . . . . 17  |-  ( F  Fn  A  ->  dom  F  =  A )
3810, 37syl 16 . . . . . . . . . . . . . . . 16  |-  ( ( F : A -1-1-> B  /\  G : A -1-1-> B
)  ->  dom  F  =  A )
3938eleq2d 2537 . . . . . . . . . . . . . . 15  |-  ( ( F : A -1-1-> B  /\  G : A -1-1-> B
)  ->  ( x  e.  dom  F  <->  x  e.  A ) )
4039biimpar 485 . . . . . . . . . . . . . 14  |-  ( ( ( F : A -1-1-> B  /\  G : A -1-1-> B )  /\  x  e.  A )  ->  x  e.  dom  F )
41 funopfvb 5911 . . . . . . . . . . . . . 14  |-  ( ( Fun  F  /\  x  e.  dom  F )  -> 
( ( F `  x )  =  y  <->  <. x ,  y >.  e.  F ) )
4236, 40, 41syl2anc 661 . . . . . . . . . . . . 13  |-  ( ( ( F : A -1-1-> B  /\  G : A -1-1-> B )  /\  x  e.  A )  ->  (
( F `  x
)  =  y  <->  <. x ,  y >.  e.  F
) )
43 df-br 4448 . . . . . . . . . . . . 13  |-  ( x F y  <->  <. x ,  y >.  e.  F
)
4442, 43syl6rbbr 264 . . . . . . . . . . . 12  |-  ( ( ( F : A -1-1-> B  /\  G : A -1-1-> B )  /\  x  e.  A )  ->  (
x F y  <->  ( F `  x )  =  y ) )
45 vex 3116 . . . . . . . . . . . . 13  |-  y  e. 
_V
46 vex 3116 . . . . . . . . . . . . 13  |-  x  e. 
_V
4745, 46brcnv 5185 . . . . . . . . . . . 12  |-  ( y `' F x  <->  x F
y )
48 eqcom 2476 . . . . . . . . . . . 12  |-  ( y  =  ( F `  x )  <->  ( F `  x )  =  y )
4944, 47, 483bitr4g 288 . . . . . . . . . . 11  |-  ( ( ( F : A -1-1-> B  /\  G : A -1-1-> B )  /\  x  e.  A )  ->  (
y `' F x  <-> 
y  =  ( F `
 x ) ) )
5049biimpd 207 . . . . . . . . . 10  |-  ( ( ( F : A -1-1-> B  /\  G : A -1-1-> B )  /\  x  e.  A )  ->  (
y `' F x  ->  y  =  ( F `  x ) ) )
5133, 50anim12d 563 . . . . . . . . 9  |-  ( ( ( F : A -1-1-> B  /\  G : A -1-1-> B )  /\  x  e.  A )  ->  (
( x G y  /\  y `' F x )  ->  (
y  =  ( G `
 x )  /\  y  =  ( F `  x ) ) ) )
5251eximdv 1686 . . . . . . . 8  |-  ( ( ( F : A -1-1-> B  /\  G : A -1-1-> B )  /\  x  e.  A )  ->  ( E. y ( x G y  /\  y `' F x )  ->  E. y ( y  =  ( G `  x
)  /\  y  =  ( F `  x ) ) ) )
5346, 46brco 5173 . . . . . . . 8  |-  ( x ( `' F  o.  G ) x  <->  E. y
( x G y  /\  y `' F x ) )
54 fvex 5876 . . . . . . . . 9  |-  ( G `
 x )  e. 
_V
5554eqvinc 3230 . . . . . . . 8  |-  ( ( G `  x )  =  ( F `  x )  <->  E. y
( y  =  ( G `  x )  /\  y  =  ( F `  x ) ) )
5652, 53, 553imtr4g 270 . . . . . . 7  |-  ( ( ( F : A -1-1-> B  /\  G : A -1-1-> B )  /\  x  e.  A )  ->  (
x ( `' F  o.  G ) x  -> 
( G `  x
)  =  ( F `
 x ) ) )
5756adantlr 714 . . . . . 6  |-  ( ( ( ( F : A -1-1-> B  /\  G : A -1-1-> B )  /\  ( `' F  o.  G
)  =  (  _I  |`  A ) )  /\  x  e.  A )  ->  ( x ( `' F  o.  G ) x  ->  ( G `  x )  =  ( F `  x ) ) )
5819, 57mpd 15 . . . . 5  |-  ( ( ( ( F : A -1-1-> B  /\  G : A -1-1-> B )  /\  ( `' F  o.  G
)  =  (  _I  |`  A ) )  /\  x  e.  A )  ->  ( G `  x
)  =  ( F `
 x ) )
598, 11, 58eqfnfvd 5978 . . . 4  |-  ( ( ( F : A -1-1-> B  /\  G : A -1-1-> B )  /\  ( `' F  o.  G )  =  (  _I  |`  A ) )  ->  G  =  F )
6059eqcomd 2475 . . 3  |-  ( ( ( F : A -1-1-> B  /\  G : A -1-1-> B )  /\  ( `' F  o.  G )  =  (  _I  |`  A ) )  ->  F  =  G )
6160ex 434 . 2  |-  ( ( F : A -1-1-> B  /\  G : A -1-1-> B
)  ->  ( ( `' F  o.  G
)  =  (  _I  |`  A )  ->  F  =  G ) )
625, 61impbid 191 1  |-  ( ( F : A -1-1-> B  /\  G : A -1-1-> B
)  ->  ( F  =  G  <->  ( `' F  o.  G )  =  (  _I  |`  A )
) )
Colors of variables: wff setvar class
Syntax hints:    -> wi 4    <-> wb 184    /\ wa 369    = wceq 1379   E.wex 1596    e. wcel 1767   <.cop 4033   class class class wbr 4447    _I cid 4790   `'ccnv 4998   dom cdm 4999    |` cres 5001    o. ccom 5003   Fun wfun 5582    Fn wfn 5583   -1-1->wf1 5585   ` cfv 5588
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1601  ax-4 1612  ax-5 1680  ax-6 1719  ax-7 1739  ax-8 1769  ax-9 1771  ax-10 1786  ax-11 1791  ax-12 1803  ax-13 1968  ax-ext 2445  ax-sep 4568  ax-nul 4576  ax-pow 4625  ax-pr 4686
This theorem depends on definitions:  df-bi 185  df-or 370  df-an 371  df-3an 975  df-tru 1382  df-ex 1597  df-nf 1600  df-sb 1712  df-eu 2279  df-mo 2280  df-clab 2453  df-cleq 2459  df-clel 2462  df-nfc 2617  df-ne 2664  df-ral 2819  df-rex 2820  df-rab 2823  df-v 3115  df-sbc 3332  df-csb 3436  df-dif 3479  df-un 3481  df-in 3483  df-ss 3490  df-nul 3786  df-if 3940  df-sn 4028  df-pr 4030  df-op 4034  df-uni 4246  df-br 4448  df-opab 4506  df-mpt 4507  df-id 4795  df-xp 5005  df-rel 5006  df-cnv 5007  df-co 5008  df-dm 5009  df-rn 5010  df-res 5011  df-ima 5012  df-iota 5551  df-fun 5590  df-fn 5591  df-f 5592  df-f1 5593  df-fo 5594  df-f1o 5595  df-fv 5596
This theorem is referenced by:  weisoeq  6239
  Copyright terms: Public domain W3C validator