Users' Mathboxes Mathbox for Scott Fenton < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  prodeq1f Structured version   Unicode version

Theorem prodeq1f 27585
Description: Equality theorem for a product. (Contributed by Scott Fenton, 1-Dec-2017.)
Hypotheses
Ref Expression
prodeq1f.1  |-  F/_ k A
prodeq1f.2  |-  F/_ k B
Assertion
Ref Expression
prodeq1f  |-  ( A  =  B  ->  prod_ k  e.  A  C  = 
prod_ k  e.  B  C )

Proof of Theorem prodeq1f
Dummy variables  f  m  n  x  y are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 sseq1 3488 . . . . . 6  |-  ( A  =  B  ->  ( A  C_  ( ZZ>= `  m
)  <->  B  C_  ( ZZ>= `  m ) ) )
2 prodeq1f.1 . . . . . . . . . . . . 13  |-  F/_ k A
3 prodeq1f.2 . . . . . . . . . . . . 13  |-  F/_ k B
42, 3nfeq 2627 . . . . . . . . . . . 12  |-  F/ k  A  =  B
5 eleq2 2527 . . . . . . . . . . . . . 14  |-  ( A  =  B  ->  (
k  e.  A  <->  k  e.  B ) )
65ifbid 3922 . . . . . . . . . . . . 13  |-  ( A  =  B  ->  if ( k  e.  A ,  C ,  1 )  =  if ( k  e.  B ,  C ,  1 ) )
76adantr 465 . . . . . . . . . . . 12  |-  ( ( A  =  B  /\  k  e.  ZZ )  ->  if ( k  e.  A ,  C , 
1 )  =  if ( k  e.  B ,  C ,  1 ) )
84, 7mpteq2da 4488 . . . . . . . . . . 11  |-  ( A  =  B  ->  (
k  e.  ZZ  |->  if ( k  e.  A ,  C ,  1 ) )  =  ( k  e.  ZZ  |->  if ( k  e.  B ,  C ,  1 ) ) )
98seqeq3d 11934 . . . . . . . . . 10  |-  ( A  =  B  ->  seq n (  x.  , 
( k  e.  ZZ  |->  if ( k  e.  A ,  C ,  1 ) ) )  =  seq n (  x.  , 
( k  e.  ZZ  |->  if ( k  e.  B ,  C ,  1 ) ) ) )
109breq1d 4413 . . . . . . . . 9  |-  ( A  =  B  ->  (  seq n (  x.  , 
( k  e.  ZZ  |->  if ( k  e.  A ,  C ,  1 ) ) )  ~~>  y  <->  seq n
(  x.  ,  ( k  e.  ZZ  |->  if ( k  e.  B ,  C ,  1 ) ) )  ~~>  y ) )
1110anbi2d 703 . . . . . . . 8  |-  ( A  =  B  ->  (
( y  =/=  0  /\  seq n (  x.  ,  ( k  e.  ZZ  |->  if ( k  e.  A ,  C ,  1 ) ) )  ~~>  y )  <->  ( y  =/=  0  /\  seq n
(  x.  ,  ( k  e.  ZZ  |->  if ( k  e.  B ,  C ,  1 ) ) )  ~~>  y ) ) )
1211exbidv 1681 . . . . . . 7  |-  ( A  =  B  ->  ( E. y ( y  =/=  0  /\  seq n
(  x.  ,  ( k  e.  ZZ  |->  if ( k  e.  A ,  C ,  1 ) ) )  ~~>  y )  <->  E. y ( y  =/=  0  /\  seq n
(  x.  ,  ( k  e.  ZZ  |->  if ( k  e.  B ,  C ,  1 ) ) )  ~~>  y ) ) )
1312rexbidv 2868 . . . . . 6  |-  ( A  =  B  ->  ( E. n  e.  ( ZZ>=
`  m ) E. y ( y  =/=  0  /\  seq n
(  x.  ,  ( k  e.  ZZ  |->  if ( k  e.  A ,  C ,  1 ) ) )  ~~>  y )  <->  E. n  e.  ( ZZ>=
`  m ) E. y ( y  =/=  0  /\  seq n
(  x.  ,  ( k  e.  ZZ  |->  if ( k  e.  B ,  C ,  1 ) ) )  ~~>  y ) ) )
148seqeq3d 11934 . . . . . . 7  |-  ( A  =  B  ->  seq m (  x.  , 
( k  e.  ZZ  |->  if ( k  e.  A ,  C ,  1 ) ) )  =  seq m (  x.  , 
( k  e.  ZZ  |->  if ( k  e.  B ,  C ,  1 ) ) ) )
1514breq1d 4413 . . . . . 6  |-  ( A  =  B  ->  (  seq m (  x.  , 
( k  e.  ZZ  |->  if ( k  e.  A ,  C ,  1 ) ) )  ~~>  x  <->  seq m
(  x.  ,  ( k  e.  ZZ  |->  if ( k  e.  B ,  C ,  1 ) ) )  ~~>  x ) )
161, 13, 153anbi123d 1290 . . . . 5  |-  ( A  =  B  ->  (
( 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 )  <-> 
( B  C_  ( ZZ>=
`  m )  /\  E. n  e.  ( ZZ>= `  m ) E. y
( y  =/=  0  /\  seq n (  x.  ,  ( k  e.  ZZ  |->  if ( k  e.  B ,  C ,  1 ) ) )  ~~>  y )  /\  seq m (  x.  , 
( k  e.  ZZ  |->  if ( k  e.  B ,  C ,  1 ) ) )  ~~>  x ) ) )
1716rexbidv 2868 . . . 4  |-  ( A  =  B  ->  ( 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.  ZZ  ( B  C_  ( ZZ>= `  m )  /\  E. n  e.  ( ZZ>= `  m ) E. y
( y  =/=  0  /\  seq n (  x.  ,  ( k  e.  ZZ  |->  if ( k  e.  B ,  C ,  1 ) ) )  ~~>  y )  /\  seq m (  x.  , 
( k  e.  ZZ  |->  if ( k  e.  B ,  C ,  1 ) ) )  ~~>  x ) ) )
18 f1oeq3 5745 . . . . . . 7  |-  ( A  =  B  ->  (
f : ( 1 ... m ) -1-1-onto-> A  <->  f :
( 1 ... m
)
-1-1-onto-> B ) )
1918anbi1d 704 . . . . . 6  |-  ( A  =  B  ->  (
( f : ( 1 ... m ) -1-1-onto-> A  /\  x  =  (  seq 1 (  x.  ,  ( n  e.  NN  |->  [_ ( f `  n )  /  k ]_ C ) ) `  m ) )  <->  ( f : ( 1 ... m ) -1-1-onto-> B  /\  x  =  (  seq 1 (  x.  ,  ( n  e.  NN  |->  [_ (
f `  n )  /  k ]_ C
) ) `  m
) ) ) )
2019exbidv 1681 . . . . 5  |-  ( A  =  B  ->  ( E. f ( f : ( 1 ... m
)
-1-1-onto-> A  /\  x  =  (  seq 1 (  x.  ,  ( n  e.  NN  |->  [_ ( f `  n )  /  k ]_ C ) ) `  m ) )  <->  E. f
( f : ( 1 ... m ) -1-1-onto-> B  /\  x  =  (  seq 1 (  x.  ,  ( n  e.  NN  |->  [_ ( f `  n )  /  k ]_ C ) ) `  m ) ) ) )
2120rexbidv 2868 . . . 4  |-  ( A  =  B  ->  ( 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 ) )  <->  E. m  e.  NN  E. f ( f : ( 1 ... m ) -1-1-onto-> B  /\  x  =  (  seq 1 (  x.  , 
( n  e.  NN  |->  [_ ( f `  n
)  /  k ]_ C ) ) `  m ) ) ) )
2217, 21orbi12d 709 . . 3  |-  ( A  =  B  ->  (
( 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 ) ) )  <-> 
( E. m  e.  ZZ  ( B  C_  ( ZZ>= `  m )  /\  E. n  e.  (
ZZ>= `  m ) E. y ( y  =/=  0  /\  seq n
(  x.  ,  ( k  e.  ZZ  |->  if ( k  e.  B ,  C ,  1 ) ) )  ~~>  y )  /\  seq m (  x.  ,  ( k  e.  ZZ  |->  if ( k  e.  B ,  C ,  1 ) ) )  ~~>  x )  \/  E. m  e.  NN  E. f ( f : ( 1 ... m ) -1-1-onto-> B  /\  x  =  (  seq 1 (  x.  , 
( n  e.  NN  |->  [_ ( f `  n
)  /  k ]_ C ) ) `  m ) ) ) ) )
2322iotabidv 5513 . 2  |-  ( 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 ,  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 ) ) ) )  =  ( iota
x ( E. m  e.  ZZ  ( B  C_  ( ZZ>= `  m )  /\  E. n  e.  (
ZZ>= `  m ) E. y ( y  =/=  0  /\  seq n
(  x.  ,  ( k  e.  ZZ  |->  if ( k  e.  B ,  C ,  1 ) ) )  ~~>  y )  /\  seq m (  x.  ,  ( k  e.  ZZ  |->  if ( k  e.  B ,  C ,  1 ) ) )  ~~>  x )  \/  E. m  e.  NN  E. f ( f : ( 1 ... m ) -1-1-onto-> B  /\  x  =  (  seq 1 (  x.  , 
( n  e.  NN  |->  [_ ( f `  n
)  /  k ]_ C ) ) `  m ) ) ) ) )
24 df-prod 27583 . 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 ) ) ) )
25 df-prod 27583 . 2  |-  prod_ k  e.  B  C  =  ( iota x ( E. m  e.  ZZ  ( B  C_  ( ZZ>= `  m
)  /\  E. n  e.  ( ZZ>= `  m ) E. y ( y  =/=  0  /\  seq n
(  x.  ,  ( k  e.  ZZ  |->  if ( k  e.  B ,  C ,  1 ) ) )  ~~>  y )  /\  seq m (  x.  ,  ( k  e.  ZZ  |->  if ( k  e.  B ,  C ,  1 ) ) )  ~~>  x )  \/  E. m  e.  NN  E. f ( f : ( 1 ... m ) -1-1-onto-> B  /\  x  =  (  seq 1 (  x.  , 
( n  e.  NN  |->  [_ ( f `  n
)  /  k ]_ C ) ) `  m ) ) ) )
2623, 24, 253eqtr4g 2520 1  |-  ( A  =  B  ->  prod_ k  e.  A  C  = 
prod_ k  e.  B  C )
Colors of variables: wff setvar class
Syntax hints:    -> wi 4    \/ wo 368    /\ wa 369    /\ w3a 965    = wceq 1370   E.wex 1587    e. wcel 1758   F/_wnfc 2602    =/= wne 2648   E.wrex 2800   [_csb 3398    C_ wss 3439   ifcif 3902   class class class wbr 4403    |-> cmpt 4461   iotacio 5490   -1-1-onto->wf1o 5528   ` cfv 5529  (class class class)co 6203   0cc0 9396   1c1 9397    x. cmul 9401   NNcn 10436   ZZcz 10760   ZZ>=cuz 10975   ...cfz 11557    seqcseq 11926    ~~> cli 13083   prod_cprod 27582
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1592  ax-4 1603  ax-5 1671  ax-6 1710  ax-7 1730  ax-10 1777  ax-11 1782  ax-12 1794  ax-13 1955  ax-ext 2432
This theorem depends on definitions:  df-bi 185  df-or 370  df-an 371  df-3an 967  df-tru 1373  df-ex 1588  df-nf 1591  df-sb 1703  df-clab 2440  df-cleq 2446  df-clel 2449  df-nfc 2604  df-ral 2804  df-rex 2805  df-rab 2808  df-v 3080  df-dif 3442  df-un 3444  df-in 3446  df-ss 3453  df-nul 3749  df-if 3903  df-sn 3989  df-pr 3991  df-op 3995  df-uni 4203  df-br 4404  df-opab 4462  df-mpt 4463  df-cnv 4959  df-dm 4961  df-rn 4962  df-res 4963  df-ima 4964  df-iota 5492  df-f 5533  df-f1 5534  df-fo 5535  df-f1o 5536  df-fv 5537  df-ov 6206  df-oprab 6207  df-mpt2 6208  df-recs 6945  df-rdg 6979  df-seq 11927  df-prod 27583
This theorem is referenced by:  prodeq1  27586
  Copyright terms: Public domain W3C validator