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

Theorem xpf1o 7018
Description: Construct a bijection on a cross product given bijections on the factors. (Contributed by Mario Carneiro, 30-May-2015.)
Hypotheses
Ref Expression
xpf1o.1  |-  ( ph  ->  ( x  e.  A  |->  X ) : A -1-1-onto-> B
)
xpf1o.2  |-  ( ph  ->  ( y  e.  C  |->  Y ) : C -1-1-onto-> D
)
Assertion
Ref Expression
xpf1o  |-  ( ph  ->  ( x  e.  A ,  y  e.  C  |-> 
<. X ,  Y >. ) : ( A  X.  C ) -1-1-onto-> ( B  X.  D
) )
Distinct variable groups:    x, y, A    x, C, y    y, X    x, B    y, D    x, Y
Dummy variables  t 
s  u  v  w  z are mutually distinct and distinct from all other variables.
Allowed substitution hints:    ph( x, y)    B( y)    D( x)    X( x)    Y( y)

Proof of Theorem xpf1o
StepHypRef Expression
1 xp1st 6110 . . . . . 6  |-  ( u  e.  ( A  X.  C )  ->  ( 1st `  u )  e.  A )
21adantl 454 . . . . 5  |-  ( (
ph  /\  u  e.  ( A  X.  C
) )  ->  ( 1st `  u )  e.  A )
3 xpf1o.1 . . . . . . . 8  |-  ( ph  ->  ( x  e.  A  |->  X ) : A -1-1-onto-> B
)
4 eqid 2284 . . . . . . . . 9  |-  ( x  e.  A  |->  X )  =  ( x  e.  A  |->  X )
54f1ompt 5643 . . . . . . . 8  |-  ( ( x  e.  A  |->  X ) : A -1-1-onto-> B  <->  ( A. x  e.  A  X  e.  B  /\  A. z  e.  B  E! x  e.  A  z  =  X ) )
63, 5sylib 190 . . . . . . 7  |-  ( ph  ->  ( A. x  e.  A  X  e.  B  /\  A. z  e.  B  E! x  e.  A  z  =  X )
)
76simpld 447 . . . . . 6  |-  ( ph  ->  A. x  e.  A  X  e.  B )
87adantr 453 . . . . 5  |-  ( (
ph  /\  u  e.  ( A  X.  C
) )  ->  A. x  e.  A  X  e.  B )
9 nfcsb1v 3114 . . . . . . 7  |-  F/_ x [_ ( 1st `  u
)  /  x ]_ X
109nfel1 2430 . . . . . 6  |-  F/ x [_ ( 1st `  u
)  /  x ]_ X  e.  B
11 csbeq1a 3090 . . . . . . 7  |-  ( x  =  ( 1st `  u
)  ->  X  =  [_ ( 1st `  u
)  /  x ]_ X )
1211eleq1d 2350 . . . . . 6  |-  ( x  =  ( 1st `  u
)  ->  ( X  e.  B  <->  [_ ( 1st `  u
)  /  x ]_ X  e.  B )
)
1310, 12rspc 2879 . . . . 5  |-  ( ( 1st `  u )  e.  A  ->  ( A. x  e.  A  X  e.  B  ->  [_ ( 1st `  u
)  /  x ]_ X  e.  B )
)
142, 8, 13sylc 58 . . . 4  |-  ( (
ph  /\  u  e.  ( A  X.  C
) )  ->  [_ ( 1st `  u )  /  x ]_ X  e.  B
)
15 xp2nd 6111 . . . . . 6  |-  ( u  e.  ( A  X.  C )  ->  ( 2nd `  u )  e.  C )
1615adantl 454 . . . . 5  |-  ( (
ph  /\  u  e.  ( A  X.  C
) )  ->  ( 2nd `  u )  e.  C )
17 xpf1o.2 . . . . . . . 8  |-  ( ph  ->  ( y  e.  C  |->  Y ) : C -1-1-onto-> D
)
18 eqid 2284 . . . . . . . . 9  |-  ( y  e.  C  |->  Y )  =  ( y  e.  C  |->  Y )
1918f1ompt 5643 . . . . . . . 8  |-  ( ( y  e.  C  |->  Y ) : C -1-1-onto-> D  <->  ( A. y  e.  C  Y  e.  D  /\  A. w  e.  D  E! y  e.  C  w  =  Y ) )
2017, 19sylib 190 . . . . . . 7  |-  ( ph  ->  ( A. y  e.  C  Y  e.  D  /\  A. w  e.  D  E! y  e.  C  w  =  Y )
)
2120simpld 447 . . . . . 6  |-  ( ph  ->  A. y  e.  C  Y  e.  D )
2221adantr 453 . . . . 5  |-  ( (
ph  /\  u  e.  ( A  X.  C
) )  ->  A. y  e.  C  Y  e.  D )
23 nfcsb1v 3114 . . . . . . 7  |-  F/_ y [_ ( 2nd `  u
)  /  y ]_ Y
2423nfel1 2430 . . . . . 6  |-  F/ y
[_ ( 2nd `  u
)  /  y ]_ Y  e.  D
25 csbeq1a 3090 . . . . . . 7  |-  ( y  =  ( 2nd `  u
)  ->  Y  =  [_ ( 2nd `  u
)  /  y ]_ Y )
2625eleq1d 2350 . . . . . 6  |-  ( y  =  ( 2nd `  u
)  ->  ( Y  e.  D  <->  [_ ( 2nd `  u
)  /  y ]_ Y  e.  D )
)
2724, 26rspc 2879 . . . . 5  |-  ( ( 2nd `  u )  e.  C  ->  ( A. y  e.  C  Y  e.  D  ->  [_ ( 2nd `  u
)  /  y ]_ Y  e.  D )
)
2816, 22, 27sylc 58 . . . 4  |-  ( (
ph  /\  u  e.  ( A  X.  C
) )  ->  [_ ( 2nd `  u )  / 
y ]_ Y  e.  D
)
29 opelxpi 4720 . . . 4  |-  ( (
[_ ( 1st `  u
)  /  x ]_ X  e.  B  /\  [_ ( 2nd `  u
)  /  y ]_ Y  e.  D )  -> 
<. [_ ( 1st `  u
)  /  x ]_ X ,  [_ ( 2nd `  u )  /  y ]_ Y >.  e.  ( B  X.  D ) )
3014, 28, 29syl2anc 644 . . 3  |-  ( (
ph  /\  u  e.  ( A  X.  C
) )  ->  <. [_ ( 1st `  u )  /  x ]_ X ,  [_ ( 2nd `  u )  /  y ]_ Y >.  e.  ( B  X.  D ) )
3130ralrimiva 2627 . 2  |-  ( ph  ->  A. u  e.  ( A  X.  C )
<. [_ ( 1st `  u
)  /  x ]_ X ,  [_ ( 2nd `  u )  /  y ]_ Y >.  e.  ( B  X.  D ) )
326simprd 451 . . . . . . . . . 10  |-  ( ph  ->  A. z  e.  B  E! x  e.  A  z  =  X )
3332r19.21bi 2642 . . . . . . . . 9  |-  ( (
ph  /\  z  e.  B )  ->  E! x  e.  A  z  =  X )
34 reu6 2955 . . . . . . . . 9  |-  ( E! x  e.  A  z  =  X  <->  E. s  e.  A  A. x  e.  A  ( z  =  X  <->  x  =  s
) )
3533, 34sylib 190 . . . . . . . 8  |-  ( (
ph  /\  z  e.  B )  ->  E. s  e.  A  A. x  e.  A  ( z  =  X  <->  x  =  s
) )
3620simprd 451 . . . . . . . . . 10  |-  ( ph  ->  A. w  e.  D  E! y  e.  C  w  =  Y )
3736r19.21bi 2642 . . . . . . . . 9  |-  ( (
ph  /\  w  e.  D )  ->  E! y  e.  C  w  =  Y )
38 reu6 2955 . . . . . . . . 9  |-  ( E! y  e.  C  w  =  Y  <->  E. t  e.  C  A. y  e.  C  ( w  =  Y  <->  y  =  t ) )
3937, 38sylib 190 . . . . . . . 8  |-  ( (
ph  /\  w  e.  D )  ->  E. t  e.  C  A. y  e.  C  ( w  =  Y  <->  y  =  t ) )
4035, 39anim12dan 812 . . . . . . 7  |-  ( (
ph  /\  ( z  e.  B  /\  w  e.  D ) )  -> 
( E. s  e.  A  A. x  e.  A  ( z  =  X  <->  x  =  s
)  /\  E. t  e.  C  A. y  e.  C  ( w  =  Y  <->  y  =  t ) ) )
41 reeanv 2708 . . . . . . . 8  |-  ( E. s  e.  A  E. t  e.  C  ( A. x  e.  A  ( z  =  X  <-> 
x  =  s )  /\  A. y  e.  C  ( w  =  Y  <->  y  =  t ) )  <->  ( E. s  e.  A  A. x  e.  A  (
z  =  X  <->  x  =  s )  /\  E. t  e.  C  A. y  e.  C  (
w  =  Y  <->  y  =  t ) ) )
42 pm4.38 844 . . . . . . . . . . . . . . 15  |-  ( ( ( z  =  X  <-> 
x  =  s )  /\  ( w  =  Y  <->  y  =  t ) )  ->  (
( z  =  X  /\  w  =  Y )  <->  ( x  =  s  /\  y  =  t ) ) )
4342ex 425 . . . . . . . . . . . . . 14  |-  ( ( z  =  X  <->  x  =  s )  ->  (
( w  =  Y  <-> 
y  =  t )  ->  ( ( z  =  X  /\  w  =  Y )  <->  ( x  =  s  /\  y  =  t ) ) ) )
4443ralimdv 2623 . . . . . . . . . . . . 13  |-  ( ( z  =  X  <->  x  =  s )  ->  ( A. y  e.  C  ( w  =  Y  <->  y  =  t )  ->  A. y  e.  C  ( ( z  =  X  /\  w  =  Y )  <->  ( x  =  s  /\  y  =  t ) ) ) )
4544com12 29 . . . . . . . . . . . 12  |-  ( A. y  e.  C  (
w  =  Y  <->  y  =  t )  ->  (
( z  =  X  <-> 
x  =  s )  ->  A. y  e.  C  ( ( z  =  X  /\  w  =  Y )  <->  ( x  =  s  /\  y  =  t ) ) ) )
4645ralimdv 2623 . . . . . . . . . . 11  |-  ( A. y  e.  C  (
w  =  Y  <->  y  =  t )  ->  ( A. x  e.  A  ( z  =  X  <-> 
x  =  s )  ->  A. x  e.  A  A. y  e.  C  ( ( z  =  X  /\  w  =  Y )  <->  ( x  =  s  /\  y  =  t ) ) ) )
4746impcom 421 . . . . . . . . . 10  |-  ( ( A. x  e.  A  ( z  =  X  <-> 
x  =  s )  /\  A. y  e.  C  ( w  =  Y  <->  y  =  t ) )  ->  A. x  e.  A  A. y  e.  C  ( (
z  =  X  /\  w  =  Y )  <->  ( x  =  s  /\  y  =  t )
) )
4847reximi 2651 . . . . . . . . 9  |-  ( E. t  e.  C  ( A. x  e.  A  ( z  =  X  <-> 
x  =  s )  /\  A. y  e.  C  ( w  =  Y  <->  y  =  t ) )  ->  E. t  e.  C  A. x  e.  A  A. y  e.  C  ( (
z  =  X  /\  w  =  Y )  <->  ( x  =  s  /\  y  =  t )
) )
4948reximi 2651 . . . . . . . 8  |-  ( E. s  e.  A  E. t  e.  C  ( A. x  e.  A  ( z  =  X  <-> 
x  =  s )  /\  A. y  e.  C  ( w  =  Y  <->  y  =  t ) )  ->  E. s  e.  A  E. t  e.  C  A. x  e.  A  A. y  e.  C  ( (
z  =  X  /\  w  =  Y )  <->  ( x  =  s  /\  y  =  t )
) )
5041, 49sylbir 206 . . . . . . 7  |-  ( ( E. s  e.  A  A. x  e.  A  ( z  =  X  <-> 
x  =  s )  /\  E. t  e.  C  A. y  e.  C  ( w  =  Y  <->  y  =  t ) )  ->  E. s  e.  A  E. t  e.  C  A. x  e.  A  A. y  e.  C  ( (
z  =  X  /\  w  =  Y )  <->  ( x  =  s  /\  y  =  t )
) )
5140, 50syl 17 . . . . . 6  |-  ( (
ph  /\  ( z  e.  B  /\  w  e.  D ) )  ->  E. s  e.  A  E. t  e.  C  A. x  e.  A  A. y  e.  C  ( ( z  =  X  /\  w  =  Y )  <->  ( x  =  s  /\  y  =  t ) ) )
52 vex 2792 . . . . . . . . . . . . . . 15  |-  s  e. 
_V
53 vex 2792 . . . . . . . . . . . . . . 15  |-  t  e. 
_V
5452, 53op1std 6091 . . . . . . . . . . . . . 14  |-  ( u  =  <. s ,  t
>.  ->  ( 1st `  u
)  =  s )
5554csbeq1d 3088 . . . . . . . . . . . . 13  |-  ( u  =  <. s ,  t
>.  ->  [_ ( 1st `  u
)  /  x ]_ X  =  [_ s  /  x ]_ X )
5655eqeq2d 2295 . . . . . . . . . . . 12  |-  ( u  =  <. s ,  t
>.  ->  ( z  = 
[_ ( 1st `  u
)  /  x ]_ X 
<->  z  =  [_ s  /  x ]_ X ) )
5752, 53op2ndd 6092 . . . . . . . . . . . . . 14  |-  ( u  =  <. s ,  t
>.  ->  ( 2nd `  u
)  =  t )
5857csbeq1d 3088 . . . . . . . . . . . . 13  |-  ( u  =  <. s ,  t
>.  ->  [_ ( 2nd `  u
)  /  y ]_ Y  =  [_ t  / 
y ]_ Y )
5958eqeq2d 2295 . . . . . . . . . . . 12  |-  ( u  =  <. s ,  t
>.  ->  ( w  = 
[_ ( 2nd `  u
)  /  y ]_ Y 
<->  w  =  [_ t  /  y ]_ Y
) )
6056, 59anbi12d 693 . . . . . . . . . . 11  |-  ( u  =  <. s ,  t
>.  ->  ( ( z  =  [_ ( 1st `  u )  /  x ]_ X  /\  w  =  [_ ( 2nd `  u
)  /  y ]_ Y )  <->  ( z  =  [_ s  /  x ]_ X  /\  w  =  [_ t  /  y ]_ Y ) ) )
61 eqeq1 2290 . . . . . . . . . . 11  |-  ( u  =  <. s ,  t
>.  ->  ( u  =  v  <->  <. s ,  t
>.  =  v )
)
6260, 61bibi12d 314 . . . . . . . . . 10  |-  ( u  =  <. s ,  t
>.  ->  ( ( ( z  =  [_ ( 1st `  u )  /  x ]_ X  /\  w  =  [_ ( 2nd `  u
)  /  y ]_ Y )  <->  u  =  v )  <->  ( (
z  =  [_ s  /  x ]_ X  /\  w  =  [_ t  / 
y ]_ Y )  <->  <. s ,  t >.  =  v
) ) )
6362ralxp 4826 . . . . . . . . 9  |-  ( A. u  e.  ( A  X.  C ) ( ( z  =  [_ ( 1st `  u )  /  x ]_ X  /\  w  =  [_ ( 2nd `  u
)  /  y ]_ Y )  <->  u  =  v )  <->  A. s  e.  A  A. t  e.  C  ( (
z  =  [_ s  /  x ]_ X  /\  w  =  [_ t  / 
y ]_ Y )  <->  <. s ,  t >.  =  v
) )
64 nfv 1606 . . . . . . . . . 10  |-  F/ s A. y  e.  C  ( ( z  =  X  /\  w  =  Y )  <->  <. x ,  y >.  =  v
)
65 nfcv 2420 . . . . . . . . . . 11  |-  F/_ x C
66 nfcsb1v 3114 . . . . . . . . . . . . . 14  |-  F/_ x [_ s  /  x ]_ X
6766nfeq2 2431 . . . . . . . . . . . . 13  |-  F/ x  z  =  [_ s  /  x ]_ X
68 nfv 1606 . . . . . . . . . . . . 13  |-  F/ x  w  =  [_ t  / 
y ]_ Y
6967, 68nfan 1772 . . . . . . . . . . . 12  |-  F/ x
( z  =  [_ s  /  x ]_ X  /\  w  =  [_ t  /  y ]_ Y
)
70 nfv 1606 . . . . . . . . . . . 12  |-  F/ x <. s ,  t >.  =  v
7169, 70nfbi 1773 . . . . . . . . . . 11  |-  F/ x
( ( z  = 
[_ s  /  x ]_ X  /\  w  =  [_ t  /  y ]_ Y )  <->  <. s ,  t >.  =  v
)
7265, 71nfral 2597 . . . . . . . . . 10  |-  F/ x A. t  e.  C  ( ( z  = 
[_ s  /  x ]_ X  /\  w  =  [_ t  /  y ]_ Y )  <->  <. s ,  t >.  =  v
)
73 nfv 1606 . . . . . . . . . . . 12  |-  F/ t ( ( z  =  X  /\  w  =  Y )  <->  <. x ,  y >.  =  v
)
74 nfv 1606 . . . . . . . . . . . . . 14  |-  F/ y  z  =  X
75 nfcsb1v 3114 . . . . . . . . . . . . . . 15  |-  F/_ y [_ t  /  y ]_ Y
7675nfeq2 2431 . . . . . . . . . . . . . 14  |-  F/ y  w  =  [_ t  /  y ]_ Y
7774, 76nfan 1772 . . . . . . . . . . . . 13  |-  F/ y ( z  =  X  /\  w  =  [_ t  /  y ]_ Y
)
78 nfv 1606 . . . . . . . . . . . . 13  |-  F/ y
<. x ,  t >.  =  v
7977, 78nfbi 1773 . . . . . . . . . . . 12  |-  F/ y ( ( z  =  X  /\  w  = 
[_ t  /  y ]_ Y )  <->  <. x ,  t >.  =  v
)
80 csbeq1a 3090 . . . . . . . . . . . . . . 15  |-  ( y  =  t  ->  Y  =  [_ t  /  y ]_ Y )
8180eqeq2d 2295 . . . . . . . . . . . . . 14  |-  ( y  =  t  ->  (
w  =  Y  <->  w  =  [_ t  /  y ]_ Y ) )
8281anbi2d 686 . . . . . . . . . . . . 13  |-  ( y  =  t  ->  (
( z  =  X  /\  w  =  Y )  <->  ( z  =  X  /\  w  = 
[_ t  /  y ]_ Y ) ) )
83 opeq2 3798 . . . . . . . . . . . . . 14  |-  ( y  =  t  ->  <. x ,  y >.  =  <. x ,  t >. )
8483eqeq1d 2292 . . . . . . . . . . . . 13  |-  ( y  =  t  ->  ( <. x ,  y >.  =  v  <->  <. x ,  t
>.  =  v )
)
8582, 84bibi12d 314 . . . . . . . . . . . 12  |-  ( y  =  t  ->  (
( ( z  =  X  /\  w  =  Y )  <->  <. x ,  y >.  =  v
)  <->  ( ( z  =  X  /\  w  =  [_ t  /  y ]_ Y )  <->  <. x ,  t >.  =  v
) ) )
8673, 79, 85cbvral 2761 . . . . . . . . . . 11  |-  ( A. y  e.  C  (
( z  =  X  /\  w  =  Y )  <->  <. x ,  y
>.  =  v )  <->  A. t  e.  C  ( ( z  =  X  /\  w  =  [_ t  /  y ]_ Y
)  <->  <. x ,  t
>.  =  v )
)
87 csbeq1a 3090 . . . . . . . . . . . . . . 15  |-  ( x  =  s  ->  X  =  [_ s  /  x ]_ X )
8887eqeq2d 2295 . . . . . . . . . . . . . 14  |-  ( x  =  s  ->  (
z  =  X  <->  z  =  [_ s  /  x ]_ X ) )
8988anbi1d 687 . . . . . . . . . . . . 13  |-  ( x  =  s  ->  (
( z  =  X  /\  w  =  [_ t  /  y ]_ Y
)  <->  ( z  = 
[_ s  /  x ]_ X  /\  w  =  [_ t  /  y ]_ Y ) ) )
90 opeq1 3797 . . . . . . . . . . . . . 14  |-  ( x  =  s  ->  <. x ,  t >.  =  <. s ,  t >. )
9190eqeq1d 2292 . . . . . . . . . . . . 13  |-  ( x  =  s  ->  ( <. x ,  t >.  =  v  <->  <. s ,  t
>.  =  v )
)
9289, 91bibi12d 314 . . . . . . . . . . . 12  |-  ( x  =  s  ->  (
( ( z  =  X  /\  w  = 
[_ t  /  y ]_ Y )  <->  <. x ,  t >.  =  v
)  <->  ( ( z  =  [_ s  /  x ]_ X  /\  w  =  [_ t  /  y ]_ Y )  <->  <. s ,  t >.  =  v
) ) )
9392ralbidv 2564 . . . . . . . . . . 11  |-  ( x  =  s  ->  ( A. t  e.  C  ( ( z  =  X  /\  w  = 
[_ t  /  y ]_ Y )  <->  <. x ,  t >.  =  v
)  <->  A. t  e.  C  ( ( z  = 
[_ s  /  x ]_ X  /\  w  =  [_ t  /  y ]_ Y )  <->  <. s ,  t >.  =  v
) ) )
9486, 93syl5bb 250 . . . . . . . . . 10  |-  ( x  =  s  ->  ( A. y  e.  C  ( ( z  =  X  /\  w  =  Y )  <->  <. x ,  y >.  =  v
)  <->  A. t  e.  C  ( ( z  = 
[_ s  /  x ]_ X  /\  w  =  [_ t  /  y ]_ Y )  <->  <. s ,  t >.  =  v
) ) )
9564, 72, 94cbvral 2761 . . . . . . . . 9  |-  ( A. x  e.  A  A. y  e.  C  (
( z  =  X  /\  w  =  Y )  <->  <. x ,  y
>.  =  v )  <->  A. s  e.  A  A. t  e.  C  (
( z  =  [_ s  /  x ]_ X  /\  w  =  [_ t  /  y ]_ Y
)  <->  <. s ,  t
>.  =  v )
)
9663, 95bitr4i 245 . . . . . . . 8  |-  ( A. u  e.  ( A  X.  C ) ( ( z  =  [_ ( 1st `  u )  /  x ]_ X  /\  w  =  [_ ( 2nd `  u
)  /  y ]_ Y )  <->  u  =  v )  <->  A. x  e.  A  A. y  e.  C  ( (
z  =  X  /\  w  =  Y )  <->  <.
x ,  y >.  =  v ) )
97 eqeq2 2293 . . . . . . . . . . 11  |-  ( v  =  <. s ,  t
>.  ->  ( <. x ,  y >.  =  v  <->  <. x ,  y >.  =  <. s ,  t
>. ) )
98 vex 2792 . . . . . . . . . . . 12  |-  x  e. 
_V
99 vex 2792 . . . . . . . . . . . 12  |-  y  e. 
_V
10098, 99opth 4244 . . . . . . . . . . 11  |-  ( <.
x ,  y >.  =  <. s ,  t
>. 
<->  ( x  =  s  /\  y  =  t ) )
10197, 100syl6bb 254 . . . . . . . . . 10  |-  ( v  =  <. s ,  t
>.  ->  ( <. x ,  y >.  =  v  <-> 
( x  =  s  /\  y  =  t ) ) )
102101bibi2d 311 . . . . . . . . 9  |-  ( v  =  <. s ,  t
>.  ->  ( ( ( z  =  X  /\  w  =  Y )  <->  <.
x ,  y >.  =  v )  <->  ( (
z  =  X  /\  w  =  Y )  <->  ( x  =  s  /\  y  =  t )
) ) )
1031022ralbidv 2586 . . . . . . . 8  |-  ( v  =  <. s ,  t
>.  ->  ( A. x  e.  A  A. y  e.  C  ( (
z  =  X  /\  w  =  Y )  <->  <.
x ,  y >.  =  v )  <->  A. x  e.  A  A. y  e.  C  ( (
z  =  X  /\  w  =  Y )  <->  ( x  =  s  /\  y  =  t )
) ) )
10496, 103syl5bb 250 . . . . . . 7  |-  ( v  =  <. s ,  t
>.  ->  ( A. u  e.  ( A  X.  C
) ( ( z  =  [_ ( 1st `  u )  /  x ]_ X  /\  w  =  [_ ( 2nd `  u
)  /  y ]_ Y )  <->  u  =  v )  <->  A. x  e.  A  A. y  e.  C  ( (
z  =  X  /\  w  =  Y )  <->  ( x  =  s  /\  y  =  t )
) ) )
105104rexxp 4827 . . . . . 6  |-  ( E. v  e.  ( A  X.  C ) A. u  e.  ( A  X.  C ) ( ( z  =  [_ ( 1st `  u )  /  x ]_ X  /\  w  =  [_ ( 2nd `  u
)  /  y ]_ Y )  <->  u  =  v )  <->  E. s  e.  A  E. t  e.  C  A. x  e.  A  A. y  e.  C  ( (
z  =  X  /\  w  =  Y )  <->  ( x  =  s  /\  y  =  t )
) )
10651, 105sylibr 205 . . . . 5  |-  ( (
ph  /\  ( z  e.  B  /\  w  e.  D ) )  ->  E. v  e.  ( A  X.  C ) A. u  e.  ( A  X.  C ) ( ( z  =  [_ ( 1st `  u )  /  x ]_ X  /\  w  =  [_ ( 2nd `  u
)  /  y ]_ Y )  <->  u  =  v ) )
107 reu6 2955 . . . . 5  |-  ( E! u  e.  ( A  X.  C ) ( z  =  [_ ( 1st `  u )  /  x ]_ X  /\  w  =  [_ ( 2nd `  u
)  /  y ]_ Y )  <->  E. v  e.  ( A  X.  C
) A. u  e.  ( A  X.  C
) ( ( z  =  [_ ( 1st `  u )  /  x ]_ X  /\  w  =  [_ ( 2nd `  u
)  /  y ]_ Y )  <->  u  =  v ) )
108106, 107sylibr 205 . . . 4  |-  ( (
ph  /\  ( z  e.  B  /\  w  e.  D ) )  ->  E! u  e.  ( A  X.  C ) ( z  =  [_ ( 1st `  u )  /  x ]_ X  /\  w  =  [_ ( 2nd `  u
)  /  y ]_ Y ) )
109108ralrimivva 2636 . . 3  |-  ( ph  ->  A. z  e.  B  A. w  e.  D  E! u  e.  ( A  X.  C ) ( z  =  [_ ( 1st `  u )  /  x ]_ X  /\  w  =  [_ ( 2nd `  u
)  /  y ]_ Y ) )
110 eqeq1 2290 . . . . . 6  |-  ( v  =  <. z ,  w >.  ->  ( v  = 
<. [_ ( 1st `  u
)  /  x ]_ X ,  [_ ( 2nd `  u )  /  y ]_ Y >.  <->  <. z ,  w >.  =  <. [_ ( 1st `  u
)  /  x ]_ X ,  [_ ( 2nd `  u )  /  y ]_ Y >. ) )
111 vex 2792 . . . . . . 7  |-  z  e. 
_V
112 vex 2792 . . . . . . 7  |-  w  e. 
_V
113111, 112opth 4244 . . . . . 6  |-  ( <.
z ,  w >.  = 
<. [_ ( 1st `  u
)  /  x ]_ X ,  [_ ( 2nd `  u )  /  y ]_ Y >.  <->  ( z  = 
[_ ( 1st `  u
)  /  x ]_ X  /\  w  =  [_ ( 2nd `  u )  /  y ]_ Y
) )
114110, 113syl6bb 254 . . . . 5  |-  ( v  =  <. z ,  w >.  ->  ( v  = 
<. [_ ( 1st `  u
)  /  x ]_ X ,  [_ ( 2nd `  u )  /  y ]_ Y >.  <->  ( z  = 
[_ ( 1st `  u
)  /  x ]_ X  /\  w  =  [_ ( 2nd `  u )  /  y ]_ Y
) ) )
115114reubidv 2725 . . . 4  |-  ( v  =  <. z ,  w >.  ->  ( E! u  e.  ( A  X.  C
) v  =  <. [_ ( 1st `  u
)  /  x ]_ X ,  [_ ( 2nd `  u )  /  y ]_ Y >.  <->  E! u  e.  ( A  X.  C ) ( z  =  [_ ( 1st `  u )  /  x ]_ X  /\  w  =  [_ ( 2nd `  u )  / 
y ]_ Y ) ) )
116115ralxp 4826 . . 3  |-  ( A. v  e.  ( B  X.  D ) E! u  e.  ( A  X.  C
) v  =  <. [_ ( 1st `  u
)  /  x ]_ X ,  [_ ( 2nd `  u )  /  y ]_ Y >.  <->  A. z  e.  B  A. w  e.  D  E! u  e.  ( A  X.  C ) ( z  =  [_ ( 1st `  u )  /  x ]_ X  /\  w  =  [_ ( 2nd `  u
)  /  y ]_ Y ) )
117109, 116sylibr 205 . 2  |-  ( ph  ->  A. v  e.  ( B  X.  D ) E! u  e.  ( A  X.  C ) v  =  <. [_ ( 1st `  u )  /  x ]_ X ,  [_ ( 2nd `  u )  /  y ]_ Y >. )
118 nfcv 2420 . . . . 5  |-  F/_ z <. X ,  Y >.
119 nfcv 2420 . . . . 5  |-  F/_ w <. X ,  Y >.
120 nfcsb1v 3114 . . . . . 6  |-  F/_ x [_ z  /  x ]_ X
121 nfcv 2420 . . . . . 6  |-  F/_ x [_ w  /  y ]_ Y
122120, 121nfop 3813 . . . . 5  |-  F/_ x <. [_ z  /  x ]_ X ,  [_ w  /  y ]_ Y >.
123 nfcv 2420 . . . . . 6  |-  F/_ y [_ z  /  x ]_ X
124 nfcsb1v 3114 . . . . . 6  |-  F/_ y [_ w  /  y ]_ Y
125123, 124nfop 3813 . . . . 5  |-  F/_ y <. [_ z  /  x ]_ X ,  [_ w  /  y ]_ Y >.
126 csbeq1a 3090 . . . . . 6  |-  ( x  =  z  ->  X  =  [_ z  /  x ]_ X )
127 csbeq1a 3090 . . . . . 6  |-  ( y  =  w  ->  Y  =  [_ w  /  y ]_ Y )
128 opeq12 3799 . . . . . 6  |-  ( ( X  =  [_ z  /  x ]_ X  /\  Y  =  [_ w  / 
y ]_ Y )  ->  <. X ,  Y >.  = 
<. [_ z  /  x ]_ X ,  [_ w  /  y ]_ Y >. )
129126, 127, 128syl2an 465 . . . . 5  |-  ( ( x  =  z  /\  y  =  w )  -> 
<. X ,  Y >.  = 
<. [_ z  /  x ]_ X ,  [_ w  /  y ]_ Y >. )
130118, 119, 122, 125, 129cbvmpt2 5886 . . . 4  |-  ( x  e.  A ,  y  e.  C  |->  <. X ,  Y >. )  =  ( z  e.  A ,  w  e.  C  |->  <. [_ z  /  x ]_ X ,  [_ w  /  y ]_ Y >. )
131111, 112op1std 6091 . . . . . . 7  |-  ( u  =  <. z ,  w >.  ->  ( 1st `  u
)  =  z )
132131csbeq1d 3088 . . . . . 6  |-  ( u  =  <. z ,  w >.  ->  [_ ( 1st `  u
)  /  x ]_ X  =  [_ z  /  x ]_ X )
133111, 112op2ndd 6092 . . . . . . 7  |-  ( u  =  <. z ,  w >.  ->  ( 2nd `  u
)  =  w )
134133csbeq1d 3088 . . . . . 6  |-  ( u  =  <. z ,  w >.  ->  [_ ( 2nd `  u
)  /  y ]_ Y  =  [_ w  / 
y ]_ Y )
135132, 134opeq12d 3805 . . . . 5  |-  ( u  =  <. z ,  w >.  ->  <. [_ ( 1st `  u
)  /  x ]_ X ,  [_ ( 2nd `  u )  /  y ]_ Y >.  =  <. [_ z  /  x ]_ X ,  [_ w  / 
y ]_ Y >. )
136135mpt2mpt 5900 . . . 4  |-  ( u  e.  ( A  X.  C )  |->  <. [_ ( 1st `  u )  /  x ]_ X ,  [_ ( 2nd `  u )  /  y ]_ Y >. )  =  ( z  e.  A ,  w  e.  C  |->  <. [_ z  /  x ]_ X ,  [_ w  /  y ]_ Y >. )
137130, 136eqtr4i 2307 . . 3  |-  ( x  e.  A ,  y  e.  C  |->  <. X ,  Y >. )  =  ( u  e.  ( A  X.  C )  |->  <. [_ ( 1st `  u
)  /  x ]_ X ,  [_ ( 2nd `  u )  /  y ]_ Y >. )
138137f1ompt 5643 . 2  |-  ( ( x  e.  A , 
y  e.  C  |->  <. X ,  Y >. ) : ( A  X.  C ) -1-1-onto-> ( B  X.  D
)  <->  ( A. u  e.  ( A  X.  C
) <. [_ ( 1st `  u
)  /  x ]_ X ,  [_ ( 2nd `  u )  /  y ]_ Y >.  e.  ( B  X.  D )  /\  A. v  e.  ( B  X.  D ) E! u  e.  ( A  X.  C ) v  =  <. [_ ( 1st `  u
)  /  x ]_ X ,  [_ ( 2nd `  u )  /  y ]_ Y >. ) )
13931, 117, 138sylanbrc 647 1  |-  ( ph  ->  ( x  e.  A ,  y  e.  C  |-> 
<. X ,  Y >. ) : ( A  X.  C ) -1-1-onto-> ( B  X.  D
) )
Colors of variables: wff set class
Syntax hints:    -> wi 6    <-> wb 178    /\ wa 360    = wceq 1624    e. wcel 1685   A.wral 2544   E.wrex 2545   E!wreu 2546   [_csb 3082   <.cop 3644    e. cmpt 4078    X. cxp 4686   -1-1-onto->wf1o 5220   ` cfv 5221    e. cmpt2 5821   1stc1st 6081   2ndc2nd 6082
This theorem is referenced by:  infxpenc  7640  pwfseqlem5  8280
This theorem was proved from axioms:  ax-1 7  ax-2 8  ax-3 9  ax-mp 10  ax-gen 1534  ax-5 1545  ax-17 1604  ax-9 1637  ax-8 1645  ax-13 1687  ax-14 1689  ax-6 1704  ax-7 1709  ax-11 1716  ax-12 1867  ax-ext 2265  ax-sep 4142  ax-nul 4150  ax-pr 4213  ax-un 4511
This theorem depends on definitions:  df-bi 179  df-or 361  df-an 362  df-3an 938  df-tru 1312  df-ex 1530  df-nf 1533  df-sb 1632  df-eu 2148  df-mo 2149  df-clab 2271  df-cleq 2277  df-clel 2280  df-nfc 2409  df-ne 2449  df-ral 2549  df-rex 2550  df-reu 2551  df-rab 2553  df-v 2791  df-sbc 2993  df-csb 3083  df-dif 3156  df-un 3158  df-in 3160  df-ss 3167  df-nul 3457  df-if 3567  df-sn 3647  df-pr 3648  df-op 3650  df-uni 3829  df-iun 3908  df-br 4025  df-opab 4079  df-mpt 4080  df-id 4308  df-xp 4694  df-rel 4695  df-cnv 4696  df-co 4697  df-dm 4698  df-rn 4699  df-res 4700  df-ima 4701  df-fun 5223  df-fn 5224  df-f 5225  df-f1 5226  df-fo 5227  df-f1o 5228  df-fv 5229  df-oprab 5823  df-mpt2 5824  df-1st 6083  df-2nd 6084
  Copyright terms: Public domain W3C validator