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