Formale Sprachen – Mächtigkeit von Maschinenmodellen

Slides:



Advertisements
Ähnliche Präsentationen
Hier einige Hieroglyphen:
Advertisements

6. Regelbasierte Systeme
Schwierigkeit von Aufgabenstellungen
Wiederholung Was ist Informatik?
3. Kapitel: Komplexität und Komplexitätsklassen
8. Formale Sprachen und Grammatiken
3. Berechenbarkeit Wann ist eine Funktion (über den natürlichen Zahlen) berechenbar? Intuitiv: Wenn es einen Algorithmus gibt, der sie berechnet! Was heißt,
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.
Programmiertechniken: Zustand fungiert als „endlicher Speicher“
Christian Schindelhauer
1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Einführung in Berechenbarkeit, Formale Sprachen und Komplexitätstheorie Wintersemester.
FH-Hof Extensible Markup Language Richard Göbel. FH-Hof Extensible Markup Language XML XML ist universeller Ansatz für die Strukturierung von Zeichenketten.
Sortierverfahren Richard Göbel.
FH-Hof Grammatiken Richard Göbel. FH-Hof Begriffe Eine Grammatik definiert die Struktur (Syntax) einer Zeichenkette Eine Grammatik definiert nicht die.
Parser - Verfahren: Rekursiver Abstieg
FH-Hof Verwaltung von Zeichenketten Richard Göbel.
FH-Hof Effizienz - Grundlagen Richard Göbel. FH-Hof Inhalt Einführung Aufwand für Anfragen ohne Indexierung Indexstrukturen für Anfragen an eine Tabelle.
Indirekte Adressierung
FH-Hof Alternative Darstellungsformen für Grammatiken Richard Göbel.
Parser für CH3-Sprachen
FH-Hof Indirekte Adressierung Richard Göbel. FH-Hof Einfache Speicherung von Daten Eine "einfache" Deklaration definiert direkt eine Speicherplatz für.
Motivation Richard Göbel.
FH-Hof Verwaltung von Zeichenketten Richard Göbel.
Strategy Pattern Richard Göbel.
FH-Hof Konturen in Rasterdaten Richard Göbel. FH-Hof Idee Identifiziere Konturen (Linien als Grenzen) zwischen verschiedenen Bereichen Kontur ist durch.
FH-Hof Formale Sprachen - Maschinenmodelle Richard Göbel.
FH-Hof Optimierungsverfahren für kombinatorische Probleme Richard Göbel.
Java: Referenzen und Zeichenketten
Java: Grundlagen der Objektorientierung
High Performance = Innovative Computer Systems + Efficient Algorithms Friedhelm Meyer auf der Heide 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen.
Christian Schindelhauer
Christian Schindelhauer
Christian Schindelhauer
§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.
§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.
Berechenbarkeit. Fragestellungen Können Computer alles ausrechnen? Kann man alles ausrechnen? Was kann man berechnen? Was nicht? Was heißt Berechenbarkeit?
FH-Hof Analyse des R-Baums - Teil 1 Richard Göbel.
Rekursion Richard Göbel.
FH-Hof Algorithmen und Datenstrukturen - Einführung Richard Göbel.
FH-Hof Java2D - Grundlagen Richard Göbel. FH-Hof Java2D - Funktionen Java2D unterstützt: das Zeichnen von Grafiken die Darstellung von Texten die Darstellung.
FH-Hof Adapter & Facade Pattern Richard Göbel. FH-Hof Motivation Gegeben ist eine Klasse mit vorhandenen Methoden Gefordert ist eine Klasse, die ein bestimmtes.
Für U2 an der FH in Bingen von Dipl. Inform. (FH) Heidi HannaH Daudistel.
Information und Kommunikation Hartmut Klauck Universität Frankfurt SS
Beweissysteme Hartmut Klauck Universität Frankfurt WS 06/
Hartmut Klauck Universität Frankfurt WS 06/
Hartmut Klauck Universität Frankfurt WS 06/
Polynome und schnelle Fourier-Transformation
Einführung in die Informatik für Naturwissenschaftler und Ingenieure
Einführung in die Programmierung Wintersemester 2013/14 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund.
Information und Kommunikation
Formale Sprachen Grammatiken und die Chomsky-Hierarchie
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.
PS Grundlagen wissenschaftlichen Arbeitens
Zahlenmengen Eine Wiederholung Mag. Sabine Tullits.
1 Albert-Ludwigs-Universität Freiburg Rechnernetze und Telematik Prof. Dr. Christian Schindelhauer Informatik III Christian Schindelhauer Wintersemester.
1 Albert-Ludwigs-Universität Freiburg Rechnernetze und Telematik Prof. Dr. Christian Schindelhauer Informatik III Christian Schindelhauer Wintersemester.
Arne Vater Wintersemester 2006/ Vorlesung
Informatik III Christian Schindelhauer Wintersemester 2006/07
1 Albert-Ludwigs-Universität Freiburg Rechnernetze und Telematik Prof. Dr. Christian Schindelhauer Informatik III Christian Schindelhauer Wintersemester.
Arne Vater Wintersemester 2006/ Vorlesung
Wintersemester 2005 / Vorlesung
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
Kapitel 4:Die Chomsky Hierarchie
Wann ist eine Funktion (über den natürlichen Zahlen) berechenbar?
1 DigInf 05/06 Beispiele für berechenbare Funktionen Diagonalisierung Alles gemäß handschriftlicher Folien.
Praktische Informatik 1
 Präsentation transkript:

Formale Sprachen – Mächtigkeit von Maschinenmodellen Richard Göbel

Mächtigkeit eines Maschinenmodells Mächtigkeit ist die Menge der lösbaren Aufgaben Noch zu klären: Was ist eine Aufgabe in diesem Zusammenhang? Wie lässt sich eine in der Regel unendlich große Menge an Aufgabenstellungen darstellen? Vergleich von zwei Maschinenmodellen A und B A und B haben gleiche Mächtigkeit A ist mächtiger als B B ist mächtiger als A A und B lassen sich nicht vergleichen

Aufgabenstellung als Funktion Ein Maschinenmodell mit einem Programm definiert eine Funktion f auf der Menge von Zeichenketten f : A*  Pf  A* Andere Schreibweise für die Funktion fp : A*  A* mit: fp(w) = f(p, w) Menge der Funktionen für ein Maschinenmodell F = { fp | p  Pf } Bemerkung Nicht jede Funktion terminiert für jede Eingabe Viele Funktionen sind also nur partiell definiert

Methoden für den Vergleich von Maschinen Finde für jedes Programm der Maschine A ein äquivalentes Programm der Maschine B Zwei Programme sind äquivalent, wenn sie für jede Eingabe dieselbe Ausgabe liefern  w, v  A*: g(w, pg) = v  f(w, pf) = v In diesem Fall wäre B mindestens so mächtig wie A Simuliere die Maschine A auf der Maschine B Ordne jedem Speicher auf Maschine A entsprechenden Speicher auf Maschine B zu Definiere Sequenzen von Befehlen auf Maschine B für jeden Befehl auf Maschine A Beweise die Korrektheit des jeweiligen Ansatzes

Beispiel für einen Vergleich RAM mit Multiplikationsbefehl RAM ohne Multiplikationsbefehl Ansatz Definiere eine Sequenz von Befehlen zur Multiplikation von zwei Zahlen durch mehrfache Addition Adressen von Speicherzellen ändern, so dass sie für die Multiplikation benutzt werden können Feste Adressen direkt ändern Befehle zur indirekte Adressierung ergänzen Ersetze die Multiplikationsbefehle Passe die Sprungadressen an

Ergebnisse der Vergleiche Turingmaschine und RAM sind bezüglich der Mächtigkeit gleich Der endliche Automat hat eine geringere Mächtigkeit als die Turingmaschine Beispiel geklammerter Ausdruck, Klammerstruktur korrekt? Alle bekannten Maschinenmodelle sind nicht mächtiger als die Turingmaschine! Auch „ähnliche“ Konzepte haben keine größere Mächtigkeit: Grammatiken µ-rekursive Funktionen

Folgerungen Die Turingmaschine (RAM, etc.) scheint bezüglich der Mächtigkeit maximal zu sein. Die Turingmaschine scheint ein Modell für die Informationsverarbeitung an sich zu sein! These von Church (1936): Jede im intuitiven Sinne berechenbare Funktion ist Turing-berechenbar.