Wenn man einen Gedanken in einer natürlichen Sprache ausdrücken
will, kommt es im wesentlichen auf zwei Aspekte an:
Der zweite Punkt entzieht sich, auch wenn Ansätze zur Untersuchung der formalen Semantik vorhanden sind, weitgehend einer automatisierten Überprüfung. Dagegen kann, z.B. beim Kompilieren eines Computerprogramms, die syntaktische Korrektheit an Hand festgelegter Regeln überprüft werden. Man unterscheidet bei der Beschreibung formaler Sprachen nicht zwischen Wörtern und Sätzen, sondern betrachtet ein Wort als Zeichenkette über einem gegebenen Alphabet E, also einer nichtleeren Menge von Zeichen. Die Menge aller endlichen Wörter über E, d.h. gebildet aus beliebigen Zeichen aus E, bezeichnen wir als E*:
E* = { e1e2...en | n
Î N0, ei Î E für alle i Î {1,..,n} }.
Das "leere Wort" l mit der Länge 0
gehört zu dieser Menge.
Jede Sprache L über dem Alphabet E ist eine
Teilmenge von E*: L Ì E*.
Wenn eine Menge von Wörtern formal beschreibbar ist, was unten näher ausgeführt wird, und die Zugehörigkeit eines Worts nur aus syntaktischen Regeln und nicht durch Semantik oder Interpretation folgt, nennen wir diese Menge eine formale Sprache.
Die formalen Systeme, die eine Sprache beschreiben und in der Folge untersucht werden sollen, sind zunächst als Überblick ohne Anspruch auf Vollständigkeit aufgelistet:
Ein formales System zur Beschreibung einer formalen Sprache L
heißt
Zu den analysierenden Systemen gehören z.B. die Automaten, zu den erzeugenden Semi-Thue-Systeme und Chomsky-Grammatiken.
[Index] [Fortsetzung/Reguläre Sprachen]
Autor: Jürgen Dehmer
Letzte Änderung: