Landau-Symbole

Notation zur Beschreibung des asymptotischen Verhaltens von Funktionen und Folgen
(Weitergeleitet von O-Notation)

Landau-Symbole (auch O-Notation, englisch big O notation) werden in der Mathematik und in der Informatik verwendet, um das asymptotische Verhalten von Funktionen und Folgen zu beschreiben.

In der Informatik werden sie bei der Analyse von Algorithmen verwendet und geben ein Maß für die Anzahl der Elementarschritte oder der Speichereinheiten in Abhängigkeit von der Größe des gegebenen Problems an.

Die Komplexitätstheorie verwendet sie, um Probleme danach zu klassifizieren, wie „schwierig“ oder aufwändig sie zu lösen sind. Zu „leichten“ Problemen existiert ein Algorithmus, dessen Laufzeit sich durch ein Polynom beschränken lässt; als „schwer“ gelten Probleme, für die man keinen Algorithmus gefunden hat, der weniger schnell als exponentiell wächst. Man nennt sie (nicht) polynomiell lösbar.

Notation Anschauliche Bedeutung

(immer ohne Berücksichtigung von Konstanten)

oder

wächst langsamer als

oder

wächst höchstens genauso schnell wie
wächst genauso schnell wie
wächst nicht immer langsamer als (Zahlentheorie)
wächst mindestens genauso schnell wie (Komplexitätstheorie)
wächst schneller als

Geschichte des O-Symbols

Bearbeiten

Erstmals drückte der deutsche Zahlentheoretiker Paul Bachmann 1894 „durch das Zeichen   eine Größe aus […], deren Ordnung in Bezug auf   die Ordnung von   nicht überschreitet […]“.[1] Der ebenfalls deutsche Zahlentheoretiker Edmund Landau, durch den die  - und  -Symbolik bekannt wurde und mit dessen Namen sie insbesondere im deutschen Sprachraum heute verbunden ist, übernahm Bachmanns Bezeichnung und führte zudem die  -Bezeichnung für „von kleiner Ordnung“ ein.[2][3]

Sonderfall: Omega-Symbol

Bearbeiten

Zwei unvereinbare Definitionen

Bearbeiten

Es gibt in der Mathematik zwei sehr häufige und inkonsistente Definitionen für

 

wobei   eine reelle Zahl,   oder   ist, wo die reellen Funktionen   und   auf einer Umgebung von   definiert sind und   in dieser Umgebung positiv ist.

Die erste wird in der analytischen Zahlentheorie benutzt und die andere in der Komplexitätstheorie. Diese Situation kann zu Verwechslungen führen.

Die Hardy-Littlewoodsche Definition

Bearbeiten

Im Jahr 1914 führten Godfrey Harold Hardy und John Edensor Littlewood das Symbol   mit der Bedeutung

 

ein.[4] Also ist   die Negation von  .

Im Jahr 1916 führten dieselben Verfasser zwei neue Symbole   und   mit den Bedeutungen

 ;
 

ein.[5] Also ist   die Negation von   und   die Negation von  .

Im Gegensatz zu einer späteren Aussage von Donald E. Knuth[6] verwendete Landau diese drei Symbole im Jahre 1924 mit den gleichen Bedeutungen.[7]

Diese Hardy-Littlewood-Symbole sind Prototypen, sie werden nie genau so verwendet.   ist zu   und   zu   geworden.

Diese drei Symbole   sowie   (dies bedeutet, dass die beiden Eigenschaften   und   erfüllt sind) werden heute noch systematisch in der analytischen Zahlentheorie verwendet.

Einfache Beispiele

Bearbeiten

Wir haben

 

und speziell

 

Wir haben

 

und speziell

 

aber

 

Zahlentheoretische Notation

Bearbeiten

Die strenge Notation   wird in der Zahlentheorie nie benutzt und man schreibt weniger streng immer  . Dies bedeutet hier „  ist ein Omega von  “.

Die Knuthsche Definition

Bearbeiten

Im Jahr 1976 veröffentlichte Donald E. Knuth einen Artikel,[6] dessen Hauptziel es ist, eine andere Verwendung des  -Symbols zu rechtfertigen. Er bemüht sich, seine Leser zu überzeugen, dass, abgesehen von einigen älteren Werken (wie dem 1951 erschienenen Buch von Edward C. Titchmarsh[8]), die Hardy-Littlewoodsche Definition fast nie benutzt wird. Er schreibt, dass er bei Landau keine Anwendung finden konnte und dass George Pólya, der bei Landau studierte, die Einschätzung bestätigte, dass Landau das  -Symbol wohl nicht verwendet hat (tatsächlich findet sich eine Nutzung in einer Abhandlung von 1924[7]). Knuth schreibt: „For all the applications I have seen so far in computer science, a stronger requirement […] is much more appropriate.“ Er verwendet das Symbol  , um diese stärkere Anforderung zu beschreiben: „Unfortunately, Hardy and Littlewood didn’t define   as I wanted to.“

Unter der Gefahr von Missverständnissen und Verwirrung definiert er auch

 .[9]

Definition

Bearbeiten

In der folgenden Tabelle bezeichnen   und   entweder

  • Folgen reeller Zahlen, dann ist   und der Grenzwert  , oder
  • reellwertige Funktionen der reellen Zahlen, dann ist   und der Grenzwert aus den erweiterten reellen Zahlen:  , oder
  • reellwertige Funktionen beliebiger topologischer Räume  , dann ist   und auch der Grenzwert  . Wichtigster Spezialfall ist dabei  .

Formal lassen sich die Landau-Symbole dann mittels Limes superior und Limes inferior folgendermaßen definieren:

Notation Definition Mathematische Definition
  asymptotisch gegenüber   vernachlässigbar  
  asymptotische obere Schranke  
  (Zahlentheorie) asymptotische untere Schranke,   ist nicht in    
  (Komplexitätstheorie) asymptotische untere Schranke,    
  asymptotisch scharfe Schranke, sowohl   als auch    
  asymptotisch dominant,    

In der Praxis existieren meist die Grenzwerte  , sodass die Abschätzung des limes superior oft durch die (einfachere) Berechnung eines Grenzwerts ersetzt werden kann.

Äquivalent zur Definition mit Limessymbolen können für einen metrischen Raum  , insbesondere also für die Fälle   und  , folgende Definitionen mit Quantoren verwendet werden:

Notation  
   
   
  (Zahlentheorie)  
  (Komplexitätstheorie)  
   
   
Notation  
   
   
  (Zahlentheorie)   (die Test-Funktion g ist immer positiv)
  (Komplexitätstheorie)  
   
   

Analoge Definitionen lassen sich auch für den Fall   sowie für einseitige Grenzwerte geben.

Folgerung

Bearbeiten

Für jede Funktion   werden durch

 

jeweils Mengen von Funktionen beschrieben. Es gelten folgende Beziehungen zwischen diesen:

 

Beispiele und Notation

Bearbeiten

Bei der Verwendung der Landau-Symbole wird die darin verwendete Funktion häufig verkürzt angegeben. Statt zum Beispiel   schreibt man häufig verkürzend   Dies wird auch in den folgenden Beispielen so gehandhabt.

Die Beispiele in der Tabelle enthalten allesamt monoton wachsende Vergleichsfunktionen  , bei denen es auf ihr Verhalten bei   ankommt. (Als Name des Arguments wird gerne   genommen – oft ohne eine Erläuterung, weil es sich sehr häufig um eine Anzahl handelt.) Sie sind in dieser Hinsicht aufsteigend geordnet, d. h. die Komplexitätsklassen sind enthalten in denen, die in Zeilen darunter stehen.

Notation Bedeutung Anschauliche Erklärung Beispiele für Laufzeiten
    ist beschränkt.   überschreitet einen konstanten Wert nicht (ist unabhängig vom Wert des Arguments  ). Feststellen, ob eine Binärzahl gerade ist
Nachschlagen des  -ten Elementes in einem Feld in einer Registermaschine
    wächst doppel-logarithmisch. Bei Basis 2 erhöht sich   um 1, wenn   quadriert wird. Interpolationssuche im sortierten Feld mit   gleichförmig verteilten Einträgen
    wächst logarithmisch.   wächst ungefähr um einen konstanten Betrag, wenn sich   verdoppelt.
Die Basis des Logarithmus ist dabei egal.
Binäre Suche im sortierten Feld mit   Einträgen
    wächst wie die Wurzelfunktion.   wächst ungefähr auf das Doppelte, wenn sich   vervierfacht. Anzahl der Divisionen des naiven Primzahltests (Teilen durch jede ganze Zahl  )
    wächst linear.   wächst ungefähr auf das Doppelte, wenn sich   verdoppelt. Suche im unsortierten Feld mit   Einträgen (Bsp. Lineare Suche)
    hat super-lineares Wachstum. Vergleichbasierte Algorithmen zum Sortieren von   Zahlen

Mergesort, Heapsort

    wächst quadratisch.   wächst ungefähr auf das Vierfache, wenn sich   verdoppelt. Einfache Algorithmen zum Sortieren von   Zahlen

Selectionsort

    wächst polynomiell.   wächst ungefähr auf das  -Fache, wenn sich   verdoppelt. „Einfache“ Algorithmen
    wächst exponentiell.   wächst ungefähr auf das Doppelte, wenn sich   um 1 erhöht. Erfüllbarkeitsproblem der Aussagenlogik (SAT) mittels erschöpfender Suche
    wächst faktoriell.   wächst ungefähr auf das  -Fache, wenn sich   um 1 erhöht. Problem des Handlungsreisenden (mit erschöpfender Suche)
    wächst wie die modifizierte Ackermannfunktion. Problem ist berechenbar, aber nicht notwendig primitiv-rekursiv

Die Landau-Notation wird verwendet, um das asymptotische Verhalten bei Annäherung an einen endlichen oder unendlichen Grenzwert zu beschreiben. Das große   wird verwendet, um eine maximale Größenordnung anzugeben. So gilt beispielsweise nach der Stirlingformel für das asymptotische Verhalten der Fakultät

  für  

und

  für  .

Der Faktor   ist dabei nur eine Konstante und kann für die Abschätzung der Größenordnung vernachlässigt werden.

Die Landau-Notation kann auch benutzt werden, um den Fehlerterm einer Approximation zu beschreiben. Beispielsweise besagt

  für  ,

dass der Absolutbetrag des Approximationsfehlers kleiner als eine Konstante mal   für   hinreichend nahe bei Null ist.

Das kleine   wird verwendet, um zu sagen, dass ein Ausdruck vernachlässigbar klein gegenüber dem angegebenen Ausdruck ist. Für differenzierbare Funktionen gilt beispielsweise

  für  ,

der Fehler bei Approximation durch die Tangente geht also schneller als linear gegen  .

Notationsfallen

Bearbeiten

Symbolisches Gleichheitszeichen

Bearbeiten

Oft wird in der Mathematik bei der Landau-Notation das Gleichheitszeichen verwendet. Es handelt sich dabei aber um eine rein symbolische Schreibweise und nicht um eine Gleichheitsaussage, auf die beispielsweise die Gesetze der Transitivität oder der Symmetrie anwendbar sind: Eine Aussage wie   ist keine Gleichung und keine Seite ist durch die andere bestimmt. Aus   und   folgt nicht, dass   und   gleich sind. Genauso wenig kann man aus   und   schließen, dass   und   dieselbe Klasse sind oder die eine in der anderen enthalten ist.

Tatsächlich handelt es sich bei   um eine Menge, welche alle diejenigen Funktionen enthält, welche höchstens so schnell wachsen wie  . Die Schreibweise   ist also formal korrekt.

Die Notation mit dem Gleichheitszeichen wie in   wird trotzdem in der Praxis ausgiebig genutzt. Beispielsweise soll der Ausdruck   besagen, dass es Konstanten   und   gibt, sodass

 

für hinreichend große   gilt.

Vergessener Grenzwert

Bearbeiten

Eine weitere Falle besteht darin, dass oft nicht angegeben wird, auf welchen Grenzwert sich das Landausymbol bezieht. Der Grenzwert ist aber wesentlich; so ist beispielsweise

 

für  , nicht aber für den einseitigen Grenzwert   mit

 

Jedoch wird normalerweise der zu betrachtende Grenzwert aus dem Zusammenhang klar und Mehrdeutigkeiten treten nur selten auf.

Anwendung in der Komplexitätstheorie

Bearbeiten

In der Komplexitätstheorie werden die Landau-Symbole vor allem verwendet, um den (minimalen, mittleren oder maximalen) Zeit- oder Speicherplatzbedarf eines Algorithmus zu beschreiben. Man spricht dann von Zeitkomplexität bzw. Platzkomplexität. Die Komplexität kann vom verwendeten Maschinenmodell abhängen. In der Regel nimmt man jedoch ein „normales“ Modell an, zum Beispiel ein der Turingmaschine äquivalentes.

Siehe auch

Bearbeiten
Bearbeiten

Einzelnachweise

Bearbeiten
  1. Seite 401 f. des 1894 erschienenen zweiten Teils Die analytische Zahlentheorie (archive.org) seines Werkes Zahlentheorie.
  2. Seite 31 sowie Seite 61 des 1909 erschienenen ersten Bands seines Werkes Handbuch der Lehre von der Verteilung der Primzahlen (archive.org).
  3. Earliest Uses of Symbols of Number Theory, 22. September 2006: (Memento vom 19. Oktober 2007 im Internet Archive) According to Władysław Narkiewicz in The Development of Prime Number Theory: “The symbols O(·) and o(·) are usually called the Landau symbols. This name is only partially correct, since it seems that the first of them appeared first in the second volume of P. Bachmann’s treatise on number theory (Bachmann, 1894). In any case Landau (1909a, p. 883) states that he had seen it for the first time in Bachmann’s book. The symbol o(·) appears first in Landau (1909a).”
  4. G. H. Hardy, J. E. Littlewood: Some problems of Diophantine approximation. Part II. The trigonometrical series associated with the elliptic ϑ-functions. In: Acta Math. Band 37, 1914, S. 193–239, hier S. 225, doi:10.1007/BF02401834.
  5. G. H. Hardy, J. E. Littlewood: Contribution to the theory of the Riemann zeta-function and the theory of the distribution of primes. In: Acta Math. Band 41, 1916, S. 119–196, hier S. 138, doi:10.1007/BF02422942.
  6. a b Donald E. Knuth: Big Omicron and big Omega and big Theta. In: SIGACT News, Apr.–June 1976, S. 18–24 (Online (Memento vom 30. November 2021 im Internet Archive) [PDF; 348 kB]).
  7. a b Edmund Landau: Über die Anzahl der Gitterpunkte in gewissen Bereichen. (Vierte Abhandlung). In: Nachrichten von der Gesellschaft der Wissenschaften zu Göttingen. Mathematisch-Physikalische Klasse. 1924, S. 137–150; oder "Collected Works" (P.T. Bateman et al.), Thales Verlag, Bd. 8, 1987, S. 145–158; hier S. 140 (Göttinger Digitalisierungszentrum).
  8. Edward C. Titchmarsh: The Theory of the Riemann Zeta-Function. Clarendon Press, Oxford 1951.
  9. Mit dem Kommentar: “Although I have changed Hardy and Littlewood’s definition of  , I feel justified in doing so because their definition is by no mean in wide use, and because there are other ways to say what they want to say in the comparatively rare cases when their definition applies”.