15.04.2013 Aufrufe

Projektbericht - Zentrum Mensch-Maschine-Systeme - TU Berlin

Projektbericht - Zentrum Mensch-Maschine-Systeme - TU Berlin

Projektbericht - Zentrum Mensch-Maschine-Systeme - TU Berlin

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

2.2 Grammatik<br />

Entwicklung einer Grammatik für die Flugsicherungs-Phraseologie<br />

Eine Grammatik ist ein Regelwerk, nach dem Elemente einer Sprache miteinander zu einer<br />

Aussage kombiniert werden, die syntaktisch korrekt aufgebaut sind. Hierbei ist keine<br />

Unterscheidung von sinnvollen und sinnlosen Texten vonnöten.<br />

Sie soll eine endliche Beschreibung haben, d.h. die Überprüfung, ob ein Text ein syntaktisch<br />

korrektes Programm ist, muss effizient möglich sein ( Compiler soll funktionieren,<br />

syntaktische Konstrukte sollen möglichst einfach wieder auflösbar sein).<br />

Das Ziel einer Grammatik ist es, aus dem Startsymbol durch Anwendung von<br />

Ersetzungsregeln Ketten zu erzeugen, die nur aus terminalen, also nicht weiter ersetzbaren<br />

Symbolen bestehen. Sie lassen sich auch als Termersetzungssysteme auffassen. Die Menge<br />

der syntaktisch korrekten Programme, also die Sprache, wird top-down beschrieben.<br />

Ausgehend von einem Startsymbol S können Regeln angewendet werden, mit denen Texte<br />

erzeugt werden.<br />

Unter Verwendung zahlreicher geschriebener Texte wird ein Modell erzeugt, in dem<br />

wiedergegeben wird, wie oft ein Wort in Verbindung mit anderen Worten auftritt. Die Texte<br />

werden analysiert, um die Auftrittswahrscheinlichkeit zu ermitteln, mit der ein bestimmtes<br />

Wort auf ein anderes folgt, beziehungsweise mit der es am Satzanfang oder Satzende steht.<br />

Sobald man anfängt zu sprechen, analysiert die Software das Gesagte. Es entsteht ein Baum<br />

mit Wahrscheinlichkeiten für alle möglichen Kombinationen der erkannten Phoneme und die<br />

daraus resultierenden Worte.<br />

Ein Beispiel einer Grammatik ist die Chomsky Grammatik. In den 50-er Jahren begann Noam<br />

Chomsky vier Grammatiktypen als mögliche Modelle für Grammatiken natürlicher Sprachen<br />

anzugeben .<br />

Das Kriterium für die Aufteilung ist dabei, wie eine Regel einer Grammatik der<br />

entsprechenden Chomsky-Stufe aussehen darf, was also links und rechts des<br />

Ableitungszeichens stehen darf. Es lässt sich aber auch zeigen, dass mit den verschiedenen<br />

Grammatiken auch tatsächlich verschieden "starke" Sprachen ausgedrückt werden können,<br />

d.h. die Aufteilung nach Grammatikregeln hat sehr wohl auch Auswirkung auf die<br />

Ausdrucksfähigkeit der Sprachen.<br />

Bedeutung der Grammatik für die Compiler<br />

Eine wesentliche Rolle spielen im Compilerbau die kontextfreien Sprachen, deren Syntax<br />

durch kontextfreie Grammatiken beschrieben werden kann. Dies mag bei näherem Hinsehen<br />

verwundern, denn Kontextabhängigkeiten gibt es in den gebräuchlichen<br />

Programmiersprachen genügend viele. Ein Beispiel:<br />

In C gilt das Prinzip ,,declare before use``: Jeder Bezeichner muss vor seiner ersten<br />

Verwendung deklariert werden .Diese Regel ist syntaktischer Natur, geht aber aus keiner<br />

Grammatik für die Sprache hervor. Warum nicht ?<br />

Der Spezifikationsmechanismus der kontextfreien Grammatiken ist dafür nicht mächtig<br />

genug. Nur mit komplizierten kontextabhängigen Regeln ließe sich das ,,declare before use``-<br />

Prinzip spezifizieren. Für kontextabhängige Grammatiken gibt es aber keine praktikablen<br />

Analyseverfahren (zu kompliziert, zu langsam). Daher beschreibt man die Syntax einer<br />

Programmiersprache wie folgt: In einer kontextfreien Grammatik beschreibt man den Großteil<br />

der syntaktischen Anforderungen. Alles, was sich nicht mit kontextfreien Regeln beschreiben<br />

lässt, wird außerhalb der Grammatik, quasi als ,,Nebenabrede`` (meist informal) ergänzt.<br />

Manchmal werden auch Dinge, die sich an für sich kontextfrei beschreiben ließen, aus der<br />

Grammatik herausgenommen, um diese nicht zu komplex zu machen.<br />

22

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!