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

Theorem fprodcom2fi 12267
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 4841 . . . . . . . . 9  |-  Rel  ( { j }  X.  B )
21rgenw 2588 . . . . . . . 8  |-  A. j  e.  A  Rel  ( { j }  X.  B
)
3 reliun 4854 . . . . . . . 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 5121 . . . . . . 7  |-  Rel  `' U_ k  e.  C  ( { k }  X.  D )
6 ancom 266 . . . . . . . . . . . 12  |-  ( ( x  =  j  /\  y  =  k )  <->  ( y  =  k  /\  x  =  j )
)
7 vex 2806 . . . . . . . . . . . . 13  |-  x  e. 
_V
8 vex 2806 . . . . . . . . . . . . 13  |-  y  e. 
_V
97, 8opth 4335 . . . . . . . . . . . 12  |-  ( <.
x ,  y >.  =  <. j ,  k
>. 
<->  ( x  =  j  /\  y  =  k ) )
108, 7opth 4335 . . . . . . . . . . . 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 1916 . . . . . . . 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 4875 . . . . . . . 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 4918 . . . . . . . . 9  |-  ( <.
x ,  y >.  e.  `' U_ k  e.  C  ( { k }  X.  D )  <->  <. y ,  x >.  e.  U_ k  e.  C  ( {
k }  X.  D
) )
18 eliunxp 4875 . . . . . . . . 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 1712 . . . . . . . . 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 4828 . . . . . 6  |-  ( ph  ->  U_ j  e.  A  ( { j }  X.  B )  =  `' U_ k  e.  C  ( { k }  X.  D ) )
23 nfcv 2375 . . . . . . 7  |-  F/_ x
( { j }  X.  B )
24 nfcv 2375 . . . . . . . 8  |-  F/_ j { x }
25 nfcsb1v 3161 . . . . . . . 8  |-  F/_ j [_ x  /  j ]_ B
2624, 25nfxp 4758 . . . . . . 7  |-  F/_ j
( { x }  X.  [_ x  /  j ]_ B )
27 sneq 3684 . . . . . . . 8  |-  ( j  =  x  ->  { j }  =  { x } )
28 csbeq1a 3137 . . . . . . . 8  |-  ( j  =  x  ->  B  =  [_ x  /  j ]_ B )
2927, 28xpeq12d 4756 . . . . . . 7  |-  ( j  =  x  ->  ( { j }  X.  B )  =  ( { x }  X.  [_ x  /  j ]_ B ) )
3023, 26, 29cbviun 4012 . . . . . 6  |-  U_ j  e.  A  ( {
j }  X.  B
)  =  U_ x  e.  A  ( {
x }  X.  [_ x  /  j ]_ B
)
31 nfcv 2375 . . . . . . . 8  |-  F/_ y
( { k }  X.  D )
32 nfcv 2375 . . . . . . . . 9  |-  F/_ k { y }
33 nfcsb1v 3161 . . . . . . . . 9  |-  F/_ k [_ y  /  k ]_ D
3432, 33nfxp 4758 . . . . . . . 8  |-  F/_ k
( { y }  X.  [_ y  / 
k ]_ D )
35 sneq 3684 . . . . . . . . 9  |-  ( k  =  y  ->  { k }  =  { y } )
36 csbeq1a 3137 . . . . . . . . 9  |-  ( k  =  y  ->  D  =  [_ y  /  k ]_ D )
3735, 36xpeq12d 4756 . . . . . . . 8  |-  ( k  =  y  ->  ( { k }  X.  D )  =  ( { y }  X.  [_ y  /  k ]_ D ) )
3831, 34, 37cbviun 4012 . . . . . . 7  |-  U_ k  e.  C  ( {
k }  X.  D
)  =  U_ y  e.  C  ( {
y }  X.  [_ y  /  k ]_ D
)
3938cnveqi 4911 . . . . . 6  |-  `' U_ k  e.  C  ( { k }  X.  D )  =  `' U_ y  e.  C  ( { y }  X.  [_ y  /  k ]_ D )
4022, 30, 393eqtr3g 2287 . . . . 5  |-  ( ph  ->  U_ x  e.  A  ( { x }  X.  [_ x  /  j ]_ B )  =  `' U_ y  e.  C  ( { y }  X.  [_ y  /  k ]_ D ) )
4140prodeq1d 12205 . . . 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 6320 . . . . . . 7  |-  ( w  =  <. y ,  x >.  ->  ( 1st `  w
)  =  y )
4342csbeq1d 3135 . . . . . 6  |-  ( w  =  <. y ,  x >.  ->  [_ ( 1st `  w
)  /  k ]_ [_ ( 2nd `  w
)  /  j ]_ E  =  [_ y  / 
k ]_ [_ ( 2nd `  w )  /  j ]_ E )
448, 7op2ndd 6321 . . . . . . . 8  |-  ( w  =  <. y ,  x >.  ->  ( 2nd `  w
)  =  x )
4544csbeq1d 3135 . . . . . . 7  |-  ( w  =  <. y ,  x >.  ->  [_ ( 2nd `  w
)  /  j ]_ E  =  [_ x  / 
j ]_ E )
4645csbeq2dv 3154 . . . . . 6  |-  ( w  =  <. y ,  x >.  ->  [_ y  /  k ]_ [_ ( 2nd `  w
)  /  j ]_ E  =  [_ y  / 
k ]_ [_ x  / 
j ]_ E )
4743, 46eqtrd 2264 . . . . 5  |-  ( w  =  <. y ,  x >.  ->  [_ ( 1st `  w
)  /  k ]_ [_ ( 2nd `  w
)  /  j ]_ E  =  [_ y  / 
k ]_ [_ x  / 
j ]_ E )
487, 8op2ndd 6321 . . . . . . 7  |-  ( z  =  <. x ,  y
>.  ->  ( 2nd `  z
)  =  y )
4948csbeq1d 3135 . . . . . 6  |-  ( z  =  <. x ,  y
>.  ->  [_ ( 2nd `  z
)  /  k ]_ [_ ( 1st `  z
)  /  j ]_ E  =  [_ y  / 
k ]_ [_ ( 1st `  z )  /  j ]_ E )
507, 8op1std 6320 . . . . . . . 8  |-  ( z  =  <. x ,  y
>.  ->  ( 1st `  z
)  =  x )
5150csbeq1d 3135 . . . . . . 7  |-  ( z  =  <. x ,  y
>.  ->  [_ ( 1st `  z
)  /  j ]_ E  =  [_ x  / 
j ]_ E )
5251csbeq2dv 3154 . . . . . 6  |-  ( z  =  <. x ,  y
>.  ->  [_ y  /  k ]_ [_ ( 1st `  z
)  /  j ]_ E  =  [_ y  / 
k ]_ [_ x  / 
j ]_ E )
5349, 52eqtrd 2264 . . . . 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 7032 . . . . . . . . 9  |-  ( y  e.  _V  ->  { y }  e.  Fin )
5655elv 2807 . . . . . . . 8  |-  { y }  e.  Fin
57 fprodcom2fi.d . . . . . . . . . 10  |-  ( (
ph  /\  k  e.  C )  ->  D  e.  Fin )
5857ralrimiva 2606 . . . . . . . . 9  |-  ( ph  ->  A. k  e.  C  D  e.  Fin )
5933nfel1 2386 . . . . . . . . . 10  |-  F/ k
[_ y  /  k ]_ D  e.  Fin
6036eleq1d 2300 . . . . . . . . . 10  |-  ( k  =  y  ->  ( D  e.  Fin  <->  [_ y  / 
k ]_ D  e.  Fin ) )
6159, 60rspc 2905 . . . . . . . . 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 7167 . . . . . . . 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 2606 . . . . . 6  |-  ( ph  ->  A. y  e.  C  ( { y }  X.  [_ y  /  k ]_ D )  e.  Fin )
66 disjsnxp 6411 . . . . . . 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 7188 . . . . . 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 1274 . . . . 5  |-  ( ph  ->  U_ y  e.  C  ( { y }  X.  [_ y  /  k ]_ D )  e.  Fin )
70 reliun 4854 . . . . . . 7  |-  ( Rel  U_ y  e.  C  ( { y }  X.  [_ y  /  k ]_ D )  <->  A. y  e.  C  Rel  ( { y }  X.  [_ y  /  k ]_ D
) )
71 relxp 4841 . . . . . . . 8  |-  Rel  ( { y }  X.  [_ y  /  k ]_ D )
7271a1i 9 . . . . . . 7  |-  ( y  e.  C  ->  Rel  ( { y }  X.  [_ y  /  k ]_ D ) )
7370, 72mprgbir 2591 . . . . . 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 3131 . . . . . . . 8  |-  ( x  =  ( 2nd `  w
)  ->  [_ x  / 
j ]_ E  =  [_ ( 2nd `  w )  /  j ]_ E
)
7675csbeq2dv 3154 . . . . . . 7  |-  ( x  =  ( 2nd `  w
)  ->  [_ ( 1st `  w )  /  k ]_ [_ x  /  j ]_ E  =  [_ ( 1st `  w )  / 
k ]_ [_ ( 2nd `  w )  /  j ]_ E )
7776eleq1d 2300 . . . . . 6  |-  ( x  =  ( 2nd `  w
)  ->  ( [_ ( 1st `  w )  /  k ]_ [_ x  /  j ]_ E  e.  CC  <->  [_ ( 1st `  w
)  /  k ]_ [_ ( 2nd `  w
)  /  j ]_ E  e.  CC )
)
78 csbeq1 3131 . . . . . . . 8  |-  ( y  =  ( 1st `  w
)  ->  [_ y  / 
k ]_ D  =  [_ ( 1st `  w )  /  k ]_ D
)
79 csbeq1 3131 . . . . . . . . 9  |-  ( y  =  ( 1st `  w
)  ->  [_ y  / 
k ]_ [_ x  / 
j ]_ E  =  [_ ( 1st `  w )  /  k ]_ [_ x  /  j ]_ E
)
8079eleq1d 2300 . . . . . . . 8  |-  ( y  =  ( 1st `  w
)  ->  ( [_ y  /  k ]_ [_ x  /  j ]_ E  e.  CC  <->  [_ ( 1st `  w
)  /  k ]_ [_ x  /  j ]_ E  e.  CC )
)
8178, 80raleqbidv 2747 . . . . . . 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 6447 . . . . . . . . . . . . . . 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 2311 . . . . . . . . . . . 12  |-  ( (
ph  /\  ( y  e.  C  /\  x  e.  [_ y  /  k ]_ D ) )  ->  <. x ,  y >.  e.  U_ j  e.  A  ( { j }  X.  B ) )
88 eliun 3979 . . . . . . . . . . . 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 4761 . . . . . . . . . . . . . . . 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 3691 . . . . . . . . . . . . . 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 2308 . . . . . . . . . . . 12  |-  ( ( j  e.  A  /\  <.
x ,  y >.  e.  ( { j }  X.  B ) )  ->  x  e.  A
)
9897rexlimiva 2646 . . . . . . . . . . 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 2369 . . . . . . . . . . . 12  |-  F/ j  y  e.  [_ x  /  j ]_ B
10194equcomd 1755 . . . . . . . . . . . . . . . . 17  |-  ( x  e.  { j }  ->  j  =  x )
102101, 28syl 14 . . . . . . . . . . . . . . . 16  |-  ( x  e.  { j }  ->  B  =  [_ x  /  j ]_ B
)
103102eleq2d 2301 . . . . . . . . . . . . . . 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 2644 . . . . . . . . . . 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 2615 . . . . . . . . . . . . 13  |-  ( ph  ->  A. j  e.  A  A. k  e.  B  E  e.  CC )
111 nfcsb1v 3161 . . . . . . . . . . . . . . . 16  |-  F/_ j [_ x  /  j ]_ E
112111nfel1 2386 . . . . . . . . . . . . . . 15  |-  F/ j
[_ x  /  j ]_ E  e.  CC
11325, 112nfralw 2570 . . . . . . . . . . . . . 14  |-  F/ j A. k  e.  [_  x  /  j ]_ B [_ x  /  j ]_ E  e.  CC
114 csbeq1a 3137 . . . . . . . . . . . . . . . 16  |-  ( j  =  x  ->  E  =  [_ x  /  j ]_ E )
115114eleq1d 2300 . . . . . . . . . . . . . . 15  |-  ( j  =  x  ->  ( E  e.  CC  <->  [_ x  / 
j ]_ E  e.  CC ) )
11628, 115raleqbidv 2747 . . . . . . . . . . . . . 14  |-  ( j  =  x  ->  ( A. k  e.  B  E  e.  CC  <->  A. k  e.  [_  x  /  j ]_ B [_ x  / 
j ]_ E  e.  CC ) )
117113, 116rspc 2905 . . . . . . . . . . . . 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 3161 . . . . . . . . . . . . . 14  |-  F/_ k [_ y  /  k ]_ [_ x  /  j ]_ E
120119nfel1 2386 . . . . . . . . . . . . 13  |-  F/ k
[_ y  /  k ]_ [_ x  /  j ]_ E  e.  CC
121 csbeq1a 3137 . . . . . . . . . . . . . 14  |-  ( k  =  y  ->  [_ x  /  j ]_ E  =  [_ y  /  k ]_ [_ x  /  j ]_ E )
122121eleq1d 2300 . . . . . . . . . . . . 13  |-  ( k  =  y  ->  ( [_ x  /  j ]_ E  e.  CC  <->  [_ y  /  k ]_ [_ x  /  j ]_ E  e.  CC )
)
123120, 122rspc 2905 . . . . . . . . . . . 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 1272 . . . . . . . . 9  |-  ( (
ph  /\  ( y  e.  C  /\  x  e.  [_ y  /  k ]_ D ) )  ->  [_ y  /  k ]_ [_ x  /  j ]_ E  e.  CC )
127126ralrimivva 2615 . . . . . . . 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 3979 . . . . . . . . 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 6337 . . . . . . . . . . . 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 3691 . . . . . . . . . . 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 2308 . . . . . . . . 9  |-  ( ( y  e.  C  /\  w  e.  ( {
y }  X.  [_ y  /  k ]_ D
) )  ->  ( 1st `  w )  e.  C )
138137rexlimiva 2646 . . . . . . . 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 2916 . . . . . 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 6338 . . . . . . . . . 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 3135 . . . . . . . . 9  |-  ( ( y  e.  C  /\  w  e.  ( {
y }  X.  [_ y  /  k ]_ D
) )  ->  [_ ( 1st `  w )  / 
k ]_ D  =  [_ y  /  k ]_ D
)
144142, 143eleqtrrd 2311 . . . . . . . 8  |-  ( ( y  e.  C  /\  w  e.  ( {
y }  X.  [_ y  /  k ]_ D
) )  ->  ( 2nd `  w )  e. 
[_ ( 1st `  w
)  /  k ]_ D )
145144rexlimiva 2646 . . . . . . 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 2916 . . . . 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 12266 . . . 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 2267 . . 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 2606 . . . . 5  |-  ( ph  ->  A. j  e.  A  B  e.  Fin )
15325nfel1 2386 . . . . . 6  |-  F/ j
[_ x  /  j ]_ B  e.  Fin
15428eleq1d 2300 . . . . . 6  |-  ( j  =  x  ->  ( B  e.  Fin  <->  [_ x  / 
j ]_ B  e.  Fin ) )
155153, 154rspc 2905 . . . . 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 12264 . . 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 12264 . . 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 2274 . 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 2375 . . 3  |-  F/_ x prod_ k  e.  B  E
161 nfcv 2375 . . . . 5  |-  F/_ j
y
162161, 111nfcsbw 3165 . . . 4  |-  F/_ j [_ y  /  k ]_ [_ x  /  j ]_ E
16325, 162nfcprod 12196 . . 3  |-  F/_ j prod_ y  e.  [_  x  /  j ]_ B [_ y  /  k ]_ [_ x  /  j ]_ E
164 nfcv 2375 . . . . 5  |-  F/_ y E
165 nfcsb1v 3161 . . . . 5  |-  F/_ k [_ y  /  k ]_ E
166 csbeq1a 3137 . . . . 5  |-  ( k  =  y  ->  E  =  [_ y  /  k ]_ E )
167164, 165, 166cbvprodi 12201 . . . 4  |-  prod_ k  e.  B  E  =  prod_ y  e.  B  [_ y  /  k ]_ E
168114csbeq2dv 3154 . . . . . 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 12210 . . . 4  |-  ( j  =  x  ->  prod_ y  e.  B  [_ y  /  k ]_ E  =  prod_ y  e.  [_  x  /  j ]_ B [_ y  /  k ]_ [_ x  /  j ]_ E )
171167, 170eqtrid 2276 . . 3  |-  ( j  =  x  ->  prod_ k  e.  B  E  = 
prod_ y  e.  [_  x  /  j ]_ B [_ y  /  k ]_ [_ x  /  j ]_ E )
172160, 163, 171cbvprodi 12201 . 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 2375 . . 3  |-  F/_ y prod_ j  e.  D  E
17433, 119nfcprod 12196 . . 3  |-  F/_ k prod_ x  e.  [_  y  /  k ]_ D [_ y  /  k ]_ [_ x  /  j ]_ E
175 nfcv 2375 . . . . 5  |-  F/_ x E
176175, 111, 114cbvprodi 12201 . . . 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 12210 . . . 4  |-  ( k  =  y  ->  prod_ x  e.  D  [_ x  /  j ]_ E  =  prod_ x  e.  [_  y  /  k ]_ D [_ y  /  k ]_ [_ x  /  j ]_ E )
179176, 178eqtrid 2276 . . 3  |-  ( k  =  y  ->  prod_ j  e.  D  E  = 
prod_ x  e.  [_  y  /  k ]_ D [_ y  /  k ]_ [_ x  /  j ]_ E )
180173, 174, 179cbvprodi 12201 . 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 2289 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 1398   E.wex 1541    e. wcel 2202   A.wral 2511   E.wrex 2512   _Vcvv 2803   [_csb 3128   {csn 3673   <.cop 3676   U_ciun 3975  Disj wdisj 4069    X. cxp 4729   `'ccnv 4730   Rel wrel 4736   ` cfv 5333   1stc1st 6310   2ndc2nd 6311   Fincfn 6952   CCcc 8090   prod_cprod 12191
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 619  ax-in2 620  ax-io 717  ax-5 1496  ax-7 1497  ax-gen 1498  ax-ie1 1542  ax-ie2 1543  ax-8 1553  ax-10 1554  ax-11 1555  ax-i12 1556  ax-bndl 1558  ax-4 1559  ax-17 1575  ax-i9 1579  ax-ial 1583  ax-i5r 1584  ax-13 2204  ax-14 2205  ax-ext 2213  ax-coll 4209  ax-sep 4212  ax-nul 4220  ax-pow 4270  ax-pr 4305  ax-un 4536  ax-setind 4641  ax-iinf 4692  ax-cnex 8183  ax-resscn 8184  ax-1cn 8185  ax-1re 8186  ax-icn 8187  ax-addcl 8188  ax-addrcl 8189  ax-mulcl 8190  ax-mulrcl 8191  ax-addcom 8192  ax-mulcom 8193  ax-addass 8194  ax-mulass 8195  ax-distr 8196  ax-i2m1 8197  ax-0lt1 8198  ax-1rid 8199  ax-0id 8200  ax-rnegex 8201  ax-precex 8202  ax-cnre 8203  ax-pre-ltirr 8204  ax-pre-ltwlin 8205  ax-pre-lttrn 8206  ax-pre-apti 8207  ax-pre-ltadd 8208  ax-pre-mulgt0 8209  ax-pre-mulext 8210  ax-arch 8211  ax-caucvg 8212
This theorem depends on definitions:  df-bi 117  df-dc 843  df-3or 1006  df-3an 1007  df-tru 1401  df-fal 1404  df-nf 1510  df-sb 1811  df-eu 2082  df-mo 2083  df-clab 2218  df-cleq 2224  df-clel 2227  df-nfc 2364  df-ne 2404  df-nel 2499  df-ral 2516  df-rex 2517  df-reu 2518  df-rmo 2519  df-rab 2520  df-v 2805  df-sbc 3033  df-csb 3129  df-dif 3203  df-un 3205  df-in 3207  df-ss 3214  df-nul 3497  df-if 3608  df-pw 3658  df-sn 3679  df-pr 3680  df-op 3682  df-uni 3899  df-int 3934  df-iun 3977  df-disj 4070  df-br 4094  df-opab 4156  df-mpt 4157  df-tr 4193  df-id 4396  df-po 4399  df-iso 4400  df-iord 4469  df-on 4471  df-ilim 4472  df-suc 4474  df-iom 4695  df-xp 4737  df-rel 4738  df-cnv 4739  df-co 4740  df-dm 4741  df-rn 4742  df-res 4743  df-ima 4744  df-iota 5293  df-fun 5335  df-fn 5336  df-f 5337  df-f1 5338  df-fo 5339  df-f1o 5340  df-fv 5341  df-isom 5342  df-riota 5981  df-ov 6031  df-oprab 6032  df-mpo 6033  df-1st 6312  df-2nd 6313  df-recs 6514  df-irdg 6579  df-frec 6600  df-1o 6625  df-oadd 6629  df-er 6745  df-en 6953  df-dom 6954  df-fin 6955  df-pnf 8275  df-mnf 8276  df-xr 8277  df-ltxr 8278  df-le 8279  df-sub 8411  df-neg 8412  df-reap 8814  df-ap 8821  df-div 8912  df-inn 9203  df-2 9261  df-3 9262  df-4 9263  df-n0 9462  df-z 9541  df-uz 9817  df-q 9915  df-rp 9950  df-fz 10306  df-fzo 10440  df-seqfrec 10773  df-exp 10864  df-ihash 11101  df-cj 11482  df-re 11483  df-im 11484  df-rsqrt 11638  df-abs 11639  df-clim 11919  df-proddc 12192
This theorem is referenced by:  fprodcom  12268  fprod0diagfz  12269
  Copyright terms: Public domain W3C validator