Grundbegriffe der Informatik

Save this PDF as:
 WORD  PNG  TXT  JPG

Größe: px
Ab Seite anzeigen:

Download "Grundbegriffe der Informatik"

Transkript

1 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

2 Was kann man mit endlichen Akzeptoren? manche Sprachen kann man mit endlichen Akzeptoren erkennen z. B. {a} + {b} {b} + {a} manche Sprachen nicht z. B. {a k b k k N 0 } Charakterisierung der erkennbaren Sprachen? i. e. Beschreibung ohne Benutzung endlicher Akzeptoren 2/25

3 Überblick Reguläre Ausdrücke Rechtslineare Grammatiken Überblick 3/25

4 Überblick Reguläre Ausdrücke Rechtslineare Grammatiken Reguläre Ausdrücke 4/25

5 Zum Begriff regulärer Ausdruck Ursprung: Stephen Kleene: Representation of Events in Nerve Nets and Finite Automata, in: Shannon, McCarthy, Ashby (eds.): Automata Studies, 1956 heute: verschiedene Bedeutungen in dieser Vorlesung: die klassische Definition Verallgemeinerung: regular expressions sehr nützlich verschiedene Varianten (bei Syntax, bei Semantik) emacs, grep, sed,... Java (java.util.regex), Python, Perl,... Reguläre Ausdrücke 5/25

6 Definition regulärer Ausdrücke (1) sei Z das Alphabet Z = {, (, ), *, O/} sei A ein Alphabet, das kein Zeichen aus Z enthält regulärer Ausdruck über A ist eine Zeichenfolge über dem Alphabet A Z, die gewissen Vorschriften genügt. Menge der regulären Ausdrücke ist wie folgt festgelegt: O/ ist ein regulärer Ausdruck. Für jedes a A ist a ein regulärer Ausdruck. Wenn R1 und R 2 reguläre Ausdrücke sind, dann sind auch (R 1 R 2 ) und (R 1 R 2 ) reguläre Ausdrücke. Wenn R ein regulärer Ausdruck ist, dann auch (R*). Nichts anderes sind reguläre Ausdrücke. Reguläre Ausdrücke 6/25

7 Klammereinsparungsregeln Stern- vor Punktrechnung Punkt- vor Strichrechnung Beispiel: R 1 R 2 R 3 * ist als (R 1 (R 2 (R 3 *))) zu verstehen. Bei mehreren gleichen binären Operatoren gilt das als links geklammert Beispiel R 1 R 2 R 3 ist als ((R 1 R 2 ) R 3 ) zu verstehen. Reguläre Ausdrücke 7/25

8 Beispiele O/ 0 1 (01) ((01)0) (((01)0)0) ((01)(00)) (O/ 1) (0 1) ((0(0 1)) 1) (0 (1 (0 0))) (O/*) (0*) ((10)(1*)) (((10)1)*) ((0*)*) (((((01)1)*)*) (O/*)) Mit Klammereinsparungsregeln: (00) O/ (0 1) 1 (0 (1 (0 0))) O/* 0* 101* (101)* 0** (011)** O/* Reguläre Ausdrücke 8/25

9 Nichtbeispiele keine regulären Ausdrücke über {0, 1}: ( 1) vor fehlt ein regulärer Ausdruck O/ vor und hinter fehlt je ein regulärer Ausdruck ()01 zwischen ( und ) fehlt ein regulärer Ausdruck ((01) Klammern müssen gepaart auftreten *(01) vor * fehlt ein regulärer Ausdruck 2* 2 ist nicht Zeichen des Alphabetes Reguläre Ausdrücke 9/25

10 Definition regulärer Ausdrücke (2) alternative Formulierung mit Hilfe einer kontextfreien Grammatik reguläre Ausdrücke über Alphabet A sind die Wörter, die von der folgenden Grammatik erzeugt werden: G = ({R}, {, (, ), *, O/} A, R, P) und P = {R O/, R (R R), R (RR), R (R*)} {R a a A} Reguläre Ausdrücke 10/25

11 Beschriebene formale Sprache Die von einem regulären Ausdruck R beschriebene formale Sprache R ist wie folgt definiert: O/ = {} (d. h. die leere Menge). Für a A ist a = {a}. Sind R 1 und R 2 reguläre Ausdrücke, so ist R 1 R 2 = R 1 R 2. Sind R 1 und R 2 reguläre Ausdrücke, so ist R 1 R 2 = R 1 R 2. Ist R ein regulärer Ausdruck, so ist R* = R. die Definition folgt der für reguläre Ausdrücke Reguläre Ausdrücke 11/25

12 Beschriebene formale Sprache Die von einem regulären Ausdruck R beschriebene formale Sprache R ist wie folgt definiert: O/ = {} (d. h. die leere Menge). Für a A ist a = {a}. Sind R 1 und R 2 reguläre Ausdrücke, so ist R 1 R 2 = R 1 R 2. Sind R 1 und R 2 reguläre Ausdrücke, so ist R 1 R 2 = R 1 R 2. Ist R ein regulärer Ausdruck, so ist R* = R. die Definition folgt der für reguläre Ausdrücke Reguläre Ausdrücke 11/25

13 Beispiele für R Betrachten wir drei einfache Beispiele: R = a b: Dann ist R = a b = a b = {a} {b} = {a, b}. R = (a b)*: Dann ist R = (a b)* = a b = {a, b}. R = (a*b*)*: Dann ist R = (a*b*)* = a*b* = ( a* b* ) = ( a b ) = ({a} {b} ). Nachdenken: ({a} {b} ) = {a, b} Reguläre Ausdrücke 12/25

14 Beispiele für R Betrachten wir drei einfache Beispiele: R = a b: Dann ist R = a b = a b = {a} {b} = {a, b}. R = (a b)*: Dann ist R = (a b)* = a b = {a, b}. R = (a*b*)*: Dann ist R = (a*b*)* = a*b* = ( a* b* ) = ( a b ) = ({a} {b} ). Nachdenken: ({a} {b} ) = {a, b} Reguläre Ausdrücke 12/25

15 Beispiele für R Betrachten wir drei einfache Beispiele: R = a b: Dann ist R = a b = a b = {a} {b} = {a, b}. R = (a b)*: Dann ist R = (a b)* = a b = {a, b}. R = (a*b*)*: Dann ist R = (a*b*)* = a*b* = ( a* b* ) = ( a b ) = ({a} {b} ). Nachdenken: ({a} {b} ) = {a, b} Reguläre Ausdrücke 12/25

16 Beispiele für R Betrachten wir drei einfache Beispiele: R = a b: Dann ist R = a b = a b = {a} {b} = {a, b}. R = (a b)*: Dann ist R = (a b)* = a b = {a, b}. R = (a*b*)*: Dann ist R = (a*b*)* = a*b* = ( a* b* ) = ( a b ) = ({a} {b} ). Nachdenken: ({a} {b} ) = {a, b} Reguläre Ausdrücke 12/25

17 Wie ist das denn eigentlich? Kann man allgemein von regulären Ausdrücken R 1, R 2 feststellen, ob R 1 = R 2 ist? Geht das algorithmisch? Welche formalen Sprachen sind denn durch reguläre Ausdrücke beschreibbar? Reguläre Ausdrücke 13/25

18 Äquivalenz regulärer Ausdrücke Es gibt Algorithmen, um für reguläre Ausdrücken R 1, R 2 festzustellen, ob R 1 = R 2 ist sogar konzeptionell ziemlich einfache Aber: Dieses Problem ist PSPACE-vollständig. Definition: siehe nächste Einheit d. h. jedenfalls: alle bisher bekannten (!) Algorithmen sind im allgemeinen sehr sehr sehr langsam, Laufzeit z. B. 2 n2... Man weiß nicht, ob es vielleicht doch Algorithmen mit polynomieller Laufzeit für das Problem gibt, aber man sie nur noch nicht gefunden hat. Reguläre Ausdrücke 14/25

19 Charakterisierungen Satz Für jede formale Sprache L sind die folgenden drei Aussagen äquivalent: 1. L kann von einem endlichen Akzeptor erkannt werden. 2. L kann durch einen regulären Ausdruck beschrieben werden. 3. L kann von einer rechtslinearen Grammatik erzeugt werden. rechtslineare Grammatiken kommen gleich Eine formale Sprache, die die Eigenschaften des Satzes hat, heißt reguläre Sprache. Jede rechtslineare Grammatik ist eine kontextfreie Grammatik, also ist jede reguläre Sprache eine kontextfreie Sprache, aber nicht umgekehrt, wie man z. B. an {a k b k k N 0 } sieht. Reguläre Ausdrücke 15/25

20 Charakterisierungen Satz Für jede formale Sprache L sind die folgenden drei Aussagen äquivalent: 1. L kann von einem endlichen Akzeptor erkannt werden. 2. L kann durch einen regulären Ausdruck beschrieben werden. 3. L kann von einer rechtslinearen Grammatik erzeugt werden. rechtslineare Grammatiken kommen gleich Eine formale Sprache, die die Eigenschaften des Satzes hat, heißt reguläre Sprache. Jede rechtslineare Grammatik ist eine kontextfreie Grammatik, also ist jede reguläre Sprache eine kontextfreie Sprache, aber nicht umgekehrt, wie man z. B. an {a k b k k N 0 } sieht. Reguläre Ausdrücke 15/25

21 Zum Beweis des Satzes konstruktiv: zu gegebenem endlichen Akzeptor A ein regulärer Ausdruck R mit R = L(A) mittel schwer, z. B. inspiriert vom Algorithmus von Warshall zu gegebenem regulären Ausdruck R eine rechtslineare Grammatik G mit L(G) = R : relativ leicht zu gegebener rechtslinearer Grammatik G ein endlicher Akzeptor A mit L(A) = L(G): am schwierigsten beachte: für die umgekehrten Richtungen braucht man keine expliziten Konstruktionen Reguläre Ausdrücke 16/25

22 Zum Beweis des Satzes konstruktiv: zu gegebenem endlichen Akzeptor A ein regulärer Ausdruck R mit R = L(A) mittel schwer, z. B. inspiriert vom Algorithmus von Warshall Kernidee: R i,0,j = reg. Aus. für {x X f (z i, x) = z j } { {ε} falls i = j {} falls i j R i,k,j = (R i,k 1,j (R i,k 1,k 1 (R k 1,k 1,k 1 )* R k 1,k 1,j )) zu gegebenem regulären Ausdruck R eine rechtslineare Grammatik G mit L(G) = R : relativ leicht zu gegebener rechtslinearer Grammatik G ein endlicher Akzeptor A mit L(A) = L(G): am schwierigsten beachte: für die umgekehrten Richtungen braucht man keine expliziten Konstruktionen Reguläre Ausdrücke 16/25

23 Zum Beweis des Satzes konstruktiv: zu gegebenem endlichen Akzeptor A ein regulärer Ausdruck R mit R = L(A) mittel schwer, z. B. inspiriert vom Algorithmus von Warshall zu gegebenem regulären Ausdruck R eine rechtslineare Grammatik G mit L(G) = R : relativ leicht zu gegebener rechtslinearer Grammatik G ein endlicher Akzeptor A mit L(A) = L(G): am schwierigsten beachte: für die umgekehrten Richtungen braucht man keine expliziten Konstruktionen Reguläre Ausdrücke 16/25

24 Zum Beweis des Satzes konstruktiv: zu gegebenem endlichen Akzeptor A ein regulärer Ausdruck R mit R = L(A) mittel schwer, z. B. inspiriert vom Algorithmus von Warshall zu gegebenem regulären Ausdruck R eine rechtslineare Grammatik G mit L(G) = R : relativ leicht zu gegebener rechtslinearer Grammatik G ein endlicher Akzeptor A mit L(A) = L(G): am schwierigsten beachte: für die umgekehrten Richtungen braucht man keine expliziten Konstruktionen Reguläre Ausdrücke 16/25

25 Zum Beweis des Satzes konstruktiv: zu gegebenem endlichen Akzeptor A ein regulärer Ausdruck R mit R = L(A) mittel schwer, z. B. inspiriert vom Algorithmus von Warshall zu gegebenem regulären Ausdruck R eine rechtslineare Grammatik G mit L(G) = R : relativ leicht Idee: z. B. für (R 1 R 2 ) gegeben G 1 = (N 1, T 1, X 1, P 1 ) für R 1 gegeben G2 = (N 2, T 2, X 2, P 2 ) für R 2 mit N 1 N 2 = G = ({X0 } N 1 N 2, T 1 T 2, X 0, {X 0 X 1 X 2 } P 1 P 2 ) Grammatik für (R 1 R 2 ) (mit neuem X 0 / N 1 N 2 ) zu gegebener rechtslinearer Grammatik G ein endlicher Akzeptor A mit L(A) = L(G): am schwierigsten beachte: für die umgekehrten Richtungen braucht man keine expliziten Konstruktionen Reguläre Ausdrücke 16/25

26 Zum Beweis des Satzes konstruktiv: zu gegebenem endlichen Akzeptor A ein regulärer Ausdruck R mit R = L(A) mittel schwer, z. B. inspiriert vom Algorithmus von Warshall zu gegebenem regulären Ausdruck R eine rechtslineare Grammatik G mit L(G) = R : relativ leicht zu gegebener rechtslinearer Grammatik G ein endlicher Akzeptor A mit L(A) = L(G): am schwierigsten beachte: für die umgekehrten Richtungen braucht man keine expliziten Konstruktionen Reguläre Ausdrücke 16/25

27 Zum Beweis des Satzes konstruktiv: zu gegebenem endlichen Akzeptor A ein regulärer Ausdruck R mit R = L(A) mittel schwer, z. B. inspiriert vom Algorithmus von Warshall zu gegebenem regulären Ausdruck R eine rechtslineare Grammatik G mit L(G) = R : relativ leicht zu gegebener rechtslinearer Grammatik G ein endlicher Akzeptor A mit L(A) = L(G): am schwierigsten beachte: für die umgekehrten Richtungen braucht man keine expliziten Konstruktionen Reguläre Ausdrücke 16/25

28 Zum Beweis des Satzes konstruktiv: zu gegebenem endlichen Akzeptor A ein regulärer Ausdruck R mit R = L(A) mittel schwer, z. B. inspiriert vom Algorithmus von Warshall zu gegebenem regulären Ausdruck R eine rechtslineare Grammatik G mit L(G) = R : relativ leicht zu gegebener rechtslinearer Grammatik G ein endlicher Akzeptor A mit L(A) = L(G): am schwierigsten beachte: für die umgekehrten Richtungen braucht man keine expliziten Konstruktionen Reguläre Ausdrücke 16/25

29 Was ist wichtig Das sollten Sie mitnehmen: Definition klassischer regulärer Ausdrücke atomare: O/ a A zusammengesetzte: (R 1 R 2) (R 1R 2) (R)* wissen: reguläre Ausdrücke und die Verallgemeinerung Regular Expressions sind z. B. bei Textverarbeitungsaufgaben manchmal nützlich Das sollten Sie üben: zu L ein R mit R = L konstruieren zu R das R bestimmen Reguläre Ausdrücke 17/25

30 Überblick Reguläre Ausdrücke Rechtslineare Grammatiken Rechtslineare Grammatiken 18/25

31 Motivation Mit kontextfreien Grammatiken kann man jedenfalls zum Teil andere formale Sprachen erzeugen, als man mit endlichen Akzeptoren erkennen kann. Beispiel: G = ({X }, {a, b}, X, {X ax b ε}) erzeugt {a k b k k N 0 } und diese Sprache ist nicht regulär. Kann man kontextfreie Grammatiken so einschränken, dass sie zu endlichen Akzeptoren passen? Rechtslineare Grammatiken 19/25

32 Rechtslineare Grammatiken: Definition Eine rechtslineare Grammatik ist eine kontextfreie Grammatik G = (N, T, S, P), die der folgenden Einschränkung genügt: Jede Produktion ist entweder von der Form X w mit w T oder von der Form X wy mit w T und X, Y N. Auf der rechten Seite einer Produktion darf also höchstens ein Nichterminalsymbol vorkommen, und wenn dann nur als letztes Symbol. Rechtslineare Grammatiken 20/25

33 Rechtslineare Grammatiken: Beispiel G = ({X }, {a, b}, X, {X abx bbax ε} L(G) = (ab bba)* Rechtslineare Grammatiken 21/25

34 Rechtslineare Grammatiken: Nichtbeispiel G = ({X }, {a, b}, X, {X ax b ε}) ist nicht rechtslinear, denn in X ax b steht das Nichtterminalsymbol X nicht am rechten Ende. Da die erzeugte formale Sprache nicht regulär ist, kann es auch gar keine rechtslineare Grammatik geben, die {a k b k k N 0 } erzeugt. Rechtslineare Grammatiken 22/25

35 Sprechweisen Rechtslineare Grammatiken heißen auch Typ-3-Grammatiken. Kontextfreien Grammatiken heißen auch Typ-2-Grammatiken. Man ahnt schon: Es gibt auch noch Typ-1-Grammatiken und Typ-0-Grammatiken, die wir hier nicht weiter betrachten werden. Wenn für ein i {0, 1, 2, 3} eine formale Sprache L von einer Typ-i-Grammatik erzeugt wird, dann sagt man auch, L sei eine Typ-i-Sprache oder kurz vom Typ i. Rechtslineare Grammatiken 23/25

36 Sprechweisen Rechtslineare Grammatiken heißen auch Typ-3-Grammatiken. Kontextfreien Grammatiken heißen auch Typ-2-Grammatiken. Man ahnt schon: Es gibt auch noch Typ-1-Grammatiken und Typ-0-Grammatiken, die wir hier nicht weiter betrachten werden. Wenn für ein i {0, 1, 2, 3} eine formale Sprache L von einer Typ-i-Grammatik erzeugt wird, dann sagt man auch, L sei eine Typ-i-Sprache oder kurz vom Typ i. Rechtslineare Grammatiken 23/25

37 Sprechweisen Rechtslineare Grammatiken heißen auch Typ-3-Grammatiken. Kontextfreien Grammatiken heißen auch Typ-2-Grammatiken. Man ahnt schon: Es gibt auch noch Typ-1-Grammatiken und Typ-0-Grammatiken, die wir hier nicht weiter betrachten werden. Wenn für ein i {0, 1, 2, 3} eine formale Sprache L von einer Typ-i-Grammatik erzeugt wird, dann sagt man auch, L sei eine Typ-i-Sprache oder kurz vom Typ i. Rechtslineare Grammatiken 23/25

38 Sprechweisen Rechtslineare Grammatiken heißen auch Typ-3-Grammatiken. Kontextfreien Grammatiken heißen auch Typ-2-Grammatiken. Man ahnt schon: Es gibt auch noch Typ-1-Grammatiken und Typ-0-Grammatiken, die wir hier nicht weiter betrachten werden. Wenn für ein i {0, 1, 2, 3} eine formale Sprache L von einer Typ-i-Grammatik erzeugt wird, dann sagt man auch, L sei eine Typ-i-Sprache oder kurz vom Typ i. Rechtslineare Grammatiken 23/25

39 Was ist wichtig Das sollten Sie mitnehmen: Definition rechtslineare Grammatiken Das sollten Sie üben: rechtslineare Grammatiken konstruieren (zu gegebenem Akzeptor, regulären Ausdruck, formaler Sprache) Rechtslineare Grammatiken 24/25

40 Zusammenfassung reguläre Ausdrücke werden von diversen Unix-Tools genutzt in manchen Programmiersprachen zur Textverarbeitung praktisch rechtslineare Grammatiken Zusammenfassung 25/25

Grundbegriffe der Informatik

Grundbegriffe der Informatik Grundbegriffe der Informatik Tutorium 27 29..24 FAKULTÄT FÜR INFORMATIK KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Definition

Mehr

Grundbegriffe der Informatik

Grundbegriffe der Informatik Grundbegriffe der Informatik Tutorium 4 26..25 INSTITUT FÜR THEORETISCHE INFORMATIK KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu

Mehr

Grundlagen der Informatik II. Teil I: Formale Modelle der Informatik

Grundlagen der Informatik II. Teil I: Formale Modelle der Informatik Grundlagen der Informatik II Teil I: Formale Modelle der Informatik 1 Einführung GdInfoII 1-2 Ziele/Fragestellungen der Theoretischen Informatik 1. Einführung abstrakter Modelle für informationsverarbeitende

Mehr

Grundbegriffe der Informatik

Grundbegriffe der Informatik Grundbegriffe der Informatik Einheit 8: kontextfreie Grammatiken Thomas Worsch Karlsruher Institut für Technologie, Fakultät für Informatik Wintersemester 2009/2010 1/37 Überblick Kontextfreie Grammatiken

Mehr

Formale Sprachen, reguläre und kontextfreie Grammatiken

Formale Sprachen, reguläre und kontextfreie Grammatiken Formale Sprachen, reguläre und kontextfreie Grammatiken Alphabet A: endliche Menge von Zeichen Wort über A: endliche Folge von Zeichen aus A A : volle Sprache über A: Menge der A-Worte formale Sprache

Mehr

Theoretische Informatik I

Theoretische Informatik I Theoretische Informatik I Einheit 2.4 Grammatiken 1. Arbeitsweise 2. Klassifizierung 3. Beziehung zu Automaten Beschreibungsformen für Sprachen Mathematische Mengennotation Prädikate beschreiben Eigenschaften

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

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

Theorie der Informatik

Theorie der Informatik Theorie der Informatik 6. Formale Sprachen und Grammatiken Malte Helmert Gabriele Röger Universität Basel 17. März 2014 Einführung Beispiel: Aussagenlogische Formeln Aus dem Logikteil: Definition (Syntax

Mehr

Einführung in die Informatik Grammars & Parsers

Einführung in die Informatik Grammars & Parsers Einführung in die Informatik Grammars & Parsers Grammatiken, Parsen von Texten Wolfram Burgard Cyrill Stachniss 12.1 Einleitung Wir haben in den vorangehenden Kapiteln meistens vollständige Java- Programme

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

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

Zusammenfassung. 1 Wir betrachten die folgende Signatur F = {+,,, 0, 1} sodass. 3 Wir betrachten die Gleichungen E. 4 Dann gilt E 1 + x 1

Zusammenfassung. 1 Wir betrachten die folgende Signatur F = {+,,, 0, 1} sodass. 3 Wir betrachten die Gleichungen E. 4 Dann gilt E 1 + x 1 Zusammenfassung Zusammenfassung der letzten LV Einführung in die Theoretische Informatik Woche 7 Harald Zankl Institut für Informatik @ UIBK Wintersemester 2014/2015 1 Wir betrachten die folgende Signatur

Mehr

Grundbegriffe der Informatik

Grundbegriffe der Informatik Grundbegriffe der Informatik Einheit 3: Alphabete (und Relationen, Funktionen, Aussagenlogik) Thomas Worsch Universität Karlsruhe, Fakultät für Informatik Oktober 2008 1/18 Überblick Alphabete ASCII Unicode

Mehr

Was bisher geschah: Formale Sprachen

Was bisher geschah: Formale Sprachen Was isher geschah: Formale Sprachen Alphaet, Wort, Sprache Operationen und Relationen auf Wörtern und Sprachen reguläre Ausdrücke: Syntax, Semantik, Äquivalenz Wortersetzungssysteme Wortersetzungsregeln

Mehr

Vorlesung Theoretische Informatik

Vorlesung Theoretische Informatik Vorlesung Theoretische Informatik Automaten und Formale Sprachen Hochschule Reutlingen Fakultät für Informatik Masterstudiengang Wirtschaftsinformatik überarbeitet von F. Laux (Stand: 09.06.2010) Sommersemester

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

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

Objektorientierte Programmierung. Kapitel 3: Syntaxdiagramme und Grammatikregeln

Objektorientierte Programmierung. Kapitel 3: Syntaxdiagramme und Grammatikregeln Stefan Brass: OOP (Java), 3. Syntaxdiagramme und Grammatikregeln 1/32 Objektorientierte Programmierung Kapitel 3: Syntaxdiagramme und Grammatikregeln Stefan Brass Martin-Luther-Universität Halle-Wittenberg

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

1. Der Begriff Informatik 2. Syntax und Semantik von Programmiersprachen. I.2. I.2. Grundlagen von von Programmiersprachen.

1. Der Begriff Informatik 2. Syntax und Semantik von Programmiersprachen. I.2. I.2. Grundlagen von von Programmiersprachen. 1. Der Begriff Informatik 2. Syntax und Semantik von Programmiersprachen I.2. I.2. Grundlagen von von Programmiersprachen. - 1 - 1. Der Begriff Informatik "Informatik" = Kunstwort aus Information und Mathematik

Mehr

Informatik IV Theoretische Informatik: Formale Sprachen und Automaten, Berechenbarkeit und NP-Vollständigkeit

Informatik IV Theoretische Informatik: Formale Sprachen und Automaten, Berechenbarkeit und NP-Vollständigkeit Informatik IV Theoretische Informatik: Formale Sprachen und Automaten, Berechenbarkeit und NP-Vollständigkeit Sommersemester 2011 Dozent: Prof. Dr. J. Rothe, Prof. Dr. M. Leuschel J. Rothe (HHU Düsseldorf)

Mehr

Formale Sprachen. Der Unterschied zwischen Grammatiken und Sprachen. Rudolf Freund, Marian Kogler

Formale Sprachen. Der Unterschied zwischen Grammatiken und Sprachen. Rudolf Freund, Marian Kogler Formale Sprachen Der Unterschied zwischen Grammatiken und Sprachen Rudolf Freund, Marian Kogler Es gibt reguläre Sprachen, die nicht von einer nichtregulären kontextfreien Grammatik erzeugt werden können.

Mehr

Was ist ein Compiler?

Was ist ein Compiler? Was ist ein Compiler? Was ist ein Compiler und worum geht es? Wie ist ein Compiler aufgebaut? Warum beschäftigen wir uns mit Compilerbau? Wie ist die Veranstaltung organisiert? Was interessiert Sie besonders?

Mehr

Grundbegriffe der Informatik Tutorium 7

Grundbegriffe der Informatik Tutorium 7 Grundbegriffe der Informatik Tutorium 7 Tutorium Nr. 16 Philipp Oppermann 16. Dezember 2014 KARLSRUHER INSTITUT FÜR TECHNOLOGIE KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum

Mehr

Grammatiken und die Chomsky-Hierarchie

Grammatiken und die Chomsky-Hierarchie Grammatiken und die Chomsky-Hierarchie Def.: Eine Grammatik G=(Σ,V,S,R) besteht aus endlichem Alphabet Σ endlicher Variablenmenge V mit V Σ= Startsymbol SєV endlicher Menge R с (V Σ) + x(v Σ)* von Ableitungsregeln

Mehr

Formale Sprachen und deren Grammatiken. Zusammenhang mit der Automatentheorie.

Formale Sprachen und deren Grammatiken. Zusammenhang mit der Automatentheorie. Formale Sprachen Formale Sprachen und deren Grammatiken. Zusammenhang mit der Automatentheorie. Inhaltsübersicht und Literatur Formale Sprachen: Definition und Darstellungen Grammatiken für formale Sprachen

Mehr

Programmieren I. Formale Sprachen. www.kit.edu. Institut für Angewandte Informatik

Programmieren I. Formale Sprachen. www.kit.edu. Institut für Angewandte Informatik Programmieren I Formale Sprachen KIT Universität des Landes Baden-Württemberg und nationales Großforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Formale Sprachen: Allgemeines Sprachen werden

Mehr

Mathematische Grundlagen der Informatik 2

Mathematische Grundlagen der Informatik 2 Zusammenfassung Math2I Mathematische Grundlagen der Informatik 2 Emanuel Duss emanuel.duss@gmail.com 12. April 2013 1 Zusammenfassung Math2I Mathematische Grundlagen der Informatik 2 Dieses Dokument basiert

Mehr

Sprachen/Grammatiken eine Wiederholung

Sprachen/Grammatiken eine Wiederholung Sprachen/Grammatiken eine Wiederholung Was sind reguläre Sprachen? Eigenschaften regulärer Sprachen Sprachen Begriffe Symbol: unzerlegbare Grundzeichen Alphabet: endliche Menge von Symbolen Zeichenreihe:

Mehr

Einführung in die Theoretische Informatik

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

Mehr

Theoretische Informatik

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:

Mehr

Theoretische Informatik I

Theoretische Informatik I Theoretische nformatik inheit 3 Kontextfreie Sprachen 1. Kontextfreie Grammatiken 2. Pushdown Automaten 3. igenschaften kontextfreier Sprachen Theoretische nformatik inheit 3.1 Kontextfreie Grammatiken

Mehr

Informatik I WS 07/08 Tutorium 24

Informatik I WS 07/08 Tutorium 24 Info I Tutorium 24 Informatik I WS 07/08 Tutorium 24 20.12.07 Bastian Molkenthin E-Mail: infotut@sunshine2k.de Web: http://infotut.sunshine2k.de Rückblick Semi-Thue-Systeme Ein Semi-Thue-System besteht

Mehr

7. Formale Sprachen und Grammatiken

7. Formale Sprachen und Grammatiken 7. Formale Sprachen und Grammatiken Computer verwenden zur Verarbeitung von Daten und Informationen künstliche, formale Sprachen (Maschinenspr., Assemblerspachen, Programmierspr., Datenbankspr., Wissensrepräsentationsspr.,...)

Mehr

Kapitel 2. Methoden zur Beschreibung von Syntax

Kapitel 2. Methoden zur Beschreibung von Syntax 1 Kapitel 2 Methoden zur Beschreibung von Syntax Grammatik, die sogar Könige zu kontrollieren weiß... aus Molière, Les Femmes Savantes (1672), 2. Akt 2 Ziele Zwei Standards zur Definition der Syntax von

Mehr

Grundbegriffe der Informatik

Grundbegriffe der Informatik Grundbegriffe der Informatik Kapitel 6: Induktives Vorgehen Thomas Worsch KIT, Institut für Theoretische Informatik Wintersemester 2015/2016 GBI Grundbegriffe der Informatik KIT, Institut für Theoretische

Mehr

Kapitel 2: Formale Sprachen Kontextfreie Sprachen. reguläre Grammatiken/Sprachen. kontextfreie Grammatiken/Sprachen

Kapitel 2: Formale Sprachen Kontextfreie Sprachen. reguläre Grammatiken/Sprachen. kontextfreie Grammatiken/Sprachen reguläre Grammatiken/prachen Beschreibung für Bezeichner in Programmiersprachen Beschreibung für wild cards in kriptsprachen (/* reguläre Ausdrücke */)?; [a-z]; * kontextfreie Grammatiken/prachen Beschreibung

Mehr

t r Lineare Codierung von Binärbbäumen (Wörter über dem Alphabet {, }) Beispiel code( ) = code(, t l, t r ) = code(t l ) code(t r )

t r Lineare Codierung von Binärbbäumen (Wörter über dem Alphabet {, }) Beispiel code( ) = code(, t l, t r ) = code(t l ) code(t r ) Definition B : Menge der binären Bäume, rekursiv definiert durch die Regeln: ist ein binärer Baum sind t l, t r binäre Bäume, so ist auch t =, t l, t r ein binärer Baum nur das, was durch die beiden vorigen

Mehr

Aufgabentypen die in der Klausur vorkommen

Aufgabentypen die in der Klausur vorkommen Aufgabentypen die in der Klausur vorkommen können 1. Nennen Sie fünf wichtige Anwendungsgebiete der Computerlinguistik. 2. Für welches der drei Anwendungsgebiete Maschinelle Übersetzung, Rechtschreibkorrektur

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

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

Grundbegriffe der Informatik

Grundbegriffe der Informatik Grundbegriffe der Informatik Einheit 9: Speicher Thomas Worsch Karlsruher Institut für Technologie, Fakultät für Informatik Wintersemester 2009/2010 1/20 Überblick Speicher Bit und Byte Speicher als Tabellen

Mehr

Theoretische Informatik 2 (WS 2006/07) Automatentheorie und Formale Sprachen 19

Theoretische Informatik 2 (WS 2006/07) Automatentheorie und Formale Sprachen 19 Inhalt 1 inführung 2 Automatentheorie und ormale prachen Grammatiken Reguläre prachen und endliche Automaten Kontextfreie prachen und Kellerautomaten Kontextsensitive und yp 0-prachen 3 Berechenbarkeitstheorie

Mehr

Formale Sprachen und Grammatiken

Formale Sprachen und Grammatiken Formale Sprachen und Grammatiken Jede Sprache besitzt die Aspekte Semantik (Bedeutung) und Syntax (formaler Aufbau). Die zulässige und korrekte Form der Wörter und Sätze einer Sprache wird durch die Syntax

Mehr

Syntax (= Satzgefüge), vgl. auch Grammatik

Syntax (= Satzgefüge), vgl. auch Grammatik 1 Natürliche Sprachen Natürliche Sprachen bezeichnen wie das Wort "Sprache" ausdrückt zunächst das Gesprochene. Das Schweizerdeutsch etwa ist eine typische natürliche Sprache. Mit der Erfindung der Aufzeichnung

Mehr

Semantic Web Technologies I!

Semantic Web Technologies I! www.semantic-web-grundlagen.de Semantic Web Technologies I! Lehrveranstaltung im WS11/12! Dr. Elena Simperl! DP Dr. Sebastian Rudolph! M.Sc. Anees ul Mehdi! www.semantic-web-grundlagen.de Logik Grundlagen!

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

Reguläre Ausdrücke. Prof.Dr.Christian Wagenknecht mit Beiträgen von Herrn Dr.Michael Hielscher

Reguläre Ausdrücke. Prof.Dr.Christian Wagenknecht mit Beiträgen von Herrn Dr.Michael Hielscher Reguläre Ausdrücke Prof.Dr.Christian Wagenknecht mit Beiträgen von Herrn Dr.Michael Hielscher Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 1/44 Definition reguläre Ausdrücke für reguläre Sprachen

Mehr

Kapitel 2: Formale Sprachen Gliederung

Kapitel 2: Formale Sprachen Gliederung Gliederung 0. Einleitung und Grundbegriffe 1. Endliche Automaten 2. Formale Sprachen 3. Berechnungstheorie 4. Komplexitätstheorie 2.1. Chomsky-Grammatiken 2.2. Reguläre Sprachen 2.3. Kontextfreie Sprachen

Mehr

Kürzeste Wege in Graphen. Maurice Duvigneau Otto-von-Guericke Universität Fakultät für Informatik

Kürzeste Wege in Graphen. Maurice Duvigneau Otto-von-Guericke Universität Fakultät für Informatik Kürzeste Wege in Graphen Maurice Duvigneau Otto-von-Guericke Universität Fakultät für Informatik Gliederung Einleitung Definitionen Algorithmus von Dijkstra Bellmann-Ford Algorithmus Floyd-Warshall Algorithmus

Mehr

Theoretische Informatik

Theoretische Informatik Theoretische Informatik - das Quiz zur Vorlesung Teil I - Grundzüge der Logik In der Logik geht es um... (A) die Formen korrekten Folgerns (B) die Unterscheidung von wahr und falsch (C) das Finden von

Mehr

Logik für Informatiker

Logik für Informatiker Logik für Informatiker 2. Aussagenlogik Teil 3 30.04.2012 Viorica Sofronie-Stokkermans Universität Koblenz-Landau e-mail: sofronie@uni-koblenz.de 1 Letztes Mal Aussagenlogik Syntax: welche Formeln? Semantik:

Mehr

Informatik A ( Frank Hoffmann)

Informatik A ( Frank Hoffmann) Teillösungen zum 1. Aufgabenblatt zur Vorlesung Informatik A ( Frank Hoffmann) 1. Improvisieren Stellen Sie die Zahl 6 dar durch einen Ausdruck, der genau dreimal die Ziffer i enthält und ansonsten neben

Mehr

Theoretische Informatik 2 (WS 2006/07) Automatentheorie und Formale Sprachen / Kontextfreie Sprachen und Kellerautomaten

Theoretische Informatik 2 (WS 2006/07) Automatentheorie und Formale Sprachen / Kontextfreie Sprachen und Kellerautomaten Inhalt 1 Einführung 2 Automatentheorie und Formale Sprachen Grammatiken Reguläre Sprachen und endliche Automaten Kontextfreie Sprachen und Kellerautomaten Kontextsensitive und Typ 0-Sprachen 3 Berechenbarkeitstheorie

Mehr

Kapitel 11: Wiederholung und Zusammenfassung

Kapitel 11: Wiederholung und Zusammenfassung Wiederholung und Zusammenfassung 1: Begriff und Grundprobleme der Informatik Begriff Informatik Computer als universelle Rechenmaschine Grenzen der Berechenbarkeit Digitalisierung Problem der Komplexität

Mehr

Funktionale Programmierung mit Haskell

Funktionale Programmierung mit Haskell Funktionale Programmierung mit Haskell Prof. Dr. Hans J. Schneider Lehrstuhl für Programmiersprachen und Programmiermethodik Friedrich-Alexander-Universität Erlangen-Nürnberg Sommersemester 2011 I. Die

Mehr

Automaten, Formale Sprachen und Berechenbarkeit I. Skript zur Vorlesung im WS 2001/02 an der TU München

Automaten, Formale Sprachen und Berechenbarkeit I. Skript zur Vorlesung im WS 2001/02 an der TU München Automaten, Formale Sprachen und Berechenbarkeit I Skript zur Vorlesung im WS 2001/02 an der TU München Ekkart Kindler Steffen Manthey Version: 1.30 vom 30. April 2002 ii Redaktioneller Hinweis: Es gibt

Mehr

4. 4. Algorithmen und Datenstrukturen in deskriptiven Programmiersprachen

4. 4. Algorithmen und Datenstrukturen in deskriptiven Programmiersprachen Kapitel Kapitel 4 Deskriptive Programmierung SS 2008 4. 4. Algorithmen und Datenstrukturen in in deskriptiven Programmiersprachen Deskriptive Programmierung 1 Sprachverarbeitung in in Prolog Prolog Prolog

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

I. Aussagenlogik. Aussagenlogik untersucht Verknüpfungen wie "und", "oder", "nicht", "wenn... dann" zwischen atomaren und komplexen Sätzen.

I. Aussagenlogik. Aussagenlogik untersucht Verknüpfungen wie und, oder, nicht, wenn... dann zwischen atomaren und komplexen Sätzen. I. Aussagenlogik 2.1 Syntax Aussagenlogik untersucht Verknüpfungen wie "und", "oder", "nicht", "wenn... dann" zwischen atomaren und komplexen Sätzen. Sätze selbst sind entweder wahr oder falsch. Ansonsten

Mehr

1 Syntax von Programmiersprachen

1 Syntax von Programmiersprachen 1 Syntax von Programmiersprachen Syntax ( Lehre vom Satzbau ): formale Beschreibung des Aufbaus der Worte und Sätze, die zu einer Sprache gehören; im Falle einer Programmier-Sprache Festlegung, wie Programme

Mehr

Grundlagen der Theoretischen Informatik - Sommersemester 2012. Übungsblatt 1: Lösungsvorschläge

Grundlagen der Theoretischen Informatik - Sommersemester 2012. Übungsblatt 1: Lösungsvorschläge Lehrstuhl für Softwaretechnik und Programmiersprachen Professor Dr. Michael Leuschel Grundlagen der Theoretischen Informatik - Sommersemester 2012 Übungsblatt 1: Lösungsvorschläge Disclaimer: Bei Folgendem

Mehr

Schulinterner Lehrplan für das Fach Informatik der Sekundarstufe II an der Bettine von Arnim Gesamtschule

Schulinterner Lehrplan für das Fach Informatik der Sekundarstufe II an der Bettine von Arnim Gesamtschule des Zweckverbandes Langenfeld / Hilden - Sekundarstufen I und II - B.V.A-Gesamtschule Hildener Str. 3 40764 Langenfeld 02173 / 9956-0 Fax 02173 / 9956-99 Email: mail@bva-gesamtschule.de Web: www.bva-gesamtschule.de

Mehr

THEORETISCHE INFORMATIK

THEORETISCHE INFORMATIK THEORETISCHE INFORMATIK Vorlesungsskript Jiří Adámek Institut für Theoretische Informatik Technische Universität Braunschweig Januar 2014 Inhaltsverzeichnis 1 Endliche Automaten 1 1.1 Mathematische Grundbegriffe.......................

Mehr

Übung zur Vorlesung Einführung in die Computerlinguistik und Sprachtechnologie

Übung zur Vorlesung Einführung in die Computerlinguistik und Sprachtechnologie Übung zur Vorlesung Einführung in die Computerlinguistik und Sprachtechnologie Wintersemester 2009/10, Prof. Dr. Udo Hahn, Erik Fäßler Übungsblatt 3 vom 19.11.2009 Abgabe bis 26.11.2009, 14:30 Uhr; per

Mehr

Mathematische Grundlagen der Kryptographie. 1. Ganze Zahlen 2. Kongruenzen und Restklassenringe. Stefan Brandstädter Jennifer Karstens

Mathematische Grundlagen der Kryptographie. 1. Ganze Zahlen 2. Kongruenzen und Restklassenringe. Stefan Brandstädter Jennifer Karstens Mathematische Grundlagen der Kryptographie 1. Ganze Zahlen 2. Kongruenzen und Restklassenringe Stefan Brandstädter Jennifer Karstens 18. Januar 2005 Inhaltsverzeichnis 1 Ganze Zahlen 1 1.1 Grundlagen............................

Mehr

Multimedia Technologie II

Multimedia Technologie II Vorlesung / Übungen Multimedia Technologie II Prof. Dr. Michael Frank / Prof. Dr. Klaus Hering Sommersemester 2004 HTWK Leipzig, FB IMN Für die externe Vorhaltung der DTD werden sämtliche zwischen den

Mehr

EINFÜHRUNG IN DIE THEORETISCHE INFORMATIK

EINFÜHRUNG IN DIE THEORETISCHE INFORMATIK EINFÜHRUNG IN DIE THEORETISCHE INFORMATIK Prof. Dr. Klaus Ambos-Spies Sommersemester 2012 17. DIE KONTEXTFREIEN SPRACHEN II: ABSCHLUSSEIGENSCHAFTEN, MASCHINENCHARAKTERISIERUNG, KOMPLEXITÄT Theoretische

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

Automaten und Formale Sprachen alias Theoretische Informatik. Sommersemester 2013

Automaten und Formale Sprachen alias Theoretische Informatik. Sommersemester 2013 Automaten und Formale Sprachen alias Theoretische Informatik Sommersemester 2013 Dr. Sander Bruggink Übungsleitung: Jan Stückrath Sander Bruggink Automaten und Formale Sprachen 1 Deterministische Kellerautomaten

Mehr

Compiler. Kapitel. Syntaktische Analyse. Kapitel 4. Folie: 1. Syntaktische Analyse. Autor: Aho et al.

Compiler. Kapitel. Syntaktische Analyse. Kapitel 4. Folie: 1. Syntaktische Analyse. Autor: Aho et al. Folie: 1 Kapitel 4 Übersicht Übersicht Syntax: Definition 4 syn-tax: the way in which words are put together to form phrases, clauses, or sentences. Webster's Dictionary Die Syntax (griechisch σύνταξις

Mehr

Formale Methoden: Ein Überblick

Formale Methoden: Ein Überblick Formale Methoden, Heinrich Rust, Lehrstuhl für Software-Systemtechnik, BTU Cottbus, 2004-09-16, p. 1 Formale Methoden: Ein Überblick Heinrich Rust Lehrstuhl für Software-Systemtechnik BTU Cottbus 2004-09-16

Mehr

66TT2. Herbst. Erste Staatsprüfung für ein Lehramt an öffentlichen Schulen. Prüfungsaufgaben - Prüfungsteilnehmer Prüfungstermin Einzelprüfungsnunrmer

66TT2. Herbst. Erste Staatsprüfung für ein Lehramt an öffentlichen Schulen. Prüfungsaufgaben - Prüfungsteilnehmer Prüfungstermin Einzelprüfungsnunrmer Prüfungsteilnehmer Prüfungstermin Einzelprüfungsnunrmer Kennzahl: Kennwort: Arbeitsplatz-Nr.: Herbst 2002 66TT2 Erste Staatsprüfung für ein Lehramt an öffentlichen Schulen Prüfungsaufgaben - Fach: Einzelprüfung:

Mehr

Einführung in die Computerlinguistik

Einführung in die Computerlinguistik Einführung in die Computerlinguistik Syntax II WS 2008/2009 Manfred Pinkal Morphologie und Syntax Gegenstand der Morphologie ist die Struktur des Wortes: der Aufbau von Wörtern aus Morphemen, den kleinsten

Mehr

der einzelnen Aussagen den Wahrheitswert der zusammengesetzten Aussage falsch falsch falsch falsch wahr falsch wahr falsch falsch wahr wahr wahr

der einzelnen Aussagen den Wahrheitswert der zusammengesetzten Aussage falsch falsch falsch falsch wahr falsch wahr falsch falsch wahr wahr wahr Kapitel 2 Grundbegriffe der Logik 2.1 Aussagen und deren Verknüpfungen Eine Aussage wie 4711 ist durch 3 teilbar oder 2 ist eine Primzahl, die nur wahr oder falsch sein kann, heißt logische Aussage. Ein

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

Einführung in die Computerlinguistik

Einführung in die Computerlinguistik Einführung in die Computerlinguistik Syntax WS 2006/2007 Manfred Pinkal Einführung in die Computerlinguistik 2006/2007 M. Pinkal UdS 1 Morphologie und Syntax Gegenstand der Morphologie ist die Struktur

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

Grundlagen der Informatik. Prof. Dr. Stefan Enderle NTA Isny

Grundlagen der Informatik. Prof. Dr. Stefan Enderle NTA Isny Grundlagen der Informatik Prof. Dr. Stefan Enderle NTA Isny 2 Datenstrukturen 2.1 Einführung Syntax: Definition einer formalen Grammatik, um Regeln einer formalen Sprache (Programmiersprache) festzulegen.

Mehr

IT-Basics 2. DI Gerhard Fließ

IT-Basics 2. DI Gerhard Fließ IT-Basics 2 DI Gerhard Fließ Wer bin ich? DI Gerhard Fließ Telematik Studium an der TU Graz Softwareentwickler XiTrust www.xitrust.com www.tugraz.at Worum geht es? Objektorientierte Programmierung Konzepte

Mehr

Formale Sprachen. Script, Kapitel 4. Grammatiken

Formale Sprachen. Script, Kapitel 4. Grammatiken Formale Sprachen Grammatiken Script, Kapitel 4 erzeugen Sprachen eingeführt von Chomsky zur Beschreibung natürlicher Sprachen bedeutend für die Syntaxdefinition von Programmiersprachen (Compilerbau) Automaten

Mehr

Parsing-EinfŸhrung Ð 1

Parsing-EinfŸhrung Ð 1 Parsing-EinfŸhrung bersicht Falsifizierbarkeit, oder: Sind Grammatiken wissenschaftlich? Grammatik, Formalismus Kontextfreie Grammatiken Ableitungen Ziel Verstehen der linguistischen Motivation Intuitives

Mehr

Compiler, Übersetzer. Allgemeine Erklärung / Definition

Compiler, Übersetzer. Allgemeine Erklärung / Definition Compiler, Übersetzer Allgemeine Erklärung / Definition Ein Übersetzer ist ein Programm, das ein S 1 -Wort den Quelltext in ein S 2 -Wort umwandelt den Zieltext wobei die Semantik erhalten bleibt. Frage:

Mehr

Seminar aus dem Bereich E-Learning

Seminar aus dem Bereich E-Learning Seminar aus dem Bereich E-Learning Thema: Softwarebasierende Lernhilfen zur Interaktiven Visualisierung von Automaten und ihre Eignung für den Sekundarstufenunterricht. Martin Franz maddin_franz@web.de

Mehr

Informatik I. Lutz Donnerhacke lutz@iks-jena.de. PGP:db089309 1c1c 6311 ef09 d819 e029 65be bfb6 c9cb

Informatik I. Lutz Donnerhacke lutz@iks-jena.de. PGP:db089309 1c1c 6311 ef09 d819 e029 65be bfb6 c9cb Informatik I Lutz Donnerhacke lutz@iks-jena.de PGP:db089309 1c1c 6311 ef09 d819 e029 65be bfb6 c9cb 1 Semesterübersicht Grundbegriffe der theoretischen Informatik Übersicht über Funktionen von Betriebsystemen

Mehr

3 Berechnungen und Variablen

3 Berechnungen und Variablen 3 Berechnungen und Variablen Du hast Python installiert und weißt, wie man die Python-Shell startet. Jetzt kannst Du etwas damit machen. Wir fangen mit ein paar einfachen Berechnungen an und wenden uns

Mehr

Sprachbeschreibung und Erweiterung

Sprachbeschreibung und Erweiterung Sprachbeschreibung und Erweiterung Worte, Sprachen, reguläre Ausdrücke, Automaten, BNF, Grammatik, Syntax- Diagramme, Spracherweiterungen do, for, break, switch Formale Beschreibung von Programmiersprachen

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

Zentralabitur 2017 Informatik

Zentralabitur 2017 Informatik Zentralabitur.nrw Ministerium für Schule und Weiterbildung des Landes Nordrhein-Westfalen Zentralabitur 2017 Informatik I. Unterrichtliche Voraussetzungen für die schriftlichen Abiturprüfungen an Gymnasien,

Mehr

Lehrpläne NRW Sek.stufe 2. Lernen im Kontext

Lehrpläne NRW Sek.stufe 2. Lernen im Kontext Lehrpläne NRW Sek.stufe 2 Lernen im Kontext Fachliche Inhalte Lernziele Informatik NRW Fähigkeit, komplexe Zusammenhänge mit gedanklicher Schärfe zu durchdringen (Problemanalyse) Überblick über unterschiedliche

Mehr

Zusammenfassung Grundzüge der Informatik 4

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

Mehr

Zentralabitur 2018 Informatik

Zentralabitur 2018 Informatik Zentralabitur.nrw Ministerium für Schule und Weiterbildung des Landes Nordrhein-Westfalen Zentralabitur 2018 Informatik I. Unterrichtliche Voraussetzungen für die schriftlichen Abiturprüfungen an Gymnasien,

Mehr

syntax.tex Eine Übersicht

syntax.tex Eine Übersicht syntax.tex Eine Übersicht Bernd Worsch 7. Juli 1997 Inhaltsverzeichnis 1 Einleitung 1 2 Bevor es funktioniert... 1 3 Grundelemente von syntax.tex 1 4 Strukturelemente von syntax.tex 3 5 Setzen von Syntaxdiagrammen

Mehr

18.09.2010 / Software Freedom Day

18.09.2010 / Software Freedom Day 18.09.2010 / Software Freedom Day xkcd Fortsetzung... Grundlegendes Begriff: = regular expressions kurz: regex Funktion: definieren flexible Muster, mit denen in Texten gesucht (und ersetzt) werden kann.

Mehr

Leitfaden der Informatik Lothar Schmitz Syntaxbasierte Programmierwerkzeuge

Leitfaden der Informatik Lothar Schmitz Syntaxbasierte Programmierwerkzeuge Leitfaden der Informatik Lothar Schmitz Syntaxbasierte Programmierwerkzeuge Leitfäden der InforDlatik Herausgegeben von Prof. Dr. Hans-Jürgen Appelrath, Oldenburg Prof. Dr. Volker Claus, Stuttgart Prof.

Mehr

Theoretische Grundlagen des Software Engineering

Theoretische Grundlagen des Software Engineering Theoretische Grundlagen des Software Engineering 11: Abstrakte Reduktionssysteme schulz@eprover.org Reduktionssysteme Definition: Reduktionssystem Ein Reduktionssystem ist ein Tupel (A, ) Dabei gilt: A

Mehr

Was können Schüler anhand von Primzahltests über Mathematik lernen?

Was können Schüler anhand von Primzahltests über Mathematik lernen? Was können Schüler anhand von Primzahltests über Mathematik lernen? Innermathematisches Vernetzen von Zahlentheorie und Wahrscheinlichkeitsrechnung Katharina Klembalski Humboldt-Universität Berlin 20.

Mehr

Automaten und Formale Sprachen alias Theoretische Informatik. Sommersemester 2012. Sprachen. Grammatiken (Einführung)

Automaten und Formale Sprachen alias Theoretische Informatik. Sommersemester 2012. Sprachen. Grammatiken (Einführung) Wörter, Grmmtiken und die Chomsky-Hierrchie Sprchen und Grmmtiken Wörter Automten und Formle Sprchen lis Theoretische Informtik Sommersemester 2012 Dr. Snder Bruggink Üungsleitung: Jn Stückrth Alphet Ein

Mehr

Patrick Simianer Visualisierung regulärer Ausdrücke

Patrick Simianer Visualisierung regulärer Ausdrücke Patrick Simianer Visualisierung regulärer Ausdrücke Patrick Simianer 2010-06-28 Endliche Automaten HS bei Dr. Karin Haenelt Universitiät Heidelberg im Sommersemester 2010 1 Einleitung Überlegungen Protoypisches

Mehr