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

Theorem fprodcom2fi 11516
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 4694 . . . . . . . . 9  |-  Rel  ( { j }  X.  B )
21rgenw 2512 . . . . . . . 8  |-  A. j  e.  A  Rel  ( { j }  X.  B
)
3 reliun 4706 . . . . . . . 8  |-  ( Rel  U_ j  e.  A  ( { j }  X.  B )  <->  A. j  e.  A  Rel  ( { j }  X.  B
) )
42, 3mpbir 145 . . . . . . 7  |-  Rel  U_ j  e.  A  ( {
j }  X.  B
)
5 relcnv 4963 . . . . . . 7  |-  Rel  `' U_ k  e.  C  ( { k }  X.  D )
6 ancom 264 . . . . . . . . . . . 12  |-  ( ( x  =  j  /\  y  =  k )  <->  ( y  =  k  /\  x  =  j )
)
7 vex 2715 . . . . . . . . . . . . 13  |-  x  e. 
_V
8 vex 2715 . . . . . . . . . . . . 13  |-  y  e. 
_V
97, 8opth 4197 . . . . . . . . . . . 12  |-  ( <.
x ,  y >.  =  <. j ,  k
>. 
<->  ( x  =  j  /\  y  =  k ) )
108, 7opth 4197 . . . . . . . . . . . 12  |-  ( <.
y ,  x >.  = 
<. k ,  j >.  <->  ( y  =  k  /\  x  =  j )
)
116, 9, 103bitr4i 211 . . . . . . . . . . 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 465 . . . . . . . . 9  |-  ( ph  ->  ( ( <. x ,  y >.  =  <. j ,  k >.  /\  (
j  e.  A  /\  k  e.  B )
)  <->  ( <. y ,  x >.  =  <. k ,  j >.  /\  (
k  e.  C  /\  j  e.  D )
) ) )
15142exbidv 1848 . . . . . . . 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 4724 . . . . . . . 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 4767 . . . . . . . . 9  |-  ( <.
x ,  y >.  e.  `' U_ k  e.  C  ( { k }  X.  D )  <->  <. y ,  x >.  e.  U_ k  e.  C  ( {
k }  X.  D
) )
18 eliunxp 4724 . . . . . . . . 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 1644 . . . . . . . . 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 205 . . . . . . . 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 222 . . . . . . 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 4681 . . . . . 6  |-  ( ph  ->  U_ j  e.  A  ( { j }  X.  B )  =  `' U_ k  e.  C  ( { k }  X.  D ) )
23 nfcv 2299 . . . . . . 7  |-  F/_ x
( { j }  X.  B )
24 nfcv 2299 . . . . . . . 8  |-  F/_ j { x }
25 nfcsb1v 3064 . . . . . . . 8  |-  F/_ j [_ x  /  j ]_ B
2624, 25nfxp 4612 . . . . . . 7  |-  F/_ j
( { x }  X.  [_ x  /  j ]_ B )
27 sneq 3571 . . . . . . . 8  |-  ( j  =  x  ->  { j }  =  { x } )
28 csbeq1a 3040 . . . . . . . 8  |-  ( j  =  x  ->  B  =  [_ x  /  j ]_ B )
2927, 28xpeq12d 4610 . . . . . . 7  |-  ( j  =  x  ->  ( { j }  X.  B )  =  ( { x }  X.  [_ x  /  j ]_ B ) )
3023, 26, 29cbviun 3886 . . . . . 6  |-  U_ j  e.  A  ( {
j }  X.  B
)  =  U_ x  e.  A  ( {
x }  X.  [_ x  /  j ]_ B
)
31 nfcv 2299 . . . . . . . 8  |-  F/_ y
( { k }  X.  D )
32 nfcv 2299 . . . . . . . . 9  |-  F/_ k { y }
33 nfcsb1v 3064 . . . . . . . . 9  |-  F/_ k [_ y  /  k ]_ D
3432, 33nfxp 4612 . . . . . . . 8  |-  F/_ k
( { y }  X.  [_ y  / 
k ]_ D )
35 sneq 3571 . . . . . . . . 9  |-  ( k  =  y  ->  { k }  =  { y } )
36 csbeq1a 3040 . . . . . . . . 9  |-  ( k  =  y  ->  D  =  [_ y  /  k ]_ D )
3735, 36xpeq12d 4610 . . . . . . . 8  |-  ( k  =  y  ->  ( { k }  X.  D )  =  ( { y }  X.  [_ y  /  k ]_ D ) )
3831, 34, 37cbviun 3886 . . . . . . 7  |-  U_ k  e.  C  ( {
k }  X.  D
)  =  U_ y  e.  C  ( {
y }  X.  [_ y  /  k ]_ D
)
3938cnveqi 4760 . . . . . 6  |-  `' U_ k  e.  C  ( { k }  X.  D )  =  `' U_ y  e.  C  ( { y }  X.  [_ y  /  k ]_ D )
4022, 30, 393eqtr3g 2213 . . . . 5  |-  ( ph  ->  U_ x  e.  A  ( { x }  X.  [_ x  /  j ]_ B )  =  `' U_ y  e.  C  ( { y }  X.  [_ y  /  k ]_ D ) )
4140prodeq1d 11454 . . . 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 6093 . . . . . . 7  |-  ( w  =  <. y ,  x >.  ->  ( 1st `  w
)  =  y )
4342csbeq1d 3038 . . . . . 6  |-  ( w  =  <. y ,  x >.  ->  [_ ( 1st `  w
)  /  k ]_ [_ ( 2nd `  w
)  /  j ]_ E  =  [_ y  / 
k ]_ [_ ( 2nd `  w )  /  j ]_ E )
448, 7op2ndd 6094 . . . . . . . 8  |-  ( w  =  <. y ,  x >.  ->  ( 2nd `  w
)  =  x )
4544csbeq1d 3038 . . . . . . 7  |-  ( w  =  <. y ,  x >.  ->  [_ ( 2nd `  w
)  /  j ]_ E  =  [_ x  / 
j ]_ E )
4645csbeq2dv 3057 . . . . . 6  |-  ( w  =  <. y ,  x >.  ->  [_ y  /  k ]_ [_ ( 2nd `  w
)  /  j ]_ E  =  [_ y  / 
k ]_ [_ x  / 
j ]_ E )
4743, 46eqtrd 2190 . . . . 5  |-  ( w  =  <. y ,  x >.  ->  [_ ( 1st `  w
)  /  k ]_ [_ ( 2nd `  w
)  /  j ]_ E  =  [_ y  / 
k ]_ [_ x  / 
j ]_ E )
487, 8op2ndd 6094 . . . . . . 7  |-  ( z  =  <. x ,  y
>.  ->  ( 2nd `  z
)  =  y )
4948csbeq1d 3038 . . . . . 6  |-  ( z  =  <. x ,  y
>.  ->  [_ ( 2nd `  z
)  /  k ]_ [_ ( 1st `  z
)  /  j ]_ E  =  [_ y  / 
k ]_ [_ ( 1st `  z )  /  j ]_ E )
507, 8op1std 6093 . . . . . . . 8  |-  ( z  =  <. x ,  y
>.  ->  ( 1st `  z
)  =  x )
5150csbeq1d 3038 . . . . . . 7  |-  ( z  =  <. x ,  y
>.  ->  [_ ( 1st `  z
)  /  j ]_ E  =  [_ x  / 
j ]_ E )
5251csbeq2dv 3057 . . . . . 6  |-  ( z  =  <. x ,  y
>.  ->  [_ y  /  k ]_ [_ ( 1st `  z
)  /  j ]_ E  =  [_ y  / 
k ]_ [_ x  / 
j ]_ E )
5349, 52eqtrd 2190 . . . . 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 6756 . . . . . . . . 9  |-  ( y  e.  _V  ->  { y }  e.  Fin )
5655elv 2716 . . . . . . . 8  |-  { y }  e.  Fin
57 fprodcom2fi.d . . . . . . . . . 10  |-  ( (
ph  /\  k  e.  C )  ->  D  e.  Fin )
5857ralrimiva 2530 . . . . . . . . 9  |-  ( ph  ->  A. k  e.  C  D  e.  Fin )
5933nfel1 2310 . . . . . . . . . 10  |-  F/ k
[_ y  /  k ]_ D  e.  Fin
6036eleq1d 2226 . . . . . . . . . 10  |-  ( k  =  y  ->  ( D  e.  Fin  <->  [_ y  / 
k ]_ D  e.  Fin ) )
6159, 60rspc 2810 . . . . . . . . 9  |-  ( y  e.  C  ->  ( A. k  e.  C  D  e.  Fin  ->  [_ y  /  k ]_ D  e.  Fin ) )
6258, 61mpan9 279 . . . . . . . 8  |-  ( (
ph  /\  y  e.  C )  ->  [_ y  /  k ]_ D  e.  Fin )
63 xpfi 6871 . . . . . . . 8  |-  ( ( { y }  e.  Fin  /\  [_ y  / 
k ]_ D  e.  Fin )  ->  ( { y }  X.  [_ y  /  k ]_ D
)  e.  Fin )
6456, 62, 63sylancr 411 . . . . . . 7  |-  ( (
ph  /\  y  e.  C )  ->  ( { y }  X.  [_ y  /  k ]_ D )  e.  Fin )
6564ralrimiva 2530 . . . . . 6  |-  ( ph  ->  A. y  e.  C  ( { y }  X.  [_ y  /  k ]_ D )  e.  Fin )
66 disjsnxp 6181 . . . . . . 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 6887 . . . . . 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 1220 . . . . 5  |-  ( ph  ->  U_ y  e.  C  ( { y }  X.  [_ y  /  k ]_ D )  e.  Fin )
70 reliun 4706 . . . . . . 7  |-  ( Rel  U_ y  e.  C  ( { y }  X.  [_ y  /  k ]_ D )  <->  A. y  e.  C  Rel  ( { y }  X.  [_ y  /  k ]_ D
) )
71 relxp 4694 . . . . . . . 8  |-  Rel  ( { y }  X.  [_ y  /  k ]_ D )
7271a1i 9 . . . . . . 7  |-  ( y  e.  C  ->  Rel  ( { y }  X.  [_ y  /  k ]_ D ) )
7370, 72mprgbir 2515 . . . . . 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 3034 . . . . . . . 8  |-  ( x  =  ( 2nd `  w
)  ->  [_ x  / 
j ]_ E  =  [_ ( 2nd `  w )  /  j ]_ E
)
7675csbeq2dv 3057 . . . . . . 7  |-  ( x  =  ( 2nd `  w
)  ->  [_ ( 1st `  w )  /  k ]_ [_ x  /  j ]_ E  =  [_ ( 1st `  w )  / 
k ]_ [_ ( 2nd `  w )  /  j ]_ E )
7776eleq1d 2226 . . . . . 6  |-  ( x  =  ( 2nd `  w
)  ->  ( [_ ( 1st `  w )  /  k ]_ [_ x  /  j ]_ E  e.  CC  <->  [_ ( 1st `  w
)  /  k ]_ [_ ( 2nd `  w
)  /  j ]_ E  e.  CC )
)
78 csbeq1 3034 . . . . . . . 8  |-  ( y  =  ( 1st `  w
)  ->  [_ y  / 
k ]_ D  =  [_ ( 1st `  w )  /  k ]_ D
)
79 csbeq1 3034 . . . . . . . . 9  |-  ( y  =  ( 1st `  w
)  ->  [_ y  / 
k ]_ [_ x  / 
j ]_ E  =  [_ ( 1st `  w )  /  k ]_ [_ x  /  j ]_ E
)
8079eleq1d 2226 . . . . . . . 8  |-  ( y  =  ( 1st `  w
)  ->  ( [_ y  /  k ]_ [_ x  /  j ]_ E  e.  CC  <->  [_ ( 1st `  w
)  /  k ]_ [_ x  /  j ]_ E  e.  CC )
)
8178, 80raleqbidv 2664 . . . . . . 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 108 . . . . . . . . . 10  |-  ( (
ph  /\  ( y  e.  C  /\  x  e.  [_ y  /  k ]_ D ) )  ->  ph )
8333, 36opeliunxp2f 6182 . . . . . . . . . . . . . . 15  |-  ( <.
y ,  x >.  e. 
U_ k  e.  C  ( { k }  X.  D )  <->  ( y  e.  C  /\  x  e.  [_ y  /  k ]_ D ) )
8417, 83sylbbr 135 . . . . . . . . . . . . . 14  |-  ( ( y  e.  C  /\  x  e.  [_ y  / 
k ]_ D )  ->  <. x ,  y >.  e.  `' U_ k  e.  C  ( { k }  X.  D ) )
8584adantl 275 . . . . . . . . . . . . 13  |-  ( (
ph  /\  ( y  e.  C  /\  x  e.  [_ y  /  k ]_ D ) )  ->  <. x ,  y >.  e.  `' U_ k  e.  C  ( { k }  X.  D ) )
8622adantr 274 . . . . . . . . . . . . 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 2237 . . . . . . . . . . . 12  |-  ( (
ph  /\  ( y  e.  C  /\  x  e.  [_ y  /  k ]_ D ) )  ->  <. x ,  y >.  e.  U_ j  e.  A  ( { j }  X.  B ) )
88 eliun 3853 . . . . . . . . . . . 12  |-  ( <.
x ,  y >.  e.  U_ j  e.  A  ( { j }  X.  B )  <->  E. j  e.  A  <. x ,  y >.  e.  ( { j }  X.  B ) )
8987, 88sylib 121 . . . . . . . . . . 11  |-  ( (
ph  /\  ( y  e.  C  /\  x  e.  [_ y  /  k ]_ D ) )  ->  E. j  e.  A  <. x ,  y >.  e.  ( { j }  X.  B ) )
90 simpr 109 . . . . . . . . . . . . . . . 16  |-  ( ( j  e.  A  /\  <.
x ,  y >.  e.  ( { j }  X.  B ) )  ->  <. x ,  y
>.  e.  ( { j }  X.  B ) )
91 opelxp 4615 . . . . . . . . . . . . . . . 16  |-  ( <.
x ,  y >.  e.  ( { j }  X.  B )  <->  ( x  e.  { j }  /\  y  e.  B )
)
9290, 91sylib 121 . . . . . . . . . . . . . . 15  |-  ( ( j  e.  A  /\  <.
x ,  y >.  e.  ( { j }  X.  B ) )  ->  ( x  e. 
{ j }  /\  y  e.  B )
)
9392simpld 111 . . . . . . . . . . . . . 14  |-  ( ( j  e.  A  /\  <.
x ,  y >.  e.  ( { j }  X.  B ) )  ->  x  e.  {
j } )
94 elsni 3578 . . . . . . . . . . . . . 14  |-  ( x  e.  { j }  ->  x  =  j )
9593, 94syl 14 . . . . . . . . . . . . 13  |-  ( ( j  e.  A  /\  <.
x ,  y >.  e.  ( { j }  X.  B ) )  ->  x  =  j )
96 simpl 108 . . . . . . . . . . . . 13  |-  ( ( j  e.  A  /\  <.
x ,  y >.  e.  ( { j }  X.  B ) )  ->  j  e.  A
)
9795, 96eqeltrd 2234 . . . . . . . . . . . 12  |-  ( ( j  e.  A  /\  <.
x ,  y >.  e.  ( { j }  X.  B ) )  ->  x  e.  A
)
9897rexlimiva 2569 . . . . . . . . . . 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 2293 . . . . . . . . . . . 12  |-  F/ j  y  e.  [_ x  /  j ]_ B
10194equcomd 1687 . . . . . . . . . . . . . . . . 17  |-  ( x  e.  { j }  ->  j  =  x )
102101, 28syl 14 . . . . . . . . . . . . . . . 16  |-  ( x  e.  { j }  ->  B  =  [_ x  /  j ]_ B
)
103102eleq2d 2227 . . . . . . . . . . . . . . 15  |-  ( x  e.  { j }  ->  ( y  e.  B  <->  y  e.  [_ x  /  j ]_ B
) )
104103biimpa 294 . . . . . . . . . . . . . 14  |-  ( ( x  e.  { j }  /\  y  e.  B )  ->  y  e.  [_ x  /  j ]_ B )
10591, 104sylbi 120 . . . . . . . . . . . . 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 2567 . . . . . . . . . . 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 2539 . . . . . . . . . . . . 13  |-  ( ph  ->  A. j  e.  A  A. k  e.  B  E  e.  CC )
111 nfcsb1v 3064 . . . . . . . . . . . . . . . 16  |-  F/_ j [_ x  /  j ]_ E
112111nfel1 2310 . . . . . . . . . . . . . . 15  |-  F/ j
[_ x  /  j ]_ E  e.  CC
11325, 112nfralw 2494 . . . . . . . . . . . . . 14  |-  F/ j A. k  e.  [_  x  /  j ]_ B [_ x  /  j ]_ E  e.  CC
114 csbeq1a 3040 . . . . . . . . . . . . . . . 16  |-  ( j  =  x  ->  E  =  [_ x  /  j ]_ E )
115114eleq1d 2226 . . . . . . . . . . . . . . 15  |-  ( j  =  x  ->  ( E  e.  CC  <->  [_ x  / 
j ]_ E  e.  CC ) )
11628, 115raleqbidv 2664 . . . . . . . . . . . . . 14  |-  ( j  =  x  ->  ( A. k  e.  B  E  e.  CC  <->  A. k  e.  [_  x  /  j ]_ B [_ x  / 
j ]_ E  e.  CC ) )
117113, 116rspc 2810 . . . . . . . . . . . . 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 279 . . . . . . . . . . . 12  |-  ( (
ph  /\  x  e.  A )  ->  A. k  e.  [_  x  /  j ]_ B [_ x  / 
j ]_ E  e.  CC )
119 nfcsb1v 3064 . . . . . . . . . . . . . 14  |-  F/_ k [_ y  /  k ]_ [_ x  /  j ]_ E
120119nfel1 2310 . . . . . . . . . . . . 13  |-  F/ k
[_ y  /  k ]_ [_ x  /  j ]_ E  e.  CC
121 csbeq1a 3040 . . . . . . . . . . . . . 14  |-  ( k  =  y  ->  [_ x  /  j ]_ E  =  [_ y  /  k ]_ [_ x  /  j ]_ E )
122121eleq1d 2226 . . . . . . . . . . . . 13  |-  ( k  =  y  ->  ( [_ x  /  j ]_ E  e.  CC  <->  [_ y  /  k ]_ [_ x  /  j ]_ E  e.  CC )
)
123120, 122rspc 2810 . . . . . . . . . . . 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 377 . . . . . . . . . 10  |-  ( (
ph  /\  ( x  e.  A  /\  y  e.  [_ x  /  j ]_ B ) )  ->  [_ y  /  k ]_ [_ x  /  j ]_ E  e.  CC )
12682, 99, 108, 125syl12anc 1218 . . . . . . . . 9  |-  ( (
ph  /\  ( y  e.  C  /\  x  e.  [_ y  /  k ]_ D ) )  ->  [_ y  /  k ]_ [_ x  /  j ]_ E  e.  CC )
127126ralrimivva 2539 . . . . . . . 8  |-  ( ph  ->  A. y  e.  C  A. x  e.  [_  y  /  k ]_ D [_ y  /  k ]_ [_ x  /  j ]_ E  e.  CC )
128127adantr 274 . . . . . . 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 109 . . . . . . . . 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 3853 . . . . . . . . 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 121 . . . . . . . 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 6110 . . . . . . . . . . . 12  |-  ( w  e.  ( { y }  X.  [_ y  /  k ]_ D
)  ->  ( 1st `  w )  e.  {
y } )
133132adantl 275 . . . . . . . . . . 11  |-  ( ( y  e.  C  /\  w  e.  ( {
y }  X.  [_ y  /  k ]_ D
) )  ->  ( 1st `  w )  e. 
{ y } )
134 elsni 3578 . . . . . . . . . . 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 108 . . . . . . . . . 10  |-  ( ( y  e.  C  /\  w  e.  ( {
y }  X.  [_ y  /  k ]_ D
) )  ->  y  e.  C )
137135, 136eqeltrd 2234 . . . . . . . . 9  |-  ( ( y  e.  C  /\  w  e.  ( {
y }  X.  [_ y  /  k ]_ D
) )  ->  ( 1st `  w )  e.  C )
138137rexlimiva 2569 . . . . . . . 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 2821 . . . . . 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 6111 . . . . . . . . . 10  |-  ( w  e.  ( { y }  X.  [_ y  /  k ]_ D
)  ->  ( 2nd `  w )  e.  [_ y  /  k ]_ D
)
142141adantl 275 . . . . . . . . 9  |-  ( ( y  e.  C  /\  w  e.  ( {
y }  X.  [_ y  /  k ]_ D
) )  ->  ( 2nd `  w )  e. 
[_ y  /  k ]_ D )
143135csbeq1d 3038 . . . . . . . . 9  |-  ( ( y  e.  C  /\  w  e.  ( {
y }  X.  [_ y  /  k ]_ D
) )  ->  [_ ( 1st `  w )  / 
k ]_ D  =  [_ y  /  k ]_ D
)
144142, 143eleqtrrd 2237 . . . . . . . 8  |-  ( ( y  e.  C  /\  w  e.  ( {
y }  X.  [_ y  /  k ]_ D
) )  ->  ( 2nd `  w )  e. 
[_ ( 1st `  w
)  /  k ]_ D )
145144rexlimiva 2569 . . . . . . 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 2821 . . . . 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 11515 . . . 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 2193 . . 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 2530 . . . . 5  |-  ( ph  ->  A. j  e.  A  B  e.  Fin )
15325nfel1 2310 . . . . . 6  |-  F/ j
[_ x  /  j ]_ B  e.  Fin
15428eleq1d 2226 . . . . . 6  |-  ( j  =  x  ->  ( B  e.  Fin  <->  [_ x  / 
j ]_ B  e.  Fin ) )
155153, 154rspc 2810 . . . . 5  |-  ( x  e.  A  ->  ( A. j  e.  A  B  e.  Fin  ->  [_ x  /  j ]_ B  e.  Fin ) )
156152, 155mpan9 279 . . . 4  |-  ( (
ph  /\  x  e.  A )  ->  [_ x  /  j ]_ B  e.  Fin )
15753, 150, 156, 125fprod2d 11513 . . 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 11513 . . 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 2200 . 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 2299 . . 3  |-  F/_ x prod_ k  e.  B  E
161 nfcv 2299 . . . . 5  |-  F/_ j
y
162161, 111nfcsbw 3067 . . . 4  |-  F/_ j [_ y  /  k ]_ [_ x  /  j ]_ E
16325, 162nfcprod 11445 . . 3  |-  F/_ j prod_ y  e.  [_  x  /  j ]_ B [_ y  /  k ]_ [_ x  /  j ]_ E
164 nfcv 2299 . . . . 5  |-  F/_ y E
165 nfcsb1v 3064 . . . . 5  |-  F/_ k [_ y  /  k ]_ E
166 csbeq1a 3040 . . . . 5  |-  ( k  =  y  ->  E  =  [_ y  /  k ]_ E )
167164, 165, 166cbvprodi 11450 . . . 4  |-  prod_ k  e.  B  E  =  prod_ y  e.  B  [_ y  /  k ]_ E
168114csbeq2dv 3057 . . . . . 6  |-  ( j  =  x  ->  [_ y  /  k ]_ E  =  [_ y  /  k ]_ [_ x  /  j ]_ E )
169168adantr 274 . . . . 5  |-  ( ( j  =  x  /\  y  e.  B )  ->  [_ y  /  k ]_ E  =  [_ y  /  k ]_ [_ x  /  j ]_ E
)
17028, 169prodeq12dv 11459 . . . 4  |-  ( j  =  x  ->  prod_ y  e.  B  [_ y  /  k ]_ E  =  prod_ y  e.  [_  x  /  j ]_ B [_ y  /  k ]_ [_ x  /  j ]_ E )
171167, 170syl5eq 2202 . . 3  |-  ( j  =  x  ->  prod_ k  e.  B  E  = 
prod_ y  e.  [_  x  /  j ]_ B [_ y  /  k ]_ [_ x  /  j ]_ E )
172160, 163, 171cbvprodi 11450 . 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 2299 . . 3  |-  F/_ y prod_ j  e.  D  E
17433, 119nfcprod 11445 . . 3  |-  F/_ k prod_ x  e.  [_  y  /  k ]_ D [_ y  /  k ]_ [_ x  /  j ]_ E
175 nfcv 2299 . . . . 5  |-  F/_ x E
176175, 111, 114cbvprodi 11450 . . . 4  |-  prod_ j  e.  D  E  =  prod_ x  e.  D  [_ x  /  j ]_ E
177121adantr 274 . . . . 5  |-  ( ( k  =  y  /\  x  e.  D )  ->  [_ x  /  j ]_ E  =  [_ y  /  k ]_ [_ x  /  j ]_ E
)
17836, 177prodeq12dv 11459 . . . 4  |-  ( k  =  y  ->  prod_ x  e.  D  [_ x  /  j ]_ E  =  prod_ x  e.  [_  y  /  k ]_ D [_ y  /  k ]_ [_ x  /  j ]_ E )
179176, 178syl5eq 2202 . . 3  |-  ( k  =  y  ->  prod_ j  e.  D  E  = 
prod_ x  e.  [_  y  /  k ]_ D [_ y  /  k ]_ [_ x  /  j ]_ E )
180173, 174, 179cbvprodi 11450 . 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 2215 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 103    <-> wb 104    = wceq 1335   E.wex 1472    e. wcel 2128   A.wral 2435   E.wrex 2436   _Vcvv 2712   [_csb 3031   {csn 3560   <.cop 3563   U_ciun 3849  Disj wdisj 3942    X. cxp 4583   `'ccnv 4584   Rel wrel 4590   ` cfv 5169   1stc1st 6083   2ndc2nd 6084   Fincfn 6682   CCcc 7724   prod_cprod 11440
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-ia1 105  ax-ia2 106  ax-ia3 107  ax-in1 604  ax-in2 605  ax-io 699  ax-5 1427  ax-7 1428  ax-gen 1429  ax-ie1 1473  ax-ie2 1474  ax-8 1484  ax-10 1485  ax-11 1486  ax-i12 1487  ax-bndl 1489  ax-4 1490  ax-17 1506  ax-i9 1510  ax-ial 1514  ax-i5r 1515  ax-13 2130  ax-14 2131  ax-ext 2139  ax-coll 4079  ax-sep 4082  ax-nul 4090  ax-pow 4135  ax-pr 4169  ax-un 4393  ax-setind 4495  ax-iinf 4546  ax-cnex 7817  ax-resscn 7818  ax-1cn 7819  ax-1re 7820  ax-icn 7821  ax-addcl 7822  ax-addrcl 7823  ax-mulcl 7824  ax-mulrcl 7825  ax-addcom 7826  ax-mulcom 7827  ax-addass 7828  ax-mulass 7829  ax-distr 7830  ax-i2m1 7831  ax-0lt1 7832  ax-1rid 7833  ax-0id 7834  ax-rnegex 7835  ax-precex 7836  ax-cnre 7837  ax-pre-ltirr 7838  ax-pre-ltwlin 7839  ax-pre-lttrn 7840  ax-pre-apti 7841  ax-pre-ltadd 7842  ax-pre-mulgt0 7843  ax-pre-mulext 7844  ax-arch 7845  ax-caucvg 7846
This theorem depends on definitions:  df-bi 116  df-dc 821  df-3or 964  df-3an 965  df-tru 1338  df-fal 1341  df-nf 1441  df-sb 1743  df-eu 2009  df-mo 2010  df-clab 2144  df-cleq 2150  df-clel 2153  df-nfc 2288  df-ne 2328  df-nel 2423  df-ral 2440  df-rex 2441  df-reu 2442  df-rmo 2443  df-rab 2444  df-v 2714  df-sbc 2938  df-csb 3032  df-dif 3104  df-un 3106  df-in 3108  df-ss 3115  df-nul 3395  df-if 3506  df-pw 3545  df-sn 3566  df-pr 3567  df-op 3569  df-uni 3773  df-int 3808  df-iun 3851  df-disj 3943  df-br 3966  df-opab 4026  df-mpt 4027  df-tr 4063  df-id 4253  df-po 4256  df-iso 4257  df-iord 4326  df-on 4328  df-ilim 4329  df-suc 4331  df-iom 4549  df-xp 4591  df-rel 4592  df-cnv 4593  df-co 4594  df-dm 4595  df-rn 4596  df-res 4597  df-ima 4598  df-iota 5134  df-fun 5171  df-fn 5172  df-f 5173  df-f1 5174  df-fo 5175  df-f1o 5176  df-fv 5177  df-isom 5178  df-riota 5777  df-ov 5824  df-oprab 5825  df-mpo 5826  df-1st 6085  df-2nd 6086  df-recs 6249  df-irdg 6314  df-frec 6335  df-1o 6360  df-oadd 6364  df-er 6477  df-en 6683  df-dom 6684  df-fin 6685  df-pnf 7908  df-mnf 7909  df-xr 7910  df-ltxr 7911  df-le 7912  df-sub 8042  df-neg 8043  df-reap 8444  df-ap 8451  df-div 8540  df-inn 8828  df-2 8886  df-3 8887  df-4 8888  df-n0 9085  df-z 9162  df-uz 9434  df-q 9522  df-rp 9554  df-fz 9906  df-fzo 10035  df-seqfrec 10338  df-exp 10412  df-ihash 10643  df-cj 10735  df-re 10736  df-im 10737  df-rsqrt 10891  df-abs 10892  df-clim 11169  df-proddc 11441
This theorem is referenced by:  fprodcom  11517  fprod0diagfz  11518
  Copyright terms: Public domain W3C validator