automatentheorie und formale sprachen wintersemester...
TRANSCRIPT
. . . . . .
Automatentheorie und Formale SprachenWintersemester 2007/2008
Steffen [email protected]
Fachhochschule Wiesbaden
18. Oktober 2007
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 1 / 30
. . . . . .
Administratives
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 2 / 30
. . . . . .
Termine
Vorlesung:
Donnerstag 745 - 915 im Horsaal C101
Ubungsgruppen:
Gruppe A Montag 1115 - 1245 Horsaal C104 Berthold
Gruppe B Montag 930 - 1100 Horsaal C104 Berthold
Gruppe C Donnerstag 930 - 1100 Horsaal A322 Reith
Gruppe D Donnerstag 1115 - 1245 Horsaal C104 Reith
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 3 / 30
. . . . . .
Uber den Dozenten
Prof. Dr. Steffen Reith, geboren ja, verheiratet, ein KindSeit Sommersemester 2006 an der FH WiesbadenVorher tatig als Softwareentwickler fur kryptographische undmathematische Algorithmen fur tief eingebettete System in KFZs.Spezialgebiete: Komplexitatstheorie, Logik in der Informatik undKryptographie
EMail:[email protected]
IM (Jabber):[email protected]
Buro:Raum C304
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 4 / 30
. . . . . .
Uber den Dozenten
Prof. Dr. Steffen Reith, geboren 1968, verheiratet, ein KindSeit Sommersemester 2006 an der FH WiesbadenVorher tatig als Softwareentwickler fur kryptographische undmathematische Algorithmen fur tief eingebettete System in KFZs.Spezialgebiete: Komplexitatstheorie, Logik in der Informatik undKryptographie
EMail:[email protected]
IM (Jabber):[email protected]
Buro:Raum C304
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 4 / 30
. . . . . .
Weitere Informationen zur Vorlesung
Webseite: http://www.informatik.fh-wiesbaden.de/˜reith
Literatur:John E. Hopcroft and Rajeev Motwani and Jeffrey D. Ullman,Introduction to Automata Theory, Languages, and Computation,Addison Wesley Publishing Company, 2001John E. Hopcroft and Rajeev Motwani and Jeffrey D. Ullman,Einfuhrung in die Automatentheorie, Formale Sprachen undKomplexitatstheorie, Pearson Studium, 2002Uwe Schoning, Theoretische Informatik - kurzgefasst, SpektrumAkademischer Verlag, 2001Juraj Hromkovic, Theoretische Informatik - Formale Sprachen,Berechenbarkeit, Komplexitatstheorie, Algorithmik,Kommunikation und Kryptographie, 3. Auflage, Teubner, 2007
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 5 / 30
. . . . . .
Weitere Informationen zur Vorlesung (II)Ersatztermine:Werden dienstags stattfinden
Skript:Wird in unregelmaßigen Abstanden auf der Webseite der Vorlesungveroffentlicht (Eine alte Variante steht bereits auf der Webseite zurVerfugung).
Folien:Einzelne (kleine) Teile der Vorlesung werden in Folienform zurVerfugung stehen. Folien, die vom Skript abweichen, werden auf derWebseite (nachtraglich) zur Verfugung stehen.
Eine eigene Mitschrift sollte angefertigt werden!
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 6 / 30
. . . . . .
Ein roter Faden
In der Vorlesung werden die folgenden Themen untersucht:
.
..
1 Einleitung (grundlegende Begriffe, L-Systeme)
.
.
.
2 Die Chomsky-Hierarchie (Sprachklassen, Wortproblem)
.
.
.
3 Endliche Automaten und regulare Sprachen (Pumping Lemma)
.
.
.
4 Kontextfreie Sprachen (Normalformen, Kellerautomaten)
.
.
.
5 Kontextsensitive- und Typ0-Sprachen (Turingmaschinen,Unentscheidbarkeit)
.
.
.
6 Komplexitat von Algorithmen
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 7 / 30
. . . . . .
Ein roter Faden
In der Vorlesung werden die folgenden Themen untersucht:
.
..
1 Einleitung (grundlegende Begriffe, L-Systeme)
.
.
.
2 Die Chomsky-Hierarchie (Sprachklassen, Wortproblem)
.
.
.
3 Endliche Automaten und regulare Sprachen (Pumping Lemma)
.
.
.
4 Kontextfreie Sprachen (Normalformen, Kellerautomaten)
.
.
.
5 Kontextsensitive- und Typ0-Sprachen (Turingmaschinen,Unentscheidbarkeit)
.
.
.
6 Komplexitat von Algorithmen
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 7 / 30
. . . . . .
Ein roter Faden
In der Vorlesung werden die folgenden Themen untersucht:
.
..
1 Einleitung (grundlegende Begriffe, L-Systeme)
.
.
.
2 Die Chomsky-Hierarchie (Sprachklassen, Wortproblem)
.
.
.
3 Endliche Automaten und regulare Sprachen (Pumping Lemma)
.
.
.
4 Kontextfreie Sprachen (Normalformen, Kellerautomaten)
.
.
.
5 Kontextsensitive- und Typ0-Sprachen (Turingmaschinen,Unentscheidbarkeit)
.
.
.
6 Komplexitat von Algorithmen
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 7 / 30
. . . . . .
Ein roter Faden
In der Vorlesung werden die folgenden Themen untersucht:
.
..
1 Einleitung (grundlegende Begriffe, L-Systeme)
.
.
.
2 Die Chomsky-Hierarchie (Sprachklassen, Wortproblem)
.
.
.
3 Endliche Automaten und regulare Sprachen (Pumping Lemma)
.
.
.
4 Kontextfreie Sprachen (Normalformen, Kellerautomaten)
.
.
.
5 Kontextsensitive- und Typ0-Sprachen (Turingmaschinen,Unentscheidbarkeit)
.
.
.
6 Komplexitat von Algorithmen
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 7 / 30
. . . . . .
Ein roter Faden
In der Vorlesung werden die folgenden Themen untersucht:
.
..
1 Einleitung (grundlegende Begriffe, L-Systeme)
.
.
.
2 Die Chomsky-Hierarchie (Sprachklassen, Wortproblem)
.
.
.
3 Endliche Automaten und regulare Sprachen (Pumping Lemma)
.
.
.
4 Kontextfreie Sprachen (Normalformen, Kellerautomaten)
.
.
.
5 Kontextsensitive- und Typ0-Sprachen (Turingmaschinen,Unentscheidbarkeit)
.
.
.
6 Komplexitat von Algorithmen
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 7 / 30
. . . . . .
Ein roter Faden
In der Vorlesung werden die folgenden Themen untersucht:
.
..
1 Einleitung (grundlegende Begriffe, L-Systeme)
.
.
.
2 Die Chomsky-Hierarchie (Sprachklassen, Wortproblem)
.
.
.
3 Endliche Automaten und regulare Sprachen (Pumping Lemma)
.
.
.
4 Kontextfreie Sprachen (Normalformen, Kellerautomaten)
.
.
.
5 Kontextsensitive- und Typ0-Sprachen (Turingmaschinen,Unentscheidbarkeit)
.
.
.
6 Komplexitat von Algorithmen
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 7 / 30
. . . . . .
Ein roter Faden
In der Vorlesung werden die folgenden Themen untersucht:
.
..
1 Einleitung (grundlegende Begriffe, L-Systeme)
.
.
.
2 Die Chomsky-Hierarchie (Sprachklassen, Wortproblem)
.
.
.
3 Endliche Automaten und regulare Sprachen (Pumping Lemma)
.
.
.
4 Kontextfreie Sprachen (Normalformen, Kellerautomaten)
.
.
.
5 Kontextsensitive- und Typ0-Sprachen (Turingmaschinen,Unentscheidbarkeit)
.
.
.
6 Komplexitat von Algorithmen
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 7 / 30
. . . . . .
Warum Theoretische Informatik?Theoretische Informatik wird (wohl aufgrund der mathematischenPragung) oft als ”schwach motiviert“, ”langweilig“ und ”nutzlos“beschrieben.
Warum lohnt sich die Theoretische Informatik?
Konkrete Technologien andern sich sehr schnell, deshalb sollteman die Konzepte verstehen.Hintergrundinformationen ermoglichen Chancen und Grenzen vonTechnologien zu verstehen.Theoretische Informatik gibt Hinweise, welche Wege zu keinerLosung fuhren werden.Verbesserung des strukturierten Denkens und derProblemlosungskompetenz.(Tiefgreifende) Ideen fuhren zu schnellen Algorithmen
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 8 / 30
. . . . . .
Warum Theoretische Informatik?Theoretische Informatik wird (wohl aufgrund der mathematischenPragung) oft als ”schwach motiviert“, ”langweilig“ und ”nutzlos“beschrieben.
Warum lohnt sich die Theoretische Informatik?
Konkrete Technologien andern sich sehr schnell, deshalb sollteman die Konzepte verstehen.Hintergrundinformationen ermoglichen Chancen und Grenzen vonTechnologien zu verstehen.Theoretische Informatik gibt Hinweise, welche Wege zu keinerLosung fuhren werden.Verbesserung des strukturierten Denkens und derProblemlosungskompetenz.(Tiefgreifende) Ideen fuhren zu schnellen Algorithmen
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 8 / 30
. . . . . .
Warum Theoretische Informatik?Theoretische Informatik wird (wohl aufgrund der mathematischenPragung) oft als ”schwach motiviert“, ”langweilig“ und ”nutzlos“beschrieben.
Warum lohnt sich die Theoretische Informatik?
Konkrete Technologien andern sich sehr schnell, deshalb sollteman die Konzepte verstehen.
Hintergrundinformationen ermoglichen Chancen und Grenzen vonTechnologien zu verstehen.Theoretische Informatik gibt Hinweise, welche Wege zu keinerLosung fuhren werden.Verbesserung des strukturierten Denkens und derProblemlosungskompetenz.(Tiefgreifende) Ideen fuhren zu schnellen Algorithmen
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 8 / 30
. . . . . .
Warum Theoretische Informatik?Theoretische Informatik wird (wohl aufgrund der mathematischenPragung) oft als ”schwach motiviert“, ”langweilig“ und ”nutzlos“beschrieben.
Warum lohnt sich die Theoretische Informatik?
Konkrete Technologien andern sich sehr schnell, deshalb sollteman die Konzepte verstehen.Hintergrundinformationen ermoglichen Chancen und Grenzen vonTechnologien zu verstehen.
Theoretische Informatik gibt Hinweise, welche Wege zu keinerLosung fuhren werden.Verbesserung des strukturierten Denkens und derProblemlosungskompetenz.(Tiefgreifende) Ideen fuhren zu schnellen Algorithmen
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 8 / 30
. . . . . .
Warum Theoretische Informatik?Theoretische Informatik wird (wohl aufgrund der mathematischenPragung) oft als ”schwach motiviert“, ”langweilig“ und ”nutzlos“beschrieben.
Warum lohnt sich die Theoretische Informatik?
Konkrete Technologien andern sich sehr schnell, deshalb sollteman die Konzepte verstehen.Hintergrundinformationen ermoglichen Chancen und Grenzen vonTechnologien zu verstehen.Theoretische Informatik gibt Hinweise, welche Wege zu keinerLosung fuhren werden.
Verbesserung des strukturierten Denkens und derProblemlosungskompetenz.(Tiefgreifende) Ideen fuhren zu schnellen Algorithmen
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 8 / 30
. . . . . .
Warum Theoretische Informatik?Theoretische Informatik wird (wohl aufgrund der mathematischenPragung) oft als ”schwach motiviert“, ”langweilig“ und ”nutzlos“beschrieben.
Warum lohnt sich die Theoretische Informatik?
Konkrete Technologien andern sich sehr schnell, deshalb sollteman die Konzepte verstehen.Hintergrundinformationen ermoglichen Chancen und Grenzen vonTechnologien zu verstehen.Theoretische Informatik gibt Hinweise, welche Wege zu keinerLosung fuhren werden.Verbesserung des strukturierten Denkens und derProblemlosungskompetenz.
(Tiefgreifende) Ideen fuhren zu schnellen Algorithmen
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 8 / 30
. . . . . .
Warum Theoretische Informatik?Theoretische Informatik wird (wohl aufgrund der mathematischenPragung) oft als ”schwach motiviert“, ”langweilig“ und ”nutzlos“beschrieben.
Warum lohnt sich die Theoretische Informatik?
Konkrete Technologien andern sich sehr schnell, deshalb sollteman die Konzepte verstehen.Hintergrundinformationen ermoglichen Chancen und Grenzen vonTechnologien zu verstehen.Theoretische Informatik gibt Hinweise, welche Wege zu keinerLosung fuhren werden.Verbesserung des strukturierten Denkens und derProblemlosungskompetenz.(Tiefgreifende) Ideen fuhren zu schnellen Algorithmen
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 8 / 30
. . . . . .
Ein sehr einfaches BeispielKugeln sind in einer quadratischen Pyramide der Hohe h gestapelt.Schreiben Sie ein Programm, dass die Anzahl der Kugeln berechnet:
unsigned long CalcBalls(unsigned long height) {
unsigned long i; /* Zaehler */unsigned long sum = 0U; /* Akt. Summe v. Kugeln */
for (i = 1U; i <= height; i++) {sum += (i*i);
}
return sum; /* Summe ist Anzahl der Kugeln */
}
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 9 / 30
. . . . . .
Ein sehr einfaches BeispielKugeln sind in einer quadratischen Pyramide der Hohe h gestapelt.Schreiben Sie ein Programm, dass die Anzahl der Kugeln berechnet:
unsigned long CalcBalls(unsigned long height) {
unsigned long i; /* Zaehler */unsigned long sum = 0U; /* Akt. Summe v. Kugeln */
for (i = 1U; i <= height; i++) {sum += (i*i);
}
return sum; /* Summe ist Anzahl der Kugeln */
}
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 9 / 30
. . . . . .
Ein sehr einfaches BeispielKugeln sind in einer quadratischen Pyramide der Hohe h gestapelt.Schreiben Sie ein Programm, dass die Anzahl der Kugeln berechnet:
unsigned long CalcBalls(unsigned long height) {
unsigned long i; /* Zaehler */unsigned long sum = 0U; /* Akt. Summe v. Kugeln */
for (i = 1U; i <= height; i++) {
sum += (i*i);}
return sum; /* Summe ist Anzahl der Kugeln */
}
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 9 / 30
. . . . . .
Ein sehr einfaches BeispielKugeln sind in einer quadratischen Pyramide der Hohe h gestapelt.Schreiben Sie ein Programm, dass die Anzahl der Kugeln berechnet:
unsigned long CalcBalls(unsigned long height) {
unsigned long i; /* Zaehler */unsigned long sum = 0U; /* Akt. Summe v. Kugeln */
for (i = 1U; i <= height; i++) {sum += (i*i);
}
return sum; /* Summe ist Anzahl der Kugeln */
}
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 9 / 30
. . . . . .
Ein sehr einfaches BeispielKugeln sind in einer quadratischen Pyramide der Hohe h gestapelt.Schreiben Sie ein Programm, dass die Anzahl der Kugeln berechnet:
unsigned long CalcBalls(unsigned long height) {
unsigned long i; /* Zaehler */unsigned long sum = 0U; /* Akt. Summe v. Kugeln */
for (i = 1U; i <= height; i++) {sum += (i*i);
}
return sum; /* Summe ist Anzahl der Kugeln */
}
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 9 / 30
. . . . . .
Ein sehr einfaches Beispiel (II)
Es giltn∑
i=1i2 = n(n+1)(2n+1)
6 .
(IA) Eine Pyramide der Hohe n = 1 enthalt 1·2·36 = 1 Kugel.
(IV) Fur k ≤ n giltk∑
i=1i2 = k(k+1)(2k+1)
6 .
(IS)n+1∑i=1
i2 =n∑
i=1i2 + (n + 1)2
IV= n(n+1)(2n+1)
6 + (n2 + 2n + 1)
= 2n3+3n2+n6 + (n2 + 2n + 1)
= 2n3+9n2+13n+66
= (n+1)(2n2+7n+6)6
= (n+1)(n+2)(2n+3)6
= (n+1)((n+1)+1)(2(n+1)+1)6
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 10 / 30
. . . . . .
Ein sehr einfaches Beispiel (II)
Es giltn∑
i=1i2 = n(n+1)(2n+1)
6 .
(IA) Eine Pyramide der Hohe n = 1 enthalt 1·2·36 = 1 Kugel.
(IV) Fur k ≤ n giltk∑
i=1i2 = k(k+1)(2k+1)
6 .
(IS)n+1∑i=1
i2 =n∑
i=1i2 + (n + 1)2
IV= n(n+1)(2n+1)
6 + (n2 + 2n + 1)
= 2n3+3n2+n6 + (n2 + 2n + 1)
= 2n3+9n2+13n+66
= (n+1)(2n2+7n+6)6
= (n+1)(n+2)(2n+3)6
= (n+1)((n+1)+1)(2(n+1)+1)6
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 10 / 30
. . . . . .
Ein sehr einfaches Beispiel (II)
Es giltn∑
i=1i2 = n(n+1)(2n+1)
6 .
(IA) Eine Pyramide der Hohe n = 1 enthalt 1·2·36 = 1 Kugel.
(IV) Fur k ≤ n giltk∑
i=1i2 = k(k+1)(2k+1)
6 .
(IS)n+1∑i=1
i2 =n∑
i=1i2 + (n + 1)2
IV= n(n+1)(2n+1)
6 + (n2 + 2n + 1)
= 2n3+3n2+n6 + (n2 + 2n + 1)
= 2n3+9n2+13n+66
= (n+1)(2n2+7n+6)6
= (n+1)(n+2)(2n+3)6
= (n+1)((n+1)+1)(2(n+1)+1)6
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 10 / 30
. . . . . .
Ein sehr einfaches Beispiel (II)
Es giltn∑
i=1i2 = n(n+1)(2n+1)
6 .
(IA) Eine Pyramide der Hohe n = 1 enthalt 1·2·36 = 1 Kugel.
(IV) Fur k ≤ n giltk∑
i=1i2 = k(k+1)(2k+1)
6 .
(IS)n+1∑i=1
i2 =n∑
i=1i2 + (n + 1)2
IV= n(n+1)(2n+1)
6 + (n2 + 2n + 1)
= 2n3+3n2+n6 + (n2 + 2n + 1)
= 2n3+9n2+13n+66
= (n+1)(2n2+7n+6)6
= (n+1)(n+2)(2n+3)6
= (n+1)((n+1)+1)(2(n+1)+1)6
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 10 / 30
. . . . . .
Ein sehr einfaches Beispiel (II)
Es giltn∑
i=1i2 = n(n+1)(2n+1)
6 .
(IA) Eine Pyramide der Hohe n = 1 enthalt 1·2·36 = 1 Kugel.
(IV) Fur k ≤ n giltk∑
i=1i2 = k(k+1)(2k+1)
6 .
(IS)n+1∑i=1
i2 =n∑
i=1i2 + (n + 1)2
IV= n(n+1)(2n+1)
6 + (n2 + 2n + 1)
= 2n3+3n2+n6 + (n2 + 2n + 1)
= 2n3+9n2+13n+66
= (n+1)(2n2+7n+6)6
= (n+1)(n+2)(2n+3)6
= (n+1)((n+1)+1)(2(n+1)+1)6
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 10 / 30
. . . . . .
Ein sehr einfaches Beispiel (II)
Es giltn∑
i=1i2 = n(n+1)(2n+1)
6 .
(IA) Eine Pyramide der Hohe n = 1 enthalt 1·2·36 = 1 Kugel.
(IV) Fur k ≤ n giltk∑
i=1i2 = k(k+1)(2k+1)
6 .
(IS)n+1∑i=1
i2 =n∑
i=1i2 + (n + 1)2
IV= n(n+1)(2n+1)
6 + (n2 + 2n + 1)
= 2n3+3n2+n6 + (n2 + 2n + 1)
= 2n3+9n2+13n+66
= (n+1)(2n2+7n+6)6
= (n+1)(n+2)(2n+3)6
= (n+1)((n+1)+1)(2(n+1)+1)6
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 10 / 30
. . . . . .
Ein sehr einfaches Beispiel (II)
Es giltn∑
i=1i2 = n(n+1)(2n+1)
6 .
(IA) Eine Pyramide der Hohe n = 1 enthalt 1·2·36 = 1 Kugel.
(IV) Fur k ≤ n giltk∑
i=1i2 = k(k+1)(2k+1)
6 .
(IS)n+1∑i=1
i2 =n∑
i=1i2 + (n + 1)2
IV= n(n+1)(2n+1)
6 + (n2 + 2n + 1)
= 2n3+3n2+n6 + (n2 + 2n + 1)
= 2n3+9n2+13n+66
= (n+1)(2n2+7n+6)6
= (n+1)(n+2)(2n+3)6
= (n+1)((n+1)+1)(2(n+1)+1)6
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 10 / 30
. . . . . .
Ein sehr einfaches Beispiel (III)Dies fuhrt direkt zu einem rekursiven Algorithmus:
unsigned long CalcBalls(unsigned long height) {
/* Rekursionsabbruch? */if (height == 0U) || (height == 1U) {return height;
} else {return /* Kugeln in akt. Ebene */
(height*height)/* Restpyramide */
+ CalculateBalls(height - 1U);}
}
Leider auch nicht schneller
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 11 / 30
. . . . . .
Ein sehr einfaches Beispiel (III)Dies fuhrt direkt zu einem rekursiven Algorithmus:
unsigned long CalcBalls(unsigned long height) {
/* Rekursionsabbruch? */if (height == 0U) || (height == 1U) {return height;
} else {
return /* Kugeln in akt. Ebene */(height*height)/* Restpyramide */
+ CalculateBalls(height - 1U);}
}
Leider auch nicht schneller
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 11 / 30
. . . . . .
Ein sehr einfaches Beispiel (III)Dies fuhrt direkt zu einem rekursiven Algorithmus:
unsigned long CalcBalls(unsigned long height) {
/* Rekursionsabbruch? */if (height == 0U) || (height == 1U) {return height;
} else {return /* Kugeln in akt. Ebene */
(height*height)
/* Restpyramide */+ CalculateBalls(height - 1U);
}}
Leider auch nicht schneller
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 11 / 30
. . . . . .
Ein sehr einfaches Beispiel (III)Dies fuhrt direkt zu einem rekursiven Algorithmus:
unsigned long CalcBalls(unsigned long height) {
/* Rekursionsabbruch? */if (height == 0U) || (height == 1U) {return height;
} else {return /* Kugeln in akt. Ebene */
(height*height)/* Restpyramide */
+ CalculateBalls(height - 1U);}
}
Leider auch nicht schneller
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 11 / 30
. . . . . .
Ein sehr einfaches Beispiel (III)Dies fuhrt direkt zu einem rekursiven Algorithmus:
unsigned long CalcBalls(unsigned long height) {
/* Rekursionsabbruch? */if (height == 0U) || (height == 1U) {return height;
} else {return /* Kugeln in akt. Ebene */
(height*height)/* Restpyramide */
+ CalculateBalls(height - 1U);}
}
Leider auch nicht schneller
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 11 / 30
. . . . . .
Ein sehr einfaches Beispiel (IV)Aber wir wissen:
unsigned long CalcBalls(unsigned long height) {
/* Induktiv gezeigte Formel verwenden */return height
* (height + 1U)
* (2U*(height) + 1U) / 6;
}
Hintergrundwissen fuhrt zu einemschnelleren und ubersichtlicheren Algorithmus
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 12 / 30
. . . . . .
Ein sehr einfaches Beispiel (IV)Aber wir wissen:
unsigned long CalcBalls(unsigned long height) {
/* Induktiv gezeigte Formel verwenden */return height
* (height + 1U)
* (2U*(height) + 1U) / 6;
}
Hintergrundwissen fuhrt zu einemschnelleren und ubersichtlicheren Algorithmus
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 12 / 30
. . . . . .
Ein sehr einfaches Beispiel (IV)Aber wir wissen:
unsigned long CalcBalls(unsigned long height) {
/* Induktiv gezeigte Formel verwenden */return height
* (height + 1U)
* (2U*(height) + 1U) / 6;
}
Hintergrundwissen fuhrt zu einemschnelleren und ubersichtlicheren Algorithmus
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 12 / 30
. . . . . .
Spielregeln
Rechner und Handys sind zu Beginn der Veranstaltung aus
Wir (Dozent + Horer) sind punktlichEs redet nur eine PersonBei Fragen und Problemen sofort melden / fragenEs wird Eigeninitiative und selbststandiges Arbeiten erwartetEine Vorlesung ist keine (wochentliche) Fernsehserie!
I Eine Vorlesung wird von den Horern und vom Dozenten gestaltetI aktive Mitarbeit erwunscht und erforderlichI Der Dozent will motiviert werdenI Umfangreiche selbststandige Vor- und Nachbereitung ist notwendigI Lernen nur kurz vor dem Vortrag ist todlich! (kontinuierliches
Lernen)
Vergessen Sie den (angeblichen) Konflikt von Theorie und Praxis
Was wunschen Sie sich?
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 13 / 30
. . . . . .
Spielregeln
Rechner und Handys sind zu Beginn der Veranstaltung ausWir (Dozent + Horer) sind punktlich
Es redet nur eine PersonBei Fragen und Problemen sofort melden / fragenEs wird Eigeninitiative und selbststandiges Arbeiten erwartetEine Vorlesung ist keine (wochentliche) Fernsehserie!
I Eine Vorlesung wird von den Horern und vom Dozenten gestaltetI aktive Mitarbeit erwunscht und erforderlichI Der Dozent will motiviert werdenI Umfangreiche selbststandige Vor- und Nachbereitung ist notwendigI Lernen nur kurz vor dem Vortrag ist todlich! (kontinuierliches
Lernen)
Vergessen Sie den (angeblichen) Konflikt von Theorie und Praxis
Was wunschen Sie sich?
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 13 / 30
. . . . . .
Spielregeln
Rechner und Handys sind zu Beginn der Veranstaltung ausWir (Dozent + Horer) sind punktlichEs redet nur eine Person
Bei Fragen und Problemen sofort melden / fragenEs wird Eigeninitiative und selbststandiges Arbeiten erwartetEine Vorlesung ist keine (wochentliche) Fernsehserie!
I Eine Vorlesung wird von den Horern und vom Dozenten gestaltetI aktive Mitarbeit erwunscht und erforderlichI Der Dozent will motiviert werdenI Umfangreiche selbststandige Vor- und Nachbereitung ist notwendigI Lernen nur kurz vor dem Vortrag ist todlich! (kontinuierliches
Lernen)
Vergessen Sie den (angeblichen) Konflikt von Theorie und Praxis
Was wunschen Sie sich?
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 13 / 30
. . . . . .
Spielregeln
Rechner und Handys sind zu Beginn der Veranstaltung ausWir (Dozent + Horer) sind punktlichEs redet nur eine PersonBei Fragen und Problemen sofort melden / fragen
Es wird Eigeninitiative und selbststandiges Arbeiten erwartetEine Vorlesung ist keine (wochentliche) Fernsehserie!
I Eine Vorlesung wird von den Horern und vom Dozenten gestaltetI aktive Mitarbeit erwunscht und erforderlichI Der Dozent will motiviert werdenI Umfangreiche selbststandige Vor- und Nachbereitung ist notwendigI Lernen nur kurz vor dem Vortrag ist todlich! (kontinuierliches
Lernen)
Vergessen Sie den (angeblichen) Konflikt von Theorie und Praxis
Was wunschen Sie sich?
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 13 / 30
. . . . . .
Spielregeln
Rechner und Handys sind zu Beginn der Veranstaltung ausWir (Dozent + Horer) sind punktlichEs redet nur eine PersonBei Fragen und Problemen sofort melden / fragenEs wird Eigeninitiative und selbststandiges Arbeiten erwartet
Eine Vorlesung ist keine (wochentliche) Fernsehserie!I Eine Vorlesung wird von den Horern und vom Dozenten gestaltetI aktive Mitarbeit erwunscht und erforderlichI Der Dozent will motiviert werdenI Umfangreiche selbststandige Vor- und Nachbereitung ist notwendigI Lernen nur kurz vor dem Vortrag ist todlich! (kontinuierliches
Lernen)
Vergessen Sie den (angeblichen) Konflikt von Theorie und Praxis
Was wunschen Sie sich?
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 13 / 30
. . . . . .
Spielregeln
Rechner und Handys sind zu Beginn der Veranstaltung ausWir (Dozent + Horer) sind punktlichEs redet nur eine PersonBei Fragen und Problemen sofort melden / fragenEs wird Eigeninitiative und selbststandiges Arbeiten erwartetEine Vorlesung ist keine (wochentliche) Fernsehserie!
I Eine Vorlesung wird von den Horern und vom Dozenten gestaltetI aktive Mitarbeit erwunscht und erforderlichI Der Dozent will motiviert werdenI Umfangreiche selbststandige Vor- und Nachbereitung ist notwendigI Lernen nur kurz vor dem Vortrag ist todlich! (kontinuierliches
Lernen)
Vergessen Sie den (angeblichen) Konflikt von Theorie und Praxis
Was wunschen Sie sich?
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 13 / 30
. . . . . .
Spielregeln
Rechner und Handys sind zu Beginn der Veranstaltung ausWir (Dozent + Horer) sind punktlichEs redet nur eine PersonBei Fragen und Problemen sofort melden / fragenEs wird Eigeninitiative und selbststandiges Arbeiten erwartetEine Vorlesung ist keine (wochentliche) Fernsehserie!
I Eine Vorlesung wird von den Horern und vom Dozenten gestaltet
I aktive Mitarbeit erwunscht und erforderlichI Der Dozent will motiviert werdenI Umfangreiche selbststandige Vor- und Nachbereitung ist notwendigI Lernen nur kurz vor dem Vortrag ist todlich! (kontinuierliches
Lernen)
Vergessen Sie den (angeblichen) Konflikt von Theorie und Praxis
Was wunschen Sie sich?
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 13 / 30
. . . . . .
Spielregeln
Rechner und Handys sind zu Beginn der Veranstaltung ausWir (Dozent + Horer) sind punktlichEs redet nur eine PersonBei Fragen und Problemen sofort melden / fragenEs wird Eigeninitiative und selbststandiges Arbeiten erwartetEine Vorlesung ist keine (wochentliche) Fernsehserie!
I Eine Vorlesung wird von den Horern und vom Dozenten gestaltetI aktive Mitarbeit erwunscht und erforderlich
I Der Dozent will motiviert werdenI Umfangreiche selbststandige Vor- und Nachbereitung ist notwendigI Lernen nur kurz vor dem Vortrag ist todlich! (kontinuierliches
Lernen)
Vergessen Sie den (angeblichen) Konflikt von Theorie und Praxis
Was wunschen Sie sich?
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 13 / 30
. . . . . .
Spielregeln
Rechner und Handys sind zu Beginn der Veranstaltung ausWir (Dozent + Horer) sind punktlichEs redet nur eine PersonBei Fragen und Problemen sofort melden / fragenEs wird Eigeninitiative und selbststandiges Arbeiten erwartetEine Vorlesung ist keine (wochentliche) Fernsehserie!
I Eine Vorlesung wird von den Horern und vom Dozenten gestaltetI aktive Mitarbeit erwunscht und erforderlichI Der Dozent will motiviert werden
I Umfangreiche selbststandige Vor- und Nachbereitung ist notwendigI Lernen nur kurz vor dem Vortrag ist todlich! (kontinuierliches
Lernen)
Vergessen Sie den (angeblichen) Konflikt von Theorie und Praxis
Was wunschen Sie sich?
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 13 / 30
. . . . . .
Spielregeln
Rechner und Handys sind zu Beginn der Veranstaltung ausWir (Dozent + Horer) sind punktlichEs redet nur eine PersonBei Fragen und Problemen sofort melden / fragenEs wird Eigeninitiative und selbststandiges Arbeiten erwartetEine Vorlesung ist keine (wochentliche) Fernsehserie!
I Eine Vorlesung wird von den Horern und vom Dozenten gestaltetI aktive Mitarbeit erwunscht und erforderlichI Der Dozent will motiviert werdenI Umfangreiche selbststandige Vor- und Nachbereitung ist notwendig
I Lernen nur kurz vor dem Vortrag ist todlich! (kontinuierlichesLernen)
Vergessen Sie den (angeblichen) Konflikt von Theorie und Praxis
Was wunschen Sie sich?
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 13 / 30
. . . . . .
Spielregeln
Rechner und Handys sind zu Beginn der Veranstaltung ausWir (Dozent + Horer) sind punktlichEs redet nur eine PersonBei Fragen und Problemen sofort melden / fragenEs wird Eigeninitiative und selbststandiges Arbeiten erwartetEine Vorlesung ist keine (wochentliche) Fernsehserie!
I Eine Vorlesung wird von den Horern und vom Dozenten gestaltetI aktive Mitarbeit erwunscht und erforderlichI Der Dozent will motiviert werdenI Umfangreiche selbststandige Vor- und Nachbereitung ist notwendigI Lernen nur kurz vor dem Vortrag ist todlich! (kontinuierliches
Lernen)
Vergessen Sie den (angeblichen) Konflikt von Theorie und Praxis
Was wunschen Sie sich?
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 13 / 30
. . . . . .
Spielregeln
Rechner und Handys sind zu Beginn der Veranstaltung ausWir (Dozent + Horer) sind punktlichEs redet nur eine PersonBei Fragen und Problemen sofort melden / fragenEs wird Eigeninitiative und selbststandiges Arbeiten erwartetEine Vorlesung ist keine (wochentliche) Fernsehserie!
I Eine Vorlesung wird von den Horern und vom Dozenten gestaltetI aktive Mitarbeit erwunscht und erforderlichI Der Dozent will motiviert werdenI Umfangreiche selbststandige Vor- und Nachbereitung ist notwendigI Lernen nur kurz vor dem Vortrag ist todlich! (kontinuierliches
Lernen)
Vergessen Sie den (angeblichen) Konflikt von Theorie und Praxis
Was wunschen Sie sich?
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 13 / 30
. . . . . .
Spielregeln
Rechner und Handys sind zu Beginn der Veranstaltung ausWir (Dozent + Horer) sind punktlichEs redet nur eine PersonBei Fragen und Problemen sofort melden / fragenEs wird Eigeninitiative und selbststandiges Arbeiten erwartetEine Vorlesung ist keine (wochentliche) Fernsehserie!
I Eine Vorlesung wird von den Horern und vom Dozenten gestaltetI aktive Mitarbeit erwunscht und erforderlichI Der Dozent will motiviert werdenI Umfangreiche selbststandige Vor- und Nachbereitung ist notwendigI Lernen nur kurz vor dem Vortrag ist todlich! (kontinuierliches
Lernen)
Vergessen Sie den (angeblichen) Konflikt von Theorie und Praxis
Was wunschen Sie sich?Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 13 / 30
. . . . . .
Ubung
Start der Ubung: Heute
Auf der Webseite werden Sie jede Woche Aufgabenblatter fur dieUbung finden. Diese Ubungen sollten selbststandig undregelmaßig gelost werden.Gemeinsames Vorstellen und Besprechen von Losungen an derTafel.Die Ubung ist fur Sie die Chance neue Konzepte zu vertiefen, zuverstehen und anzuwenden.Viele Begriffe und Konzepte (in der Informatik) kann man nurdurch bestandiges Uben erlernen
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 14 / 30
. . . . . .
Ubung
Start der Ubung: Heute
Auf der Webseite werden Sie jede Woche Aufgabenblatter fur dieUbung finden. Diese Ubungen sollten selbststandig undregelmaßig gelost werden.
Gemeinsames Vorstellen und Besprechen von Losungen an derTafel.Die Ubung ist fur Sie die Chance neue Konzepte zu vertiefen, zuverstehen und anzuwenden.Viele Begriffe und Konzepte (in der Informatik) kann man nurdurch bestandiges Uben erlernen
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 14 / 30
. . . . . .
Ubung
Start der Ubung: Heute
Auf der Webseite werden Sie jede Woche Aufgabenblatter fur dieUbung finden. Diese Ubungen sollten selbststandig undregelmaßig gelost werden.Gemeinsames Vorstellen und Besprechen von Losungen an derTafel.
Die Ubung ist fur Sie die Chance neue Konzepte zu vertiefen, zuverstehen und anzuwenden.Viele Begriffe und Konzepte (in der Informatik) kann man nurdurch bestandiges Uben erlernen
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 14 / 30
. . . . . .
Ubung
Start der Ubung: Heute
Auf der Webseite werden Sie jede Woche Aufgabenblatter fur dieUbung finden. Diese Ubungen sollten selbststandig undregelmaßig gelost werden.Gemeinsames Vorstellen und Besprechen von Losungen an derTafel.Die Ubung ist fur Sie die Chance neue Konzepte zu vertiefen, zuverstehen und anzuwenden.
Viele Begriffe und Konzepte (in der Informatik) kann man nurdurch bestandiges Uben erlernen
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 14 / 30
. . . . . .
Ubung
Start der Ubung: Heute
Auf der Webseite werden Sie jede Woche Aufgabenblatter fur dieUbung finden. Diese Ubungen sollten selbststandig undregelmaßig gelost werden.Gemeinsames Vorstellen und Besprechen von Losungen an derTafel.Die Ubung ist fur Sie die Chance neue Konzepte zu vertiefen, zuverstehen und anzuwenden.Viele Begriffe und Konzepte (in der Informatik) kann man nurdurch bestandiges Uben erlernen
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 14 / 30
. . . . . .
Ubung
Start der Ubung: Heute
Auf der Webseite werden Sie jede Woche Aufgabenblatter fur dieUbung finden. Diese Ubungen sollten selbststandig undregelmaßig gelost werden.Gemeinsames Vorstellen und Besprechen von Losungen an derTafel.Die Ubung ist fur Sie die Chance neue Konzepte zu vertiefen, zuverstehen und anzuwenden.Viele Begriffe und Konzepte (in der Informatik) kann man nurdurch bestandiges Uben erlernen
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 14 / 30
. . . . . .
Automatentheorieund
Formale Sprachen
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 15 / 30
. . . . . .
Naturliche SprachenNaturliche Sprachen legen ihre Struktur durch
die Regeln einer Grammatik
und eine Menge von erlaubten Worten (, Strings gebildet ausBuchstaben)
fest.
Allerdings mussen syntaktisch korrekte Satze einer naturlichenSprache keinen Sinn tragen:
Wiesbaden wohnt weiterhin weichDer bissige Student jagt die verschlafene Mensa
D.h. syntakisch korrekte Satze mussen keinen Sinn (, Semantik)tragen.
Kann man diese Beobachtungen in der Informatik ausnutzen?
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 16 / 30
. . . . . .
Naturliche SprachenNaturliche Sprachen legen ihre Struktur durch
die Regeln einer Grammatikund eine Menge von erlaubten Worten (, Strings gebildet ausBuchstaben)
fest.
Allerdings mussen syntaktisch korrekte Satze einer naturlichenSprache keinen Sinn tragen:
Wiesbaden wohnt weiterhin weichDer bissige Student jagt die verschlafene Mensa
D.h. syntakisch korrekte Satze mussen keinen Sinn (, Semantik)tragen.
Kann man diese Beobachtungen in der Informatik ausnutzen?
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 16 / 30
. . . . . .
Naturliche SprachenNaturliche Sprachen legen ihre Struktur durch
die Regeln einer Grammatikund eine Menge von erlaubten Worten (, Strings gebildet ausBuchstaben)
fest.
Allerdings mussen syntaktisch korrekte Satze einer naturlichenSprache keinen Sinn tragen:
Wiesbaden wohnt weiterhin weich
Der bissige Student jagt die verschlafene MensaD.h. syntakisch korrekte Satze mussen keinen Sinn (, Semantik)tragen.
Kann man diese Beobachtungen in der Informatik ausnutzen?
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 16 / 30
. . . . . .
Naturliche SprachenNaturliche Sprachen legen ihre Struktur durch
die Regeln einer Grammatikund eine Menge von erlaubten Worten (, Strings gebildet ausBuchstaben)
fest.
Allerdings mussen syntaktisch korrekte Satze einer naturlichenSprache keinen Sinn tragen:
Wiesbaden wohnt weiterhin weichDer bissige Student jagt die verschlafene Mensa
D.h. syntakisch korrekte Satze mussen keinen Sinn (, Semantik)tragen.
Kann man diese Beobachtungen in der Informatik ausnutzen?
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 16 / 30
. . . . . .
Naturliche SprachenNaturliche Sprachen legen ihre Struktur durch
die Regeln einer Grammatikund eine Menge von erlaubten Worten (, Strings gebildet ausBuchstaben)
fest.
Allerdings mussen syntaktisch korrekte Satze einer naturlichenSprache keinen Sinn tragen:
Wiesbaden wohnt weiterhin weichDer bissige Student jagt die verschlafene Mensa
D.h. syntakisch korrekte Satze mussen keinen Sinn (, Semantik)tragen.
Kann man diese Beobachtungen in der Informatik ausnutzen?
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 16 / 30
. . . . . .
Naturliche SprachenNaturliche Sprachen legen ihre Struktur durch
die Regeln einer Grammatikund eine Menge von erlaubten Worten (, Strings gebildet ausBuchstaben)
fest.
Allerdings mussen syntaktisch korrekte Satze einer naturlichenSprache keinen Sinn tragen:
Wiesbaden wohnt weiterhin weichDer bissige Student jagt die verschlafene Mensa
D.h. syntakisch korrekte Satze mussen keinen Sinn (, Semantik)tragen.
Kann man diese Beobachtungen in der Informatik ausnutzen?
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 16 / 30
. . . . . .
Formale Regeln zur Erzeugung einer Sprache
Der Linguist NOAM CHOMSKY hatte folgende Idee:Korrekte Satze einer (naturlichen) Sprache sollen durch ein (endlichesSystem) von formalen Regeln erzeugt werden.
Bis heute ist diese Ideein der Linguistik umstritten, aberextrem bedeutsam in der Informatik.
Basis fur z.B. alle Programmiersprachen / Compilerbau,Auszeichnungssprachen (SGML, XML, HTML, . . .).
Ahnlich sind die sogenannten (Semi) Thue Systeme, die heute z.B. inSpezialformen in der Computergraphik Bedeutung erlangt haben.
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 17 / 30
. . . . . .
Formale Regeln zur Erzeugung einer Sprache
Der Linguist NOAM CHOMSKY hatte folgende Idee:Korrekte Satze einer (naturlichen) Sprache sollen durch ein (endlichesSystem) von formalen Regeln erzeugt werden.
Bis heute ist diese Ideein der Linguistik umstritten, aber
extrem bedeutsam in der Informatik.
Basis fur z.B. alle Programmiersprachen / Compilerbau,Auszeichnungssprachen (SGML, XML, HTML, . . .).
Ahnlich sind die sogenannten (Semi) Thue Systeme, die heute z.B. inSpezialformen in der Computergraphik Bedeutung erlangt haben.
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 17 / 30
. . . . . .
Formale Regeln zur Erzeugung einer Sprache
Der Linguist NOAM CHOMSKY hatte folgende Idee:Korrekte Satze einer (naturlichen) Sprache sollen durch ein (endlichesSystem) von formalen Regeln erzeugt werden.
Bis heute ist diese Ideein der Linguistik umstritten, aberextrem bedeutsam in der Informatik.
Basis fur z.B. alle Programmiersprachen / Compilerbau,Auszeichnungssprachen (SGML, XML, HTML, . . .).
Ahnlich sind die sogenannten (Semi) Thue Systeme, die heute z.B. inSpezialformen in der Computergraphik Bedeutung erlangt haben.
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 17 / 30
. . . . . .
Einige grundlegende BegriffeEine endliche Menge Σ heißt Alphabet
Die Elemente von Σ werden Buchstaben genannt.Eine Folge von Buchstaben nennt man Wort (uber Σ)Eine beliebige Menge von Worten uber Σ nennt man dann eine(formale) Sprache.
.
Beispiel (arithmetische Ausdrucke)
.
.
.
. ..
. .
Sei Σ = {), (,+,−, ∗, /, x} und EXPR alle korrekten arithmetischenAusdrucke. Damit gilt
(x − x) ∈ EXPR((x + x) ∗ x)/x ∈ EXPR))(x−) ∗ x 6∈ EXPR
EXPR ist eine Menge von Worten uber Σ, also kann man EXPR alsformale Sprache (uber {), (, +,−, ∗, /, x}) bezeichnen.
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 18 / 30
. . . . . .
Einige grundlegende BegriffeEine endliche Menge Σ heißt AlphabetDie Elemente von Σ werden
Buchstaben genannt.Eine Folge von Buchstaben nennt man Wort (uber Σ)Eine beliebige Menge von Worten uber Σ nennt man dann eine(formale) Sprache.
.
Beispiel (arithmetische Ausdrucke)
.
.
.
. ..
. .
Sei Σ = {), (,+,−, ∗, /, x} und EXPR alle korrekten arithmetischenAusdrucke. Damit gilt
(x − x) ∈ EXPR((x + x) ∗ x)/x ∈ EXPR))(x−) ∗ x 6∈ EXPR
EXPR ist eine Menge von Worten uber Σ, also kann man EXPR alsformale Sprache (uber {), (, +,−, ∗, /, x}) bezeichnen.
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 18 / 30
. . . . . .
Einige grundlegende BegriffeEine endliche Menge Σ heißt AlphabetDie Elemente von Σ werden Buchstaben genannt.Eine Folge von Buchstaben nennt man
Wort (uber Σ)Eine beliebige Menge von Worten uber Σ nennt man dann eine(formale) Sprache.
.
Beispiel (arithmetische Ausdrucke)
.
.
.
. ..
. .
Sei Σ = {), (,+,−, ∗, /, x} und EXPR alle korrekten arithmetischenAusdrucke. Damit gilt
(x − x) ∈ EXPR((x + x) ∗ x)/x ∈ EXPR))(x−) ∗ x 6∈ EXPR
EXPR ist eine Menge von Worten uber Σ, also kann man EXPR alsformale Sprache (uber {), (, +,−, ∗, /, x}) bezeichnen.
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 18 / 30
. . . . . .
Einige grundlegende BegriffeEine endliche Menge Σ heißt AlphabetDie Elemente von Σ werden Buchstaben genannt.Eine Folge von Buchstaben nennt man Wort (uber Σ)Eine beliebige Menge von Worten uber Σ nennt man dann
eine(formale) Sprache.
.
Beispiel (arithmetische Ausdrucke)
.
.
.
. ..
. .
Sei Σ = {), (,+,−, ∗, /, x} und EXPR alle korrekten arithmetischenAusdrucke. Damit gilt
(x − x) ∈ EXPR((x + x) ∗ x)/x ∈ EXPR))(x−) ∗ x 6∈ EXPR
EXPR ist eine Menge von Worten uber Σ, also kann man EXPR alsformale Sprache (uber {), (, +,−, ∗, /, x}) bezeichnen.
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 18 / 30
. . . . . .
Einige grundlegende BegriffeEine endliche Menge Σ heißt AlphabetDie Elemente von Σ werden Buchstaben genannt.Eine Folge von Buchstaben nennt man Wort (uber Σ)Eine beliebige Menge von Worten uber Σ nennt man dann eine(formale) Sprache.
.
Beispiel (arithmetische Ausdrucke)
.
.
.
. ..
. .
Sei Σ = {), (,+,−, ∗, /, x} und EXPR alle korrekten arithmetischenAusdrucke. Damit gilt
(x − x) ∈ EXPR((x + x) ∗ x)/x ∈ EXPR))(x−) ∗ x 6∈ EXPR
EXPR ist eine Menge von Worten uber Σ, also kann man EXPR alsformale Sprache (uber {), (, +,−, ∗, /, x}) bezeichnen.
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 18 / 30
. . . . . .
Einige grundlegende BegriffeEine endliche Menge Σ heißt AlphabetDie Elemente von Σ werden Buchstaben genannt.Eine Folge von Buchstaben nennt man Wort (uber Σ)Eine beliebige Menge von Worten uber Σ nennt man dann eine(formale) Sprache.
.
Beispiel (arithmetische Ausdrucke)
.
.
.
. ..
. .
Sei Σ = {), (,+,−, ∗, /, x} und EXPR alle korrekten arithmetischenAusdrucke.
Damit gilt
(x − x) ∈ EXPR((x + x) ∗ x)/x ∈ EXPR))(x−) ∗ x 6∈ EXPR
EXPR ist eine Menge von Worten uber Σ, also kann man EXPR alsformale Sprache (uber {), (, +,−, ∗, /, x}) bezeichnen.
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 18 / 30
. . . . . .
Einige grundlegende BegriffeEine endliche Menge Σ heißt AlphabetDie Elemente von Σ werden Buchstaben genannt.Eine Folge von Buchstaben nennt man Wort (uber Σ)Eine beliebige Menge von Worten uber Σ nennt man dann eine(formale) Sprache.
.
Beispiel (arithmetische Ausdrucke)
.
.
.
. ..
. .
Sei Σ = {), (,+,−, ∗, /, x} und EXPR alle korrekten arithmetischenAusdrucke. Damit gilt
(x − x) ∈ EXPR((x + x) ∗ x)/x ∈ EXPR))(x−) ∗ x 6∈ EXPR
EXPR ist eine Menge von Worten uber Σ, also kann man EXPR alsformale Sprache (uber {), (, +,−, ∗, /, x}) bezeichnen.
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 18 / 30
. . . . . .
Weitere Beispiele fur formale Sprachen
.
Beispiel (Zahlenmengen)
.
.
.
. ..
.
.
Sei Σ = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}, dann sind die folgenden Mengenauch formale Sprachen uber Σ:
PRIMES = {2, 3, 5, 7, 11, 13, 17, 19, 23, . . .}EVEN = {0, 2, 4, 6, 8, 10, 12, 14, 16, 18, . . .}2POT = {1, 2, 4, 8, 16, 32, 64, 128, 256, 512, . . .}
.
Beispiel (Wortmengen uber {a, b})
.
.
.
. ..
.
.
Sei Σ = {a, b}, dann sind die folgenden Mengen auch formaleSprachen uber Σ:
BRACKET = {ab, aabb, aaabbb, aaaabbbb, . . .}UODD = {a, aaa, aaaaa, aaaaaaa, aaaaaaaaa, . . .}Σ∗ = ALL = {ε, a, b, aa, ab, ba, bb, aaa, aab, aba, abb, baa, . . .}
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 19 / 30
. . . . . .
Weitere Beispiele fur formale Sprachen
.
Beispiel (Zahlenmengen)
.
.
.
. ..
.
.
Sei Σ = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}, dann sind die folgenden Mengenauch formale Sprachen uber Σ:
PRIMES = {2, 3, 5, 7, 11, 13, 17, 19, 23, . . .}EVEN = {0, 2, 4, 6, 8, 10, 12, 14, 16, 18, . . .}2POT = {1, 2, 4, 8, 16, 32, 64, 128, 256, 512, . . .}
.
Beispiel (Wortmengen uber {a, b})
.
.
.
. ..
.
.
Sei Σ = {a, b}, dann sind die folgenden Mengen auch formaleSprachen uber Σ:
BRACKET = {ab, aabb, aaabbb, aaaabbbb, . . .}UODD = {a, aaa, aaaaa, aaaaaaa, aaaaaaaaa, . . .}Σ∗ = ALL = {ε, a, b, aa, ab, ba, bb, aaa, aab, aba, abb, baa, . . .}
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 19 / 30
. . . . . .
Weitere Beispiele fur formale Sprachen
.
Beispiel (Zahlenmengen)
.
.
.
. ..
.
.
Sei Σ = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}, dann sind die folgenden Mengenauch formale Sprachen uber Σ:
PRIMES = {2, 3, 5, 7, 11, 13, 17, 19, 23, . . .}EVEN = {0, 2, 4, 6, 8, 10, 12, 14, 16, 18, . . .}2POT = {1, 2, 4, 8, 16, 32, 64, 128, 256, 512, . . .}
.
Beispiel (Wortmengen uber {a, b})
.
.
.
. ..
.
.
Sei Σ = {a, b}, dann sind die folgenden Mengen auch formaleSprachen uber Σ:
BRACKET = {ab, aabb, aaabbb, aaaabbbb, . . .}UODD = {a, aaa, aaaaa, aaaaaaa, aaaaaaaaa, . . .}Σ∗ = ALL = {ε, a, b, aa, ab, ba, bb, aaa, aab, aba, abb, baa, . . .}
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 19 / 30
. . . . . .
Grammatiken und Automaten
(Formale) Sprachen enthalten meist unendlich viele Worter
Wir brauchen endlich viele Erzeugungsregeln, um (algorithmisch)mit formalen Sprachen umgehen zu konnen. Die Rolle der Regelnubernehmen die Grammatiken.Weiterhin werden Erkenner benotigt, die entscheiden, ob ein Wortzu einer Sprache gehort. Die Rolle der Erkenner spielen dieAutomaten, die wir in dieser Vorlesung studieren.
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 20 / 30
. . . . . .
Grammatiken und Automaten
(Formale) Sprachen enthalten meist unendlich viele Worter
Wir brauchen endlich viele Erzeugungsregeln, um (algorithmisch)mit formalen Sprachen umgehen zu konnen. Die Rolle der Regelnubernehmen die Grammatiken.
Weiterhin werden Erkenner benotigt, die entscheiden, ob ein Wortzu einer Sprache gehort. Die Rolle der Erkenner spielen dieAutomaten, die wir in dieser Vorlesung studieren.
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 20 / 30
. . . . . .
Grammatiken und Automaten
(Formale) Sprachen enthalten meist unendlich viele Worter
Wir brauchen endlich viele Erzeugungsregeln, um (algorithmisch)mit formalen Sprachen umgehen zu konnen. Die Rolle der Regelnubernehmen die Grammatiken.Weiterhin werden Erkenner benotigt, die entscheiden, ob ein Wortzu einer Sprache gehort. Die Rolle der Erkenner spielen dieAutomaten, die wir in dieser Vorlesung studieren.
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 20 / 30
. . . . . .
Grammatiken und Automaten
(Formale) Sprachen enthalten meist unendlich viele Worter
Wir brauchen endlich viele Erzeugungsregeln, um (algorithmisch)mit formalen Sprachen umgehen zu konnen. Die Rolle der Regelnubernehmen die Grammatiken.Weiterhin werden Erkenner benotigt, die entscheiden, ob ein Wortzu einer Sprache gehort. Die Rolle der Erkenner spielen dieAutomaten, die wir in dieser Vorlesung studieren.
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 20 / 30
. . . . . .
Teil einer naturlichen Sprache
.
Beispiel (Eine Grammatik)
.
.
.
. ..
.
.
Satz → Subjekt Pradikat ObjektSubjekt → Artikel Attribut SubstantivArtikel → ε | der | die | das
Attribut → εAttribut → AdjektivAttribut → Adjektiv Attribut
Adjektiv → kleine | bissige | verschlafeneSubstantiv → Student | Katze
Pradikat → jagt | betrittObjekt → Artikel Attribut Substantiv
Das Symbol ”|“ markiert eine Alternative. D.h. A → B | C ist Abkurzungfur die beiden Regeln A → B und A → C
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 21 / 30
. . . . . .
Teil einer naturlichen Sprache
.
Beispiel (Eine Grammatik)
.
.
.
. ..
.
.
Satz → Subjekt Pradikat ObjektSubjekt → Artikel Attribut SubstantivArtikel → ε | der | die | das
Attribut → εAttribut → AdjektivAttribut → Adjektiv Attribut
Adjektiv → kleine | bissige | verschlafeneSubstantiv → Student | Katze
Pradikat → jagt | betrittObjekt → Artikel Attribut Substantiv
Das Symbol ”|“ markiert eine Alternative. D.h. A → B | C ist Abkurzungfur die beiden Regeln A → B und A → C
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 21 / 30
. . . . . .
Teil einer naturlichen Sprache (II)
Durch Anwendung der Regeln und Ersetzung der fett gedrucktenWorter konnen z.B. die folgenden Satze gebildet werden:
Der kleine bissige Student betritt die verschlafene MensaDer verschlafene Student jagt die kleine Katze
Mit Syntaxbaumen man man die Ableitungschritte verdeutlichen:
Katze
Satz
jagt
Subjekt
AttributArtikel Substantiv
Prädikat Objekt
Artikel Attribut Substantiv
Adjektiv AdjektivDer
verschlafene
Student die
kleine
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 22 / 30
. . . . . .
Teil einer naturlichen Sprache (II)
Durch Anwendung der Regeln und Ersetzung der fett gedrucktenWorter konnen z.B. die folgenden Satze gebildet werden:
Der kleine bissige Student betritt die verschlafene MensaDer verschlafene Student jagt die kleine Katze
Mit Syntaxbaumen man man die Ableitungschritte verdeutlichen:
Katze
Satz
jagt
Subjekt
AttributArtikel Substantiv
Prädikat Objekt
Artikel Attribut Substantiv
Adjektiv AdjektivDer
verschlafene
Student die
kleine
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 22 / 30
. . . . . .
Teil einer naturlichen Sprache (II)
Durch Anwendung der Regeln und Ersetzung der fett gedrucktenWorter konnen z.B. die folgenden Satze gebildet werden:
Der kleine bissige Student betritt die verschlafene MensaDer verschlafene Student jagt die kleine Katze
Mit Syntaxbaumen man man die Ableitungschritte verdeutlichen:
Katze
Satz
jagt
Subjekt
AttributArtikel Substantiv
Prädikat Objekt
Artikel Attribut Substantiv
Adjektiv AdjektivDer
verschlafene
Student die
kleine
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 22 / 30
. . . . . .
L-Systeme
Die L-Systeme wurden 1968 durch ARISTID LINDENMEYER alsmathematisches Modell des Pflanzenwachstums eingefuhrt.
L-Systeme werden heute in der Computergraphik benutzt, umnaturlich wirkende Pflanzen schnell generieren zu konnen.Hier betrachten wir die einfachste Klasse von L-Systemen, die sogenannten D0L-System.
I Die Regeln sind deterministisch, d.h. fur jeden Buchstaben gibt esgenau eine Regel.
I Die Regeln sind kontextfrei, d.h. Ersetzungen hangen nicht von denumgebenden Buchstaben (, Kontext) ab.
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 23 / 30
. . . . . .
L-Systeme
Die L-Systeme wurden 1968 durch ARISTID LINDENMEYER alsmathematisches Modell des Pflanzenwachstums eingefuhrt.L-Systeme werden heute in der Computergraphik benutzt, umnaturlich wirkende Pflanzen schnell generieren zu konnen.
Hier betrachten wir die einfachste Klasse von L-Systemen, die sogenannten D0L-System.
I Die Regeln sind deterministisch, d.h. fur jeden Buchstaben gibt esgenau eine Regel.
I Die Regeln sind kontextfrei, d.h. Ersetzungen hangen nicht von denumgebenden Buchstaben (, Kontext) ab.
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 23 / 30
. . . . . .
L-Systeme
Die L-Systeme wurden 1968 durch ARISTID LINDENMEYER alsmathematisches Modell des Pflanzenwachstums eingefuhrt.L-Systeme werden heute in der Computergraphik benutzt, umnaturlich wirkende Pflanzen schnell generieren zu konnen.Hier betrachten wir die einfachste Klasse von L-Systemen, die sogenannten D0L-System.
I Die Regeln sind deterministisch, d.h. fur jeden Buchstaben gibt esgenau eine Regel.
I Die Regeln sind kontextfrei, d.h. Ersetzungen hangen nicht von denumgebenden Buchstaben (, Kontext) ab.
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 23 / 30
. . . . . .
L-Systeme
Die L-Systeme wurden 1968 durch ARISTID LINDENMEYER alsmathematisches Modell des Pflanzenwachstums eingefuhrt.L-Systeme werden heute in der Computergraphik benutzt, umnaturlich wirkende Pflanzen schnell generieren zu konnen.Hier betrachten wir die einfachste Klasse von L-Systemen, die sogenannten D0L-System.
I Die Regeln sind deterministisch, d.h. fur jeden Buchstaben gibt esgenau eine Regel.
I Die Regeln sind kontextfrei, d.h. Ersetzungen hangen nicht von denumgebenden Buchstaben (, Kontext) ab.
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 23 / 30
. . . . . .
L-Systeme
Die L-Systeme wurden 1968 durch ARISTID LINDENMEYER alsmathematisches Modell des Pflanzenwachstums eingefuhrt.L-Systeme werden heute in der Computergraphik benutzt, umnaturlich wirkende Pflanzen schnell generieren zu konnen.Hier betrachten wir die einfachste Klasse von L-Systemen, die sogenannten D0L-System.
I Die Regeln sind deterministisch, d.h. fur jeden Buchstaben gibt esgenau eine Regel.
I Die Regeln sind kontextfrei, d.h. Ersetzungen hangen nicht von denumgebenden Buchstaben (, Kontext) ab.
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 23 / 30
. . . . . .
L-Systeme
Die L-Systeme wurden 1968 durch ARISTID LINDENMEYER alsmathematisches Modell des Pflanzenwachstums eingefuhrt.L-Systeme werden heute in der Computergraphik benutzt, umnaturlich wirkende Pflanzen schnell generieren zu konnen.Hier betrachten wir die einfachste Klasse von L-Systemen, die sogenannten D0L-System.
I Die Regeln sind deterministisch, d.h. fur jeden Buchstaben gibt esgenau eine Regel.
I Die Regeln sind kontextfrei, d.h. Ersetzungen hangen nicht von denumgebenden Buchstaben (, Kontext) ab.
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 23 / 30
. . . . . .
Grundlegende Begriffe und Eigenschaften
.
Definition (0L-Systeme)
.
.
.
. ..
.
.
Mit Σ∗ bezeichnen wir die Menge aller Worter uber Σ.
Ein 0L-System G ist ein Tripel G = (Σ, ω, P), wobeiI Σ das Alphabet,I ω das Axiom undI P ⊆ Σ× Σ∗ die Menge der Produktionen.
Eine Produktion (a, χ) ∈ P wird als a → χ geschrieben. DerBuchstabe a heißt Vorganger und χ Nachfolger dieser Produktion.Fur jeden Buchstaben a ∈ Σ existiert eine Produktion (a, χ) ∈ P.Geben wir aus Bequemlichkeitsgrunden fur einen Buchstaben akeine Produktion an, dann gilt implizit (a, a) ∈ P.Ein 0L-System heißt deterministisch, wenn es fur jedenBuchstaben a ∈ Σ nur genau eine Produktion (a, χ) ∈ P gibt.Deterministische 0L-Systeme heißen D0L-Systeme.
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 24 / 30
. . . . . .
Grundlegende Begriffe und Eigenschaften
.
Definition (0L-Systeme)
.
.
.
. ..
.
.
Mit Σ∗ bezeichnen wir die Menge aller Worter uber Σ.Ein 0L-System G ist ein Tripel G = (Σ, ω, P), wobei
I Σ das Alphabet,I ω das Axiom undI P ⊆ Σ× Σ∗ die Menge der Produktionen.
Eine Produktion (a, χ) ∈ P wird als a → χ geschrieben. DerBuchstabe a heißt Vorganger und χ Nachfolger dieser Produktion.Fur jeden Buchstaben a ∈ Σ existiert eine Produktion (a, χ) ∈ P.Geben wir aus Bequemlichkeitsgrunden fur einen Buchstaben akeine Produktion an, dann gilt implizit (a, a) ∈ P.Ein 0L-System heißt deterministisch, wenn es fur jedenBuchstaben a ∈ Σ nur genau eine Produktion (a, χ) ∈ P gibt.Deterministische 0L-Systeme heißen D0L-Systeme.
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 24 / 30
. . . . . .
Grundlegende Begriffe und Eigenschaften
.
Definition (0L-Systeme)
.
.
.
. ..
.
.
Mit Σ∗ bezeichnen wir die Menge aller Worter uber Σ.Ein 0L-System G ist ein Tripel G = (Σ, ω, P), wobei
I Σ das Alphabet,
I ω das Axiom undI P ⊆ Σ× Σ∗ die Menge der Produktionen.
Eine Produktion (a, χ) ∈ P wird als a → χ geschrieben. DerBuchstabe a heißt Vorganger und χ Nachfolger dieser Produktion.Fur jeden Buchstaben a ∈ Σ existiert eine Produktion (a, χ) ∈ P.Geben wir aus Bequemlichkeitsgrunden fur einen Buchstaben akeine Produktion an, dann gilt implizit (a, a) ∈ P.Ein 0L-System heißt deterministisch, wenn es fur jedenBuchstaben a ∈ Σ nur genau eine Produktion (a, χ) ∈ P gibt.Deterministische 0L-Systeme heißen D0L-Systeme.
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 24 / 30
. . . . . .
Grundlegende Begriffe und Eigenschaften
.
Definition (0L-Systeme)
.
.
.
. ..
.
.
Mit Σ∗ bezeichnen wir die Menge aller Worter uber Σ.Ein 0L-System G ist ein Tripel G = (Σ, ω, P), wobei
I Σ das Alphabet,I ω das Axiom und
I P ⊆ Σ× Σ∗ die Menge der Produktionen.
Eine Produktion (a, χ) ∈ P wird als a → χ geschrieben. DerBuchstabe a heißt Vorganger und χ Nachfolger dieser Produktion.Fur jeden Buchstaben a ∈ Σ existiert eine Produktion (a, χ) ∈ P.Geben wir aus Bequemlichkeitsgrunden fur einen Buchstaben akeine Produktion an, dann gilt implizit (a, a) ∈ P.Ein 0L-System heißt deterministisch, wenn es fur jedenBuchstaben a ∈ Σ nur genau eine Produktion (a, χ) ∈ P gibt.Deterministische 0L-Systeme heißen D0L-Systeme.
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 24 / 30
. . . . . .
Grundlegende Begriffe und Eigenschaften
.
Definition (0L-Systeme)
.
.
.
. ..
.
.
Mit Σ∗ bezeichnen wir die Menge aller Worter uber Σ.Ein 0L-System G ist ein Tripel G = (Σ, ω, P), wobei
I Σ das Alphabet,I ω das Axiom undI P ⊆ Σ× Σ∗ die Menge der Produktionen.
Eine Produktion (a, χ) ∈ P wird als a → χ geschrieben. DerBuchstabe a heißt Vorganger und χ Nachfolger dieser Produktion.Fur jeden Buchstaben a ∈ Σ existiert eine Produktion (a, χ) ∈ P.Geben wir aus Bequemlichkeitsgrunden fur einen Buchstaben akeine Produktion an, dann gilt implizit (a, a) ∈ P.Ein 0L-System heißt deterministisch, wenn es fur jedenBuchstaben a ∈ Σ nur genau eine Produktion (a, χ) ∈ P gibt.Deterministische 0L-Systeme heißen D0L-Systeme.
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 24 / 30
. . . . . .
Grundlegende Begriffe und Eigenschaften
.
Definition (0L-Systeme)
.
.
.
. ..
.
.
Mit Σ∗ bezeichnen wir die Menge aller Worter uber Σ.Ein 0L-System G ist ein Tripel G = (Σ, ω, P), wobei
I Σ das Alphabet,I ω das Axiom undI P ⊆ Σ× Σ∗ die Menge der Produktionen.
Eine Produktion (a, χ) ∈ P wird als a → χ geschrieben.
DerBuchstabe a heißt Vorganger und χ Nachfolger dieser Produktion.Fur jeden Buchstaben a ∈ Σ existiert eine Produktion (a, χ) ∈ P.Geben wir aus Bequemlichkeitsgrunden fur einen Buchstaben akeine Produktion an, dann gilt implizit (a, a) ∈ P.Ein 0L-System heißt deterministisch, wenn es fur jedenBuchstaben a ∈ Σ nur genau eine Produktion (a, χ) ∈ P gibt.Deterministische 0L-Systeme heißen D0L-Systeme.
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 24 / 30
. . . . . .
Grundlegende Begriffe und Eigenschaften
.
Definition (0L-Systeme)
.
.
.
. ..
.
.
Mit Σ∗ bezeichnen wir die Menge aller Worter uber Σ.Ein 0L-System G ist ein Tripel G = (Σ, ω, P), wobei
I Σ das Alphabet,I ω das Axiom undI P ⊆ Σ× Σ∗ die Menge der Produktionen.
Eine Produktion (a, χ) ∈ P wird als a → χ geschrieben. DerBuchstabe a heißt Vorganger und χ Nachfolger dieser Produktion.
Fur jeden Buchstaben a ∈ Σ existiert eine Produktion (a, χ) ∈ P.Geben wir aus Bequemlichkeitsgrunden fur einen Buchstaben akeine Produktion an, dann gilt implizit (a, a) ∈ P.Ein 0L-System heißt deterministisch, wenn es fur jedenBuchstaben a ∈ Σ nur genau eine Produktion (a, χ) ∈ P gibt.Deterministische 0L-Systeme heißen D0L-Systeme.
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 24 / 30
. . . . . .
Grundlegende Begriffe und Eigenschaften
.
Definition (0L-Systeme)
.
.
.
. ..
.
.
Mit Σ∗ bezeichnen wir die Menge aller Worter uber Σ.Ein 0L-System G ist ein Tripel G = (Σ, ω, P), wobei
I Σ das Alphabet,I ω das Axiom undI P ⊆ Σ× Σ∗ die Menge der Produktionen.
Eine Produktion (a, χ) ∈ P wird als a → χ geschrieben. DerBuchstabe a heißt Vorganger und χ Nachfolger dieser Produktion.Fur jeden Buchstaben a ∈ Σ existiert eine Produktion (a, χ) ∈ P.
Geben wir aus Bequemlichkeitsgrunden fur einen Buchstaben akeine Produktion an, dann gilt implizit (a, a) ∈ P.Ein 0L-System heißt deterministisch, wenn es fur jedenBuchstaben a ∈ Σ nur genau eine Produktion (a, χ) ∈ P gibt.Deterministische 0L-Systeme heißen D0L-Systeme.
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 24 / 30
. . . . . .
Grundlegende Begriffe und Eigenschaften
.
Definition (0L-Systeme)
.
.
.
. ..
.
.
Mit Σ∗ bezeichnen wir die Menge aller Worter uber Σ.Ein 0L-System G ist ein Tripel G = (Σ, ω, P), wobei
I Σ das Alphabet,I ω das Axiom undI P ⊆ Σ× Σ∗ die Menge der Produktionen.
Eine Produktion (a, χ) ∈ P wird als a → χ geschrieben. DerBuchstabe a heißt Vorganger und χ Nachfolger dieser Produktion.Fur jeden Buchstaben a ∈ Σ existiert eine Produktion (a, χ) ∈ P.Geben wir aus Bequemlichkeitsgrunden fur einen Buchstaben akeine Produktion an, dann gilt implizit (a, a) ∈ P.
Ein 0L-System heißt deterministisch, wenn es fur jedenBuchstaben a ∈ Σ nur genau eine Produktion (a, χ) ∈ P gibt.Deterministische 0L-Systeme heißen D0L-Systeme.
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 24 / 30
. . . . . .
Grundlegende Begriffe und Eigenschaften
.
Definition (0L-Systeme)
.
.
.
. ..
.
.
Mit Σ∗ bezeichnen wir die Menge aller Worter uber Σ.Ein 0L-System G ist ein Tripel G = (Σ, ω, P), wobei
I Σ das Alphabet,I ω das Axiom undI P ⊆ Σ× Σ∗ die Menge der Produktionen.
Eine Produktion (a, χ) ∈ P wird als a → χ geschrieben. DerBuchstabe a heißt Vorganger und χ Nachfolger dieser Produktion.Fur jeden Buchstaben a ∈ Σ existiert eine Produktion (a, χ) ∈ P.Geben wir aus Bequemlichkeitsgrunden fur einen Buchstaben akeine Produktion an, dann gilt implizit (a, a) ∈ P.Ein 0L-System heißt deterministisch, wenn es fur jedenBuchstaben a ∈ Σ nur genau eine Produktion (a, χ) ∈ P gibt.
Deterministische 0L-Systeme heißen D0L-Systeme.
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 24 / 30
. . . . . .
Grundlegende Begriffe und Eigenschaften
.
Definition (0L-Systeme)
.
.
.
. ..
.
.
Mit Σ∗ bezeichnen wir die Menge aller Worter uber Σ.Ein 0L-System G ist ein Tripel G = (Σ, ω, P), wobei
I Σ das Alphabet,I ω das Axiom undI P ⊆ Σ× Σ∗ die Menge der Produktionen.
Eine Produktion (a, χ) ∈ P wird als a → χ geschrieben. DerBuchstabe a heißt Vorganger und χ Nachfolger dieser Produktion.Fur jeden Buchstaben a ∈ Σ existiert eine Produktion (a, χ) ∈ P.Geben wir aus Bequemlichkeitsgrunden fur einen Buchstaben akeine Produktion an, dann gilt implizit (a, a) ∈ P.Ein 0L-System heißt deterministisch, wenn es fur jedenBuchstaben a ∈ Σ nur genau eine Produktion (a, χ) ∈ P gibt.Deterministische 0L-Systeme heißen D0L-Systeme.
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 24 / 30
. . . . . .
D0L-Systeme (II)
.
Definition (0L-Systeme)
.
.
.
. ..
.
.
Sei µ = a1 . . . am ein beliebiges Wort uber Σ, dann kann ν = χ1 . . . χmaus µ abgeleitet werden, wenn
fur alle i = 1, . . . m (ai , χi) ∈ P gilt, wobeiman µ ν schreibt.Ein Wort ν heißt von G generiert, wenn es in endlich vielenSchritten aus dem Axiom abgeleitet werden kann.
Achtung: Alle Regeln aus P werden gleichzeitig angewendet.
Wird ein Wort ν von G = (Σ, ω, P) generiert, dann konnen wir also
ω µ1 µ2 . . . µn = ν
schreiben (kurz: ω * ν).
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 25 / 30
. . . . . .
D0L-Systeme (II)
.
Definition (0L-Systeme)
.
.
.
. ..
.
.
Sei µ = a1 . . . am ein beliebiges Wort uber Σ, dann kann ν = χ1 . . . χmaus µ abgeleitet werden, wenn
fur alle i = 1, . . . m (ai , χi) ∈ P gilt, wobei
man µ ν schreibt.Ein Wort ν heißt von G generiert, wenn es in endlich vielenSchritten aus dem Axiom abgeleitet werden kann.
Achtung: Alle Regeln aus P werden gleichzeitig angewendet.
Wird ein Wort ν von G = (Σ, ω, P) generiert, dann konnen wir also
ω µ1 µ2 . . . µn = ν
schreiben (kurz: ω * ν).
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 25 / 30
. . . . . .
D0L-Systeme (II)
.
Definition (0L-Systeme)
.
.
.
. ..
.
.
Sei µ = a1 . . . am ein beliebiges Wort uber Σ, dann kann ν = χ1 . . . χmaus µ abgeleitet werden, wenn
fur alle i = 1, . . . m (ai , χi) ∈ P gilt, wobeiman µ ν schreibt.
Ein Wort ν heißt von G generiert, wenn es in endlich vielenSchritten aus dem Axiom abgeleitet werden kann.
Achtung: Alle Regeln aus P werden gleichzeitig angewendet.
Wird ein Wort ν von G = (Σ, ω, P) generiert, dann konnen wir also
ω µ1 µ2 . . . µn = ν
schreiben (kurz: ω * ν).
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 25 / 30
. . . . . .
D0L-Systeme (II)
.
Definition (0L-Systeme)
.
.
.
. ..
.
.
Sei µ = a1 . . . am ein beliebiges Wort uber Σ, dann kann ν = χ1 . . . χmaus µ abgeleitet werden, wenn
fur alle i = 1, . . . m (ai , χi) ∈ P gilt, wobeiman µ ν schreibt.Ein Wort ν heißt von G generiert, wenn es in endlich vielenSchritten aus dem Axiom abgeleitet werden kann.
Achtung: Alle Regeln aus P werden gleichzeitig angewendet.
Wird ein Wort ν von G = (Σ, ω, P) generiert, dann konnen wir also
ω µ1 µ2 . . . µn = ν
schreiben (kurz: ω * ν).
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 25 / 30
. . . . . .
D0L-Systeme (II)
.
Definition (0L-Systeme)
.
.
.
. ..
.
.
Sei µ = a1 . . . am ein beliebiges Wort uber Σ, dann kann ν = χ1 . . . χmaus µ abgeleitet werden, wenn
fur alle i = 1, . . . m (ai , χi) ∈ P gilt, wobeiman µ ν schreibt.Ein Wort ν heißt von G generiert, wenn es in endlich vielenSchritten aus dem Axiom abgeleitet werden kann.
Achtung: Alle Regeln aus P werden gleichzeitig angewendet.
Wird ein Wort ν von G = (Σ, ω, P) generiert, dann konnen wir also
ω µ1 µ2 . . . µn = ν
schreiben (kurz: ω * ν).
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 25 / 30
. . . . . .
Ein Beispiel
Sei G = (Σ, ω, P), wobeiΣ = {a, b, c},ω = abc undP = {a → aa, b → bb, c → cc}.
Mit Hilfe dieses D0L-Systems konnen Worte der Form
a2nb2n
c2n
fur n ≥ 0 abgeleitet werden.
Bemerkung: an ist die Abkurzung fur aaa . . . a︸ ︷︷ ︸n−mal
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 26 / 30
. . . . . .
Ein Beispiel
Sei G = (Σ, ω, P), wobeiΣ = {a, b, c},ω = abc undP = {a → aa, b → bb, c → cc}.
Mit Hilfe dieses D0L-Systems konnen Worte der Form
a2nb2n
c2n
fur n ≥ 0 abgeleitet werden.
Bemerkung: an ist die Abkurzung fur aaa . . . a︸ ︷︷ ︸n−mal
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 26 / 30
. . . . . .
Ein Beispiel
Sei G = (Σ, ω, P), wobeiΣ = {a, b, c},ω = abc undP = {a → aa, b → bb, c → cc}.
Mit Hilfe dieses D0L-Systems konnen Worte der Form
a2nb2n
c2n
fur n ≥ 0 abgeleitet werden.
Bemerkung: an ist die Abkurzung fur aaa . . . a︸ ︷︷ ︸n−mal
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 26 / 30
. . . . . .
Turtle-Graphik
Sei δ ein beliebiger Winkel, dann werden die Buchstaben F, f, + und− wie folgt interpretiert:
F Bewege den Stift um die Lange d und zeichne eine Linief Bewege den Stift um die Lange d und zeichne keine Linie− drehe um δ Grad nach rechts+ drehe um δ Grad nach links
Mit δ = 90◦ wird FFF− FF− F− F+ F+ FF− F− FFF in die Graphik
umgesetzt.
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 27 / 30
. . . . . .
Turtle-Graphik
Sei δ ein beliebiger Winkel, dann werden die Buchstaben F, f, + und− wie folgt interpretiert:
F Bewege den Stift um die Lange d und zeichne eine Linief Bewege den Stift um die Lange d und zeichne keine Linie− drehe um δ Grad nach rechts+ drehe um δ Grad nach links
Mit δ = 90◦ wird FFF− FF− F− F+ F+ FF− F− FFF in die Graphik
umgesetzt.
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 27 / 30
. . . . . .
Ein Beispiel
.
Beispiel (Kochsche Schneeflocke)
.
.
.
. ..
.
.
Gegeben sei G = (Σ, ω, P) mitΣ = {F, +,−},ω = F undP = {F→ F+ F−−F+ F}
Wir legen δ = 45◦ fest. Fur die Anzahl der Schritte n ergibt sich:
n = 1 F+ F−−F+ F
n = 2F+ F−−F+ F+ F+ F−− F+ F−−F+ F−−F+ F+ F+ F−−F+ F
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 28 / 30
. . . . . .
Ein Beispiel
.
Beispiel (Kochsche Schneeflocke)
.
.
.
. ..
.
.
Gegeben sei G = (Σ, ω, P) mitΣ = {F, +,−},ω = F undP = {F→ F+ F−−F+ F}
Wir legen δ = 45◦ fest. Fur die Anzahl der Schritte n ergibt sich:
n = 1 F+ F−−F+ F
n = 2F+ F−−F+ F+ F+ F−− F+ F−−F+ F−−F+ F+ F+ F−−F+ F
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 28 / 30
. . . . . .
Ein Beispiel
.
Beispiel (Kochsche Schneeflocke)
.
.
.
. ..
.
.
Gegeben sei G = (Σ, ω, P) mitΣ = {F, +,−},ω = F undP = {F→ F+ F−−F+ F}
Wir legen δ = 45◦ fest. Fur die Anzahl der Schritte n ergibt sich:
n = 1 F+ F−−F+ F
n = 2F+ F−−F+ F+ F+ F−− F+ F−−F+ F−−F+ F+ F+ F−−F+ F
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 28 / 30
. . . . . .
Ein Beispiel
.
Beispiel (Kochsche Schneeflocke)
.
.
.
. ..
.
.
Gegeben sei G = (Σ, ω, P) mitΣ = {F, +,−},ω = F undP = {F→ F+ F−−F+ F}
Wir legen δ = 45◦ fest. Fur die Anzahl der Schritte n ergibt sich:
n = 1 F+ F−−F+ F
n = 2F+ F−−F+ F+ F+ F−− F+ F−−F+ F−−F+ F+ F+ F−−F+ F
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 28 / 30
. . . . . .
Ein zweites Beispiel
.
Beispiel (Drachenkurve)
.
.
.
. ..
.
.
Sei δ = 90◦ und das L-System G = ({Fr,Fl, +,−},Fl,{Fl → Fl + Fr+,Fr → −Fl − Fr}), dann ergibt sich mit derTurtle-Interpretation:
Sowohl Fl als auch Fr werden als ”Bewege den Stift einen Schritt derLange d und zeichne eine Linie“ interpretiert.
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 29 / 30
. . . . . .
Weiterfuhrende LiteraturPrzemyslaw Prusinkiewicz und Aristid Lindenmayer, TheAlgorithmic Beauty of Plantsunter
http://algorithmicbotany.org/papers/#abop
Die folgenden Graphiken wurden diesem Buch entnommen:
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 30 / 30
. . . . . .
Weiterfuhrende LiteraturPrzemyslaw Prusinkiewicz und Aristid Lindenmayer, TheAlgorithmic Beauty of Plantsunter
http://algorithmicbotany.org/papers/#abop
Die folgenden Graphiken wurden diesem Buch entnommen:
Steffen Reith Automatentheorie und Formale Sprachen 18. Oktober 2007 30 / 30