Sprachen/Grammatiken/Automaten

Sprache ist eine beliebige Teilmenge der Permutation eines bestimmten Alphbets. Sie laesst sich durch Grammatiken Spezifizieren. Waehrend Sprachen unendlich viele Objekte enthalten, bestehen Grammatiken aus einer beschraenkten Anzahl. Chomsky unterteilte die Grammatiken und somit auch die Sprachen in vier grosse Gruppen. Jede der nun folgenden Gruppen ist in der vorherigen echt enthalten und somit Teilmenge dieser. Die von Chomsky angesetzte Obermenge aller Sprachen ist vom Typ 0. Die korrespondierende Grammatik nennt man Phrasengrammatik. Sie unterliegt keinen Einschraenkungen. Bildet man eine Teilmenge von diesen Sprachen, wobei die zugehoerige Grammatik die Einschraekung |w1| <= |w2| erfuellt, so spricht man von einer Typ1- bzw. kontextsensitiven Sprache. Verschaerft man die Auswahlbedingung |w1|<=|w2| mit der Auflage, dass w1 nur aus einer einzelne Variable bestehen darf, so erhalten wir die Untermenge der Typ2- oder auch kontextfreien Sprachen. Unterwirft man nun diese neueste Teilmenge zusaetzlich der Bedingung, dass w2 entweder aus einem Terminalsymbol oder einem Non-Terminalsymbol und einem Terminalsymbol besteht. Wir erhalten somit die Typ3- bzw. regulaeren Sprachen. Fuer diese verschiedenen Sprachtypen hat man im Laufe der Zeit zusaetzliche hilfreiche Darstellungsmittel entworfen. So z.B. benutzt man fuer die regulaeren Sprachen nicht nur die regulaeren Grammatiken, sondern auch endliche deterministische bzw. nichtdeterministische Automaten, aber auch reguläre Ausdrücke. Für kontextfreie Sprachen nutzt man den Kellerautomaten. Der linear beschränkte Automat ist das vorrangige Hilfsmittel um kontextsensitive Sprachen besser darstellen zu können, und die Turringmaschine ist wohl die bekannteste äquivalente Darstellungsform von Typ0-Sprachen. Das Problem der Umwandlung eines bestimmten feststehenden Datenformats in ein anderes ist hierbei auf Sprachen, speziell der regulären Sprachen, einzuordnen. Mit Hilfe eines implementierten endlichen deterministeischen Automaten kann die Arbeit stark vereinfacht werden.
P.S.: Diese Zusammenfassung erhebt nicht den Anspruch vollstaendig zu sein. Vielmehrsoll ein Einblick gegeben werden, woher die Idee der Konverterimplementierung stammt.

CSLIB 2000


Zurück: Persönliche Hypertexte