TU Wien:Formale Modellierung VU (Salzer)/Kapitel Formale Sprachen und Grammatiken
Zur Navigation springen
Zur Suche springen
Reguläre Sprachen[Bearbeiten | Quelltext bearbeiten]
Operationen auf formalen Sprachen[Bearbeiten | Quelltext bearbeiten]
Seien zwei Sprachen.
- Vereinigung
- Verkettung
- Potenzen
- Kleene-Stern
Definition regulärer Sprachen[Bearbeiten | Quelltext bearbeiten]
Reguläre Sprachen sind alle Sprachen, die aus einem Alphabet mit Hilfe von Vereinigung, Verkettung und Stern gebildet werden können.
Reguläre Ausdrücke[Bearbeiten | Quelltext bearbeiten]
- algebraische Notation
- Operatorrangfolge (absteigend): *, +
- EBNF-Notation
- Syntaxdiagramme
Reg. Sprache | Algebra | EBNF | Syntaxdiagramm | |
---|---|---|---|---|
Abkürzung |
─>A─> | |||
Leersprache | ||||
Leerwortsprache | ───────> | |||
Terminalsymbol | "s" | ─>s─> | ||
Aufeinanderfolge | ─> X ─> Y ─> | |||
Alternativen |
╭─> X ─╮ ─┤ ├─> ╰─> Y ─╯ | |||
Option |
╭─────╮ │ v ─┴─ X ───> | |||
Wiederholung ≥ 0 |
╭─ X <─╮ v │ ────────┴─> | |||
Wiederholung ≥ 1 |
╭──────╮ v │ ─── X ──┴─> | |||
Gruppierung |
- Posix Extended Regular Expressions (ERE)
Eigenschaften regulärer Sprachen[Bearbeiten | Quelltext bearbeiten]
Nicht regulär sind Sprachen, deren Analyse ein unbegrenztes Gedächtnis erfordert.
Vom regulären Ausdruck zum Automaten[Bearbeiten | Quelltext bearbeiten]
Vom Automaten zum regulären Ausdruck[Bearbeiten | Quelltext bearbeiten]
Verallgemeinerter endlicher Automat
- keine Übergänge in den Anfangszustand
- nur ein Endzustand, der nicht Anfangszustand ist
- keine Übergänge weg vom Endzustand
- nur ein Übergang zwischen je zwei Zuständen
- Übergänge beschriftet mit regulären Ausdrücken
Kontextfreie Grammatiken[Bearbeiten | Quelltext bearbeiten]
- ... Nonterminalsymbole (Variablen)
- ... Terminalsymbole
- ... Produktionen
- ... Startsymbol
- andere Notationen
- Backus-Naur-Form (BNF)
- Erweiterte Backus-Naur-Form (EBNF)
- Syntaxdiagramme