Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Grenzen endlicher Automaten Theoretische Grundlagen der Informatik Prof. Dr. Michael Löwe.

Ähnliche Präsentationen


Präsentation zum Thema: "Grenzen endlicher Automaten Theoretische Grundlagen der Informatik Prof. Dr. Michael Löwe."—  Präsentation transkript:

1 Grenzen endlicher Automaten Theoretische Grundlagen der Informatik Prof. Dr. Michael Löwe

2 Grenzen endlicher Automaten2 Inhalt Rekursion in endlichen Automaten Anwendung: Nachweis der Unlösbarkeit Normierte Endliche Automaten Normierung der Alphabete Normierung der Zustände Universelle Funktion für endliche Automaten

3 Grenzen endlicher Automaten3 Rekursion in endlichen Automaten e1, e2, e3, e4, e5, e6, e7,......e n a1, a2, a3, a4, a5, a6, a7,......a n Eingabe Ausgabe z1z2z3z4z5z6z7 T F Z n = Z n-x n > |Z| n-x <= |Z|

4 Grenzen endlicher Automaten4 Eingabe: w = w1 w2 w3 |w| > |Z|, |w1 w2| <= |Z| Ausgabe: v = v1 v2 v3 z0z0 zzzRzR Rekursion in endlichen Automaten Eingabe: w = w1 w2 w2 w3 Ausgabe: v = v1 v2 v2 v3 z0z0 zzzRzR z

5 Grenzen endlicher Automaten5 Lemma 17 (Rekursion in Endlichen Maschinen): Sei M = (E, A, Z, T, F, z 0, R) eine Endliche Maschine und f M : E* A* die berechnete Funktion. Dann kann man eine natürliche Zahl n angeben mit folgenden Eigenschaften: (1) Alle Eingabeworte w, die länger sind als n (i. e. |w| n) und für die f M definiert ist, i.e. f M (w) = v, lassen sich so in drei Teile w 1 w 2 w 3 zerlegen, dass (i) w 2, (ii) |w 1 w 2 | n und (iii) f M auch für w 1 (w 2 ) i w 3 definiert ist für alle i 0. (2) Analog zur Zerlegung von w existiert eine Zerlegung von v in drei Teile, i. e. v = v 1 v 2 v 3, so dass f M (w 1 (w 2 ) i w 3 ) = v 1 (v 2 ) i v 3.

6 Grenzen endlicher Automaten6 Anwendung: Unlösbarkeit Die Funktion q: {a}* {b}*::= q(a... (k-mal)...a) = b... (j-mal)...b, wobei j Anzahl der Quadratzahlen bis k ist, lässt sich nicht mit einem endlichen Automaten berechnen. Sei n fest und w = a..... (n - mal).....a, dann gilt für jede Zerlegung w = w1w2w3: w1 = a x, w2 = a y und w3 = a z. Es muss gelten q(w) = v = v1v2v3: v1 = b p, v2 = b n und v3 = b m Daraus folgt: q(x + (i y) + z) = p + (i n) + m für alle i 0. Was natürlich nicht stimmt!!! Warum??? (x + 1) 2 – x 2 = x 2 + 2x + 1 – x 2 = 2x + 1

7 Grenzen endlicher Automaten7 Normierung endlicher Automaten 1. Schritt: Standardalphabet B = {0, 1, |} für Ein- und Ausgabe Kodierung der Zeichen : E B* und : A B*: {a, b, c, d, e, f, g, h, i, j, k} {0001, 0010, 0011, 0100, 0101, 0110, 0111, 1000, 1001, 1010, 1011} Kodierung der Ein- und Ausgabe: *: E* B* und *: A* B*: abbce 0001|0010|0010|0011|0110| Normierung der Funktionen T und F: z1 z2 Konstruktion 20 z1z1, 1z1, 10 z1, 101z1, 1010z2 <1, > <0, > <1, > <0, > <|,11|01|01|>

8 Grenzen endlicher Automaten8 Normierung endlicher Automaten 2. Schritt: Standardnamen (Digitalzahlen) für die Zustände {Initial, 1, 2, 3, 4, 5, Abbruch} {1, 10, 11, 100, 101, 110, 111} Standardnummer 1 für den Anfangszustand: z 0 = 1 3. Schritt : Kodierung eines Automaten im Standardalphabet {0, 1, |} M = (E = {a, b, c}, A = {d, e}, Z = {y, z}, z 0 = y, T, F) Kombinierter Übergang: T F: E Z Z A* a y z d d e Kodierung eines Übergangs: T F(a, y) = (z, dde) 01|1|10|01|01|10|| Kodierung der gesamten Funktion: (T F(a,y)) (T F(a,z)) (T F(b,y)) (T F(b,z)) (T F(c,y)) (T F(c,z))|||

9 Grenzen endlicher Automaten9 Universelle Funktion Die universelle Funktion für Endliche Maschinen U: B* B* ist definiert durch: (1) U(w) = *f M (v), falls die Eingabe aus der Kodierung einer Endlichen Maschine und der Kodierung einer Eingabe für diese Maschine besteht, i. e. w = M *v; (2) U undefiniert sonst

10 Grenzen endlicher Automaten10 Der Algorithmus Lese die Eingabe bis zur Sequenz |||||; wenn es die Sequenz nicht gibt, halte nicht mehr. Rekonstruiere daraus die Funktionstabelle FT für T und F Wenn das nicht klappt, halte nicht mehr. Setze den aktuellen Zustand z = 1; setze den Ausgabestrom a = Solange die Eingabe nicht leer ist Lies das erste Eingabezeichen in Variable e ein Suche in FT den Eintrag toDo für Spalte1 = e und Spalte2 = z Wenn kein Eintrag vorhanden, dann halte nicht mehr. z = toDo(Spalte3) und a = a & toDo(Spalte4) wenn z kein Ruhezustand, dann halte nicht mehr.

11 Grenzen endlicher Automaten11 Das theoretische Ergebnis Die universelle Funktion für Endliche Maschinen kann nicht durch eine Endliche Maschine berechnet werden. Warum nicht???


Herunterladen ppt "Grenzen endlicher Automaten Theoretische Grundlagen der Informatik Prof. Dr. Michael Löwe."

Ähnliche Präsentationen


Google-Anzeigen