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

Theorem prodeq2ii 13731
Description: Equality theorem for product, with the class expressions 
B and  C guarded by  _I to be always sets. (Contributed by Scott Fenton, 4-Dec-2017.)
Assertion
Ref Expression
prodeq2ii  |-  ( A. k  e.  A  (  _I  `  B )  =  (  _I  `  C
)  ->  prod_ k  e.  A  B  =  prod_ k  e.  A  C )
Distinct variable group:    A, k
Allowed substitution hints:    B( k)    C( k)

Proof of Theorem prodeq2ii
Dummy variables  f  m  n  x  y are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 eluzelz 11115 . . . . . . . . . . . . 13  |-  ( n  e.  ( ZZ>= `  m
)  ->  n  e.  ZZ )
21adantl 466 . . . . . . . . . . . 12  |-  ( ( A. k  e.  A  (  _I  `  B )  =  (  _I  `  C )  /\  n  e.  ( ZZ>= `  m )
)  ->  n  e.  ZZ )
3 nfra1 2838 . . . . . . . . . . . . . . . . 17  |-  F/ k A. k  e.  A  (  _I  `  B )  =  (  _I  `  C )
4 rsp 2823 . . . . . . . . . . . . . . . . . . . . 21  |-  ( A. k  e.  A  (  _I  `  B )  =  (  _I  `  C
)  ->  ( k  e.  A  ->  (  _I 
`  B )  =  (  _I  `  C
) ) )
54adantr 465 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( A. k  e.  A  (  _I  `  B )  =  (  _I  `  C )  /\  k  e.  ZZ )  ->  (
k  e.  A  -> 
(  _I  `  B
)  =  (  _I 
`  C ) ) )
6 ifeq1 3948 . . . . . . . . . . . . . . . . . . . 20  |-  ( (  _I  `  B )  =  (  _I  `  C )  ->  if ( k  e.  A ,  (  _I  `  B
) ,  (  _I 
`  1 ) )  =  if ( k  e.  A ,  (  _I  `  C ) ,  (  _I  ` 
1 ) ) )
75, 6syl6 33 . . . . . . . . . . . . . . . . . . 19  |-  ( ( A. k  e.  A  (  _I  `  B )  =  (  _I  `  C )  /\  k  e.  ZZ )  ->  (
k  e.  A  ->  if ( k  e.  A ,  (  _I  `  B
) ,  (  _I 
`  1 ) )  =  if ( k  e.  A ,  (  _I  `  C ) ,  (  _I  ` 
1 ) ) ) )
8 iffalse 3953 . . . . . . . . . . . . . . . . . . . 20  |-  ( -.  k  e.  A  ->  if ( k  e.  A ,  (  _I  `  B
) ,  (  _I 
`  1 ) )  =  (  _I  ` 
1 ) )
9 iffalse 3953 . . . . . . . . . . . . . . . . . . . 20  |-  ( -.  k  e.  A  ->  if ( k  e.  A ,  (  _I  `  C
) ,  (  _I 
`  1 ) )  =  (  _I  ` 
1 ) )
108, 9eqtr4d 2501 . . . . . . . . . . . . . . . . . . 19  |-  ( -.  k  e.  A  ->  if ( k  e.  A ,  (  _I  `  B
) ,  (  _I 
`  1 ) )  =  if ( k  e.  A ,  (  _I  `  C ) ,  (  _I  ` 
1 ) ) )
117, 10pm2.61d1 159 . . . . . . . . . . . . . . . . . 18  |-  ( ( A. k  e.  A  (  _I  `  B )  =  (  _I  `  C )  /\  k  e.  ZZ )  ->  if ( k  e.  A ,  (  _I  `  B
) ,  (  _I 
`  1 ) )  =  if ( k  e.  A ,  (  _I  `  C ) ,  (  _I  ` 
1 ) ) )
12 fvif 5883 . . . . . . . . . . . . . . . . . 18  |-  (  _I 
`  if ( k  e.  A ,  B ,  1 ) )  =  if ( k  e.  A ,  (  _I  `  B ) ,  (  _I  ` 
1 ) )
13 fvif 5883 . . . . . . . . . . . . . . . . . 18  |-  (  _I 
`  if ( k  e.  A ,  C ,  1 ) )  =  if ( k  e.  A ,  (  _I  `  C ) ,  (  _I  ` 
1 ) )
1411, 12, 133eqtr4g 2523 . . . . . . . . . . . . . . . . 17  |-  ( ( A. k  e.  A  (  _I  `  B )  =  (  _I  `  C )  /\  k  e.  ZZ )  ->  (  _I  `  if ( k  e.  A ,  B ,  1 ) )  =  (  _I  `  if ( k  e.  A ,  C ,  1 ) ) )
153, 14mpteq2da 4542 . . . . . . . . . . . . . . . 16  |-  ( A. k  e.  A  (  _I  `  B )  =  (  _I  `  C
)  ->  ( k  e.  ZZ  |->  (  _I  `  if ( k  e.  A ,  B ,  1 ) ) )  =  ( k  e.  ZZ  |->  (  _I  `  if ( k  e.  A ,  C ,  1 ) ) ) )
1615adantr 465 . . . . . . . . . . . . . . 15  |-  ( ( A. k  e.  A  (  _I  `  B )  =  (  _I  `  C )  /\  x  e.  ( ZZ>= `  n )
)  ->  ( k  e.  ZZ  |->  (  _I  `  if ( k  e.  A ,  B ,  1 ) ) )  =  ( k  e.  ZZ  |->  (  _I  `  if ( k  e.  A ,  C ,  1 ) ) ) )
1716fveq1d 5874 . . . . . . . . . . . . . 14  |-  ( ( A. k  e.  A  (  _I  `  B )  =  (  _I  `  C )  /\  x  e.  ( ZZ>= `  n )
)  ->  ( (
k  e.  ZZ  |->  (  _I  `  if ( k  e.  A ,  B ,  1 ) ) ) `  x
)  =  ( ( k  e.  ZZ  |->  (  _I  `  if ( k  e.  A ,  C ,  1 ) ) ) `  x
) )
1817adantlr 714 . . . . . . . . . . . . 13  |-  ( ( ( A. k  e.  A  (  _I  `  B )  =  (  _I  `  C )  /\  n  e.  (
ZZ>= `  m ) )  /\  x  e.  (
ZZ>= `  n ) )  ->  ( ( k  e.  ZZ  |->  (  _I 
`  if ( k  e.  A ,  B ,  1 ) ) ) `  x )  =  ( ( k  e.  ZZ  |->  (  _I 
`  if ( k  e.  A ,  C ,  1 ) ) ) `  x ) )
19 eqid 2457 . . . . . . . . . . . . . 14  |-  ( k  e.  ZZ  |->  if ( k  e.  A ,  B ,  1 ) )  =  ( k  e.  ZZ  |->  if ( k  e.  A ,  B ,  1 ) )
20 eqid 2457 . . . . . . . . . . . . . 14  |-  ( k  e.  ZZ  |->  (  _I 
`  if ( k  e.  A ,  B ,  1 ) ) )  =  ( k  e.  ZZ  |->  (  _I 
`  if ( k  e.  A ,  B ,  1 ) ) )
2119, 20fvmptex 5967 . . . . . . . . . . . . 13  |-  ( ( k  e.  ZZ  |->  if ( k  e.  A ,  B ,  1 ) ) `  x )  =  ( ( k  e.  ZZ  |->  (  _I 
`  if ( k  e.  A ,  B ,  1 ) ) ) `  x )
22 eqid 2457 . . . . . . . . . . . . . 14  |-  ( k  e.  ZZ  |->  if ( k  e.  A ,  C ,  1 ) )  =  ( k  e.  ZZ  |->  if ( k  e.  A ,  C ,  1 ) )
23 eqid 2457 . . . . . . . . . . . . . 14  |-  ( k  e.  ZZ  |->  (  _I 
`  if ( k  e.  A ,  C ,  1 ) ) )  =  ( k  e.  ZZ  |->  (  _I 
`  if ( k  e.  A ,  C ,  1 ) ) )
2422, 23fvmptex 5967 . . . . . . . . . . . . 13  |-  ( ( k  e.  ZZ  |->  if ( k  e.  A ,  C ,  1 ) ) `  x )  =  ( ( k  e.  ZZ  |->  (  _I 
`  if ( k  e.  A ,  C ,  1 ) ) ) `  x )
2518, 21, 243eqtr4g 2523 . . . . . . . . . . . 12  |-  ( ( ( A. k  e.  A  (  _I  `  B )  =  (  _I  `  C )  /\  n  e.  (
ZZ>= `  m ) )  /\  x  e.  (
ZZ>= `  n ) )  ->  ( ( k  e.  ZZ  |->  if ( k  e.  A ,  B ,  1 ) ) `  x )  =  ( ( k  e.  ZZ  |->  if ( k  e.  A ,  C ,  1 ) ) `  x ) )
262, 25seqfeq 12134 . . . . . . . . . . 11  |-  ( ( A. k  e.  A  (  _I  `  B )  =  (  _I  `  C )  /\  n  e.  ( ZZ>= `  m )
)  ->  seq n
(  x.  ,  ( k  e.  ZZ  |->  if ( k  e.  A ,  B ,  1 ) ) )  =  seq n (  x.  , 
( k  e.  ZZ  |->  if ( k  e.  A ,  C ,  1 ) ) ) )
2726breq1d 4466 . . . . . . . . . 10  |-  ( ( A. k  e.  A  (  _I  `  B )  =  (  _I  `  C )  /\  n  e.  ( ZZ>= `  m )
)  ->  (  seq n (  x.  , 
( k  e.  ZZ  |->  if ( k  e.  A ,  B ,  1 ) ) )  ~~>  y  <->  seq n
(  x.  ,  ( k  e.  ZZ  |->  if ( k  e.  A ,  C ,  1 ) ) )  ~~>  y ) )
2827anbi2d 703 . . . . . . . . 9  |-  ( ( A. k  e.  A  (  _I  `  B )  =  (  _I  `  C )  /\  n  e.  ( ZZ>= `  m )
)  ->  ( (
y  =/=  0  /\ 
seq n (  x.  ,  ( k  e.  ZZ  |->  if ( k  e.  A ,  B ,  1 ) ) )  ~~>  y )  <->  ( y  =/=  0  /\  seq n
(  x.  ,  ( k  e.  ZZ  |->  if ( k  e.  A ,  C ,  1 ) ) )  ~~>  y ) ) )
2928exbidv 1715 . . . . . . . 8  |-  ( ( A. k  e.  A  (  _I  `  B )  =  (  _I  `  C )  /\  n  e.  ( ZZ>= `  m )
)  ->  ( E. y ( y  =/=  0  /\  seq n
(  x.  ,  ( k  e.  ZZ  |->  if ( k  e.  A ,  B ,  1 ) ) )  ~~>  y )  <->  E. y ( y  =/=  0  /\  seq n
(  x.  ,  ( k  e.  ZZ  |->  if ( k  e.  A ,  C ,  1 ) ) )  ~~>  y ) ) )
3029rexbidva 2965 . . . . . . 7  |-  ( A. k  e.  A  (  _I  `  B )  =  (  _I  `  C
)  ->  ( E. n  e.  ( ZZ>= `  m ) E. y
( y  =/=  0  /\  seq n (  x.  ,  ( k  e.  ZZ  |->  if ( k  e.  A ,  B ,  1 ) ) )  ~~>  y )  <->  E. n  e.  ( ZZ>= `  m ) E. y ( y  =/=  0  /\  seq n
(  x.  ,  ( k  e.  ZZ  |->  if ( k  e.  A ,  C ,  1 ) ) )  ~~>  y ) ) )
3130adantr 465 . . . . . 6  |-  ( ( A. k  e.  A  (  _I  `  B )  =  (  _I  `  C )  /\  m  e.  ZZ )  ->  ( E. n  e.  ( ZZ>=
`  m ) E. y ( y  =/=  0  /\  seq n
(  x.  ,  ( k  e.  ZZ  |->  if ( k  e.  A ,  B ,  1 ) ) )  ~~>  y )  <->  E. n  e.  ( ZZ>=
`  m ) E. y ( y  =/=  0  /\  seq n
(  x.  ,  ( k  e.  ZZ  |->  if ( k  e.  A ,  C ,  1 ) ) )  ~~>  y ) ) )
32 simpr 461 . . . . . . . 8  |-  ( ( A. k  e.  A  (  _I  `  B )  =  (  _I  `  C )  /\  m  e.  ZZ )  ->  m  e.  ZZ )
3315adantr 465 . . . . . . . . . . 11  |-  ( ( A. k  e.  A  (  _I  `  B )  =  (  _I  `  C )  /\  x  e.  ( ZZ>= `  m )
)  ->  ( k  e.  ZZ  |->  (  _I  `  if ( k  e.  A ,  B ,  1 ) ) )  =  ( k  e.  ZZ  |->  (  _I  `  if ( k  e.  A ,  C ,  1 ) ) ) )
3433fveq1d 5874 . . . . . . . . . 10  |-  ( ( A. k  e.  A  (  _I  `  B )  =  (  _I  `  C )  /\  x  e.  ( ZZ>= `  m )
)  ->  ( (
k  e.  ZZ  |->  (  _I  `  if ( k  e.  A ,  B ,  1 ) ) ) `  x
)  =  ( ( k  e.  ZZ  |->  (  _I  `  if ( k  e.  A ,  C ,  1 ) ) ) `  x
) )
3534, 21, 243eqtr4g 2523 . . . . . . . . 9  |-  ( ( A. k  e.  A  (  _I  `  B )  =  (  _I  `  C )  /\  x  e.  ( ZZ>= `  m )
)  ->  ( (
k  e.  ZZ  |->  if ( k  e.  A ,  B ,  1 ) ) `  x )  =  ( ( k  e.  ZZ  |->  if ( k  e.  A ,  C ,  1 ) ) `  x ) )
3635adantlr 714 . . . . . . . 8  |-  ( ( ( A. k  e.  A  (  _I  `  B )  =  (  _I  `  C )  /\  m  e.  ZZ )  /\  x  e.  (
ZZ>= `  m ) )  ->  ( ( k  e.  ZZ  |->  if ( k  e.  A ,  B ,  1 ) ) `  x )  =  ( ( k  e.  ZZ  |->  if ( k  e.  A ,  C ,  1 ) ) `  x ) )
3732, 36seqfeq 12134 . . . . . . 7  |-  ( ( A. k  e.  A  (  _I  `  B )  =  (  _I  `  C )  /\  m  e.  ZZ )  ->  seq m (  x.  , 
( k  e.  ZZ  |->  if ( k  e.  A ,  B ,  1 ) ) )  =  seq m (  x.  , 
( k  e.  ZZ  |->  if ( k  e.  A ,  C ,  1 ) ) ) )
3837breq1d 4466 . . . . . 6  |-  ( ( A. k  e.  A  (  _I  `  B )  =  (  _I  `  C )  /\  m  e.  ZZ )  ->  (  seq m (  x.  , 
( k  e.  ZZ  |->  if ( k  e.  A ,  B ,  1 ) ) )  ~~>  x  <->  seq m
(  x.  ,  ( k  e.  ZZ  |->  if ( k  e.  A ,  C ,  1 ) ) )  ~~>  x ) )
3931, 383anbi23d 1302 . . . . 5  |-  ( ( A. k  e.  A  (  _I  `  B )  =  (  _I  `  C )  /\  m  e.  ZZ )  ->  (
( A  C_  ( ZZ>=
`  m )  /\  E. n  e.  ( ZZ>= `  m ) E. y
( y  =/=  0  /\  seq n (  x.  ,  ( k  e.  ZZ  |->  if ( k  e.  A ,  B ,  1 ) ) )  ~~>  y )  /\  seq m (  x.  , 
( k  e.  ZZ  |->  if ( k  e.  A ,  B ,  1 ) ) )  ~~>  x )  <-> 
( A  C_  ( ZZ>=
`  m )  /\  E. n  e.  ( ZZ>= `  m ) E. y
( y  =/=  0  /\  seq n (  x.  ,  ( k  e.  ZZ  |->  if ( k  e.  A ,  C ,  1 ) ) )  ~~>  y )  /\  seq m (  x.  , 
( k  e.  ZZ  |->  if ( k  e.  A ,  C ,  1 ) ) )  ~~>  x ) ) )
4039rexbidva 2965 . . . 4  |-  ( A. k  e.  A  (  _I  `  B )  =  (  _I  `  C
)  ->  ( E. m  e.  ZZ  ( A  C_  ( ZZ>= `  m
)  /\  E. n  e.  ( ZZ>= `  m ) E. y ( y  =/=  0  /\  seq n
(  x.  ,  ( k  e.  ZZ  |->  if ( k  e.  A ,  B ,  1 ) ) )  ~~>  y )  /\  seq m (  x.  ,  ( k  e.  ZZ  |->  if ( k  e.  A ,  B ,  1 ) ) )  ~~>  x )  <->  E. m  e.  ZZ  ( A  C_  ( ZZ>= `  m )  /\  E. n  e.  ( ZZ>= `  m ) E. y
( y  =/=  0  /\  seq n (  x.  ,  ( k  e.  ZZ  |->  if ( k  e.  A ,  C ,  1 ) ) )  ~~>  y )  /\  seq m (  x.  , 
( k  e.  ZZ  |->  if ( k  e.  A ,  C ,  1 ) ) )  ~~>  x ) ) )
41 simplr 755 . . . . . . . . . 10  |-  ( ( ( A. k  e.  A  (  _I  `  B )  =  (  _I  `  C )  /\  m  e.  NN )  /\  f : ( 1 ... m ) -1-1-onto-> A )  ->  m  e.  NN )
42 nnuz 11141 . . . . . . . . . 10  |-  NN  =  ( ZZ>= `  1 )
4341, 42syl6eleq 2555 . . . . . . . . 9  |-  ( ( ( A. k  e.  A  (  _I  `  B )  =  (  _I  `  C )  /\  m  e.  NN )  /\  f : ( 1 ... m ) -1-1-onto-> A )  ->  m  e.  ( ZZ>= `  1 )
)
44 f1of 5822 . . . . . . . . . . . . . 14  |-  ( f : ( 1 ... m ) -1-1-onto-> A  ->  f :
( 1 ... m
) --> A )
4544ad2antlr 726 . . . . . . . . . . . . 13  |-  ( ( ( ( A. k  e.  A  (  _I  `  B )  =  (  _I  `  C )  /\  m  e.  NN )  /\  f : ( 1 ... m ) -1-1-onto-> A )  /\  x  e.  ( 1 ... m
) )  ->  f : ( 1 ... m ) --> A )
46 ffvelrn 6030 . . . . . . . . . . . . 13  |-  ( ( f : ( 1 ... m ) --> A  /\  x  e.  ( 1 ... m ) )  ->  ( f `  x )  e.  A
)
4745, 46sylancom 667 . . . . . . . . . . . 12  |-  ( ( ( ( A. k  e.  A  (  _I  `  B )  =  (  _I  `  C )  /\  m  e.  NN )  /\  f : ( 1 ... m ) -1-1-onto-> A )  /\  x  e.  ( 1 ... m
) )  ->  (
f `  x )  e.  A )
48 simplll 759 . . . . . . . . . . . 12  |-  ( ( ( ( A. k  e.  A  (  _I  `  B )  =  (  _I  `  C )  /\  m  e.  NN )  /\  f : ( 1 ... m ) -1-1-onto-> A )  /\  x  e.  ( 1 ... m
) )  ->  A. k  e.  A  (  _I  `  B )  =  (  _I  `  C ) )
49 nfcsb1v 3446 . . . . . . . . . . . . . 14  |-  F/_ k [_ ( f `  x
)  /  k ]_ (  _I  `  B )
50 nfcsb1v 3446 . . . . . . . . . . . . . 14  |-  F/_ k [_ ( f `  x
)  /  k ]_ (  _I  `  C )
5149, 50nfeq 2630 . . . . . . . . . . . . 13  |-  F/ k
[_ ( f `  x )  /  k ]_ (  _I  `  B
)  =  [_ (
f `  x )  /  k ]_ (  _I  `  C )
52 csbeq1a 3439 . . . . . . . . . . . . . 14  |-  ( k  =  ( f `  x )  ->  (  _I  `  B )  = 
[_ ( f `  x )  /  k ]_ (  _I  `  B
) )
53 csbeq1a 3439 . . . . . . . . . . . . . 14  |-  ( k  =  ( f `  x )  ->  (  _I  `  C )  = 
[_ ( f `  x )  /  k ]_ (  _I  `  C
) )
5452, 53eqeq12d 2479 . . . . . . . . . . . . 13  |-  ( k  =  ( f `  x )  ->  (
(  _I  `  B
)  =  (  _I 
`  C )  <->  [_ ( f `
 x )  / 
k ]_ (  _I  `  B )  =  [_ ( f `  x
)  /  k ]_ (  _I  `  C ) ) )
5551, 54rspc 3204 . . . . . . . . . . . 12  |-  ( ( f `  x )  e.  A  ->  ( A. k  e.  A  (  _I  `  B )  =  (  _I  `  C )  ->  [_ (
f `  x )  /  k ]_ (  _I  `  B )  = 
[_ ( f `  x )  /  k ]_ (  _I  `  C
) ) )
5647, 48, 55sylc 60 . . . . . . . . . . 11  |-  ( ( ( ( A. k  e.  A  (  _I  `  B )  =  (  _I  `  C )  /\  m  e.  NN )  /\  f : ( 1 ... m ) -1-1-onto-> A )  /\  x  e.  ( 1 ... m
) )  ->  [_ (
f `  x )  /  k ]_ (  _I  `  B )  = 
[_ ( f `  x )  /  k ]_ (  _I  `  C
) )
57 fvex 5882 . . . . . . . . . . . 12  |-  ( f `
 x )  e. 
_V
58 csbfv2g 5908 . . . . . . . . . . . 12  |-  ( ( f `  x )  e.  _V  ->  [_ (
f `  x )  /  k ]_ (  _I  `  B )  =  (  _I  `  [_ (
f `  x )  /  k ]_ B
) )
5957, 58ax-mp 5 . . . . . . . . . . 11  |-  [_ (
f `  x )  /  k ]_ (  _I  `  B )  =  (  _I  `  [_ (
f `  x )  /  k ]_ B
)
60 csbfv2g 5908 . . . . . . . . . . . 12  |-  ( ( f `  x )  e.  _V  ->  [_ (
f `  x )  /  k ]_ (  _I  `  C )  =  (  _I  `  [_ (
f `  x )  /  k ]_ C
) )
6157, 60ax-mp 5 . . . . . . . . . . 11  |-  [_ (
f `  x )  /  k ]_ (  _I  `  C )  =  (  _I  `  [_ (
f `  x )  /  k ]_ C
)
6256, 59, 613eqtr3g 2521 . . . . . . . . . 10  |-  ( ( ( ( A. k  e.  A  (  _I  `  B )  =  (  _I  `  C )  /\  m  e.  NN )  /\  f : ( 1 ... m ) -1-1-onto-> A )  /\  x  e.  ( 1 ... m
) )  ->  (  _I  `  [_ ( f `
 x )  / 
k ]_ B )  =  (  _I  `  [_ (
f `  x )  /  k ]_ C
) )
63 elfznn 11739 . . . . . . . . . . . 12  |-  ( x  e.  ( 1 ... m )  ->  x  e.  NN )
6463adantl 466 . . . . . . . . . . 11  |-  ( ( ( ( A. k  e.  A  (  _I  `  B )  =  (  _I  `  C )  /\  m  e.  NN )  /\  f : ( 1 ... m ) -1-1-onto-> A )  /\  x  e.  ( 1 ... m
) )  ->  x  e.  NN )
65 fveq2 5872 . . . . . . . . . . . . 13  |-  ( n  =  x  ->  (
f `  n )  =  ( f `  x ) )
6665csbeq1d 3437 . . . . . . . . . . . 12  |-  ( n  =  x  ->  [_ (
f `  n )  /  k ]_ B  =  [_ ( f `  x )  /  k ]_ B )
67 eqid 2457 . . . . . . . . . . . 12  |-  ( n  e.  NN  |->  [_ (
f `  n )  /  k ]_ B
)  =  ( n  e.  NN  |->  [_ (
f `  n )  /  k ]_ B
)
6866, 67fvmpti 5955 . . . . . . . . . . 11  |-  ( x  e.  NN  ->  (
( n  e.  NN  |->  [_ ( f `  n
)  /  k ]_ B ) `  x
)  =  (  _I 
`  [_ ( f `  x )  /  k ]_ B ) )
6964, 68syl 16 . . . . . . . . . 10  |-  ( ( ( ( A. k  e.  A  (  _I  `  B )  =  (  _I  `  C )  /\  m  e.  NN )  /\  f : ( 1 ... m ) -1-1-onto-> A )  /\  x  e.  ( 1 ... m
) )  ->  (
( n  e.  NN  |->  [_ ( f `  n
)  /  k ]_ B ) `  x
)  =  (  _I 
`  [_ ( f `  x )  /  k ]_ B ) )
7065csbeq1d 3437 . . . . . . . . . . . 12  |-  ( n  =  x  ->  [_ (
f `  n )  /  k ]_ C  =  [_ ( f `  x )  /  k ]_ C )
71 eqid 2457 . . . . . . . . . . . 12  |-  ( n  e.  NN  |->  [_ (
f `  n )  /  k ]_ C
)  =  ( n  e.  NN  |->  [_ (
f `  n )  /  k ]_ C
)
7270, 71fvmpti 5955 . . . . . . . . . . 11  |-  ( x  e.  NN  ->  (
( n  e.  NN  |->  [_ ( f `  n
)  /  k ]_ C ) `  x
)  =  (  _I 
`  [_ ( f `  x )  /  k ]_ C ) )
7364, 72syl 16 . . . . . . . . . 10  |-  ( ( ( ( A. k  e.  A  (  _I  `  B )  =  (  _I  `  C )  /\  m  e.  NN )  /\  f : ( 1 ... m ) -1-1-onto-> A )  /\  x  e.  ( 1 ... m
) )  ->  (
( n  e.  NN  |->  [_ ( f `  n
)  /  k ]_ C ) `  x
)  =  (  _I 
`  [_ ( f `  x )  /  k ]_ C ) )
7462, 69, 733eqtr4d 2508 . . . . . . . . 9  |-  ( ( ( ( A. k  e.  A  (  _I  `  B )  =  (  _I  `  C )  /\  m  e.  NN )  /\  f : ( 1 ... m ) -1-1-onto-> A )  /\  x  e.  ( 1 ... m
) )  ->  (
( n  e.  NN  |->  [_ ( f `  n
)  /  k ]_ B ) `  x
)  =  ( ( n  e.  NN  |->  [_ ( f `  n
)  /  k ]_ C ) `  x
) )
7543, 74seqfveq 12133 . . . . . . . 8  |-  ( ( ( A. k  e.  A  (  _I  `  B )  =  (  _I  `  C )  /\  m  e.  NN )  /\  f : ( 1 ... m ) -1-1-onto-> A )  ->  (  seq 1 (  x.  , 
( n  e.  NN  |->  [_ ( f `  n
)  /  k ]_ B ) ) `  m )  =  (  seq 1 (  x.  ,  ( n  e.  NN  |->  [_ ( f `  n )  /  k ]_ C ) ) `  m ) )
7675eqeq2d 2471 . . . . . . 7  |-  ( ( ( A. k  e.  A  (  _I  `  B )  =  (  _I  `  C )  /\  m  e.  NN )  /\  f : ( 1 ... m ) -1-1-onto-> A )  ->  ( x  =  (  seq 1
(  x.  ,  ( n  e.  NN  |->  [_ ( f `  n
)  /  k ]_ B ) ) `  m )  <->  x  =  (  seq 1 (  x.  ,  ( n  e.  NN  |->  [_ ( f `  n )  /  k ]_ C ) ) `  m ) ) )
7776pm5.32da 641 . . . . . 6  |-  ( ( A. k  e.  A  (  _I  `  B )  =  (  _I  `  C )  /\  m  e.  NN )  ->  (
( f : ( 1 ... m ) -1-1-onto-> A  /\  x  =  (  seq 1 (  x.  ,  ( n  e.  NN  |->  [_ ( f `  n )  /  k ]_ B ) ) `  m ) )  <->  ( f : ( 1 ... m ) -1-1-onto-> A  /\  x  =  (  seq 1 (  x.  ,  ( n  e.  NN  |->  [_ (
f `  n )  /  k ]_ C
) ) `  m
) ) ) )
7877exbidv 1715 . . . . 5  |-  ( ( A. k  e.  A  (  _I  `  B )  =  (  _I  `  C )  /\  m  e.  NN )  ->  ( E. f ( f : ( 1 ... m
)
-1-1-onto-> A  /\  x  =  (  seq 1 (  x.  ,  ( n  e.  NN  |->  [_ ( f `  n )  /  k ]_ B ) ) `  m ) )  <->  E. f
( f : ( 1 ... m ) -1-1-onto-> A  /\  x  =  (  seq 1 (  x.  ,  ( n  e.  NN  |->  [_ ( f `  n )  /  k ]_ C ) ) `  m ) ) ) )
7978rexbidva 2965 . . . 4  |-  ( A. k  e.  A  (  _I  `  B )  =  (  _I  `  C
)  ->  ( E. m  e.  NN  E. f
( f : ( 1 ... m ) -1-1-onto-> A  /\  x  =  (  seq 1 (  x.  ,  ( n  e.  NN  |->  [_ ( f `  n )  /  k ]_ B ) ) `  m ) )  <->  E. m  e.  NN  E. f ( f : ( 1 ... m ) -1-1-onto-> A  /\  x  =  (  seq 1 (  x.  , 
( n  e.  NN  |->  [_ ( f `  n
)  /  k ]_ C ) ) `  m ) ) ) )
8040, 79orbi12d 709 . . 3  |-  ( A. k  e.  A  (  _I  `  B )  =  (  _I  `  C
)  ->  ( ( E. m  e.  ZZ  ( A  C_  ( ZZ>= `  m )  /\  E. n  e.  ( ZZ>= `  m ) E. y
( y  =/=  0  /\  seq n (  x.  ,  ( k  e.  ZZ  |->  if ( k  e.  A ,  B ,  1 ) ) )  ~~>  y )  /\  seq m (  x.  , 
( k  e.  ZZ  |->  if ( k  e.  A ,  B ,  1 ) ) )  ~~>  x )  \/  E. m  e.  NN  E. f ( f : ( 1 ... m ) -1-1-onto-> A  /\  x  =  (  seq 1 (  x.  , 
( n  e.  NN  |->  [_ ( f `  n
)  /  k ]_ B ) ) `  m ) ) )  <-> 
( E. m  e.  ZZ  ( A  C_  ( ZZ>= `  m )  /\  E. n  e.  (
ZZ>= `  m ) E. y ( y  =/=  0  /\  seq n
(  x.  ,  ( k  e.  ZZ  |->  if ( k  e.  A ,  C ,  1 ) ) )  ~~>  y )  /\  seq m (  x.  ,  ( k  e.  ZZ  |->  if ( k  e.  A ,  C ,  1 ) ) )  ~~>  x )  \/  E. m  e.  NN  E. f ( f : ( 1 ... m ) -1-1-onto-> A  /\  x  =  (  seq 1 (  x.  , 
( n  e.  NN  |->  [_ ( f `  n
)  /  k ]_ C ) ) `  m ) ) ) ) )
8180iotabidv 5578 . 2  |-  ( A. k  e.  A  (  _I  `  B )  =  (  _I  `  C
)  ->  ( iota x ( E. m  e.  ZZ  ( A  C_  ( ZZ>= `  m )  /\  E. n  e.  (
ZZ>= `  m ) E. y ( y  =/=  0  /\  seq n
(  x.  ,  ( k  e.  ZZ  |->  if ( k  e.  A ,  B ,  1 ) ) )  ~~>  y )  /\  seq m (  x.  ,  ( k  e.  ZZ  |->  if ( k  e.  A ,  B ,  1 ) ) )  ~~>  x )  \/  E. m  e.  NN  E. f ( f : ( 1 ... m ) -1-1-onto-> A  /\  x  =  (  seq 1 (  x.  , 
( n  e.  NN  |->  [_ ( f `  n
)  /  k ]_ B ) ) `  m ) ) ) )  =  ( iota
x ( E. m  e.  ZZ  ( A  C_  ( ZZ>= `  m )  /\  E. n  e.  (
ZZ>= `  m ) E. y ( y  =/=  0  /\  seq n
(  x.  ,  ( k  e.  ZZ  |->  if ( k  e.  A ,  C ,  1 ) ) )  ~~>  y )  /\  seq m (  x.  ,  ( k  e.  ZZ  |->  if ( k  e.  A ,  C ,  1 ) ) )  ~~>  x )  \/  E. m  e.  NN  E. f ( f : ( 1 ... m ) -1-1-onto-> A  /\  x  =  (  seq 1 (  x.  , 
( n  e.  NN  |->  [_ ( f `  n
)  /  k ]_ C ) ) `  m ) ) ) ) )
82 df-prod 13724 . 2  |-  prod_ k  e.  A  B  =  ( iota x ( E. m  e.  ZZ  ( A  C_  ( ZZ>= `  m
)  /\  E. n  e.  ( ZZ>= `  m ) E. y ( y  =/=  0  /\  seq n
(  x.  ,  ( k  e.  ZZ  |->  if ( k  e.  A ,  B ,  1 ) ) )  ~~>  y )  /\  seq m (  x.  ,  ( k  e.  ZZ  |->  if ( k  e.  A ,  B ,  1 ) ) )  ~~>  x )  \/  E. m  e.  NN  E. f ( f : ( 1 ... m ) -1-1-onto-> A  /\  x  =  (  seq 1 (  x.  , 
( n  e.  NN  |->  [_ ( f `  n
)  /  k ]_ B ) ) `  m ) ) ) )
83 df-prod 13724 . 2  |-  prod_ k  e.  A  C  =  ( iota x ( E. m  e.  ZZ  ( A  C_  ( ZZ>= `  m
)  /\  E. n  e.  ( ZZ>= `  m ) E. y ( y  =/=  0  /\  seq n
(  x.  ,  ( k  e.  ZZ  |->  if ( k  e.  A ,  C ,  1 ) ) )  ~~>  y )  /\  seq m (  x.  ,  ( k  e.  ZZ  |->  if ( k  e.  A ,  C ,  1 ) ) )  ~~>  x )  \/  E. m  e.  NN  E. f ( f : ( 1 ... m ) -1-1-onto-> A  /\  x  =  (  seq 1 (  x.  , 
( n  e.  NN  |->  [_ ( f `  n
)  /  k ]_ C ) ) `  m ) ) ) )
8481, 82, 833eqtr4g 2523 1  |-  ( A. k  e.  A  (  _I  `  B )  =  (  _I  `  C
)  ->  prod_ k  e.  A  B  =  prod_ k  e.  A  C )
Colors of variables: wff setvar class
Syntax hints:   -. wn 3    -> wi 4    <-> wb 184    \/ wo 368    /\ wa 369    /\ w3a 973    = wceq 1395   E.wex 1613    e. wcel 1819    =/= wne 2652   A.wral 2807   E.wrex 2808   _Vcvv 3109   [_csb 3430    C_ wss 3471   ifcif 3944   class class class wbr 4456    |-> cmpt 4515    _I cid 4799   iotacio 5555   -->wf 5590   -1-1-onto->wf1o 5593   ` cfv 5594  (class class class)co 6296   0cc0 9509   1c1 9510    x. cmul 9514   NNcn 10556   ZZcz 10885   ZZ>=cuz 11106   ...cfz 11697    seqcseq 12109    ~~> cli 13318   prod_cprod 13723
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1619  ax-4 1632  ax-5 1705  ax-6 1748  ax-7 1791  ax-8 1821  ax-9 1823  ax-10 1838  ax-11 1843  ax-12 1855  ax-13 2000  ax-ext 2435  ax-sep 4578  ax-nul 4586  ax-pow 4634  ax-pr 4695  ax-un 6591  ax-cnex 9565  ax-resscn 9566  ax-1cn 9567  ax-icn 9568  ax-addcl 9569  ax-addrcl 9570  ax-mulcl 9571  ax-mulrcl 9572  ax-mulcom 9573  ax-addass 9574  ax-mulass 9575  ax-distr 9576  ax-i2m1 9577  ax-1ne0 9578  ax-1rid 9579  ax-rnegex 9580  ax-rrecex 9581  ax-cnre 9582  ax-pre-lttri 9583  ax-pre-lttrn 9584  ax-pre-ltadd 9585  ax-pre-mulgt0 9586
This theorem depends on definitions:  df-bi 185  df-or 370  df-an 371  df-3or 974  df-3an 975  df-tru 1398  df-fal 1401  df-ex 1614  df-nf 1618  df-sb 1741  df-eu 2287  df-mo 2288  df-clab 2443  df-cleq 2449  df-clel 2452  df-nfc 2607  df-ne 2654  df-nel 2655  df-ral 2812  df-rex 2813  df-reu 2814  df-rab 2816  df-v 3111  df-sbc 3328  df-csb 3431  df-dif 3474  df-un 3476  df-in 3478  df-ss 3485  df-pss 3487  df-nul 3794  df-if 3945  df-pw 4017  df-sn 4033  df-pr 4035  df-tp 4037  df-op 4039  df-uni 4252  df-iun 4334  df-br 4457  df-opab 4516  df-mpt 4517  df-tr 4551  df-eprel 4800  df-id 4804  df-po 4809  df-so 4810  df-fr 4847  df-we 4849  df-ord 4890  df-on 4891  df-lim 4892  df-suc 4893  df-xp 5014  df-rel 5015  df-cnv 5016  df-co 5017  df-dm 5018  df-rn 5019  df-res 5020  df-ima 5021  df-iota 5557  df-fun 5596  df-fn 5597  df-f 5598  df-f1 5599  df-fo 5600  df-f1o 5601  df-fv 5602  df-riota 6258  df-ov 6299  df-oprab 6300  df-mpt2 6301  df-om 6700  df-1st 6799  df-2nd 6800  df-recs 7060  df-rdg 7094  df-er 7329  df-en 7536  df-dom 7537  df-sdom 7538  df-pnf 9647  df-mnf 9648  df-xr 9649  df-ltxr 9650  df-le 9651  df-sub 9826  df-neg 9827  df-nn 10557  df-n0 10817  df-z 10886  df-uz 11107  df-fz 11698  df-seq 12110  df-prod 13724
This theorem is referenced by:  prodeq2  13732  prod2id  13746
  Copyright terms: Public domain W3C validator