Automaten, formale Sprachen und Berechenbarkeit II SoSe 2004 Prof. W. Brauer Teil 3: Potenzreihen und kontextfreie Sprachen (Vgl. Buch von A. Salomaa)

Slides:



Advertisements
Ähnliche Präsentationen
Zufallsfelder Def. Zufallsfeld: Sei V eine endliche Menge (von Orten). Für jedes v V existiere eine (endliche) Menge X(v) von Zuständen x(v). Der Raum.
Advertisements

Vorlesung Compilertechnik Sommersemester 2008
Definition [1]: Sei S eine endliche Menge und sei p eine Abbildung von S in die positiven reellen Zahlen Für einen Teilmenge ES von S sei p definiert.
Algebraische Zahlen: Exaktes Rechnen mit Wurzeln
Schnelle Matrizenoperationen von Christian Büttner
Prof. Dr. W. Conen 15. November 2004
8. Formale Sprachen und Grammatiken
Syntax, Semantik, Spezifikation - Grundlagen der Informatik R. Hartwig Kapitel 4 / 1 Termalgebren Definition "Freie Algebra" Die -Algebra A = [A, F ] heißt.
Ein Modellansatz zur Beschreibung von Vagheiten
Grammatiken, Definitionen
Einige entscheidbare bzw. rekursiv aufzählbare Sprachen
Friedhelm Meyer auf der Heide 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Grammatiken beschreiben Sprachen L µ *, indem.
Friedhelm Meyer auf der Heide 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Reduktionen Def: L · L (L ist reduzierbar auf.
Algorithmentheorie 04 –Hashing
Vorlesung Informatik 3 Einführung in die Theoretische Informatik (05 – Reguläre Ausdrücke) Prof. Dr. Th. Ottmann.
Vorlesung Informatik 3 Einführung in die Theoretische Informatik (06 – Reduktion endlicher Automaten) Prof. Dr. Th. Ottmann.
Vorlesung Informatik 3 Einführung in die Theoretische Informatik (12 – Kellerautomaten, PDA) Prof. Dr. Th. Ottmann.
Vorlesung Informatik 3 Einführung in die Theoretische Informatik (04 – Automaten mit ε-Transitionen) Prof. Dr. Th. Ottmann.
Vorlesung Informatik 3 Einführung in die Theoretische Informatik (17 –Turingmaschinen) Prof. Dr. Th. Ottmann.
Kapitel 5 Stetigkeit.
Kapitel 1 Die natürlichen und die ganze Zahlen. Kapitel 1: Die natürlichen und die ganzen Zahlen © Beutelspacher/Zschiegner April 2005 Seite 2 Inhalt.
Kapitel 2 Zählen (Kombinatorik)
Kapitel 2 Die rationalen und die irrationalen Zahlen.
Kapitel 4 Geometrische Abbildungen
Prof. Dr. rer.nat. Ralph Großmann Fakultät Informatik / Mathematik Sommersemester 2012 Internet-Technologien XML-basierte Techniken Teil Metasprache der.
Reguläre Sprachen Karin Haenelt.
© Karin Haenelt 2006, Äquivalenzen Reg.Ausdrücke, Reg.Sprachen, EA ( ) 1 Reguläre Sprachen Karin Haenelt.
Beispiele für Ausdrucksalgebren
V. Algebra und Geometrie
Christian Schindelhauer
Einführung in Berechenbarkeit, Formale Sprachen und Komplexitätstheorie Wintersemester 2005/ Vorlesung Dominic Dumrauf.
Christian Schindelhauer
(Ron Rivest, Adi Shamit, Leonard Adleman , 1977)
Zahlen mit Zahlen ausmessen
§9 Der affine Raum – Teil 2: Geraden
§9 Der affine Raum – Teil 2: Geraden
§14 Basis und Dimension  (14.1) Definition: V sei wieder ein K-Vektorraum. Eine Menge B von Vektoren aus V heißt Basis von V, wenn B ist Erzeugendensystem.
§8 Gruppen und Körper (8.1) Definition: Eine Gruppe G ist eine Menge zusammen mit einer Verknüpfung, die jedem Paar (a,b) von Elementen aus G ein weiteres.
Formale Sprachen Grundbegriffe für formale Sprachen
§10 Vektorraum. Definition und Beispiele
§17 Produkte und Quotienten von Vektorräumen
§24 Affine Koordinatensysteme
Grenzen der Regularität
Christian Schindelhauer Wintersemester 2006/07 8. Vorlesung
Beweissysteme Hartmut Klauck Universität Frankfurt WS 06/
Information und Kommunikation
Folie 1 Kapitel IV. Matrizen Inhalt: Matrizen als eigenständige mathematische Objekte Zusammenhang zwischen Matrizen und linearen Abbildungen Produkt von.
§23 Basiswechsel und allgemeine lineare Gruppe
§3 Allgemeine lineare Gleichungssysteme
Fuzzymengen – Was ist das?
Institut für Theoretische Informatik
Formale Sprachen Grammatiken und die Chomsky-Hierarchie
POCKET TEACHER Mathematik Algebra
Automaten, formale Sprachen und Berechenbarkeit II SoSe 2004 Prof. W. Brauer Teil 1: Wiederholung (Vor allem Folien von Priv.-Doz. Dr. Kindler vom WS 2001/02.
Beispiele: KFG 2.Teil Beispiel 1: Sei G eine Grammatik mit den folgenden Regeln: S  Ac | Bd A  aAb | ab B  aBbb | abb Definieren Sie.
Noam CHOMSKY, Sheila GREIBACH
Noam CHOMSKY, Sheila GREIBACH
ENDLICHE KÖRPER RSA – VERFAHREN.
Christian Schindelhauer Wintersemester 2006/07 5. Vorlesung
Christian Schindelhauer Wintersemester 2006/07 3. Vorlesung
Christian Schindelhauer Wintersemester 2006/07 2. Vorlesung
1 Albert-Ludwigs-Universität Freiburg Rechnernetze und Telematik Prof. Dr. Christian Schindelhauer Informatik III Christian Schindelhauer Wintersemester.
Informatik Formale Sprachen 1.2 Grammatiken formaler Sprachen
Institut für Softwarewissenschaft – Universität WienP.Brezany 1 Beispiele (Frist: ) Beispiel 1: Sei  = {a, b} ein Alphabet und Q = {q 0, q 1 } eine.
7. Formale Sprachen und Grammatiken
Folie 1 §21 Das Produkt von Matrizen (21.1) Definition: Für eine (m,n)-Matrix A und eine (n,s)-Matrix B ist das (Matrizen-) Produkt AB definiert als (21.2)
Kapitel 4 Restklassen (die modulo-Rechnung)
Syntax, Semantik, Spezifikation - Grundlagen der Informatik R. Hartwig Kapitel 3 / 1 Algebraische Hülle und Homomorphie A = [A, F ] sei  -Algebra. Eine.
 Sortigkeit oder Arität
Folie 1 §8 Gruppen und Körper (8.1) Definition: Eine Gruppe G ist eine Menge zusammen mit einer Verknüpfung, die jedem Paar (a,b) von Elementen aus G ein.
 Präsentation transkript:

Automaten, formale Sprachen und Berechenbarkeit II SoSe 2004 Prof. W. Brauer Teil 3: Potenzreihen und kontextfreie Sprachen (Vgl. Buch von A. Salomaa)

T sei ein endliches Alphabet. L T* ist beschreibbar durch seine charakteristische Funktion L : T* Z mit L (w) = 1 für w in L und = 0 sonst. ( Z sei die Menge der ganzen Zahlen, N die Menge der natürlichen Zahlen mit der 0.) Allgemeiner beschreibt jede Abbildung : T* Z eine formale Sprache L T*: L = supt ( ) := { w T* | (w) 0 } (supt steht für support). Jede Abbildung : T* Z lässt sich als formale Potenzreihe schreiben: = w T* (w)w = (w 1 )w 1 + (w 2 )w 2 + (w 3 )w (Reihenfolge der Summanden beliebig) Dabei wird jedes Element von T als Unbestimmte aufgefasst; diese Unbestimmten sind aber nicht vertauschbar. Ist (w) {0, 1} für jedes w aus T*, dann ist die charakteristische Potenzreihe von L. Z (T) sei die Menge aller formalen Potenzreihen mit Koeffizienten (w) aus Z und Unbestimmten aus T. Analog sei N(T) die Menge aller formalen Potenzreihen mit Koeffizienten (w) aus N und Unbestimmten aus T.

Verschiedene Interpretationen der Koeffizienten einer formalen Potenzreihe. 1) Sei G ein Hilfsmittel zur Erzeugung der formalen Sprache L(G) T* (Grammatik, Automat,...). Dann hat jedes w aus L(G) mindestens eine strukturelle Beschreibung an Hand des Erzeugungshilfsmittels (Linksableitung, Ableitungsbaum,...). Sei (w) die Anzahl der verschiedenen Strukturbeschreibungen vom selben Typ für w. Dann gibt (w) die strukturelle Mehrdeutigkeit von w an. Ist etwa G eine kontextfreie Grammatik, so sei (w) der Grad der Mehrdeutigkeit von w bezüglich G. Dann kann als form. Pot.-R. aus N(T) gewählt werden: w L(G) gdw. (w) > 0. 3) Seien G und E zwei verschiedene Erzeugungsverfahren für L T*. Dann kann man wie folgt eine formale Potenzreihe aus Z (T) für L definieren: (w) sei: Anzahl verschiedener Erzeugungsmöglichkeiten von w mittels G minus Anzahl verschiedener Erzeugungsmöglichkeiten von w mittels E. 2) Wie unter 1) aber mit Akzeptierungsmechanismen statt Erzeugungsverfahren.

Operationen mit formalen Potenzreihen. Definitionen zunächst für Z (T) - für N(T) geht alles analog. Zahlprodukt: Für n N und Z (T) sei n := w T* n (w)w Z (T). Es gilt (n )(w) = n (w). Seien, aus Z (T). Summe: w T*: ( + )(w) := (w) + (w). Es gilt + Z (T). Cauchy-Produkt: w T*: ( )(w) := uv=w (u) (v). Es gilt Z (T). Dies Produkt ist assoziativ. Vgl. das Produkt zweier normaler Polynome! Z (T) ist bzgl. Summe und Cauchy-Produkt ein Ring. Feststellung: supt( + ) = supt( ) supt( ) supt( ) = (supt( ))(supt( ))

Plus-Operation (iteriertes Cauchy-Produkt) für N (T). Für k1 sei k das k-fache Cauchy-Produkt von, d.h. k+1 = k, 1 =. Hilfssatz 1: + := lim m k=1,...m k ist für jedes N (T) mit ( )=0 wohldefiniert. Beweis: (1) Für jedes w aus T* ist + (w) 0 gdw. w sich schreiben lässt als w = w 1 w 2 w 3... w n mit w i supt( ), 1in|w|. (2) Jedes w aus T* mit (w) 0 hat nur endlich viele Zerlegungen wie in (1), und deren Anzahl ist der Koeffizient von w in +. Hilfssatz 2: (1) + N (T), supt( + ) = (supt( )) + = supt( ) (supt( )) 2 (supt( )) 3... (2) + + = + + = + Beweis: Nachrechnen! Bemerkung: Sei das leere Wort und die form. Pot.-R. mit ( ) = 1 sowie (w ) = 0 für alle w aus T +. Sei ferner N (T) mit ( ) = 1 und Z (T) so, dass = + (-1) (und ( )=0). Für := + + gilt: = ( - )( + + ) = + ( ) = und =. D.h. ist die Inverse zu ; deshalb wird + auch Quasi-Inverse von genannt.

Familien formaler Potenzreihen aus N (T). Definition: (1) Für a T sei a die form. Pot.-R. mit supt(a)={a} und (a)=1. ( a ist die charakteristische Pot.-R. von {a} ) (2) Eine Familie F von form. Pot.-Reihen heißt rational abgeschlossen, wenn für jedes aus F mit ( )=0 auch + in F liegt. (3) Die Familie der rationalen nichtnegativen form. Pot.-R. ( in Zeichen rat + (T) ) ist die kleinste rational abgeschlossene Familie form. Pot.-R., die die Reihe und für jedes a aus T auch die Reihe a enthält, und die abgeschlossen ist unter Zahlprodukt mit natürlichen Zahlen sowie Summe und Cauchy-Produkt. Satz: L T* ist regulär gdw. L = supt( ) für mindestens ein aus rat + (T). Beweis: Offenbar sind die regulären Teilmengen von T* genau die Mengen supt( ) mit aus rat + (T).

Kontextfreie Sprachen und formale Potenzreihen. Wir betrachten nur kontextfreie Grammatiken G ohne Kettenregeln (A B) und ohne - Regeln (A ). Zu jeder solchen Grammatik wird, wie folgt, eine formale Potenzreihe konstruiert, deren Koeffizienten (w) den Grad der Mehrdeutigkeit (Anzahl der verschiedenen Linksableitungen) der Wörter w aus L(G) bzgl. dieser Grammatik angeben. Man schreibe die Grammatik G um in ein formales Gleichungssystem, indem man | durch + und durch = ersetzt und die Variablen (Nichtterminale) von G als Unbekannte für Teilmengen von T* auffasst. Beispiel: Die Dycksprache über {a,b} ohne : Grammatik: X 0 X 0 X 0 | aX 0 b | ab Gleichungssystem: X 0 = X 0 X 0 + aX 0 b + ab Die allgemeine Form des Gleichungssystems Gl(G) zur Grammatik G : Seien X 0, X 1,... X n mit n0 die Variablen von G und P q (i), q=1,2,...m i die rechten Seiten der Regeln für X i ; X 0 sei die Startvariable. Die i-te Zeile von Gl(G), für i=0,...,n, ist dann X i = P 1 (i) + P 2 (i) P (i) mi ; die rechten Seiten werden kurz mit i bezeichnet. Die Potenzreihe wird sukzessiv durch Polynome (k), die aus GL(G) berechnet werden, approximiert.

Die formalen Pot.-Reihen i (k) für 0 i n und k 0 seien definiert durch: i (0) = 0, d.h. supt i (0) = Für k > 0 erhält man i (k) aus i, indem man jedes X m (0mn) durch m (k-1) ersetzt. Beispiel: Dyck-Sprache. 0 (0) = 0, 0 (1) = ab, i (2) = abab + aabb + ab, i (3) = (abab +aabb +ab) (abab +aabb +ab) + a(abab +aabb +ab)b +ab. Offenbar ist jedes i (k) als Polynom auffassbar. Die Potenzreihe für L(G) ist dann = lim k 0 (k). Begründung: Für jedes m N und jedes w T* mit |w| m ist der Koeffizient von w in der form. Pot.-R. 0 (2m-1) gleich dem Koeffizienten von w in der Pot.-R.. (Das beruht auf der Einschränkung: keine Ketten- und keine -Regeln)

Verallgemeinerung Es werden formale Potenzreihen aus Z (T) und allgemeinere Gleichungssysteme zugelassen; d.h. in den Potenzreihen und in den P q (i) auf den rechten Seiten der Gleichungen werden beliebige ganze Zahlen (aus Z ) als Koeffizienten zugelassen (also auch - statt +), aber P q (i) und P q (i) X j gilt weiterhin.. Die form. Pot.-R., die man aus solchen Gleichungssystemen nach obigem Verfahren konstruieren kann, heißen algebraische Potenzreihen. Beispiel eines allgemeineren Satzes: Def.: Das Hadamard-Produkt zweier form Pot.-Reihen und aus Z (T) ist w T* (w) (w)w Z (T). Satz: Das Hadamard-Produkt einer rationalen und eine algebraischen Potenzreihe ist eine algebraische Pot.-Reihe. Das ist eine Verallgemeinerung des Satzes: Der Durchschnitt einer regulären mit einer kontextfreien Sprache ist kontextfrei. Literatur: W. Kuich, A. Salomaa. Semirings, Automata, Languages. Springer-Verlag, J. Berstel, C. Reutenauer: Rational Series and Their Languages. Springer-Verlag, 1987.