Complexity in grammar Formale Komplexitätsbegriffe Timm Lichte HHU Düsseldorf WS 2015/2016, 28.10.2015 SFB 991 Komplexität? ≈ Vielschichtigkeit, Schwierigkeit — Effizienz, Ökonomie, Sparsamkeit Komplexitäten! Komplexität einer formalen Grammatik Komplexität einer formalen Sprache Komplexität der Verarbeitung (Parsen/Generierung) einer Sprache anhand einer Grammatik Komplexität eines natürlich-sprachlichen Phänomens Komplexität einer natürlichen Sprache ⇒ Wie lässt sich Komplexität formal präzise charakterisieren? Was verursacht Komplexität? Lichte (HHU) 2 Ontologie Wir betrachten zunächst Stringsprachen: a / w ∈ LG ∈ {LG |G ∈ Ĝ} a w LG Ĝ ist ein Buchstabe und Element eines Alphabets Σ. ist ein Wort und Element einer Sprache L. ist die Sprache der Grammatik G. ist eine Menge/Klasse von Grammatiken. Beispiele: Σ = w = L = G = LG = Lichte (HHU) {a, b} abba {abba, abab, bbb, . . .} hN, Σ, S, Pi ∗ {w 0 |S →PG w 0 } (z.B. eine CFG) 3 Informatische Komplexität Intuition Je komplexer desto schwieriger auswendig zu lernen. K (Σ): K (w ): K (L): K (G): K (G, w ) Lichte (HHU) Komplexität eines Alphabets Σ = |Σ| Komplexität eines Wortes w = |w |, K (Σw ), Entropie Komplexität einer Sprache L = |L| Komplexität einer Grammatik G = |G|, K (LG ) = |Menge der möglichen Derivationen| (Ambiguität) = Summe der Längen der möglichen Derivationen = |längste Derivation| 4 Beschreibungskomplexität Intuition Je komplexer desto aufwändiger zu beschreiben. Derivationskomplexität: K (G, w ) = |kürzeste Derivation| Kolmogorov-Komplexität:[2] K (w ) = |kürzeste Programm das w ausgibt| Beispiel (Wikipedia) Erzeugung einer Folge mit 1000 Nullen: begin for i:= 1 to 1000 print "0" end (Standardisierung durch die Minimal Description Length) Lichte (HHU) 5 Relative extensionale Komplexität Intuition Je komplexer desto mächtiger. Gegeben zwei Wörter w und w 0: K (w ) > K (w 0 ) ←→ w . w 0 Gegeben zwei Grammatiken G und G 0: K (G) > K (G 0 ) ←→ PG ⊃ PG0 K (G) > K (G 0 ) ←→ K (LG ) > K (LG0 ) ←→ LG ⊃ LG0 Gegeben zwei Grammatikklassen Ĝ und Ĝ 0: K (Ĝ) > K (Ĝ 0 ) ←→ Für jede G 0 ∈ Ĝ 0 gibt es eine G ∈ Ĝ und PG0 = PG K (Ĝ) > K (Ĝ 0 ) ←→ Für jede G 0 ∈ Ĝ 0 gibt es eine G ∈ Ĝ und LG0 = LG ⇒ berühmtestes Beispiel: Chomsky(-Schützenberger)-Hierarchie[1] Lichte (HHU) 6 Relative extensionale Komplexität von Grammatikklassen Chomsky(-Schützenberger)-Hierarchie[1] type 0: recursively enumerable ϕ→µ a f (n) type 1: context-sensitive ϕ→µ |ϕ | ≤ |µ | N := die Menge der Nichtterminale T := die Menge der Terminale (aka Σ) n a2 , an b n c n . . . , W k type 2: context-free A→µ A ∈ N, µ ∈ (N ∪ T ) ∗ an bm c m d n , WW R type 3: regular A → wB oder A → a A, B ∈ N, a ∈ T , w ∈ T ∗ Lichte (HHU) an b m c k d l 7 Relative extensionale Komplexität von Grammatikklassen Chomsky(-Schützenberger)-Hierarchie[1] type 0: recursively enumerable HPSG, TG, TM a f (n) type 1: context-sensitive LFG, LBA n a2 , an b n c n . . . , W k type 2: context-free CFG, PDA an bm c m d n , WW R type 3: regular FSA Lichte (HHU) an b m c k d l 7 Relative extensionale Komplexität von Grammatikklassen Chomsky(-Schützenberger)-Hierarchie[1] type 0: recursively enumerable HPSG, TG, TM af (n) type 1: context-sensitive LFG, LBA n a2 , an b n c n . . . , W k mildly context-sensitive TAG, EPDA an bm c n d m , WW type 2: context-free CFG, PDA NL is mildly contextsensitive? (Joshi [3]) ⊃ CFL cross-serial dep. semi-linear in PTIME an bm c m d n , WW R type 3: regular FSA Lichte (HHU) an b m c k d l 7 Algorithmische Komplexität (Komplexitätstheorie) Intuition Je komplexer desto aufwändiger zu berechnen. Modell: Turingmaschine (Turing 1936) Band mit Feldern Lese-/Schreibkopf Programm (aus Wikipedia) Komponenten: unendlich langes Speicherband von linear geordneten Feldern/Zellen Lese-/Schreibkopf, der sich schrittweise auf dem Band bewegt Programm (= endlicher Automat) kontrolliert den Kopf Lichte (HHU) 8 Algorithmische Komplexität (Komplexitätstheorie) Intuition Je komplexer desto aufwändiger zu berechnen. Modell: Turingmaschine (Turing 1936) Band mit Feldern Lese-/Schreibkopf Programm (aus Wikipedia) Funktionsweise: Start: Eingabe auf dem Band, Kopf direkt davor Ende: Ausgabe auf dem Band, Programm im Endzustand δ (Zustand, alter Zellinhalt) = (Zustand, neuer Zellinhalt, {R, L, N }) Lichte (HHU) 8 Algorithmische Komplexität (Komplexitätstheorie) Intuition Je komplexer desto aufwändiger zu berechnen. Modell: Turingmaschine (Turing 1936) Band mit Feldern Lese-/Schreibkopf Programm (aus Wikipedia) Wortproblem: w ∈ LG ? ⇒ Wie viele Schritte werden benötigt? (Zeitkomplexität) ⇒ Wie viele Zellen werden benötigt? (Raumkomplexität) ⇒ Hält die Turingmaschine? (Halteproblem) Lichte (HHU) 8 Algorithmische Komplexität (Komplexitätstheorie) semi-entscheidbar entscheidbar factorial time EXPSPACE EXPTIME NPSPACE PSPACE NP(TIME) P(TIME) LIN REALTIME constant time Lichte (HHU) O(n!) O(2p(n) ) O(2p(n) ) O(nc ) O(nc ) O(nc ) O(nc ) O(n) O(n) O(c) “non-efficient” “efficient” 9 Algorithmische × extensionale Komplexität type 0: recursively enumerable HPSG, TG, TM af (n) type 1: context-sensitive LFG, LBA n a2 , W n an b n c n . . . , Wk NP P mildly context-sensitive TAG, EPDA an bm c n d m , WW O(n6 ) type 2: context-free CFG, PDA an bm c m d n , WW R O(n3 ) type 3: regular FSA Lichte (HHU) an b m c k d l O(n) 10 Zusammenfassung Komplexitätsbegriffe: informatische Komplexität Beschreibungskomplexität extensionale Komplexität algorithmische Komplexität Andere Begriffe: Monoton versus nicht-monoton Fragen des Seminars: Anwendung/Kritik in der theoretischen Linguistik? z.B. Rolle der Grammatikgröße in der algorithmischen Komplexität? Andere Komplexitätsbegriffe? Lichte (HHU) 11 Entropie (Shannon & Weaver 1949) Maß für die Informationsdichte eines Wortes w = x1 . . . xn : I(xi ) = − log2 (pxi ) Iges = I(x1 ) + I(x2 ) + . . . + I(xn ) = n X I(xi ) i=1 Beispiel (aus Wikipedia) w = Mississippi mit |w | = 11 und Σ = {i, M, p, s} und p(i) = 4 1 2 4 , p(M) = , p(p) = , p(s) = 11 11 11 11 Iges = 4 · I(i) + 1 · I(M) + 2 · I(p) + 4 · I(s) = 4 · 1.46bit + 1 · 3.46bit + 2 · 2.46bit + 4 · 1.46bit = 20.06bit ≈ 21bit zurück Lichte (HHU) 12 [1] Chomsky, Noam & Marcel-Paul Schützenberger. 1963. The algebraic theory of context-free languages. In P. Braffort & D. Hirschberg (eds.), Computer programming and formal systems (Studies in Logic and the Foundations of Mathematics 35), 118–161. Elsevier. [2] Cover, Thomas M., Peter Gacs & Robert M. Gray. 1989. Kolmogorov’s contributions to information theory and algorithmic complexity. The Annals of Probability 17(3). 840–865. http://www.jstor.org/stable/2244387. [3] Joshi, Aravind K. 1985. Tree adjoining grammars: how much context-sensitivity is required to provide reasonable structural descriptions. In David Dowty, Lauri Karttunen & Arnold Zwicky (eds.), Natural language parsing, 206–250. Cambridge University Press. [4] Shannon, Claude E. & Warren Weaver. 1949. The mathematical theory of communication. Urbana, IL: The University of Illinois Press. [5] Turing, Alan M. 1936. On computable numbers, with an application to the Entscheidungsproblem. Journal of Mathematics 58(345-363). 5.
© Copyright 2024 ExpyDoc