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

Theorem fliftfun 5791
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 1528 . . 3  |-  F/ x ph
2 flift.1 . . . . 5  |-  F  =  ran  ( x  e.  X  |->  <. A ,  B >. )
3 nfmpt1 4093 . . . . . 6  |-  F/_ x
( x  e.  X  |-> 
<. A ,  B >. )
43nfrn 4868 . . . . 5  |-  F/_ x ran  ( x  e.  X  |-> 
<. A ,  B >. )
52, 4nfcxfr 2316 . . . 4  |-  F/_ x F
65nffun 5235 . . 3  |-  F/ x Fun  F
7 fveq2 5511 . . . . . . 7  |-  ( A  =  C  ->  ( F `  A )  =  ( F `  C ) )
8 simplr 528 . . . . . . . . 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 5789 . . . . . . . . . 10  |-  ( (
ph  /\  x  e.  X )  ->  A F B )
1211ad2ant2r 509 . . . . . . . . 9  |-  ( ( ( ph  /\  Fun  F )  /\  ( x  e.  X  /\  y  e.  X ) )  ->  A F B )
13 funbrfv 5550 . . . . . . . . 9  |-  ( Fun 
F  ->  ( A F B  ->  ( F `
 A )  =  B ) )
148, 12, 13sylc 62 . . . . . . . 8  |-  ( ( ( ph  /\  Fun  F )  /\  ( x  e.  X  /\  y  e.  X ) )  -> 
( F `  A
)  =  B )
15 simprr 531 . . . . . . . . . . 11  |-  ( ( ( ph  /\  Fun  F )  /\  ( x  e.  X  /\  y  e.  X ) )  -> 
y  e.  X )
16 eqidd 2178 . . . . . . . . . . 11  |-  ( ( ( ph  /\  Fun  F )  /\  ( x  e.  X  /\  y  e.  X ) )  ->  C  =  C )
17 eqidd 2178 . . . . . . . . . . 11  |-  ( ( ( ph  /\  Fun  F )  /\  ( x  e.  X  /\  y  e.  X ) )  ->  D  =  D )
18 fliftfun.4 . . . . . . . . . . . . . 14  |-  ( x  =  y  ->  A  =  C )
1918eqeq2d 2189 . . . . . . . . . . . . 13  |-  ( x  =  y  ->  ( C  =  A  <->  C  =  C ) )
20 fliftfun.5 . . . . . . . . . . . . . 14  |-  ( x  =  y  ->  B  =  D )
2120eqeq2d 2189 . . . . . . . . . . . . 13  |-  ( x  =  y  ->  ( D  =  B  <->  D  =  D ) )
2219, 21anbi12d 473 . . . . . . . . . . . 12  |-  ( x  =  y  ->  (
( C  =  A  /\  D  =  B )  <->  ( C  =  C  /\  D  =  D ) ) )
2322rspcev 2841 . . . . . . . . . . 11  |-  ( ( y  e.  X  /\  ( C  =  C  /\  D  =  D
) )  ->  E. x  e.  X  ( C  =  A  /\  D  =  B ) )
2415, 16, 17, 23syl12anc 1236 . . . . . . . . . 10  |-  ( ( ( ph  /\  Fun  F )  /\  ( x  e.  X  /\  y  e.  X ) )  ->  E. x  e.  X  ( C  =  A  /\  D  =  B
) )
252, 9, 10fliftel 5788 . . . . . . . . . . 11  |-  ( ph  ->  ( C F D  <->  E. x  e.  X  ( C  =  A  /\  D  =  B
) ) )
2625ad2antrr 488 . . . . . . . . . 10  |-  ( ( ( ph  /\  Fun  F )  /\  ( x  e.  X  /\  y  e.  X ) )  -> 
( C F D  <->  E. x  e.  X  ( C  =  A  /\  D  =  B
) ) )
2724, 26mpbird 167 . . . . . . . . 9  |-  ( ( ( ph  /\  Fun  F )  /\  ( x  e.  X  /\  y  e.  X ) )  ->  C F D )
28 funbrfv 5550 . . . . . . . . 9  |-  ( Fun 
F  ->  ( C F D  ->  ( F `
 C )  =  D ) )
298, 27, 28sylc 62 . . . . . . . 8  |-  ( ( ( ph  /\  Fun  F )  /\  ( x  e.  X  /\  y  e.  X ) )  -> 
( F `  C
)  =  D )
3014, 29eqeq12d 2192 . . . . . . 7  |-  ( ( ( ph  /\  Fun  F )  /\  ( x  e.  X  /\  y  e.  X ) )  -> 
( ( F `  A )  =  ( F `  C )  <-> 
B  =  D ) )
317, 30imbitrid 154 . . . . . 6  |-  ( ( ( ph  /\  Fun  F )  /\  ( x  e.  X  /\  y  e.  X ) )  -> 
( A  =  C  ->  B  =  D ) )
3231anassrs 400 . . . . 5  |-  ( ( ( ( ph  /\  Fun  F )  /\  x  e.  X )  /\  y  e.  X )  ->  ( A  =  C  ->  B  =  D ) )
3332ralrimiva 2550 . . . 4  |-  ( ( ( ph  /\  Fun  F )  /\  x  e.  X )  ->  A. y  e.  X  ( A  =  C  ->  B  =  D ) )
3433exp31 364 . . 3  |-  ( ph  ->  ( Fun  F  -> 
( x  e.  X  ->  A. y  e.  X  ( A  =  C  ->  B  =  D ) ) ) )
351, 6, 34ralrimd 2555 . 2  |-  ( ph  ->  ( Fun  F  ->  A. x  e.  X  A. y  e.  X  ( A  =  C  ->  B  =  D ) ) )
362, 9, 10fliftel 5788 . . . . . . . . 9  |-  ( ph  ->  ( z F u  <->  E. x  e.  X  ( z  =  A  /\  u  =  B ) ) )
372, 9, 10fliftel 5788 . . . . . . . . . 10  |-  ( ph  ->  ( z F v  <->  E. x  e.  X  ( z  =  A  /\  v  =  B ) ) )
3818eqeq2d 2189 . . . . . . . . . . . 12  |-  ( x  =  y  ->  (
z  =  A  <->  z  =  C ) )
3920eqeq2d 2189 . . . . . . . . . . . 12  |-  ( x  =  y  ->  (
v  =  B  <->  v  =  D ) )
4038, 39anbi12d 473 . . . . . . . . . . 11  |-  ( x  =  y  ->  (
( z  =  A  /\  v  =  B )  <->  ( z  =  C  /\  v  =  D ) ) )
4140cbvrexv 2704 . . . . . . . . . 10  |-  ( E. x  e.  X  ( z  =  A  /\  v  =  B )  <->  E. y  e.  X  ( z  =  C  /\  v  =  D )
)
4237, 41bitrdi 196 . . . . . . . . 9  |-  ( ph  ->  ( z F v  <->  E. y  e.  X  ( z  =  C  /\  v  =  D ) ) )
4336, 42anbi12d 473 . . . . . . . 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 144 . . . . . . 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 2646 . . . . . . . 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 2614 . . . . . . . . . 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 2614 . . . . . . . . . . . 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 2196 . . . . . . . . . . . . . . . . 17  |-  ( ( z  =  A  /\  z  =  C )  ->  A  =  C )
4948ad2ant2r 509 . . . . . . . . . . . . . . . 16  |-  ( ( ( z  =  A  /\  u  =  B )  /\  ( z  =  C  /\  v  =  D ) )  ->  A  =  C )
5049imim1i 60 . . . . . . . . . . . . . . 15  |-  ( ( A  =  C  ->  B  =  D )  ->  ( ( ( z  =  A  /\  u  =  B )  /\  (
z  =  C  /\  v  =  D )
)  ->  B  =  D ) )
5150imp 124 . . . . . . . . . . . . . 14  |-  ( ( ( A  =  C  ->  B  =  D )  /\  ( ( z  =  A  /\  u  =  B )  /\  ( z  =  C  /\  v  =  D ) ) )  ->  B  =  D )
52 simprlr 538 . . . . . . . . . . . . . 14  |-  ( ( ( A  =  C  ->  B  =  D )  /\  ( ( z  =  A  /\  u  =  B )  /\  ( z  =  C  /\  v  =  D ) ) )  ->  u  =  B )
53 simprrr 540 . . . . . . . . . . . . . 14  |-  ( ( ( A  =  C  ->  B  =  D )  /\  ( ( z  =  A  /\  u  =  B )  /\  ( z  =  C  /\  v  =  D ) ) )  -> 
v  =  D )
5451, 52, 533eqtr4d 2220 . . . . . . . . . . . . 13  |-  ( ( ( A  =  C  ->  B  =  D )  /\  ( ( z  =  A  /\  u  =  B )  /\  ( z  =  C  /\  v  =  D ) ) )  ->  u  =  v )
5554rexlimivw 2590 . . . . . . . . . . . 12  |-  ( E. y  e.  X  ( ( A  =  C  ->  B  =  D )  /\  ( ( z  =  A  /\  u  =  B )  /\  ( z  =  C  /\  v  =  D ) ) )  ->  u  =  v )
5647, 55syl 14 . . . . . . . . . . 11  |-  ( ( A. y  e.  X  ( A  =  C  ->  B  =  D )  /\  E. y  e.  X  ( ( z  =  A  /\  u  =  B )  /\  (
z  =  C  /\  v  =  D )
) )  ->  u  =  v )
5756rexlimivw 2590 . . . . . . . . . 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 14 . . . . . . . . 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 115 . . . . . . . 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, 59biimtrrid 153 . . . . . . 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 72 . . . . . 6  |-  ( ph  ->  ( A. x  e.  X  A. y  e.  X  ( A  =  C  ->  B  =  D )  ->  (
( z F u  /\  z F v )  ->  u  =  v ) ) )
6261alrimdv 1876 . . . . 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 1876 . . . 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 1876 . . 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 5787 . . . . 5  |-  ( ph  ->  F  C_  ( R  X.  S ) )
66 relxp 4732 . . . . 5  |-  Rel  ( R  X.  S )
67 relss 4710 . . . . 5  |-  ( F 
C_  ( R  X.  S )  ->  ( Rel  ( R  X.  S
)  ->  Rel  F ) )
6865, 66, 67mpisyl 1446 . . . 4  |-  ( ph  ->  Rel  F )
69 dffun2 5222 . . . . 5  |-  ( Fun 
F  <->  ( Rel  F  /\  A. z A. u A. v ( ( z F u  /\  z F v )  ->  u  =  v )
) )
7069baib 919 . . . 4  |-  ( Rel 
F  ->  ( Fun  F  <->  A. z A. u A. v ( ( z F u  /\  z F v )  ->  u  =  v )
) )
7168, 70syl 14 . . 3  |-  ( ph  ->  ( Fun  F  <->  A. z A. u A. v ( ( z F u  /\  z F v )  ->  u  =  v ) ) )
7264, 71sylibrd 169 . 2  |-  ( ph  ->  ( A. x  e.  X  A. y  e.  X  ( A  =  C  ->  B  =  D )  ->  Fun  F ) )
7335, 72impbid 129 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    /\ wa 104    <-> wb 105   A.wal 1351    = wceq 1353    e. wcel 2148   A.wral 2455   E.wrex 2456    C_ wss 3129   <.cop 3594   class class class wbr 4000    |-> cmpt 4061    X. cxp 4621   ran crn 4624   Rel wrel 4628   Fun wfun 5206   ` cfv 5212
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 709  ax-5 1447  ax-7 1448  ax-gen 1449  ax-ie1 1493  ax-ie2 1494  ax-8 1504  ax-10 1505  ax-11 1506  ax-i12 1507  ax-bndl 1509  ax-4 1510  ax-17 1526  ax-i9 1530  ax-ial 1534  ax-i5r 1535  ax-14 2151  ax-ext 2159  ax-sep 4118  ax-pow 4171  ax-pr 4206
This theorem depends on definitions:  df-bi 117  df-3an 980  df-tru 1356  df-nf 1461  df-sb 1763  df-eu 2029  df-mo 2030  df-clab 2164  df-cleq 2170  df-clel 2173  df-nfc 2308  df-ral 2460  df-rex 2461  df-rab 2464  df-v 2739  df-sbc 2963  df-csb 3058  df-un 3133  df-in 3135  df-ss 3142  df-pw 3576  df-sn 3597  df-pr 3598  df-op 3600  df-uni 3808  df-br 4001  df-opab 4062  df-mpt 4063  df-id 4290  df-xp 4629  df-rel 4630  df-cnv 4631  df-co 4632  df-dm 4633  df-rn 4634  df-res 4635  df-ima 4636  df-iota 5174  df-fun 5214  df-fn 5215  df-f 5216  df-fv 5220
This theorem is referenced by:  fliftfund  5792  fliftfuns  5793  qliftfun  6611
  Copyright terms: Public domain W3C validator