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

Theorem fprodcom2fi 11618
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 4732 . . . . . . . . 9  |-  Rel  ( { j }  X.  B )
21rgenw 2532 . . . . . . . 8  |-  A. j  e.  A  Rel  ( { j }  X.  B
)
3 reliun 4744 . . . . . . . 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 5002 . . . . . . 7  |-  Rel  `' U_ k  e.  C  ( { k }  X.  D )
6 ancom 266 . . . . . . . . . . . 12  |-  ( ( x  =  j  /\  y  =  k )  <->  ( y  =  k  /\  x  =  j )
)
7 vex 2740 . . . . . . . . . . . . 13  |-  x  e. 
_V
8 vex 2740 . . . . . . . . . . . . 13  |-  y  e. 
_V
97, 8opth 4234 . . . . . . . . . . . 12  |-  ( <.
x ,  y >.  =  <. j ,  k
>. 
<->  ( x  =  j  /\  y  =  k ) )
108, 7opth 4234 . . . . . . . . . . . 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 1868 . . . . . . . 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 4762 . . . . . . . 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 4805 . . . . . . . . 9  |-  ( <.
x ,  y >.  e.  `' U_ k  e.  C  ( { k }  X.  D )  <->  <. y ,  x >.  e.  U_ k  e.  C  ( {
k }  X.  D
) )
18 eliunxp 4762 . . . . . . . . 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 1664 . . . . . . . . 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 4719 . . . . . 6  |-  ( ph  ->  U_ j  e.  A  ( { j }  X.  B )  =  `' U_ k  e.  C  ( { k }  X.  D ) )
23 nfcv 2319 . . . . . . 7  |-  F/_ x
( { j }  X.  B )
24 nfcv 2319 . . . . . . . 8  |-  F/_ j { x }
25 nfcsb1v 3090 . . . . . . . 8  |-  F/_ j [_ x  /  j ]_ B
2624, 25nfxp 4650 . . . . . . 7  |-  F/_ j
( { x }  X.  [_ x  /  j ]_ B )
27 sneq 3602 . . . . . . . 8  |-  ( j  =  x  ->  { j }  =  { x } )
28 csbeq1a 3066 . . . . . . . 8  |-  ( j  =  x  ->  B  =  [_ x  /  j ]_ B )
2927, 28xpeq12d 4648 . . . . . . 7  |-  ( j  =  x  ->  ( { j }  X.  B )  =  ( { x }  X.  [_ x  /  j ]_ B ) )
3023, 26, 29cbviun 3921 . . . . . 6  |-  U_ j  e.  A  ( {
j }  X.  B
)  =  U_ x  e.  A  ( {
x }  X.  [_ x  /  j ]_ B
)
31 nfcv 2319 . . . . . . . 8  |-  F/_ y
( { k }  X.  D )
32 nfcv 2319 . . . . . . . . 9  |-  F/_ k { y }
33 nfcsb1v 3090 . . . . . . . . 9  |-  F/_ k [_ y  /  k ]_ D
3432, 33nfxp 4650 . . . . . . . 8  |-  F/_ k
( { y }  X.  [_ y  / 
k ]_ D )
35 sneq 3602 . . . . . . . . 9  |-  ( k  =  y  ->  { k }  =  { y } )
36 csbeq1a 3066 . . . . . . . . 9  |-  ( k  =  y  ->  D  =  [_ y  /  k ]_ D )
3735, 36xpeq12d 4648 . . . . . . . 8  |-  ( k  =  y  ->  ( { k }  X.  D )  =  ( { y }  X.  [_ y  /  k ]_ D ) )
3831, 34, 37cbviun 3921 . . . . . . 7  |-  U_ k  e.  C  ( {
k }  X.  D
)  =  U_ y  e.  C  ( {
y }  X.  [_ y  /  k ]_ D
)
3938cnveqi 4798 . . . . . 6  |-  `' U_ k  e.  C  ( { k }  X.  D )  =  `' U_ y  e.  C  ( { y }  X.  [_ y  /  k ]_ D )
4022, 30, 393eqtr3g 2233 . . . . 5  |-  ( ph  ->  U_ x  e.  A  ( { x }  X.  [_ x  /  j ]_ B )  =  `' U_ y  e.  C  ( { y }  X.  [_ y  /  k ]_ D ) )
4140prodeq1d 11556 . . . 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 6143 . . . . . . 7  |-  ( w  =  <. y ,  x >.  ->  ( 1st `  w
)  =  y )
4342csbeq1d 3064 . . . . . 6  |-  ( w  =  <. y ,  x >.  ->  [_ ( 1st `  w
)  /  k ]_ [_ ( 2nd `  w
)  /  j ]_ E  =  [_ y  / 
k ]_ [_ ( 2nd `  w )  /  j ]_ E )
448, 7op2ndd 6144 . . . . . . . 8  |-  ( w  =  <. y ,  x >.  ->  ( 2nd `  w
)  =  x )
4544csbeq1d 3064 . . . . . . 7  |-  ( w  =  <. y ,  x >.  ->  [_ ( 2nd `  w
)  /  j ]_ E  =  [_ x  / 
j ]_ E )
4645csbeq2dv 3083 . . . . . 6  |-  ( w  =  <. y ,  x >.  ->  [_ y  /  k ]_ [_ ( 2nd `  w
)  /  j ]_ E  =  [_ y  / 
k ]_ [_ x  / 
j ]_ E )
4743, 46eqtrd 2210 . . . . 5  |-  ( w  =  <. y ,  x >.  ->  [_ ( 1st `  w
)  /  k ]_ [_ ( 2nd `  w
)  /  j ]_ E  =  [_ y  / 
k ]_ [_ x  / 
j ]_ E )
487, 8op2ndd 6144 . . . . . . 7  |-  ( z  =  <. x ,  y
>.  ->  ( 2nd `  z
)  =  y )
4948csbeq1d 3064 . . . . . 6  |-  ( z  =  <. x ,  y
>.  ->  [_ ( 2nd `  z
)  /  k ]_ [_ ( 1st `  z
)  /  j ]_ E  =  [_ y  / 
k ]_ [_ ( 1st `  z )  /  j ]_ E )
507, 8op1std 6143 . . . . . . . 8  |-  ( z  =  <. x ,  y
>.  ->  ( 1st `  z
)  =  x )
5150csbeq1d 3064 . . . . . . 7  |-  ( z  =  <. x ,  y
>.  ->  [_ ( 1st `  z
)  /  j ]_ E  =  [_ x  / 
j ]_ E )
5251csbeq2dv 3083 . . . . . 6  |-  ( z  =  <. x ,  y
>.  ->  [_ y  /  k ]_ [_ ( 1st `  z
)  /  j ]_ E  =  [_ y  / 
k ]_ [_ x  / 
j ]_ E )
5349, 52eqtrd 2210 . . . . 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 6808 . . . . . . . . 9  |-  ( y  e.  _V  ->  { y }  e.  Fin )
5655elv 2741 . . . . . . . 8  |-  { y }  e.  Fin
57 fprodcom2fi.d . . . . . . . . . 10  |-  ( (
ph  /\  k  e.  C )  ->  D  e.  Fin )
5857ralrimiva 2550 . . . . . . . . 9  |-  ( ph  ->  A. k  e.  C  D  e.  Fin )
5933nfel1 2330 . . . . . . . . . 10  |-  F/ k
[_ y  /  k ]_ D  e.  Fin
6036eleq1d 2246 . . . . . . . . . 10  |-  ( k  =  y  ->  ( D  e.  Fin  <->  [_ y  / 
k ]_ D  e.  Fin ) )
6159, 60rspc 2835 . . . . . . . . 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 6923 . . . . . . . 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 2550 . . . . . 6  |-  ( ph  ->  A. y  e.  C  ( { y }  X.  [_ y  /  k ]_ D )  e.  Fin )
66 disjsnxp 6232 . . . . . . 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 6939 . . . . . 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 1238 . . . . 5  |-  ( ph  ->  U_ y  e.  C  ( { y }  X.  [_ y  /  k ]_ D )  e.  Fin )
70 reliun 4744 . . . . . . 7  |-  ( Rel  U_ y  e.  C  ( { y }  X.  [_ y  /  k ]_ D )  <->  A. y  e.  C  Rel  ( { y }  X.  [_ y  /  k ]_ D
) )
71 relxp 4732 . . . . . . . 8  |-  Rel  ( { y }  X.  [_ y  /  k ]_ D )
7271a1i 9 . . . . . . 7  |-  ( y  e.  C  ->  Rel  ( { y }  X.  [_ y  /  k ]_ D ) )
7370, 72mprgbir 2535 . . . . . 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 3060 . . . . . . . 8  |-  ( x  =  ( 2nd `  w
)  ->  [_ x  / 
j ]_ E  =  [_ ( 2nd `  w )  /  j ]_ E
)
7675csbeq2dv 3083 . . . . . . 7  |-  ( x  =  ( 2nd `  w
)  ->  [_ ( 1st `  w )  /  k ]_ [_ x  /  j ]_ E  =  [_ ( 1st `  w )  / 
k ]_ [_ ( 2nd `  w )  /  j ]_ E )
7776eleq1d 2246 . . . . . 6  |-  ( x  =  ( 2nd `  w
)  ->  ( [_ ( 1st `  w )  /  k ]_ [_ x  /  j ]_ E  e.  CC  <->  [_ ( 1st `  w
)  /  k ]_ [_ ( 2nd `  w
)  /  j ]_ E  e.  CC )
)
78 csbeq1 3060 . . . . . . . 8  |-  ( y  =  ( 1st `  w
)  ->  [_ y  / 
k ]_ D  =  [_ ( 1st `  w )  /  k ]_ D
)
79 csbeq1 3060 . . . . . . . . 9  |-  ( y  =  ( 1st `  w
)  ->  [_ y  / 
k ]_ [_ x  / 
j ]_ E  =  [_ ( 1st `  w )  /  k ]_ [_ x  /  j ]_ E
)
8079eleq1d 2246 . . . . . . . 8  |-  ( y  =  ( 1st `  w
)  ->  ( [_ y  /  k ]_ [_ x  /  j ]_ E  e.  CC  <->  [_ ( 1st `  w
)  /  k ]_ [_ x  /  j ]_ E  e.  CC )
)
8178, 80raleqbidv 2684 . . . . . . 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 6233 . . . . . . . . . . . . . . 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 2257 . . . . . . . . . . . 12  |-  ( (
ph  /\  ( y  e.  C  /\  x  e.  [_ y  /  k ]_ D ) )  ->  <. x ,  y >.  e.  U_ j  e.  A  ( { j }  X.  B ) )
88 eliun 3888 . . . . . . . . . . . 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 4653 . . . . . . . . . . . . . . . 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 3609 . . . . . . . . . . . . . 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 2254 . . . . . . . . . . . 12  |-  ( ( j  e.  A  /\  <.
x ,  y >.  e.  ( { j }  X.  B ) )  ->  x  e.  A
)
9897rexlimiva 2589 . . . . . . . . . . 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 2313 . . . . . . . . . . . 12  |-  F/ j  y  e.  [_ x  /  j ]_ B
10194equcomd 1707 . . . . . . . . . . . . . . . . 17  |-  ( x  e.  { j }  ->  j  =  x )
102101, 28syl 14 . . . . . . . . . . . . . . . 16  |-  ( x  e.  { j }  ->  B  =  [_ x  /  j ]_ B
)
103102eleq2d 2247 . . . . . . . . . . . . . . 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 2587 . . . . . . . . . . 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 2559 . . . . . . . . . . . . 13  |-  ( ph  ->  A. j  e.  A  A. k  e.  B  E  e.  CC )
111 nfcsb1v 3090 . . . . . . . . . . . . . . . 16  |-  F/_ j [_ x  /  j ]_ E
112111nfel1 2330 . . . . . . . . . . . . . . 15  |-  F/ j
[_ x  /  j ]_ E  e.  CC
11325, 112nfralw 2514 . . . . . . . . . . . . . 14  |-  F/ j A. k  e.  [_  x  /  j ]_ B [_ x  /  j ]_ E  e.  CC
114 csbeq1a 3066 . . . . . . . . . . . . . . . 16  |-  ( j  =  x  ->  E  =  [_ x  /  j ]_ E )
115114eleq1d 2246 . . . . . . . . . . . . . . 15  |-  ( j  =  x  ->  ( E  e.  CC  <->  [_ x  / 
j ]_ E  e.  CC ) )
11628, 115raleqbidv 2684 . . . . . . . . . . . . . 14  |-  ( j  =  x  ->  ( A. k  e.  B  E  e.  CC  <->  A. k  e.  [_  x  /  j ]_ B [_ x  / 
j ]_ E  e.  CC ) )
117113, 116rspc 2835 . . . . . . . . . . . . 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 3090 . . . . . . . . . . . . . 14  |-  F/_ k [_ y  /  k ]_ [_ x  /  j ]_ E
120119nfel1 2330 . . . . . . . . . . . . 13  |-  F/ k
[_ y  /  k ]_ [_ x  /  j ]_ E  e.  CC
121 csbeq1a 3066 . . . . . . . . . . . . . 14  |-  ( k  =  y  ->  [_ x  /  j ]_ E  =  [_ y  /  k ]_ [_ x  /  j ]_ E )
122121eleq1d 2246 . . . . . . . . . . . . 13  |-  ( k  =  y  ->  ( [_ x  /  j ]_ E  e.  CC  <->  [_ y  /  k ]_ [_ x  /  j ]_ E  e.  CC )
)
123120, 122rspc 2835 . . . . . . . . . . . 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 1236 . . . . . . . . 9  |-  ( (
ph  /\  ( y  e.  C  /\  x  e.  [_ y  /  k ]_ D ) )  ->  [_ y  /  k ]_ [_ x  /  j ]_ E  e.  CC )
127126ralrimivva 2559 . . . . . . . 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 3888 . . . . . . . . 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 6160 . . . . . . . . . . . 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 3609 . . . . . . . . . . 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 2254 . . . . . . . . 9  |-  ( ( y  e.  C  /\  w  e.  ( {
y }  X.  [_ y  /  k ]_ D
) )  ->  ( 1st `  w )  e.  C )
138137rexlimiva 2589 . . . . . . . 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 2846 . . . . . 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 6161 . . . . . . . . . 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 3064 . . . . . . . . 9  |-  ( ( y  e.  C  /\  w  e.  ( {
y }  X.  [_ y  /  k ]_ D
) )  ->  [_ ( 1st `  w )  / 
k ]_ D  =  [_ y  /  k ]_ D
)
144142, 143eleqtrrd 2257 . . . . . . . 8  |-  ( ( y  e.  C  /\  w  e.  ( {
y }  X.  [_ y  /  k ]_ D
) )  ->  ( 2nd `  w )  e. 
[_ ( 1st `  w
)  /  k ]_ D )
145144rexlimiva 2589 . . . . . . 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 2846 . . . . 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 11617 . . . 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 2213 . . 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 2550 . . . . 5  |-  ( ph  ->  A. j  e.  A  B  e.  Fin )
15325nfel1 2330 . . . . . 6  |-  F/ j
[_ x  /  j ]_ B  e.  Fin
15428eleq1d 2246 . . . . . 6  |-  ( j  =  x  ->  ( B  e.  Fin  <->  [_ x  / 
j ]_ B  e.  Fin ) )
155153, 154rspc 2835 . . . . 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 11615 . . 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 11615 . . 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 2220 . 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 2319 . . 3  |-  F/_ x prod_ k  e.  B  E
161 nfcv 2319 . . . . 5  |-  F/_ j
y
162161, 111nfcsbw 3093 . . . 4  |-  F/_ j [_ y  /  k ]_ [_ x  /  j ]_ E
16325, 162nfcprod 11547 . . 3  |-  F/_ j prod_ y  e.  [_  x  /  j ]_ B [_ y  /  k ]_ [_ x  /  j ]_ E
164 nfcv 2319 . . . . 5  |-  F/_ y E
165 nfcsb1v 3090 . . . . 5  |-  F/_ k [_ y  /  k ]_ E
166 csbeq1a 3066 . . . . 5  |-  ( k  =  y  ->  E  =  [_ y  /  k ]_ E )
167164, 165, 166cbvprodi 11552 . . . 4  |-  prod_ k  e.  B  E  =  prod_ y  e.  B  [_ y  /  k ]_ E
168114csbeq2dv 3083 . . . . . 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 11561 . . . 4  |-  ( j  =  x  ->  prod_ y  e.  B  [_ y  /  k ]_ E  =  prod_ y  e.  [_  x  /  j ]_ B [_ y  /  k ]_ [_ x  /  j ]_ E )
171167, 170eqtrid 2222 . . 3  |-  ( j  =  x  ->  prod_ k  e.  B  E  = 
prod_ y  e.  [_  x  /  j ]_ B [_ y  /  k ]_ [_ x  /  j ]_ E )
172160, 163, 171cbvprodi 11552 . 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 2319 . . 3  |-  F/_ y prod_ j  e.  D  E
17433, 119nfcprod 11547 . . 3  |-  F/_ k prod_ x  e.  [_  y  /  k ]_ D [_ y  /  k ]_ [_ x  /  j ]_ E
175 nfcv 2319 . . . . 5  |-  F/_ x E
176175, 111, 114cbvprodi 11552 . . . 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 11561 . . . 4  |-  ( k  =  y  ->  prod_ x  e.  D  [_ x  /  j ]_ E  =  prod_ x  e.  [_  y  /  k ]_ D [_ y  /  k ]_ [_ x  /  j ]_ E )
179176, 178eqtrid 2222 . . 3  |-  ( k  =  y  ->  prod_ j  e.  D  E  = 
prod_ x  e.  [_  y  /  k ]_ D [_ y  /  k ]_ [_ x  /  j ]_ E )
180173, 174, 179cbvprodi 11552 . 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 2235 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 1353   E.wex 1492    e. wcel 2148   A.wral 2455   E.wrex 2456   _Vcvv 2737   [_csb 3057   {csn 3591   <.cop 3594   U_ciun 3884  Disj wdisj 3977    X. cxp 4621   `'ccnv 4622   Rel wrel 4628   ` cfv 5212   1stc1st 6133   2ndc2nd 6134   Fincfn 6734   CCcc 7800   prod_cprod 11542
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 614  ax-in2 615  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-13 2150  ax-14 2151  ax-ext 2159  ax-coll 4115  ax-sep 4118  ax-nul 4126  ax-pow 4171  ax-pr 4206  ax-un 4430  ax-setind 4533  ax-iinf 4584  ax-cnex 7893  ax-resscn 7894  ax-1cn 7895  ax-1re 7896  ax-icn 7897  ax-addcl 7898  ax-addrcl 7899  ax-mulcl 7900  ax-mulrcl 7901  ax-addcom 7902  ax-mulcom 7903  ax-addass 7904  ax-mulass 7905  ax-distr 7906  ax-i2m1 7907  ax-0lt1 7908  ax-1rid 7909  ax-0id 7910  ax-rnegex 7911  ax-precex 7912  ax-cnre 7913  ax-pre-ltirr 7914  ax-pre-ltwlin 7915  ax-pre-lttrn 7916  ax-pre-apti 7917  ax-pre-ltadd 7918  ax-pre-mulgt0 7919  ax-pre-mulext 7920  ax-arch 7921  ax-caucvg 7922
This theorem depends on definitions:  df-bi 117  df-dc 835  df-3or 979  df-3an 980  df-tru 1356  df-fal 1359  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-ne 2348  df-nel 2443  df-ral 2460  df-rex 2461  df-reu 2462  df-rmo 2463  df-rab 2464  df-v 2739  df-sbc 2963  df-csb 3058  df-dif 3131  df-un 3133  df-in 3135  df-ss 3142  df-nul 3423  df-if 3535  df-pw 3576  df-sn 3597  df-pr 3598  df-op 3600  df-uni 3808  df-int 3843  df-iun 3886  df-disj 3978  df-br 4001  df-opab 4062  df-mpt 4063  df-tr 4099  df-id 4290  df-po 4293  df-iso 4294  df-iord 4363  df-on 4365  df-ilim 4366  df-suc 4368  df-iom 4587  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-f1 5217  df-fo 5218  df-f1o 5219  df-fv 5220  df-isom 5221  df-riota 5825  df-ov 5872  df-oprab 5873  df-mpo 5874  df-1st 6135  df-2nd 6136  df-recs 6300  df-irdg 6365  df-frec 6386  df-1o 6411  df-oadd 6415  df-er 6529  df-en 6735  df-dom 6736  df-fin 6737  df-pnf 7984  df-mnf 7985  df-xr 7986  df-ltxr 7987  df-le 7988  df-sub 8120  df-neg 8121  df-reap 8522  df-ap 8529  df-div 8619  df-inn 8909  df-2 8967  df-3 8968  df-4 8969  df-n0 9166  df-z 9243  df-uz 9518  df-q 9609  df-rp 9641  df-fz 9996  df-fzo 10129  df-seqfrec 10432  df-exp 10506  df-ihash 10740  df-cj 10835  df-re 10836  df-im 10837  df-rsqrt 10991  df-abs 10992  df-clim 11271  df-proddc 11543
This theorem is referenced by:  fprodcom  11619  fprod0diagfz  11620
  Copyright terms: Public domain W3C validator