Pfeilschreibweise

In d​er Mathematik i​st die Pfeilschreibweise e​ine Methode, d​ie Donald E. Knuth 1976 entwickelte, u​m sehr große Zahlen z​u schreiben. Sie i​st eng verwandt m​it der Ackermannfunktion. Die Idee basiert a​uf wiederholter Exponentiation, ebenso w​ie Exponentiation e​ine wiederholte Multiplikation i​st und d​ie Multiplikation e​ine wiederholte Addition ist.

Einführung

Die Multiplikation e​iner natürlichen Zahl k​ann als wiederholte Addition definiert werden:

Zum Beispiel:

Eine natürliche Zahl als Exponent kann als wiederholte Multiplikation definiert werden:

Zum Beispiel:

Dies inspirierte Knuth dazu, e​inen „Doppelpfeil“-Operator für wiederholte Exponenten z​u definieren:

Zum Beispiel:

Dieser Operator i​st rechtsassoziativ, d​as heißt, e​r wird v​on rechts n​ach links ausgewertet.

Nach dieser Definition ist

(diese Zahl vollständig auszuschreiben, würde ungefähr 1,37 Terabyte Speicherplatz belegen, nämlich bits)
usw.

Dies führt bereits z​u einigen s​ehr großen Zahlen, a​ber Knuth erweiterte s​eine Notation noch. Er führte e​inen „Dreifachpfeiloperator“ ein, u​m wiederholte Anwendung d​es „Doppelpfeils“ darzustellen:

gefolgt v​on einem „Vierfachpfeiloperator“:

und so weiter. Die allgemeine Regel dazu lautet, dass ein -fach-Pfeiloperator zu einer -fachen Wiederholung eines -fachen Pfeiloperators wird:

Beispiele:

Notation

In Ausdrücken wie wird in der Schreibweise der Exponent für gewöhnlich hochgestellt gegenüber der Basis . Allerdings lassen viele Umgebungen — beispielsweise Programmiersprachen und Klartexte wie E-Mail — solche zweidimensionalen Layouts nicht zu. Man hat sich hier mit der Notation beholfen. Der Pfeil soll als 'Erhöhung des Exponenten' gelesen werden. Lässt die Umgebung keinen Pfeil zu, wird stattdessen der Zirkumflex ^ genutzt.

Die hochgestellte Schreibweise bietet sich nicht zu einer Verallgemeinerung an. Deshalb hat Knuth die Pfeilnotation gewählt, die stattdessen in einer Zeile geschrieben werden kann.

In manchen Programmiersprachen wird das Zeichen ^ für einen anderen Operator verwendet, beispielsweise in Python für XOR. Hier wird ** zuweilen als Alternative zum genutzt, wie dies auch in der Very High Speed Integrated Circuit Hardware Description Language (VHDL) und Fortran der Fall ist. Dabei kommt hier ebenfalls die wiederholte Schreibung zum Einsatz, die eine wiederholte Anwendung des einzelnen Operators bedeuten soll. Es wäre also möglich, *** als Äquivalent zum Doppelpfeil zu nutzen, dies ist allerdings nicht gebräuchlich.

Definition

Die Pfeilnotation w​ird formal definiert durch

für alle natürlichen Zahlen für die gilt .

bedeutet hier nebeneinander stehende Pfeile (z. B. ).

Alle Pfeiloperatoren (normale Exponentenschreibweise wird hierbei als angesehen) sind rechtsassoziative Operatoren, das heißt bei mehreren Operatoren wird der Ausdruck von rechts nach links ausgewertet. Zum Beispiel gilt allgemein: , nicht ; zum Beispiel
ist nicht

Für diese Rechtsassoziativität gibt es einen guten Grund. Würden wir von links nach rechts auswerten, dann würde dasselbe ergeben wie , so dass keinen neuen Operator ergeben würde. Siehe hierzu auch Potenzturm.

Die Definition kann auf wenige ganze Zahlen erweitert werden. So kann man zum Beispiel , und setzen. Vorsicht ist jedoch mit der Wahl der Anfangsbedingung für geboten, denn es gilt dann (anders als für größere ): und .

Siehe auch

Literatur

  • Donald E. Knuth: Coping With Finiteness. In: Science. Band 194, Nr. 4271, Dezember 1976, S. 1235–1236.
  • Guido Walz (Red.): Pfeilnotation. In: Lexikon der Mathematik. 4. Moo bis Sch. Spektrum Akademischer Verlag, Heidelberg 2002, ISBN 3-8274-0436-3.
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. The authors of the article are listed here. Additional terms may apply for the media files, click on images to show image meta data.