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

Theorem fliftfun 6218
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 1752 . . 3  |-  F/ x ph
2 flift.1 . . . . 5  |-  F  =  ran  ( x  e.  X  |->  <. A ,  B >. )
3 nfmpt1 4511 . . . . . 6  |-  F/_ x
( x  e.  X  |-> 
<. A ,  B >. )
43nfrn 5094 . . . . 5  |-  F/_ x ran  ( x  e.  X  |-> 
<. A ,  B >. )
52, 4nfcxfr 2583 . . . 4  |-  F/_ x F
65nffun 5621 . . 3  |-  F/ x Fun  F
7 fveq2 5879 . . . . . . 7  |-  ( A  =  C  ->  ( F `  A )  =  ( F `  C ) )
8 simplr 761 . . . . . . . . 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 6216 . . . . . . . . . 10  |-  ( (
ph  /\  x  e.  X )  ->  A F B )
1211ad2ant2r 752 . . . . . . . . 9  |-  ( ( ( ph  /\  Fun  F )  /\  ( x  e.  X  /\  y  e.  X ) )  ->  A F B )
13 funbrfv 5917 . . . . . . . . 9  |-  ( Fun 
F  ->  ( A F B  ->  ( F `
 A )  =  B ) )
148, 12, 13sylc 63 . . . . . . . 8  |-  ( ( ( ph  /\  Fun  F )  /\  ( x  e.  X  /\  y  e.  X ) )  -> 
( F `  A
)  =  B )
15 simprr 765 . . . . . . . . . . 11  |-  ( ( ( ph  /\  Fun  F )  /\  ( x  e.  X  /\  y  e.  X ) )  -> 
y  e.  X )
16 eqidd 2424 . . . . . . . . . . 11  |-  ( ( ( ph  /\  Fun  F )  /\  ( x  e.  X  /\  y  e.  X ) )  ->  C  =  C )
17 eqidd 2424 . . . . . . . . . . 11  |-  ( ( ( ph  /\  Fun  F )  /\  ( x  e.  X  /\  y  e.  X ) )  ->  D  =  D )
18 fliftfun.4 . . . . . . . . . . . . . 14  |-  ( x  =  y  ->  A  =  C )
1918eqeq2d 2437 . . . . . . . . . . . . 13  |-  ( x  =  y  ->  ( C  =  A  <->  C  =  C ) )
20 fliftfun.5 . . . . . . . . . . . . . 14  |-  ( x  =  y  ->  B  =  D )
2120eqeq2d 2437 . . . . . . . . . . . . 13  |-  ( x  =  y  ->  ( D  =  B  <->  D  =  D ) )
2219, 21anbi12d 716 . . . . . . . . . . . 12  |-  ( x  =  y  ->  (
( C  =  A  /\  D  =  B )  <->  ( C  =  C  /\  D  =  D ) ) )
2322rspcev 3183 . . . . . . . . . . 11  |-  ( ( y  e.  X  /\  ( C  =  C  /\  D  =  D
) )  ->  E. x  e.  X  ( C  =  A  /\  D  =  B ) )
2415, 16, 17, 23syl12anc 1263 . . . . . . . . . 10  |-  ( ( ( ph  /\  Fun  F )  /\  ( x  e.  X  /\  y  e.  X ) )  ->  E. x  e.  X  ( C  =  A  /\  D  =  B
) )
252, 9, 10fliftel 6215 . . . . . . . . . . 11  |-  ( ph  ->  ( C F D  <->  E. x  e.  X  ( C  =  A  /\  D  =  B
) ) )
2625ad2antrr 731 . . . . . . . . . 10  |-  ( ( ( ph  /\  Fun  F )  /\  ( x  e.  X  /\  y  e.  X ) )  -> 
( C F D  <->  E. x  e.  X  ( C  =  A  /\  D  =  B
) ) )
2724, 26mpbird 236 . . . . . . . . 9  |-  ( ( ( ph  /\  Fun  F )  /\  ( x  e.  X  /\  y  e.  X ) )  ->  C F D )
28 funbrfv 5917 . . . . . . . . 9  |-  ( Fun 
F  ->  ( C F D  ->  ( F `
 C )  =  D ) )
298, 27, 28sylc 63 . . . . . . . 8  |-  ( ( ( ph  /\  Fun  F )  /\  ( x  e.  X  /\  y  e.  X ) )  -> 
( F `  C
)  =  D )
3014, 29eqeq12d 2445 . . . . . . 7  |-  ( ( ( ph  /\  Fun  F )  /\  ( x  e.  X  /\  y  e.  X ) )  -> 
( ( F `  A )  =  ( F `  C )  <-> 
B  =  D ) )
317, 30syl5ib 223 . . . . . 6  |-  ( ( ( ph  /\  Fun  F )  /\  ( x  e.  X  /\  y  e.  X ) )  -> 
( A  =  C  ->  B  =  D ) )
3231anassrs 653 . . . . 5  |-  ( ( ( ( ph  /\  Fun  F )  /\  x  e.  X )  /\  y  e.  X )  ->  ( A  =  C  ->  B  =  D ) )
3332ralrimiva 2840 . . . 4  |-  ( ( ( ph  /\  Fun  F )  /\  x  e.  X )  ->  A. y  e.  X  ( A  =  C  ->  B  =  D ) )
3433exp31 608 . . 3  |-  ( ph  ->  ( Fun  F  -> 
( x  e.  X  ->  A. y  e.  X  ( A  =  C  ->  B  =  D ) ) ) )
351, 6, 34ralrimd 2830 . 2  |-  ( ph  ->  ( Fun  F  ->  A. x  e.  X  A. y  e.  X  ( A  =  C  ->  B  =  D ) ) )
362, 9, 10fliftel 6215 . . . . . . . . 9  |-  ( ph  ->  ( z F u  <->  E. x  e.  X  ( z  =  A  /\  u  =  B ) ) )
372, 9, 10fliftel 6215 . . . . . . . . . 10  |-  ( ph  ->  ( z F v  <->  E. x  e.  X  ( z  =  A  /\  v  =  B ) ) )
3818eqeq2d 2437 . . . . . . . . . . . 12  |-  ( x  =  y  ->  (
z  =  A  <->  z  =  C ) )
3920eqeq2d 2437 . . . . . . . . . . . 12  |-  ( x  =  y  ->  (
v  =  B  <->  v  =  D ) )
4038, 39anbi12d 716 . . . . . . . . . . 11  |-  ( x  =  y  ->  (
( z  =  A  /\  v  =  B )  <->  ( z  =  C  /\  v  =  D ) ) )
4140cbvrexv 3057 . . . . . . . . . 10  |-  ( E. x  e.  X  ( z  =  A  /\  v  =  B )  <->  E. y  e.  X  ( z  =  C  /\  v  =  D )
)
4237, 41syl6bb 265 . . . . . . . . 9  |-  ( ph  ->  ( z F v  <->  E. y  e.  X  ( z  =  C  /\  v  =  D ) ) )
4336, 42anbi12d 716 . . . . . . . 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 211 . . . . . . 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 2997 . . . . . . . 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 2964 . . . . . . . . . 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 2964 . . . . . . . . . . . 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 2450 . . . . . . . . . . . . . . . . 17  |-  ( ( z  =  A  /\  z  =  C )  ->  A  =  C )
4948ad2ant2r 752 . . . . . . . . . . . . . . . 16  |-  ( ( ( z  =  A  /\  u  =  B )  /\  ( z  =  C  /\  v  =  D ) )  ->  A  =  C )
5049imim1i 61 . . . . . . . . . . . . . . 15  |-  ( ( A  =  C  ->  B  =  D )  ->  ( ( ( z  =  A  /\  u  =  B )  /\  (
z  =  C  /\  v  =  D )
)  ->  B  =  D ) )
5150imp 431 . . . . . . . . . . . . . 14  |-  ( ( ( A  =  C  ->  B  =  D )  /\  ( ( z  =  A  /\  u  =  B )  /\  ( z  =  C  /\  v  =  D ) ) )  ->  B  =  D )
52 simprlr 772 . . . . . . . . . . . . . 14  |-  ( ( ( A  =  C  ->  B  =  D )  /\  ( ( z  =  A  /\  u  =  B )  /\  ( z  =  C  /\  v  =  D ) ) )  ->  u  =  B )
53 simprrr 774 . . . . . . . . . . . . . 14  |-  ( ( ( A  =  C  ->  B  =  D )  /\  ( ( z  =  A  /\  u  =  B )  /\  ( z  =  C  /\  v  =  D ) ) )  -> 
v  =  D )
5451, 52, 533eqtr4d 2474 . . . . . . . . . . . . 13  |-  ( ( ( A  =  C  ->  B  =  D )  /\  ( ( z  =  A  /\  u  =  B )  /\  ( z  =  C  /\  v  =  D ) ) )  ->  u  =  v )
5554rexlimivw 2915 . . . . . . . . . . . 12  |-  ( E. y  e.  X  ( ( A  =  C  ->  B  =  D )  /\  ( ( z  =  A  /\  u  =  B )  /\  ( z  =  C  /\  v  =  D ) ) )  ->  u  =  v )
5647, 55syl 17 . . . . . . . . . . 11  |-  ( ( A. y  e.  X  ( A  =  C  ->  B  =  D )  /\  E. y  e.  X  ( ( z  =  A  /\  u  =  B )  /\  (
z  =  C  /\  v  =  D )
) )  ->  u  =  v )
5756rexlimivw 2915 . . . . . . . . . 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 17 . . . . . . . . 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 436 . . . . . . . 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 222 . . . . . . 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 74 . . . . . 6  |-  ( ph  ->  ( A. x  e.  X  A. y  e.  X  ( A  =  C  ->  B  =  D )  ->  (
( z F u  /\  z F v )  ->  u  =  v ) ) )
6261alrimdv 1766 . . . . 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 1766 . . . 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 1766 . . 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 6214 . . . . 5  |-  ( ph  ->  F  C_  ( R  X.  S ) )
66 relxp 4959 . . . . 5  |-  Rel  ( R  X.  S )
67 relss 4939 . . . . 5  |-  ( F 
C_  ( R  X.  S )  ->  ( Rel  ( R  X.  S
)  ->  Rel  F ) )
6865, 66, 67mpisyl 22 . . . 4  |-  ( ph  ->  Rel  F )
69 dffun2 5609 . . . . 5  |-  ( Fun 
F  <->  ( Rel  F  /\  A. z A. u A. v ( ( z F u  /\  z F v )  ->  u  =  v )
) )
7069baib 912 . . . 4  |-  ( Rel 
F  ->  ( Fun  F  <->  A. z A. u A. v ( ( z F u  /\  z F v )  ->  u  =  v )
) )
7168, 70syl 17 . . 3  |-  ( ph  ->  ( Fun  F  <->  A. z A. u A. v ( ( z F u  /\  z F v )  ->  u  =  v ) ) )
7264, 71sylibrd 238 . 2  |-  ( ph  ->  ( A. x  e.  X  A. y  e.  X  ( A  =  C  ->  B  =  D )  ->  Fun  F ) )
7335, 72impbid 194 1  |-  ( ph  ->  ( Fun  F  <->  A. x  e.  X  A. y  e.  X  ( A  =  C  ->  B  =  D ) ) )
Colors of variables: wff setvar class
Syntax hints:    -> wi 4    <-> wb 188    /\ wa 371   A.wal 1436    = wceq 1438    e. wcel 1869   A.wral 2776   E.wrex 2777    C_ wss 3437   <.cop 4003   class class class wbr 4421    |-> cmpt 4480    X. cxp 4849   ran crn 4852   Rel wrel 4856   Fun wfun 5593   ` cfv 5599
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1666  ax-4 1679  ax-5 1749  ax-6 1795  ax-7 1840  ax-9 1873  ax-10 1888  ax-11 1893  ax-12 1906  ax-13 2054  ax-ext 2401  ax-sep 4544  ax-nul 4553  ax-pr 4658
This theorem depends on definitions:  df-bi 189  df-or 372  df-an 373  df-3an 985  df-tru 1441  df-ex 1661  df-nf 1665  df-sb 1788  df-eu 2270  df-mo 2271  df-clab 2409  df-cleq 2415  df-clel 2418  df-nfc 2573  df-ne 2621  df-ral 2781  df-rex 2782  df-rab 2785  df-v 3084  df-sbc 3301  df-csb 3397  df-dif 3440  df-un 3442  df-in 3444  df-ss 3451  df-nul 3763  df-if 3911  df-sn 3998  df-pr 4000  df-op 4004  df-uni 4218  df-br 4422  df-opab 4481  df-mpt 4482  df-id 4766  df-xp 4857  df-rel 4858  df-cnv 4859  df-co 4860  df-dm 4861  df-rn 4862  df-res 4863  df-ima 4864  df-iota 5563  df-fun 5601  df-fn 5602  df-f 5603  df-fv 5607
This theorem is referenced by:  fliftfund  6219  fliftfuns  6220  qliftfun  7454
  Copyright terms: Public domain W3C validator