Sprungmarken

Servicenavigation

       

Hauptnavigation

Bereichsnavigation

Theoretische Informatik für Studierende der angewandten Informatik -- Fragen

Grundvorlesung

"Theoretische Informatik für Studierende der angewandten Informatik"

Beispiele für Prüfungsfragen


In der folgenden Liste sind einige Prüfungsfragen aufgeführt, die hilfreich sein könnten, um den Stand der Vorbereitung auf die Prüfung zu testen. Es ist in jedem Fall sinnvoll, zuerst zu lernen und dann erst anhand der Fragen zu überprüfen, wie gut man Fragen zum Stoff beantworten kann. In der Prüfung werden die Fragen meist ein wenig variieren, so dass ein bloßes Auswendiglernen der Lösung nicht zum Erfolg führen kann. Insbesondere ist die Liste mit Sicherheit nicht vollständig. Die Anmerkungen in Klammern geben jeweils Varianten der Frage an. Beim Üben der Antworten ist zu beachten, dass man die Fragen umfassend beantworten kann, dazu gehören insbesondere auch die zugrundeliegenden Definitionen sowie Begründungen/Beweise für die Antwort. Der Schwierigkeitsgrad der Fragen ist recht verschieden. Besonders wichtig für das Bestehen der Prüfung ist das Verständnis der Grundlagen und das Beherrschen der einfacheren Fragen.

Weitere Beispielfragen findet man im Buch Theoretische Informatik von Ingo Wegener, Kapitel 9.2.



  1. Erläutere Aufbau und Arbeitsweise einer Turingmaschine.
  2. Was besagt die (erweiterte) churchsche These?
  3. Welche Fehlerarten gibt es bei randomisierten Algorithmen? Was sind die zugehörigen Komplexitätsklassen?
  4. Was ist der Unterschied zwischen Las-Vegas- und Monte-Carlo-Algorithmen? Was sind die zugehörigen Komplexitätsklassen?
  5. Wie sind die Komplexitätsklassen P und NP (ZPP, RP, ...) definiert? Welche Zusammenhänge bestehen zwischen den Komplexitätsklassen?
  6. Zeige, dass RP eine Teilmenge von BPP ist (analog für andere Inklusionen).
  7. Zeige, dass EP=ZPP.
  8. Gib den Algorithmus für den Äquivalenztest multilinearer Ausdrücke an und analysiere ihn.
  9. Zeige, dass ZPP(1/3)=ZPP(1/10). Wieviele Iterationen sind nötig?
  10. Was versteht man unter Abschluss gegen Komplementbildung bzw. Durchschnitt  (Vereinigung, ...)? Gib für P, NP und BPP (bzw.  die Klassen der Chomsky-Hierarchie) an, gegen welche Operationen sie abgeschlossen sind.
  11. Wie arbeitet eine nichtdeterministische Turingmaschine? Was ist der Zusammenhang zu randomisierten Turingmaschinen?
  12. Zeige, dass HC in NP liegt.  (Analog für andere Probleme)
  13. Definiere den Begriff NP-vollständig (NP-schwer, ...). Was ist die Motivation für die NP-Vollständigkeitstheorie?
  14. Definiere polynomielle Reduktionen. Welche Folgerungen kann man daraus ziehen, dass ein Problem A auf B reduzierbar ist?
  15. Worin bestehen die Unterschiede zwischen polynomiellen Reduktionen und Turing-Reduktionen?
  16. Gib die Reduktion von 3-SAT auf Independent Set an (analog für andere Reduktionen aus der Vorlesung).
  17. Zeige, dass polynomielle Reduktionen reflexiv und transitiv sind.
  18. Worin besteht der Zusammenhang zwischen den Entscheidungs- und Optimierungsvarianten des TSP-Problems (analog für andere Probleme)?
  19. Wie kann man eine NTM umformen, so dass sie nach dem Rate-Verifikationsmodus arbeitet?
  20. Was ist eine stereotype TM und wie kann man gewöhnliche TMs durch stereotype TMs simulieren?
  21. Wie kann man nichtdetermistische Algorithmen in deterministische Algorithmen umformen?
  22. Gib die logikorientierte Charakterisierung von NP an und beweise ihre Korrektheit.
  23. Was besagt der Satz von Cook?  Wie kann man ihn für NP-Vollständigkeitsbeweise benutzen?
  24. Stelle die wesentlichen Beweisideen des Satzes von Cook dar.
  25. Definiere die Begriffe rekursiv und rekursiv aufzählbar und erläutere den Unterschied.
  26. Welche dieser Eigenschaften hat die Diagonalsprache (oder das PKP)? Beweise Deine Behauptung.
  27. Was sind Entscheidbarkeitsreduktionen und wie kann man sie nutzen?
  28. Erläutere und beweise den Satz von Rice.
  29. Welche Beschreibungsformen für reguläre Sprachen gibt es? Erkläre, wie man einen DFA in einen regulären Ausdruck umformen kann (analog für die anderen Umformungen).
  30. Erkläre Aufbau und Funktionsweise eines DFAs (NFAs).
  31. Gib einen DFA für die Sprache L={w | w enthält das Teilwort aaa} an. (Analog für andere einfache Beispielsprachen.)
  32. Wie kann man beweisen, dass eine gegebene Sprache regulär (bzw. nicht regulär) ist?
  33. Gib das Pumping-Lemma für reguläre Sprachen und beweise es.
  34. Wende das Pumping-Lemma auf die Sprache L={w | in w kommt der Buchstabe a mindestens sooft wie der Buchstabe b vor} an. (Analog für andere einfache Beispielsprachen).
  35. Wie minimiert man DFAs? Zeige die Korrektheit des Algorithmus.
  36. Erkläre die Potenzmengenkonstruktion. Zeige, dass DFAs exponentiell mehr Zustände als NFAs haben können.
  37. Wie kann man bei der Potenzmengenkonstruktion die Betrachtung nicht erreichbarer Zustände vermeiden?
  38. Gib einen effizienten Algorithmus für das Endlichkeitsproblem für reguläre Sprachen an, die durch DFAs beschrieben sind (analog für andere Probleme auf regulären Sprachen).
  39. Gegen welche Operationen sind die regulären Sprachen abgeschlossen? Beweise deine Behauptung für Durchschnitt (analog für andere Operationen).
  40. Was sind reguläre Ausdrücke?
  41. Gib einen regulären Ausdruck für die Sprache L={w | w enthält Teilwort aaa} an. (Analog für andere einfache Beispielsprachen.)
  42. Wie sind reguläre Grammatiken definiert? Gib eine reguläre Grammatik für L={w | w enthält Teilwort aaa} an. (Analog für andere einfache Beispielsprachen.)
  43. Zeige, wie man aus einem DFA M eine reguläre Grammatik für L(M) konstruieren kann.
  44. Zeige, wie man aus einer regulären Grammatik G einen NFA für L(G) konstruieren kann.
  45. Aus welchen Sprachklassen besteht die Chomsky-Hierarchie? Wie sind die Sprachklassen definiert? Welche Inklusionen gelten zwischen den Sprachklassen? Warum sind diese Inklusionen echt?
  46. Gib für die einzelnen Klassen der Chomsky-Hierarchie an, ob sie die Sprache L={w | in w kommt der Buchstabe a mindestens sooft wie der Buchstabe b vor} enthalten (analog für andere einfache Beispielsprachen). Beweise deine Behauptung.
  47. Gib an, welche Sprachklassen der Chomsky-Hierarchie gegen Vereinigung abgeschlossen sind. Beweise deine Behauptung (analog für andere Abschlusseigenschaften).
  48. Gib zu den einzelnen Klassen der Chomsky-Hierarchie die zugehörigen Maschinenmodelle an.
  49. Zeige, dass alle Sprachen mit Chomsky-0-Grammatiken rekursiv aufzählbar sind.
  50. Zeige, dass alle rekursiv aufzählbaren Sprachen eine Chomsky-0-Grammatik haben.
  51. Wie sind kontextfreie Sprachen definiert?
  52. Zeige, dass die Sprache L={w | in w kommt der Buchstabe a mindestens sooft wie der Buchstabe b vor} kontextfrei ist (analog für andere einfache Beispielsprachen).
  53. Was ist die wichtigste Motivation für die Betrachtung der kontextfreien Sprachen?
  54. Gib das Pumping-Lemma für kontextfreie Sprachen an und beweise es (analog für Ogdens Lemma).
  55. Was ist die Chomsky-Normalform und wofür benötigt man sie? Wie formt man eine kontextfreie Grammatik in Chomsky-Normalform um?
  56. Was versteht man unter dem Wortproblem für kontextfreie Sprachen? Gib einen Algorithmus dafür an und analysiere seine Rechenzeit.
  57. Wie entfernt man nutzlose Variablen?
  58. Gegen welche Operationen sind die kontextfreien Sprachen abgeschlossen bzw. nicht abgeschlossen? Beweise deine Behauptung für den Durchschnitt (analog für andere Operationen).
  59. Wie ist die Greibach-Normalform definiert? Wie kann man kontextfreie Grammatiken in Greibach-Normalform umformen?
  60. Was ist ein (nicht)deterministischer Kellerautomat?
  61. Welche Akzeptanzmodi für NPDAs kennst Du? Sind diese äquivalent?
  62. Was haben NPDAs mit kontextfreien Sprachen zu tun? Beweise deine Behauptung.
  63. Was sind LR(k)-Grammatiken? Wie funktioniert ein LR(k)-Parser?
  64. Was sind lineare Programme? Wie sieht ihre Standardform aus? Was ist der Unterschied zu ganzzahligen Programmen?
  65. Zeige, wie man MAX-k-SAT als ganzzahliges Programm formulieren kann (analog für andere Probleme).
  66. Welche Eigenschaften hat die Menge der Punkte, die alle Nebenbedingungen eines linearen Programms erfüllen?
  67. Beschreibe den Simplex-Algorithmus.
  68. Erläutere die Ideen des randomisierten Rundens.


12.7.2006 - Detlef Sieling