Theoretische Informatik 2

Größe: px
Ab Seite anzeigen:

Download "Theoretische Informatik 2"

Transkript

1 Theoretische Informatik 2 Jürgen Koslowski Institut für Theoretische Informatik Technische Universität Braunschweig SS koslowj/theo2 Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

2 Übersicht: Überblick I 4 Hintergrund und Motivation Ziele der Vorlesungen Theoretische Informatik 2 Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

3 Übersicht: Turingmaschinen I 5 Turingmaschinen Vorüberlegung Turingmaschinen formal Darstellung von Turingmaschinen Entscheidbare Sprachen/Probleme Die Chomsky-Hierarchie formaler Sprachen Abschlußeigenschaften (semi-)entscheidbarer Sprachen Turing-berechenbare partielle Funktionen Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

4 Übersicht: Die Church-Turing These I 6 Church-Turing-These Alternativen zu Turingmaschinen Registermaschinen (RAM) Befehlssatz einer RAM Simulation einer dtm durch eine RAM RAM-Berechenbarkeit 6.2 Rekursive Funktionen Eigenschaften von PR Der unbeschränkte µ- Operator Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

5 Übersicht: Unentscheidbare Probleme I 7 Unentscheidbare Probleme 7.0 Problemstellung 7.1 Universelle Turingmaschine 7.2 Das Halteproblem 7.3 Weitere unentscheidbare Probleme Das Akzeptanzproblem Akzeptanz des leeren Worts Terminierung eines Algorithmus 7.4 Satz von Rice Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

6 Übersicht: Komplexitätstheorie I 8 Komplexität von Algorithmen 8.0 Übersicht Wiederholung: Groß-O-Notation Beispiele effizienter Algorithmen (für Graphen) Weitere Vorüberlegungen 8.2 Die Komplexitätsklassen P und NP 8.3 Die Klasse FP von Berechnungsproblemen 8.4 FP- Reduzierbarkeit Sat P 8.5 Robustheit der Klassen P und NP 8.6 Einige Probleme aus NP 8.7 NP- Vollständigkeit und Cooke scher Satz 8.8 Weitere NP- vollständige Probleme 8.9 Die Klasse conp 8.10 Komplexität von Optimierungsproblemen 8.11 Approximation von Optimierungsproblemen Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

7 Übersicht: Komplexitätstheorie II 8.12 Raumkomplexität Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

8 Hintergrund und Motivation Ziele der Vorlesungen Theoretische Informatik 2 Kapitel 4 Überblick Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

9 Hintergrund und Motivation Ziele der Vorlesungen Theoretische Informatik 2 In Fortsetzung der VL Theoretische Informatik 1 führen wir zunächst Turingmaschinen als neues Maschinenmodell ein; ihre Fähigkeiten gehen über die der Kellerautomaten hinaus (obwohl sie historisch älter sind). Sie werden sich als das mächtigste (klassische) Maschinenmodell erweisen, ebenso mächtig wie alle heute gebräuchlichen Computer. (Um weitergehende Fähigkeiten zu realisieren, braucht man einen Quantencomputer.) Die Klasse der von TM n akzeptierten semi-entscheidbaren Sprachen hat die kanonische Unterklasse der entscheidbaren Sprachen; diese werden von TM n akzeptiert, die bei jeder Eingabe halten. Das wirft die Frage nach der Entscheidbarkeit bzw. Nichtentscheidbarkeit formaler Sprachen auf. Hier tritt schon das Verfahren der Reduktion von Problemen bzw. Sprachen auf, das auch in der Komplexitätstheorie gebraucht wird. TM n lassen sich auch zur Lösung von Berechnungsproblemen (kurz B-Problemen) verwenden. Das liefert eine Theorie der Turingberechenbaren (partiellen) Funktionen der Form N n f N, n N. Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

10 Hintergrund und Motivation Ziele der Vorlesungen Theoretische Informatik 2 Alternativ kann man ausgehend von einfachen Grundfunktionen N n N mittels simpler Konstruktionsverfahren neue partielle Funktionen N n N generieren. Das liefert erst die Klasse der primitiv rekursiven Funktionen, und anschließend die Klasse der µ- rekursiven partiellen Funktionen. Letztere stimmt mit der obigen Klasse der Turing-brechenbaren partiellen Funktionen überein. In der Komplexitätstheorie geht es darum, wie effizient E-Probleme gelöst werden können. Entscheidendes Kriterium ist, ob mit Hilfe von dtm n bzw. ntm n Laufzeiten realisiert werden können, die polynomial in der Größe der Eingabe sind. Das liefert die Komplexitätsklassen P und NP. B-Probleme, deren zugrundeliegendes E-Problem nicht effizient lösbar ist, sind selbst nicht effizient lösbar. In solchen Fällen kann man nur versuchen, möglichst gute Lösungen zu approximieren. Das führt zum Begriff des Optimierungsproblems. Diese lassen sich nach Approximationsgüte klassifizieren. Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

11 Turingmaschinen Kapitel 5 Turingmaschinen Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

12 Vorüberlegung Turingmaschinen Vorüberlegung Idee: der Speicher eines Kellerautomaten, der nur eingeschränkt zugängliche Keller, wird durch ein frei zugängliches, beidseitig potentiell unendliches Turingband aus sog. Feldern ersetzt. Die darin enthaltenen einzelnen Symbole aus einem Bandalphabet werden von einem Schreib- Lesekopf gescannt und ggf. überschrieben; dieser kann sich dann auf ein benachbartes Feld bewegen: Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

13 Turingmaschinen Vorüberlegung Der Schreib-Lesekopf kann verschiedene Zustände einnehmen; dabei werden wie gewöhnlich Anfangs- und Endzustände unterschieden. In jedem Schritt darf der Schreib-Lesekopf den Zustand ändern sowie ein Symbol schreiben und/oder (je nach Vereinbarung) sich um maximal ein Feld zur Seite bewegen. Zu jedem Zeitpunkt darf das Band nur endlich viele relevante Symbole enthalten; alle übrigen Felder müssen leer sein. Um dies anzuzeigen, wird ein spezielles Bandsymbol # eingeführt. Beim Berechnungsstart soll die Eingabe w Σ zusammenhängend auf dem Band stehen! Dies ist ein konzeptioneller Unterschied zu Kellerautomaten und erst recht zu endlichen Automaten, bei denen die Eingabe immer extern vorlag und in nicht näher spezifizierter Weise von links nach rechts gelesen wurde (Stichwort: Online Algorithmus ). Bei Wikipedia findet man folgende Visualisierungen von Turingmaschinen. In der ZEIT findet sich auch eine nette Beschreibung. Eine Suchanfrage nach Turing Maschine und LEGO liefert ebenfalls interessante Ergebnisse. Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

14 Turingmaschinen formal Turingmaschinen Vorüberlegung Wir werden verschiedene Varianten von Turingmaschinen kennenlernen, die sich letztendlich alle gegenseitig simulieren können. Zunächst beginnen wir mit zwei Basismodellen, die sich hinsichtlich ihrer Geschwindigkeit unterscheiden: in der langsamen Variante kann der Kopf pro Schritt nur entweder schreiben oder sich bewegen, während in der schnellen Variante beides in einem Schritt erfolgen kann. Ansonsten sind beide Varianten äquivalent. Weiterhin kann man die Form des Bandes ändern (einseitig unendlich statt beidseitig unendlich), ein mehrspuriges Band verwenden, oder gar die Anzahl der Bänder und Köpfe simultan vergrößern. Insbesondere TMs mit mehreren Bändern und Köpfen erlauben eine recht einfachere Umsetzung konkreter Algorithmen. Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

15 Turingmaschinen Vorüberlegung Definition (langsame/schnelle TM) Eine Turing-Maschine (TM) M = Q, B, Σ, δ, q 0, q F über dem Alphabet Σ besteht aus einer Menge Q von Zuständen (des SL-Kopfes) mit ausgezeichneten Anfangs- und Endzuständen q 0, q F Q ; einem endlichen Bandalphabet B Σ + {#} mit Blankzeichen # ; einer endlichen Relation { Q B δ (B + {L, R}) für eine langsame TM Q B {N, R, L} für eine schnelle TM M heißt deterministisch (dtm), falls δ eine partielle Funktion ist. In älteren Skripten tragen solche TMs den Zusatz mit erweitertem Bandalphabet, da man ursprünglich die Bedingung B = Σ + {#} verlangt hatte. Technisch mag das ausreichen, in der Praxis ist es aber ein sehr ungeschickte Forderung, auf der wir hier nicht bestehen. Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

16 Turingmaschinen Vorüberlegung Interpretation von δ Abhängig vom aktuellen Zustand und vom aktuellen Bandsymbol kann sich der Zustand ändern, und im langsamen Fall Q B δ Q (B + {L, R}) kann entweder das Bandsymbol überschrieben, oder der Kopf eine Position zur Seite bewegt werden; im schnellen Fall Q B δ Q B {N, L, R} können das Überschreiben und die Bewegung im selben Schritt stattfinden; N ermöglicht das Verharren des Kopfes auf demselben Feld. Offenbar kann man jeden Schritt einer schnellen Maschine mit höchstens zwei Schritten einer langsamen Maschine simulieren. Umgekehrt ist die Simulation noch einfacher (vergl. HA). Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

17 Bemerkungen Turingmaschinen Vorüberlegung Unsere TMs sind á priori nichtdeterministisch, haben aber nur je einen Anfangs- und Endzustand. Der Übergang von TMs mit einer Menge I Q von Anfangszuständen zu solchen mit einem Anfangsstand q 0 ist simpel, erzeugt aber Nichtdeterminismus. Da wir später die Äquivalenz deterministischer und nichtdeterministischer TMs zeigen, können wir uns gleich auf einzelne Anfangszustände beschränken. Eine Menge an Endzuständen böte auch keinen echten Vorteil. Neben Σ muß das Bandalphabet nur # enthalten. Weitere Hilfssymbole, wie z.b. Randbegrenzer, Trennsymbole oder spezielle Löschsymbole sind optional, aber nützlich. Ohne solche auszukommen (älteres Skript) erfordert einemtaschenspielertrick (HA), daher erlauben wir hier solche Symbole ohne Einschränkung. Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

18 Turingmaschinen Vergleich mit Kellerautomaten Vorüberlegung Bei EAs und KAs sorgt die endliche Zahl der Übergänge dafür, dass nur endlich viele Symbole des Alphabets eine Rolle spielen; für klassische TMs ist Σ als Teilmenge von B automatisch endlich. Um klassische 1-Band TMs konzeptionell kompatibel mit KAs zu machen, benötigen sie einen Präprozessor mit einem neuen Anfangszustand q r und Übergängen q r, # q r, a, R, a Σ, sowie a ε q r, # q 0, #, L (im schnellen Fall). Determinismus bleibt nur dann erhalten, wenn der spontane Übergang von q r nach q 0 erst nach Abarbeitung der Eingabe erfolgen kann; und das erfordert den Supply-driven Modus! So kommt die gesamte Eingabe von links nach rechts auf das Band, bevor in q 0 die eigentliche Berechung aus spontanen Übergängen am rechten Rand beginnt. Die Endlichkeit von B und Σ wäre nun unerheblich, solange nur die Anzahl der Übergänge endlich ist. Die Forderung Σ B {#} könnte evtl. auch entfallen. Dies wird hier aber nicht weiterverfolgt. Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

19 Konfigurationen Turingmaschinen Vorüberlegung Eine TM-Konfiguration soll den aktuellen Zustand, den nicht- trivialen Bandinhalt und die Position des Kopfes bestimmen. Die Konvention, Eingaben zunächst zu internalisieren, erübrigt die Buchführung über den noch zu bearbeitenden Teil der Eingabe. Definition (vorläufig) Eine Konfiguration einer TM versteht man ein Paar q, ω Q B +, wobei genau ein Symbol des nichttrivialen Bandinhalts ω durch Unterstreichung markiert ist, was die Kopfposition festlegt. ω soll den Bereich des Bandes minimal überdecken, der die Kopfposition und alle von # verschiedenen Symbole umfaßt, darf also keine führenden oder abschließenden Blankzeichen # haben, sofern es sich nicht um den Inhalt der Kopfposition handelt. Genauer: ω ((B {#}) B + {ε}) B (B (B {#}) + {ε})) Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

20 Turingmaschinen Vorüberlegung Definition (Fortsetzung) Konfigurationen der Form q 0, s 0... s n 2 s n 1 mit n > 0 bzw. q 0, # heißen Initialkonfigurationen. Ist für q, ω l sω r die Menge q, s δ leer, sprechen wir von einer Haltekonfiguration. Im Fall von q, s δ können sich bei einer Folgekonfiguration ( ) Zustand, Inhalt des aktuellen Feldes und neue Kopfposition gemäß den Elementen von q, s δ ändern. Unter einer Berechnung mit Eingabe w Σ versteht man eine endliche oder unendliche Konfigurationenfolge K i K i+1, wobei K 0 eine Initialkonfiguration mit Eingabe w, und im endlichen Fall die letzte Konfiguration eine Haltekonfiguration ist. Eine Berechnung akzeptiert ihre Eingabe genau dann, wenn sie in einer Haltekonfiguration mit Zustand q F endet. Die spezielle Form der Initialkonfiguration resultiert aus einem Linksschritt nach Übertragung der Eingabe auf des Band von links nach rechts. Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

21 Turingmaschinen Darstellung von Turingmaschinen Vorüberlegung Wir entwickeln die graphische Darstellung von Kellerautomaten fort. Falls b B so schreiben wir q b ϕ p anstelle von q, b, p, ϕ δ wobei ϕ B + {L, R} oder ϕ B {N, L, R} gilt. Der (äußere) Anfangsund Endzustand wird markiert wie zuvor. Die Einschränkungen bzgl. der Komponierbarkeit solcher Übergänge bei Kellerautomaten gilt sinngemäß auch für Turingmaschinen. Satz Jede Sprache, die von einer langsamen TM akzeptiert wird, wird auch von einer schnellen TM akzeptiert, und umgekehrt. Beweis. H.A. Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

22 Turingmaschinen Vorüberlegung Beispiel ( L = { a n b n c n : n N } mittels schneller TM) Setze B = {a, b, c, B, #}, wobei B dazu dient anzuzeigen, dass b bearbeitet wurde. Start mit q c am rechten Rand, auf # bei leerer Eingabe. Idee: Pro Durchlauf vom rechten zum linken Rand das erste c von rechts löschen, das erste b von rechts mit B überschreiben und das letzte a von rechts löschen; dann erfolgt ein entsprechender Durchlauf vom linken zum rechten Rand. Akzeptanz, wenn B n übrigbleibt. Beachte die Symmetrie! a a, L, B B, L, b b, L q b B, L q b B B, L, c c, L q a1 # #, R c #, L q c1 B B, L a #, R # #, N q F # #, N c #, L B B, R q a2 a #, R # #, L q c2 a a, R, B B, R q b b B, R q b b, R, B B, R, c c, R Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

23 Turingmaschinen Vorüberlegung Beispiel ( L = { a n b n c n : n N } mittels langsamer TM) Die obige Maschine kann mechanisch(!) durch eine langsame Maschine simuliert werden (vergl. HA), was an 6 Stellen je einen weiteren Zustand erfordert (farbig markiert): a, B, b L q b B, L q b B, c L q a1 # R c #, L q c1 B L a #, R # # q F # # c #, L B R q a2 a #, R # L q c2 a, B R q b q b B, R b, B, c R In den blau markierten Fällen läßt sich jeweils der Hilfszustand mit dem Zielzustand verschmelzen, in den rot markierten Fällen ist das nicht möglich. Das führt zu umseitiger TM mit zwei zusätzlichen Zuständen: Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

24 Turingmaschinen Vorüberlegung Beispiel ( L = { a n b n c n : n N } mittels langsamer TM, Fortsetzung) a, B, b L #, B, c L a # q a0 q a1 # R q b B q b c # q c0 B L # R # # q F # # # L B R q a2 a # q c1 c # q b b B q # L q c2 #, a, B R b, B, c R Eine solche langsame TM direkt zu entwerfen, wird i.a. schwieriger sein, als den Umweg über die schnelle TM zu gehen. Noch aufwändiger wird die Konstruktion, wenn das Bandalphabet auf Σ + {#} beschränkt ist. In diesem Fall wäre auf das Löschsymbol B zu verzichten (siehe HA). Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

25 Turingmaschinen Vorüberlegung Definition Sprachen, die von einer TM akzeptiert werden, heißen semi-entscheidbar Andere Varianten von TMs sind gleich mächtig zu den bisherigen TMs: Definition Eine Mehr-Spur Turingmaschine mit Bandalphabet B Σ + {#} entspricht einer 1-Band TM mit Bandalphabet Form B := B n. Als Blanksymbol dieser 1-Band Maschine dient das n-tupel #,..., #. Zur Interpretation von Wörtern in Σ als Eingaben für die Mehr-Spur Maschine dient die Einbettung B h B n, die alle Komponenten mit positivem Index auf # setzt; d.h., Eingaben aus Σ stehen auf Spur 0. Der Kopf ließt/schreibt immer in allen Spuren gleichzeitig, und die Bewegung erfolgt auch in allen Spuren synchron in derselben Richtung. Satz Von Mehr-Spur TMs akzeptierte Sprachen sind semi-entscheidbar. Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

26 Turingmaschinen Vorüberlegung Beweis. Das Alphabet Σ := Σ {#} n 1 für die 1-Band Interpretation der Maschine ist natürlich zu Σ isomorph (verwende h ). Die Einschränkung auf Σ- Eingaben in Spur 0 läßt sich durch einen Präprozessor realisieren. Definition Für eine n-band TM M = Q, B, n, Σ, δ, q 0, q F hat δ die Form Q B n δ Q (B+{L, R}) n bzw. Q B n δ Q (B {L, R, N}) n Der Konfigurationsbegriff ist entsprechend zu erweitern. Berechnungen starten mit der Eingabe auf Band 0. Die graphische Darstellung verwendet Label der Form β A 0 ; A 1 ;... ; A n 1 mit β B n und n Aktionen A i. Wesentlich ist, dass die n Köpfe unabhängig auf den n Bändern agieren können. Hier zeigt sich der Nutzen von N bei schnellen Maschinen! Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

27 Turingmaschinen Vorüberlegung Satz Von n-band TMs akzeptierte Sprachen sind semi-entscheidbar. Beweis (Idee) Simulation durch 2n- Spur TM, bei deren geraden Spuren den Bändern entsprechen, und auf deren ungeraden Spuren über die jeweiligen Kopfpositionen buchgeführt wird, durch Markierungen in der relevanten Spalte. Weiterhin ist es möglich, das (potentiell beideitig unendliche) Turingband durch einen 2- oder höherdimensionalen Speicher zu ersetzen, der ebenfalls in Zellen aufgeteilt ist. Entsprechend wäre dann auch die Beweglichkeit des Kopfes zu erhöhen, im 2-dimensionalen Fall nicht nur nach links bzw. rechts, sondern auch nach unten bzw. oben. Der Beweis, dass auch diese Verallgemeinerung die Leistungsfähigkeit des Maschinenmodells nicht vergrößert, ist den Lesern überlassen. Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

28 Turingmaschinen Vorüberlegung Beispiel Die Sprache L = { w {0, 1} : w 0 = w 2 1 } ist semi-entscheidbar: Idee: Wir verwenden eine 3-Band dtm, bei der die Nullen und Einsen der Eingabe auf B 0 zunächst auf die Bänder B 1 bzw. B 2 verschoben werden. Dort finden alle weiteren Berechnungen statt. Wegen (n 1) 2 = n 2 2n + 1 = n 2 2(n 1) 1 können wir dann ggf. in mehreren Durchläufen auf diesen Bändern zunächst je eine Null und eine Eins, und dann für jede verbliebene Eins weitere zwei Nullen löschen. Dabei werden die Einsen auf B 2 in beiden Richtungen, die Nullen auf B 1 aber nur in einer Richtung durchlaufen. Gelingt die Löschung aller Symbole, wird die Eingabe akzeptiert. Bei der umseitigen Realisierung sind Aktionen, die weder Kopfposition noch Bandinhalt verändern, durch abgekürzt. Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

29 Turingmaschinen Vorüberlegung Beispiel (Fortsetzung) start q 0 0, #, # #, L ; 0, L ; #, N 1, #, # #, L ; #, N ; 1, L #, #, #, #, R ; #, R q 2 #, 0, 1, #, R ; #, R q 1 #, 0, #, #, R ; #, R q 6 #, 0, 1, #, R ; 1, R #, 0, 1, #, R ; 1, N #, #, #,, #, #, #,, q F #, #, #,, #, #, #,, #, 0, 1, #, R ; 1, N #, 0, 1, #, R ; 1, L q 3 #, 0, #, #, R ; #, L q 4 #, 0, 1, #, R ; #, L q 5 In Zukunft werden wir nicht alle TMs so detailliert beschreiben können, sondern uns meist auf informelle Spezifikationen beschränken. Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

30 Turingmaschinen Vorüberlegung Satz Jede semi-entscheidbare Sprache wird von einer dtm akzeptiert. Beweis Betrachte eine 1-Band TM M = Q, B, Σ, δ, q 0, q F mit L(M) = L. Für jedes Paar q, b Q B bezeichne ρ q, b die Anzahl der verfügbaren Übergänge; diese werden von 0 bis ρ q, b 1 durchnummeriert. Setze r := max{ ρ q, b : q, b Q B } und Z r := { n N : n < r } Falls r > 1 ist M nicht deterministisch und wir konstruieren eine deterministische 4-Band Maschine M mit L(M ) = L : B 0 enthält die Eingabe w Σ ; auf B 1 werden systematisch die Zahlen k N erzeugt (unär); auf B 2 werden systematisch die k -Tupel ϕ (Z r ) k erzeugt; Band B 3 dient zur Simulation des durch ϕ spezifizierten Anfangsstücks einer M- Berechung der Länge k mit Eingabe w. Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

31 Turingmaschinen Vorüberlegung Beweis (Fortsetzung) Genauer: die Initialkonfiguration mit Eingabe w generiert einen Graphen von Folgekonfigurationen, bei denen jeder Knoten maximal r Nachfolger hat. Die k - Tupel ϕ spezifizieren darin potentielle Wege der Länge k : sofern Schritt i von q,... b... Q B ausgeht, wird Übergang Nummer ϕ i mod ρ q, b der verfügbaren Übergänge ausgeführt, sofern ρ(q, b) 0 ; sonst ist eine Haltekonfiguration erreicht. Per Zustand wird darüber buchgeführt, ob ein Weg eine akzeptierenden Haltekonfiguration erreicht, dann wird w von M akzeptiert; andernfalls wird ϕ auf B 2 und ggf. k auf B 1 aktualisiert und fortgefahren; alle potentiellen Wege der Länge k in nicht akzeptierenden Haltekonfigurationen enden, dann hält M ohne zu akzeptieren; andernfalls wird k auf B 1 erhöht und fortgefahren. Beachte: Falls M immer hält, hat auch M diese Eigenschaft. Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

32 Turingmaschinen Entscheidbare Sprachen/Probleme Entscheidbare Sprachen/Probleme Die Terminologie semi-entscheidbar deutet die Existenz entscheidbarer Sprachen an. Dabei soll das Wortproblem entschieden werden, ob die Eingabe w Σ zur Sprache L Σ gehört, oder nicht. Definition Eine Sprache heißt entscheidbar, wenn sie von einer TM akzeptiert wird, die immer hält. (Man kann sich auf dtms beschränken.) Entscheidbare Sprachen sind semi-entscheidbar, aber die umgekehrte Inklusion gilt nicht (Beispiel später). Alternativ heißen semi-entscheidbare/entscheidbare Sprachen in der Literatur auch rekursiv aufzählbar / rekursiv. Hintergrund: rekursiv aufzählbare Sprachen können von einer dtm aufgelistet werden, wobei Wiederholungen erlaubt sind. Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

33 Turingmaschinen Entscheidbare Sprachen/Probleme Definition Die von einer dtm T aufgezählte Sprache G(T) besteht aus den Wörtern w Σ, die in T-Konfigurationen der Form q F, ω l bw#ω r ;... mit b B, ω l, ω r B vorkommen, wenn T von q 0, #;... ; # aus startet. Satz Jede Sprache der Form G(T) ist semi-entscheidbar. Beweis. M habe ein Band mehr als die n-band Maschine T, verwendet B n für die Eingabe und simuliert T auf den ersten n Bändern. Erreicht T eine Konfiguration mit Zustand q F, wird das Σ-Wort rechts des Kopfes auf B 0 mit der M-Eingabe auf B n verglichen. Satz Jede semi-entscheidbare Sprache ist von der Form G(T). Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

34 Turingmaschinen Entscheidbare Sprachen/Probleme Beweis. Ist L Σ semi-entscheidbar, wählen wir eine 1-Band dtm M mit L = L(M). Die Aufzählung von L leistet eine 4-Band dtm T : B 0 ist leer und dient zur Aufzählung von L (s.u.); auf B 1 werden aufsteigend die Zahlen k N erzeugt (unär); auf B 2 werden systematisch die Wörter der Länge k erzeugt; auf B 3 werden bis zu k Schritte der M-Berechnung des Worts w auf B 2 simuliert. Im Fall der Akzeptanz wird w nach B 0 kopiert, der Kopf links davon positioniert und der Zustand q F angenommen. Anschließend wird B 0 gelöscht. Danach wird das nächste Wort auf B 2 erzeugt. Nach Bearbeitung aller Wörter der Länge k wird k auf B 1 erhöht. Per Zustand kann darüber buchgeführt werden, ob alle Wörter der Länge k zu nicht akzeptierenden Haltekonfigurationen führen. Weil M deterministisch ist, muß L(M) dann endlich sein und T kann halten. Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

35 Turingmaschinen Entscheidbare Sprachen/Probleme Satz Eine Sprache L Σ ist genau dann entscheidbar, wenn L und ihr Komplement L := Σ L semi-entscheidbar sind. Beweis. Ist L entscheidbar, so existiert eine TM M mit L(M) = L, die immer hält, also ist L semi-entscheidbar. Mit obiger Konstruktion erhalten wir eine dtm M mit L = L(M ), die immer hält. Ein neuer Endzustand q und neue Übergänge q, b q, b bzw. q, b, N falls q q F und q, b δ =, liefern dann eine dtm M mit L( M ) = L. Umgekehrt lassen wir dtms M und M mit L(M) = L und L( M) = L mittels Interleaving dieselbe Eingabe bearbeiten. Die resultierende Maschine K hält genau dann, wenn eine der Teilmaschinen hält, und sie möge genau dann akzeptieren, wenn M hält und akzeptiert, oder wenn M hält und nicht akzeptiert. Dann hält K immer und erfüllt L(K) = L. In beiden Fällen ist die Verwendung von dtms wesentlich. Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

36 Turingmaschinen Die Chomsky-Hierarchie formaler Sprachen Die Chomsky-Hierarchie formaler Sprachen Nicht alle Sprachen sind semi-entscheidbar: im Vorgriff auf Kapitel 7 stellen wir fest, dass jede TM M über Σ = {0, 1} sich durch ein Binärwort c(m) codieren läßt. Damit ist die Menge der möglichen Turingmaschinen über {0, 1} abzählbar (vergl. Folien für Theoretische Informatik 1, Mathematischer Anhang), also auch die Menge der semi-entscheidbaren Sprachen über {0, 1}. (Die Einschränkung auf das Alphabet {0, 1} ist unerheblich.) Andererseits ist die Potenzmenge P(Σ ) überabzählbar. Die meisten Sprachen über {0, 1} sind also nicht semi-entscheidbar. Konkret gilt dies etwa für L code := { w {0, 1} : w = c(m) für eine TM M mit w / L(M) } L code besteht also aus den Binärcodes aller TMs, die ihr eigenes Codewort nicht akzeptieren. Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

37 Turingmaschinen Die Chomsky-Hierarchie formaler Sprachen Satz L code ist nicht semi-entscheidbar. Beweis. Wenn eine TM M mit L(M) = L code existiert, erfüllt w = c(m) die Bedingung w L(M) = L code gdw. w / L(M) = L code, Widerspruch. Die Trennung der entscheidbaren von den semi-entscheidbaren Sprachen erfolgt in Kapitel 7 mit Hilfe der Sprache L halt := { c(m)w : M TM, die bei Eingabe w hält } die semi-entscheidbar aber nicht entscheidbar ist (Halteproblem). Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

38 Turingmaschinen Die Chomsky-Hierarchie formaler Sprachen Satz Jede kontextfreie Sprache ist entscheidbar. Beweis. Ein Kellerautomat kann durch eine 2-Band Turingmaschine simuliert werden: der Kopf auf B 0 fährt zum linken Rand der Eingabe und B 1 dient zur Simulierung des Kellers, der sich von der aktuellen Kopfposition nach rechts erstrecken möge (vergl. HA). Damit ist jede kontextfreie Sprache semi-entscheidbar. Um die Entscheidbarkeit sicherzustellen, müssen wir mit einem Kellerautomaten beginnen, der immer hält. Dies ist sicher der Fall, wenn keine spontanen Übergänge auftreten. Und letzteres kann garantiert werden, wenn der Kellerautomat ausgehend von einer kontextfreien Grammatik in Greibach Normalform konstruiert wird (vergl. Skript zu TheoInf 1). Alternativ könnte man den CYK-Algorithmus per TM implementieren. Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

39 Turingmaschinen Die Chomsky-Hierarchie formaler Sprachen Die betrachteten Klassen formaler Sprachen über Σ bilden eine echte Hierarchie; wir geben Trenn-Beispiele zu den echt kleineren Klassen an: Alle Sprachen, L code ; die semi-entscheidbaren Sprachen, L halt, s.u.; die entscheidbaren Sprachen, { a n b n c n : n N } ; die kontextfreien Sprachen, { w sp(w) : w Σ } ; die deterministisch kontextfreien Sprachen; { a n b n : n N } ; die regulären Sprachen, {a 2n : n N } ; die endlichen Sprachen. Nicht betrachtet wurde die Klasse der kontext-sensitiven Sprachen, echt zwischen den Klassen der kontextfreien und der entscheidbaren Sprachen. Man spricht in diesem Zusammenhang auch von der Chomsky-Hierarchie. Sie wurde von Noam Chomsky Mitte der 1950 er Jahre entwickelt. Allerdings lag der Schwerpunkt damals auf linguistischen Fragestellungen. Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

40 Turingmaschinen Abschlußeigenschaften (semi-)entscheidbarer Sprachen Abschlußeigenschaften (semi-)entscheidbarer Sprachen Satz Die Klasse der (semi-)entscheidbaren Sprachen ist abgeschlossen unter endlicher Vereinigung und endlichem Durchschnitt; Konkatenation und Iteration (Kleene Stern); Spiegelung und Shuffle; Residuierung bzgl. endlicher Sprachen. homomorphen Bildern und Urbildern. Darüberhinaus sind die entscheidbaren Sprachen unter Komplementbildung abgeschlossen, die semi-entscheidbaren Sprachen aber nicht. Beweis Vorbemerkung: Bei s-e Sprachen erfordert die Simulation mehrerer dtms Interleaving. Diese Einschränkung entfällt bei der Verwendung von ntms. Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

41 Turingmaschinen Abschlußeigenschaften (semi-)entscheidbarer Sprachen Beweis (Fortsetzung). Zu endlicher Vereinigung, Shuffle und Residuierung vergl. HA. Durchschnitte handhabt man wie Vereinigungen, nur die Akzeptanzbedingung ist insoweit anzupassen, als beide Maschinen akzeptieren müssen. Für die Spiegelung verwendet man ein neues Band um die Eingabe zu spiegeln, bevor die Maschine für die ursprüngliche Sprache simuliert wird. Der Abschluß entscheidbarer Sprachen unter Komplementbildung folgt aus ihrer Charakterisierung mittels semi-entscheidbarer Sprachen. In Kapitel 7 zeigen wir, dass das Komplement von L halt nicht semi-entscheidbar ist. Im Falle der Konkatenation kann die Eingabe zufällig in zwei zusammenhängende Teile zerlegt werden, die dann als Eingabe für die zu simulierenden Maschinen dienen; dies liefert eine ntm. Für die Iteration ist dagegen eine Zerlegung in endlich viele Teile erforderlich, die alle als Eingaben für dieselbe Maschine zu testen sind: Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

42 Turingmaschinen Abschlußeigenschaften (semi-)entscheidbarer Sprachen Beweis (Fortsetzung). Im Fall L(M) = L habe M für L ein neues zweispuriges Eingabeband B n. Parallel zur nichtleeren Eingabe schreibt man ein mit 1 beginnendens zufälliges Binärwort derselben Länge auf die zweite Spur. Dessen Einsen markieren die Anfänge der Teilwörter der Zerlegung, die nun als Eingaben von M zu testen sind, ob sie zu L gehören. Zudem ist ε zu akzeptieren. h Jeder Homomorphismus Σ Γ ist durch seine Einschränkung auf Σ Σ bestimmt, d.h. durch endlich viele Werte h(a), a Σ. Wird K Γ von einer n -Band Maschine N akzeptiert, so möge die Maschine M für h 1 (K) ein neues Band B n für die Eingabe w haben. Dann wird h(w) auf B 0 geschrieben, und N mit dieser Eingabe simuliert. Falls L = L(M) Σ, ist die Eingabe w Γ in h-bilder der Buchstaben aus Σ zu zerlegen, entweder nichtdeterministisch, oder systematisch. Mit den resultierenen h- Urbildern von w ist dann M zu simulieren. Gehört mindestens ein solches Urbild zu L, folgt w h[l]. Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

43 Turingmaschinen Abschlußeigenschaften (semi-)entscheidbarer Sprachen Satz (Semi-)entscheidbare Sprachen sind nicht unter abzählbar unendlichen Vereinigungen abgeschlossen, entscheidbare Sprachen auch nicht unter abzählbar unendlichen Durchschnitten und unter Residuierung mit unendlichen Sprachen. Beweis. Die Sprachen L code bzw. L halt sind abzählbar unendliche Vereinigungen regulärer Singleton-Sprachen. Die Abgeschlossenheit der entscheidbaren Sprachen unter Komplementen impliziert wegen der de Morgan sche Regel die Aussage über Durchschnitte, und folglich über Residuierungen. Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

44 Turingmaschinen Turing-berechenbare partielle Funktionen Turing-berechenbare partielle Funktionen Wir wollen TMs nun auch zur Berechnung partieller Funktionen Σ einsetzen. Dazu muß Σ, Γ B {#} gelten. Die Spezifikation eines Finalzustands q F ist hier verzichtbar. Zu vereinbaren bleibt, welcher Teil des Bandinhalts nach dem Halt der Maschine als Funktionswert interpretiert werden soll. Wir wollen dafür das längste zusammenhängende Wort aus Γ verwenden, das links neben der finalen Kopfposition auf einem designierten Band auftritt. Das Feld des Kopfes gehört nicht dazu, aber nach einem Linksschritt könnte die Ausgabe ggf. als Eingabe für eine weitere Maschine verwendet werden, sofern das restliche Band leer ist. Partielle Funktionen der Form (Σ ) n f (Γ ) k mit n > 1 oder k > 1 erfordern je genau ein Trennzeichen zwischen den Komponenten der Einbzw. Ausgabe. Auch wenn das Blankzeichen dafür verwendet werden kann, wird dies nicht empfohlen. f Γ Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

45 Turingmaschinen Turing-berechenbare partielle Funktionen Beispiel ( f (n) = 2n : Wähle Σ = Γ = { } = B {#}.) Idee: 2-Band Maschine; Eingabe zweimal von B 0 auf B 1 kopieren., #, L ;, R, # #, R ;, R start q 0 #, # #, R ; #, N q F oder geschickter start r 0, # #, N ;, R #, # #, L ;, R r1 Beim aktuellen Bandinhalt #, # in Zustand q F bzw. r 0 hält die jeweilige Maschine mit dem Ergebnis auf B 1 und B 0 leer. Beispiel ( f (w) = w : Wähle Γ = { } disjunkt zu Σ.) Idee: Eingabe mit Symbolen überschreiben; rechten Rand suchen. a, L, R start q 0 # #, R q F mit a Σ Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

46 Turingmaschinen Turing-berechenbare partielle Funktionen Beispiel ( f (n, m) = n + m : Wähle Σ = Γ = { }, B = #}.) Idee: 2-Band Maschine; Eingabe auf B 1 kopieren, dabei das überspringen., # #, L ;, R, # #, L ;, R start q # #, L ; #, N q F Idee: 1-Band Maschine; mit erstem von rechts überschreiben, L, R start q 0 #, L R q #, N Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

47 Turingmaschinen Turing-berechenbare partielle Funktionen Beispiel ( f (n, m) = n m : Wähle Σ = Γ = { }, B = {, #}.) Wir begnügen uns nun mit einer High-Level-Beschreibung: Idee: 3-Band Maschine; das zweite Argument der Eingabe n # m auf B 2 verschieben; für jedes Symbol auf B 2 das verbliebene Argument n von B 0 nach B 1 kopieren, von links nach rechts. Bemerkung Die Erfahrungen mit Turing Maschinen und anderen Versuchen aus der ersten Hälfte des 20. Jahrhunderts, den Begriff der durch einen (terminierenden) Algorithmus berechenbaren Funktion formal zu fassen, führten zu der Vermutung, dass jede solche (totale) Funktion Turing-berechenbar sein muß. Diese nicht beweisbare Vermutung ist bekannt als Church-Turing These und wird in Kapitel 6 ausführlicher behandelt. Wie üblich stellt sich jetzt die Frage nach Funktionen, die nicht Turing-berechenbar sind. Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

48 Turingmaschinen Turing-berechenbare partielle Funktionen Definition Die sog. Busy Beaver Funktion N β N bildet n N ab auf die größte Zahl β(n) nichtleerer Felder, die eine schnelle 1-Band dtm über { }, die über n Nicht-Haltezustände und einen Haltezustand verfügt, ausgehend vom leeren Band auf diesem hinterlassen kann, wenn sie hält. Achtung: Nach dem Halt der Maschine dürfen zwischen den Strichen Lücken auftreten. Damit kann sich die größte unär codierte Zahl k, die nach dem Halt auf dem Band steht, durchaus von β(n) unterscheiden. Beispiel ( β(0) = 0 und β(1) = 1 ) #, N start q F bzw start q 0, L q F Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

49 Turingmaschinen Turing-berechenbare partielle Funktionen Beispiel ( β(2) = 4 ) q 0, # q 1, # #, R q 0, start q 0 #, L q1, R q F q 1, # q 0, # q 1,, L q F, Bei Wikipedia findet man diverses Hintergrundmaterial zum Thema Busy Beaver (dort heißt die Funktion Σ ), einschließlich einiger Schranken für die Werte β(6) und β(10). Weiterhin sei auf die Seite von Heiner Marxen verwiesen, der zeitnah über aktuelle Busy Beaver Rekorde buchführt. Es ist zu empfehlen, den Wert β(3) selbständig nachzurechnen, ohne obige Quellen zu konsultieren. Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

50 Turingmaschinen Turing-berechenbare partielle Funktionen Lemma Die busy beaver Funktion wächst streng monoton, d.h., β(n) < β(n + 1) für jedes n N. Beweis. Die dtm M mit Haltezustand q F möge β(n) realisieren. Füge einen neuen Haltezustand q G hinzu und die Übergänge, L q F #, L q G Die neue Maschine M, mit q F als Nicht-Haltezustand, sucht links ein freies Feld, schreibt und hält. Also gilt β(n) < β(n) + 1 β(n + 1). Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

51 Turingmaschinen Turing-berechenbare partielle Funktionen Satz Für jede Turing-berechenbare totale Funktion N f N existiert eine Zahl r f, so dass für alle n N gilt f (n) β(n + r f ). Beweis. Die Funktion f möge von der dtm M mit r f Zuständen berechnet werden. Für n N fügen wir n neue Zustände p i, i < n, zu M hinzu, sowie folgende Übergänge: #, R #, R #, R #, R start p 0 p1... p n 1 q 0 M n produziert ausgehend vom leeren Band n Striche und führt dann M mit dieser Eingabe aus. Mit M hält auch M n, und dann stehen mindestens f (n) Striche auf dem Band, also folgt f (n) β(n + r f ). Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

52 Turingmaschinen Turing-berechenbare partielle Funktionen Satz β ist nicht Turing-berechenbar. Beweis. Wir nehmen an, β ist Turing-berechenbar vermöge der dtm M. Dann ist auch N f N mit n β(2n) Turing-berechenbar (Verknüpfung mit der Verdoppelungsmaschine aus einem früheren Beispiel). Für jedes n N gilt nach obigem Satz β(2n) = f (n) β(n + r f ). Aber n = r f + 1 liefert einen Widerspruch zur stengen Monotonie von β. Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

53 Church-Turing-These Kapitel 6 Die Church-Turing These Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

54 Church-Turing-These Alternativen zu Turingmaschinen Alternativen zu Turingmaschinen Laut Church-Turing-These (oder besser: Vermutung) stimmt die Klasse aller intuitiv algorithmisch berechenbaren Funktionen mit der Klasse der Turing-berechenbaren Funktionen überein. Diese These kann prinzipiell nicht beweisen werden, wird aber dadurch untermauert, dass andere natürliche Formalisierungen des Algorithmus- Begriffs dieselben Klasse berechenbarer Funktionen liefern. Etwa: Registermaschinen (RAMs), die heutigen Computern näher stehen als klassische TMn (dieser Abschnitt wird sehr kurz gehalten); formale Grammatiken (eine Verallgemeinerung kfg n, sind der hiesigen Umsetzung der Bologna-Reform zum Opfer gefallen); die Theorie der sog. rekursiven Funktionen; der Lambda-Kalkül von Alonso Church, die Basis moderner funktionaler Programmiersprachen (vergl. andere VL); und diverse andere, siehe etwa Kapitel 18 im Buch von Rich. Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

55 Church-Turing-These Alternativen zu Turingmaschinen Turing Maschinen lieferten seit Mitte der 1930 er Jahre einen konzeptionellen Zugang zum Algorithmusbegriff. Hinsichtlich der in den 1940 er und 1950 er Jahren vereinzelt aufkommenden Rechenmaschinen/Computer waren TMs aber zu wenig an der Hardware orientiert. Das RAM-Konzept kann zwischen abstrakten TMs und konkreter Assembler-Programmierung verortet werden. Umgekehrt sind Turing Maschinen im Hinblick auf den Begriff der Turingberechenbaren Funktion zu konkret, da Prozedur-orientiert. Sie vermitteln wenig Intuition darüber, welche Funktionen eigentlich Turing-berechenbar sind. Erfreulicherweise stimmt zumindest die Klasse der zahlentheoretischen Turing-berechenbaren Funktionen mit auf völlig andere Weise eingeführten Klasse der µ- rekursiven Funktionen überein. Hier stehen wirklich die Funktionen im Mittelpunkt, und nicht ihre (relativ konkrete aber fehleranfällige) Implementierung. Für die Korrektheitsbeweisen besser zugängliche funktionale Programmierung eignet sich der Lambda-Kalkül allerdings noch besser. Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

56 Church-Turing-These Registermaschinen (RAM) Registermaschinen (RAM) Anstelle eines (potentiell unendlichen) Turingbandes verfügt eine Random Accesss Machine (RAM) oder Registermaschine über einen Datenspeicher aus potentiell unendlich vielen Registern R i, i N, die Daten R i in Form von natürlichen Zahlen unbeschränkter Größe enthalten können (hier muß getrickst werden). Das Register R 0 heißt Akkumulator. Anstatt eines Schreib-Lese-Kopfes arbeitet eine Steuereinheit taktweise die (von den Daten separat gespeicherten) Programme zeilenweise ab, gemäß eines Befehlszählers BZ, der auch als Register aufgefaßt werden kann (aber ebenfalls nicht zum Datenspeicher gehört). Die Ein- und Ausgabe erfolgt über separate Bänder, deren Felder natürliche Zahlen enthalten können (Felder mit dem Inhalt 0 gelten als leer ), und auf denen ein Lese- bzw. Schreib-Kopf sich nur nach rechts(!) bewegen kann (unmittelbar nach dem Lese- bzw. Schreibvorgang, im selben Takt). Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

57 Church-Turing-These Befehlssatz einer RAM Registermaschinen (RAM) Befehl Wirkung READ R 0 := read, BZ := BZ + 1 der Lesekopf bewegt sich vom Feld mit Inhalt read um ein Feld nach rechts WRITE write := R 0, BZ := BZ + 1 der Schreibkopf schreibt R 0 und bewegt sich ein Feld nach rechts LOAD i/load i/load!i R 0 := R i / R Ri /i und BZ := BZ + 1 STORE i/store i R i / R i := R 0 und BZ := BZ + 1 ADD i/add i/add!i R 0 := R 0 + R i / R Ri /i und BZ := BZ + 1 PRED R 0 := pred R 0 1 und BZ := BZ + 1 GOTO m BZ := m { m falls R IF R i = 0 GOTO m BZ := i = 0 BZ + 1 sonst { m falls R IF R i > 0 GOTO m BZ := i > 0 BZ + 1 sonst STOP Maschine hält Die - Variante von LOAD, STORE bzw. ADD entspricht indirekter Adressierung des Registers R Ri, während die!-variante von LOAD und ADD Konstanten i N anstelle von Registerinhalten verwendet. 1 mit pred(n + 1) = n und pred 0 = 0 Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

58 Church-Turing-These Registermaschinen (RAM) Beim Programmieren elementarer Aktionen als Macros ist zu beachten, dass Sprung-Adressen ggf. anzupassen und der Akkumulator zu retten sind. Beispiel SUCC i / PRD i soll den Inhalt von R i STORE α R α = R 0 LOAD!1 R 0 = 1 ADD i R 0 := R i + 1 STORE i R i := R i + 1 LOAD α R 0 = R α um 1 erhöhen/vermindern: STORE α R α = R 0 LOAD i R 0 = R i PRED R 0 := pred R i STORE i R i := pred R i LOAD α R 0 = R α Dabei ist R α ein zum Zeitpunkt des Aufrufs freies Register, das jeweils anzupassen ist. Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

59 Church-Turing-These Registermaschinen (RAM) Beispiel ( SUB i subtrahiert R 0 von R i, soweit möglich:) 0. IF R 0 = 0 GOTO 8 1. PRD i (braucht fünf Schritte) 6. PRED 7. GOTO 0 8. LOAD i Beispiel ( IF R i = k GOTO m für k > 0 :) 0. STORE α 1. LOAD!k 2. SUB i (braucht neun Schritte) 11. STORE i (zerstört den Inhalt von R i ) 12. LOAD α 13. IF R i = 0 GOTO m Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

60 Church-Turing-These Registermaschinen (RAM) Simulation einer TM durch eine RAM Neben dem Akkumulator R 0 sind die Register R 1 für den Zustand und R 2 für die Kopfposition reserviert, während R 3+i für den Inhalt von Zelle i zuständig ist. Die Zustandsmenge wird durchnummeriert: Q = { q i : i < n } ; der aktuelle Zustandsindex ist R 1 Das Bandalphabet B wird durchnummeriert: B = { s i : i < m } mit s 0 = #. Der Index des Inhalts von Feld i findet sich in Register R 3+i. Die Bandzellen werden durchnummeriert, mit 0 für die Kopfposition in der Initialkonfiguration, ungerade Zahlen nach rechts, gerade Zahlen nach links. Die aktuelle Kopfposition ist R 2. Die Übergangstabelle q i, s j q r, A t wird programmiert. Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

61 Church-Turing-These Registermaschinen (RAM) Die Simulation einer TM-Berechnung erfolgt in drei Schritten: Zunächst wird die Eingabe a 0 a 1... a k 1 in die Register R 3, R 5,..., R 1+2k übertragen, durch wiederholte Anwendung von READ. Nach Erreichen von # werden die Register R 1 und R 2 gemäß der Initialkonfiguration initialisiert. Anschließend sind die den Übergängen q i, b j q r, a t mit b j B und a t B + {L, R} entsprechenden Programme auszuführen, solange Übergänge verfügbar sind. Der Bandinhalt rechts der Kopfposition wird auf das Ausgabeband übertragen, bis ein Blankzeichen auftritt. Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

62 6.1.2 Berechenbarkeit Church-Turing-These Registermaschinen (RAM) Definition Eine RAM berechnet eine (partielle) Funktion N k N, falls die RAM bei genau den Eingaben aus dem Definitionsbereich D(f ) hält und dann der einzige Wert auf dem Ausgabeband mit dem Funktionswert von f übereinstimmt. Nachdem die Simulierbarkeit von dtms durch RAMs konzeptionell bereits etabliert worden ist, gilt es nun, auch die umgekehrte Simulierarkeit zu zeigen. Satz Jede RAM-berechenbare Funktion ist Turing-berechenbar. f Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

63 Church-Turing-These Registermaschinen (RAM) Beweis Wir simulieren ein RAM-Programm für f mit Hilfe einer 6-Band TM mit Bandalphabet #} und Zustandsmenge der Form Q A ( zusätzliches Gedächtnis ), deren zweite Komponente zur Speicherung des endlichen RAM-Programms dient. B 0 dient zur Eingabe x x x n ; B 1 enthält die zunächst nichtleeren Register R i = n in der ; aktuelle Angaben für R i werden rechts angefügt (das erspart das Verändern von Zahlen in der Mitte des Bandes); dann ist auch n = 0 möglich; B 2 und B 3 fungieren als Akkumulator bzw. Befehlszähler; B 4 ist ein Hilfsband und B 5 dient der Ausgabe. Zu Beginn sind alle Bänder außer B 0 leer. Dann wird immer der Befehl simuliert, dessen Zeilennummer auf B 3 steht. Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

64 Church-Turing-These Registermaschinen (RAM) Beweis (Fortsetzung) Nun gilt es nur noch, die einzelnen RAM-Befehle zu simulieren.... Frau Viorica Sofronie-Stokkermans von der Universität Koblenz-Landau verfolgt hinsichtlich Register-Maschinen einen geschickteren Ansatz: Neben dem IF...GOTO-Konstrukt verwendet sie LOOP und WHILE Schleifen, erstere mit vorgegebenener und lezterer mit potentiell variabler Anzahl von Durchläufen. Das induziert drei Klassen berechenbarer Funktionen, LOOP, WHILE und GOTO, wobei man jeweils noch den partiellen und den totalen Fall unterscheiden kann. Es stellt sich heraus, LOOP echt in den totalen WHILE-Funktionen enthalten ist, während die Turing-berechenbaren Funktionen mit WHILE und GOTO übereinstimmen; Slogan: strukturierter Code ist genauso mächtig wie Spaghetti-Code Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

65 Church-Turing-These 6.2 Rekursive Funktionen 6.2 Rekursive Funktionen Dieser alternative Ansatz zur Formalisierung intuitiv berechenbarer Funktionen geht algebraisch vor. Ausgehend von sog. Grundfunktionen wird mit zwei Operationen zunächst die Klasse der primitiv rekursiven Funktionen aufgebaut. Der Abschluß unter einer dritten Operation liefert dann die Klasse der µ- rekursiven Funktionen. Diese stimmt letztlich mit der Klasse der partiellen Turing-berechenbaren Funktionen überein. Definition Die Klasse PR 0 der Grundfunktionen besteht aus allen Projektionen N k πi k N, x x i, für i < k N ; allen konstante Funktionen N k κ k;0 N, x 0, für k N ; der Nachfolger-Funktion N succ N, n n + 1. Speziell im Fall k = 0 ist N 0 ein Singleton { }. Dann existieren keine κ Projektionen, und die Konstante { } 0;0 N kann mit dem Element 0 N identifiziert werden (Funktion ohne Parameter). Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

66 Church-Turing-These 6.2 Rekursive Funktionen Zunächst wollen wir die bekannte Verknüpfung einstelliger Funktionen N g N f N, n f (g(n)) =: (f g)(n) auf mehrstellige Funktionen übertragen. Ist N k N gegeben, kann man im einfachsten Fall k Funktionen N t i g i N per Substitution zu einer neuen Funktion N i<k t i f (g 0 g k 1 ) N verbinden: f g 0 g 1 g 2 f (In dieser graphischen Darstellung haben die Knoten als Funktionen oben endlich viele Inputs, und unten genau einen Output.) Diese Operation wird sich später als ableitbar erweisen, dient also nicht als grundlegendes Konstruktionsprinzip für primitiv-rekursive Funktionen. Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

67 Church-Turing-These 6.2 Rekursive Funktionen f Stattdessen kann man für N k N auch k Funktionen g i mit demselben Definitionsbereich N m betrachten, und daraus eine kombinierte Funktion von N m nach N gewinnen, indem man die Eingabe für alle Funktionen g i klont: g 0 g 1 g 2 f Definition (Klon-Komposition) Für N k f N und N m g i N, i < k setze N m f g i : i < k x f ( g 0 (x),..., g k 1 (x) ) N Auch diese Operation wird in der Literatur leicht irreführend einfach als Substitution oder Komposition bezeichnet. Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

68 Church-Turing-These 6.2 Rekursive Funktionen Beispiel h Die Funktion N 2 N, m, n (m + n) + mn + max{m, n} läßt sich mittels Klon-Komposition aus N 3 f N, x, y, z x + y + z sowie N 2 g i N, i < 3, konstruieren, mit g 0 (m, n) := m + n, g 1 (m, n) := mn und g 2 (m, n) := max{m, n}. Beispiel Konstante Funktionen N k κ k;i N mit Wert i N liefert κ k;0 durch i -fache Verknüpfung mit der Nachfolger-Funktion: κ k;i = (succ) i κ k;0. Beispiel Die durch f (n) = n + 2 spezifizierte Funktion N f N läßt sich durch f = succ succ realisieren. Entsprechend liefert die Spezifikation g(m, n) = n + 2 eine Funktion N 2 g N mit g = f π1 2. Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

69 Church-Turing-These 6.2 Rekursive Funktionen Satz Substitution läßt sich auf Klon-Komposition zurückführen. Beweis f Für N k N erweitert man den Definitionsbereich der Funktionen N t i g i N, i < k, mittels Dummy-Argumenten zu N t mit t = i<k t i. Dafür verwendet man Klon-Komposition mit geeigneten Projektionen: Dies liefert schließlich g i = g i π t j<i t j,..., πt ( j i t j ) 1 f (g 0 g k 1 ) = f g 0,..., g k 1 Umgekehrt zeigt die graphische Darstellung unmittelbar, dass die Klon-Komposition nicht mit Hilfe der Substitution realisiert werden kann. (Während Substitution nur auf der Tensorprodukt-Eigenschaft von beruht, benötigt Klon-Komposition die Eigenschaften eines kategoriellen Produkts, speziell die Existenz von Projektionen.) Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

70 Church-Turing-These 6.2 Rekursive Funktionen Definition (Induktions-Rekursions-Schema (IRS)) Aus zwei Funktionen N k 1 N k f = IR(g, h) N gemäß g N h N k+1 konstruieren wir eine dritte f (x, 0) := g(x) und f (x, m + 1) := h(x, m, f (x, m)) mit x N k 1 Die Rekursion erfolgt bei festem x N k 1 im letzten Argument rückwärts durch m + 1 -malige Anwendung von h auf den Startwert f (x, 0) = g(x) : Beispiel ( m = 2 ) f (x, 3) = f (x, 2 + 1) = h(x, 2, f (x, 2)) = h(x, 2, f (x, 1 + 1)) = h(x, 2, h(x, 1, f (x, 1))) = h(x, 2, h(x, 1, f (x, 0 + 1))) = h(x, 2, h(x, 1, h(x, 0, f (x, 0)))) = h(x, 2, h(x, 1, h(x, 0, g(x)))) Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS / 236

Deterministische Turing-Maschinen (DTM) F3 03/04 p.46/395

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

Mehr

Mächtigkeit von WHILE-Programmen

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

Mehr

Grundlagen der Theoretischen Informatik, SoSe 2008

Grundlagen der Theoretischen Informatik, SoSe 2008 1. Aufgabenblatt zur Vorlesung Grundlagen der Theoretischen Informatik, SoSe 2008 (Dr. Frank Hoffmann) Lösung von Manuel Jain und Benjamin Bortfeldt Aufgabe 2 Zustandsdiagramme (6 Punkte, wird korrigiert)

Mehr

Primzahlen und RSA-Verschlüsselung

Primzahlen und RSA-Verschlüsselung Primzahlen und RSA-Verschlüsselung Michael Fütterer und Jonathan Zachhuber 1 Einiges zu Primzahlen Ein paar Definitionen: Wir bezeichnen mit Z die Menge der positiven und negativen ganzen Zahlen, also

Mehr

Übung Theoretische Grundlagen

Übung Theoretische Grundlagen Übung Theoretische Grundlagen Berechenbarkeit/Entscheidbarkeit Nico Döttling November 26, 2009 INSTITUT FÜR KRYPTOGRAPHIE UND SICHERHEIT KIT University of the State of Baden-Wuerttemberg and National Laboratory

Mehr

Theoretische Grundlagen der Informatik

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

Mehr

Informationsblatt Induktionsbeweis

Informationsblatt Induktionsbeweis Sommer 015 Informationsblatt Induktionsbeweis 31. März 015 Motivation Die vollständige Induktion ist ein wichtiges Beweisverfahren in der Informatik. Sie wird häufig dazu gebraucht, um mathematische Formeln

Mehr

Grundlagen der Theoretischen Informatik

Grundlagen der Theoretischen Informatik Grundlagen der Theoretischen Informatik 3. Endliche Automaten (V) 21.05.2015 Viorica Sofronie-Stokkermans e-mail: sofronie@uni-koblenz.de 1 Bis jetzt Determinierte endliche Automaten (DEAs) Indeterminierte

Mehr

4.9 Deterministische Kellerautomaten Wir haben bereits definiert: Ein PDA heißt deterministisch (DPDA), falls

4.9 Deterministische Kellerautomaten Wir haben bereits definiert: Ein PDA heißt deterministisch (DPDA), falls 4.9 Deterministische Kellerautomaten Wir haben bereits definiert: Ein PDA heißt deterministisch (DPDA), falls δ(q, a, Z) + δ(q, ɛ, Z) 1 (q, a, Z) Q Σ. Die von einem DPDA, der mit leerem Keller akzeptiert,

Mehr

Grundlagen Theoretischer Informatik I SoSe 2011 in Trier. Henning Fernau Universität Trier fernau@uni-trier.de

Grundlagen Theoretischer Informatik I SoSe 2011 in Trier. Henning Fernau Universität Trier fernau@uni-trier.de Grundlagen Theoretischer Informatik I SoSe 2011 in Trier Henning Fernau Universität Trier fernau@uni-trier.de 1 Grundlagen Theoretischer Informatik I Gesamtübersicht Organisatorisches; Einführung Logik

Mehr

Einführung in die Algebra

Einführung in die Algebra Prof. Dr. H. Brenner Osnabrück SS 2009 Einführung in die Algebra Vorlesung 13 Einheiten Definition 13.1. Ein Element u in einem Ring R heißt Einheit, wenn es ein Element v R gibt mit uv = vu = 1. DasElementv

Mehr

Die Komplexitätsklassen P und NP

Die Komplexitätsklassen P und NP Die Komplexitätsklassen P und NP Prof. Dr. Berthold Vöcking Lehrstuhl Informatik 1 Algorithmen und Komplexität RWTH Aachen 3. Dezember 2009 Berthold Vöcking, Informatik 1 () Vorlesung Berechenbarkeit und

Mehr

1 Mathematische Grundlagen

1 Mathematische Grundlagen Mathematische Grundlagen - 1-1 Mathematische Grundlagen Der Begriff der Menge ist einer der grundlegenden Begriffe in der Mathematik. Mengen dienen dazu, Dinge oder Objekte zu einer Einheit zusammenzufassen.

Mehr

Einführung. Vorlesungen zur Komplexitätstheorie: Reduktion und Vollständigkeit (3) Vorlesungen zur Komplexitätstheorie. K-Vollständigkeit (1/5)

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

Mehr

Theoretische Grundlagen der Informatik

Theoretische Grundlagen der Informatik Theoretische Grundlagen der Informatik Vorlesung am 12.01.2012 INSTITUT FÜR THEORETISCHE 0 KIT 12.01.2012 Universität des Dorothea Landes Baden-Württemberg Wagner - Theoretische und Grundlagen der Informatik

Mehr

Theoretische Informatik SS 04 Übung 1

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

Mehr

Formale Grundlagen der Informatik 1 Kapitel 12 Zusammenfassung

Formale Grundlagen der Informatik 1 Kapitel 12 Zusammenfassung Formale Grundlagen der Informatik 1 Kapitel 12 Zusammenfassung Frank Heitmann heitmann@informatik.uni-hamburg.de 13. Mai 2014 Frank Heitmann heitmann@informatik.uni-hamburg.de 1/17 Überblick Wir hatten

Mehr

Grundbegriffe der Informatik

Grundbegriffe der Informatik Grundbegriffe der Informatik Einheit 15: Reguläre Ausdrücke und rechtslineare Grammatiken Thomas Worsch Universität Karlsruhe, Fakultät für Informatik Wintersemester 2008/2009 1/25 Was kann man mit endlichen

Mehr

effektives Verfahren ~ Algorithmus (Al Chwarismi) Regelsystem, Methode, Rezept, Gebrauchsanleitung Programm (griech. προγραφω, vor-schreiben)

effektives Verfahren ~ Algorithmus (Al Chwarismi) Regelsystem, Methode, Rezept, Gebrauchsanleitung Programm (griech. προγραφω, vor-schreiben) effektive Verfahren Ein Verfahren ist effektiv, wenn es für jeden Fall, der in einem zuvor abgegrenzten Bereich von eindeutigen Unterscheidungen auftreten kann, eine eindeutige und ausführbare Handlungsanweisung

Mehr

Mathematische Maschinen

Mathematische Maschinen Mathematische Maschinen Ziel: Entwicklung eines allgemeinen Schemas zur Beschreibung von (mathematischen) Maschinen zur Ausführung von Algorithmen (hier: (partiellen) Berechnungsverfahren). Mathematische

Mehr

7 Rechnen mit Polynomen

7 Rechnen mit Polynomen 7 Rechnen mit Polynomen Zu Polynomfunktionen Satz. Zwei Polynomfunktionen und f : R R, x a n x n + a n 1 x n 1 + a 1 x + a 0 g : R R, x b n x n + b n 1 x n 1 + b 1 x + b 0 sind genau dann gleich, wenn

Mehr

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren Lineargleichungssysteme: Additions-/ Subtraktionsverfahren W. Kippels 22. Februar 2014 Inhaltsverzeichnis 1 Einleitung 2 2 Lineargleichungssysteme zweiten Grades 2 3 Lineargleichungssysteme höheren als

Mehr

Das Briefträgerproblem

Das Briefträgerproblem Das Briefträgerproblem Paul Tabatabai 30. Dezember 2011 Inhaltsverzeichnis 1 Problemstellung und Modellierung 2 1.1 Problem................................ 2 1.2 Modellierung.............................

Mehr

Übung Theoretische Grundlagen Nachtrag zur Vorlesung Dirk Achenbach 21.11.2013

Übung Theoretische Grundlagen Nachtrag zur Vorlesung Dirk Achenbach 21.11.2013 Übung Theoretische Grundlagen Nachtrag zur Vorlesung Dirk Achenbach 21.11.2013 INSTITUT FÜR KRYPTOGRAPHIE UND SICHERHEIT KIT University of the State of Baden-Wuerttemberg and National Laboratory of the

Mehr

Programmiersprachen und Übersetzer

Programmiersprachen und Übersetzer Programmiersprachen und Übersetzer Sommersemester 2010 19. April 2010 Theoretische Grundlagen Problem Wie kann man eine unendliche Menge von (syntaktisch) korrekten Programmen definieren? Lösung Wie auch

Mehr

50. Mathematik-Olympiade 2. Stufe (Regionalrunde) Klasse 11 13. 501322 Lösung 10 Punkte

50. Mathematik-Olympiade 2. Stufe (Regionalrunde) Klasse 11 13. 501322 Lösung 10 Punkte 50. Mathematik-Olympiade. Stufe (Regionalrunde) Klasse 3 Lösungen c 00 Aufgabenausschuss des Mathematik-Olympiaden e.v. www.mathematik-olympiaden.de. Alle Rechte vorbehalten. 503 Lösung 0 Punkte Es seien

Mehr

1 topologisches Sortieren

1 topologisches Sortieren Wolfgang Hönig / Andreas Ecke WS 09/0 topologisches Sortieren. Überblick. Solange noch Knoten vorhanden: a) Suche Knoten v, zu dem keine Kante führt (Falls nicht vorhanden keine topologische Sortierung

Mehr

Informatik IC2. Balazs Simon 2005.03.26.

Informatik IC2. Balazs Simon 2005.03.26. Informatik IC2 Balazs Simon 2005.03.26. Inhaltsverzeichnis 1 Reguläre Sprachen 3 1.1 Reguläre Sprachen und endliche Automaten...................... 3 1.2 Determinisieren.....................................

Mehr

Gleichungen Lösen. Ein graphischer Blick auf Gleichungen

Gleichungen Lösen. Ein graphischer Blick auf Gleichungen Gleichungen Lösen Was bedeutet es, eine Gleichung zu lösen? Was ist überhaupt eine Gleichung? Eine Gleichung ist, grundsätzlich eine Aussage über zwei mathematische Terme, dass sie gleich sind. Ein Term

Mehr

Algorithmen II Vorlesung am 15.11.2012

Algorithmen II Vorlesung am 15.11.2012 Algorithmen II Vorlesung am 15.11.2012 Kreisbasen, Matroide & Algorithmen INSTITUT FÜR THEORETISCHE INFORMATIK PROF. DR. DOROTHEA WAGNER KIT Universität des Landes Baden-Württemberg und Algorithmen nationales

Mehr

Wortproblem für kontextfreie Grammatiken

Wortproblem für kontextfreie Grammatiken Wortproblem für kontextfreie Grammatiken G kontextfreie Grammatik. w Σ w L(G)? Wortproblem ist primitiv rekursiv entscheidbar. (schlechte obere Schranke!) Kellerautomat der L(G) akzeptiert Ist dieser effizient?

Mehr

Erweiterung der Aufgabe. Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen:

Erweiterung der Aufgabe. Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen: VBA Programmierung mit Excel Schleifen 1/6 Erweiterung der Aufgabe Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen: Es müssen also 11 (B L) x 35 = 385 Zellen berücksichtigt

Mehr

Konfiguration einer TM als String schreiben: Bandinschrift zwischen den Blank-Zeichen Links von der Kopfposition Zustand einfügen.

Konfiguration einer TM als String schreiben: Bandinschrift zwischen den Blank-Zeichen Links von der Kopfposition Zustand einfügen. H MPKP Konfiguration einer TM als String schreiben: Bandinschrift zwischen den Blank-Zeichen Links von der Kopfposition Zustand einfügen. Beispiel: 1234q567 bedeutet: Kopf steht auf 5, Zustand ist q. Rechnung:

Mehr

Beweisbar sichere Verschlüsselung

Beweisbar sichere Verschlüsselung Beweisbar sichere Verschlüsselung ITS-Wahlpflichtvorlesung Dr. Bodo Möller Ruhr-Universität Bochum Horst-Görtz-Institut für IT-Sicherheit Lehrstuhl für Kommunikationssicherheit bmoeller@crypto.rub.de 6

Mehr

Erstellen von x-y-diagrammen in OpenOffice.calc

Erstellen von x-y-diagrammen in OpenOffice.calc Erstellen von x-y-diagrammen in OpenOffice.calc In dieser kleinen Anleitung geht es nur darum, aus einer bestehenden Tabelle ein x-y-diagramm zu erzeugen. D.h. es müssen in der Tabelle mindestens zwei

Mehr

3. Ziel der Vorlesung

3. Ziel der Vorlesung 3. Ziel der Vorlesung Der Zweck der Vorlesung ist das Studium fundamentaler Konzepte in der Algorithmentheorie. Es werden relevante Maschinenmodelle, grundlegende und höhere Datenstrukturen sowie der Entwurf

Mehr

Lineare Gleichungssysteme

Lineare Gleichungssysteme Brückenkurs Mathematik TU Dresden 2015 Lineare Gleichungssysteme Schwerpunkte: Modellbildung geometrische Interpretation Lösungsmethoden Prof. Dr. F. Schuricht TU Dresden, Fachbereich Mathematik auf der

Mehr

GTI. Hannes Diener. 6. Juni - 13. Juni. ENC B-0123, diener@math.uni-siegen.de

GTI. Hannes Diener. 6. Juni - 13. Juni. ENC B-0123, diener@math.uni-siegen.de GTI Hannes Diener ENC B-0123, diener@math.uni-siegen.de 6. Juni - 13. Juni 1 / 49 Die Turingmaschine war das erste (bzw. zweite) formale Modell der Berechenbarkeit. Sie wurden bereits 1936 (also lange

Mehr

Entscheidungsprobleme. Berechenbarkeit und Komplexität Entscheidbarkeit und Unentscheidbarkeit. Die Entscheidbarkeit von Problemen

Entscheidungsprobleme. Berechenbarkeit und Komplexität Entscheidbarkeit und Unentscheidbarkeit. Die Entscheidbarkeit von Problemen Berechenbarkeit und Komlexität Entscheidbarkeit und Unentscheidbarkeit Wolfgang Schreiner Wolfgang.Schreiner@risc.uni-linz.ac.at Research Institute for Symbolic Comutation (RISC) Johannes Keler University,

Mehr

Anmerkungen zur Übergangsprüfung

Anmerkungen zur Übergangsprüfung DM11 Slide 1 Anmerkungen zur Übergangsprüfung Aufgabeneingrenzung Aufgaben des folgenden Typs werden wegen ihres Schwierigkeitsgrads oder wegen eines ungeeigneten fachlichen Schwerpunkts in der Übergangsprüfung

Mehr

PowerPoint: Text. Text

PowerPoint: Text. Text PowerPoint: Anders als in einem verarbeitungsprogramm steht in PowerPoint der Cursor nicht automatisch links oben auf einem Blatt in der ersten Zeile und wartet auf eingabe. kann hier vielmehr frei über

Mehr

Güte von Tests. die Wahrscheinlichkeit für den Fehler 2. Art bei der Testentscheidung, nämlich. falsch ist. Darauf haben wir bereits im Kapitel über

Güte von Tests. die Wahrscheinlichkeit für den Fehler 2. Art bei der Testentscheidung, nämlich. falsch ist. Darauf haben wir bereits im Kapitel über Güte von s Grundlegendes zum Konzept der Güte Ableitung der Gütefunktion des Gauss im Einstichprobenproblem Grafische Darstellung der Gütefunktionen des Gauss im Einstichprobenproblem Ableitung der Gütefunktion

Mehr

Die Gleichung A x = a hat für A 0 die eindeutig bestimmte Lösung. Für A=0 und a 0 existiert keine Lösung.

Die Gleichung A x = a hat für A 0 die eindeutig bestimmte Lösung. Für A=0 und a 0 existiert keine Lösung. Lineare Gleichungen mit einer Unbekannten Die Grundform der linearen Gleichung mit einer Unbekannten x lautet A x = a Dabei sind A, a reelle Zahlen. Die Gleichung lösen heißt, alle reellen Zahlen anzugeben,

Mehr

Professionelle Seminare im Bereich MS-Office

Professionelle Seminare im Bereich MS-Office Der Name BEREICH.VERSCHIEBEN() ist etwas unglücklich gewählt. Man kann mit der Funktion Bereiche zwar verschieben, man kann Bereiche aber auch verkleinern oder vergrößern. Besser wäre es, die Funktion

Mehr

Systeme 1. Kapitel 6. Nebenläufigkeit und wechselseitiger Ausschluss

Systeme 1. Kapitel 6. Nebenläufigkeit und wechselseitiger Ausschluss Systeme 1 Kapitel 6 Nebenläufigkeit und wechselseitiger Ausschluss Threads Die Adressräume verschiedener Prozesse sind getrennt und geschützt gegen den Zugriff anderer Prozesse. Threads sind leichtgewichtige

Mehr

Zeichen bei Zahlen entschlüsseln

Zeichen bei Zahlen entschlüsseln Zeichen bei Zahlen entschlüsseln In diesem Kapitel... Verwendung des Zahlenstrahls Absolut richtige Bestimmung von absoluten Werten Operationen bei Zahlen mit Vorzeichen: Addieren, Subtrahieren, Multiplizieren

Mehr

Frohe Weihnachten und ein gutes neues Jahr!

Frohe Weihnachten und ein gutes neues Jahr! Frohe Weihnachten und ein gutes neues Jahr! Die mit dem Stern * gekennzeichneten Übungen sind nicht verpflichtend, aber sie liefern zusätzliche Punkte. Unten wird immer mit I das reelle Intervall [0, 1]

Mehr

4. Dynamische Optimierung

4. Dynamische Optimierung 4. Dynamische Optimierung Allgemeine Form dynamischer Optimierungsprobleme 4. Dynamische Optimierung Die dynamische Optimierung (DO) betrachtet Entscheidungsprobleme als eine Folge voneinander abhängiger

Mehr

OECD Programme for International Student Assessment PISA 2000. Lösungen der Beispielaufgaben aus dem Mathematiktest. Deutschland

OECD Programme for International Student Assessment PISA 2000. Lösungen der Beispielaufgaben aus dem Mathematiktest. Deutschland OECD Programme for International Student Assessment Deutschland PISA 2000 Lösungen der Beispielaufgaben aus dem Mathematiktest Beispielaufgaben PISA-Hauptstudie 2000 Seite 3 UNIT ÄPFEL Beispielaufgaben

Mehr

Bestimmung einer ersten

Bestimmung einer ersten Kapitel 6 Bestimmung einer ersten zulässigen Basislösung Ein Problem, was man für die Durchführung der Simplexmethode lösen muss, ist die Bestimmung einer ersten zulässigen Basislösung. Wie gut das geht,

Mehr

Formale Systeme, WS 2012/2013 Lösungen zu Übungsblatt 4

Formale Systeme, WS 2012/2013 Lösungen zu Übungsblatt 4 Karlsruher Institut für Technologie Institut für Theoretische Informatik Prof. Dr. Peter H. Schmitt David Farago, Christoph Scheben, Mattias Ulbrich Formale Systeme, WS 2012/2013 Lösungen zu Übungsblatt

Mehr

Kompetitive Analysen von Online-Algorithmen

Kompetitive Analysen von Online-Algorithmen Kompetitive Analysen von Online-Algorithmen jonas echterhoff 16. Juli 004 1 Einführung 1.1 Terminologie Online-Algorithmen sind Algorithmen, die Probleme lösen sollen, bei denen Entscheidungen getroffen

Mehr

Komplexität und Komplexitätsklassen

Komplexität und Komplexitätsklassen Dr. Sebastian Bab WiSe 12/13 Theoretische Grundlagen der Informatik für TI Termin: VL 21 vom 21.01.2013 Komplexität und Komplexitätsklassen Die meisten Probleme mit denen wir zu tun haben sind entscheidbar.

Mehr

Erstellen einer Collage. Zuerst ein leeres Dokument erzeugen, auf dem alle anderen Bilder zusammengefügt werden sollen (über [Datei] > [Neu])

Erstellen einer Collage. Zuerst ein leeres Dokument erzeugen, auf dem alle anderen Bilder zusammengefügt werden sollen (über [Datei] > [Neu]) 3.7 Erstellen einer Collage Zuerst ein leeres Dokument erzeugen, auf dem alle anderen Bilder zusammengefügt werden sollen (über [Datei] > [Neu]) Dann Größe des Dokuments festlegen beispielsweise A4 (weitere

Mehr

Zwischenablage (Bilder, Texte,...)

Zwischenablage (Bilder, Texte,...) Zwischenablage was ist das? Informationen über. die Bedeutung der Windows-Zwischenablage Kopieren und Einfügen mit der Zwischenablage Vermeiden von Fehlern beim Arbeiten mit der Zwischenablage Bei diesen

Mehr

Motivation. Formale Grundlagen der Informatik 1 Kapitel 5 Kontextfreie Sprachen. Informales Beispiel. Informales Beispiel.

Motivation. Formale Grundlagen der Informatik 1 Kapitel 5 Kontextfreie Sprachen. Informales Beispiel. Informales Beispiel. Kontextfreie Kontextfreie Motivation Formale rundlagen der Informatik 1 Kapitel 5 Kontextfreie Sprachen Bisher hatten wir Automaten, die Wörter akzeptieren Frank Heitmann heitmann@informatik.uni-hamburg.de

Mehr

Mathematischer Vorbereitungskurs für Ökonomen

Mathematischer Vorbereitungskurs für Ökonomen Mathematischer Vorbereitungskurs für Ökonomen Dr. Thomas Zehrt Wirtschaftswissenschaftliches Zentrum Universität Basel Gleichungen Inhalt: 1. Grundlegendes 2. Lineare Gleichungen 3. Gleichungen mit Brüchen

Mehr

Kapitel 4 Schaltungen mit Delays (Schaltwerke) Literatur: Oberschelp/Vossen, Kapitel 4. Kapitel 4: Schaltungen mit Delays Seite 1

Kapitel 4 Schaltungen mit Delays (Schaltwerke) Literatur: Oberschelp/Vossen, Kapitel 4. Kapitel 4: Schaltungen mit Delays Seite 1 Kapitel 4 Schaltungen mit Delays (Schaltwerke) Literatur: Oberschelp/Vossen, Kapitel 4 Kapitel 4: Schaltungen mit Delays Seite 1 Schaltungen mit Delays Inhaltsverzeichnis 4.1 Einführung 4.2 Addierwerke

Mehr

Grundlagen der höheren Mathematik Einige Hinweise zum Lösen von Gleichungen

Grundlagen der höheren Mathematik Einige Hinweise zum Lösen von Gleichungen Grundlagen der höheren Mathematik Einige Hinweise zum Lösen von Gleichungen 1. Quadratische Gleichungen Quadratische Gleichungen lassen sich immer auf die sog. normierte Form x 2 + px + = 0 bringen, in

Mehr

Der Zwei-Quadrate-Satz von Fermat

Der Zwei-Quadrate-Satz von Fermat Der Zwei-Quadrate-Satz von Fermat Proseminar: Das BUCH der Beweise Fridtjof Schulte Steinberg Institut für Informatik Humboldt-Universität zu Berlin 29.November 2012 1 / 20 Allgemeines Pierre de Fermat

Mehr

Anwendungshinweise zur Anwendung der Soziometrie

Anwendungshinweise zur Anwendung der Soziometrie Anwendungshinweise zur Anwendung der Soziometrie Einführung Die Soziometrie ist ein Verfahren, welches sich besonders gut dafür eignet, Beziehungen zwischen Mitgliedern einer Gruppe darzustellen. Das Verfahren

Mehr

10 Erweiterung und Portierung

10 Erweiterung und Portierung 10.1 Überblick In vielen Fällen werden Compiler nicht vollständig neu geschrieben, sondern von einem Rechnersystem auf ein anderes portiert. Das spart viel Arbeit, ist aber immer noch eine sehr anspruchsvolle

Mehr

Software-Engineering SS03. Zustandsautomat

Software-Engineering SS03. Zustandsautomat Zustandsautomat Definition: Ein endlicher Automat oder Zustandsautomat besteht aus einer endlichen Zahl von internen Konfigurationen - Zustände genannt. Der Zustand eines Systems beinhaltet implizit die

Mehr

Konzepte der Informatik

Konzepte der Informatik Konzepte der Informatik Vorkurs Informatik zum WS 2011/2012 26.09. - 30.09.2011 17.10. - 21.10.2011 Dr. Werner Struckmann / Christoph Peltz Stark angelehnt an Kapitel 1 aus "Abenteuer Informatik" von Jens

Mehr

Die reellen Lösungen der kubischen Gleichung

Die reellen Lösungen der kubischen Gleichung Die reellen Lösungen der kubischen Gleichung Klaus-R. Löffler Inhaltsverzeichnis 1 Einfach zu behandelnde Sonderfälle 1 2 Die ganzrationale Funktion dritten Grades 2 2.1 Reduktion...........................................

Mehr

Erwin Grüner 09.02.2006

Erwin Grüner 09.02.2006 FB Psychologie Uni Marburg 09.02.2006 Themenübersicht Folgende Befehle stehen in R zur Verfügung: {}: Anweisungsblock if: Bedingte Anweisung switch: Fallunterscheidung repeat-schleife while-schleife for-schleife

Mehr

Grammatiken. Einführung

Grammatiken. Einführung Einführung Beispiel: Die arithmetischen Ausdrücke über der Variablen a und den Operationen + und können wie folgt definiert werden: a, a + a und a a sind arithmetische Ausdrücke Wenn A und B arithmetische

Mehr

1. Man schreibe die folgenden Aussagen jeweils in einen normalen Satz um. Zum Beispiel kann man die Aussage:

1. Man schreibe die folgenden Aussagen jeweils in einen normalen Satz um. Zum Beispiel kann man die Aussage: Zählen und Zahlbereiche Übungsblatt 1 1. Man schreibe die folgenden Aussagen jeweils in einen normalen Satz um. Zum Beispiel kann man die Aussage: Für alle m, n N gilt m + n = n + m. in den Satz umschreiben:

Mehr

Mediator 9 - Lernprogramm

Mediator 9 - Lernprogramm Mediator 9 - Lernprogramm Ein Lernprogramm mit Mediator erstellen Mediator 9 bietet viele Möglichkeiten, CBT-Module (Computer Based Training = Computerunterstütztes Lernen) zu erstellen, z. B. Drag & Drop

Mehr

Windows. Workshop Internet-Explorer: Arbeiten mit Favoriten, Teil 1

Windows. Workshop Internet-Explorer: Arbeiten mit Favoriten, Teil 1 Workshop Internet-Explorer: Arbeiten mit Favoriten, Teil 1 Wenn der Name nicht gerade www.buch.de oder www.bmw.de heißt, sind Internetadressen oft schwer zu merken Deshalb ist es sinnvoll, die Adressen

Mehr

Anlegen eines Speicherbereichs mit DB, DW eleganter in Kombination mit EQU, Timer-Interrupt

Anlegen eines Speicherbereichs mit DB, DW eleganter in Kombination mit EQU, Timer-Interrupt Anlegen eines Speicherbereichs mit DB, DW eleganter in Kombination mit EQU, Timer-Interrupt AMPEL-Steuerung(en) Die Beschreibung und Programmierung der Ampel (vor allem Ampel_5) können sehr kompliziert

Mehr

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang sysplus.ch outlook - mail-grundlagen Seite 1/8 Outlook Mail-Grundlagen Posteingang Es gibt verschiedene Möglichkeiten, um zum Posteingang zu gelangen. Man kann links im Outlook-Fenster auf die Schaltfläche

Mehr

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom 21.10.2013b

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom 21.10.2013b AGROPLUS Buchhaltung Daten-Server und Sicherheitskopie Version vom 21.10.2013b 3a) Der Daten-Server Modus und der Tresor Der Daten-Server ist eine Betriebsart welche dem Nutzer eine grosse Flexibilität

Mehr

Vorlesung Diskrete Strukturen Graphen: Wieviele Bäume?

Vorlesung Diskrete Strukturen Graphen: Wieviele Bäume? Vorlesung Diskrete Strukturen Graphen: Wieviele Bäume? Bernhard Ganter Institut für Algebra TU Dresden D-01062 Dresden bernhard.ganter@tu-dresden.de WS 2013/14 Isomorphie Zwei Graphen (V 1, E 1 ) und (V

Mehr

Erfüllbarkeit und Allgemeingültigkeit

Erfüllbarkeit und Allgemeingültigkeit Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.3 Aussagenlogik Erfüllbarkeit 44 Erfüllbarkeit und Allgemeingültigkeit Def.: eine Formel ϕ heißt erfüllbar, wennesein I gibt, so dass I = ϕ

Mehr

Inhalt. Allgemeine Einführung. Argumentationsvermögen. Räumliches Vorstellungsvermögen. Begabungen und Fähigkeiten messen

Inhalt. Allgemeine Einführung. Argumentationsvermögen. Räumliches Vorstellungsvermögen. Begabungen und Fähigkeiten messen Beispielheft Inhalt Allgemeine Einführung Test Eins: Test Zwei: Test Drei: Test Vier: Test Fünf: Argumentationsvermögen Auffassungsvermögen Zahlenvermögen Sprachverständnis Räumliches Vorstellungsvermögen

Mehr

Satz. Für jede Herbrand-Struktur A für F und alle t D(F ) gilt offensichtlich

Satz. Für jede Herbrand-Struktur A für F und alle t D(F ) gilt offensichtlich Herbrand-Strukturen und Herbrand-Modelle Sei F eine Aussage in Skolemform. Dann heißt jede zu F passende Struktur A =(U A, I A )eineherbrand-struktur für F, falls folgendes gilt: 1 U A = D(F ), 2 für jedes

Mehr

Woche 1: Was ist NLP? Die Geschichte des NLP.

Woche 1: Was ist NLP? Die Geschichte des NLP. Woche 1: Was ist NLP? Die Geschichte des NLP. Liebe(r) Kursteilnehmer(in)! Im ersten Theorieteil der heutigen Woche beschäftigen wir uns mit der Entstehungsgeschichte des NLP. Zuerst aber eine Frage: Wissen

Mehr

Lineare Funktionen. 1 Proportionale Funktionen 3 1.1 Definition... 3 1.2 Eigenschaften... 3. 2 Steigungsdreieck 3

Lineare Funktionen. 1 Proportionale Funktionen 3 1.1 Definition... 3 1.2 Eigenschaften... 3. 2 Steigungsdreieck 3 Lineare Funktionen Inhaltsverzeichnis 1 Proportionale Funktionen 3 1.1 Definition............................... 3 1.2 Eigenschaften............................. 3 2 Steigungsdreieck 3 3 Lineare Funktionen

Mehr

Grundlagen der Künstlichen Intelligenz

Grundlagen der Künstlichen Intelligenz Grundlagen der Künstlichen Intelligenz 27. Aussagenlogik: Logisches Schliessen und Resolution Malte Helmert Universität Basel 28. April 2014 Aussagenlogik: Überblick Kapitelüberblick Aussagenlogik: 26.

Mehr

Softwarelösungen: Versuch 4

Softwarelösungen: Versuch 4 Softwarelösungen: Versuch 4 Nichtstun in Schleife wird ersetzt durch zeitweilige Zurücknahme der Anforderung, um es anderen Prozessen zu erlauben, die Ressource zu belegen: /* Prozess 0 */ wiederhole flag[0]

Mehr

Zusammenfassung. Satz. 1 Seien F, G Boolesche Ausdrücke (in den Variablen x 1,..., x n ) 2 Seien f : B n B, g : B n B ihre Booleschen Funktionen

Zusammenfassung. Satz. 1 Seien F, G Boolesche Ausdrücke (in den Variablen x 1,..., x n ) 2 Seien f : B n B, g : B n B ihre Booleschen Funktionen Zusammenfassung Zusammenfassung der letzten LV Einführung in die Theoretische Informatik Woche 6 Harald Zankl Institut für Informatik @ UIBK Wintersemester 2014/2015 Satz 1 Seien F, G Boolesche Ausdrücke

Mehr

Anleitung über den Umgang mit Schildern

Anleitung über den Umgang mit Schildern Anleitung über den Umgang mit Schildern -Vorwort -Wo bekommt man Schilder? -Wo und wie speichert man die Schilder? -Wie füge ich die Schilder in meinen Track ein? -Welche Bauteile kann man noch für Schilder

Mehr

2.11 Kontextfreie Grammatiken und Parsebäume

2.11 Kontextfreie Grammatiken und Parsebäume 2.11 Kontextfreie Grammatiken und Parsebäume Beispiel: Beispiel (Teil 3): Beweis für L(G) L: Alle Strings aus L der Länge 0 und 2 sind auch in L(G). Als Induktionsannahme gehen wir davon aus, dass alle

Mehr

4 Aufzählungen und Listen erstellen

4 Aufzählungen und Listen erstellen 4 4 Aufzählungen und Listen erstellen Beim Strukturieren von Dokumenten und Inhalten stellen Listen und Aufzählungen wichtige Werkzeuge dar. Mit ihnen lässt sich so ziemlich alles sortieren, was auf einer

Mehr

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen Binäre Bäume 1. Allgemeines Binäre Bäume werden grundsätzlich verwendet, um Zahlen der Größe nach, oder Wörter dem Alphabet nach zu sortieren. Dem einfacheren Verständnis zu Liebe werde ich mich hier besonders

Mehr

Lieferschein Dorfstrasse 143 CH - 8802 Kilchberg Telefon 01 / 716 10 00 Telefax 01 / 716 10 05 info@hp-engineering.com www.hp-engineering.

Lieferschein Dorfstrasse 143 CH - 8802 Kilchberg Telefon 01 / 716 10 00 Telefax 01 / 716 10 05 info@hp-engineering.com www.hp-engineering. Lieferschein Lieferscheine Seite 1 Lieferscheine Seite 2 Inhaltsverzeichnis 1. STARTEN DER LIEFERSCHEINE 4 2. ARBEITEN MIT DEN LIEFERSCHEINEN 4 2.1 ERFASSEN EINES NEUEN LIEFERSCHEINS 5 2.1.1 TEXTFELD FÜR

Mehr

Modellbildungssysteme: Pädagogische und didaktische Ziele

Modellbildungssysteme: Pädagogische und didaktische Ziele Modellbildungssysteme: Pädagogische und didaktische Ziele Was hat Modellbildung mit der Schule zu tun? Der Bildungsplan 1994 formuliert: "Die schnelle Zunahme des Wissens, die hohe Differenzierung und

Mehr

LU-Zerlegung. Zusätze zum Gelben Rechenbuch. Peter Furlan. Verlag Martina Furlan. Inhaltsverzeichnis. 1 Definitionen.

LU-Zerlegung. Zusätze zum Gelben Rechenbuch. Peter Furlan. Verlag Martina Furlan. Inhaltsverzeichnis. 1 Definitionen. Zusätze zum Gelben Rechenbuch LU-Zerlegung Peter Furlan Verlag Martina Furlan Inhaltsverzeichnis Definitionen 2 (Allgemeine) LU-Zerlegung 2 3 Vereinfachte LU-Zerlegung 3 4 Lösung eines linearen Gleichungssystems

Mehr

1. Adressen für den Serienversand (Briefe Katalogdruck Werbung/Anfrage ) auswählen. Die Auswahl kann gespeichert werden.

1. Adressen für den Serienversand (Briefe Katalogdruck Werbung/Anfrage ) auswählen. Die Auswahl kann gespeichert werden. Der Serienversand Was kann man mit der Maske Serienversand machen? 1. Adressen für den Serienversand (Briefe Katalogdruck Werbung/Anfrage ) auswählen. Die Auswahl kann gespeichert werden. 2. Adressen auswählen,

Mehr

Enigmail Konfiguration

Enigmail Konfiguration Enigmail Konfiguration 11.06.2006 Steffen.Teubner@Arcor.de Enigmail ist in der Grundkonfiguration so eingestellt, dass alles funktioniert ohne weitere Einstellungen vornehmen zu müssen. Für alle, die es

Mehr

Grundfunktionen und Bedienung

Grundfunktionen und Bedienung Kapitel 13 Mit der App Health ist eine neue Anwendung in ios 8 enthalten, die von vorangegangenen Betriebssystemen bislang nicht geboten wurde. Health fungiert dabei als Aggregator für die Daten von Fitness-

Mehr

Dokumentation. estat Version 2.0

Dokumentation. estat Version 2.0 Dokumentation estat Version 2.0 Installation Die Datei estat.xla in beliebiges Verzeichnis speichern. Im Menü Extras AddIns... Durchsuchen die Datei estat.xla auswählen. Danach das Auswahlhäkchen beim

Mehr

Die Klassen P und NP. Dr. Eva Richter. 29. Juni 2012

Die Klassen P und NP. Dr. Eva Richter. 29. Juni 2012 Die Klassen P und NP Dr. Eva Richter 29. Juni 2012 1 / 35 Die Klasse P P = DTIME(Pol) Klasse der Probleme, die sich von DTM in polynomieller Zeit lösen lassen nach Dogma die praktikablen Probleme beim

Mehr

Wie halte ich Ordnung auf meiner Festplatte?

Wie halte ich Ordnung auf meiner Festplatte? Wie halte ich Ordnung auf meiner Festplatte? Was hältst du von folgender Ordnung? Du hast zu Hause einen Schrank. Alles was dir im Wege ist, Zeitungen, Briefe, schmutzige Wäsche, Essensreste, Küchenabfälle,

Mehr

Algorithmische Mathematik

Algorithmische Mathematik Algorithmische Mathematik Wintersemester 2013 Prof. Dr. Marc Alexander Schweitzer und Dr. Einar Smith Patrick Diehl und Daniel Wissel Übungsblatt 6. Abgabe am 02.12.2013. Aufgabe 1. (Netzwerke und Definitionen)

Mehr

Codierungstheorie Rudolf Scharlau, SoSe 2006 9

Codierungstheorie Rudolf Scharlau, SoSe 2006 9 Codierungstheorie Rudolf Scharlau, SoSe 2006 9 2 Optimale Codes Optimalität bezieht sich auf eine gegebene Quelle, d.h. eine Wahrscheinlichkeitsverteilung auf den Symbolen s 1,..., s q des Quellalphabets

Mehr

Lösungsmethoden gewöhnlicher Differentialgleichungen (Dgl.)

Lösungsmethoden gewöhnlicher Differentialgleichungen (Dgl.) Lösungsmethoden gewöhnlicher Dierentialgleichungen Dgl) Allgemeine und partikuläre Lösung einer gewöhnlichen Dierentialgleichung Eine Dierentialgleichung ist eine Gleichung! Zum Unterschied von den gewöhnlichen

Mehr

EM-Wellen. david vajda 3. Februar 2016. Zu den Physikalischen Größen innerhalb der Elektrodynamik gehören:

EM-Wellen. david vajda 3. Februar 2016. Zu den Physikalischen Größen innerhalb der Elektrodynamik gehören: david vajda 3. Februar 2016 Zu den Physikalischen Größen innerhalb der Elektrodynamik gehören: Elektrische Stromstärke I Elektrische Spannung U Elektrischer Widerstand R Ladung Q Probeladung q Zeit t Arbeit

Mehr

4. AUSSAGENLOGIK: SYNTAX. Der Unterschied zwischen Objektsprache und Metasprache lässt sich folgendermaßen charakterisieren:

4. AUSSAGENLOGIK: SYNTAX. Der Unterschied zwischen Objektsprache und Metasprache lässt sich folgendermaßen charakterisieren: 4. AUSSAGENLOGIK: SYNTAX 4.1 Objektsprache und Metasprache 4.2 Gebrauch und Erwähnung 4.3 Metavariablen: Verallgemeinerndes Sprechen über Ausdrücke von AL 4.4 Die Sprache der Aussagenlogik 4.5 Terminologie

Mehr