Home

Handbuch - Universität Siegen

image

Contents

1. Abbrechen Abbildung 2 8 Automat Erreichbare Zust nde Aktiviere die erreichbaren Zust nde z0 z1 Zustand z0 fertiggestellt noch zu berechn 27 Kapitel 3 Wie erstelle ich einen Kellerautomaten Wie ein normaler Automat angelegt wird wurde bereits besprochen In diesem Kapitel geht es darum einen Kellerautomaten anzulegen der die Sprache a b f r n gt 0 erkennt Als erstes muss der Neu Dialog ge ffnet werden im ersten Tab muss Automat gew hlt werden anschlie end der Kellerautomat F r das Beispiel muss sowohl als Eingabe wie auch als Kelleralphabet das Alphabet a b gew hlt werden Dazu kann das Alphabet bei beiden Eingabefeldern einzeln eingestellt werden oder nur bei Eingabe Alphabet wobei dann der Haken bei Keller Alphabet entfernt werden muss Dadurch werden automatisch die gleichen Alphabete verwendet Ist die Datei angelegt muss berlegt werden welche Zust nde und berg nge ben tigt werden um die Sprache zu erkennen Dabei kommt man dazu dass mindestens folgende Zust nde und berg nge n tig sind um die Sprache zu erkennen e Ein Zustand z0 der sowohl Start wie auch akzeptierenden Zustand ist e Ein Zustand z1 Ein akzeptierender Zustand z2 e Einen bergang von z0 nach z1 der das erste Symbol a vom Eingabewort liest und auf den Keller schreibt e Einen bergang von z1 nach z1 der alle weiteren Symbole a vom Einga bewort liest und
2. ausgew hlt wird das Wort genau wie der Keller rechtsb ndig dargestellt Eine weitere nderung ist dass die gelesenen Symbole nicht hervorgehoben sondern ausgeblendet werden Die Einstellungsm glichkeit Zoom Faktor bezieht sich auf den Graphen des Automaten es handelt sich dabei um die f r jede Datei benutzte Voreinstellung Der Zoom Faktor kann aber auch f r jede Datei einzeln eingestellt werden Mit Hilfe der Einstellung Fehlerzustand in Regul ren Ausdruck in DEA Umwandlung anzeigen kann man einstellen ob der Fehlerzustand im Um wandlungsalgorithmus angezeigt wird oder nicht Im erstellten DEA wird der 40 5 2 AUTOMATEN EINSTELLUNGEN ANPASSEN 41 Zustand unabh ngig von der Einstellung angelegt Auf dem Tab Ansicht kann die Einstellung Auto Step angepasst wer den Im GTI Tool kann an verschiedenen Stellen zum Beispiel bei der Wort Navigation diese Navigation auch automatisch ablaufen Der hier eingestellte Wert wird dabei als Zeit zwischen zwei Schritten verwendet u Einstellungen 2 gt Allgemein Ansicht Farben Alphabet Grammatik Zustand bergang Symbol Produktion Nichtterminalzeichen Normal E Fehlerhaft E Hervorgehoben W Start Terminalzeichen Parser Regul rer Ausdruck Standard Ok bernehmen Abbrechen Abbildung 5 1 Einstellungen Der Tab Farben bietet die M glichkeit die verwendeten Farben seinen Bed rfnissen anzupassen Zur Auswahl ste
3. deln Dazu betrachten wir den Beispielautomat aus der Vorlesung 0 1 0 Aa fe F r diesen Beispielautomat liefe der Algorithmus wie folgt ab Zun chst wird ein Ausdruck f r den gesamten Automaten angelegt In unserem Fall wurde L3 L2 a E22 L2 L2 angelegt e Nun werden die einzelnen Sprachen konkretisiert In unserem Beispiel zun chst L2 Dies wird in Li a HI e Ll umgewandelt 2021 2021 2020 2021 e Im n chsten Schritt wird dann Lt zz In 1 umgewandelt e Dies wird solange fortgesetzt bis alle Sprachen zu regul ren Ausdr cken umgewandelt sind e In unserem Fall ist das Ergebnis 1 OJe OJe 1 1 Ole Ole 1 1le O Ole Us 1le O Ole 1 Achtung Wie im Beispiel zu sehen wird der regul re Ausdruck selbst bei einem kleinen Automaten schon relativ gro Daher ist bei gr eren Automaten mit erheblichem Rechenaufwand zu rechnen 26 KAPITEL 2 WIE ERSTELLE ICH EINEN AUTOMATEN Bellen lir 213 L20212 j120712121212 17171 2071 120711 120201120201 120211 ER 1212 1 212 rOr11 1202011202017120717 f1 01 0 ER LZz0Z11 L20201120201 L20z11 Lz1z12 Lia Abbildung 2 7 Automat Umwandeln in regul ren Ausdruck 2 3 8 Erreichbare Zust nde ber den Men eintrag Extras kann der Punkt Erreichbare Zust nde aus gew hlt werden In dem erscheinenden Dialog kann wie in den anderen auch durch die einzelnen Schri
4. hnlich dem Folgenden llejogienuts Alle Produktionen durchgehen Wenn zwei Produktionen der From B gt BAY und A gt vorhanden sind dann wird die Produktion B gt DX aufgenommen Danach alle e Produktionen bis auf S gt e entfernen Wobei S Startsymbol ist Als Text speichern Drucken Abbildung 6 1 Algorithmenfenster In diesem Fenster kann man sich den Algorithmus welcher gerade ausgef hrt wird in Kurzform noch einmal anschauen W hrend das Fenster ge ffnet ist kann man trotzdem den Algorithmus laufen lassen Es bleibt dann im Vordergrund Diesen Text kann man entweder als Textdatei speichern oder drucken 6 2 Zweite Ansicht Im Men punkt Ansicht ist die Option Zweite Ansicht zu finden Wird dieser Men eintrag ausgew hlt wird eine zweite Ansicht eingeblendet in der Dateien ge ffnet werden k nnen Dabei ist darauf zu achten dass keine Dateien ge ffnet 44 6 2 ZWEITE ANSICHT 45 werden k nnen die bereits in der anderen Ansicht ge ffnet sind Wird trotz dem eine solche Datei ge ffnet wird die Datei ausgew hlt Da immer nur eine Datei aktiv sein kann wird die aktive Ansicht durch eine dunklere Umrandung dargestellt als das bei der nicht aktiven der Fall ist Die Button Stati bezie hen sich dann auf diese aktive Ansicht Die aktive Ansicht kann durch einfaches Anklicken einer Komponente in der Ansicht ge ndert werden D a GI 10017000 Datei Bearbeit
5. wird jetzt eine neue Datei mit dem minimierten Automaten erstellt mit welchem man dann weiter arbeiten kann Nat rlich kann der Minimierungsprozess jederzeit abgebrochen werden In diesem Fall wird keine neue Datei angelegt man kann den Ausgangsautomaten weiter bearbeiten Wenn man in den Navigationsbereich des Dialogs schaut stellt man fest dass noch weitere Button verf gbar sind auf welche jetzt noch nicht eingegan gen wurde Zun chst einmal gibt es die Button Bis zum Ende vor und An den Anfang zur ck Mit Bis zum Ende vor kann man alle Zwischenschritte berspringen und gelangt direkt zur Ansicht des minimalen Automaten An den Anfang zur ck bewirkt genau das Gegenteil und springt zur Ausgangsan sicht zur ck Dann gibt es noch einen Schritt zur ck Button welcher einzelne Verfeinerungsschritte r ckg ngig macht Und schlussendlich gibt es noch einen Button Automatische Schritte welcher nach einer kurzen Verz gerung auto matisch den n chsten Schritt macht bis der Minimierungsprozess abgeschlossen ist Diese Funktion kann durch den Stop Button wieder deaktiviert werden Wenn man die neue Datei mit dem minimalen Automaten erstellen m chte ohne sich die Minimierung im Detail anzuschauen besteht jederzeit die M glich keit den Dialog mit OK zu best tigen Die Minimierung wird dann im Hinter grund beendet man gelangt sofort zur Ansicht des neu entstandenen Automaten und ka
6. m ssen wir zuerst den entsprechenden Modus ausw hlen Folgende Modi sind in der Toolbar verf gbar N Maus Modus Neuer Zustand Neuer bergang Neuer Start Zustand Neuer Akzeptierender Zustand Da wir zu Beginn den Startzustand anlegen wollen w hlen wir Neuer Start Zustand und klicken auf eine freie Fl che im unteren Teil um den Zustand dort zu erstellen Um den Zustand nachtr glich zu bearbeiten m ssen wir in den Maus Modus wechseln Den Konfigurationsdialog erreicht man dann ber Doppelklick oder das Kontextmen ber das Kontextmen l sst sich ein Zu stand auch wieder l schen Auf diese Weise lassen sich alle Zust nde anlegen die f r den Beispielau tomaten ben tigt werden Nachdem wir alle Zust nde angelegt haben fehlen noch die berg nge zwischen den Zust nden Daher wechseln wir in den Neu er bergang Modus Um jetzt einen neuen bergang anzulegen klicken wir auf einen Zustand und ziehen bei gedr ckter Maustaste die Maus auf einen anderen Zustand Beim Loslassen ffnet sich der Konfigurationsdialog f r berg nge In diesem Dialog ziehen wir jetzt die Symbole die in dem bergang enthalten sein sollen aus der linken Liste mit allen Symbolen in die rechte Liste welche die bergangsmenge repr sentiert Als Hilfestellung wird im unteren Dialog der ent stehende bergang angezeigt Nach best tigen durch OK wird der bergang angelegt Die berg nge lassen sich auf die gleiche
7. rfen Bei der Funktion Vorlage f r spielen Fehler allerdings keine Rolle 8 KAPITEL 1 WIE ERSTELLE ICH EINE NEUE GRAMMATIK 1 3 1 Einheitsproduktionen entfernen Hierzu nutzen wir die folgende Beispielgrammatik G N S P mit a b c d N A S S S P S Aa S b A gt Ac A gt Sd A gt A gt S Nun findet man im Men unter Ausf hren den Punkt Einheitsproduk tionen entfernen Es erscheint das folgende Fenster ENEE prod AKA ONEMENMIM ETEN KK m m SS Outline Original RA Einheitsproduktion gefunden A 5 Nichtterminalzeichen Nichtterminalzeichen Neue Produktion A Au erzeugt us D S Startsymbol Startsymbol 5 s Termin alzeichen Terminal Izeichen EE Heen Produktionen Produktionen EEN A Ac A gt sd A gt Sd Ae A gt S gt Aa S gt Aa S b S b A sS A gt S A gt Aa Drucken 1 Algorithmus anzeigen ok Abbrechen Abbildung 1 4 Grammatik Einheitsproduktionen entfernen Ganz links befindet sich die urspr ngliche Grammatik Rechts daneben fin det man die neue Grammatik Diese ist am Anfang gleich der Urspr nglichen und wird erst im Verlauf des Algorithmus ver ndert Zun chst sucht der Algorithmus nun nach einer Einheitsproduktion und fin det die Produktion A S Nun wird f r jede Produktion von S eine entsprechende Produktion f r A hinzugef gt Dies w re in unse
8. werden 30 KAPITEL 3 WIE ERSTELLE ICH EINEN KELLERAUTOMATEN Z Datei Bearbeiten nsicht Ausf hren Extras Hilfe pana n e 5 Navigation pda Alphabet Keller Keller Alphabet a b Das Wort aaab wird nicht akzeptiert Abbildung 3 1 Automat Kellerautomat Navigation Wird f r diesen Automaten die Wort Navigation mit dem Wort aabb ge startet ergibt sich im zweiten Schritt der Navigation dass der bergang der verwendet werden kann nicht mehr eindeutig ist Oben auf dem Keller be findet sich das Nichtterminalzeichen E welches entweder durch e oder durch aEb ersetzt werden k nnte Da wir das Wort aabb erkennen wollen muss der bergang E aEb ausgew hlt werden Der n chste Schritt ist wieder eindeu tig da nur der bergang ausgew hlt werden kann der a vom Eingabewort liest und a vom Keller entfernt Im n chsten Schritt muss wieder ausgew hlt wer den welcher bergang verwendet werden soll Da als n chstes Terminalzeichen wieder ein a auf dem Eingabewort steht muss wieder der bergang E aEb ausgew hlt werden Genau wie zuvor ist der n chste Schritt wieder eindeutig Da als n chstes das Terminalzeichen b auf dem Keller steht muss diesmal der bergang E e ausgew hlt werden Durch diesen bergang wird das oben auf dem Keller stehende Nichtterminalzeichen E entfernt Mit den n chsten zwei eindeutigen Schritten werden die Terminalzeichen b auf dem Eingabewort gele sen und vom Keller entf
9. 2 nach 1 mit Symbol b er Transition von 2 nach 2 mit Symbol b er alse Lastpos 6 Drucken Agorithmus anzeigen Abbildung 4 4 Regul rer Ausdruck Umwandeln in NDEA Wenn wir den Algorithmus an unserem Beispiel durchgehen erhalten wir folgenden Ablauf e Zun chst wird f r jede Position aus firstpos des gesamten Ausdrucks ein Startzustand angelegt 38 KAPITEL 4 WIE ERSTELLE ICH EINEN REGUL REN AUSDRUCK Danach l uft der Algorithmus ab Es wird f r jeden Zustand also f r die Position die Funktion followpos generiert diese kann man sich anse hen indem man im regul ren Ausdruck auf die jeweilige Position klickt F r jede Position in followpos wird dann ein Zustand angelegt und ein bergang mit dem Symbol an der Position des ausgehenden Zustandes In unserem Beispiel w rde zun chst ein bergang vom Zustand 1 zu sich selbst mit Symbol a angelegt Im Anschluss wird von 1 zu 2 sowie 3 jeweils ein bergang mit a gemacht Dann wird der Zustand 1 markiert Dies wiederholt sich f r die anderen Zust nde Zum Schluss wird der Zustand mit der Position des Endmarkers zum End zustand In unserem Beispiel ist das der Zustand 6 4 4 3 Exportieren nach BTEX Man kann einen regul ren Ausdruck auch nach ATEX exportieren Dazu gibt es im Men den Eintrag Datei Exportieren nach LaTeX Nach einem Klick auf den Eintrag erscheint ein Dialog in welchem man de
10. 3 2 Vorlage f r Ein Automat kann als Vorlage f r einen neuen Automaten benutzt werden Dies sollte nicht mit Umwandeln in verwechselt werden Es wird eine neue Datei angelegt die alle Zust nde und berg nge des Ausgangsautomaten enth lt Allerdings kann man den Automatentypen neu festlegen 2 3 3 Wort Navigation Wir k nnen f r einen Automaten eine Wort Navigation starten Das bedeutet dass wir ein Wort eingeben k nnen welches wir den Automaten verarbeiten lassen wollen und k nnen dann schrittweise vor und zur ck navigieren Dabei werden die aktuell aktiven Zust nde und berg nge farblich hervorgehoben Am Ende k nnen wir dann sehen ob der Automat das von uns gew hlte Wort akzeptiert oder nicht Dies wird ber ein Statusfeld im unteren Fenster signali siert Es gibt auch die M glichkeit zu erkennen ob ein Wort zu einem fr heren Zeitpunkt der Navigation akzeptiert w rde Dies kann man anhand eines Rah mens um das aktuelle Wort Feld erkennen Ein roter Rahmen steht daf r dass das Wort bis zum aktuellen Symbol von unserem Automat nicht akzeptiert wird ein gr ner Rahmen hingegen gibt zu verstehen dass es akzeptiert wird 18 KAPITEL 2 WIE ERSTELLE ICH EINEN AUTOMATEN W hrend man sich im Wort Navigations Modus befindet l sst sich der Auto mat nicht weiter bearbeiten Das bedeutet wir k nnen Zust nde und berg nge weder anlegen noch l schen oder bearbeiten Dies ist erst nach Verlassen dieses Mo
11. Base N Grammar cfg Extras Hilfe Nichtterminalzeichen E Startsymbol E Terminalzeichen 6 i 0 1 x Y Produktionen Abbildung 1 3 Grammatik Kontextfreie Grammatik 1 3 Was fange ich mit einer Grammatik an Wir haben jetzt eine Grammatik angelegt und stellen uns jetzt vielleicht die Frage was wir damit eigentlich anfangen k nnen Es bestehen zur Zeit zwei Verwendungsm glichkeiten f r eine Grammatik Zun chst einmal kann man die Grammatik als Vorlage f r eine neue Gram matik nutzen Das ist zum Beispiel sinnvoll wenn wir eine kontextfreie Gram matik haben und jetzt eine regul re Grammatik mit den gleichen Produktionen erstellen wollen Dazu ffnet man den Men punkt Ausf hren und w hlt un ter Vorlage f r den gew nschten Typ der neuen Datei aus Dabei ist zu beachten dass die Grammatik nicht konvertiert wird sondern nur als Vorlage verwendet wird Die andere Verwendungsm glichkeit beinhaltet sich aus der Grammatik einen entsprechenden Automaten generieren zu lassen Es besteht die M glichkeit sich f r eine regul re Grammatik den entsprechenden NDEA und f r eine kon textfreie Grammatik den entsprechenden Kellerautomat erzeugen zu lassen Zu finden ist die Umwandlung im Men eintrag Ausf hren unter Umwandeln Mi Es ist zu beachten dass beim Umwandeln einer Grammatik keine Validie rungsfehler vorhanden sein d
12. Dieses Informationsfenster beinhaltet die Informationen zum aktuell aus gew hlten Knoten im Graph Fenster Diese Informationen bestehen aus den in der Vorlesung Compilerbau I definierten Funktionen nullable firstpos lastpos und followpos Au erdem wird jetzt auch unter den Blattknoten die jeweilige Position angegeben 4 4 Was macht man mit regul ren Ausdr cken 4 4 1 bersetzen in Kernsyntax Ein regul rer Ausdruck kann im GTI Tool folgende Erweiterungen enthalten ee a aax 34 KAPITEL 4 WIE ERSTELLE ICH EINEN REGUL REN AUSDRUCK e a qaje e a an Lol lan e Jo ak aiQi 1 an wenn i lt k und i k N Also w re zum Beispiel auch a z ein regul rer Ausdruck wenn das Alpha bet die Zeichen von a bis z umfasst Wenn man nun einen Ausdruck mit diesen Erweiterungen erstellt hat kann man diesen in Kernsyntax bersetzen Dies funktioniert ber den Men punkt Ausf hren bersetzen in Kernsyntax Dann wird eine neue Datei erstellt die den Ausdruck in Kernsyntax bein haltet Dabei wird das Alphabet einfach bernommen 4 4 2 Einen regul ren Ausdruck umwandeln Einen regul ren Ausdruck kann man in einen Automaten umwandeln Dazu gibt es drei verschiedene Algorithmen Zum einen der Thompson Algorithmus der aus dem regul ren Ausdruck einen e NDEA konstruiert und zwei Algorithmen um aus dem regul ren Ausdruck einen NDEA bzw direkt einen DEA zu kon struieren Regul
13. Konkatenation a br a b erstellen altea O O Drucken ok Abbrechen Abbildung 4 2 Regul rer Ausdruck Umwandeln in NDEA 4 Aus der Blackbox f r alb wird der Automat f r einen Kleene Abschluss konstruiert und dadurch eine Blackbox f r den Ausdruck alb erstellt 5 Aus der Blackbox f r alb wird der Automat f r eine Disjunktion erstellt und damit zwei Blackboxen f r a und b 6 Nun werden nacheinander von links nach rechts in der Baumansicht des regul ren Ausdruck die Blackboxen f r die einzelnen Symbole durch einen Ubergang mit dem jeweiligen Symbol gebildet Achtung Vor der Umwandlung wird der regul re Ausdruck in Kernsyntax umgewandelt Au er Charakterklassen diese bleiben erhalten und werden im Algorithmus wie ein Symbol behandelt Regul ren Ausdruck in DEA umwandeln Im Men findet sich unter Ausf hren der Punkt Umwandeln in DEA Es ffnet sich ein Fenster das sehr hnlich dem Fenster der Umwandlung in einen e NDEA ist Zus tzlich ist hier aber neben dem Graph Fenster auch noch das Informationsfenster f r die Knoten im Graphen eingeblendet Au erdem wurde der Ausdruck um ein Endzeichen erweitert Wenn wir den Algorithmus an unserem Beispiel durchgehen erhalten wir folgenden Ablauf e Zun chst wird der Startzustand aus allen Positionen die in firstpos des gesamten Ausdruck enthalten sind gebildet Die Positionen kann m
14. Weise bearbeiten und l schen wie es bei den Zust nden m glich ist Es gibt allerdings eine Besonderheit Wenn man die Maus anstatt ber einem Zustand ber einem leeren Bereich los l sst entsteht beim Anlegen des bergangs zus tzlich ein neuer Zustand 16 KAPITEL 2 WIE ERSTELLE ICH EINEN AUTOMATEN Diesen Vorgang wiederholen wir jetzt f r alle berg nge die f r den Bei spielautomaten ben tigt werden Wenn wir damit fertig sind k nnen wir den Automaten noch validieren um zu sehen ob uns beim Anlegen der Zust nde und berg nge irgendwelche Fehler unterlaufen sind Diese Funktion erreicht man ber das Kontextmen oder ber den Men punkt Ausf hren Sollten die Zust nde nicht ganz so optimal platziert sein kann man versu chen ber die Auto Layout Funktion ein besseres Ergebnis zu erreichen Diese ist ber Ausf hren und Auto Layout oder ber das Kontextmen erreich bar 2 3 Was fange ich mit einem Automaten an F r einen erstellten Automaten gibt es folgende Verwendungsm glichkeiten 2 3 1 Bearbeiten per bergangstabelle Die berg nge eines Automaten k nnen ber die Tabelle bearbeitet werden Diese ist im rechten Teil des Fensters zu finden Es ist m glich neue berg nge anzulegen Bestehende berg nge k nnen gel scht oder editiert werden Betrachten wir ein einfaches Beispiel Wir legen zwei Zust nde z0 und z1 an und arbeiten auf dem Alphabet 0 1 Die bergangstabell
15. Wird ein e NDEA in einen NDEA umgewandelt entf llt das Anlegen des Zustandes Q es wird einfach kein bergang mit dem entsprechenden Symbol angelegt da bei einem NFA nicht alle Symbole vorhanden sein m ssen Wird ein NDEA umgewandelt kommen jeweils zwei Schritte dazu So wird nach dem Aktivieren der alten Zust nde bei unserem Beispiel die Schritte eins sieben etc der e Abschluss berechnet es werden also auch alle Zust nde ak tiviert die mit e berg ngen zu erreichen sind Gleiches gilt f r das Anzeigen der neuen Zust nde bei unserem Beispiel in den Schritten vier neun etc auch hier werden in einem einzelnen Schritt alle Zust nde hervorgehoben die mit e berg ngen zu erreichen sind 2 3 WAS FANGE ICH MIT EINEM AUTOMATEN AN 25 2 3 6 Umwandeln in Potenzmenge DI Der einzige Unterschied zwischen den Men punkten Umwandeln in und Umwandeln in Potenzmenge ist dass alle Zust nde bei Verwendung der Potenzmenge bereits zu Beginn angelegt werden auch solche die nicht ben tigt werden die also nicht erreichbar sind In dem in Abschnitt gew hlten Beispiel w re das der Zustand z1 da dieser nicht zu erreichen ist und nur einen bergang mit allen Symbolen zu dem Zustand H hat Wie solche Zust nde im Anschluss entfernt werden k nnen kann im Abschnitt 2 3 8jnachgelesen werden 2 3 7 Umwandeln in regul ren Ausdruck Es besteht die M glichkeit einen DEA in einen regul ren Ausdruck umzuwan
16. angelegt wird Dies geht dann immer so weiter bis der letzte Zustand 1 2 3 6 ab gearbeitet wurde Es gibt nun keine unmarkierten Zust nde mehr und es werden die Endzust nde gesucht Diese sind alle die die Position aus lastpos des gesamten Ausdrucks beinhalten In unserem Fall ist dies der zuletzt erstellte Zustand 1 2 3 6 4 4 WAS MACHT MAN MIT REGUL REN AUSDR CKEN 37 Achtung 1 Auch hier wird wie bei der Umwandlung in einen e NDEA der Ausdruck erst in Kernsyntax bersetzt nur dass er hier komplett bersetzt wird Achtung 2 Wenn das Alphabet viele Symbole umfasst kann es zu langen Berechnungszeiten kommen daher empfiehlt es sich dass Alphabet nicht zu gro zu w hlen Regul ren Ausdruck in NDEA umwandeln Im Men findet sich unter Ausf hren der Punkt Umwandeln in NDEA Es ffnet sich ein Fenster das sehr hnlich dem Fenster der Umwandlung in einen DEA ist Au erdem wurde auch hier der Ausdruck um ein Endzeichen 7 erweitert Der Algorithmus l uft im Prinzip genau so wie der Algorithmus zum Erstel len eines DEA nur das hier nicht Positionsmengen als Zust nde dienen sondern einzelne Positionen u Regularen Auedruckumwandeln DER Outline Nullable Startzust nde erstellen firstpos a by a Transition von 1 nach 1 mit Symbol a er Transition von 1 nach 2 mit Symbol a er Transition von 1 nach 3 mit Symbol a er Firstpos Zustand 1 markieren DEE Transition von
17. auf den Keller schreibt e Einen bergang von zl nach z2 der das erste b vom Eingabeband liest und das oberste a vom Keller l scht e Einen bergang von z2 nach z2 der alle weiteren Symbole b vom Einga bewort liest und die entsprechenden Symbole a vom Keller l scht 28 3 1 NAVIGATION 29 Damit das Wort akzeptiert wird muss sich somit bei der Wort Navigation ergeben dass das Eingabewort komplett gelesen wurde Zus tzlich muss sich der Automat entweder im Zustand z0 oder im Zustand z2 befinden wobei der Keller leer sein muss Wie die Zust nde und berg nge angelegt werden wurde bereits in die sem Handbuch beschrieben deshalb wird an dieser Stelle nur auf die Besonder heiten des Kellerautomaten eingegangen Es werden insgesamt vier berg nge ben tigt um die Sprache zu erkennen Alle berg nge m ssen Ver nderungen am Keller durchf hren Wir nehmen als Beispiel den bergang von z0 nach z1 bei dem das Symbol a vom Eingabeband gelesen und auf den Keller geschrie ben werden muss Beim Anlegen oder Editeren dieses bergangs besteht die M glichkeit das Keller Lese Wort und das Keller Schreib Wort zu editie ren In diesem Fall soll das Symbol a auf den Keller geschrieben werden es muss also beim Keller Schreib Wort das Symbol a eingetragen werden Das Keller Lese Wort muss leer bleiben da nichts vom Keller gelesen werden soll 3 1 Navigation Wurden auf diese Weise alle Zust nde und ber
18. dem eingestellten Port auf eintreffende Dateien Per Abbrechen kann der Server wieder gestoppt werden sollte keine Datei empfangen werden Wird eine Datei empfangen wird diese automatisch ge ffnet und der Server beendet Der Austausch Dialog wird nicht geschlossen so dass weitere Dateien empfangen oder verschickt werden k nnen Wird eine Datei empfangen kann der vom Sender eingestellte Kommentar im Nachrichtenfenster eingesehen werden 6 4 Bild exportieren Im Men punkt Datei besteht die M glichkeit den Automaten Graphen in ein Bild zu exportieren Der Eintrag ist nur aktiv wenn eine Automaten Datei selektiert ist Wird der Eintrag Bild exportieren angeklickt ffnet sich ein Speichern Dialog mit dem das Bild gespeichert werden kann Damit das Ergeb nis nicht zu viele freie Bereiche enth lt wird nur der vom Automaten benutzte Bereich exportiert zus tzlich zu einem 20 Pixel breiten Rand
19. verschl sselt bertragen Wenn eine Datei verschickt werden soll muss diese als erstes selektiert wer den Anschlie end muss der Austausch Dialog ge ffnet werden Dieser bietet die M glichkeit zwischen Senden und Empfangen zu w hlen Um die Da tei zu verschicken muss also Senden ausgew hlt werden au erdem muss der Host angegeben werden auf dem ein GTI Tool empfangsbereit ist Zus tzlich ist der Port anzugeben standardm ig ist Port 64528 eingestellt Der Port muss also nur ge ndert werden wenn der Empf nger der Datei ihn ebenfalls ge ndert hat Beim Senden kann zus tzlich ein Kommentar vergeben werden den der Empf nger angezeigt bekommt wenn die Datei empfangen wurde der aber sonst keinen Einfluss hat Wenn alle Werte eingestellt sind kann die Datei mit Ausf hren verschickt werden lt EE EE Eeieike kt x Datei Bearbeiten Ansicht Ausf hren Extras Hilfe DG a BB HP Nki OSL Od Ekaakr bg neueDateid enfa 0 m Austausch Horche an Port 64528 Eine Datei empfangen Routing enfa Port 64528 Host localhost Empfangen Beschreibung Sende senden Ausf hren Abbrechen Schlie en Abbildung 6 3 Austausch von Dateien Das Empfangen einer Datei funktioniert sehr einfach es muss nur der Port 6 4 BILD EXPORTIEREN 47 eingestellt werden auf dem der Server auf eingehende Dateien horchen soll Per Ausf hren horcht der Server auf
20. 0 F ge einen bergang von z0 nach Symbol a fertiggestellt Aktiviere alten Zustand z0 Berechne mowe z0 b aktiviere neue Zust nde move z0 F ge einen bergang won z0 nach Symbol b und Zustand z0 fertigge Aktiviere alten Zustand z0 z1 Berechne move z0 z1 a Drucken ok Abbrechen Abbildung 2 6 Automat Umwandeln in 2 3 WAS FANGE ICH MIT EINEM AUTOMATEN AN 23 Werden die Schritte einzeln durchgegangen ergibt sich folgender Ablauf 1 2 3 10 11 12 13 Der Start Zustand zO wird aktiviert In der unteren Ansicht wird der Start Zustand z0 angelegt Die berg nge mit dem ersten Symbol aus dem Alphabet also a wer den hervorgehoben um anzuzeigen welche Zust nde mit dem Symbol zu erreichen sind In unserem Beispiel sind das die Zust nde z0 und z1 die hervorgehoben werden In der unteren Ansicht wird ein bergang von z0 nach z0 z1 mit Symbol a angelegt Da dieser zweite Zustand in unserem Beispiel noch nicht existiert wird er angelegt Dieser Schritt zeigt an dass das Symbol a fertiggestellt ist Da f r den Zustand z0 noch nicht alle Symbole betrachtet wurden wird er aktiviert Es wird die gleiche Berechnung wie bei Schritt drei durchgef hrt aller dings f r Symbol b Da es in unserem Beispiel keinen bergang von den betroffen Zust nden bei uns nur z0 gibt werden in der oberen Ansicht
21. Datei Bearbeiten Ansicht Ausf hren Extras Hilfe KEN ETA DN EST KA STT Me History enfa z0 1 228 z3 Drucken Schlie en Wort Alphabet 0 1 Keller Keller Alphabet 0 1 Das Wort 0 wird akzeptiert Abbildung 2 4 Automat Minimieren Um die Wort Navigation zu beenden klickt man einfach wieder auf den Button Wort eingeben in der Toolbar oder man w hlt im Men Ausf hren den Punkt Automat bearbeiten Jetzt befinden wir uns wieder im normalen Modus und wir k nnen den Automaten wieder normal bearbeiten 2 3 4 Minimieren Es besteht auch die M glichkeit sich aus einem DFA den minimalen Automaten berechnen zu lassen F r diese Funktion darf der Automat allerdings keine Feh ler mehr enthalten was wir durch eine Validierung ausschlie en k nnen Das Minimieren startet man ber den Men punkt Ausf hren und Minimieren Es ffnet sich ein neuer Dialog mit einer Ansicht des Automaten und einer Tabelle Der Automat sieht im Moment noch genau wie unser Ausgangsautomat aus Wenn man allerdings jetzt auf Schritt vor klickt werden als erster Schritt 20 KAPITEL 2 WIE ERSTELLE ICH EINEN AUTOMATEN alle nicht erreichbaren Zust nde entfernt In der Outline wird angegeben um welche Zust nde es sich dabei handelt Der zweite Schritt besteht darin die erste Einteilung der quivalenzklassen vorzunehmen Dazu unterteilen wir die Zust nde des Automaten in akzepti
22. GTI Tool Benutzerhandbuch Christian Fehler Benjamin Mies Simon Meurer Fachbereich 12 Informatik und Elektrotechnik Universit t Siegen 30 Juli 2009 Inhaltsverzeichnis 3 e EE ar ee Doing 3 1 2 Anlegen von Produktionen 2 2 2 2 2 22 nennen 4 1 3 Was fange ich mit einer Grammatik an 2 2222 6 1 3 1 Einheitsproduktionen entfernen e 7 1 3 2 Produktionen entfernen T EE 8 1 3 4 Links Faktorisierung 2 222 22mm en 10 BEEN 11 12 13 2 2 Zust nde und berg nge anlegen 14 2 3 Was fange ich mit einem Automaten an 15 2 3 1 Bearbeiten per bergangstabelle 15 2 3 2 Vorlage f r Le 16 EE 16 er Ar ei 18 SE A E ee 20 2 3 6 Umwandeln in Potenzmenge 2 2 2 2 24 2 3 7 Umwandeln in regul ren Ausdruck 24 2 3 8 _ Erreichbare Zust ndel 2 22 22 2m 25 27 EE EE EE 28 ee EEEE 28 31 e e EPE EEEE EEEE 31 EEEE e e e E 31 4 3 Das Informationsfenster 32 4 4 Was macht man mit regul ren Ausdr cken 32 SE 32 ee 33 INHALTSVERZEICHNIS 4 4 3 Exportieren nach BTE X 5 Einstellungen 5 1 Oberfl che anpassen 5 2 Automaten Einstellungen anpassen 5 3 Grammatik Einstellungen anpassen 6 Sonstiges 6 1 Algorithmen 2 2 2 2 6 2 Zweite Ansicht 6 3 Austausch von Dateienl 6 4 Bild exportieren 37 39 39 40 41 43 43 Kapitel 1 Wie erstelle ich eine neue G
23. an sich 36 KAPITEL 4 WIE ERSTELLE ICH EINEN REGUL REN AUSDRUCK m Keguieren AuedrickumwandeinErDeR Kam S am een 0 Outline Nullable Startzustand erstellen firstpos alb a b d 1 2 3 d Gr Transition f r Symbol a erstellen Transition f r Symbol b erstellen PA 6 Zustand 1 2 3 markieren Firstpos Transition f r Symbol a erstellen 1 2 3 Lastpos 12 OK Abbrechen Abbildung 4 3 Regul rer Ausdruck Umwandeln in DEA auch anschauen indem man den obersten Knoten im Graph markiert In unserem Beispiel wird der Zustand 1 2 3 als Startzustand zum Automat hinzugef gt Danach l uft der Algorithmus ab Es wird f r jedes Symbol das im Al phabet vorhanden ist geschaut ob man eine weitere Position erreicht followpos In diesem Fall wird f r das Symbol a die Position 4 als Nach folger gefunden Daher wird ein bergang a vom Startzustand zu einem neuen Zustand 4 angelegt Als n chstes kommt das Symbol b F r dieses wird ein bergang zum Zustand 1 2 3 angelegt e Nun wird dieser Zustand markiert da f r ihn wenn unser Alphabet nur die Symbole a und b umfasst alle Symbole durchgegangen wurden e Nun kommen wir zum n chsten Zustand 1 2 3 4 F r diesen wird das Symbol a getestet und es wird ein bergang auf sich selbst angelegt e Danach ist b an der Reihe F r welches ein bergang in einen neuen Zustand 1 2 3 5
24. der Recursive Descent Parser in einer einfachen Programmierspra che erstellt Es wird f r jedes Nonterminal eine Funktion erstellt Also in unserem Bei spiel zun chst eine f r E Darin werden dann verschiedene F lle behandelt Da es f r E nur die Produktion E b gibt gibt es auch nur einen Fall In diesem wird das Eingabezeichen b gelesen angedeutet durch das macht b Danach wird eine Funktion f r S erstellt Diese beinhaltet drei F lle Zun chst wird im ersten Fall die erste Produktion von S behandelt Als erstes wird i ge lesen dann wird die Funktion f r das Nonterminal E aufgerufen und so weiter Den Recursive Descent Parser kann man entweder als Text speichern oder drucken Kapitel 2 Wie erstelle ich einen Automaten Wir wollen uns anhand des folgenden Beispiels anschauen wie ein Automat erstellt wird 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 a Li 0 1 2 3 4 5 6 7 8 O 6 7 8 9 g GA 0 1 2 3 4 7 0 1 2 3 4 5 6 7 8 9 4 6 0 1 2 3 4 5 6 7 8 q5 0 1 2 3 4 5 6 7 8 9 13 14 KAPITEL 2 WIE ERSTELLE ICH EINEN AUTOMATEN 2 1 Neue Automat Datei anlegen Am Anfang m ssen wir dazu erst einmal den Neu Dialog ffnen Dort w hlen wir aus dass wir einen Automaten erstellen wollen und klicken auf Weiter Im n chsten Dialog werden wir gefragt von welchem Typ unser neuer Auto mat sein soll In u
25. dus wieder m glich Lei u GI T001000 Datei Bearbeiten Ansicht Ausf hren Extras Hilfe W BB HP DN EST KA xy e Navigation dfa a u b E Wort Alphabet Keller Keller Alphabet Das Wort aaab wird nicht akzeptiert Abbildung 2 3 Automat Wort Navigation Zur Wort Navigation gelangt man ber den Men punkt Ausf hren und Wort eingeben oder direkt ber den Button in der Toolbar In dem Feld Wort k nnen wir jetzt ein Wort eingeben Als Hilfestellung sehen wir rechts neben dem Eingabefeld das aktuelle Alphabet mit den g ltigen Symbolen Nachdem wir das Wort eingegeben haben startet man die Navigation ber Start in der Toolbar oder im Kontextmen Jetzt kann man mit Schritt vor und Schritt zur ck durch das Wort navigieren Es existiert auch noch ein auto matischer Modus Dabei wird nach einer kurzen Verz gerung das n chste Sym bol gelesen Dieser Modus l sst sich durch den Button Automatische Schritte aktivieren und deaktivieren 2 3 WAS FANGE ICH MIT EINEM AUTOMATEN AN 19 Wenn man wissen m chte ber welche Pfade man zu den momentan aktiven Zust nden gelangt ist kann man sich dies ber Extras und Zustands Pfad anzeigen lassen Es ffnet sich ein neuer Dialog mit einer Tabelle in welcher f r jeden aktiven Zustand der aktuelle Pfad angezeigt wird Dabei wird als erstes der k rzeste Pfad angezeigt und dann alle weiteren K m GTi 00At
26. e besteht somit aus vier Spalten in der ersten Spalte werden die Zust nde dargestellt in der zweiten die berg nge mit e und in den anderen die Symbole des Alphabets also in unserem Fall je eine Spalte f r O und 1 Um von z0 nach z1 einen e bergang anzulegen muss die erste Zeile mit z0 bearbeitet werden Da ein e bergang angelegt werden soll muss die zweite Spalte bearbeitet werden Um dies umzusetzen muss auf die entsprechende Zelle doppelt geklickt werden Es steht ein Parser zur Verf gung in den mit Komma getrennte Zust nde eingetragen werden k nnen Die Zust nde m ssen vorhanden sein In userem Beispiel tragen wir also in der zweiten Spalte in der ersten Zeile den Zustand z1 ein und best tigen die Eingabe mit Enter Es wird wie erwartet ein e bergang von z0 nach z1 angelegt Als n chstes sollen zwei berg nge auf einmal mit Symbol 0 angelegt wer den Beide sollen von Zustand z1 ausgehen der erste soll bei z0 enden der zweite bei z1 Um dies umzusetzen muss die Zeile von z1 und die Spalte von O bearbeitet werden Da der bergang zu den beiden Zust nden gehen soll muss z0 z1 eingetragen werden Das L schen und Erweitern von berg ngen erfolgt analog 2 3 WAS FANGE ICH MIT EINEM AUTOMATEN AN 17 D Setbt dbkrkkd Datei Bearbeiten Ansicht Ausf hren Extras Hilfe Danasa gt Machine enfa Keller Operation z0 e z1 Abbildung 2 2 Automat bergangstabelle bearbeiten 2
27. eder Datei einzeln angepasst und gespeichert werden Die Eingabe kann in ge schweiften Klammern erfolgen und muss auf jeden Fall mit Komma getrennt wer den Die verwendeten Symbole d rfen nur ein Zeichen enthalten oder m ssen in Anf hrungszeichen stehen Somit w re zum Beispiel 0 if then eine g ltige Eingabe Au erdem gibt es die M glichkeit ganze Klassen von geordne ten Zeichen als Alphabet anzugeben Beispiele hierf r w ren a z 0 9 aber auch a Z Mit dem Haken bei Keller Alphabet kann man angeben dass man ein eige nes Keller Alphabet benutzen will Ist der Haken nicht gesetzt wird als Keller Alphabet das Eingabe Alphabet verwendet Die Eingabe des Keller Alphabets erfolgt auf gleiche Weise wie die des Eingabe Alphabets 5 3 Grammatik Einstellungen anpassen Im Tab Grammatik k nnen die Voreinstellungen f r Nichtterminalzeichen Terminalzeichen und f r das verwendete Startsymbol das aus der Menge der Nichtterminalzeichen sein muss eingestellt werden Die Eingabe muss genauso wie beim Alphabet erfolgen Zu beachten ist dass die Menge der Nichtterminal 5 3 GRAMMATIK EINSTELLUNGEN ANPASSEN 43 zeichen und die Menge der Terminalzeichen disjunkt sein m ssen Auch hierbei handelt es sich nur um die Voreinstellung die im Neu Dialog verwendet wird Kapitel 6 Sonstiges 6 1 Algorithmen In allen Algorithmen Fenstern gibt es einen Button Algorithmus anzeigen Dann erscheint ein Fenster
28. en Ansicht Ausf hren Extras Hilfe k nf N ac Gap Alken Ol gt PR m Grammar cfg Machine pda Nichtterminalzeichen E F Start Startsymbol E Terminalzeichen Produktionen Abbildung 6 2 Zweite Ansicht Um die Dateien in der anderen Ansicht zu ffnen gibt es zwei verschiedene M glichkeiten Zum einen kann die zweite Ansicht durch Anklicken aktiviert anschlie end eine neue Datei erstellt oder eine bestehende ge ffnet werden Eine andere M glichkeit ist das Verschieben von ge ffneten Dateien Dies ist m glich indem auf einem Tab das Popupmen ge ffnet wird ber Nach rechts verschie ben oder Nach links verschieben k nnen die Dateien in die andere Ansicht verschoben werden Eine zweite M glichkeit ist das ebenfalls auch f r das nor male Umsortieren von Tabs verf gbare Verschieben per Drag and Drop Dazu kann ein Tab einfach in die andere Ansicht gezogen und dort an der richtigen Stelle wieder losgelassen werden Wird die zweite Ansicht wieder geschlossen werden alle ge ffneten Datei en auf die normale Ansicht verschoben Beim Verlassen des Programmes wird gespeichert welche Dateien auf welcher Ansicht ge ffnet waren 46 KAPITEL 6 SONSTIGES 6 3 Austausch von Dateien Das GTI Tool bietet die M glichkeit ge ffnete Dateien zu versenden und Da teien von anderen GTI Tool Benutzern zu empfangen Zu erreichen ist der Aus tausch ber den Hauptmen eintrag Extras Die Dateien werden
29. en Ausdruck eingeben Nun ist ein Bildschirm wie in Abbildung 4 1 zu sehen Oben rechts ist das Eingabefeld f r den regul ren Ausdruck Darunter fin det man nochmal zur Orientierung das Alphabet dass wir gerade eingegeben haben Wie bereits oben erw hnt kann das Alphabet nur ber den Button Do kument editieren ver ndert werden Im Eingabefeld tragen wir nun unseren Beispielausdruck alb abb ein Direkt bei der Eingabe wird im Graph Fenster in der Mitte der regul re Ausdruck als Baum dargestellt 32 4 3 DAS INFORMATIONSFENSTER 33 SO TE SES Datei Bearbeiten Ansicht Ausf hren Extras Hilfe EI al o app d IS example regei Regul rer Ausdruck Graph Information lb abb Ba Nullable f b alse 5 N Firstpos b Gs N l a 3 Lastpos 1 Alphabet N a a b 4 b 2 Followpos 1 2 3 Fehler A Warnungen Meldung Beschreibung Abbildung 4 1 Regul rer Ausdruck Eingabefenster Beachte Um ein e einzugeben kann man sowohl das Zeichen an sich einge ben aber da die meisten Anwender nicht ber ein griechisches Tastaturlayout verf gen auch indem man die Zeichenfolge epsilon eingibt 4 3 Das Informationsfenster Im Men findet sich unter Ansicht der Eintrag Regul rer Ausdruck Info Wenn dieser Punkt aktiviert wird erscheint auf der rechten Seite neben dem Graph Fenster ein Informationsfenster
30. erende und nicht akzeptierende Zust nde In der Automatenansicht werden immer die Zust nde in der selben Farbe dar gestellt welche sich in einer quivalenzklasse befinden Jetzt haben alle nicht akzeptierenden Zust nde die gleiche Farbe Gleiches gilt f r alle akzeptierenden Zust nde welche nat rlich in einer anderen Farbe dargestellt werden m Automatminimieren Outline Die folgenden Zust nde sind ni Die folgenden Zust nde sind a Die folgenden Zust nde sind in Die folgenden Zust nde sind in Die quivalenzklassen k nnen Drucken OK Abbrechen Abbildung 2 5 Automat Minimieren 2 3 WAS FANGE ICH MIT EINEM AUTOMATEN AN 21 Man kann jetzt durch Klicken auf Schritt vor die quivalenzklassen wei ter verfeinern In der Outline wird angegeben welche Zust nde in eine eigene quivalenzklasse gekommen sind und diese werden jetzt auch in einer ande ren Farbe dargestellt Gleichzeitig werden auch die berg nge hervorgehoben welche bei diesem Verfeinerungsschritt eine Rolle gespielt haben Dabei bezie hen sich die hervorgehobenen berg nge immer auf den aktuell ausgew hlten Tabelleneintrag Auf diese Weise kann man den Automaten jetzt Schritt f r Schritt weiter verfeinern bis keine Verfeinerung der quivalenzklassen mehr m glich ist Wenn das der Fall ist wird auch eine zweite Automatenansicht eingeblendet dem entstandenen minimierten Automaten Durch best tigen mit OK
31. ernt Da am Ende der Keller leer ist und der Zustand f aktiv ist wird das Wort akzeptiert 3 2 KELLERAUTOMAT AUS GRAMMATIK ERSTELLEN 31 v CCEkfeieikkrkrtt Datei Bearbeiten Ansicht Ausf hren Extras Hilfe KEEN ECKE A DN EST KA gt ko Navigation pda Start gp Pa bergang ausw hlen E Welcher bergang soll benutzt werden Net Ei E Et ei R O e Et aEb Wort Alphabet Keller Keller Alphabet Das Wort a wird nicht akzeptiert Abbildung 3 2 Automat Nicht deterministische Kellerautomat Navigation Kapitel 4 Wie erstelle ich einen regul ren Ausdruck Wir wollen uns dies anhand des folgenden Beispiels anschauen alb abb 4 1 Neue regex Datei anlegen Zu Beginn m ssen wir dazu wie auch beim Automat und bei Grammatiken den Neu Dialog ffnen Zu finden ist dieser in der Toolbar oder im Men eintrag Datei Dort w hlen wir Regul rer Ausdruck an und klicken auf Weiter Danach m ssen wir im n chsten Dialog nur noch ein Alphabet festlegen auf welchem der regul re Ausdruck definiert ist Hier ist es auch m glich eine Klasse von Zeichen anzugeben zum Beispiel a z In unserem Beispiel w rde also ein Alphabet bestehend aus a und b gen gen Man kann dieses Alphabet auch im Nachhinein noch ber den Button Doku ment editieren ver ndern Nachdem wir ein Alphabet festgelegt haben best tigen wir dies mit Fertig 4 2 Regul r
32. g nge angelegt kann der Au tomat validiert werden und sollte keine Fehler mehr aufweisen Bei der Wort Navigation ist jetzt nicht nur das Eingabewort interessant sondern auch der dargestellte Keller Wird zum Beispiel das Wort aaabbb gew hlt wird im ers ten Schritt das Symbol a gelesen und auf den Keller geschrieben Anschlie end werden die restlichen zwei Symbole a auf den Keller gepackt und anschlie end durch die berg nge von z1 nach z2 bzw von z2 nach z2 wieder entfernt Am Ende wurde das komplette Wort aaabbb gelesen der Automat befindet sich im Zustand z2 und der Keller ist leer das Wort wird somit akzeptiert 3 2 Kellerautomat aus Grammatik erstellen Im folgenden soll ein Sonderfall der Navigation mit dem Kellerautomat betrach tet werden Dazu muss die Grammatik erstellt werden die W rter der Form a b f r n gt 0 erkennt Wie in Kapitel 1 angegeben m ssen die beiden Pro duktionen E e und E aEb angelegt werden Anschlie end wandeln wir die Grammatik in einen Kellerautomaten um dies erfolgt mit Umwandeln in im Men punkt Ausf hren Bei dieser Art der Umwandlung entsteht immer ein Kellerautomat mit zwei Zust nden s und f Der Unterschied zu normalen Auto maten ist dass jetzt vom Zustand f mehrere berg nge in sich selbst existieren so dass eine Beschriftung des berganges keinen Sinn h tte Welche berg nge genau vorhanden sind kann in der Keller Operationen Tabelle nachgesehen
33. hen sowohl die beim Automaten wie auch die bei der Grammatik verwendeten Farben aber auch einige andere Der Tooltip der auf jeder Farbe angezeigt wird gibt genauere Informationen dar ber wo die Farbe verwendet wird 5 2 Automaten Einstellungen anpassen F r einen Automaten gibt es verschiedene Einstellungsm glichkeiten so kann eingestellt werden wie berg nge angelegt werden k nnen und wie sich die Auswahl der aktiven Buttons zum Anlegen von berg ngen und Zust nden verh lt Das Anzeigen der Komponenten die nur bei Kellerautomaten einen richtigen Sinn ergeben kann angepasst werden und es kann eine Vorauswahl des verwendeten Alphabetes getroffen werden Die Einstellung bergang bietet zwei M glichkeiten Wird Maus Drag Modus ausgew hlt kann ein bergang zwischen zwei Zust nden per Drag and Drop angelegt werden Dazu muss der Drag auf dem Anfangszustand be ginnen der Drop auf dem Endzustand oder auf einer freien Stelle wobei dann ein neuer Zustand angelegt wird erfolgen Die zweite M glichkeit ist die Einstel lung Maus Klick Modus Ist diese ausgew hlt muss auf dem Anfangszustand 42 KAPITEL 5 EINSTELLUNGEN ein Mausklick erfolgen anschlie end kann auf dem Endzustand oder auf einer freien Stelle wieder mit der Maus geklickt werden um den bergang anzulegen Der Punkt Maus Auswahl bietet die M glichkeit auszuw hlen welcher Button nach dem Anlegen eines Zustandes oder eines be
34. inieren Hierzu nutzen wir eine Beispielgrammatik aus der Compilerbau 1 Vorlesung G N S P mit a b c d N 4 A S KE P S Aa S gt b A gt Ac A gt Sd A gt e 10 KAPITEL 1 WIE ERSTELLE ICH EINE NEUE GRAMMATIK Im Men findet man unter Ausf hren den Punkt Links Rekursion elimi nieren Es erscheint das folgende Fenster EN Se d Ad tt amp RH Outline Original Nichtterminalzeichen Eins a s ante Startsymbol Bl Einheitsproduktionen entfernen d Nichtterminalzeichen Terminalzeichen 3 A HeEn Produktionen A gt ac a gt Sd Startsymbol Ae A S Aa S b Terminalzeichen Heem Produktionen EE GEET EEN S gt b Drucken EN Abbrechen Abbildung 1 6 Grammatik Links Rekursion eliminieren Dieses Fenster hnelt den Fenstern zum Entfernen der Einheits bzw e Produktionen Oben im Fenster der konvertierten Grammatik kann man einstellen ob zun chst die Epsilon bzw Einheitsproduktionen entfernt werden sollen Diese M glichkeit wurde gegeben da der Algorithmus eigentlich eine Grammatik ohne Epsilon bzw Einheitsproduktionen verlangt Aber im Beispiel aus der Vorlesung Com pilerbau I wurde die eProduktion in der Grammatik belassen mit dem Hinweis dass dies nichts ausmacht Da aber das Ergebnis dann nicht exakt das selbe w re ist hier die M glichkeit gegeben die Produktionen zu bela
35. keine berg nge hervorgehoben Wie in Schritt vier werden die mit Symbol b erreichbaren Zust nde in der oberen Ansicht hervorgehoben In unserem Beispiel existiert kein bergang von Z0 mit Symbol b deshalb werden in der oberen Ansicht keine Zust nde hervorgehoben Da wir in diesem Beispiel in einen DEA umwandeln wird auch f r die sen Fall ein Zustand angelegt und zwar der nicht akzeptierende Zustand Wird dieser Zustand w hrend der Wort Navigation erreicht kann das Wort nicht mehr akzeptiert werden Aus diesem Grund wird direkt der bergang von diesem Zustand in sich selbst mit allen Symbolen des Al phabets angelegt Es wird ein bergang mit Symbol b zu diesem Zustand H angelegt Wie in Schritt sechs wird angezeigt dass das Symbol b fertig verarbeitet wurde Da dieses Symbol das letzte im Alphabet ist ist der Zustand z0 fertiggestellt In diesem Schritt wird der n chste bis jetzt noch nicht verarbeitete Zu stand zO z1 in der unteren Ansicht hervorgehoben Gleichzeitig werden in der oberen Ansicht die entsprechenden Zust nde zO und z1 hervorge hoben Es folgt wieder das Hervorheben der berg nge mit dem Symbol a wie dies in Schritt drei der Fall war 24 KAPITEL 2 WIE ERSTELLE ICH EINEN AUTOMATEN 14 Wie in Schritt vier werden die Zust nde z0 und z1 hervorgehoben 15 In Schritt f nf wurde der bergang zum Zustand z0 z1 mit Symbol a angelegt gleiches geschieht jetzt in diesem Schritt Da wir a
36. llerdings im Moment den gleichen Zustand bearbeiten wird der bergang von diesem Zustand in sich selbst angelegt 16 Das Symbol a ist fertiggestellt 17 Da der Zustand z0 z1 noch nicht fertiggestellt ist wird er in beiden Ansichten wie gehabt hervorgehoben 18 Alle berg nge die von den Zust nden z0 und z1 mit Symbol b ausgehen werden hervorgehoben In unserem Beispiel kommt das nicht vor 19 Die mit dem Symbol b erreichbaren Zust nde werden hervorgehoben in unserem Beispiel ist das wieder kein Zustand 20 Deshalb wird in diesem Schritt wieder ein bergang mit Symbol b zu dem Zustand angelegt 21 Der Zustand z0 z1 ist mit dem letzten Symbol b fertiggestellt Da keine weiteren Zust nde hinzugekommen sind ist die Umwandlung fertig gestellt Bei Betrachten des entstehenden DFA s erkennt man dass dieser die gleichen W rter erkennt wie der urspr ngliche NFA Der Dialog kann mit OK best tigt werden womit ein neuer DFA angelegt wird Es ist jetzt m glich die Namen der Zust nde neu zu vergeben wenn man mit dem Automaten weiterarbeiten m chte und nicht die l ngeren Namen dargestellt haben m chte Dazu kann man im Men Extras den Eintrag Zustandsnamen neu vergeben anklicken wodurch die Zustandsnamen neu nach dem Muster z0 z1 vergeben werden Zu den anderen zwei Umwandlungarten gibt es noch kleinere nderungen die bei dem durchgespielten Beispiel nicht betrachtet werden konnten
37. n Ort und den Dateinamen der zu erstellenden KYIEX Datei angibt Dann wird die Datei erstellt Dies w rde in unserem Beispiel zu folgendem Code f hren documentclass a4paper 1l1pt article usepackage german usepackage utf8 inputenc usepackage tree dvips begin document Erstellen des Tabulars fuer den Baum begin tabular HH ccececccccec Erstellen der Knoten fuer den Baum amp amp EE amp amp amp node fr0 cdot 4ex amp amp amp amp amp node r1 cdot amp amp amp node r3 cdot amp amp amp node r4 b 4ex amp node r5 amp amp amp node r6 a 4ex amp node r7 4ex node r8 a amp amp node r9 b end tabular Verbinden der Knoten nodeconnect r0 r1 nodeconnect r1 r3 nodeconnect r3H r5 nodeconnect r5 r7 nodeconnect r7 H r8 nodeconnect r7 H r9 amp E node r2 b 4ex 4 4 WAS MACHT MAN MIT REGUL REN AUSDR CKEN 39 nodeconnect r3 r6 nodeconnect r1 r4 nodeconnect r0 r2 kend document Dies ist ein komplettes EYIEX Dokument dass hei t diese Datei kann so f r sich genutzt werden Man kann aber auch nur den Inhalt von document in eine andere KITEX Datei einf gen Achtung 1 Es wird das Package tree dvips f r KTEX genutzt Das Package muss daher auf dem Rechner vorhanden sein um die Datei nutzen zu k nnen Achtung 2 Wenn man den Inhalt in anderen KIEX Dokumenten nutzen
38. n uns ben tigten Nichtterminalzeichen ein Dabei handelt es sich bei uns lediglich um das Symbol E Also schreiben wir in das Feld E Nun legen wir das Startzeichen fest Das ist bei uns das E welches wir in das Feld f r das Startzeichen schreiben Zum Schluss m ssen wir noch die Terminalzeichen festlegen Dazu tragen wir in das entsprechende Feld 0 1 x y ein Damit haben wir alle ben tigten Information eingegeben und k nnen die neue Grammatik durch Klick auf Fertig erstellen Neu B Einen neuen Automaten oder eine neue Grammatik anlegen Nichtterminalzeichen e Startsymbol E Terminalzeichen e 1 8966 Zur ck fenig Abbrechen Abbildung 1 1 Grammatik Neu Dialog Alle Einstellungen die wir gerade im letzen Dialog f r die neue Datei ge troffen haben lassen sich ber Dokument editieren nachtr glich ndern 1 2 Anlegen von Produktionen Um eine neue Produktion anzulegen k nnen wir den entsprechenden Button in der Toolbar verwenden oder ber den Kontextmen eintrag gehen Im Dialog f r neue Produktionen m ssen wir zun chst einmal angeben f r welches Nichtterminalzeichen wir eine Produktion anlegen m chten Die ses k nnen wir aus einer Liste der verf gbaren Zeichen ausw hlen Da wir in unserem Beispiel nur ein Nichtterminalzeichen haben ist schon das richtige aus gew hlt und wir k nnen diesen Schritt bers
39. nn mit diesem weiterarbeiten 2 3 5 Umwandeln in Es besteht auch die M glichkeit zwischen verschiedenen Automatentypen um zuwandeln Dabei stehen drei Umwandlungen zur Verf gung die sich in den verwendeten Schritten unterscheiden e NDEA DEA e NDEA DEA e NDEA NDEA 22 KAPITEL 2 WIE ERSTELLE ICH EINEN AUTOMATEN Betrachten wir als erstes einen einfachen NDEA mit zwei Zust nden zO und z1 und zwei berg ngen der auf dem Alphabet a b arbeitet Der Zu stand zO ist ein Start Zustand der Zustand z1 ein akzeptierender Zustand Der erste bergang besteht zwischen z0 und z1 mit Symbol a der zweite geht von 20 in sich selbst ber ebenfalls mit a Der Automat erkennt somit W rter von der Form a f r n gt 1 ber den Eintrag Umwandeln in im Men eintrag Ausf hren kann ausgew hlt werden in welchen Automaten um gewandelt wird Da wir einen NDEA angelegt haben ist hier nur der DEA verf gbar Wird dieser ausgew hlt steht die schon aus anderen Ansichten be kannte Oberfl che zur Verf gung Auch hier kann in einzelnen Schritten sowie automatisch navigiert werden Wird der Dialog mit OK best tigt steht in der Hauptansicht der umgewandelte Automat zur Verf gung Mit Abbrechen wird der Dialog einfach nur geschlossen m Automat umwandeln NDEA DEA Outline Aktiviere Start Zustand z0 F ge Start Zustand z0 ein Berechne move z0 a Aktiviere neue Zust nde move z
40. nserem Beispiel handelt es sich um einen e NDEA welchen wir ausw hlen und mit Weiter best tigen Dann m ssen wir das gew nschte Alphabet f r den neuen Automaten an geben Im Alphabet k nnen alle Symbole werwendet werden die nicht zur Syntax der Eingabe geh ren Das bedeutet und k nnen hier nicht verwendet werden Symbole welche l nger als ein Zeichen sind m ssen in Anf hrungszeichen angegeben werden In dem Dialog sind an allen Stellen schon vordefinierte Werte eingetragen Dabei handelt es sich um die Vorgaben die man als Standardwerte in den Einstellung eingetragen hat Wie man diese Standardwerte ndert kann man in Kapitel 5 nachlesen Wir m ssen noch die von uns ben tigten Symbole angeben Dazu tragen wir in das Feld Alphabet 0 1 2 3 4 5 6 7 8 9 ein Damit haben wir alle ben tigten Information eingegeben und k nnen den neuen Automaten durch Klick auf Fertig erstellen Neu B Einen neuen Automaten oder eine neue Grammatik anlegen Eingabe Alphabet 0 1 2 3 4 5 6 7 8 9 Keller Alphabet Zur ck Eertig _ Abbrechen Abbildung 2 1 Automat Toolbar Das f r den Automaten angegebene Alphabet l sst sich jeder Zeit ber den Button Dokument editieren n chtr glich ndern 2 2 ZUST NDE UND BERG NGE ANLEGEN 15 2 2 Zust nde und berg nge anlegen Um einen Automaten zu bearbeiten
41. pringen Jetzt m ssen wir noch das Produktions Wort angeben Als Hilfestellung wird in dem Dialog angezeigt welche Nichtterminalzeichen und Terminalzeichen uns zur Verf gung stehen Wir fangen an mit der Produktion E E E Al 6 KAPITEL 1 WIE ERSTELLE ICH EINE NEUE GRAMMATIK so geben wir als Produktions Wort E E ein Als weitere Hilfestellung wird im unteren Dialog die resultierende Produktion im Ganzen angezeigt Wir best tigen den Dialog noch mit OK und die neue Produktion erscheint in unserer Liste m Produktion Nichtterminalzeichen Nichtterminalzeichen Terminalzeichen E It A Se 0 1 X Y Produktions Wort Resultierende Produktion _ Abbrechen Abbildung 1 2 Grammatik Produktions Dialog Wir k nnen die Produktion selbstverst ndlich auch editieren und wieder l schen Beide Funktionen sind ber das Kontextmen f r die ausgew hlte Pro duktion verf gbar Diesen Vorgang wiederholen wir jetzt f r unsere komplette Menge P Wenn wir alle Produktionen angelegt haben sind wir auch mit dem Anlegen der Gram matik fertig Es besteht jetzt noch die M glichkeit die Grammatik zu validie ren um zu sehen ob man beim Erstellen irgendwelche Fehler gemacht hat Diese Funktion erreicht man ber das Kontextmen oder ber den Men punkt Ausf hren 1 3 WAS FANGE ICH MIT EINER GRAMMATIK AN 7 u GT 10011000 Datei Bearbeiten Ansicht Ausf hren g a E
42. rammatik Wir wollen das jetzt einmal an Hand folgenden Beispiels aus den Vorlesungsun terlagen durchgehen G 2 N P mit 0 1 x y N 4 E S E P E gt 0 E gt 1 E gt x E gt y E gt E E E E E gt E E E E E 1 1 Neue Grammatik Datei anlegen Am Anfang m ssen wir dazu erst einmal den Neu Dialog ffnen Zu finden ist dieser in der Toolbar oder im Men eintrag Datei Dort w hlen wir aus dass wir eine Grammatik erstellen wollen und klicken auf Weiter Im n chsten Dialog werden wir gefragt von welchem Typ unsere neue Gram matik sein soll In unserem Beispiel handelt es sich um eine Kontextfreie Gram matik welche wir ausw hlen und mit Weiter best tigen Als n chstes m ssen wir die ben tigten Nichtterminalzeichen N Terminal zeichen und das Startzeichen S angeben Als Zeichen k nnen alle Symbole werwendet werden die nicht zur Syntax der Eingabe geh ren Das bedeutet und k nnen hier nicht verwendet werden Symbole welche l nger als ein Zeichen sind m ssen in Anf hrungszeichen angegeben werden In dem Dialog sind an allen Stellen schon vordefinierte Werte eingetragen Dabei handelt es sich um die Vorgaben die man als Standardwerte in den Einstellungen eingetragen hat 1 2 ANLEGEN VON PRODUKTIONEN 5 Wie man diese Standardwerte ndert kann man in Kapitel 5 nachlesen Wir tragen jetzt als erstes die vo
43. rem Beispiel zun chst die Produktion A Aa und danach die Produktion A b Zum Schluss werden die Einheitsproduktionen entfernt Also in unserem Fall A S 1 3 2 eProduktionen entfernen Hierzu nutzen wir die folgende Beispielgrammatik 1 3 WAS FANGE ICH MIT EINER GRAMMATIK AN 9 G N S P mit X a b c d N A S EE P S Aa S gt b A gt Ac A gt Sd A gt e Unter dem Men punkt Ausf hren findet man den Punkt e Produktionen entfernen Es erscheint das folgende Fenster Outline oriai Produktion f r A gefunden Nichtterminalzeichen SE Neue Produktion A c erzeugt an a s Star symbol en B 5 Terminalzeichen Terminalzeichen caa BEER Produktionen A gt AC A Sd Ase S gt Aa EE AE Drucken 1 Agorithmus anzeigen Abbildung 1 5 Grammatik e Produktionen entfernen Dieses Fenster ist im Prinzip das gleiche wie beim Entfernen der Einheits produktionen Zun chst sucht der Algorithmus nun nach einer eProduktion und findet die eine f r A Nun wird f r jede Produktion wo A auf der rechten Seite vorkommt eine gleiche Produktion ohne A auf der rechten Seite angelegt In unserem Beispiel wird zun chst die Produktion A c und dann S a angelegt Zum Schluss werden die e Produktionen entfernt au er der f r das Start symbol Also in unserem Fall A 1 3 3 Links Rekursion elim
44. ren Ausdruck in NDEA umwandeln Im Men findet sich unter Ausf hren der Punkt Umwandeln in e NDEA Es ffnet sich ein Fenster in welchem in der oberen Ansicht der regul re Ausdruck als Graph dargestellt ist Links ist die Outline zu sehen in der die Informationen ber den aktuellen Schritt zu finden sind und unten ist ein noch leerer Automat in welchem im Verlauf des Algorithmus der NDEA erstellt wird Oben befindet sich die Navigationsleiste mit der durch den Algorithmus navigiert werden kann Der Algorithmus geht im Prinzip den Graph von oben nach unten durch und legt dabei jeweils eine Blackbox f r alle nicht Blattknoten an Wenn wir nun den Algorithmus f r unser Beispiel durchgehen kommen wir zu folgender Reihenfolge 1 Zun chst wird der Automat f r die Konkatenation alb ab b welche im Graph Fenster markiert wird erstellt Dieser besteht aus zwei Blackboxen eine f r den regul ren Ausdruck alb ab und eine f r das Symbol b Es werden dabei auch der Start und der Endzustand des Automaten erstellt Diese ndern sich auch w hrend des Algorithmus nicht mehr 2 Aus der Blackbox f r alb ab werden zwei Blackboxen Eine f r alb a und eine f r b 3 Aus der Blackbox f r alb a werden zwei Blackboxen Eine f r a b und eine f r a 4 4 WAS MACHT MAN MIT REGUL REN AUSDR CKEN 35 Kam bb Bn Outline N Automat f r Konkatenation a b ab b erstellen Automat f r
45. rganges aktiviert wird Ist Ohne R cksprung zur Maus ausgew hlt bleibt der zuletzt aktive Button unver ndert In diesem Modus k nnen also mehrere berg nge nacheinander angelegt werden ohne dass jedesmal wieder der Button Neuer bergang ak tiviert werden muss Wenn Mit R cksprung zur Maus ausgew hlt ist wird nach jedem Anlegen wieder der Maus Button aktiviert Dieser Modus ist bes ser dazu geeignet wenn nur einzelne Zust nde oder berg nge angelegt werden m ssen da nach dem Anlegen direkt wieder Komponenten im Graphen aus gew hlt werden k nnen Mit der Option Kellerautomat Modus kann eingestellt werden welche In formationen der Benutzer angezeigt bekommt wenn er einen Automaten ohne Keller bearbeitet Ist Alle Komponenten anzeigen ausgew hlt werden auch auf einem Automaten ohne Keller die Information zu diesem angezeigt Dies be trifft die Keller Operationen Tabelle das Eingeben der W rter die vom Keller gelesen bzw auf ihn geschrieben werden im bergangs Dialog und noch eini ge andere Komponenten Ist Nur anzeigen wenn Kellerautomat ausgew hlt aktiviert werden diese Komponenten bei Automaten ohne Keller ausgeblendet bzw deaktiviert Im Tab Alphabet befindet sich die M glichkeit das Eingabe Alphabet sowie das Keller Alphabet zu bearbeiten Bei den hier eingestellten Werten han delt es sich um die Voreinstellung f r neue Dateien Beide Alphabete k nnen auf j
46. ssen F r ande re Beispiele sollte man aber diese beiden Optionen angestellt lassen da sonst der Algorithmus falsche Ergebnisse liefern kann In unserem Beispiel schalten wir die Option Epsilonproduktionen entfernen aus Als n chstes kann die Reihenfolge der Nichtterminalzeichen eingestellt wer den da auch diese sich auf die Ergebnisse des Algorithmus auswirken Die Rei henfolge kann nat rlich genau wie die beiden Optionen zum Entfernen von Pro duktionen nur am Anfang ver ndert werden In der Vorlesung wurde die Reihenfolge S A gew hlt daher schieben wir das A einfach nach oben Nun kann der Algorithmus ablaufen e Im initialen Schritt passiert nichts mit der Grammatik da i j ist und 1 3 WAS FANGE ICH MIT EINER GRAMMATIK AN 11 f r S keine direkte Linksrekursion existiert e Nun kommen durch den Durchlauf im Algorithmus zwei Produktionen A Abd A bd hinzu und die Produktion A Sd wird entfernt e Im letzten Schritt dieses Beispiels ist j und es wird daher nur noch die direkte Linksrekursion von A entfernt 1 3 4 Links Faktorisierung Hierzu nutzen wir folgende Beispielgrammatik aus der Compilerbau 1 Vorlesung G N S P mit a b e i t N E S KEE P S iEtSeS S iEtS S a E b Nun findet man im Men unter Ausf hren den Punkt Links Faktorisierung Es erscheint das folgende Fenster EARO EEr E E Outline Original Konvertiert Nicht
47. terminalzeichen KS S Startsymbol g Terminalzeichen a b e i t Produktionen E b S iEtses SU s gt a Drucken ok Abbrechen Abbildung 1 7 Grammatik Links Faktorisierung Ganz links befindet sich die urspr ngliche Grammatik Rechts daneben fin det man die konvertierte Grammatik Wenn man den Algorithmus dann ablaufen l sst ist der Algorithmus be reits nach einem Schritt fertig Der Algorithmus findet als l ngstes gemeinsames Pr fix iEtS und erzeugt ein neues Nichtterminalzeichen S Als Produktionen kommen hinzu S iEtSS S e S eS entfernt wurde die Produktion S iEtSeS 12 KAPITEL 1 WIE ERSTELLE ICH EINE NEUE GRAMMATIK 1 3 5 Recursive Descent Parser erstellen Hierzu nutzen wir eine Beispielgrammatik aus der Compilerbau 1 Vorlesung G N S P mit a b e i t N 1 E S EE P S iEtSeS S iEtS S a E b Nun findet man im Men unter Ausf hren den Punkt Recursive Descent Parser erstellen Es erscheint das folgende Fenster Gett Hate DESCENLPATSET ja x void E0 case match b void 50 case matchi E0 match t S0 match e 50 case matchi E0 match 50 case match a Als Text speichern Drucken Abbildung 1 8 Grammatik Recursive Descent Parser Es wurde
48. tte navigiert werden Es geht hierbei darum in m glichst kleinen Schritten zu erkennen welche Zust nde erreichbar sind und welche nicht Der verwendete Algorithmus geht dabei in folgenden drei Schritten vor e Ein Zustand der noch nicht berechnet wurde wird ausgew hlt am An fang wird mit dem Start Zustand begonnen e Die von dem ausgew hlten Zustand aus zu erreichenden Zust nde werden hervorgehoben und falls sie noch nicht berechnet wurden zu der Menge der noch zu berechnenden Zust nde hinzugef gt e Die bis jetzt erreichbaren Zust nde werden hervorgehoben Die Menge der noch nicht berechneten Zust nde angezeigt Der Algorithmus l uft so lange bis die Menge der noch nicht berechneten Zust nde leer ist Am Ende werden alle erreichbaren Zust nde farblich hervor gehoben Wie in den anderen Dialogen besteht jederzeit die M glichkeit den Dialog abzubrechen wobei er dann einfach geschlossen wird Man hat auch je derzeit die M glichkeit mit einem Klick auf OK die komplette Berechnung durchzuf hren und einen Automaten anzulegen der nur noch die erreichbaren Zust nde enth lt 2 3 WAS FANGE ICH MIT EINEM AUTOMATEN AN m Erreichbare zustande Outline Aktiviere Start Zustand z0 iviere n chsten Zustand z1 tiviere die erreichbaren Zust nde z3 z5 Zustand z1 fertiggestellt noch zu berechn tiviere n chsten Zustand z3 iviere die erreichbaren Zust nde z5 z7 Drucken ok
49. will muss unbedingt die Zeile usepackageftree dvips zur Pr ambel des Dokuments hinzugef gt werden Achtung 3 Wenn die erstellte EIIEX Datei mit pdflatex ausgef hrt wird werden die Kanten nicht mit gezeichnet Daher sollte man zun chst latex da tei tex ausf hren und danach dvipdf datei dvi oder hnliches nutzen Kapitel 5 Einstellungen Die Oberfl che des GTI Tools kann den eigenen Bed rfnissen angepasst werden Dazu kann man die Einstellungen im Men punkt Bearbeiten ffnen Alle Ein stellungen werden erst bei Klick auf bernehmen oder OK bernommen Per Klick auf Standard kann man die Einstellungen auf die Standardwerte zur cksetzen 5 1 Oberfl che anpassen Auf dem Tab Allgemein kann die Sprache eingestellt werden zur Auswahl stehen im Moment Deutsch und Englisch Ist Default ausgew hlt wird die Systemsprache verwendet sollte diese Deutsch oder Englisch sein Ist dies nicht der Fall wird Englisch verwendet GTI Tool verwendet standardm ig TinyLaF als Look amp Feel es kann aber auch jedes andere auf dem System zur Verf gung stehende Look amp Feel benutzt werden Die Option Wort Modus bezieht sich auf die Darstellung des Wortes w hrend der Wort Navigation Ist Linksb ndig ausgew hlt wird das Wort normal linksb ndig dargestellt W hrend der Navigation werden schon gelese ne Symbole hervorgehoben Ist dagegen Rechtsb ndig

Download Pdf Manuals

image

Related Search

Related Contents

Copyright © All rights reserved.
Failed to retrieve file