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

Theorem fliftfun 5811
Description: The function  F is the unique function defined by  F `  A  =  B, provided that the well-definedness condition holds. (Contributed by Mario Carneiro, 23-Dec-2016.)
Hypotheses
Ref Expression
flift.1  |-  F  =  ran  ( x  e.  X  |->  <. A ,  B >. )
flift.2  |-  ( (
ph  /\  x  e.  X )  ->  A  e.  R )
flift.3  |-  ( (
ph  /\  x  e.  X )  ->  B  e.  S )
fliftfun.4  |-  ( x  =  y  ->  A  =  C )
fliftfun.5  |-  ( x  =  y  ->  B  =  D )
Assertion
Ref Expression
fliftfun  |-  ( ph  ->  ( Fun  F  <->  A. x  e.  X  A. y  e.  X  ( A  =  C  ->  B  =  D ) ) )
Distinct variable groups:    y, A    y, B    x, C    x, y, R    x, D    y, F    ph, x, y    x, X, y    x, S, y
Allowed substitution hints:    A( x)    B( x)    C( y)    D( y)    F( x)

Proof of Theorem fliftfun
Dummy variables  v  u  z are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 nfv 1605 . . 3  |-  F/ x ph
2 flift.1 . . . . 5  |-  F  =  ran  ( x  e.  X  |->  <. A ,  B >. )
3 nfmpt1 4109 . . . . . 6  |-  F/_ x
( x  e.  X  |-> 
<. A ,  B >. )
43nfrn 4921 . . . . 5  |-  F/_ x ran  ( x  e.  X  |-> 
<. A ,  B >. )
52, 4nfcxfr 2416 . . . 4  |-  F/_ x F
65nffun 5277 . . 3  |-  F/ x Fun  F
7 fveq2 5525 . . . . . . 7  |-  ( A  =  C  ->  ( F `  A )  =  ( F `  C ) )
8 simplr 731 . . . . . . . . 9  |-  ( ( ( ph  /\  Fun  F )  /\  ( x  e.  X  /\  y  e.  X ) )  ->  Fun  F )
9 flift.2 . . . . . . . . . . 11  |-  ( (
ph  /\  x  e.  X )  ->  A  e.  R )
10 flift.3 . . . . . . . . . . 11  |-  ( (
ph  /\  x  e.  X )  ->  B  e.  S )
112, 9, 10fliftel1 5809 . . . . . . . . . 10  |-  ( (
ph  /\  x  e.  X )  ->  A F B )
1211ad2ant2r 727 . . . . . . . . 9  |-  ( ( ( ph  /\  Fun  F )  /\  ( x  e.  X  /\  y  e.  X ) )  ->  A F B )
13 funbrfv 5561 . . . . . . . . 9  |-  ( Fun 
F  ->  ( A F B  ->  ( F `
 A )  =  B ) )
148, 12, 13sylc 56 . . . . . . . 8  |-  ( ( ( ph  /\  Fun  F )  /\  ( x  e.  X  /\  y  e.  X ) )  -> 
( F `  A
)  =  B )
15 simprr 733 . . . . . . . . . . 11  |-  ( ( ( ph  /\  Fun  F )  /\  ( x  e.  X  /\  y  e.  X ) )  -> 
y  e.  X )
16 eqidd 2284 . . . . . . . . . . 11  |-  ( ( ( ph  /\  Fun  F )  /\  ( x  e.  X  /\  y  e.  X ) )  ->  C  =  C )
17 eqidd 2284 . . . . . . . . . . 11  |-  ( ( ( ph  /\  Fun  F )  /\  ( x  e.  X  /\  y  e.  X ) )  ->  D  =  D )
18 fliftfun.4 . . . . . . . . . . . . . 14  |-  ( x  =  y  ->  A  =  C )
1918eqeq2d 2294 . . . . . . . . . . . . 13  |-  ( x  =  y  ->  ( C  =  A  <->  C  =  C ) )
20 fliftfun.5 . . . . . . . . . . . . . 14  |-  ( x  =  y  ->  B  =  D )
2120eqeq2d 2294 . . . . . . . . . . . . 13  |-  ( x  =  y  ->  ( D  =  B  <->  D  =  D ) )
2219, 21anbi12d 691 . . . . . . . . . . . 12  |-  ( x  =  y  ->  (
( C  =  A  /\  D  =  B )  <->  ( C  =  C  /\  D  =  D ) ) )
2322rspcev 2884 . . . . . . . . . . 11  |-  ( ( y  e.  X  /\  ( C  =  C  /\  D  =  D
) )  ->  E. x  e.  X  ( C  =  A  /\  D  =  B ) )
2415, 16, 17, 23syl12anc 1180 . . . . . . . . . 10  |-  ( ( ( ph  /\  Fun  F )  /\  ( x  e.  X  /\  y  e.  X ) )  ->  E. x  e.  X  ( C  =  A  /\  D  =  B
) )
252, 9, 10fliftel 5808 . . . . . . . . . . 11  |-  ( ph  ->  ( C F D  <->  E. x  e.  X  ( C  =  A  /\  D  =  B
) ) )
2625ad2antrr 706 . . . . . . . . . 10  |-  ( ( ( ph  /\  Fun  F )  /\  ( x  e.  X  /\  y  e.  X ) )  -> 
( C F D  <->  E. x  e.  X  ( C  =  A  /\  D  =  B
) ) )
2724, 26mpbird 223 . . . . . . . . 9  |-  ( ( ( ph  /\  Fun  F )  /\  ( x  e.  X  /\  y  e.  X ) )  ->  C F D )
28 funbrfv 5561 . . . . . . . . 9  |-  ( Fun 
F  ->  ( C F D  ->  ( F `
 C )  =  D ) )
298, 27, 28sylc 56 . . . . . . . 8  |-  ( ( ( ph  /\  Fun  F )  /\  ( x  e.  X  /\  y  e.  X ) )  -> 
( F `  C
)  =  D )
3014, 29eqeq12d 2297 . . . . . . 7  |-  ( ( ( ph  /\  Fun  F )  /\  ( x  e.  X  /\  y  e.  X ) )  -> 
( ( F `  A )  =  ( F `  C )  <-> 
B  =  D ) )
317, 30syl5ib 210 . . . . . 6  |-  ( ( ( ph  /\  Fun  F )  /\  ( x  e.  X  /\  y  e.  X ) )  -> 
( A  =  C  ->  B  =  D ) )
3231anassrs 629 . . . . 5  |-  ( ( ( ( ph  /\  Fun  F )  /\  x  e.  X )  /\  y  e.  X )  ->  ( A  =  C  ->  B  =  D ) )
3332ralrimiva 2626 . . . 4  |-  ( ( ( ph  /\  Fun  F )  /\  x  e.  X )  ->  A. y  e.  X  ( A  =  C  ->  B  =  D ) )
3433exp31 587 . . 3  |-  ( ph  ->  ( Fun  F  -> 
( x  e.  X  ->  A. y  e.  X  ( A  =  C  ->  B  =  D ) ) ) )
351, 6, 34ralrimd 2631 . 2  |-  ( ph  ->  ( Fun  F  ->  A. x  e.  X  A. y  e.  X  ( A  =  C  ->  B  =  D ) ) )
362, 9, 10fliftel 5808 . . . . . . . . 9  |-  ( ph  ->  ( z F u  <->  E. x  e.  X  ( z  =  A  /\  u  =  B ) ) )
372, 9, 10fliftel 5808 . . . . . . . . . 10  |-  ( ph  ->  ( z F v  <->  E. x  e.  X  ( z  =  A  /\  v  =  B ) ) )
3818eqeq2d 2294 . . . . . . . . . . . 12  |-  ( x  =  y  ->  (
z  =  A  <->  z  =  C ) )
3920eqeq2d 2294 . . . . . . . . . . . 12  |-  ( x  =  y  ->  (
v  =  B  <->  v  =  D ) )
4038, 39anbi12d 691 . . . . . . . . . . 11  |-  ( x  =  y  ->  (
( z  =  A  /\  v  =  B )  <->  ( z  =  C  /\  v  =  D ) ) )
4140cbvrexv 2765 . . . . . . . . . 10  |-  ( E. x  e.  X  ( z  =  A  /\  v  =  B )  <->  E. y  e.  X  ( z  =  C  /\  v  =  D )
)
4237, 41syl6bb 252 . . . . . . . . 9  |-  ( ph  ->  ( z F v  <->  E. y  e.  X  ( z  =  C  /\  v  =  D ) ) )
4336, 42anbi12d 691 . . . . . . . 8  |-  ( ph  ->  ( ( z F u  /\  z F v )  <->  ( E. x  e.  X  (
z  =  A  /\  u  =  B )  /\  E. y  e.  X  ( z  =  C  /\  v  =  D ) ) ) )
4443biimpd 198 . . . . . . 7  |-  ( ph  ->  ( ( z F u  /\  z F v )  ->  ( E. x  e.  X  ( z  =  A  /\  u  =  B )  /\  E. y  e.  X  ( z  =  C  /\  v  =  D ) ) ) )
45 reeanv 2707 . . . . . . . 8  |-  ( E. x  e.  X  E. y  e.  X  (
( z  =  A  /\  u  =  B )  /\  ( z  =  C  /\  v  =  D ) )  <->  ( E. x  e.  X  (
z  =  A  /\  u  =  B )  /\  E. y  e.  X  ( z  =  C  /\  v  =  D ) ) )
46 r19.29 2683 . . . . . . . . . 10  |-  ( ( A. x  e.  X  A. y  e.  X  ( A  =  C  ->  B  =  D )  /\  E. x  e.  X  E. y  e.  X  ( ( z  =  A  /\  u  =  B )  /\  (
z  =  C  /\  v  =  D )
) )  ->  E. x  e.  X  ( A. y  e.  X  ( A  =  C  ->  B  =  D )  /\  E. y  e.  X  ( ( z  =  A  /\  u  =  B )  /\  ( z  =  C  /\  v  =  D ) ) ) )
47 r19.29 2683 . . . . . . . . . . . 12  |-  ( ( A. y  e.  X  ( A  =  C  ->  B  =  D )  /\  E. y  e.  X  ( ( z  =  A  /\  u  =  B )  /\  (
z  =  C  /\  v  =  D )
) )  ->  E. y  e.  X  ( ( A  =  C  ->  B  =  D )  /\  ( ( z  =  A  /\  u  =  B )  /\  (
z  =  C  /\  v  =  D )
) ) )
48 eqtr2 2301 . . . . . . . . . . . . . . . . 17  |-  ( ( z  =  A  /\  z  =  C )  ->  A  =  C )
4948ad2ant2r 727 . . . . . . . . . . . . . . . 16  |-  ( ( ( z  =  A  /\  u  =  B )  /\  ( z  =  C  /\  v  =  D ) )  ->  A  =  C )
5049imim1i 54 . . . . . . . . . . . . . . 15  |-  ( ( A  =  C  ->  B  =  D )  ->  ( ( ( z  =  A  /\  u  =  B )  /\  (
z  =  C  /\  v  =  D )
)  ->  B  =  D ) )
5150imp 418 . . . . . . . . . . . . . 14  |-  ( ( ( A  =  C  ->  B  =  D )  /\  ( ( z  =  A  /\  u  =  B )  /\  ( z  =  C  /\  v  =  D ) ) )  ->  B  =  D )
52 simprlr 739 . . . . . . . . . . . . . 14  |-  ( ( ( A  =  C  ->  B  =  D )  /\  ( ( z  =  A  /\  u  =  B )  /\  ( z  =  C  /\  v  =  D ) ) )  ->  u  =  B )
53 simprrr 741 . . . . . . . . . . . . . 14  |-  ( ( ( A  =  C  ->  B  =  D )  /\  ( ( z  =  A  /\  u  =  B )  /\  ( z  =  C  /\  v  =  D ) ) )  -> 
v  =  D )
5451, 52, 533eqtr4d 2325 . . . . . . . . . . . . 13  |-  ( ( ( A  =  C  ->  B  =  D )  /\  ( ( z  =  A  /\  u  =  B )  /\  ( z  =  C  /\  v  =  D ) ) )  ->  u  =  v )
5554rexlimivw 2663 . . . . . . . . . . . 12  |-  ( E. y  e.  X  ( ( A  =  C  ->  B  =  D )  /\  ( ( z  =  A  /\  u  =  B )  /\  ( z  =  C  /\  v  =  D ) ) )  ->  u  =  v )
5647, 55syl 15 . . . . . . . . . . 11  |-  ( ( A. y  e.  X  ( A  =  C  ->  B  =  D )  /\  E. y  e.  X  ( ( z  =  A  /\  u  =  B )  /\  (
z  =  C  /\  v  =  D )
) )  ->  u  =  v )
5756rexlimivw 2663 . . . . . . . . . 10  |-  ( E. x  e.  X  ( A. y  e.  X  ( A  =  C  ->  B  =  D )  /\  E. y  e.  X  ( ( z  =  A  /\  u  =  B )  /\  (
z  =  C  /\  v  =  D )
) )  ->  u  =  v )
5846, 57syl 15 . . . . . . . . 9  |-  ( ( A. x  e.  X  A. y  e.  X  ( A  =  C  ->  B  =  D )  /\  E. x  e.  X  E. y  e.  X  ( ( z  =  A  /\  u  =  B )  /\  (
z  =  C  /\  v  =  D )
) )  ->  u  =  v )
5958ex 423 . . . . . . . 8  |-  ( A. x  e.  X  A. y  e.  X  ( A  =  C  ->  B  =  D )  -> 
( E. x  e.  X  E. y  e.  X  ( ( z  =  A  /\  u  =  B )  /\  (
z  =  C  /\  v  =  D )
)  ->  u  =  v ) )
6045, 59syl5bir 209 . . . . . . 7  |-  ( A. x  e.  X  A. y  e.  X  ( A  =  C  ->  B  =  D )  -> 
( ( E. x  e.  X  ( z  =  A  /\  u  =  B )  /\  E. y  e.  X  (
z  =  C  /\  v  =  D )
)  ->  u  =  v ) )
6144, 60syl9 66 . . . . . 6  |-  ( ph  ->  ( A. x  e.  X  A. y  e.  X  ( A  =  C  ->  B  =  D )  ->  (
( z F u  /\  z F v )  ->  u  =  v ) ) )
6261alrimdv 1619 . . . . 5  |-  ( ph  ->  ( A. x  e.  X  A. y  e.  X  ( A  =  C  ->  B  =  D )  ->  A. v
( ( z F u  /\  z F v )  ->  u  =  v ) ) )
6362alrimdv 1619 . . . 4  |-  ( ph  ->  ( A. x  e.  X  A. y  e.  X  ( A  =  C  ->  B  =  D )  ->  A. u A. v ( ( z F u  /\  z F v )  ->  u  =  v )
) )
6463alrimdv 1619 . . 3  |-  ( ph  ->  ( A. x  e.  X  A. y  e.  X  ( A  =  C  ->  B  =  D )  ->  A. z A. u A. v ( ( z F u  /\  z F v )  ->  u  =  v ) ) )
652, 9, 10fliftrel 5807 . . . . 5  |-  ( ph  ->  F  C_  ( R  X.  S ) )
66 relxp 4794 . . . . 5  |-  Rel  ( R  X.  S )
67 relss 4775 . . . . 5  |-  ( F 
C_  ( R  X.  S )  ->  ( Rel  ( R  X.  S
)  ->  Rel  F ) )
6865, 66, 67ee10 1366 . . . 4  |-  ( ph  ->  Rel  F )
69 dffun2 5265 . . . . 5  |-  ( Fun 
F  <->  ( Rel  F  /\  A. z A. u A. v ( ( z F u  /\  z F v )  ->  u  =  v )
) )
7069baib 871 . . . 4  |-  ( Rel 
F  ->  ( Fun  F  <->  A. z A. u A. v ( ( z F u  /\  z F v )  ->  u  =  v )
) )
7168, 70syl 15 . . 3  |-  ( ph  ->  ( Fun  F  <->  A. z A. u A. v ( ( z F u  /\  z F v )  ->  u  =  v ) ) )
7264, 71sylibrd 225 . 2  |-  ( ph  ->  ( A. x  e.  X  A. y  e.  X  ( A  =  C  ->  B  =  D )  ->  Fun  F ) )
7335, 72impbid 183 1  |-  ( ph  ->  ( Fun  F  <->  A. x  e.  X  A. y  e.  X  ( A  =  C  ->  B  =  D ) ) )
Colors of variables: wff set class
Syntax hints:    -> wi 4    <-> wb 176    /\ wa 358   A.wal 1527    = wceq 1623    e. wcel 1684   A.wral 2543   E.wrex 2544    C_ wss 3152   <.cop 3643   class class class wbr 4023    e. cmpt 4077    X. cxp 4687   ran crn 4690   Rel wrel 4694   Fun wfun 5249   ` cfv 5255
This theorem is referenced by:  fliftfund  5812  fliftfuns  5813  qliftfun  6743
This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-3 7  ax-mp 8  ax-gen 1533  ax-5 1544  ax-17 1603  ax-9 1635  ax-8 1643  ax-14 1688  ax-6 1703  ax-7 1708  ax-11 1715  ax-12 1866  ax-ext 2264  ax-sep 4141  ax-nul 4149  ax-pr 4214
This theorem depends on definitions:  df-bi 177  df-or 359  df-an 360  df-3an 936  df-tru 1310  df-ex 1529  df-nf 1532  df-sb 1630  df-eu 2147  df-mo 2148  df-clab 2270  df-cleq 2276  df-clel 2279  df-nfc 2408  df-ne 2448  df-ral 2548  df-rex 2549  df-rab 2552  df-v 2790  df-sbc 2992  df-csb 3082  df-dif 3155  df-un 3157  df-in 3159  df-ss 3166  df-nul 3456  df-if 3566  df-sn 3646  df-pr 3647  df-op 3649  df-uni 3828  df-br 4024  df-opab 4078  df-mpt 4079  df-id 4309  df-xp 4695  df-rel 4696  df-cnv 4697  df-co 4698  df-dm 4699  df-rn 4700  df-res 4701  df-ima 4702  df-iota 5219  df-fun 5257  df-fn 5258  df-f 5259  df-fv 5263
  Copyright terms: Public domain W3C validator