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

Theorem fprodcom2fi 12137
Description: Interchange order of multiplication. Note that  B ( j ) and  D ( k ) are not necessarily constant expressions. (Contributed by Scott Fenton, 1-Feb-2018.) (Proof shortened by JJ, 2-Aug-2021.)
Hypotheses
Ref Expression
fprodcom2.1  |-  ( ph  ->  A  e.  Fin )
fprodcom2.2  |-  ( ph  ->  C  e.  Fin )
fprodcom2.3  |-  ( (
ph  /\  j  e.  A )  ->  B  e.  Fin )
fprodcom2fi.d  |-  ( (
ph  /\  k  e.  C )  ->  D  e.  Fin )
fprodcom2.4  |-  ( ph  ->  ( ( j  e.  A  /\  k  e.  B )  <->  ( k  e.  C  /\  j  e.  D ) ) )
fprodcom2.5  |-  ( (
ph  /\  ( j  e.  A  /\  k  e.  B ) )  ->  E  e.  CC )
Assertion
Ref Expression
fprodcom2fi  |-  ( ph  ->  prod_ j  e.  A  prod_ k  e.  B  E  =  prod_ k  e.  C  prod_ j  e.  D  E
)
Distinct variable groups:    A, j, k    B, k    C, j, k    D, j    ph, j, k
Allowed substitution hints:    B( j)    D( k)    E( j, k)

Proof of Theorem fprodcom2fi
Dummy variables  x  y  z  w are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 relxp 4828 . . . . . . . . 9  |-  Rel  ( { j }  X.  B )
21rgenw 2585 . . . . . . . 8  |-  A. j  e.  A  Rel  ( { j }  X.  B
)
3 reliun 4840 . . . . . . . 8  |-  ( Rel  U_ j  e.  A  ( { j }  X.  B )  <->  A. j  e.  A  Rel  ( { j }  X.  B
) )
42, 3mpbir 146 . . . . . . 7  |-  Rel  U_ j  e.  A  ( {
j }  X.  B
)
5 relcnv 5106 . . . . . . 7  |-  Rel  `' U_ k  e.  C  ( { k }  X.  D )
6 ancom 266 . . . . . . . . . . . 12  |-  ( ( x  =  j  /\  y  =  k )  <->  ( y  =  k  /\  x  =  j )
)
7 vex 2802 . . . . . . . . . . . . 13  |-  x  e. 
_V
8 vex 2802 . . . . . . . . . . . . 13  |-  y  e. 
_V
97, 8opth 4323 . . . . . . . . . . . 12  |-  ( <.
x ,  y >.  =  <. j ,  k
>. 
<->  ( x  =  j  /\  y  =  k ) )
108, 7opth 4323 . . . . . . . . . . . 12  |-  ( <.
y ,  x >.  = 
<. k ,  j >.  <->  ( y  =  k  /\  x  =  j )
)
116, 9, 103bitr4i 212 . . . . . . . . . . 11  |-  ( <.
x ,  y >.  =  <. j ,  k
>. 
<-> 
<. y ,  x >.  = 
<. k ,  j >.
)
1211a1i 9 . . . . . . . . . 10  |-  ( ph  ->  ( <. x ,  y
>.  =  <. j ,  k >.  <->  <. y ,  x >.  =  <. k ,  j
>. ) )
13 fprodcom2.4 . . . . . . . . . 10  |-  ( ph  ->  ( ( j  e.  A  /\  k  e.  B )  <->  ( k  e.  C  /\  j  e.  D ) ) )
1412, 13anbi12d 473 . . . . . . . . 9  |-  ( ph  ->  ( ( <. x ,  y >.  =  <. j ,  k >.  /\  (
j  e.  A  /\  k  e.  B )
)  <->  ( <. y ,  x >.  =  <. k ,  j >.  /\  (
k  e.  C  /\  j  e.  D )
) ) )
15142exbidv 1914 . . . . . . . 8  |-  ( ph  ->  ( E. j E. k ( <. x ,  y >.  =  <. j ,  k >.  /\  (
j  e.  A  /\  k  e.  B )
)  <->  E. j E. k
( <. y ,  x >.  =  <. k ,  j
>.  /\  ( k  e.  C  /\  j  e.  D ) ) ) )
16 eliunxp 4861 . . . . . . . 8  |-  ( <.
x ,  y >.  e.  U_ j  e.  A  ( { j }  X.  B )  <->  E. j E. k ( <. x ,  y >.  =  <. j ,  k >.  /\  (
j  e.  A  /\  k  e.  B )
) )
177, 8opelcnv 4904 . . . . . . . . 9  |-  ( <.
x ,  y >.  e.  `' U_ k  e.  C  ( { k }  X.  D )  <->  <. y ,  x >.  e.  U_ k  e.  C  ( {
k }  X.  D
) )
18 eliunxp 4861 . . . . . . . . 9  |-  ( <.
y ,  x >.  e. 
U_ k  e.  C  ( { k }  X.  D )  <->  E. k E. j ( <. y ,  x >.  =  <. k ,  j >.  /\  (
k  e.  C  /\  j  e.  D )
) )
19 excom 1710 . . . . . . . . 9  |-  ( E. k E. j (
<. y ,  x >.  = 
<. k ,  j >.  /\  ( k  e.  C  /\  j  e.  D
) )  <->  E. j E. k ( <. y ,  x >.  =  <. k ,  j >.  /\  (
k  e.  C  /\  j  e.  D )
) )
2017, 18, 193bitri 206 . . . . . . . 8  |-  ( <.
x ,  y >.  e.  `' U_ k  e.  C  ( { k }  X.  D )  <->  E. j E. k ( <. y ,  x >.  =  <. k ,  j >.  /\  (
k  e.  C  /\  j  e.  D )
) )
2115, 16, 203bitr4g 223 . . . . . . 7  |-  ( ph  ->  ( <. x ,  y
>.  e.  U_ j  e.  A  ( { j }  X.  B )  <->  <. x ,  y >.  e.  `' U_ k  e.  C  ( { k }  X.  D ) ) )
224, 5, 21eqrelrdv 4815 . . . . . 6  |-  ( ph  ->  U_ j  e.  A  ( { j }  X.  B )  =  `' U_ k  e.  C  ( { k }  X.  D ) )
23 nfcv 2372 . . . . . . 7  |-  F/_ x
( { j }  X.  B )
24 nfcv 2372 . . . . . . . 8  |-  F/_ j { x }
25 nfcsb1v 3157 . . . . . . . 8  |-  F/_ j [_ x  /  j ]_ B
2624, 25nfxp 4746 . . . . . . 7  |-  F/_ j
( { x }  X.  [_ x  /  j ]_ B )
27 sneq 3677 . . . . . . . 8  |-  ( j  =  x  ->  { j }  =  { x } )
28 csbeq1a 3133 . . . . . . . 8  |-  ( j  =  x  ->  B  =  [_ x  /  j ]_ B )
2927, 28xpeq12d 4744 . . . . . . 7  |-  ( j  =  x  ->  ( { j }  X.  B )  =  ( { x }  X.  [_ x  /  j ]_ B ) )
3023, 26, 29cbviun 4002 . . . . . 6  |-  U_ j  e.  A  ( {
j }  X.  B
)  =  U_ x  e.  A  ( {
x }  X.  [_ x  /  j ]_ B
)
31 nfcv 2372 . . . . . . . 8  |-  F/_ y
( { k }  X.  D )
32 nfcv 2372 . . . . . . . . 9  |-  F/_ k { y }
33 nfcsb1v 3157 . . . . . . . . 9  |-  F/_ k [_ y  /  k ]_ D
3432, 33nfxp 4746 . . . . . . . 8  |-  F/_ k
( { y }  X.  [_ y  / 
k ]_ D )
35 sneq 3677 . . . . . . . . 9  |-  ( k  =  y  ->  { k }  =  { y } )
36 csbeq1a 3133 . . . . . . . . 9  |-  ( k  =  y  ->  D  =  [_ y  /  k ]_ D )
3735, 36xpeq12d 4744 . . . . . . . 8  |-  ( k  =  y  ->  ( { k }  X.  D )  =  ( { y }  X.  [_ y  /  k ]_ D ) )
3831, 34, 37cbviun 4002 . . . . . . 7  |-  U_ k  e.  C  ( {
k }  X.  D
)  =  U_ y  e.  C  ( {
y }  X.  [_ y  /  k ]_ D
)
3938cnveqi 4897 . . . . . 6  |-  `' U_ k  e.  C  ( { k }  X.  D )  =  `' U_ y  e.  C  ( { y }  X.  [_ y  /  k ]_ D )
4022, 30, 393eqtr3g 2285 . . . . 5  |-  ( ph  ->  U_ x  e.  A  ( { x }  X.  [_ x  /  j ]_ B )  =  `' U_ y  e.  C  ( { y }  X.  [_ y  /  k ]_ D ) )
4140prodeq1d 12075 . . . 4  |-  ( ph  ->  prod_ z  e.  U_  x  e.  A  ( { x }  X.  [_ x  /  j ]_ B ) [_ ( 2nd `  z )  / 
k ]_ [_ ( 1st `  z )  /  j ]_ E  =  prod_ z  e.  `'  U_ y  e.  C  ( {
y }  X.  [_ y  /  k ]_ D
) [_ ( 2nd `  z
)  /  k ]_ [_ ( 1st `  z
)  /  j ]_ E )
428, 7op1std 6294 . . . . . . 7  |-  ( w  =  <. y ,  x >.  ->  ( 1st `  w
)  =  y )
4342csbeq1d 3131 . . . . . 6  |-  ( w  =  <. y ,  x >.  ->  [_ ( 1st `  w
)  /  k ]_ [_ ( 2nd `  w
)  /  j ]_ E  =  [_ y  / 
k ]_ [_ ( 2nd `  w )  /  j ]_ E )
448, 7op2ndd 6295 . . . . . . . 8  |-  ( w  =  <. y ,  x >.  ->  ( 2nd `  w
)  =  x )
4544csbeq1d 3131 . . . . . . 7  |-  ( w  =  <. y ,  x >.  ->  [_ ( 2nd `  w
)  /  j ]_ E  =  [_ x  / 
j ]_ E )
4645csbeq2dv 3150 . . . . . 6  |-  ( w  =  <. y ,  x >.  ->  [_ y  /  k ]_ [_ ( 2nd `  w
)  /  j ]_ E  =  [_ y  / 
k ]_ [_ x  / 
j ]_ E )
4743, 46eqtrd 2262 . . . . 5  |-  ( w  =  <. y ,  x >.  ->  [_ ( 1st `  w
)  /  k ]_ [_ ( 2nd `  w
)  /  j ]_ E  =  [_ y  / 
k ]_ [_ x  / 
j ]_ E )
487, 8op2ndd 6295 . . . . . . 7  |-  ( z  =  <. x ,  y
>.  ->  ( 2nd `  z
)  =  y )
4948csbeq1d 3131 . . . . . 6  |-  ( z  =  <. x ,  y
>.  ->  [_ ( 2nd `  z
)  /  k ]_ [_ ( 1st `  z
)  /  j ]_ E  =  [_ y  / 
k ]_ [_ ( 1st `  z )  /  j ]_ E )
507, 8op1std 6294 . . . . . . . 8  |-  ( z  =  <. x ,  y
>.  ->  ( 1st `  z
)  =  x )
5150csbeq1d 3131 . . . . . . 7  |-  ( z  =  <. x ,  y
>.  ->  [_ ( 1st `  z
)  /  j ]_ E  =  [_ x  / 
j ]_ E )
5251csbeq2dv 3150 . . . . . 6  |-  ( z  =  <. x ,  y
>.  ->  [_ y  /  k ]_ [_ ( 1st `  z
)  /  j ]_ E  =  [_ y  / 
k ]_ [_ x  / 
j ]_ E )
5349, 52eqtrd 2262 . . . . 5  |-  ( z  =  <. x ,  y
>.  ->  [_ ( 2nd `  z
)  /  k ]_ [_ ( 1st `  z
)  /  j ]_ E  =  [_ y  / 
k ]_ [_ x  / 
j ]_ E )
54 fprodcom2.2 . . . . . 6  |-  ( ph  ->  C  e.  Fin )
55 snfig 6967 . . . . . . . . 9  |-  ( y  e.  _V  ->  { y }  e.  Fin )
5655elv 2803 . . . . . . . 8  |-  { y }  e.  Fin
57 fprodcom2fi.d . . . . . . . . . 10  |-  ( (
ph  /\  k  e.  C )  ->  D  e.  Fin )
5857ralrimiva 2603 . . . . . . . . 9  |-  ( ph  ->  A. k  e.  C  D  e.  Fin )
5933nfel1 2383 . . . . . . . . . 10  |-  F/ k
[_ y  /  k ]_ D  e.  Fin
6036eleq1d 2298 . . . . . . . . . 10  |-  ( k  =  y  ->  ( D  e.  Fin  <->  [_ y  / 
k ]_ D  e.  Fin ) )
6159, 60rspc 2901 . . . . . . . . 9  |-  ( y  e.  C  ->  ( A. k  e.  C  D  e.  Fin  ->  [_ y  /  k ]_ D  e.  Fin ) )
6258, 61mpan9 281 . . . . . . . 8  |-  ( (
ph  /\  y  e.  C )  ->  [_ y  /  k ]_ D  e.  Fin )
63 xpfi 7094 . . . . . . . 8  |-  ( ( { y }  e.  Fin  /\  [_ y  / 
k ]_ D  e.  Fin )  ->  ( { y }  X.  [_ y  /  k ]_ D
)  e.  Fin )
6456, 62, 63sylancr 414 . . . . . . 7  |-  ( (
ph  /\  y  e.  C )  ->  ( { y }  X.  [_ y  /  k ]_ D )  e.  Fin )
6564ralrimiva 2603 . . . . . 6  |-  ( ph  ->  A. y  e.  C  ( { y }  X.  [_ y  /  k ]_ D )  e.  Fin )
66 disjsnxp 6383 . . . . . . 7  |- Disj  y  e.  C  ( { y }  X.  [_ y  /  k ]_ D
)
6766a1i 9 . . . . . 6  |-  ( ph  -> Disj  y  e.  C  ( { y }  X.  [_ y  /  k ]_ D ) )
68 iunfidisj 7113 . . . . . 6  |-  ( ( C  e.  Fin  /\  A. y  e.  C  ( { y }  X.  [_ y  /  k ]_ D )  e.  Fin  /\ Disj  y  e.  C  ( { y }  X.  [_ y  /  k ]_ D ) )  ->  U_ y  e.  C  ( { y }  X.  [_ y  /  k ]_ D )  e.  Fin )
6954, 65, 67, 68syl3anc 1271 . . . . 5  |-  ( ph  ->  U_ y  e.  C  ( { y }  X.  [_ y  /  k ]_ D )  e.  Fin )
70 reliun 4840 . . . . . . 7  |-  ( Rel  U_ y  e.  C  ( { y }  X.  [_ y  /  k ]_ D )  <->  A. y  e.  C  Rel  ( { y }  X.  [_ y  /  k ]_ D
) )
71 relxp 4828 . . . . . . . 8  |-  Rel  ( { y }  X.  [_ y  /  k ]_ D )
7271a1i 9 . . . . . . 7  |-  ( y  e.  C  ->  Rel  ( { y }  X.  [_ y  /  k ]_ D ) )
7370, 72mprgbir 2588 . . . . . 6  |-  Rel  U_ y  e.  C  ( {
y }  X.  [_ y  /  k ]_ D
)
7473a1i 9 . . . . 5  |-  ( ph  ->  Rel  U_ y  e.  C  ( { y }  X.  [_ y  /  k ]_ D ) )
75 csbeq1 3127 . . . . . . . 8  |-  ( x  =  ( 2nd `  w
)  ->  [_ x  / 
j ]_ E  =  [_ ( 2nd `  w )  /  j ]_ E
)
7675csbeq2dv 3150 . . . . . . 7  |-  ( x  =  ( 2nd `  w
)  ->  [_ ( 1st `  w )  /  k ]_ [_ x  /  j ]_ E  =  [_ ( 1st `  w )  / 
k ]_ [_ ( 2nd `  w )  /  j ]_ E )
7776eleq1d 2298 . . . . . 6  |-  ( x  =  ( 2nd `  w
)  ->  ( [_ ( 1st `  w )  /  k ]_ [_ x  /  j ]_ E  e.  CC  <->  [_ ( 1st `  w
)  /  k ]_ [_ ( 2nd `  w
)  /  j ]_ E  e.  CC )
)
78 csbeq1 3127 . . . . . . . 8  |-  ( y  =  ( 1st `  w
)  ->  [_ y  / 
k ]_ D  =  [_ ( 1st `  w )  /  k ]_ D
)
79 csbeq1 3127 . . . . . . . . 9  |-  ( y  =  ( 1st `  w
)  ->  [_ y  / 
k ]_ [_ x  / 
j ]_ E  =  [_ ( 1st `  w )  /  k ]_ [_ x  /  j ]_ E
)
8079eleq1d 2298 . . . . . . . 8  |-  ( y  =  ( 1st `  w
)  ->  ( [_ y  /  k ]_ [_ x  /  j ]_ E  e.  CC  <->  [_ ( 1st `  w
)  /  k ]_ [_ x  /  j ]_ E  e.  CC )
)
8178, 80raleqbidv 2744 . . . . . . 7  |-  ( y  =  ( 1st `  w
)  ->  ( A. x  e.  [_  y  / 
k ]_ D [_ y  /  k ]_ [_ x  /  j ]_ E  e.  CC  <->  A. x  e.  [_  ( 1st `  w )  /  k ]_ D [_ ( 1st `  w
)  /  k ]_ [_ x  /  j ]_ E  e.  CC )
)
82 simpl 109 . . . . . . . . . 10  |-  ( (
ph  /\  ( y  e.  C  /\  x  e.  [_ y  /  k ]_ D ) )  ->  ph )
8333, 36opeliunxp2f 6384 . . . . . . . . . . . . . . 15  |-  ( <.
y ,  x >.  e. 
U_ k  e.  C  ( { k }  X.  D )  <->  ( y  e.  C  /\  x  e.  [_ y  /  k ]_ D ) )
8417, 83sylbbr 136 . . . . . . . . . . . . . 14  |-  ( ( y  e.  C  /\  x  e.  [_ y  / 
k ]_ D )  ->  <. x ,  y >.  e.  `' U_ k  e.  C  ( { k }  X.  D ) )
8584adantl 277 . . . . . . . . . . . . 13  |-  ( (
ph  /\  ( y  e.  C  /\  x  e.  [_ y  /  k ]_ D ) )  ->  <. x ,  y >.  e.  `' U_ k  e.  C  ( { k }  X.  D ) )
8622adantr 276 . . . . . . . . . . . . 13  |-  ( (
ph  /\  ( y  e.  C  /\  x  e.  [_ y  /  k ]_ D ) )  ->  U_ j  e.  A  ( { j }  X.  B )  =  `' U_ k  e.  C  ( { k }  X.  D ) )
8785, 86eleqtrrd 2309 . . . . . . . . . . . 12  |-  ( (
ph  /\  ( y  e.  C  /\  x  e.  [_ y  /  k ]_ D ) )  ->  <. x ,  y >.  e.  U_ j  e.  A  ( { j }  X.  B ) )
88 eliun 3969 . . . . . . . . . . . 12  |-  ( <.
x ,  y >.  e.  U_ j  e.  A  ( { j }  X.  B )  <->  E. j  e.  A  <. x ,  y >.  e.  ( { j }  X.  B ) )
8987, 88sylib 122 . . . . . . . . . . 11  |-  ( (
ph  /\  ( y  e.  C  /\  x  e.  [_ y  /  k ]_ D ) )  ->  E. j  e.  A  <. x ,  y >.  e.  ( { j }  X.  B ) )
90 simpr 110 . . . . . . . . . . . . . . . 16  |-  ( ( j  e.  A  /\  <.
x ,  y >.  e.  ( { j }  X.  B ) )  ->  <. x ,  y
>.  e.  ( { j }  X.  B ) )
91 opelxp 4749 . . . . . . . . . . . . . . . 16  |-  ( <.
x ,  y >.  e.  ( { j }  X.  B )  <->  ( x  e.  { j }  /\  y  e.  B )
)
9290, 91sylib 122 . . . . . . . . . . . . . . 15  |-  ( ( j  e.  A  /\  <.
x ,  y >.  e.  ( { j }  X.  B ) )  ->  ( x  e. 
{ j }  /\  y  e.  B )
)
9392simpld 112 . . . . . . . . . . . . . 14  |-  ( ( j  e.  A  /\  <.
x ,  y >.  e.  ( { j }  X.  B ) )  ->  x  e.  {
j } )
94 elsni 3684 . . . . . . . . . . . . . 14  |-  ( x  e.  { j }  ->  x  =  j )
9593, 94syl 14 . . . . . . . . . . . . 13  |-  ( ( j  e.  A  /\  <.
x ,  y >.  e.  ( { j }  X.  B ) )  ->  x  =  j )
96 simpl 109 . . . . . . . . . . . . 13  |-  ( ( j  e.  A  /\  <.
x ,  y >.  e.  ( { j }  X.  B ) )  ->  j  e.  A
)
9795, 96eqeltrd 2306 . . . . . . . . . . . 12  |-  ( ( j  e.  A  /\  <.
x ,  y >.  e.  ( { j }  X.  B ) )  ->  x  e.  A
)
9897rexlimiva 2643 . . . . . . . . . . 11  |-  ( E. j  e.  A  <. x ,  y >.  e.  ( { j }  X.  B )  ->  x  e.  A )
9989, 98syl 14 . . . . . . . . . 10  |-  ( (
ph  /\  ( y  e.  C  /\  x  e.  [_ y  /  k ]_ D ) )  ->  x  e.  A )
10025nfcri 2366 . . . . . . . . . . . 12  |-  F/ j  y  e.  [_ x  /  j ]_ B
10194equcomd 1753 . . . . . . . . . . . . . . . . 17  |-  ( x  e.  { j }  ->  j  =  x )
102101, 28syl 14 . . . . . . . . . . . . . . . 16  |-  ( x  e.  { j }  ->  B  =  [_ x  /  j ]_ B
)
103102eleq2d 2299 . . . . . . . . . . . . . . 15  |-  ( x  e.  { j }  ->  ( y  e.  B  <->  y  e.  [_ x  /  j ]_ B
) )
104103biimpa 296 . . . . . . . . . . . . . 14  |-  ( ( x  e.  { j }  /\  y  e.  B )  ->  y  e.  [_ x  /  j ]_ B )
10591, 104sylbi 121 . . . . . . . . . . . . 13  |-  ( <.
x ,  y >.  e.  ( { j }  X.  B )  -> 
y  e.  [_ x  /  j ]_ B
)
106105a1i 9 . . . . . . . . . . . 12  |-  ( j  e.  A  ->  ( <. x ,  y >.  e.  ( { j }  X.  B )  -> 
y  e.  [_ x  /  j ]_ B
) )
107100, 106rexlimi 2641 . . . . . . . . . . 11  |-  ( E. j  e.  A  <. x ,  y >.  e.  ( { j }  X.  B )  ->  y  e.  [_ x  /  j ]_ B )
10889, 107syl 14 . . . . . . . . . 10  |-  ( (
ph  /\  ( y  e.  C  /\  x  e.  [_ y  /  k ]_ D ) )  -> 
y  e.  [_ x  /  j ]_ B
)
109 fprodcom2.5 . . . . . . . . . . . . . 14  |-  ( (
ph  /\  ( j  e.  A  /\  k  e.  B ) )  ->  E  e.  CC )
110109ralrimivva 2612 . . . . . . . . . . . . 13  |-  ( ph  ->  A. j  e.  A  A. k  e.  B  E  e.  CC )
111 nfcsb1v 3157 . . . . . . . . . . . . . . . 16  |-  F/_ j [_ x  /  j ]_ E
112111nfel1 2383 . . . . . . . . . . . . . . 15  |-  F/ j
[_ x  /  j ]_ E  e.  CC
11325, 112nfralw 2567 . . . . . . . . . . . . . 14  |-  F/ j A. k  e.  [_  x  /  j ]_ B [_ x  /  j ]_ E  e.  CC
114 csbeq1a 3133 . . . . . . . . . . . . . . . 16  |-  ( j  =  x  ->  E  =  [_ x  /  j ]_ E )
115114eleq1d 2298 . . . . . . . . . . . . . . 15  |-  ( j  =  x  ->  ( E  e.  CC  <->  [_ x  / 
j ]_ E  e.  CC ) )
11628, 115raleqbidv 2744 . . . . . . . . . . . . . 14  |-  ( j  =  x  ->  ( A. k  e.  B  E  e.  CC  <->  A. k  e.  [_  x  /  j ]_ B [_ x  / 
j ]_ E  e.  CC ) )
117113, 116rspc 2901 . . . . . . . . . . . . 13  |-  ( x  e.  A  ->  ( A. j  e.  A  A. k  e.  B  E  e.  CC  ->  A. k  e.  [_  x  /  j ]_ B [_ x  /  j ]_ E  e.  CC ) )
118110, 117mpan9 281 . . . . . . . . . . . 12  |-  ( (
ph  /\  x  e.  A )  ->  A. k  e.  [_  x  /  j ]_ B [_ x  / 
j ]_ E  e.  CC )
119 nfcsb1v 3157 . . . . . . . . . . . . . 14  |-  F/_ k [_ y  /  k ]_ [_ x  /  j ]_ E
120119nfel1 2383 . . . . . . . . . . . . 13  |-  F/ k
[_ y  /  k ]_ [_ x  /  j ]_ E  e.  CC
121 csbeq1a 3133 . . . . . . . . . . . . . 14  |-  ( k  =  y  ->  [_ x  /  j ]_ E  =  [_ y  /  k ]_ [_ x  /  j ]_ E )
122121eleq1d 2298 . . . . . . . . . . . . 13  |-  ( k  =  y  ->  ( [_ x  /  j ]_ E  e.  CC  <->  [_ y  /  k ]_ [_ x  /  j ]_ E  e.  CC )
)
123120, 122rspc 2901 . . . . . . . . . . . 12  |-  ( y  e.  [_ x  / 
j ]_ B  ->  ( A. k  e.  [_  x  /  j ]_ B [_ x  /  j ]_ E  e.  CC  ->  [_ y  /  k ]_ [_ x  /  j ]_ E  e.  CC ) )
124118, 123syl5com 29 . . . . . . . . . . 11  |-  ( (
ph  /\  x  e.  A )  ->  (
y  e.  [_ x  /  j ]_ B  ->  [_ y  /  k ]_ [_ x  /  j ]_ E  e.  CC ) )
125124impr 379 . . . . . . . . . 10  |-  ( (
ph  /\  ( x  e.  A  /\  y  e.  [_ x  /  j ]_ B ) )  ->  [_ y  /  k ]_ [_ x  /  j ]_ E  e.  CC )
12682, 99, 108, 125syl12anc 1269 . . . . . . . . 9  |-  ( (
ph  /\  ( y  e.  C  /\  x  e.  [_ y  /  k ]_ D ) )  ->  [_ y  /  k ]_ [_ x  /  j ]_ E  e.  CC )
127126ralrimivva 2612 . . . . . . . 8  |-  ( ph  ->  A. y  e.  C  A. x  e.  [_  y  /  k ]_ D [_ y  /  k ]_ [_ x  /  j ]_ E  e.  CC )
128127adantr 276 . . . . . . 7  |-  ( (
ph  /\  w  e.  U_ y  e.  C  ( { y }  X.  [_ y  /  k ]_ D ) )  ->  A. y  e.  C  A. x  e.  [_  y  /  k ]_ D [_ y  /  k ]_ [_ x  /  j ]_ E  e.  CC )
129 simpr 110 . . . . . . . . 9  |-  ( (
ph  /\  w  e.  U_ y  e.  C  ( { y }  X.  [_ y  /  k ]_ D ) )  ->  w  e.  U_ y  e.  C  ( { y }  X.  [_ y  /  k ]_ D
) )
130 eliun 3969 . . . . . . . . 9  |-  ( w  e.  U_ y  e.  C  ( { y }  X.  [_ y  /  k ]_ D
)  <->  E. y  e.  C  w  e.  ( {
y }  X.  [_ y  /  k ]_ D
) )
131129, 130sylib 122 . . . . . . . 8  |-  ( (
ph  /\  w  e.  U_ y  e.  C  ( { y }  X.  [_ y  /  k ]_ D ) )  ->  E. y  e.  C  w  e.  ( {
y }  X.  [_ y  /  k ]_ D
) )
132 xp1st 6311 . . . . . . . . . . . 12  |-  ( w  e.  ( { y }  X.  [_ y  /  k ]_ D
)  ->  ( 1st `  w )  e.  {
y } )
133132adantl 277 . . . . . . . . . . 11  |-  ( ( y  e.  C  /\  w  e.  ( {
y }  X.  [_ y  /  k ]_ D
) )  ->  ( 1st `  w )  e. 
{ y } )
134 elsni 3684 . . . . . . . . . . 11  |-  ( ( 1st `  w )  e.  { y }  ->  ( 1st `  w
)  =  y )
135133, 134syl 14 . . . . . . . . . 10  |-  ( ( y  e.  C  /\  w  e.  ( {
y }  X.  [_ y  /  k ]_ D
) )  ->  ( 1st `  w )  =  y )
136 simpl 109 . . . . . . . . . 10  |-  ( ( y  e.  C  /\  w  e.  ( {
y }  X.  [_ y  /  k ]_ D
) )  ->  y  e.  C )
137135, 136eqeltrd 2306 . . . . . . . . 9  |-  ( ( y  e.  C  /\  w  e.  ( {
y }  X.  [_ y  /  k ]_ D
) )  ->  ( 1st `  w )  e.  C )
138137rexlimiva 2643 . . . . . . . 8  |-  ( E. y  e.  C  w  e.  ( { y }  X.  [_ y  /  k ]_ D
)  ->  ( 1st `  w )  e.  C
)
139131, 138syl 14 . . . . . . 7  |-  ( (
ph  /\  w  e.  U_ y  e.  C  ( { y }  X.  [_ y  /  k ]_ D ) )  -> 
( 1st `  w
)  e.  C )
14081, 128, 139rspcdva 2912 . . . . . 6  |-  ( (
ph  /\  w  e.  U_ y  e.  C  ( { y }  X.  [_ y  /  k ]_ D ) )  ->  A. x  e.  [_  ( 1st `  w )  / 
k ]_ D [_ ( 1st `  w )  / 
k ]_ [_ x  / 
j ]_ E  e.  CC )
141 xp2nd 6312 . . . . . . . . . 10  |-  ( w  e.  ( { y }  X.  [_ y  /  k ]_ D
)  ->  ( 2nd `  w )  e.  [_ y  /  k ]_ D
)
142141adantl 277 . . . . . . . . 9  |-  ( ( y  e.  C  /\  w  e.  ( {
y }  X.  [_ y  /  k ]_ D
) )  ->  ( 2nd `  w )  e. 
[_ y  /  k ]_ D )
143135csbeq1d 3131 . . . . . . . . 9  |-  ( ( y  e.  C  /\  w  e.  ( {
y }  X.  [_ y  /  k ]_ D
) )  ->  [_ ( 1st `  w )  / 
k ]_ D  =  [_ y  /  k ]_ D
)
144142, 143eleqtrrd 2309 . . . . . . . 8  |-  ( ( y  e.  C  /\  w  e.  ( {
y }  X.  [_ y  /  k ]_ D
) )  ->  ( 2nd `  w )  e. 
[_ ( 1st `  w
)  /  k ]_ D )
145144rexlimiva 2643 . . . . . . 7  |-  ( E. y  e.  C  w  e.  ( { y }  X.  [_ y  /  k ]_ D
)  ->  ( 2nd `  w )  e.  [_ ( 1st `  w )  /  k ]_ D
)
146131, 145syl 14 . . . . . 6  |-  ( (
ph  /\  w  e.  U_ y  e.  C  ( { y }  X.  [_ y  /  k ]_ D ) )  -> 
( 2nd `  w
)  e.  [_ ( 1st `  w )  / 
k ]_ D )
14777, 140, 146rspcdva 2912 . . . . 5  |-  ( (
ph  /\  w  e.  U_ y  e.  C  ( { y }  X.  [_ y  /  k ]_ D ) )  ->  [_ ( 1st `  w
)  /  k ]_ [_ ( 2nd `  w
)  /  j ]_ E  e.  CC )
14847, 53, 69, 74, 147fprodcnv 12136 . . . 4  |-  ( ph  ->  prod_ w  e.  U_  y  e.  C  ( { y }  X.  [_ y  /  k ]_ D ) [_ ( 1st `  w )  / 
k ]_ [_ ( 2nd `  w )  /  j ]_ E  =  prod_ z  e.  `'  U_ y  e.  C  ( {
y }  X.  [_ y  /  k ]_ D
) [_ ( 2nd `  z
)  /  k ]_ [_ ( 1st `  z
)  /  j ]_ E )
14941, 148eqtr4d 2265 . . 3  |-  ( ph  ->  prod_ z  e.  U_  x  e.  A  ( { x }  X.  [_ x  /  j ]_ B ) [_ ( 2nd `  z )  / 
k ]_ [_ ( 1st `  z )  /  j ]_ E  =  prod_ w  e.  U_  y  e.  C  ( { y }  X.  [_ y  /  k ]_ D
) [_ ( 1st `  w
)  /  k ]_ [_ ( 2nd `  w
)  /  j ]_ E )
150 fprodcom2.1 . . . 4  |-  ( ph  ->  A  e.  Fin )
151 fprodcom2.3 . . . . . 6  |-  ( (
ph  /\  j  e.  A )  ->  B  e.  Fin )
152151ralrimiva 2603 . . . . 5  |-  ( ph  ->  A. j  e.  A  B  e.  Fin )
15325nfel1 2383 . . . . . 6  |-  F/ j
[_ x  /  j ]_ B  e.  Fin
15428eleq1d 2298 . . . . . 6  |-  ( j  =  x  ->  ( B  e.  Fin  <->  [_ x  / 
j ]_ B  e.  Fin ) )
155153, 154rspc 2901 . . . . 5  |-  ( x  e.  A  ->  ( A. j  e.  A  B  e.  Fin  ->  [_ x  /  j ]_ B  e.  Fin ) )
156152, 155mpan9 281 . . . 4  |-  ( (
ph  /\  x  e.  A )  ->  [_ x  /  j ]_ B  e.  Fin )
15753, 150, 156, 125fprod2d 12134 . . 3  |-  ( ph  ->  prod_ x  e.  A  prod_ y  e.  [_  x  /  j ]_ B [_ y  /  k ]_ [_ x  /  j ]_ E  =  prod_ z  e.  U_  x  e.  A  ( { x }  X.  [_ x  / 
j ]_ B ) [_ ( 2nd `  z )  /  k ]_ [_ ( 1st `  z )  / 
j ]_ E )
15847, 54, 62, 126fprod2d 12134 . . 3  |-  ( ph  ->  prod_ y  e.  C  prod_ x  e.  [_  y  /  k ]_ D [_ y  /  k ]_ [_ x  /  j ]_ E  =  prod_ w  e.  U_  y  e.  C  ( { y }  X.  [_ y  /  k ]_ D
) [_ ( 1st `  w
)  /  k ]_ [_ ( 2nd `  w
)  /  j ]_ E )
159149, 157, 1583eqtr4d 2272 . 2  |-  ( ph  ->  prod_ x  e.  A  prod_ y  e.  [_  x  /  j ]_ B [_ y  /  k ]_ [_ x  /  j ]_ E  =  prod_ y  e.  C  prod_ x  e.  [_  y  /  k ]_ D [_ y  / 
k ]_ [_ x  / 
j ]_ E )
160 nfcv 2372 . . 3  |-  F/_ x prod_ k  e.  B  E
161 nfcv 2372 . . . . 5  |-  F/_ j
y
162161, 111nfcsbw 3161 . . . 4  |-  F/_ j [_ y  /  k ]_ [_ x  /  j ]_ E
16325, 162nfcprod 12066 . . 3  |-  F/_ j prod_ y  e.  [_  x  /  j ]_ B [_ y  /  k ]_ [_ x  /  j ]_ E
164 nfcv 2372 . . . . 5  |-  F/_ y E
165 nfcsb1v 3157 . . . . 5  |-  F/_ k [_ y  /  k ]_ E
166 csbeq1a 3133 . . . . 5  |-  ( k  =  y  ->  E  =  [_ y  /  k ]_ E )
167164, 165, 166cbvprodi 12071 . . . 4  |-  prod_ k  e.  B  E  =  prod_ y  e.  B  [_ y  /  k ]_ E
168114csbeq2dv 3150 . . . . . 6  |-  ( j  =  x  ->  [_ y  /  k ]_ E  =  [_ y  /  k ]_ [_ x  /  j ]_ E )
169168adantr 276 . . . . 5  |-  ( ( j  =  x  /\  y  e.  B )  ->  [_ y  /  k ]_ E  =  [_ y  /  k ]_ [_ x  /  j ]_ E
)
17028, 169prodeq12dv 12080 . . . 4  |-  ( j  =  x  ->  prod_ y  e.  B  [_ y  /  k ]_ E  =  prod_ y  e.  [_  x  /  j ]_ B [_ y  /  k ]_ [_ x  /  j ]_ E )
171167, 170eqtrid 2274 . . 3  |-  ( j  =  x  ->  prod_ k  e.  B  E  = 
prod_ y  e.  [_  x  /  j ]_ B [_ y  /  k ]_ [_ x  /  j ]_ E )
172160, 163, 171cbvprodi 12071 . 2  |-  prod_ j  e.  A  prod_ k  e.  B  E  =  prod_ x  e.  A  prod_ y  e.  [_  x  /  j ]_ B [_ y  / 
k ]_ [_ x  / 
j ]_ E
173 nfcv 2372 . . 3  |-  F/_ y prod_ j  e.  D  E
17433, 119nfcprod 12066 . . 3  |-  F/_ k prod_ x  e.  [_  y  /  k ]_ D [_ y  /  k ]_ [_ x  /  j ]_ E
175 nfcv 2372 . . . . 5  |-  F/_ x E
176175, 111, 114cbvprodi 12071 . . . 4  |-  prod_ j  e.  D  E  =  prod_ x  e.  D  [_ x  /  j ]_ E
177121adantr 276 . . . . 5  |-  ( ( k  =  y  /\  x  e.  D )  ->  [_ x  /  j ]_ E  =  [_ y  /  k ]_ [_ x  /  j ]_ E
)
17836, 177prodeq12dv 12080 . . . 4  |-  ( k  =  y  ->  prod_ x  e.  D  [_ x  /  j ]_ E  =  prod_ x  e.  [_  y  /  k ]_ D [_ y  /  k ]_ [_ x  /  j ]_ E )
179176, 178eqtrid 2274 . . 3  |-  ( k  =  y  ->  prod_ j  e.  D  E  = 
prod_ x  e.  [_  y  /  k ]_ D [_ y  /  k ]_ [_ x  /  j ]_ E )
180173, 174, 179cbvprodi 12071 . 2  |-  prod_ k  e.  C  prod_ j  e.  D  E  =  prod_ y  e.  C  prod_ x  e.  [_  y  /  k ]_ D [_ y  / 
k ]_ [_ x  / 
j ]_ E
181159, 172, 1803eqtr4g 2287 1  |-  ( ph  ->  prod_ j  e.  A  prod_ k  e.  B  E  =  prod_ k  e.  C  prod_ j  e.  D  E
)
Colors of variables: wff set class
Syntax hints:    -> wi 4    /\ wa 104    <-> wb 105    = wceq 1395   E.wex 1538    e. wcel 2200   A.wral 2508   E.wrex 2509   _Vcvv 2799   [_csb 3124   {csn 3666   <.cop 3669   U_ciun 3965  Disj wdisj 4059    X. cxp 4717   `'ccnv 4718   Rel wrel 4724   ` cfv 5318   1stc1st 6284   2ndc2nd 6285   Fincfn 6887   CCcc 7997   prod_cprod 12061
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-in1 617  ax-in2 618  ax-io 714  ax-5 1493  ax-7 1494  ax-gen 1495  ax-ie1 1539  ax-ie2 1540  ax-8 1550  ax-10 1551  ax-11 1552  ax-i12 1553  ax-bndl 1555  ax-4 1556  ax-17 1572  ax-i9 1576  ax-ial 1580  ax-i5r 1581  ax-13 2202  ax-14 2203  ax-ext 2211  ax-coll 4199  ax-sep 4202  ax-nul 4210  ax-pow 4258  ax-pr 4293  ax-un 4524  ax-setind 4629  ax-iinf 4680  ax-cnex 8090  ax-resscn 8091  ax-1cn 8092  ax-1re 8093  ax-icn 8094  ax-addcl 8095  ax-addrcl 8096  ax-mulcl 8097  ax-mulrcl 8098  ax-addcom 8099  ax-mulcom 8100  ax-addass 8101  ax-mulass 8102  ax-distr 8103  ax-i2m1 8104  ax-0lt1 8105  ax-1rid 8106  ax-0id 8107  ax-rnegex 8108  ax-precex 8109  ax-cnre 8110  ax-pre-ltirr 8111  ax-pre-ltwlin 8112  ax-pre-lttrn 8113  ax-pre-apti 8114  ax-pre-ltadd 8115  ax-pre-mulgt0 8116  ax-pre-mulext 8117  ax-arch 8118  ax-caucvg 8119
This theorem depends on definitions:  df-bi 117  df-dc 840  df-3or 1003  df-3an 1004  df-tru 1398  df-fal 1401  df-nf 1507  df-sb 1809  df-eu 2080  df-mo 2081  df-clab 2216  df-cleq 2222  df-clel 2225  df-nfc 2361  df-ne 2401  df-nel 2496  df-ral 2513  df-rex 2514  df-reu 2515  df-rmo 2516  df-rab 2517  df-v 2801  df-sbc 3029  df-csb 3125  df-dif 3199  df-un 3201  df-in 3203  df-ss 3210  df-nul 3492  df-if 3603  df-pw 3651  df-sn 3672  df-pr 3673  df-op 3675  df-uni 3889  df-int 3924  df-iun 3967  df-disj 4060  df-br 4084  df-opab 4146  df-mpt 4147  df-tr 4183  df-id 4384  df-po 4387  df-iso 4388  df-iord 4457  df-on 4459  df-ilim 4460  df-suc 4462  df-iom 4683  df-xp 4725  df-rel 4726  df-cnv 4727  df-co 4728  df-dm 4729  df-rn 4730  df-res 4731  df-ima 4732  df-iota 5278  df-fun 5320  df-fn 5321  df-f 5322  df-f1 5323  df-fo 5324  df-f1o 5325  df-fv 5326  df-isom 5327  df-riota 5954  df-ov 6004  df-oprab 6005  df-mpo 6006  df-1st 6286  df-2nd 6287  df-recs 6451  df-irdg 6516  df-frec 6537  df-1o 6562  df-oadd 6566  df-er 6680  df-en 6888  df-dom 6889  df-fin 6890  df-pnf 8183  df-mnf 8184  df-xr 8185  df-ltxr 8186  df-le 8187  df-sub 8319  df-neg 8320  df-reap 8722  df-ap 8729  df-div 8820  df-inn 9111  df-2 9169  df-3 9170  df-4 9171  df-n0 9370  df-z 9447  df-uz 9723  df-q 9815  df-rp 9850  df-fz 10205  df-fzo 10339  df-seqfrec 10670  df-exp 10761  df-ihash 10998  df-cj 11353  df-re 11354  df-im 11355  df-rsqrt 11509  df-abs 11510  df-clim 11790  df-proddc 12062
This theorem is referenced by:  fprodcom  12138  fprod0diagfz  12139
  Copyright terms: Public domain W3C validator