Matematyka dyskretna Andrzej Łachwa, UJ, 2013 andrzej.lachwa@uj.edu.pl 6/15
Sumy Oto dwie konwencje zapisu skończonych sum wyrazów: (notacja Sigma, Fourier, 1820) Czasami stosowana jest ogólniejsza notacja, gdzie I jest skończonym zbiorem indeksów (jeśli jest on pusty to suma ma wartość 0). Często, zamiast określać zbiór indeksów podaje się pod sumą warunek ten zbiór definiujący (tzw. uogólniona notacja Sigma). Na przykład:, i podobnie dla notacji iloczynu Π.
Notacja Iversona Σ a k = Σ a k [p(k)] p(k) k 0 gdzie [p(k)] = 1 gdy p(k) jest prawdziwe, 0 wpp Przyjmuje się ponadto, że czynnik [p(k)] jest tzw. silnym zerem, tzn. że a k [p(k)] jest zerem nawet wtedy, gdy pierwszy czynnik nie jest określony. Moim zdaniem powinno być: a [ a p( k)] gdzie k p( k ) k 0 [ p( k))] a k k a k gdy p(k) jest prawdziwe 0 gdy p(k) jest fałszywe
Przykład Σ 1/k = Σ 1/k [k<6] [k jest liczbą pierwszą] = k<6 k jest liczba pierwszą Prawa sumowania = 1 0 + 1 1 0 + 1/2 1 1 + 1/3 1 1 + 1/4 1 0 + 1/5 1 1 + prawo rozdzielności Σ c a k = c Σ a k p(k) p(k) prawo łączności Σ (a k + b k ) = Σ a k + Σ b k p(k) p(k) p(k) prawo przemienności Σ a k = Σ a σ(k) p(k) p(σ(k))
prawo łączenia zbiorów wskaźników prawo zmiany porządku sumowania p(j,k) p(j,k) j,k 0 j 0 k 0 k 0 j 0 p 1 (j) p 2 (k) p 1 (j) Σ a k + Σ a k = Σ a k + Σ a k p(k) q(k) p(k) q(k) p(k) q(k) Σ a jk = Σ a jk [p(j,k)] = Σ ( Σ a jk [p(j,k)])= Σ ( Σ a jk [p(j,k)]) prawo uogólnione rozdzielności Σ a j b k = Σ a j b k = ( Σ a j ) ( Σ b k ) gdy p(j,k) = p 1 (j) p 2 (k) p 2 (k)
Związki między sumami i rekurencjami Niech, więc S 0 = a 0 oraz S n = S n 1 + a n dla n>0. Wartość sumy w postaci zwartej możemy więc policzyć używając metod rozwiązywania rekurencji. Jedną z takich metod jest metoda repertuaru... [zob. Graham, Knuth, Patashnik, s. 30]
Na odwrót, rozwiązanie rekurencji można uzyskać przez zastąpienie rekurencji odpowiednią sumą i jej policzenie. Przykład (rekurencja dla wieży Hanoi) T 0 = 0 T n = 2T n 1 +1 dla n>0 (dla której wcześniej udowodniliśmy indukcyjnie, że T n = 2 n 1). Rekurencję tę możemy przedstawić jako T 0 /2 0 = 0 T n /2 n = 2T n 1 /2 n +1/2 n dla n>0 i przyjmując S n = T n /2 n otrzymamy S 0 = 0 S n = S n 1 +2 n dla n>0 czyli S n = i=1..n 2 i i jako suma ciągu geometrycznego wynosi 1 ( 1 / 2 ) n a zatem T n = 2 n S n = 2 n 1.
Przykład (zad.19/s.83 Graham, Knuth, Patashnik) T0=5 2Tn=nTn 1+3n! Czynnik sumacyjny s n = a n 1 a n 2... a 1 / b n b n 1... b 2 = 2 2... 2 / n (n 1)...3 2= = 2 n 1 /n! n 1 zatem, po pomnożeniu obu stron przez s n mamy (2 n 1 /n!) 2Tn = (2 n 1 /n!) ntn 1+(2 n 1 /n!) 3n! czyli (2 n /n!) Tn = (2 n 1 /(n 1)!) Tn 1 + 2 n 1 3 a po oznaczeniu S n = (2 n /n!) T n mamy Sn = Sn 1 + 2 n 1 3 (uwaga: S 0 = (2 0 /0!) T 0 = T 0 =5) Sn = Sn 1 + 2 n 1 3 = S0 +3+2 3+4 3+8 3+...+ 2 n 1 3 = T0 +3 (1+2+4+8+...+ 2 n 1 )= =T0 +3 (2 n 1)=5+3 (2 n 1) i na koniec mnożymy przez n!/2 n, co daje Tn = n!/2 n (5+3 (2 n 1)) = 5n!/2 n +3n! 3n!/2 n = 3n!+2n!/2 n dla n 0.
Sprowadzenie sumy do postaci zwartej Metoda 1. Znajdź wzór w wiarygodnym źródle. Podręcznik Grahama, Knutha, Patashnika, s. 60, wskazuje kilka dobrych źródeł ze wzorami na sumy. Metoda 2. Odgadnięcie rozwiązania i udowodnienie go przez indukcję Indukcja sprawdza się, gdy intuicje odnośnie sumy, którą chcemy policzyć, pozwalają nam na wysuwanie hipotez, co do jej wartości. Jest to też dobra metoda sprawdzenia wyników otrzymanych inną metodą lub wyników, których nie jesteśmy pewni (w celu wychwycenia ewentualnych błędów). Powszechnie używane popularne źródła internetowe są raczej mało wiarygodne i stąd wymagają zawsze sprawdzenia. Metoda 3. Suma jako rekurencja Przedstaw sumę jako rekurencję i rozwiąż poznanymi metodami.
Metoda 4. Przeindeksowanie sumy Przykład: rozważmy sumę skończonego ciągu arytmetycznego o parametrach a, b Z: Zauważmy, że Dodajmy sumę po lewej stronie do sumy po prawej. Wyrażenie z indeksem k zniknie, więc możemy wszystko wyciągnąć przed znak sumy. Pamiętajmy o pozostawieniu sumy jedynek!
Zatem, czyli obliczana suma jest średnią arytmetyczną pierwszego i ostatniego składnika sumy pomnożoną przez liczbę składników sumy.
CIĄG HARMONICZNY Dla ciągu harmonicznego można pokazać, że [wrócimy jeszcze później do tego wzoru] Metoda 5. Zmiana kolejności sumowania w sumach wielokrotnych Dla przykładu, chcemy policzyć sumę wyrazów ciągu harmonicznego. Pierwsze takie sumy pokazuje tabela:
Zamienimy kolejność wyrazów w sumie i okazuje się, że nowa postać jest prosta do przeliczenia. Wypiszmy więc wszystkie wyrazy w naszej podwójnej sumie, tak by kolejne wiersze były składnikami liczb harmonicznych:
Metoda 6. Zaburzanie Aby obliczyć sumę skończoną, możemy wypróbować metodę zaburzania. Polega ona na obliczeniu wartości za pomocą na dwa różne sposoby, na ogół wydzielając pierwszy i ostatni składnik sumy tzn.: Jeśli uda się ostatnią sumę wyrazić za pomocą, to otrzymamy równanie, którego rozwiązanie jest poszukiwaną sumą. Metody ta jest elegancka i bywa skuteczna. Niestety, nie zawsze działa.
Przykład Policzmy sumę skończonego ciągu geometrycznego dla,. Zgodnie z ogólnym schematem zaburzania mamy: dostajemy: dla Rozwiązując powyższe równanie
Przykład Suma przyjmuje wartości: Licząc przez zaburzanie dostajemy: gdzie suma skończonego ciągu geometrycznego została wyliczona w poprzednim przykładzie. Zatem ostatecznie
Przykład Policzmy jeszcze raz sumę kwadratów ale tym razem przez zaburzanie. Niestety okazuje się, że sumy kwadratów się skracają. Zaburzanie okazało się w tym przypadku nieskuteczne.
Zauważmy jednak, iż z otrzymanej równości dostajemy wzór na sumę kolejnych liczb naturalnych (a nie kwadratów jak chcieliśmy). Nasuwa się podejrzenie, że aby otrzymać wzór na sumę kwadratów trzeba zaburzyć sumę sześcianów. Spróbujmy:
Rzeczywiście, sumy sześcianów się skracają i możemy wyprowadzić wzór na sumę kwadratów:
Metoda 7. Rachunek różnicowy (zarys problemu) Postać zwartą sumy Σ g(k) możemy policzyć jako f(b) f(a), jeśli tylko uda a k<b się nam znaleźć nieoznaczoną sumę f, taką że g(x)=f(x+1) f(x). Np. Szukamy postaci zwartej sumy Σ (2k 3 +1), przy czym k 3 = k 3 +3k 2 +k 1 0 k<n Mamy Σ (2k 3 +1) = 2 Σ k 3 +3k 2 +k 1 + Σ 1 = 0 k<n 0 k<n 0 k<n = 2 ( Σx 3 δx +3 Σx 2 δx + Σx 1 δx ) + n(n+1)/2 =... 0 k<n+1 0 k<n+1 0 k<n+1 Δ(x 2 /2) = (x+1) 2 /2 (x 2 /2) = x 1 Δ(x 3 /3) = (x+1) 3 /3 (x 3 /3) = x 2
... = 2 (x 4 /4 n+1 0 +3 x 3 /3 n+1 0 +x 2 /2 n+1 0 ) + n(n+1)/2 = = 2 ((n+1) 4 /4 + 3 (n+1)/3 + (n+1) 2 /2) + n(n+1)/2 = = 2 [((n+1)n(n 1)(n 2) + 4 (n+1)n(n 1) + 2 (n+1)n)/4] + n(n+1)/2 = = 2 [n 2 (n+1) 2 /4] + n(n+1)/2 = n 2 (n+1) 2 /2 + n(n+1)/2
Metoda 8. Funkcje tworzące (zarys problemu) Wzór rekurencyjny na gn zapisujemy w postaci jednego równania dla wszystkich całkowitych n (możemy użyć czynników Iversona). Np. gn = gn 1 + gn 2 + [n=1] daje ciąg Fibonacciego, bo gn=0 dla n 0. Obie strony mnożymy przez z n i sumujemy. Po lewej mamy funkcję tworzącą G(z), a prawą przekształcamy, by zawierała G(z). W naszym przykładzie będzie to G(z) = Σn gn z n = = z G(z) + z 2 G(z) + z. Rozwiązujemy równianie, aby otrzymać postać zwartą G(z). U nas: G(z) = z / (1 z z 2 ) Rozwijamy G(z) w szereg potęgowy, a współczynnik przy z n jest szukaną postacią zwartą dla gn.