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

Theorem f1eqcocnv 6004
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 5675 . . . 4  |-  ( F : A -1-1-> B  -> 
( `' F  o.  F )  =  (  _I  |`  A )
)
2 coeq2 5003 . . . . 5  |-  ( F  =  G  ->  ( `' F  o.  F
)  =  ( `' F  o.  G ) )
32eqeq1d 2451 . . . 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 5612 . . . . . . 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 5612 . . . . . . 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 1729 . . . . . . . . . 10  |-  x  =  x
13 resieq 5126 . . . . . . . . . 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 4299 . . . . . . . 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 5513 . . . . . . . . . . . . . . . 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 5515 . . . . . . . . . . . . . . . . 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 2510 . . . . . . . . . . . . . . 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 5740 . . . . . . . . . . . . . 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 4298 . . . . . . . . . . . 12  |-  ( x G y  <->  <. x ,  y >.  e.  G
)
31 eqcom 2445 . . . . . . . . . . . 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 5513 . . . . . . . . . . . . . . . 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 5515 . . . . . . . . . . . . . . . . 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 2510 . . . . . . . . . . . . . . 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 5740 . . . . . . . . . . . . . 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 4298 . . . . . . . . . . . . 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 2980 . . . . . . . . . . . . 13  |-  y  e. 
_V
46 vex 2980 . . . . . . . . . . . . 13  |-  x  e. 
_V
4745, 46brcnv 5027 . . . . . . . . . . . 12  |-  ( y `' F x  <->  x F
y )
48 eqcom 2445 . . . . . . . . . . . 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 1676 . . . . . . . 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 5015 . . . . . . . 8  |-  ( x ( `' F  o.  G ) x  <->  E. y
( x G y  /\  y `' F x ) )
54 fvex 5706 . . . . . . . . 9  |-  ( G `
 x )  e. 
_V
5554eqvinc 3091 . . . . . . . 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 5805 . . . 4  |-  ( ( ( F : A -1-1-> B  /\  G : A -1-1-> B )  /\  ( `' F  o.  G )  =  (  _I  |`  A ) )  ->  G  =  F )
6059eqcomd 2448 . . 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 1369   E.wex 1586    e. wcel 1756   <.cop 3888   class class class wbr 4297    _I cid 4636   `'ccnv 4844   dom cdm 4845    |` cres 4847    o. ccom 4849   Fun wfun 5417    Fn wfn 5418   -1-1->wf1 5420   ` cfv 5423
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1591  ax-4 1602  ax-5 1670  ax-6 1708  ax-7 1728  ax-8 1758  ax-9 1760  ax-10 1775  ax-11 1780  ax-12 1792  ax-13 1943  ax-ext 2423  ax-sep 4418  ax-nul 4426  ax-pow 4475  ax-pr 4536
This theorem depends on definitions:  df-bi 185  df-or 370  df-an 371  df-3an 967  df-tru 1372  df-ex 1587  df-nf 1590  df-sb 1701  df-eu 2257  df-mo 2258  df-clab 2430  df-cleq 2436  df-clel 2439  df-nfc 2573  df-ne 2613  df-ral 2725  df-rex 2726  df-rab 2729  df-v 2979  df-sbc 3192  df-csb 3294  df-dif 3336  df-un 3338  df-in 3340  df-ss 3347  df-nul 3643  df-if 3797  df-sn 3883  df-pr 3885  df-op 3889  df-uni 4097  df-br 4298  df-opab 4356  df-mpt 4357  df-id 4641  df-xp 4851  df-rel 4852  df-cnv 4853  df-co 4854  df-dm 4855  df-rn 4856  df-res 4857  df-ima 4858  df-iota 5386  df-fun 5425  df-fn 5426  df-f 5427  df-f1 5428  df-fo 5429  df-f1o 5430  df-fv 5431
This theorem is referenced by:  weisoeq  6051
  Copyright terms: Public domain W3C validator