Berechenbarkeit. Script, Kapitel 2
|
|
|
- Gundi Fischer
- vor 7 Jahren
- Abrufe
Transkript
1 Berechenbarkeit Script, Kapitel 2 Intuitiver Berechenbarkeitsbegriff Turing-Berechenbarkeit WHILE-Berechenbarkeit Church sche These Entscheidungsprobleme Unentscheidbarkeit des Halteproblems für Turingmaschinen B. Reichel, R. Stiebe: Theoretische Informatik für Lehrer 20
2 Intuitiver Algorithmusbegriff Ein Algorithmus überführt Eingabedaten in Ausgabedaten (wobei die Art der Daten vom Problem, das durch den Algorithmus gelöst werden soll, abhängig ist), besteht aus einer endlichen Folge von Anweisungen mit folgenden Eigenschaften: es gibt eine eindeutig festgelegte Anweisung, die als erste auszuführen ist, nach Abarbeitung einer Anweisung gibt es eine eindeutig festgelegte Anweisung, die als nächste abzuarbeiten ist, oder die Abarbeitung des Algorithmus ist beendet und hat eindeutig bestimmte Ausgabedaten geliefert, die Abarbeitung einer Anweisung erfordert keine Intelligenz (ist also prinzipiell durch eine Maschine realisierbar). B. Reichel, R. Stiebe: Theoretische Informatik für Lehrer 21
3 Beispiele für Algorithmen der Gaußsche 1 Algorithmus zur Lösung von linearen Gleichungssystemen (über den rationalen Zahlen), Kochrezepte (mit Zutaten und Kochgeräten als Eingabe und dem fertigen Gericht als Ausgabe), Bedienungsanweisungen für Geräte, PASCAL-Programme. 1 Carl Friedrich Gauss, , deutscher Mathematiker. B. Reichel, R. Stiebe: Theoretische Informatik für Lehrer 22
4 Idee der Turingmaschine 2 Arbeitsband beidseitig (potenziell) unendliches Band, in Felder eingeteilt; jedes Feld enthält einen Buchstaben aus dem Bandalphabet; zum Bandalphabet gehört das Leerzeichen oder Blank-Symbol. Schreib-Lesekopf über dem Band beweglich bearbeitet ein aktuelles Feld endliche Steuerung oder Kontrolle endliche Menge von internen Zuständen, die den Programmablauf regeln 2 Alan Mathison Turing ( ), britischer Mathematiker, Logiker, Kryptoanalytiker und Computerkonstrukteur. B. Reichel, R. Stiebe: Theoretische Informatik für Lehrer 23
5 Veranschaulichung einer Turingmaschine x y.. z # x $ unendliches Band endliche Kontrolle Schreib-Lesekopf B. Reichel, R. Stiebe: Theoretische Informatik für Lehrer 24
6 Definition der Turingmaschine Eine (deterministische) Turingmaschine (kurz: TM) ist gegeben durch ein 7-Tupel M = (Z, Σ, Γ, δ, z 0,, E). Hierbei sind Z eine endliche Menge (Zustandsmenge), Σ ein Alphabet (Eingabealphabet), Γ ein Alphabet (Bandalphabet) mit Σ Γ, δ : (Z \ E) Γ Z Γ {L, R, N} eine Funktion (Überführungsfunktion), z 0 Z (Anfangszustand), Γ \ Σ (Leerzeichen, Blank), E Z (Menge der Endzustände). B. Reichel, R. Stiebe: Theoretische Informatik für Lehrer 25
7 Erstes Beispiel einer Turingmaschine Gegeben sei die Turingmaschine M = ({z 0, z 1, z 2, z e }, {0, 1}, {0, 1, }, δ, z 0,, {z e }), wobei δ wie folgt definiert ist. Wir geben dabei δ in einer Tabelle an, wobei im Kreuzungspunkt der Zeile mit der Bezeichnung a und der Spalte mit der Bezeichnung z der Funktionswert δ(z, a) steht. δ z 0 z 1 z 2 (z 1,, L) (z e, 1, N) (z e,, R) 0 (z 0, 0, R) (z 2, 1, L) (z 2, 0, L) 1 (z 0, 1, R) (z 1, 0, L) (z 2, 1, L) B. Reichel, R. Stiebe: Theoretische Informatik für Lehrer 26
8 Konfiguration einer Turingmaschine Eine Konfiguration k einer Turingmaschine M = (Z, Σ, Γ, δ, z 0,, E) ist ein Wort k Γ ZΓ. Dabei soll k = αzβ folgendermaßen interpretiert werden: αβ steht auf dem Eingabeband, des weiteren stehen nur noch Blankzeichen auf dem Band, die Turingmaschine befindet sich im Zustand z und der Kopf der Turingmaschine steht über dem ersten Symbol von β. Eine Startkonfiguration ist k 0 = z 0 w mit w Σ. Eine Endkonfiguration ist k e = m z e w n mit z e E, w Σ, m, n N. B. Reichel, R. Stiebe: Theoretische Informatik für Lehrer 27
9 Die binäre Relation in der Menge der Konfigurationen (Änderung der Konfiguration in einem Schritt der TM) a 1... a m zb 1... b n a 1... a m z cb 2... b n falls δ(z, b 1 ) = (z, c, N), m 0, n 1, a 1... a m cz b 2... b n falls δ(z, b 1 ) = (z, c, R), m 0, n 2, a 1... a m 1 z a m cb 2... b n falls δ(z, b 1 ) = (z, c, L), m 1, n 1, a 1... a m zb 1 a 1... a m cz falls δ(z, b 1 ) = (z, c, R), m 0, zb 1... b n z cb 2... b n falls δ(z, b 1 ) = (z, c, L), n 1. B. Reichel, R. Stiebe: Theoretische Informatik für Lehrer 28
10 Die binäre Relation * (Änderung der Konfiguration in endlich vielen Schritten der TM) Mit bezeichnen wir den reflexiven und transitiven Abschluss der binären Relation, also es gilt k 0 k e genau dann, wenn (i) k 0 = k e ist, oder (ii) eine Zahl n 0 und Konfigurationen k 1, k 2,..., k n existieren, so dass k 0 k 1 k 2 k n k e. B. Reichel, R. Stiebe: Theoretische Informatik für Lehrer 29
11 Turingberechenbarkeit Eine Funktion f : Σ Σ heißt Turingberechenbar, falls es eine Turingmaschine M = (Z, Σ, Γ, δ, z 0,, E) gibt, so dass für alle x, y Σ gilt: f(x) = y genau dann, wenn z 0 x... z e y... für ein z e E. Eine Funktion f : N k N für ein k N heißt Turingberechenbar, falls es eine Turingmaschine M = (Z, {0, 1, #}, Γ, δ, z 0,, E) gibt, so dass für alle n 1, n 2,..., n k, m N gilt: f(n 1, n 2,..., n k ) = m genau dann, wenn für ein z e E : z 0 bin(n 1 )#bin(n 2 )#... #bin(n k )... z e bin(m)... B. Reichel, R. Stiebe: Theoretische Informatik für Lehrer 30
12 Beispiele für Turingberechenbare Funktionen Die Nachfolgerfunktion f : N N vermöge n f(n) = n + 1 ist Turingberechenbar, da die Turingmaschine aus unserem ersten Beispiel die Eingabe bin(n) in die Ausgabe bin(n + 1) transformiert. Die für alle Wörter aus {a, b} nicht-definierte Funktion Ω: {a, b} {a, b} vermöge w Ω(w) = nicht definiert ist Turing-berechenbar, da sie von der Turingmaschine M = ({z 0, z e }, {a, b}, {a, b, }, δ, z 0,, {z e }) mit δ(z 0, x) = (z 0, x, N) für alle x {a, b, } berechnet wird. B. Reichel, R. Stiebe: Theoretische Informatik für Lehrer 31
13 Mehrband-Turingmaschinen k 1 Bänder (Eingabe/Ausgabe auf Band 1) Jedes Band hat einen eigenen Schreib-Lesekopf, der separat bewegt wird. Formal δ : Z Γ k Z Γ k {L, R, N} k B. Reichel, R. Stiebe: Theoretische Informatik für Lehrer 32
14 Äquivalenz von Mehrband- und (Einband)-TM Zu jeder Mehrband-TM M gibt es eine (Einband-)TM M, die dieselbe Funktion berechnet wie M. Mehrband-TM a a a b b a a b a b b a a a b a Einband-TM a a a b b a a b a b b a a a b a l k Bänder 1 Schritt 1 Band mit 2k Spuren 2(l + k) Schritte B. Reichel, R. Stiebe: Theoretische Informatik für Lehrer 33
15 Notationen : modifizierte Subtraktion : N 2 N vermöge (n 1, n 2 ) n 1 n 2 = { n 1 n 2 falls n 1 n 2, 0 sonst. Band := Band + 1 : TM, die zu einer Zahl 1 dazuaddiert Band(i) := Band(i) + 1 : k-band-tm, die auf i-tem Band 1 addiert und alle anderen Bänder unverändert läßt Band(i) := Band(i) 1 : k-band-tm, die auf i-tem Band 1 modifiziert subtrahiert und alle anderen Bänder unverändert läßt Band(i) := Band(j) : k-band-tm, die Inhalt des j-ten Bandes auf i-tes Band kopiert B. Reichel, R. Stiebe: Theoretische Informatik für Lehrer 34
16 Nacheinanderausführung von Turingmaschinen Seien M 1 und M 2 zwei Turingmaschinen, so wollen wir durch start M 1 M 2 stop oder auch durch M 1 ; M 2 diejenige Turingmaschine verstehen, die zuerst wie die Turingmaschine M 1 arbeitet und wenn M 1 einen Stopzustand erreichen würde in den Anfangszustand von M 2 übergeht und jetzt wie die Turingmaschine M 2 arbeitet. Sie stoppt dann, wenn M 2 einen Stopzustand erreichen würde. B. Reichel, R. Stiebe: Theoretische Informatik für Lehrer 35
17 Beispiel für Nacheinanderausführung von TM Betrachten wir das Diagramm in folgender Abbildung. So erkennen wir, dass dort das schematische Flussbild einer Turingmaschine steht, welche dreimal nacheinander zur Zahl auf dem Band 1 addiert, also es sich um die Turingmaschine Band := Band + 3 handelt. B. Reichel, R. Stiebe: Theoretische Informatik für Lehrer 36
18 Beispiel für Verzweigung von TM Folgende Abbildung stellt eine sich verzweigende TM dar. Sie soll nach Simulation der Turingmaschine M die Turingmaschine M 1 simulieren, falls sie bei der Simulation von M im Zustand z e1 stoppt. Analog soll sie die Turingmaschine M 2 abarbeiten, falls sie bei der Simulation von M im Zustand z e2 stoppt. B. Reichel, R. Stiebe: Theoretische Informatik für Lehrer 37
19 Beispiel für Band (i) = 0? Es sei M = ({z 0, z 1, ja, nein}, Σ, Γ, δ, z 0,, {ja, nein}) mit 0 Σ sowie mit der Überführungsfunktion δ, gegeben durch δ(z 0, a) = (nein, a, N) für a 0, δ(z 0, 0) = (z 1, 0, R), δ(z 1, a) = (nein, a, L) für a, δ(z 1, ) = (ja,, L). Diese Turingmaschine testet, ob die Eingabe genau das Wort 0 ist. Falls ja, stoppt sie im Zustand ja, falls nein, stoppt sie im Zustand nein. Wir wollen diese Turingmaschine mit Band = 0? bezeichnen. Die k-band-tm, die das i-te Band auf 0 testet, nennen wir Band(i) = 0? B. Reichel, R. Stiebe: Theoretische Informatik für Lehrer 38
20 Beispiel für WHILE-Schleife Sei M eine beliebige Turingmaschine. start.. Band. (i) = 0?. M... nein ja. stop Dann bezeichnen wir die Turingmaschine, die durch das Diagramm gegeben ist, mit WHILE Band(i) 0 DO M. Die Arbeitsweise ist einfach zu erkennen. B. Reichel, R. Stiebe: Theoretische Informatik für Lehrer 39
21 LOOP-Programme: Syntaktische Komponenten LOOP-Programme bestehen aus folgenden Zeichen (syntaktischen Komponenten): Variablen: x 0 x 1 x 2... Konstanten: Operationssymbole: + Trennsymbole: ; := Schlüsselwörter: LOOP DO END B. Reichel, R. Stiebe: Theoretische Informatik für Lehrer 40
22 LOOP-Programme: Syntax Die Syntax von LOOP-Programmen wird wie folgt induktiv definiert. (i) Jede Wertzuweisung der Form x i := x j + c bzw. x i := x j c ist ein LOOP-Programm, wobei c eine Konstante ist. (ii) Sind P 1, P 2 LOOP-Programme, dann sind auch P 1 ; P 2 sowie LOOP x i DO P 1 END LOOP-Programme. B. Reichel, R. Stiebe: Theoretische Informatik für Lehrer 41
23 LOOP-Programme: Semantik, Teil i) (i) Jede Wertzuweisung der Form x i := x j +c wird wie üblich interpretiert: der neue Wert der Variablen x i berechnet sich als Summe des Wertes der Variablen x j und der Konstanten c, wobei der Wert in der Variablen x j erhalten bleibt. Die Wertzuweisung x i := x j c wird analog interpretiert, wobei sich aber die Werte nach der sogenannten modifizierten Differenz, die wie folgt definiert ist n 1 n 2 = { n 1 n 2 falls n 1 n 2, 0 sonst, berechnen. B. Reichel, R. Stiebe: Theoretische Informatik für Lehrer 42
24 LOOP-Programme: Semantik, Teil ii) ii) Ein LOOP-Programm der Form P 1 ; P 2 soll die Hintereinanderausführung der Programme P 1 und P 2 bedeuten, also zuerst wird das Programm P 1, dann das Programm P 2 ausgeführt. Ein LOOP-Programm der Form LOOP x i DO P 1 END bedeutet, dass das Programm P 1 sooft ausgeführt wird, wie der Wert der Variablen x i zu Beginn angibt. Änderungen des Wertes der Variablen x i haben also keinen Einfluss auf die Anzahl der Wiederholungen. B. Reichel, R. Stiebe: Theoretische Informatik für Lehrer 43
25 LOOP-berechenbare Funktionen Eine Funktion f : N k N, k N, heißt LOOP-berechenbar, falls es ein LOOP-Programm P gibt, das f in dem Sinne berechnet, dass P, gestartet mit n 1, n 2,..., n k in den Variablen x 1, x 2,..., x k und 0 in den restlichen Variablen, mit dem Wert f(n 1, n 2,..., n k ) in der Variablen x 0 stoppt. Schreibweise: f = f k P B. Reichel, R. Stiebe: Theoretische Informatik für Lehrer 44
26 Erstes Beispiel einer LOOP-berechenbaren Funktion Gegeben sei das LOOP-Programm x 0 := x 1 + 0; LOOP x 2 DO x 0 := x END Man erkennt leicht, dass das Programm mit dem Wert der Summe der Anfangsbelegungen der Variablen x 1 und x 2 in der Variablen x 0 stoppt. Es berechnet also die Addition +: N 2 N vermöge (x 1, x 2 ) +(x 1, x 2 ) = x 1 + x 2. Also ist die Addition LOOP-berechenbar. B. Reichel, R. Stiebe: Theoretische Informatik für Lehrer 45
27 Zweites Beispiel einer LOOP-berechenbaren Funktion Gegeben sei das LOOP-Programm LOOP x 2 DO LOOP x 1 DO x 0 := x END END Eine genaue Betrachtung des Programms zeigt, dass damit die Funktion : N 2 N vermöge (x 1, x 2 ) (x 1, x 2 ) = x 1 x 2, berechnet wird. Die Multiplikation ist damit also LOOP-berechenbar. Man beachte, dass die Anfangsbelegung der Variablen x 0 Definition 0 ist. Das wird hier gebraucht und verwendet. natürlich laut B. Reichel, R. Stiebe: Theoretische Informatik für Lehrer 46
28 Drittes Beispiel einer LOOP-berechenbaren Funktion Das Konstrukt IF x 1 = 0 THEN A ELSE B END wird durch das LOOP-Programm x 2 := 1; x 3 := 0; LOOP x 1 DO x 2 := 0; x 3 := 1 END; LOOP x 2 DO A END; LOOP x 3 DO B END simuliert. Dabei sind die Variablen x 2 und x 3 natürlich nicht in den Programmen A und B enthalten. B. Reichel, R. Stiebe: Theoretische Informatik für Lehrer 47
29 Aussagen über LOOP-berechenbarer Funktionen Jede von einem LOOP-Programm berechnete Funktion ist total. (Da die Anzahl der Abläufe einer LOOP-Schleife endlich ist, stoppt das Programm bei jeder Eingabe.) Es gibt (intuitiv) berechenbare Funktionen, die nicht LOOP-berechenbar sind. (z.b. jede berechenbare Funktion, die nicht total ist) Es gibt totale und (intuitiv) berechenbare Funktionen, die nicht LOOPberechenbar sind. B. Reichel, R. Stiebe: Theoretische Informatik für Lehrer 48
30 WHILE-Programme: Syntaktische Komponenten WHILE-Programme bestehen aus folgenden Zeichen (syntaktischen Komponenten): Variablen: x 0 x 1 x 2... Konstanten: Trennsymbole: ; := Operationssymbole: + Schlüsselwörter: LOOP WHILE DO END B. Reichel, R. Stiebe: Theoretische Informatik für Lehrer 49
31 WHILE-Programme: Syntax Die Syntax von WHILE-Programmen wird wie folgt induktiv definiert. (i) Jede Wertzuweisung der Form x i := x j + c bzw. x i := x j c ist ein WHILE-Programm, wobei c eine Konstante ist. (ii) Sind P 1, P 2 WHILE-Programme, dann sind auch P 1 ; P 2 und LOOP x i DO P 1 END und WHILE x i 0 DO P 1 END WHILE-Programme. B. Reichel, R. Stiebe: Theoretische Informatik für Lehrer 50
32 WHILE-Programme: Semantik, Teil i) Jede Wertzuweisung der Form x i := x j + c wird wie üblich interpretiert: der neue Wert der Variablen x i berechnet sich als Summe des Wertes der Variablen x j und der Konstanten c, wobei der Wert in der Variablen x j erhalten bleibt. Die Wertzuweisung x i := x j c wird analog interpretiert, wobei sich aber die Werte nach der sogenannten modifizierten Differenz, die wie folgt definiert ist { n 1 n 2 falls n 1 n 2, n 1 n 2 = 0 sonst, berechnen. B. Reichel, R. Stiebe: Theoretische Informatik für Lehrer 51
33 WHILE-Programme: Semantik, Teil ii) Ein WHILE-Programm der Form P 1 ; P 2 soll die Hintereinanderausführung der Programme P 1 und P 2 bedeuten, also zuerst wird das Programm P 1, dann das Programm P 2 ausgeführt. Ein WHILE-Programm der Form LOOP x i DO P 1 END bedeutet, dass das Programm P 1 sooft ausgeführt wird, wie der Wert der Variablen x i zu Beginn angibt. Änderungen des Wertes der Variablen x i haben also keinen Einfluss auf die Anzahl der Wiederholungen. Ein WHILE-Programm der Form WHILE x i 0 DO P 1 END bedeutet, dass das Programm P 1 solange ausgeführt wird, wie der Wert der Variablen x i ungleich Null ist. Es findet also vor jedem erneuten Durchlauf des Programms P 1 eine Abfrage der Variablen x i statt. B. Reichel, R. Stiebe: Theoretische Informatik für Lehrer 52
34 WHILE-berechenbare Funktionen Eine Funktion f : N k N, k N, heißt WHILE-berechenbar, falls es ein WHILE-Programm P gibt, das f in dem Sinne berechnet, dass P, gestartet mit n 1, n 2,..., n k in den Variablen x 1, x 2,..., x k und 0 in den restlichen Variablen, mit dem Wert f(n 1, n 2,..., n k ) in der Variablen x 0 stoppt. Ist f(n 1, n 2,..., n k ) dagegen nicht definiert, so stoppt P nicht. Schreibweise: f = f k P Folgerung: Jede LOOP-berechenbare Funktion ist WHILE-berechenbar. B. Reichel, R. Stiebe: Theoretische Informatik für Lehrer 53
35 1. Beispiel einer WHILE-berechenbaren Funktion Das WHILE-Programm x 3 := x 1 5; WHILE x 3 0 DO x 1 := x END; LOOP x 1 DO x 0 := x END; LOOP x 2 DO x 0 := x END berechnet die Funktion f : N 2 N vermöge f(x 1, x 2 ) = { x 1 + x 2 falls x 1 5, nicht definiert sonst. Folgerung: Es gibt WHILE-berechenbare Funktionen, die nicht LOOPberechenbar sind. B. Reichel, R. Stiebe: Theoretische Informatik für Lehrer 54
36 2. Beispiel einer WHILE-berechenbaren Funktion Das WHILE-Programm x 1 := x 1 + 1; WHILE x 1 0 DO x 0 := x 0 + 1; LOOP x 2 DO x 1 := x 1 1 END END; x 0 := x 0 1 berechnet die ganzzahlige Division div : N 2 N vermöge { x 1 x x 1 div x 2 = 2 falls x 2 > 0, nicht definiert sonst. B. Reichel, R. Stiebe: Theoretische Informatik für Lehrer 55
37 Äquivalenz von WHILE-Programmen und Turingmaschinen Satz: 1. Jede WHILE-berechenbare Funktion ist Turing-berechenbar. 2. Jede Turing-berechenbare Funktion ist WHILE-berechenbar. B. Reichel, R. Stiebe: Theoretische Informatik für Lehrer 56
38 Simulation: WHILE-Programm durch Turingmaschine Mehrband-Turingmaschinen können Wertzuweisungen ausführen (wobei ein Band einer Variablen entspricht), Konstanten addieren und subtrahieren, hintereinander ausgeführt werden, WHILE-Schleifen ausführen. Damit kann man ein WHILE-Programm (mit k Variablen) durch eine (k-band-)turingmaschine simulieren. B. Reichel, R. Stiebe: Theoretische Informatik für Lehrer 57
39 Simulation: Turingmaschine durch WHILE-Programm 1 Gegeben sei TM M = (Z, Σ, Γ, δ, z 1,, {z k }), wobei Z = {z 1, z 2,..., z k }, Γ = {a 1, a 2,..., a m }. Sei außerdem b eine Zahl mit b > m. Eine Turingmaschinen-Konfiguration a i1 a i2... a ip z l a j1 a j2... a jq wird durch drei Programmvariablen x, y, z mit den Werten x = (i 1 i 2... i p ) b, y = (j q j q 1... j 1 ) b, z = l repräsentiert; dabei bedeutet (i 1 i 2... i p ) b die Zahl i 1 i 2... i p in b-närer Darstellung, also x = p i µ b p µ, y = µ=1 q j µ b µ 1 µ=1 B. Reichel, R. Stiebe: Theoretische Informatik für Lehrer 58
40 Simulation: Turingmaschine durch WHILE-Programm 2 Stuktur des WHILE-Programmes mit Eingabe und Ausgabe auf y z := 1; WHILE z < k DO END a := y mod b; z := z; IF(z = 1 AND a = 1) THEN P 1,1 END; IF(z = 1 AND a = 2) THEN P 1,2 END;. IF(z = k 1 AND a = m) THEN P k 1,m END; Das Teilprogramm P i,j simuliert die Konfigurationsänderung für Zustand z i und Bandsymbol a j. B. Reichel, R. Stiebe: Theoretische Informatik für Lehrer 59
41 Simulation: Turingmaschine durch WHILE-Programm 3 Stuktur des Teilprogrammes P i,j für δ(z i, a j ) = (z i, a j, L) z := i ; y := y div b; y := b y + j ; y := b y + (x mod b); x := x div b Entsprechend kann man sich die anderen Fälle vorstellen. B. Reichel, R. Stiebe: Theoretische Informatik für Lehrer 60
42 Die Churchsche These Jede intuitiv berechenbare Funktion ist Turing-berechenbar. Die Churchsche These kann naturgemäß nicht bewiesen werden. Sie wird aber durch die Tatsache gestützt, dass zahlreiche weitere Modelle der Berechenbarkeit äquivalent zur Turing-Berechenbarkeit sind, z.b. Post- und Markov-Algorithmen, Registermaschinen, partiell-rekursive Funktionen. B. Reichel, R. Stiebe: Theoretische Informatik für Lehrer 61
Berechenbarkeit. Script, Kapitel 2
Berechenbarkeit Script, Kapitel 2 Intuitiver Berechenbarkeitsbegriff Turing-Berechenbarkeit WHILE-Berechenbarkeit Church sche These Entscheidungsprobleme Unentscheidbarkeit des Halteproblems für Turingmaschinen
LOOP-Programme: Syntaktische Komponenten
LOOP-Programme: Syntaktische Komponenten LOOP-Programme bestehen aus folgenden Zeichen (syntaktischen Komponenten): Variablen: x 0 x 1 x 2... Konstanten: 0 1 2... Operationssymbole: + Trennsymbole: ; :=
1 falls n ein Anfangsabschnitt der Dezimalbruchentwicklung von π ist, f(n) = 0 sonst
21 2 Berechenbarkeit Dieses Kapitel entspricht im Wesentlichen dem Kapitel 2 (Berechenbarkeitstheorie) in [9] Jeder, der programmieren kann, weiß, dass es so etwas wie einen intuitiven Berechenbarkeitsbegriff
Einführung in die Theoretische Informatik
Einführung in die Theoretische Informatik Johannes Köbler Institut für Informatik Humboldt-Universität zu Berlin WS 2011/12 Die Registermaschine (random access machine, RAM) 0 I 0 1 I 1 2 I 2 m I m Programm
1 Einführung. 2 Typ-0- und Typ-1-Sprachen. 3 Berechnungsmodelle. 4 Unentscheidbarkeit. 5 Unentscheidbare Probleme. 6 Komplexitätstheorie
1 Einführung 2 Typ-0- und Typ-1-Sprachen 3 Berechnungsmodelle 4 Unentscheidbarkeit 5 Unentscheidbare Probleme 6 Komplexitätstheorie 15 Ziele vgl. AFS: Berechnungsmodelle für Typ-0- und Typ-1-Sprachen (Nicht-)Abschlußeigenschaften
Syntax von LOOP-Programmen
LOOP-Berechenbarkeit Syntax von LOOP-Programmen Definition LOOP-Programme bestehen aus: Variablen: x 0, x 1, x 2, x 3,... Konstanten: 0, 1, 2, 3,... Trennsymbolen:; und := Operationen: + und Befehlen:
1.2 LOOP-, WHILE- und GOTO-Berechenbarkeit
Die Programmiersprache LOOP (i) Syntaktische Komponenten: Variable: x 0, x 1, x 2,... Konstanten: 0, 1, 2,... Trennsymbole: ; := Operationszeichen: + Schlüsselwörter: LOOP DO END (ii) LOOP-Programme: Wertzuweisungen:
2.4 Kontextsensitive und Typ 0-Sprachen
Definition 2.43 Eine Typ 1 Grammatik ist in Kuroda Normalform, falls alle Regeln eine der folgenden 4 Formen haben: Dabei: A, B, C, D V und a Σ. Satz 2.44 A a, A B, A BC, AB CD. Für jede Typ 1 Grammatik
11.1 Kontextsensitive und allgemeine Grammatiken
Theorie der Informatik 7. April 2014 11. Kontextsensitive und Typ-0-Sprachen Theorie der Informatik 11. Kontextsensitive und Typ-0-Sprachen 11.1 Kontextsensitive und allgemeine Grammatiken Malte Helmert
Theoretische Informatik SS 03 Übung 3
Theoretische Informatik SS 03 Übung 3 Aufgabe 1 a) Sind die folgenden Funktionen f : partiell oder total: f(x, y) = x + y f(x, y) = x y f(x, y) = x y f(x, y) = x DIV y? Hierbei ist x DIV y = x y der ganzzahlige
11. Woche: Turingmaschinen und Komplexität Rekursive Aufzählbarkeit, Entscheidbarkeit Laufzeit, Klassen DTIME und P
11 Woche: Turingmaschinen und Komplexität Rekursive Aufzählbarkeit, Entscheidbarkeit Laufzeit, Klassen DTIME und P 11 Woche: Turingmaschinen, Entscheidbarkeit, P 239/ 333 Einführung in die NP-Vollständigkeitstheorie
Turing-Maschinen. Definition 1. Eine deterministische Turing-Maschine (kurz DTM) ist ein 6- Dem endlichen Alphabet Σ von Eingabesymbolen.
Turing-Maschinen Nachdem wir endliche Automaten und (die mächtigeren) Kellerautomaten kennengelernt haben, werden wir nun ein letztes, noch mächtigeres Automatenmodell kennenlernen: Die Turing-Maschine
Theorie der Informatik
Theorie der Informatik 13. LOOP-, WHILE- und GOTO-Berechenbarkeit Malte Helmert Gabriele Röger Universität Basel 9. April 2014 Überblick: Vorlesung Vorlesungsteile I. Logik II. Automatentheorie und formale
Beispiele für Turingmaschinen. 1. Addition 1.1 Trennzeichen l öschen 1.2 Summanden kopieren
01 Beispiele für Turingmaschinen 1. Addition 1.1 Trennzeichen l öschen 1.2 Summanden kopieren 2. Subtraktion 2.1 rechts löschen 2.2 links löschen 2.3 in der Mitte löschen 2.4 am Rand löschen Eine Turingmaschine
Theoretische Informatik 1
heoretische Informatik 1 eil 2 Bernhard Nessler Institut für Grundlagen der Informationsverabeitung U Graz SS 2009 Übersicht 1 uring Maschinen uring-berechenbarkeit 2 Kostenmaße Komplexität 3 Mehrband-M
Wir suchen Antworten auf die folgenden Fragen: Was ist Berechenbarkeit? Wie kann man das intuitiv Berechenbare formal fassen?
Einige Fragen Ziel: Wir suchen Antworten auf die folgenden Fragen: Wie kann man das intuitiv Berechenbare formal fassen? Was ist ein Algorithmus? Welche Indizien hat man dafür, dass ein formaler Algorithmenbegriff
Formale Sprachen und Automaten
Turingmaschinen Formale Sprachen und Automaten Das Konzept der Turingmaschine wurde von dem Englischen Mathematiker Alan M. Turing (1912-1954) ersonnen. Turingmaschinen, Typ-0- und Typ-1-Grammatiken Der
Theoretische Informatik 1
heoretische Informatik 1 uringmaschinen David Kappel Institut für Grundlagen der Informationsverarbeitung echnische Universität Graz 11.03.2016 Übersicht uring Maschinen Algorithmusbegriff konkretisiert
Berechenbarkeits- und Komplexitätstheorie
Berechenbarkeits- und Komplexitätstheorie Verschiedene Berechenbarkeitsbegriffe, Entscheidbarkeit von Sprachen, Wachstumsordnungen und Komplexitätsklassen Inhaltsübersicht und Literatur Verschiedene Berechenbarkeitsbegriffe:
Einführung in Berechenbarkeit, Komplexität und formale Sprachen
Johannes Blömer Skript zur Vorlesung Einführung in Berechenbarkeit, Komplexität und formale Sprachen Universität Paderborn Wintersemester 2011/12 Inhaltsverzeichnis 1 Einleitung 2 1.1 Ziele der Vorlesung...................................
Mächtigkeit von WHILE-Programmen
Mächtigkeit von WHILE-Programmen Prof. Dr. Berthold Vöcking Lehrstuhl Informatik 1 Algorithmen und Komplexität RWTH Aachen 26. November 2009 Berthold Vöcking, Informatik 1 () Vorlesung Berechenbarkeit
GTI. Hannes Diener. 6. Juni - 13. Juni. ENC B-0123, [email protected]
GTI Hannes Diener ENC B-0123, [email protected] 6. Juni - 13. Juni 1 / 49 Die Turingmaschine war das erste (bzw. zweite) formale Modell der Berechenbarkeit. Sie wurden bereits 1936 (also lange
Rekursiv aufzählbare Sprachen
Kapitel 4 Rekursiv aufzählbare Sprachen 4.1 Grammatiken und die Chomsky-Hierarchie Durch Zulassung komplexer Ableitungsregeln können mit Grammatiken größere Klassen als die kontextfreien Sprachen beschrieben
Turing-Maschine. Berechenbarkeit und Komplexität Turing-Maschinen. Turing-Maschine. Beispiel
Berechenbarkeit und Komplexität Turing-Maschinen Wolfgang Schreiner [email protected] Research Institute for Symbolic Computation (RISC) Johannes Kepler University, Linz, Austria http://www.risc.jku.at
Deterministische Turing-Maschinen (DTM) F3 03/04 p.46/395
Deterministische Turing-Maschinen (DTM) F3 03/04 p.46/395 Turing-Machine Wir suchen ein Modell zur formalen Definition der Berechenbarkeit von Funktionen und deren Zeit- und Platzbedarf. Verschiedene Modelle
8. Turingmaschinen und kontextsensitive Sprachen
8. Turingmaschinen und kontextsensitive Sprachen Turingmaschinen (TM) von A. Turing vorgeschlagen, um den Begriff der Berechenbarkeit formal zu präzisieren. Intuitiv: statt des Stacks bei Kellerautomaten
Zusammenfassung Grundzüge der Informatik 4
Zusammenfassung Grundzüge der Informatik 4 Sommersemester 04 Thorsten Wink 21. September 2004 Version 1.2 Dieses Dokument wurde in L A TEX 2εgeschrieben. Stand: 21. September 2004 Inhaltsverzeichnis 1
3. Turingmaschinen FORMALISIERUNG VON ALGORITHMEN. Turingmaschinen Registermaschinen Rekursive Funktionen UNTERSCHEIDUNGSMERKMALE DER ANSÄTZE:
FORMALISIERUNG VON ALGORITHMEN Wegen der beobachteten Zusammenhänge zwischen Berechnungs-, Entscheidungs- und Aufzählungsverfahren genügt es Berechnungsverfahren zu formalisieren. Weiter genügt es Verfahren
Theoretische Informatik 1
Theoretische Informatik 1 Registermaschine David Kappel Institut für Grundlagen der Informationsverarbeitung TU Graz SS 2012 Übersicht Registermaschinen Algorithmusbegriff konkretisiert formale Beschreibung
Grundlagen der Theoretischen Informatik Musterlösungen zu ausgewählten Übungsaufgaben
Dieses Dokument soll mehr dazu dienen, Beispiele für die formal korrekt mathematische Bearbeitung von Aufgaben zu liefern, als konkrete Hinweise auf typische Klausuraufgaben zu liefern. Die hier gezeigten
Theoretische Grundlagen der Informatik
Theoretische Grundlagen der Informatik Turing-Maschine, Berechenbarkeit INSTITUT FÜR THEORETISCHE 0 KIT 07.11.2011 Universität des Dorothea Landes Baden-Württemberg Wagner - Theoretische und Grundlagen
(Prüfungs-)Aufgaben zur Berechenbarkeits- und Komplexitätstheorie
(Prüfungs-)Aufgaben zur Berechenbarkeits- und Komplexitätstheorie 1) Schreiben Sie ein LOOP-Programm, das die Funktion f: N \ {0} N, f (n) = n n berechnet. Sie dürfen in Ihrem Programm die Multiplikation
Einführung in die Informatik
Universität Innsbruck - Institut für Informatik Datenbanken und Informationssysteme Prof. Günther Specht, Eva Zangerle 24. November 28 Einführung in die Informatik Übung 7 Allgemeines Für die Abgabe der
Def.: Die Menge der LOOP-Programme ist induktiv wie folgt definiert:
3. LOOP-, WHILE- und GOTO-Berechenbarkeit 3.1 LOOP-Programme Komponenten: Variablen: x 0, x 1, x 2,, y, z, Konstanten: 0, 1, 2, Trennsymbole: ; := Operationszeichen: +, - Schlüsselwörter: LOOP, DO, END
Deterministischer endlicher Automat A ohne Ausgabe (deterministischer endlicher Akzeptor)
Deterministischer endlicher Automat A ohne Ausgabe (deterministischer endlicher Akzeptor) wobei A = (E, Z, f, z 0, F ) E Z f : Z E Z z 0 Z Eingabealphabet Zustandsmenge (Zustands )Überführungsfunktion
b) Eine nd. k-band-turingmaschine M zur Erkennung einer m-stelligen Sprache L (Σ ) m ist ein 8-Tupel
2. Turingmaschinen Zur Formalisierung von Algorithmen benutzen wir hier Turingmaschinen. Von den vielen Varianten dieses Konzeptes, die sich in der Literatur finden, greifen wir das Konzept der on-line
Sprachen und Automaten. Tino Hempel
Sprachen und Automaten 11 Tino Hempel Bisherige Automaten Automat mit Ausgabe/Mealy-Automat Akzeptor, Sprache eines Akzeptors Grenze: L = {a n b n } Kellerautomat erkennt L = {a n b n } Grenze:? T. Hempel
Ausgewählte unentscheidbare Sprachen
Proseminar Theoretische Informatik 15.12.15 Ausgewählte unentscheidbare Sprachen Marian Sigler, Jakob Köhler Wolfgang Mulzer 1 Entscheidbarkeit und Semi-Entscheidbarkeit Definition 1: L ist entscheidbar
4 Die Turing-Maschine
16 4 Die Turing-Maschine 4.1 Wörter und Gödelisierung Ein Alphabet ist eine endliche Menge verschiedener Objekte {a 1, a 2,..., a k }, die wir auch Buchstaben nennen. Dies können die uns bekannten Buchstaben
Formale Methoden 1. Gerhard Jäger 9. Januar Uni Bielefeld, WS 2007/2008 1/23
1/23 Formale Methoden 1 Gerhard Jäger [email protected] Uni Bielefeld, WS 2007/2008 9. Januar 2008 2/23 Automaten (informell) gedachte Maschine/abstraktes Modell einer Maschine verhält sich
Die Ackermannfunktion
Die Ackermannfunktion Slide 1 Die Ackermannfunktion Hans U. Simon (RUB) Email: [email protected] Homepage: http://www.ruhr-uni-bochum.de/lmi Die Ackermannfunktion Slide 2 Eine Frage zu Anfang Ist jede intuitiv
Theoretische Informatik. Grammatiken. Grammatiken. Grammatiken. Rainer Schrader. 9. Juli 2009
Theoretische Informatik Rainer Schrader Institut für Informatik 9. Juli 2009 1 / 41 2 / 41 Gliederung die Chomsky-Hierarchie Typ 0- Typ 3- Typ 1- Die Programmierung eines Rechners in einer höheren Programmiersprache
Theoretische Informatik Testvorbereitung Moritz Resl
Theoretische Informatik Testvorbereitung Moritz Resl Bestandteile einer Programmiersprache: a) Syntax (Form): durch kontextfreie Grammatik beschrieben b) Semantik (Bedeutung) 1.) Kontextfreie Sprachen
Algorithmen mit konstantem Platzbedarf: Die Klasse REG
Algorithmen mit konstantem Platzbedarf: Die Klasse REG Sommerakademie Rot an der Rot AG 1 Wieviel Platz brauchen Algorithmen wirklich? Daniel Alm Institut für Numerische Simulation Universität Bonn August
Primitiv rekursive und µ-rekursive Funktionen
Primitiv rekursive und µ-rekursive Funktionen Loop-, While- und Goto-Programme sind vereinfachte imperative Programme und stehen für imperative Programmiersprachen, bei denen Programme als Folgen von Befehlen
Theoretische Informatik 2
Theoretische Informatik 2 Johannes Köbler Institut für Informatik Humboldt-Universität zu Berlin WS 2009/10 Die Chomsky-Hierarchie Definition Sei G = (V, Σ, P, S) eine Grammatik. 1 G heißt vom Typ 3 oder
Einführung. Vorlesungen zur Komplexitätstheorie: Reduktion und Vollständigkeit (3) Vorlesungen zur Komplexitätstheorie. K-Vollständigkeit (1/5)
Einführung 3 Vorlesungen zur Komplexitätstheorie: Reduktion und Vollständigkeit (3) Univ.-Prof. Dr. Christoph Meinel Hasso-Plattner-Institut Universität Potsdam, Deutschland Hatten den Reduktionsbegriff
Rekursive Funktionen Basisfunktionen
Rekursive Funktionen Basisfunktionen die nullstellige Funktion Z, die den konstanten Wert 0 liefert, die Funktion S : N N, bei der jeder natürlichen Zahl ihr Nachfolger zugeordnet wird, die Funktion P
Berechenbarkeits- und Komplexitätstheorie
Berechenbarkeits- und Komplexitätstheorie Verschiedene Berechenbarkeitsbegriffe, Entscheidbarkeit von Sprachen, Wachstumsordnungen und Komplexitätsklassen Inhaltsübersicht und Literatur Verschiedene Berechenbarkeitsbegriffe:
Formale Sprachen. Script, Kapitel 4. Grammatiken
Formale Sprachen Grammatiken Script, Kapitel 4 erzeugen Sprachen eingeführt von Chomsky zur Beschreibung natürlicher Sprache bedeutend für die Syntaxdefinition und -analyse von Programmiersprachen Automaten
Theorie der Informatik (CS206) Kellerautomat, Postfix-Notation, Turing-Maschine, Busy Beaver
Theorie der Informatik (CS206) Kellerautomat, Postfix-Notation, Turing-Maschine, Busy Beaver 20. März 2013 Proff Malte Helmert und Christian Tschudin Departement Mathematik und Informatik, Universität
Mitschrift BFS WS 13/14
Mitschrift BFS WS 13/14 Stand: 4. Juni 2014 Dieses Skript zum Teil Primitive und µ-rekursion der Vorlesung Berechenbarkeit und Formale Sprachen im Wintersemester 2013/14 bei Prof. Wanka wurde von untenstehenden
Theoretische Informatik
Theoretische Informatik Lektion 10: Entscheidbarkeit Kurt-Ulrich Witt Wintersemester 2013/14 Kurt-Ulrich Witt Theoretische Informatik Lektion 10 1/15 Inhaltsverzeichnis Kurt-Ulrich Witt Theoretische Informatik
Formale Sprachen und Automaten
Formale Sprachen und Automaten Kapitel 5: Typ 1 und Typ 0 Vorlesung an der DHBW Karlsruhe Thomas Worsch Karlsruher Institut für Technologie, Fakultät für Informatik Wintersemester 2012 Kapitel 5 Typ 1
Theoretische Informatik SS 03 Übung 4
Fakten aus Übung 3 Theoretische Informatik SS 03 Übung 4 In Übung 3 wurden einigen Fakten bewiesen, die für diese Übung benötigt werden. Folgende Konstrukte können mit LOOP-Programmen simuliert werden:
Universität Karlsruhe Institut für Theoretische Informatik. Klausur: Informatik III
Name Vorname Matrikelnummer Universität Karlsruhe Institut für Theoretische Informatik o. Prof. Dr. P. Sanders 10.4.2007 Klausur: Informatik III Aufgabe 1. Multiple Choice 11 Punkte Aufgabe 2. Minimalautomaten
Theoretische Informatik II
Theoretische Informatik II Einheit 4.2 Rekursive Funktionen 1. Primitiv- und µ-rekursive Funktionen 2. Analyse und Programmierung 3. Äquivalenz zu Turingmaschinen Berechenbarkeit auf N ohne Maschinenmodelle
Formale Sprachen. Grammatiken und die Chomsky-Hierarchie. Rudolf FREUND, Marian KOGLER
Formale Sprachen Grammatiken und die Chomsky-Hierarchie Rudolf FREUND, Marian KOGLER Grammatiken Das fundamentale Modell zur Beschreibung von formalen Sprachen durch Erzeugungsmechanismen sind Grammatiken.
Einführung in die Theoretische Informatik
Einführung in die Theoretische Informatik Woche 10 Harald Zankl Institut für Informatik @ UIBK Wintersemester 2014/2015 Zusammenfassung Zusammenfassung der letzten LV Satz Sei G = (V, Σ, R, S) eine kontextfreie
JavaScript. Dies ist normales HTML. Hallo Welt! Dies ist JavaScript. Wieder normales HTML.
JavaScript JavaScript wird direkt in HTML-Dokumente eingebunden. Gib folgende Zeilen mit einem Texteditor (Notepad) ein: (Falls der Editor nicht gefunden wird, öffne im Browser eine Datei mit der Endung
1 Σ endliches Terminalalphabet, 2 V endliche Menge von Variablen (mit V Σ = ), 3 P (V (Σ ΣV )) {(S, ε)} endliche Menge von Regeln,
Theorie der Informatik 8. März 25 8. Reguläre Sprachen I Theorie der Informatik 8. Reguläre Sprachen I 8. Reguläre Grammatiken Malte Helmert Gabriele Röger 8.2 DFAs Universität Basel 8. März 25 8.3 NFAs
Prinzipielle Grenzen der Berechenbarkeit
Arno Schwarz Prinzipielle Grenzen der Berechenbarkeit Lange Zeit haben Philosophen und Mathematiker geglaubt, dass jedes mathematische Problem algorithmisch lösbar sei. So vertrat z.b. David Hilbert (1862-1943)
a n b n c n ist kontextsensitiv kontextfreie Sprachen (Typ 2) Abschnitt 3.3 kontextfreie Sprachen: Abschlusseigenschaften Chomsky NF und binäre Bäume
Kap 3: Grammatiken Chomsky-Hierarchie 32 Kap 3: Grammatiken Kontextfreie 33 a n b n c n ist kontextsensiti Beispiel 3111 modifizieren: Σ = {a, b, c G = (Σ, V, P, X ) V = {X, Y, Z P : X ε X axyz ZY YZ ay
Einführung in die Informatik I
Einführung in die Informatik I Berechenbarkeit und Komplexität Prof. Dr. Nikolaus Wulff Berechenbarkeit Im Rahmen der Turingmaschine fiel zum ersten Mal der Begriff Berechenbarkeit. Ein Funktion f heißt
Algorithmen und Programmierung
Algorithmen und Programmierung Kapitel 5 Formale Algorithmenmodelle A&P (WS 14/15): 05 Formale Algorithmenmodelle 1 Überblick Motivation Formale Algorithmenmodelle Registermaschine Abstrakte Maschinen
Definition (Reguläre Ausdrücke) Sei Σ ein Alphabet, dann gilt: (ii) ε ist ein regulärer Ausdruck über Σ.
Reguläre Ausdrücke Definition (Reguläre Ausdrücke) Sei Σ ein Alphabet, dann gilt: (i) ist ein regulärer Ausdruck über Σ. (ii) ε ist ein regulärer Ausdruck über Σ. (iii) Für jedes a Σ ist a ein regulärer
Berechenbarkeitsmodelle
Berechenbarkeit 2 Endliche Automaten erkennen nicht alle algorithmisch erkennbaren Sprachen. Kontextfreie Grammatiken erzeugen nicht alle algorithmisch erzeugbaren Sprachen. Welche Berechnungsmodelle erlauben
Berechenbarkeit und Komplexität
Berechenbarkeit und Komplexität Prof. Dr. Dietrich Kuske FG Theoretische Informatik, TU Ilmenau Wintersemester 2010/11 1 Organisatorisches zur Vorlesung Informationen, aktuelle Version der Folien und Übungsblätter
Ein deterministischer endlicher Automat (DFA) kann als 5-Touple dargestellt werden:
Sprachen und Automaten 1 Deterministische endliche Automaten (DFA) Ein deterministischer endlicher Automat (DFA) kann als 5-Touple dargestellt werden: M = (Z,3,*,qo,E) Z = Die Menge der Zustände 3 = Eingabealphabet
Grammatiken. Eine Grammatik G mit Alphabet Σ besteht aus: Variablen V. Startsymbol S V. Kurzschreibweise G = (V, Σ, P, S)
Grammatiken Eine Grammatik G mit Alphabet Σ besteht aus: Variablen V Startsymbol S V Produktionen P ( (V Σ) \ Σ ) (V Σ) Kurzschreibweise G = (V, Σ, P, S) Schreibweise für Produktion (α, β) P: α β 67 /
Einführung in die Theoretische Informatik
Einführung in die Theoretische Informatik Johannes Köbler Institut für Informatik Humboldt-Universität zu Berlin WS 2011/12 Deterministische Kellerautomaten Von besonderem Interesse sind kontextfreie Sprachen,
Random Access Machine (RAM) Berechenbarkeit und Komplexität Random Access Machines
Random Access Machine (RAM) Berechenbarkeit und Komplexität Random Access Machines Wolfgang Schreiner [email protected] Research Institute for Symbolic Computation (RISC) Johannes Kepler University,
Sprachen und Programmiersprachen
Sprachen und Programmiersprachen Natürliche Sprachen versus Programmiersprachen / Spezifikationssprachen Syntax legt die grammatikalische Korrektheit fest. Semantik legt die Bedeutung von syntaktisch korrekten
2. Algorithmen und Algorithmisierung Algorithmen und Algorithmisierung von Aufgaben
Algorithmen und Algorithmisierung von Aufgaben 2-1 Algorithmisierung: Formulierung (Entwicklung, Wahl) der Algorithmen + symbolische Darstellung von Algorithmen Formalismen für die symbolische Darstellung
Theoretische Informatik I
heoretische Informatik I Einheit 2 Endliche Automaten & Reguläre Sprachen. Deterministische endliche Automaten 2. Nichtdeterministische Automaten 3. Reguläre Ausdrücke 4. Grammatiken 5. Eigenschaften regulärer
Theoretische Informatik
Theoretische Informatik Vorlesungsscriptum Sommersemester 2003 Dr Bernd Reichel 1 und Dr Ralf Stiebe 2 Fakultät für Informatik Otto-von-Guericke-Universität Magdeburg 1 Tel: +49 391 67 12851, e-mail: reichel@iwscsuni-magdeburgde,
Theoretische Informatik SS 04 Übung 1
Theoretische Informatik SS 04 Übung 1 Aufgabe 1 Es gibt verschiedene Möglichkeiten, eine natürliche Zahl n zu codieren. In der unären Codierung hat man nur ein Alphabet mit einem Zeichen - sagen wir die
Informatik. Teil 1 Wintersemester 2011/2012. Prof. Dr.-Ing. habil. Peter Sobe Fachkultät Informatik / Mathematik
Informatik Teil 1 Wintersemester 2011/2012 Prof. Dr.-Ing. habil. Peter Sobe Fachkultät Informatik / Mathematik Dieser Foliensatz wurde z.t. von Herrn Prof. Grossmann übernommen Inhalt 1. Algorithmen -
Theoretische Informatik
Theoretische Informatik für die Studiengänge Ingenieur-Informatik berufsbegleitendes Studium Lehramt Informatik (Sekundar- und Berufsschule) http://theo.cs.uni-magdeburg.de/lehre04s/ Lehrbeauftragter:
Lineare Gleichungssysteme
Poelchau-Oberschule Berlin A. Mentzendorff September 2007 Lineare Gleichungssysteme Inhaltsverzeichnis 1 Grundlagen 2 2 Das Lösungsverfahren von Gauß 4 3 Kurzschreibweise und Zeilensummenkontrolle 6 4
Endliche Automaten. Im Hauptseminar Neuronale Netze LMU München, WS 2016/17
Endliche Automaten Im Hauptseminar Neuronale Netze LMU München, WS 2016/17 RS- Flipflop RS-Flipflop Ausgangszustand 0 1 0 1 0 1 Set Reset neuer Zustand 0 0 0 0 0 1 1 0 1 1 0 1 0 1 0 0 1 0 Was ist ein endlicher
Primitive Rekursion. Basisfunktionen: Konstante Funktion: const 3 3 (1,1, pr 1,3(g,h) (1,1)) Projektion: proj 3 (1,1, pr. Komposition: comp 3,2
Primitive Rekursion Basisfunktionen: Konstante Funktion: const Stelligkeit. Wert des Ergebnisses. Unabhängig von den Parametern. const (,, pr,(g,h) (,)) Stelligkeit. Projektion: proj Gibt die Komponente
Theoretische Informatik 1
Theoretische Informatik 1 Bernhard Nessler Institut für Grundlagen der Informationsverabeitung TU Graz SS 2007 Übersicht 1 Allgemein Teilgebiete der Informatik ohne Theoretische Grundlagen 2 Fragen an
Einführung in die Programmierung
Prof. Dr. Rudolf Berrendorf Fachbereich Informatik Fachhochschule Bonn-Rhein-Sieg URM - Programmierung Dipl.-Inf. Sigrid Weil Fachbereich Informatik Fachhochschule Bonn-Rhein-Sieg Einordnung Programmier-Paradigma:
1 Vom Problem zum Programm
1 Vom Problem zum Programm Ein Problem besteht darin, aus einer gegebenen Menge von Informationen eine weitere (bisher unbekannte) Information zu bestimmen. 1 Vom Problem zum Programm Ein Algorithmus ist
Modul Entscheidungsunterstützung in der Logistik. Einführung in die Programmierung mit C++ Übung 2
Fakultät Verkehrswissenschaften Friedrich List, Professur für Verkehrsbetriebslehre und Logistik Modul Entscheidungsunterstützung in der Logistik Einführung in die Programmierung mit C++ Übung 2 SS 2016
Automatentheorie. Endliche Automaten, Kellerautomaten und Turingmaschinen
Automatentheorie Endliche Automaten, Kellerautomaten und Turingmaschinen Inhaltsübersicht und Literatur Der Begriff des Automaten Endliche Automaten mit Ausgabe Technische Realisierung von Automaten Erkennende
Informatik II. Registermaschinen. Registermaschinen. Registermaschinen. Rainer Schrader. 7. Dezember 2005
Informatik II Rainer Schrader Zentrum für Angewandte Informatik Köln 7. Dezember 25 / 82 2 / 82 Gliederung Aufbau und Eigenschaften universelle RAM s RAM-Berechenbarkeit Nichtentscheidbarkeit Reduzierbarkeit
Kapitel: Die Chomsky Hierarchie. Die Chomsky Hierarchie 1 / 14
Kapitel: Die Chomsky Hierarchie Die Chomsky Hierarchie 1 / 14 Allgemeine Grammatiken Definition Eine Grammatik G = (Σ, V, S, P) besteht aus: einem endlichen Alphabet Σ, einer endlichen Menge V von Variablen
Kapitel 1. Grundlagen Mengen
Kapitel 1. Grundlagen 1.1. Mengen Georg Cantor 1895 Eine Menge ist die Zusammenfassung bestimmter, wohlunterschiedener Objekte unserer Anschauung oder unseres Denkens, wobei von jedem dieser Objekte eindeutig
Lösungen zur 3. Projektaufgabe TheGI1
Marco Kunze ([email protected]) WS 2001/2002 Sebastian Nowozin ([email protected]) 21. 1. 2002 Lösungen zur 3. Projektaufgabe TheGI1 Definition: Turing-Aufzähler Ein Turing-Aufzähler einer
Kapitel 1. Grundlagen
Kapitel 1. Grundlagen 1.1. Mengen Georg Cantor 1895 Eine Menge ist die Zusammenfassung bestimmter, wohlunterschiedener Objekte unserer Anschauung oder unseres Denkens, wobei von jedem dieser Objekte eindeutig
Primitiv rekursive und µ-rekursive Funktionen
Primitiv rekursive und µ-rekursive Funktionen Slide 1 Primitiv rekursive und µ-rekursive Funktionen Hans U. Simon (RUB) Email: [email protected] Homepage: http://www.ruhr-uni-bochum.de/lmi Primitiv rekursive
Wie viel Mathematik kann ein Computer?
Wie viel Mathematik kann ein Computer? Die Grenzen der Berechenbarkeit Dr. Daniel Borchmann 2015-02-05 Wie viel Mathematik kann ein Computer? 2015-02-05 1 / 1 Mathematik und Computer Computer sind schon
2. Berechnungsmächtigkeit von Zellularautomaten. Ziele Simulation von Schaltwerken Simulation von Turingmaschinen
2. Berechnungsmächtigkeit von Zellularautomaten Ziele Simulation von Schaltwerken Simulation von Turingmaschinen Beispiel WIREWORLD Elektronen laufen über Drähte von einem Gatter zum nächsten 2.3 Satz
Theoretische Grundlagen der Informatik
Theoretische Grundlagen der Informatik Rolf Socher ISBN 3-446-22987-6 Leseprobe Weitere Informationen oder Bestellungen unter http://www.hanser.de/3-446-22987-6 sowie im Buchhandel Einführung.. 13 2 Endliche
