5.4 Transzendente Zahlen
Eine transzendente Zahl ist eine reelle Zahl, die nicht Nullstelle eines Polynoms mit ganzzahligen Koeffizienten sein kann. Die Kreiszahl π und die eulersche Zahl e sind bekannte Beispiele für transzendente Zahlen.
5.4.1 Die Kreiszahl π
Die Kreiszahl π bestimmt das Verhältnis des Umfangs eines Kreises zu seinem Durchmesser. Kreise sind in der Mathematik ideale, gedanklich konstruierte Objekte. Sie kommen in ihrer idealisierten Form weder als technische Artefakte vor noch sind sie reale Bestandteile der Natur. Der griechische Buchstabe π steht für Perimeter, was so viel wie »Randbereich« oder »Umfang« bedeuten soll.
Dass die Kreiszahl π unabhängig vom Durchmesser eines beliebigen Kreises ist, verdeutlicht Abbildung 5.9. Diese Kreise sollen reale Objekte in Form von Kreisscheiben (z. B. aus Holz) repräsentieren. Einen ersten Zugang zu der Größenordnung von π ermöglicht eine empirische Untersuchung.
Kreisscheiben mit bekannten Durchmessern werden auf einer Ebene mit einer Umdrehung abgerollt. Die zurückgelegten Strecken werden gemessen und durch die Durchmesser geteilt. Durch diese Messung würde man etwa folgenden Wert ermitteln können:

Abbildung 5.9 Das Verhältnis von Umfang und Durchmesser eines Kreises
Aus mathematischer Sicht ist dieses empirische Verfahren jedoch nicht akzeptabel. Im Abschnitt zu rationalen Zahlen wurde bereits festgestellt, dass π keine rationale Zahl ist. Das bedeutet auch, dass π unendlich viele Nachkommastellen haben muss, denn jede Zahl mit endlich vielen Nachkommastellen wäre als Bruch darstellbar und damit rational.
Berechnung von π mit SymPy
Der folgende Konsolendialog gibt π mit 50 Nachkommastellen aus:
>>> from sympy import pi,N
>>> N(pi,51)
3.14159265358979323846264338327950288419716939937511
Sie können sich mit SymPy auch π mit 2.000 und mehr Nachkommastellen ausgeben lassen. Sie werden nie ein Muster in den Nachkommastellen entdecken.
Näherungsweise Berechnung von π mit Dreiecks- und Rechteckflächen
Bereits 1650 v. Chr. berechneten ägyptische Mathematiker den Flächeninhalt eines Kreises näherungsweise aus zusammengesetzten Flächen von Quadraten und Dreiecken. Sie teilten ein gleichseitiges Rechteck in neun gleiche Quadrate auf und zeichneten in die Ecken der außen liegenden Quadrate Diagonalen ein (siehe Abbildung 5.10).
Abbildung 5.10 Eine Kreisfläche wird durch Quadrate und Dreiecke angenähert.
Aus Abbildung 5.10 können Sie ablesen, dass sich die angenäherte Kreisfläche aus fünf Quadraten mit dem Flächeninhalt von 5/9 FE (Flächeneinheiten) und vier rechtwinkligen Dreiecken mit dem Flächeninhalt von 2/9 FE zusammensetzt. Es gilt also:

Die Kreiszahl π hat nach dieser Methode einen Wert von etwa 3,111, wobei es sich natürlich nur um eine sehr grobe Näherung handelt.
Die Methode von Archimedes
Archimedes (um 250 v. Chr.) berechnete die Kreiszahl π mithilfe von zwei Sechsecken (siehe Abbildung 5.11), von denen eines im Inneren des Kreises gezeichnet wird und ein anderes den Kreis umschließt.
Die Seiten des inneren Sechsecks werden durch sechs Sekanten gebildet, die Seiten des äußeren Sechsecks durch sechs Tangenten. Wenn der Innenradius den Wert 1 hat, dann hat der Umfang des innenliegenden Sechsecks einen Wert von u0 = 6. Der Umfang des außenliegenden Sechsecks beträgt .
Abbildung 5.11 Annäherung eines Kreises durch zwei Sechsecke
Archimedes hat die Kreiszahl π aus dem harmonischen Mittel des äußeren Umfangs U und des inneren Umfangs u eines Polygons rekursiv berechnet [Brückler: 91]:

Das erste Polygon ist ein Sechseck. Nach jedem Rechenschritt verdoppelt sich die Anzahl der Ecken.
Der Umfang des innenliegenden Polygons hat er rekursiv aus dem geometrischen Mittel des innenliegenden und des außenliegenden Polygons berechnet:

Die rekursiven Berechnungen werden innerhalb einer Schleife ausgeführt. Nach jedem Schleifendurchlauf wird die Anzahl der Ecken verdoppelt.
Die Kreiszahl π wird aus dem Umfang des innenliegenden und des außenliegenden n-Ecks berechnet. Der wahre Wert von π muss irgendwo dazwischen liegen. Wenn man die Anzahl der Ecken weiter vergrößert, wird π genauer berechnet. Die Genauigkeit der Berechnung ist durch die Leistungsfähigkeit des Computers begrenzt. Archimedes berechnete die Kreiszahl π mithilfe eines Vielecks mit 96 Ecken und kam zu der Erkenntnis, dass π zwischen zwei Brüchen liegen müsse:

Die obere Schranke liegt also bei 22/7.
Dieser Wert wurde von Handwerkern und Ingenieuren für praktische Anwendungen viele Jahrhunderte bis zur Einführung des Rechenschiebers genutzt. Archimedes kannte noch keine Dezimalzahlen. Er rechnete mit Brüchen.
In vielen Fällen ist diese Näherung hinreichend genau. Berechnen Sie damit beispielsweise den Umfang eines Kreises mit einem Radius von einem Kilometer, so liegen Sie nur ca. 2,53 Meter über dem exakten Ergebnis, was einer Abweichung von 0,04 % entspricht.
Listing 5.21 berechnet nach der Methode von Archimedes die Kreiszahl π mit Vielecken bis zu 402.653.184 Ecken. Dieser Wert ist abhängig von der Leistungsfähigkeit Ihres Computers. In Zeile 03 können Sie die Anzahl der Schleifendurchläufe verändern und so die Leistungsfähigkeit Ihres Rechners testen.
01 #21_pi_archimedes.py
02 from math import pi,sqrt
03 N=27 #Anzahl der Schleifendurchläufe
04 n=6
05 u=6 #innenliegender Kreis
06 U=4*sqrt(3) #außenliegender Kreis
07 print("Nr.\t Ecken\t\t Innenradius\tAußenradius")
08 for i in range(1,N+1):
09 U=2*U*u/(U+u) #außen
10 u=sqrt(u*U) #innen
11 pii=u/2 #pi aus Innenkreis
12 pia=U/2 #pi aus Außenkreis
13 print("%3d %12d %2.15f %2.15f" %(i,n,pii,pia))
14 n = 2*n #Verdopplung der Eckenzahl
15 print("Anzahl der Ecken:",3*2**N)
16 print("Innenkreis:",pii)
17 print("Außenkreis:",pia)
18 print("genau: ",pi)
19 print("Fehler Innenkreis:",pi-pii)
20 print("Fehler Außenkreis:",pia-pi)
Listing 5.21 Berechnung von π nach der Methode von Archimedes
Ausgabe
Nr. Ecken Innenradius Außenradius
1 6 3.105828541230249 3.215390309173473
2 12 3.132628613281238 3.159659942097500
3 24 3.139350203046867 3.146086215131435
4 48 3.141031950890509 3.142714599645368
5 96 3.141452472285462 3.141873049979824
6 192 3.141557607911857 3.141662747056849
7 384 3.141583892148318 3.141610176604690
8 768 3.141590463228050 3.141597034321526
9 1536 3.141592105999271 3.141593748771351
10 3072 3.141592516692157 3.141592927385096
11 6144 3.141592619365384 3.141592722038614
12 12288 3.141592645033691 3.141592670701998
13 24576 3.141592651450767 3.141592657867844
14 49152 3.141592653055036 3.141592654659306
15 98304 3.141592653456104 3.141592653857171
16 196608 3.141592653556370 3.141592653656637
17 393216 3.141592653581437 3.141592653606503
18 786432 3.141592653587703 3.141592653593970
19 1572864 3.141592653589270 3.141592653590837
20 3145728 3.141592653589661 3.141592653590053
21 6291456 3.141592653589759 3.141592653589857
22 12582912 3.141592653589784 3.141592653589808
23 25165824 3.141592653589790 3.141592653589796
24 50331648 3.141592653589791 3.141592653589793
25 100663296 3.141592653589792 3.141592653589792
26 201326592 3.141592653589792 3.141592653589792
27 402653184 3.141592653589792 3.141592653589792
Anzahl der Ecken: 402653184
Innenkreis: 3.141592653589792
Außenkreis: 3.141592653589792
genau: 3.141592653589793
Fehler Innenkreis: 1.3322676295501878e-15
Fehler Außenkreis: -1.3322676295501878e-15
Analyse
In den Zeilen 04 bis 06 werden die Anfangswerte vorgegeben. Der Umfang des innenliegenden Sechsecks hat einen Wert von u=6 (Zeile 05). Der Umfang des außenliegenden Sechsecks hat einen Wert von U=4*sqrt(3) (Zeile 06).
Innerhalb der for-Schleife (Zeilen 08 bis 14) werden die aktuellen Umfänge der innen- und außenliegenden Polygone (Zeilen 09 und 10) berechnet. In Zeile 14 sorgt die Zuweisung n=2*n dafür, dass bei jedem neuen Schleifendurchlauf die Anzahl der Ecken n verdoppelt wird.
Die Werte der Kreiszahl π werden in Zeile 11 für den Innenkreis mit pii=u/2 und in Zeile 12 für den Außenkreis mit pia=U/2 berechnet.
Ein Vergleich zeigt, dass bei einer Approximation des Kreises mit dem innenliegenden 201326592-Eck ein Wert für π berechnet werden kann, der mit dem »genauen« Wert übereinstimmt – zumindest im Rahmen der Rechengenauigkeit des Computers.
Die Methoden von Viète und Wallis
Die erste exakte Formel für die Berechnung der Kreiszahl stellte François Viète 1593 auf:

Diese Methode ermöglichte zu Zeiten Viètes schon eine Genauigkeit von 14 Dezimalstellen.
Im Jahre 1655 fand John Wallis eine Formel für das unendliche Produkt [Walter: 194]:

Listing 5.22 berechnet mit den Formeln von Viète und Wallis die Kreiszahl π. In Zeile 22 können Sie die Anzahl der Schleifendurchläufe ändern und so testen, wie schnell die beiden Verfahren konvergieren.
01 #22_pi_vieta_wallis.py
02 from math import pi,sqrt
03 #1593
04 def viete(n):
05 a1=sqrt(2)/2
06 a=a1
07 p=1
08 for _ in range(2,n):
09 a=sqrt(2+2*a)/2
10 p=p*a
11 return 2/(a1*p)
12 #1655
13 def wallis(n):
14 p=1
15 for k in range(1,n):
16 zaehler=4*k**2
17 nenner=(2*k-1)*(2*k+1)
18 bruch=zaehler/nenner
19 p=p*bruch
20 return 2*p
21 #Anzahl der Schleifendurchläufe
22 N=10**3
23 Z=14 #Anzahl der Nachkommastellen
24 print("\t π\t n")
25 print(round(viete(N),Z),N, "\tViete 1593")
26 print(round(wallis(N),Z),N, "\tWallis 1655")
27 print(pi,"Python")
Listing 5.22 Die Berechnung von π mit den Methoden von Viète und Wallis
Ausgabe
π n
3.14159265358979 1000 Viete 1593
3.14080696082847 1000 Wallis 1655
3.141592653589793 Python
Analyse
Die Formel von Viète liefert schon bei 1.000 Schleifendurchläufen ein überraschend gutes Ergebnis, während die Produktformel von Wallis bei der gleichen Anzahl der Iterationen die Kreiszahl π nur bis auf zwei Nachkommastellen genau berechnet.
Im Laufe der Mathematikgeschichte wurden noch viele andere Methoden (Reihenentwicklungen, Kettenbrüche) gefunden, um π zu berechnen. In dem Buch von Stewart, »Unglaubliche Zahlen«, finden Sie Reihenentwicklungen von Leibniz und Euler für die Berechnung von π [Stewart: 237ff.].
Wie der folgende Konsolendialog zeigt, scheint es besonders einfach zu sein, die Kreiszahl π aus dem arctan(1) und dem arcsin(1) zu berechnen:
Diese Methode täuscht aber eine falsche Präzision vor, weil der Computer intern die Umkehrfunktion von Sinus und Tangens mit Reihen entwickelt. Im Kapitel 10, »Reihen«, zeige ich Ihnen, wie Sie mit Reihenentwicklungen die Kreiszahl π berechnen können.
Berechnung von π mit dem arithmetisch-geometrischen Mittel
Im Jahr 1976 veröffentlichten Richard P. Brent und Eugene Salamin unabhängig voneinander einen Algorithmus (AGM-Algorithmus), der die Kreiszahl π mithilfe des arithmetisch-geometrischen Mittels berechnet.
Für n = 0, 1, 2, 3 ... gelten die rekursiven Berechnungsvorschriften:





Für die Anfangswerte gilt: .
Dieser Algorithmus konvergiert extrem schnell gegen π.
Um die Beschränkung der Maschinengenauigkeit zu überwinden, soll der AGM-Algorithmus mithilfe des Moduls mpmath implementiert werden. Dieses Modul stellt Methoden für die Gleitpunktarithmetik mit beliebiger Genauigkeit zur Verfügung. Es wird seit 2007 von Fredrik Johansson zusammen mit vielen Mitwirkenden entwickelt.
Listing 5.23 demonstriert, wie das arithmetische Mittel an und das geometrische Mittel bn des AGM-Algorithmus innerhalb einer while-Schleife rekursiv berechnet werden. In Zeile 03 können Sie die Anzahl der Dezimalstellen ändern.
01 #23_pi_agm.py
02 from mpmath import *
03 d = 61
04 mp.dps = d
05 eps = mpf(10**-d)
06 a,b,s,p = mpf(1),1/sqrt(mpf(2)),mpf(1/4),mpf(1)
07 while abs(a-b) > eps:
08 an=(a+b)/2
09 b=sqrt(a*b)
10 c=an-a
11 s=s-p*c**2
12 p=2*p
13 a=an
14 #Ausgabe
15 print(a**2/s)
16 print(pi)
Listing 5.23 π mit dem arithmetisch-geometrischen Mittel berechnen
Ausgabe
3.141592653589793238462643383279502884197169399375105820974945
3.141592653589793238462643383279502884197169399375105820974945
Analyse
In Zeile 02 werden alle Methoden und Funktionen des Moduls mpmath importiert. Um Namensraumkonflikte zu vermeiden, sollten Sie dieses Modul nicht zusammen mit dem Modul math benutzen.
Zeile 03 legt die Anzahl der Stellen fest. Für d=61 berechnet das Programm die Kreiszahl π mit 60 Nachkommastellen. Sie können diesen Wert schrittweise erhöhen, um die Leistungsfähigkeit Ihres Computers zu testen.
In Zeile 04 legt die Anweisung mp.dps=d die Genauigkeit (Anzahl der Stellen) fest, mit der gerechnet werden soll.
In Zeile 06 werden den Variablen a, b, s und p die Anfangswerte zugewiesen. Die mpmath-Methode mpf() konvertiert die Python-Datentypen in mpmath-Floattypen.
In Zeile 07 steht die Abbruchbedingung abs(a-b)>eps der while-Schleife.
In Zeile 08 wird das arithmetische und in Zeile 09 das geometrische Mittel berechnet.
In Zeile 13 wird der Wert von an in die Variable a gespeichert. Der Wert von a kann dann beim nächsten Schleifendurchlauf als Rechtswert in den Zeilen 08, 09 und 10 eingesetzt werden.
Mit zunehmender Anzahl der Iterationen konvergiert die Differenz |a – b| gegen Null. Wenn abs(a-b) kleiner eps wird (Zeile 07), werden die Berechnungen von an (Zeile 08), b (Zeile 09), c (Zeile 10) und s (Zeile 11) abgebrochen.
In Zeile 12 berechnet die Anweisung p=2*p die Potenz 2n.
In Zeile 15 wird die Kreiszahl π berechnet und ausgegeben. Die zweite print-Anweisung gibt den genauen Wert von pi des Moduls mpmath aus (Zeile 16).
5.4.2 Die eulersche Zahl e
Die eulersche Zahl e ist eine transzendente Zahl. Das Symbol e wurde von Leonhard Euler erstmals in einem Brief vom 25. November 1731 an Christian Goldbach erwähnt. Der Buchstabe e steht für exponentiell. Euler verknüpfte e mit π und der imaginären Einheit i. Im Jahr 1748 berechnete er 23 Nachkommastellen von e. Shigeru Kondo und Alexander Yee konnten im Jahr 2010 mithilfe eines Computers 1 Billion dezimale Nachkommastellen von e berechnen [Stewart: 261].
Aus der Zahlenfolge der natürlichen Zahlen

lässt sich die eulersche Zahl als Grenzwert berechnen:

Der folgende Konsolendialog deutet an, dass die Nachkommastellen von e wahrscheinlich nicht enden und keine Muster aufweisen:
>>> from sympy import N,E
>>> N(E,51)
2.71828182845904523536028747135266249775724709369996
Die Zahl e verfügt über erstaunliche Eigenschaften:
-
Die Ableitung und das Integral von ex ergeben wieder ex.
-
Zwischen e und π besteht der Zusammenhang: eiπ + 1 = 0.
-
Der Flächeninhalt unter der Glockenkurve
ist
.
-
Biologische und finanzmathematische Wachstumsprozesse werden mit Exponentialfunktionen beschrieben: y(t) = aebt.
-
Sie ist die Basis des natürlichen Logarithmus ln.
-
Der Flächeninhalt unter der Hyperbel y = 1/x ist in den Grenzen von 1 bis e gleich 1.
-
Eine Exponentialfunktion beschreibt den Verlauf der Normalverteilung (siehe Kapitel 14, »Algorithmen für die Berechnung statistischer Kennzahlen«).
-
Die Differenzialgleichung
hat die Lösung
(siehe Kapitel 12, »Differenzialgleichungen«).
Berechnung von e
Mit Listing 5.24 können Sie die eulersche Zahl für verschieden große n berechnen, indem Sie in Zeile 03 einen anderen Wert für N einsetzen.
01 #24_eulersche_zahl.pi
02 from math import e
03 N=10
04 for n in range(1,N):
05 en=(1+1/n)**n
06 print(en)
07 print(e,"genau")
Listing 5.24 Berechnung von e
Ausgabe
2.0
2.25
2.37037037037037
2.44140625
2.4883199999999994
2.5216263717421135
2.546499697040712
2.565784513950348
2.5811747917131984
2.718281828459045 genau
Analyse
Die Ausgabe zeigt, dass die Folge

sehr langsam gegen e konvergiert. In Kapitel 10, »Reihen«, wird eine Reihenentwicklung für e untersucht, die wesentlich schneller konvergiert.