NOTACJA.

oo  --  nieskonczonosc
K -- 1000 (tysiac)
M -- 1000000 (milion)
ln -- logarytm naturalny

================================================================

Rachowanie ln(2)
----------------

Niech naszym celem bedzie policzenie logarytmu naturalnego
z liczby 2, ln(2).  Poniewaz ln(2) jest polem krzywolinijnego
trapezu, ktorego podstawa/ jest odcinek [1 2], na osi x,
a gornym ograniczeniem jest wykres funkcji  y = 1/x, to
obliczmy to pole w przyblizeniu.  Podzielimy nasz trapez
na  n  trapezow o podstawach od  1+(k-1)/n  do  1+k/n, przy
czym w celu przyblizenia, zamienimy kazdy z tych krzywolinijnych
trapezow na prostokat o tejze podstawie, i o wysokosci

    y = 1/(1+k/n) = n/(n+k)  dla k=1 ... n

Poniewaz dlugosc podstawy kazdego prostokata wynosi  1/n,
to ich pola sa rowne  k/(n+k), a suma ich pol jest rowna:

        S(n) := 1/(n+1) + 1/(n+2) + ... + 1/(2*n)

Oczywiscie nasze prostokaty zawieraly sie w odpowiednich
trapezach, wiec  S(n) < ln(2);  a gdy  n  dazy do
nieskonczonosci, to blad jest coraz mniejszy i w granicy
dostajemy  S(n) --> ln(2)  (gdy  n --> oo).

Chociaz mozemy teraz policzyc  ln(2)  z dowolna dokladnoscia,
to metoda nasza jest nieekonomiczna.  Mimo to, dla nabrania
wyczucia, zastosujmy ja/ na rozgrzewke.  Dla  n=2  dostajemy

 S(2) = 1/3 + 1/4 = 7/12

To nasze pierwsze przyblizenie dla ln(2). Nastepnie policzmy
od razu  S(4), by skorzystac z energii wlozonej w liczenie
S(2):

    S(4) = 1/5 + 1/6 + 1/7 + 1/8 = 1/5 + 1/7 + (1/2)*S(2)

         =  12/35 + 7/24  =  533/840

Nastepnie mozemy policzyc  S(8), itd.  Ale jaki przy tym
popelniamy blad?  Zaraz to wyjasnie/.

Otoz jako cwiczenie (chocby na indukcje matematyczna)
odowodnijcie, albo mi uwierzcie, ze:

  S(n) =

          1/(n+1) + 1/(n+2) + ... + 1/(2*n)  =


      1 - 1/2 + 1/3 - 1/4 + ... + 1/(2*n-1) - 1/(2*n)

Taki elegancki wzor (zauwazylem go w "archeologicznych czasach"),
a nigdy nie widzialem go w druku.

Wynika z niego wzor Leibniza, 1646-1716:


    ln(2) = 1 - 1/2 + 1/3 - 1/4 + ...

gdzie tym razem sumuje sie nieskonczony szereg; a jak?
Poprzez wyliczanie  S(n).  Gdy policzymy  S(n)  to
zaniedbujemy nieskonczony "ogon":

    1/(2*n+1) - 1/(2*n+2) + ...

i to jest wlasnie blad obliczenia.  Latwo przekonac sie, ze
blad ten nie przekracza pierwszego wyrazu, jest mniejszy
niz  1/(2*n+1). Aby uzykac  ln(2) z dokladnoscia do 1/1000,
poprzez rachowanie  S(n), nalezy dokonac setki, a nawet
ponad tysiac operacji arytmetycznych. Zeby zapewnic sobie,
ze "ogon" bedzie mial wartosc mniejsza niz  1/1000  nalezy
wziasc  n=500.  Trzeba wtedy wyliczyc 500 ulamkow (500 odwrotnosci
liczb naturalnych, lub 100 gdy uzywac szeregu
 1 -1/2 + 1/3 - 1/4 + ...).  Poniewaz uzywamy systemu
dziesietnego, to dochodza jeszcze bledy przyblizen dziesietnych.
Wiec nalezy wziasc na przyklad  n=1000, a kazdy wyraz  1/n
policzyc z dokladnoscia do 1/4M  (M - milion).  Wtedy przy
dodawaniu dwoch tysiecy wyrazow suma bledow dziesietnych nie
przekroczy  2000 * 1/4M = 1/2000.  Razem z bledem 1/2000,
wynikajacym z pominiecia ogona, dostajemy blad nie wiekszy
niz 1/1000.

W dalszym ciagu nie bede bral pod uwage bledu dziesietnego.
Warto jednak pamietac, ze im prostszy wzor, tym mniej okazji
do takich bledow.

                    -- * -- * -- * --

Wzor Leibniza jest granicznym przypadkiem szeregu
Taylora:

    ln(1+x)  =  x - x^2/2 + x^3/3 - x^4/4 + ...

ktory rzeczywiscie jest zbiezny do ln(1+x)  gdy  |x| < 1.
Wzor Leibniza otrzymujemy formalnie z szerewgu Taylora
przez podstawienie  x = 1, czyli na granicy przedzialu
|x| < 1, ale juz na zewnatrz. Dlatego dowod wzoru Leibniza
poprzez wzor Taylora wymaga dodatkowego wysilku (na ktory na
P-L jestewsmy za leniwi).

Wszystko jedno szereg Taylora jest pozyteczny
w liczeniu  ln(2):

  ln(2) = -ln(1/2) = -ln(1 - 1/2)

    =  1/2 + (1/2)^2/2 + (1/2)^3/3 + (1/2)^4/4 + ...

Postep uzyskalismy ogromny. Tym razem zeby wyliczyc  ln(2)
wystarczy 10 wyrazow szeregu.  Ogon, ktory pominiemy szacuje
sie od gory przez szereg geometryczny nastepujaco:

    (1/2)^11/11 + (1/2)^12/12 + ...  <

        (1/2)^11/11 + (1/2)^12/11 + (1/2)^13/11 + ...

    =  (1/2)^10/11 <  1/11000

Blad spowodowany usunieciem ogonu jest mniejszy niz
1/10K (K - tysiac). Gdyby wyrazy szeregu porachowac dosc
dokladnie to ostateczny blad po przejsciu do notacji
dziesietenj moglby wciaz byc mniejszy niz 1/10K, a juz
z latwoscia mniejszy od 1/1000.

Im wiekszej za/damy dokladnosci tym dramatyczniejszy
jest postep, ktory zawdzieczamy metodzie szeregu Taylora.
Dla dokladnosci  1/M  (M - milion) wystarczy 20 wyrazow
powyzszego szeregu Taylora, podczas gdy poprzednia metoda
wymagala miliona wyrazow.

                   -- * -- * -- * --

Na tym nie koniec. W matematyce nigdy nie ma konca zabawie.
Poniewaz:

        2  =  (1 + 1/3) / (1 - 1/3)

to:

    ln(2) =  ln(1 + 1/3) - ln(1 - 1/3)

Mozemy teraz przedstawic  ln(2)  jako sume dwoch
szeregow Taylora, dla  ln(1 + 1/3)  i dla  ln(1 - 1/3),
ktorych co drugi wyraz jest identyczny, a co drugi
kasuje sie z odpowiedznim wyrazem drugiego szeregu,
bo roznia sie tylko znakiem.  Dostajemy:

  ln(2)  =  2 * (1/3 + (1/3)^3/3 + (1/3)^5/5 + (1/3)^7/7 + ...)

O ile poprzedni szereg przypominal szereg geometryczny
o ilorazie  1/2,  to obecny przypomina szereg geometryczny
o ilorazie  (1/3)^2 = 1/9, a wiec zbiega wyraznie szybciej.
Tym razem juz 3 wyrazy zapewnia nam dokladnosc 1/1000,
a 6 wyrazow da dokladnosc  1/M.

Teraz nawet na oko widac, ze ln(2) tylko niewiele przekracza 2/3.

                   -- * -- * -- * --

Zabawa zaczela sie rozkrecac dopiero teraz.  Istnieja bowiem
wyrazenia takie jak:

    2  =  (4/3)^2 * 9/8

ktore pozwalaja liczyc logarytm jeszcze szybciej:

    ln(2)  =  2*ln(4/3) + ln(9/8)

Chociaz postep nie bedzie juz tak dramatyczny, to
sam problem staje sie wciaz ciekawszy.

Zreszta podobne wzory mozna dosatac takze dla innych liczb:

    3  =  (4/3)^3 * (9/8)^2

    5  =  (3/2)^4 * 80/81

Mozna wprowadzic miare na to jak szybkie sa rozne
wzory, po czym mozna starac sie ustanowic jak
najlepszyt rekord.

Taka miare wprowadzilem prawie 30 lat temu,
a takze znalazlem wzory, ktore wygladaja
znacznie bardziej imponujaco niz powyzsze.
Ale nie chce pisac za duzo w proznie, wiec koncze
i na wszelki wypadek pozdrawiam (a nuz ktos tu dotarl),

    Wlodek

Odpowiedź listem elektroniczym