HomeHome Metamath Proof Explorer < Previous   Next >
Related theorems
Unicode version

Theorem sumeq2 6953
Description: Equality theorem for sum.
Assertion
Ref Expression
sumeq2 |- (A.k e. A B = C -> sum_k e. A B = sum_k e. A C)
Distinct variable group:   A,k

Proof of Theorem sumeq2
StepHypRef Expression
1 hbra1 1686 . . . . . . . . . . . . . . . 16 |- (A.k e. A B = C -> A.kA.k e. A B = C)
2 ax-17 970 . . . . . . . . . . . . . . . 16 |- (A.k e. A B = C -> A.yA.k e. A B = C)
3 ra4 1693 . . . . . . . . . . . . . . . . . . 19 |- (A.k e. A B = C -> (k e. A -> B = C))
43imp 350 . . . . . . . . . . . . . . . . . 18 |- ((A.k e. A B = C /\ k e. A) -> B = C)
54eqeq2d 1485 . . . . . . . . . . . . . . . . 17 |- ((A.k e. A B = C /\ k e. A) -> (y = B <-> y = C))
65pm5.32da 648 . . . . . . . . . . . . . . . 16 |- (A.k e. A B = C -> ((k e. A /\ y = B) <-> (k e. A /\ y = C)))
71, 2, 6opabbid 2666 . . . . . . . . . . . . . . 15 |- (A.k e. A B = C -> {<.k, y>. | (k e. A /\ y = B)} = {<.k, y>. | (k e. A /\ y = C)})
8 resopab 3392 . . . . . . . . . . . . . . 15 |- ({<.k, y>. | y = B} |` A) = {<.k, y>. | (k e. A /\ y = B)}
9 resopab 3392 . . . . . . . . . . . . . . 15 |- ({<.k, y>. | y = C} |` A) = {<.k, y>. | (k e. A /\ y = C)}
107, 8, 93eqtr4g 1530 . . . . . . . . . . . . . 14 |- (A.k e. A B = C -> ({<.k, y>. | y = B} |` A) = ({<.k, y>. | y = C} |` A))
1110adantr 389 . . . . . . . . . . . . 13 |- ((A.k e. A B = C /\ A = (m...n)) -> ({<.k, y>. | y = B} |` A) = ({<.k, y>. | y = C} |` A))
12 reseq2 3366 . . . . . . . . . . . . . 14 |- (A = (m...n) -> ({<.k, y>. | y = B} |` A) = ({<.k, y>. | y = B} |` (m...n)))
1312adantl 388 . . . . . . . . . . . . 13 |- ((A.k e. A B = C /\ A = (m...n)) -> ({<.k, y>. | y = B} |` A) = ({<.k, y>. | y = B} |` (m...n)))
14 reseq2 3366 . . . . . . . . . . . . . 14 |- (A = (m...n) -> ({<.k, y>. | y = C} |` A) = ({<.k, y>. | y = C} |` (m...n)))
1514adantl 388 . . . . . . . . . . . . 13 |- ((A.k e. A B = C /\ A = (m...n)) -> ({<.k, y>. | y = C} |` A) = ({<.k, y>. | y = C} |` (m...n)))
1611, 13, 153eqtr3d 1514 . . . . . . . . . . . 12 |- ((A.k e. A B = C /\ A = (m...n)) -> ({<.k, y>. | y = B} |` (m...n)) = ({<.k, y>. | y = C} |` (m...n)))
1716opreq2d 3973 . . . . . . . . . . 11 |- ((A.k e. A B = C /\ A = (m...n)) -> (<.m, + >. seq ({<.k, y>. | y = B} |` (m...n))) = (<.m, + >. seq ({<.k, y>. | y = C} |` (m...n))))
1817fveq1d 3723 . . . . . . . . . 10 |- ((A.k e. A B = C /\ A = (m...n)) -> ((<.m, + >. seq ({<.k, y>. | y = B} |` (m...n)))` n) = ((<.m, + >. seq ({<.k, y>. | y = C} |` (m...n)))` n))
1918adantlr 393 . . . . . . . . 9 |- (((A.k e. A B = C /\ n e. (ZZ>` m)) /\ A = (m...n)) -> ((<.m, + >. seq ({<.k, y>. | y = B} |` (m...n)))` n) = ((<.m, + >. seq ({<.k, y>. | y = C} |` (m...n)))` n))
20 elfzelz 6432 . . . . . . . . . . . . . 14 |- (x e. (m...n) -> x e. ZZ)
21 fvres 3731 . . . . . . . . . . . . . 14 |- (x e. ZZ -> (({<.k, y>. | y = B} |` ZZ)` x) = ({<.k, y>. | y = B}` x))
2220, 21syl 10 . . . . . . . . . . . . 13 |- (x e. (m...n) -> (({<.k, y>. | y = B} |` ZZ)` x) = ({<.k, y>. | y = B}` x))
23 fvres 3731 . . . . . . . . . . . . 13 |- (x e. (m...n) -> (({<.k, y>. | y = B} |` (m...n))` x) = ({<.k, y>. | y = B}` x))
2422, 23eqtr4d 1509 . . . . . . . . . . . 12 |- (x e. (m...n) -> (({<.k, y>. | y = B} |` ZZ)` x) = (({<.k, y>. | y = B} |` (m...n))` x))
2524rgen 1697 . . . . . . . . . . 11 |- A.x e. (m...n)(({<.k, y>. | y = B} |` ZZ)` x) = (({<.k, y>. | y = B} |` (m...n))` x)
26 addex 5304 . . . . . . . . . . . 12 |- + e. V
27 funopabeq 3546 . . . . . . . . . . . . 13 |- Fun {<.k, y>. | y = B}
28 zex 6105 . . . . . . . . . . . . 13 |- ZZ e. V
29 resfunexg 3576 . . . . . . . . . . . . 13 |- ((Fun {<.k, y>. | y = B} /\ ZZ e. V) -> ({<.k, y>. | y = B} |` ZZ) e. V)
3027, 28, 29mp2an 696 . . . . . . . . . . . 12 |- ({<.k, y>. | y = B} |` ZZ) e. V
31 oprex 3980 . . . . . . . . . . . . 13 |- (m...n) e. V
32 resfunexg 3576 . . . . . . . . . . . . 13 |- ((Fun {<.k, y>. | y = B} /\ (m...n) e. V) -> ({<.k, y>. | y = B} |` (m...n)) e. V)
3327, 31, 32mp2an 696 . . . . . . . . . . . 12 |- ({<.k, y>. | y = B} |` (m...n)) e. V
3426, 30, 33seqzfveq 6504 . . . . . . . . . . 11 |- ((n e. (ZZ>` m) /\ A.x e. (m...n)(({<.k, y>. | y = B} |` ZZ)` x) = (({<.k, y>. | y = B} |` (m...n))` x)) -> ((<.m, + >. seq ({<.k, y>. | y = B} |` ZZ))` n) = ((<.m, + >. seq ({<.k, y>. | y = B} |` (m...n)))` n))
3525, 34mpan2 695 . . . . . . . . . 10 |- (n e. (ZZ>` m) -> ((<.m, + >. seq ({<.k, y>. | y = B} |` ZZ))` n) = ((<.m, + >. seq ({<.k, y>. | y = B} |` (m...n)))` n))
3635ad2antlr 405 . . . . . . . . 9 |- (((A.k e. A B = C /\ n e. (ZZ>` m)) /\ A = (m...n)) -> ((<.m, + >. seq ({<.k, y>. | y = B} |` ZZ))` n) = ((<.m, + >. seq ({<.k, y>. | y = B} |` (m...n)))` n))
37 fvres 3731 . . . . . . . . . . . . . 14 |- (x e. ZZ -> (({<.k, y>. | y = C} |` ZZ)` x) = ({<.k, y>. | y = C}` x))
3820, 37syl 10 . . . . . . . . . . . . 13 |- (x e. (m...n) -> (({<.k, y>. | y = C} |` ZZ)` x) = ({<.k, y>. | y = C}` x))
39 fvres 3731 . . . . . . . . . . . . 13 |- (x e. (m...n) -> (({<.k, y>. | y = C} |` (m...n))` x) = ({<.k, y>. | y = C}` x))
4038, 39eqtr4d 1509 . . . . . . . . . . . 12 |- (x e. (m...n) -> (({<.k, y>. | y = C} |` ZZ)` x) = (({<.k, y>. | y = C} |` (m...n))` x))
4140rgen 1697 . . . . . . . . . . 11 |- A.x e. (m...n)(({<.k, y>. | y = C} |` ZZ)` x) = (({<.k, y>. | y = C} |` (m...n))` x)
42 funopabeq 3546 . . . . . . . . . . . . 13 |- Fun {<.k, y>. | y = C}
43 resfunexg 3576 . . . . . . . . . . . . 13 |- ((Fun {<.k, y>. | y = C} /\ ZZ e. V) -> ({<.k, y>. | y = C} |` ZZ) e. V)
4442, 28, 43mp2an 696 . . . . . . . . . . . 12 |- ({<.k, y>. | y = C} |` ZZ) e. V
45 resfunexg 3576 . . . . . . . . . . . . 13 |- ((Fun {<.k, y>. | y = C} /\ (m...n) e. V) -> ({<.k, y>. | y = C} |` (m...n)) e. V)
4642, 31, 45mp2an 696 . . . . . . . . . . . 12 |- ({<.k, y>. | y = C} |` (m...n)) e. V
4726, 44, 46seqzfveq 6504 . . . . . . . . . . 11 |- ((n e. (ZZ>` m) /\ A.x e. (m...n)(({<.k, y>. | y = C} |` ZZ)` x) = (({<.k, y>. | y = C} |` (m...n))` x)) -> ((<.m, + >. seq ({<.