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

Theorem xpf1o 8122
Description: Construct a bijection on a Cartesian 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
Allowed substitution hints:    ph( x, y)    B( y)    D( x)    X( x)    Y( y)

Proof of Theorem xpf1o
Dummy variables  t 
s  u  v  w  z are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 xp1st 7198 . . . . . 6  |-  ( u  e.  ( A  X.  C )  ->  ( 1st `  u )  e.  A )
21adantl 482 . . . . 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 2622 . . . . . . . . 9  |-  ( x  e.  A  |->  X )  =  ( x  e.  A  |->  X )
54f1ompt 6382 . . . . . . . 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 208 . . . . . . 7  |-  ( ph  ->  ( A. x  e.  A  X  e.  B  /\  A. z  e.  B  E! x  e.  A  z  =  X )
)
76simpld 475 . . . . . 6  |-  ( ph  ->  A. x  e.  A  X  e.  B )
87adantr 481 . . . . 5  |-  ( (
ph  /\  u  e.  ( A  X.  C
) )  ->  A. x  e.  A  X  e.  B )
9 nfcsb1v 3549 . . . . . . 7  |-  F/_ x [_ ( 1st `  u
)  /  x ]_ X
109nfel1 2779 . . . . . 6  |-  F/ x [_ ( 1st `  u
)  /  x ]_ X  e.  B
11 csbeq1a 3542 . . . . . . 7  |-  ( x  =  ( 1st `  u
)  ->  X  =  [_ ( 1st `  u
)  /  x ]_ X )
1211eleq1d 2686 . . . . . 6  |-  ( x  =  ( 1st `  u
)  ->  ( X  e.  B  <->  [_ ( 1st `  u
)  /  x ]_ X  e.  B )
)
1310, 12rspc 3303 . . . . 5  |-  ( ( 1st `  u )  e.  A  ->  ( A. x  e.  A  X  e.  B  ->  [_ ( 1st `  u
)  /  x ]_ X  e.  B )
)
142, 8, 13sylc 65 . . . 4  |-  ( (
ph  /\  u  e.  ( A  X.  C
) )  ->  [_ ( 1st `  u )  /  x ]_ X  e.  B
)
15 xp2nd 7199 . . . . . 6  |-  ( u  e.  ( A  X.  C )  ->  ( 2nd `  u )  e.  C )
1615adantl 482 . . . . 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 2622 . . . . . . . . 9  |-  ( y  e.  C  |->  Y )  =  ( y  e.  C  |->  Y )
1918f1ompt 6382 . . . . . . . 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 208 . . . . . . 7  |-  ( ph  ->  ( A. y  e.  C  Y  e.  D  /\  A. w  e.  D  E! y  e.  C  w  =  Y )
)
2120simpld 475 . . . . . 6  |-  ( ph  ->  A. y  e.  C  Y  e.  D )
2221adantr 481 . . . . 5  |-  ( (
ph  /\  u  e.  ( A  X.  C
) )  ->  A. y  e.  C  Y  e.  D )
23 nfcsb1v 3549 . . . . . . 7  |-  F/_ y [_ ( 2nd `  u
)  /  y ]_ Y
2423nfel1 2779 . . . . . 6  |-  F/ y
[_ ( 2nd `  u
)  /  y ]_ Y  e.  D
25 csbeq1a 3542 . . . . . . 7  |-  ( y  =  ( 2nd `  u
)  ->  Y  =  [_ ( 2nd `  u
)  /  y ]_ Y )
2625eleq1d 2686 . . . . . 6  |-  ( y  =  ( 2nd `  u
)  ->  ( Y  e.  D  <->  [_ ( 2nd `  u
)  /  y ]_ Y  e.  D )
)
2724, 26rspc 3303 . . . . 5  |-  ( ( 2nd `  u )  e.  C  ->  ( A. y  e.  C  Y  e.  D  ->  [_ ( 2nd `  u
)  /  y ]_ Y  e.  D )
)
2816, 22, 27sylc 65 . . . 4  |-  ( (
ph  /\  u  e.  ( A  X.  C
) )  ->  [_ ( 2nd `  u )  / 
y ]_ Y  e.  D
)
29 opelxpi 5148 . . . 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 693 . . 3  |-  ( (
ph  /\  u  e.  ( A  X.  C
) )  ->  <. [_ ( 1st `  u )  /  x ]_ X ,  [_ ( 2nd `  u )  /  y ]_ Y >.  e.  ( B  X.  D ) )
3130ralrimiva 2966 . 2  |-  ( ph  ->  A. u  e.  ( A  X.  C )
<. [_ ( 1st `  u
)  /  x ]_ X ,  [_ ( 2nd `  u )  /  y ]_ Y >.  e.  ( B  X.  D ) )
326simprd 479 . . . . . . . . . 10  |-  ( ph  ->  A. z  e.  B  E! x  e.  A  z  =  X )
3332r19.21bi 2932 . . . . . . . . 9  |-  ( (
ph  /\  z  e.  B )  ->  E! x  e.  A  z  =  X )
34 reu6 3395 . . . . . . . . 9  |-  ( E! x  e.  A  z  =  X  <->  E. s  e.  A  A. x  e.  A  ( z  =  X  <->  x  =  s
) )
3533, 34sylib 208 . . . . . . . 8  |-  ( (
ph  /\  z  e.  B )  ->  E. s  e.  A  A. x  e.  A  ( z  =  X  <->  x  =  s
) )
3620simprd 479 . . . . . . . . . 10  |-  ( ph  ->  A. w  e.  D  E! y  e.  C  w  =  Y )
3736r19.21bi 2932 . . . . . . . . 9  |-  ( (
ph  /\  w  e.  D )  ->  E! y  e.  C  w  =  Y )
38 reu6 3395 . . . . . . . . 9  |-  ( E! y  e.  C  w  =  Y  <->  E. t  e.  C  A. y  e.  C  ( w  =  Y  <->  y  =  t ) )
3937, 38sylib 208 . . . . . . . 8  |-  ( (
ph  /\  w  e.  D )  ->  E. t  e.  C  A. y  e.  C  ( w  =  Y  <->  y  =  t ) )
4035, 39anim12dan 882 . . . . . . 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 3107 . . . . . . . 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 916 . . . . . . . . . . . . . . 15  |-  ( ( ( z  =  X  <-> 
x  =  s )  /\  ( w  =  Y  <->  y  =  t ) )  ->  (
( z  =  X  /\  w  =  Y )  <->  ( x  =  s  /\  y  =  t ) ) )
4342ex 450 . . . . . . . . . . . . . 14  |-  ( ( z  =  X  <->  x  =  s )  ->  (
( w  =  Y  <-> 
y  =  t )  ->  ( ( z  =  X  /\  w  =  Y )  <->  ( x  =  s  /\  y  =  t ) ) ) )
4443ralimdv 2963 . . . . . . . . . . . . 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 32 . . . . . . . . . . . 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 2963 . . . . . . . . . . 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 446 . . . . . . . . . 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 3011 . . . . . . . . 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 3011 . . . . . . . 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 225 . . . . . . 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 3203 . . . . . . . . . . . . . . 15  |-  s  e. 
_V
53 vex 3203 . . . . . . . . . . . . . . 15  |-  t  e. 
_V
5452, 53op1std 7178 . . . . . . . . . . . . . 14  |-  ( u  =  <. s ,  t
>.  ->  ( 1st `  u
)  =  s )
5554csbeq1d 3540 . . . . . . . . . . . . 13  |-  ( u  =  <. s ,  t
>.  ->  [_ ( 1st `  u
)  /  x ]_ X  =  [_ s  /  x ]_ X )
5655eqeq2d 2632 . . . . . . . . . . . 12  |-  ( u  =  <. s ,  t
>.  ->  ( z  = 
[_ ( 1st `  u
)  /  x ]_ X 
<->  z  =  [_ s  /  x ]_ X ) )
5752, 53op2ndd 7179 . . . . . . . . . . . . . 14  |-  ( u  =  <. s ,  t
>.  ->  ( 2nd `  u
)  =  t )
5857csbeq1d 3540 . . . . . . . . . . . . 13  |-  ( u  =  <. s ,  t
>.  ->  [_ ( 2nd `  u
)  /  y ]_ Y  =  [_ t  / 
y ]_ Y )
5958eqeq2d 2632 . . . . . . . . . . . 12  |-  ( u  =  <. s ,  t
>.  ->  ( w  = 
[_ ( 2nd `  u
)  /  y ]_ Y 
<->  w  =  [_ t  /  y ]_ Y
) )
6056, 59anbi12d 747 . . . . . . . . . . 11  |-  ( u  =  <. s ,  t
>.  ->  ( ( z  =  [_ ( 1st `  u )  /  x ]_ X  /\  w  =  [_ ( 2nd `  u
)  /  y ]_ Y )  <->  ( z  =  [_ s  /  x ]_ X  /\  w  =  [_ t  /  y ]_ Y ) ) )
61 eqeq1 2626 . . . . . . . . . . 11  |-  ( u  =  <. s ,  t
>.  ->  ( u  =  v  <->  <. s ,  t
>.  =  v )
)
6260, 61bibi12d 335 . . . . . . . . . 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 5263 . . . . . . . . 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 1843 . . . . . . . . . 10  |-  F/ s A. y  e.  C  ( ( z  =  X  /\  w  =  Y )  <->  <. x ,  y >.  =  v
)
65 nfcv 2764 . . . . . . . . . . 11  |-  F/_ x C
66 nfcsb1v 3549 . . . . . . . . . . . . . 14  |-  F/_ x [_ s  /  x ]_ X
6766nfeq2 2780 . . . . . . . . . . . . 13  |-  F/ x  z  =  [_ s  /  x ]_ X
68 nfv 1843 . . . . . . . . . . . . 13  |-  F/ x  w  =  [_ t  / 
y ]_ Y
6967, 68nfan 1828 . . . . . . . . . . . 12  |-  F/ x
( z  =  [_ s  /  x ]_ X  /\  w  =  [_ t  /  y ]_ Y
)
70 nfv 1843 . . . . . . . . . . . 12  |-  F/ x <. s ,  t >.  =  v
7169, 70nfbi 1833 . . . . . . . . . . 11  |-  F/ x
( ( z  = 
[_ s  /  x ]_ X  /\  w  =  [_ t  /  y ]_ Y )  <->  <. s ,  t >.  =  v
)
7265, 71nfral 2945 . . . . . . . . . 10  |-  F/ x A. t  e.  C  ( ( z  = 
[_ s  /  x ]_ X  /\  w  =  [_ t  /  y ]_ Y )  <->  <. s ,  t >.  =  v
)
73 nfv 1843 . . . . . . . . . . . 12  |-  F/ t ( ( z  =  X  /\  w  =  Y )  <->  <. x ,  y >.  =  v
)
74 nfv 1843 . . . . . . . . . . . . . 14  |-  F/ y  z  =  X
75 nfcsb1v 3549 . . . . . . . . . . . . . . 15  |-  F/_ y [_ t  /  y ]_ Y
7675nfeq2 2780 . . . . . . . . . . . . . 14  |-  F/ y  w  =  [_ t  /  y ]_ Y
7774, 76nfan 1828 . . . . . . . . . . . . 13  |-  F/ y ( z  =  X  /\  w  =  [_ t  /  y ]_ Y
)
78 nfv 1843 . . . . . . . . . . . . 13  |-  F/ y
<. x ,  t >.  =  v
7977, 78nfbi 1833 . . . . . . . . . . . 12  |-  F/ y ( ( z  =  X  /\  w  = 
[_ t  /  y ]_ Y )  <->  <. x ,  t >.  =  v
)
80 csbeq1a 3542 . . . . . . . . . . . . . . 15  |-  ( y  =  t  ->  Y  =  [_ t  /  y ]_ Y )
8180eqeq2d 2632 . . . . . . . . . . . . . 14  |-  ( y  =  t  ->  (
w  =  Y  <->  w  =  [_ t  /  y ]_ Y ) )
8281anbi2d 740 . . . . . . . . . . . . 13  |-  ( y  =  t  ->  (
( z  =  X  /\  w  =  Y )  <->  ( z  =  X  /\  w  = 
[_ t  /  y ]_ Y ) ) )
83 opeq2 4403 . . . . . . . . . . . . . 14  |-  ( y  =  t  ->  <. x ,  y >.  =  <. x ,  t >. )
8483eqeq1d 2624 . . . . . . . . . . . . 13  |-  ( y  =  t  ->  ( <. x ,  y >.  =  v  <->  <. x ,  t
>.  =  v )
)
8582, 84bibi12d 335 . . . . . . . . . . . 12  |-  ( y  =  t  ->  (
( ( z  =  X  /\  w  =  Y )  <->  <. x ,  y >.  =  v
)  <->  ( ( z  =  X  /\  w  =  [_ t  /  y ]_ Y )  <->  <. x ,  t >.  =  v
) ) )
8673, 79, 85cbvral 3167 . . . . . . . . . . 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 3542 . . . . . . . . . . . . . . 15  |-  ( x  =  s  ->  X  =  [_ s  /  x ]_ X )
8887eqeq2d 2632 . . . . . . . . . . . . . 14  |-  ( x  =  s  ->  (
z  =  X  <->  z  =  [_ s  /  x ]_ X ) )
8988anbi1d 741 . . . . . . . . . . . . 13  |-  ( x  =  s  ->  (
( z  =  X  /\  w  =  [_ t  /  y ]_ Y
)  <->  ( z  = 
[_ s  /  x ]_ X  /\  w  =  [_ t  /  y ]_ Y ) ) )
90 opeq1 4402 . . . . . . . . . . . . . 14  |-  ( x  =  s  ->  <. x ,  t >.  =  <. s ,  t >. )
9190eqeq1d 2624 . . . . . . . . . . . . 13  |-  ( x  =  s  ->  ( <. x ,  t >.  =  v  <->  <. s ,  t
>.  =  v )
)
9289, 91bibi12d 335 . . . . . . . . . . . 12  |-  ( x  =  s  ->  (
( ( z  =  X  /\  w  = 
[_ t  /  y ]_ Y )  <->  <. x ,  t >.  =  v
)  <->  ( ( z  =  [_ s  /  x ]_ X  /\  w  =  [_ t  /  y ]_ Y )  <->  <. s ,  t >.  =  v
) ) )
9392ralbidv 2986 . . . . . . . . . . 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 272 . . . . . . . . . 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 3167 . . . . . . . . 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 267 . . . . . . . 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 2633 . . . . . . . . . . 11  |-  ( v  =  <. s ,  t
>.  ->  ( <. x ,  y >.  =  v  <->  <. x ,  y >.  =  <. s ,  t
>. ) )
98 vex 3203 . . . . . . . . . . . 12  |-  x  e. 
_V
99 vex 3203 . . . . . . . . . . . 12  |-  y  e. 
_V
10098, 99opth 4945 . . . . . . . . . . 11  |-  ( <.
x ,  y >.  =  <. s ,  t
>. 
<->  ( x  =  s  /\  y  =  t ) )
10197, 100syl6bb 276 . . . . . . . . . 10  |-  ( v  =  <. s ,  t
>.  ->  ( <. x ,  y >.  =  v  <-> 
( x  =  s  /\  y  =  t ) ) )
102101bibi2d 332 . . . . . . . . 9  |-  ( v  =  <. s ,  t
>.  ->  ( ( ( z  =  X  /\  w  =  Y )  <->  <.
x ,  y >.  =  v )  <->  ( (
z  =  X  /\  w  =  Y )  <->  ( x  =  s  /\  y  =  t )
) ) )
1031022ralbidv 2989 . . . . . . . 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 272 . . . . . . 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 5264 . . . . . 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 224 . . . . 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 3395 . . . . 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 224 . . . 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 2971 . . 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 2626 . . . . . 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 3203 . . . . . . 7  |-  z  e. 
_V
112 vex 3203 . . . . . . 7  |-  w  e. 
_V
113111, 112opth 4945 . . . . . 6  |-  ( <.
z ,  w >.  = 
<. [_ ( 1st `  u
)  /  x ]_ X ,  [_ ( 2nd `  u )  /  y ]_ Y >.  <->  ( z  = 
[_ ( 1st `  u
)  /  x ]_ X  /\  w  =  [_ ( 2nd `  u )  /  y ]_ Y
) )
114110, 113syl6bb 276 . . . . 5  |-  ( v  =  <. z ,  w >.  ->  ( v  = 
<. [_ ( 1st `  u
)  /  x ]_ X ,  [_ ( 2nd `  u )  /  y ]_ Y >.  <->  ( z  = 
[_ ( 1st `  u
)  /  x ]_ X  /\  w  =  [_ ( 2nd `  u )  /  y ]_ Y
) ) )
115114reubidv 3126 . . . 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 5263 . . 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 224 . 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 2764 . . . . 5  |-  F/_ z <. X ,  Y >.
119 nfcv 2764 . . . . 5  |-  F/_ w <. X ,  Y >.
120 nfcsb1v 3549 . . . . . 6  |-  F/_ x [_ z  /  x ]_ X
121 nfcv 2764 . . . . . 6  |-  F/_ x [_ w  /  y ]_ Y
122120, 121nfop 4418 . . . . 5  |-  F/_ x <. [_ z  /  x ]_ X ,  [_ w  /  y ]_ Y >.
123 nfcv 2764 . . . . . 6  |-  F/_ y [_ z  /  x ]_ X
124 nfcsb1v 3549 . . . . . 6  |-  F/_ y [_ w  /  y ]_ Y
125123, 124nfop 4418 . . . . 5  |-  F/_ y <. [_ z  /  x ]_ X ,  [_ w  /  y ]_ Y >.
126 csbeq1a 3542 . . . . . 6  |-  ( x  =  z  ->  X  =  [_ z  /  x ]_ X )
127 csbeq1a 3542 . . . . . 6  |-  ( y  =  w  ->  Y  =  [_ w  /  y ]_ Y )
128 opeq12 4404 . . . . . 6  |-  ( ( X  =  [_ z  /  x ]_ X  /\  Y  =  [_ w  / 
y ]_ Y )  ->  <. X ,  Y >.  = 
<. [_ z  /  x ]_ X ,  [_ w  /  y ]_ Y >. )
129126, 127, 128syl2an 494 . . . . 5  |-  ( ( x  =  z  /\  y  =  w )  -> 
<. X ,  Y >.  = 
<. [_ z  /  x ]_ X ,  [_ w  /  y ]_ Y >. )
130118, 119, 122, 125, 129cbvmpt2 6734 . . . 4  |-  ( x  e.  A ,  y  e.  C  |->  <. X ,  Y >. )  =  ( z  e.  A ,  w  e.  C  |->  <. [_ z  /  x ]_ X ,  [_ w  /  y ]_ Y >. )
131111, 112op1std 7178 . . . . . . 7  |-  ( u  =  <. z ,  w >.  ->  ( 1st `  u
)  =  z )
132131csbeq1d 3540 . . . . . 6  |-  ( u  =  <. z ,  w >.  ->  [_ ( 1st `  u
)  /  x ]_ X  =  [_ z  /  x ]_ X )
133111, 112op2ndd 7179 . . . . . . 7  |-  ( u  =  <. z ,  w >.  ->  ( 2nd `  u
)  =  w )
134133csbeq1d 3540 . . . . . 6  |-  ( u  =  <. z ,  w >.  ->  [_ ( 2nd `  u
)  /  y ]_ Y  =  [_ w  / 
y ]_ Y )
135132, 134opeq12d 4410 . . . . 5  |-  ( u  =  <. z ,  w >.  ->  <. [_ ( 1st `  u
)  /  x ]_ X ,  [_ ( 2nd `  u )  /  y ]_ Y >.  =  <. [_ z  /  x ]_ X ,  [_ w  / 
y ]_ Y >. )
136135mpt2mpt 6752 . . . 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 2647 . . 3  |-  ( x  e.  A ,  y  e.  C  |->  <. X ,  Y >. )  =  ( u  e.  ( A  X.  C )  |->  <. [_ ( 1st `  u
)  /  x ]_ X ,  [_ ( 2nd `  u )  /  y ]_ Y >. )
138137f1ompt 6382 . 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 698 1  |-  ( ph  ->  ( x  e.  A ,  y  e.  C  |-> 
<. X ,  Y >. ) : ( A  X.  C ) -1-1-onto-> ( B  X.  D
) )
Colors of variables: wff setvar class
Syntax hints:    -> wi 4    <-> wb 196    /\ wa 384    = wceq 1483    e. wcel 1990   A.wral 2912   E.wrex 2913   E!wreu 2914   [_csb 3533   <.cop 4183    |-> cmpt 4729    X. cxp 5112   -1-1-onto->wf1o 5887   ` cfv 5888    |-> cmpt2 6652   1stc1st 7166   2ndc2nd 7167
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1722  ax-4 1737  ax-5 1839  ax-6 1888  ax-7 1935  ax-8 1992  ax-9 1999  ax-10 2019  ax-11 2034  ax-12 2047  ax-13 2246  ax-ext 2602  ax-sep 4781  ax-nul 4789  ax-pow 4843  ax-pr 4906  ax-un 6949
This theorem depends on definitions:  df-bi 197  df-or 385  df-an 386  df-3an 1039  df-tru 1486  df-ex 1705  df-nf 1710  df-sb 1881  df-eu 2474  df-mo 2475  df-clab 2609  df-cleq 2615  df-clel 2618  df-nfc 2753  df-ne 2795  df-ral 2917  df-rex 2918  df-reu 2919  df-rab 2921  df-v 3202  df-sbc 3436  df-csb 3534  df-dif 3577  df-un 3579  df-in 3581  df-ss 3588  df-nul 3916  df-if 4087  df-sn 4178  df-pr 4180  df-op 4184  df-uni 4437  df-iun 4522  df-br 4654  df-opab 4713  df-mpt 4730  df-id 5024  df-xp 5120  df-rel 5121  df-cnv 5122  df-co 5123  df-dm 5124  df-rn 5125  df-res 5126  df-ima 5127  df-iota 5851  df-fun 5890  df-fn 5891  df-f 5892  df-f1 5893  df-fo 5894  df-f1o 5895  df-fv 5896  df-oprab 6654  df-mpt2 6655  df-1st 7168  df-2nd 7169
This theorem is referenced by:  infxpenc  8841  pwfseqlem5  9485
  Copyright terms: Public domain W3C validator