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

Theorem dffsum 6936
Description: Special case of series sum over a finite index set.
Assertion
Ref Expression
dffsum |- (N e. (ZZ>` M) -> sum_k e. (M...N)A = ((<.M, + >. seq ({<.k, y>. | y = A} |` ZZ))` N))
Distinct variable groups:   y,A   y,M   y,N   y,k

Proof of Theorem dffsum
StepHypRef Expression
1 visset 1804 . . . . . . . . . . 11 |- n e. V
2 fzoptht 6434 . . . . . . . . . . 11 |- ((N e. (ZZ>` M) /\ n e. V) -> ((M...N) = (m...n) <-> (M = m /\ N = n)))
31, 2mpan2 694 . . . . . . . . . 10 |- (N e. (ZZ>` M) -> ((M...N) = (m...n) <-> (M = m /\ N = n)))
4 eqcom 1469 . . . . . . . . . . 11 |- (M = m <-> m = M)
5 eqcom 1469 . . . . . . . . . . 11 |- (N = n <-> n = N)
64, 5anbi12i 481 . . . . . . . . . 10 |- ((M = m /\ N = n) <-> (m = M /\ n = N))
73, 6syl6bb 534 . . . . . . . . 9 |- (N e. (ZZ>` M) -> ((M...N) = (m...n) <-> (m = M /\ n = N)))
87anbi1d 615 . . . . . . . 8 |- (N e. (ZZ>` M) -> (((M...N) = (m...n) /\ x e. ((<.m, + >. seq ({<.k, y>. | y = A} |` ZZ))` n)) <-> ((m = M /\ n = N) /\ x e. ((<.m, + >. seq ({<.k, y>. | y = A} |` ZZ))` n))))
98rexbidv 1656 . . . . . . 7 |- (N e. (ZZ>` M) -> (E.n e. (ZZ>` m)((M...N) = (m...n) /\ x e. ((<.m, + >. seq ({<.k, y>. | y = A} |` ZZ))` n)) <-> E.n e. (ZZ>` m)((m = M /\ n = N) /\ x e. ((<.m, + >. seq ({<.k, y>. | y = A} |` ZZ))` n))))
109exbidv 1274 . . . . . 6 |- (N e. (ZZ>` M) -> (E.mE.n e. (ZZ>` m)((M...N) = (m...n) /\ x e. ((<.m, + >. seq ({<.k, y>. | y = A} |` ZZ))` n)) <-> E.mE.n e. (ZZ>`
m)((m = M /\ n = N) /\ x e. ((<.m, + >. seq ({<.k, y>. | y = A} |` ZZ))` n))))
11 breq1 2612 . . . . . . . . . . 11 |- (m = M -> (m <_ n <-> M <_ n))
12 opeq1 2478 . . . . . . . . . . . . . 14 |- (m = M -> <.m, + >. = <.M, + >.)
1312opreq1d 3960 . . . . . . . . . . . . 13 |- (m = M -> (<.m, + >. seq ({<.k, y>. | y = A} |` ZZ)) = (<.M, + >. seq ({<.k, y>. | y = A} |` ZZ)))
1413fveq1d 3711 . . . . . . . . . . . 12 |- (m = M -> ((<.m, + >. seq ({<.k, y>. | y = A} |` ZZ))` n) = ((<.M, + >. seq ({<.k, y>. | y = A} |` ZZ))` n))
1514eleq2d 1533 . . . . . . . . . . 11 |- (m = M -> (x e. ((<.m, + >. seq ({<.k, y>. | y = A} |` ZZ))` n) <-> x e. ((<.M, + >. seq ({<.k, y>. | y = A} |` ZZ))` n)))
1611, 15anbi12d 626 . . . . . . . . . 10 |- (m = M -> ((m <_ n /\ x e. ((<.m, + >. seq ({<.k, y>. | y = A} |` ZZ))` n)) <-> (M <_ n /\ x e. ((<.M, + >. seq ({<.k, y>. | y = A} |` ZZ))` n))))
17 breq2 2613 . . . . . . . . . . 11 |- (n = N -> (M <_ n <-> M <_ N))
18 fveq2 3709 . . . . . . . . . . . 12 |- (n = N -> ((<.M, + >. seq ({<.k, y>. | y = A} |` ZZ))` n) = ((<.M, + >. seq ({<.k, y>. | y = A} |` ZZ))` N))
1918eleq2d 1533 . . . . . . . . . . 11 |- (n = N -> (x e. ((<.M, + >. seq ({<.k, y>. | y = A} |` ZZ))` n) <-> x e. ((<.M, + >. seq ({<.k, y>. | y = A} |` ZZ))` N)))
2017, 19anbi12d 626 . . . . . . . . . 10 |- (n = N -> ((M <_ n /\ x e. ((<.M, + >. seq ({<.k, y>. | y = A} |` ZZ))` n)) <-> (M <_ N /\ x e. ((<.M, + >. seq ({<.k, y>. | y = A} |` ZZ))` N))))
2116, 20ceqsrex2v 1881 . . . . . . . . 9 |- ((M e. ZZ /\ N e. ZZ) -> (E.m e. ZZ E.n e. ZZ ((m = M /\ n = N) /\ (m <_ n /\ x e. ((<.m, + >. seq ({<.k, y>. | y = A} |` ZZ))` n))) <-> (M <_ N /\ x e. ((<.M, + >. seq ({<.k, y>. | y = A} |` ZZ))` N))))
22 eluzel2 6356 . . . . . . . . 9 |- (N e. (ZZ>` M) -> M e. ZZ)
23 eluzelz 6355 . . . . . . . . 9 |- (N e. (ZZ>` M) -> N e. ZZ)
2421, 22, 23sylanc 471 . . . . . . . 8 |- (N e. (ZZ>` M) -> (E.m e. ZZ E.n e. ZZ ((m = M /\ n = N) /\ (m <_ n /\ x e. ((<.m, + >. seq ({<.k, y>. | y = A} |` ZZ))` n))) <-> (M <_ N /\ x e. ((<.M, + >. seq ({<.k, y>. | y = A} |` ZZ))` N))))
25 eluzle 6357 . . . . . . . . 9 |- (N e. (ZZ>` M) -> M <_ N)
2625biantrurd 725 . . . . . . . 8 |- (N e. (ZZ>` M) -> (x e. ((<.M, + >. seq ({<.k, y>. | y = A} |` ZZ))` N) <-> (M <_ N /\ x e. ((<.M, + >. seq ({<.k, y>. | y = A} |` ZZ))` N))))
2724, 26bitr4d 529 . . . . . . 7 |- (N e. (ZZ>` M) -> (E.m e. ZZ E.n e. ZZ ((m = M /\ n = N) /\ (m <_ n /\ x e. ((<.m, + >. seq ({<.k, y>. | y = A} |` ZZ))` n))) <-> x e. ((<.M, + >. seq ({<.k, y>. | y = A} |` ZZ))` N)))
28 2rexuz 6378 . . . . . . . 8 |- (E.mE.n e. (ZZ>` m)((m = M /\ n = N) /\ x e. ((<.m, + >. seq ({<.k, y>. | y = A} |` ZZ))` n)) <-> E.m e. ZZ E.n e. ZZ (m <_ n /\ ((m = M /\ n = N) /\ x e. ((<.m, + >. seq ({<.k, y>. | y = A} |` ZZ))` n))))
29 an12 483 . . . . . . . . 9 |- ((m <_ n /\ ((m = M /\ n = N) /\ x e. ((<.m, + >. seq ({<.k, y>. | y = A} |` ZZ))` n))) <-> ((m = M /\ n = N) /\ (m <_ n /\ x e. ((<.m, + >. seq ({<.k, y>. | y = A} |` ZZ))` n))))
30292rexbii 1662 . . . . . . . 8 |- (E.m e. ZZ E.n e. ZZ (m <_ n /\ ((m = M /\ n = N) /\ x e. ((<.m, + >. seq ({<.k, y>. | y = A} |` ZZ))` n))) <-> E.m e. ZZ E.n e. ZZ ((m = M /\ n = N) /\ (m <_ n /\ x e. ((<.m, + >. seq ({<.k, y>. | y = A} |` ZZ))` n))))
3128, 30bitr 173 . . . . . . 7 |- (E.mE.n e. (ZZ>` m)((m = M /\ n = N) /\ x e. ((<.m, + >. seq ({<.k, y>. | y = A} |` ZZ))` n)) <-> E.m e. ZZ E.n e. ZZ ((m = M /\ n = N) /\ (m <_ n /\ x e. ((<.m, + >. seq ({<.k, y>. | y = A} |` ZZ))` n))))
3227, 31syl5bb 530 . . . . . 6 |- (N e. (ZZ>` M) -> (E.mE.n e. (ZZ>` m)((m = M /\ n = N) /\ x e. ((<.m, + >. seq ({<.k, y>. | y = A} |` ZZ))` n)) <-> x e. ((<.M, + >. seq ({<.k, y>. | y = A} |` ZZ))` N)))
3310, 32bitrd 526 . . . . 5 |- (N e. (ZZ>` M) -> (E.mE.n e. (ZZ>` m)((M...N) = (m...n) /\ x e. ((<.m, + >. seq ({<.k, y>. | y = A} |` ZZ))` n)) <-> x e. ((<.M, + >. seq ({<.k, y>.