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

Theorem dffsum 7005
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 1816 . . . . . . . . . . 11 |- n e. V
2 fzoptht 6510 . . . . . . . . . . 11 |- ((N e. (ZZ>` M) /\ n e. V) -> ((M...N) = (m...n) <-> (M = m /\ N = n)))
31, 2mpan2 698 . . . . . . . . . 10 |- (N e. (ZZ>` M) -> ((M...N) = (m...n) <-> (M = m /\ N = n)))
4 eqcom 1480 . . . . . . . . . . 11 |- (M = m <-> m = M)
5 eqcom 1480 . . . . . . . . . . 11 |- (N = n <-> n = N)
64, 5anbi12i 484 . . . . . . . . . 10 |- ((M = m /\ N = n) <-> (m = M /\ n = N))
73, 6syl6bb 538 . . . . . . . . 9 |- (N e. (ZZ>` M) -> ((M...N) = (m...n) <-> (m = M /\ n = N)))
87anbi1d 619 . . . . . . . 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 1667 . . . . . . 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 1281 . . . . . 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 2628 . . . . . . . . . . 11 |- (m = M -> (m <_ n <-> M <_ n))
12 opeq1 2492 . . . . . . . . . . . . . 14 |- (m = M -> <.m, + >. = <.M, + >.)
1312opreq1d 3982 . . . . . . . . . . . . 13 |- (m = M -> (<.m, + >. seq ({<.k, y>. | y = A} |` ZZ)) = (<.M, + >. seq ({<.k, y>. | y = A} |` ZZ)))
1413fveq1d 3733 . . . . . . . . . . . 12 |- (m = M -> ((<.m, + >. seq ({<.k, y>. | y = A} |` ZZ))` n) = ((<.M, + >. seq ({<.k, y>. | y = A} |` ZZ))` n))
1514eleq2d 1544 . . . . . . . . . . 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 630 . . . . . . . . . 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 2629 . . . . . . . . . . 11 |- (n = N -> (M <_ n <-> M <_ N))
18 fveq2 3731 . . . . . . . . . . . 12 |- (n = N -> ((<.M, + >. seq ({<.k, y>. | y = A} |` ZZ))` n) = ((<.M, + >. seq ({<.k, y>. | y = A} |` ZZ))` N))
1918eleq2d 1544 . . . . . . . . . . 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 630 . . . . . . . . . 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 1893 . . . . . . . . 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 6432 . . . . . . . . 9 |- (N e. (ZZ>` M) -> M e. ZZ)
23 eluzelz 6431 . . . . . . . . 9 |- (N e. (ZZ>` M) -> N e. ZZ)
2421, 22, 23sylanc 473 . . . . . . . 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 6433 . . . . . . . . 9 |- (N e. (ZZ>` M) -> M <_ N)
2625biantrurd 729 . . . . . . . 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 533 . . . . . . 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 6454 . . . . . . . 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 486 . . . . . . . . 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 1673 . . . . . . . 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 534 . . . . . 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 530 . . . . 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>.