Powerpoint-Präsentation

 Documents

 160 views
of 64
All materials on our website are shared by users. If you have any questions about copyright issues, please report us to resolve them. We are always happy to assist you.
Description
Formale Sprachen Klaus Becker 2010 2 Formale Sprachen 3 Teil 1 Sprachen und ihre Beschreibung 4 Email-Adresse Vertippt! Sie wollen immer auf dem neuesten Stand…
Share
Transcript
Formale Sprachen Klaus Becker 2010 2 Formale Sprachen 3 Teil 1 Sprachen und ihre Beschreibung 4 Email-Adresse Vertippt! Sie wollen immer auf dem neuesten Stand sein und daher die entsprechende „Newsletter“ abonnieren. Gott sei Dank „bemerkt“ das System ihren Tippfehler. Quelle: http://www.abc.net.au/rn/newsletters/music/default.htm 5 Gültige Email-Adressen Mit speziellen Programmen (sog. Validierern) kann man überprüfen, ob eine Email-Adresse korrekt gebildet ist. Nur – was heißt hier korrekt? Quelle: http://www.web-toolbox.net/webtoolbox/index.htm 6 Aufbau einer Email-Adresse 2822 Quelle: http://www.web-toolbox.net/ webtoolbox/index.htm 7 Ein Blick in die RFC 2822 RFC 2822 Internet Message Format April 2001 3.4.1. Addr-spec specification An addr-spec is a specific Internet identifier that contains a locally interpreted string followed by the at-sign character ("@", ASCII value 64) followed by an Internet domain. The locally interpreted string is either a quoted-string or a dot-atom. If the string can be represented as a dot-atom (that is, it contains no characters other than atext characters or "." surrounded by atext characters), then the dot-atom form SHOULD be used and the quoted-string form SHOULD NOT be used. Comments and folding white space SHOULD NOT be used around the "@" in the addr-spec. addr-spec = local-part "@" domain Informelle local-part = dot-atom / quoted-string / obs-local-part Beschreibung domain = dot-atom / domain-literal / obs-domain domain-literal = [CFWS] "[" *([FWS] dcontent) [FWS] "]" [CFWS] dcontent = dtext / quoted-pair dtext = NO-WS-CTL / ; Non white space controls ... Quelle: http://www.ietf.org/rfc/rfc2822.txt Formale Präzisierung 8 Zielsetzung und Vorgehensweise Ziel ist es, Verfahren der Informatik zur präzisen Beschreibung sprachlicher Strukturen zu erarbeiten. Wir werden analog zur Darstellung in der RFC 2822 Präzisierungen für vereinfachte Email-Adressen entwickeln und die dabei benutzten Präzisierungsverfahren genauer studieren. 9 Sprachen in der Informatik inf-schule@gmx.de X: 1 1 JMP 4 Steckbrief von Bailey T: Brother John 2 INC 1 C: Traditional 3 DEC 2 L: 1/4 4 TST 2

Steckbrief

K: C 5 JMP 2

Foto von Bailey

CDEC|CDEC|EFGz|\ % continues 6 HLT

w: Are you slee-ping, Are you slee-ping, Ich heiße Bailey. Ich lebe in der Nähe Bro-ther John!\ % continues von Kaiserslautern. EFGz| def invertieren(daten):

w: Bro-ther John! d = daten.replace("\n", " ")

liste1 = d.split() G/ A/ G/ F/ EC|G/ A/ G/ F/ EC|\ % continues Ich interessiere mich für Agility-Sport. graustufen = int(liste1[3]) w: Mor-ning bells are rin-ging, Mor-ning Meine Lieblingsdisziplinen sind: bells are rin-ging,\ zeilenlaenge = int(liste1[1])

FB,Ez|FB,Ez|] liste2 = liste1[:4]
    w: ding ding dong, ding ding dong! for element in liste1[4:]:
  • Sprung durch einen Reifen
  • z1 = int(element)
  • Lauf über eine Wippe
  • z2 = graustufen - z1
  • Slalomlauf zwischen Stangen
  • liste2 = liste2 + [str(z2)]
P2 d = liste2[0] + "\n"

d = d + liste2[1] + " " + liste2[2] + "\n" Ich gehe jedes5 Wochenende 8 zur 15 d = d + liste2[3] + "\n" Welpenschule 15 15 8 15 15 i = 4 . 15 8 8 8 15 while i < len(liste2):

8 8 8 8 8 if (i-3) % zeilenlaenge == 0: 12 12 12 12 12 d = d + liste2[i] + "\n" 12 5 12 5 12 else: 12 12 12 12 12 d = d + liste2[i] + " " rnbqkb1r/pp1p1ppp/2p2n2/8/2P1p3/2N2NP1/PP1PPP1P/R1BQKB1R 12 5 12 5 12 i = i KQkq w + 1 - 0 5 12 12 12 12 12 return d 10 Aufgabe Aufgabe: Darstellung und Verarbeitung von Bildern Was leistet die Sprache PGM? Was leistet die Sprache Python? Worin unterscheiden sich Sprachen wie PGM oder Python von natürlichen Sprachen wie Deutsch oder Englisch? def invertieren(daten): ... d = daten.replace("\n", " ") liste1 = d.split() # Test graustufen = int(liste1[3]) zeilenlaenge = int(liste1[1]) bild = """ liste2 = liste1[:4] P2 for element in liste1[4:]: 5 8 z1 = int(element) 15 z2 = graustufen - z1 15 15 8 15 15 liste2 = liste2 + [str(z2)] 15 8 8 8 15 d = liste2[0] + "\n" 8 8 8 8 8 d = d + liste2[1] + " " + liste2[2] + "\n" 12 12 12 12 12 d = d + liste2[3] + "\n" 12 5 12 5 12 i = 4 12 12 12 12 12 while i < len(liste2): 12 5 12 5 12 if (i-3) % zeilenlaenge == 0: 12 12 12 12 12 d = d + liste2[i] + "\n" """ else: d = d + liste2[i] + " " print(invertieren(bild)) i = i + 1 return d ... 11 Aufgabe Aufgabe: Darstellung von Musik (a) Verstehst du die Sprache ABC? Schau dir gegebenenfalls auch den folgenden Notentext an. (Quelle: Guido Gonzato: Musik setzen mit ABCPLUS) (b) Wer benutzt wohl die Sprache ABC zu welchem Zweck? X: 1 T: Brother John C: Traditional L: 1/4 K: C CDEC|CDEC|EFGz|\ % continues w: Are you slee-ping, Are you slee-ping, Bro- ther John!\ % continues EFGz| w: Bro-ther John! G/ A/ G/ F/ EC|G/ A/ G/ F/ EC|\ % continues w: Mor-ning bells are rin-ging, Mor-ning bells are rin-ging,\ FB,Ez|FB,Ez|] w: ding ding dong, ding ding dong! 12 Aufgabe Aufgabe: Römische Zahldarstellung (a) Schau dir die Darstellung der Uhrzeiten genau an. Etwas stimmt hier nicht - zumindest wenn man strenge Regeln anlegt. Formuliere die Regeln, die man zur Bildung römischer Zahlen beachten muss. (b) Welche Hausnummer hat das Haus? Formuliere die Regeln, die man zur Umwandlung von römischen Zahlen in unser gängiges Zahlensystem beachten muss. Aufgabe: Mathematikunterricht in Ipogesien: In Ipogesien hört man im Mathematikunterricht der 1. Klasse ständig folgende Wörter: ipigisi, isipigisisi, ipisigisisi, isisipigisisisi, isipisigisisisi, ipisisigisisisi, ... Nachdem Ipo das Wort isipisisigisisisisisi sagt, gibt es ein Aufmurren. Warum wohl? (a) Wie sind die Wörter der ipigisi-Sprache aufgebaut? (b) Hast du eine Idee, was die Wörter der ipigisi-Sprache bedeuten? Tipp: Es handelt sich um Additionsaufgaben. 13 Sprachen in der Informatik Information muss zunächst in Form von Daten formal dargestellt werden, bevor sie verarbeitet werden kann. Daten können dann mit Hilfe von Computerprogrammen zu neuen Daten verarbeitet werden oder auch zu anderen Computern transportiert werden. Wenn die hierdurch erzeugten bzw. transportierten Daten gedeutet werden, entsteht neue Information. Sprachen spielen bei diesem Vorgehen eine zentrale Rolle. PGM PGM Python 14 Sprachen in der Informatik Sprachen zur Darstellung von Information: Sprachen zur Verarbeitung von Daten: HTML Python XML Java SVG Delphi ABC Assembler ... ... Information Information Darstellen Deuten Daten Daten Verarbeiten 15 Sprachen in der Informatik Gemeinsamkeiten mit natürlichen Sprachen:  Man nutzt sie, um bestimmte Sachverhalte zu beschreiben.  Sie dienen der Kommunikation.  Man muss bestimmte Regeln beachten, wenn man sie nutzt.  Sprachelemente haben eine ganz bestimmte Bedeutung.  ... 16 Sprachen in der Informatik Unterschiede zu natürlichen Sprachen: Computersprachen müssen eindeutig und präzise sein. Bei der Verwendung von Computersprachen führen bereits keinste Ungenauigkeiten dazu, dass der Computer den mit der Sprache beschiebenen Sachverhalt nicht mehr versteht. Bei natürlichen Sprachen kann man sich meist darauf verlassen, dass bei sprachlichen Ungenauigkeiten der Kommunikationspartner schon versteht, was man meint. Allerdings kommt es dabei auch oft zu Missverständnissen. Solche Missverständnisse gilt es bei Computersprachen durch Präzision und Eindeutigkeit zu vermeiden. 17 Fachkonzept - formale Sprache Ein Alphabet ist eine nicht-leere endliche Alphabet der römischen Zahlen: (geordnete Menge) von Symbolen.  = {I, V, X, L, C, D, M} Ein Wort über einem Alphabet ist e. Hinter- Wörter über dem Alphabet der römischen einanderreihung endlich vieler Symbole aus Zahlen: einem vorgegebenen Alphabet. MMX, LXX, XXL, LILLI, ... Bei der Bildung von Wörtern über einem Alphabet Σ lässt man auch zu, dass überhaupt keine Symbole hintereinandergereiht werden. Man nennt dieses besondere Wort leeres Wort und bezeichnet es üblicherweise mit ε oder λ. Die Menge aller Wörter über einem Alphabet Menge aller Wörter über dem Alphabet Σ wird mit Σ* bezeichnet. Mit Σ+ bezeichnet  = {I, V, X, L, C, D, M}: man die Menge aller Wörter über Σ ohne das leere Wort. * = {λ, I, II, III, IIII, ..., IX, ..., IIXIXX, ...} Eine (formale) Sprache über einem Alphabet Sprache der römischen Zahlen: Σ ist eine bestimmte Teilmenge der Menge Σ* aller möglichen Wörter über Σ. L = {I, II, III, IV, V, VI, VII, VIII, IX, X, ...} 18 Fachkonzept - Syntax / Semantik Die Syntax einer Sprache beschreibt, welche Die Semantik einer Sprache beschreibt, Wörter über dem vorgegebenen Alphabet zur welche Bedeutung den Wörter über dem Sprache gehören. vorgegebenen Alphabet zugeordnet wird. Welche Kombinationen von Symbolen aus Die Bedeutung von Wörtern über Σ = {I, V, dem Alphabet Σ = {I, V, X, L, C, D, M} eine X, L, C, D, M}, die eine römische Zahl römische Zahl ergeben, lässt sich mit Hilfe darstellen, lässt sich wie folgt beschreiben: von Syntaxregeln beschreiben:  I steht für 1, V für 5, X für 10, L für 50, C  Die Symbole V, L und D kommen für 100, D für 500, M für 1000. höchstens einmal vor.  Der Wert einer Folge von Symbolen aus A  Die Symbole I, X, C, M kommen höchstens = {I, V, X, L, C, D, M} lässt sich in der Regel dreimal hintereinander vor. durch Addition der Werte der einzelnen Symbole bestimmen.  Das Symbole I kann den Symbolen V und X genau einmal vorangestellt werden.  Ausnahme: Ist eines der Symbole I, X und Entsprechend kann das Symbol X den C einem höherwertigen Symbol vorangestellt, Symbolen L und C sowie das Symbol C den so wird der Wert dieser Symbolkombination Symbolen D und M vorangestellt werden. (aus vorangestelltem Symbol und höher- wertigem Symbol) bestimmt, indem man den  ... Wert des vorangestellten Symbols vom Wert des höherwertigen Symbols subtrahiert.  ... 19 Trennung zwischen Syntax u. Semantik Das folgende Beispiel soll klarmachen, dass Syntax und Semantik unabhängige Merkmale einer Sprache sind. Alphabet: Σ = {i, p, g, s}. "isi-Folgen": i, isi, isisi, .... Folge von i-Symbolen, bei der jeweils benachbarte i-Symbole durch ein s getrennt sind. "ipigisi-Folgen": ipigi, ipigisi, isipigisi, isipigisi, ... Struktur: isi-Folge p isi-Folge g isi-Folge. Sprache der beliebigen ipigisi-Ausdrücke: L1 = {ipigi, isipigi, ipisigi, ipigisi, isipisigi, ...} alle Wörter über dem Alphabet Σ = {i, p, g, s}, die eine ipigisi-Folge bilden. Sprache der mathematisch korrekten ipigisi-Ausdrücke: L2 = {ipigisi, isipigisisi, ipisigisisi, isisipigisisisi, isipisigisisisi, ipisisigisisisi, ...} alle Wörter über dem Alphabet Σ = {i, p, g, s}, die eine ipigisi-Folge bilden und bei denen die Summe der i-Symbole vor und nach dem g-Symbol gleich sind. 20 Trennung zwischen Syntax u. Semantik Symbole und Symbolkombinationen werden oft so gewählt, dass sie eine bestimmte Bedeutung suggerieren. Das Beispiel zeigt aber, dass die Bedeutung den syntaktischen Einheiten nicht innewohnt, sondern unabhängig hiervon festgelegt werden muss. Einheit Bedeutung Einheit Bedeutung ipigisi 1+1=2 ipigisi 1 ist gleich 1 subtrahiert von 2 isipigisisi 2+1=3 isipigisisi 2 ist gleich 1 subtrahiert von 3 ipisigisisi 1+2=3 ipisigisisi 1 ist gleich 2 subtrahiert von 3 isisipigisisisi 3+1=4 isisipigisisisi 3 ist gleich 1 subtrahiert von 4 isipisigisisisi 2+2=4 isipisigisisisi 2 ist gleich 2 subtrhiert von 4 ipisisigisisisi 1+3=4 ipisisigisisisi 1 ist gleich 3 subtrahiert von 4 ... ... gleiche Syntax, unterschiedliche Semantik 21 Übungen Aufgabe : Die Sprache FEN Die Sprache FEN (Forsyth-Edwards-Notation) wird benutzt, um Schach-Spielzustände zu beschreiben. Viele Schachprogramme nutzen diese Sprache, wenn Spielzustände abgespeichert werden. So wird etwa der Schach-Spielzustand in der folgenden Abbildung wie folgt in der Sprache FEN beschrieben: rnbqkb1r/pp1p1ppp/2p2n2/8/2P1p3/2N2NP1/PP1PPP1P/R1BQKB1R w KQkq - 0 5 Wir betrachten der Einfachheit halber nur den ersten Teil eines solchen "FEN-Wortes", der die aktuelle Spielbrettbelegung beschreibt: rnbqkb1r/pp1p1ppp/2p2n2/8/2P1p3/2N2NP1/PP1PPP1P/R1BQKB1R (a) Welches Alphabet Σ liegt der Sprache L der reduzierten FEN-Wörter zur Beschreibung von Spielbrettbelegung zu Grunde? (b) Gib Beispiele für Wörter über Σ an, die zu L bzw. nicht zu L gehören. (c) Beschreibe in Worten die Syntaxregeln, die reduzierten FEN-Wörtern zu Grunde liegen. (d) Schreibe eine Anleitung zur Deutung der Wörter aus L. 22 Übungen Aufgabe: Die Sprache "hallihallo" Zur Sprache "hallihallo" gehören die folgenden Wörter: hallo, hallihallo, hallihallihallo, hallihallihallihallo, ... (a) Welche Alphabete könnte man hier als Grundlage der Sprache wählen? (b) Beschreibe die Regeln, nach denen die Wörter der "hallihallo"-Sprache gebildet werden. (c) Überlege dir auch eine (ausgefallende) Bedeutung der Wörter. 23 Teil 2 Syntaxdiagramme 24 Aufbau einer Email-Adresse 2822 Quelle: http://www.web-toolbox.net/ webtoolbox/index.htm 25 Beispiel: Vereinfachte E-Mail-Adressen Zur Reduktion der Komplexität werden wir nur sehr einfache E-Mail-Adressen mit einem stark reduzierten Zeichensatz erfassen. Zudem benutzen wir eine grafische Darstellung der Grammatik in Form von Syntaxdiagrammen. 26 Aufgabe (a) Die Adresse abba@cad.de ist gültig bzgl. der gegebenen Syntaxdiagramme. Wie kann man das begründen? (b) Gib weitere Adressen an, die gültig bzgl. der gegebenen Syntaxdiagramme sind. Gib Beispiele für ungültige Adressen an. (c) Erweitere die Diagramme so, dass sie auch weitere Fälle gültiger E-Mail-Adressen erfasst werden. 27 Beispiel: Rechenausdrücke Terme kommen in Programmiersprachen zur Beschreibung von Berechnungen vor. So enthält die Python-Anweisung x = x + y den Term x + y zur Berechnung des Wertes, der der Variablen x zugewiesen werden soll. Die folgenden Syntaxdiagramme beschreiben eine Teilmenge der korrekt gebildeten (Python-) Rechenausdrücke. 28 Aufgabe Mit Hilfe von Syntaxdiagrammen lassen sich Rechenausdrücke wie folgt erzeugen: Man konstruiert einen Weg durch die Diagramme beginnend im Diagramm ausdruck so, dass die Folge der Symbole in den abgerundeten Kästchen entlang des Wegs einen Term bilden. Versuche, analog (s.u.) Wegbeschreibungen für folgende Rechenausdrücke zu konstruieren: x-y-2, x-(y-2), (x+y)*(x-y). ausdruck -> summand + summand -> faktor + summand -> variable + summand -> x + summand -> x + faktor * faktor -> x + zahl * faktor -> x + ziffer ziffer * faktor -> x + 2 ziffer * faktor -> x + 2 0 * faktor -> x + 2 0 * variable -> x+20*y 29 Fachkonzept - Syntaxdiagramm Syntaxdiagramme dienen dazu, die Syntax einer Sprache präzise zu beschreiben. Syntaxdiagramme bestehen aus Terminalsymbolen, Nichtterminalsymbolen und Verbindungspfeilen. Terminalsymbole sind Symbole des Alphabets der Sprache, die in Diagrammen durch abgerundete Rahmen zu erkennen sind. Terminalsymbole im Beispiel: 0, 1, ..., 9, x, y, z, +, -, *, /, (, ) Nichtterminalsymbol Nichtterminalsymbole sind Hilfssymbole, die in Diagrammen durch rechteckige Rahmen zu erkennen sind. Nichtterminalsymbole stehen jeweils für eigene Diagramme. Nichtterminalsymbole im Beispiel: Terminalsymbol ausdruck, summand, faktor, variable, zahl, ziffer 30 Fachkonzept - Syntaxdiagramm Mit Hilfe von Syntaxdiagrammen lassen sich Wörter über dem Alphabet der Terminalsymbole herleiten. Eine Herleitung besteht dabei aus einer Folge von Umformungen eines Ausdrucks entlang der Wege durch die Syntaxdiagramme mit dem Ziel, die Nichtterminalsymbole letztlich alle durch Terminalsymbole zu ersetzen. ausdruck -> summand -> faktor * faktor -> ( ausdruck ) * faktor -> ( summand + summand ) * faktor -> ( faktor + summand ) * faktor -> ( variable + summand ) * faktor -> ( x + summand ) * faktor -> ( x + faktor ) * faktor -> ( x + variable ) * faktor -> ( x + y ) * faktor -> ( x + y ) * ( ausdruck ) -> ( x + y ) * ( summand - summand ) -> ( x + y ) * ( faktor - summand ) -> ( x + y ) * ( variable - summand ) -> ( x + y ) * ( x - summand ) -> ( x + y ) * ( x - faktor ) -> ( x + y ) * ( x - variable ) -> (x+y)*(x-y) 31 Fachkonzept - Syntaxdiagramm Konstruktionsmuster: Sequenz Alternative Iteration Rekursion 32 Übungen Aufgabe: ipigisi-Sprache (a) Eine isi-Folge ist eine Folge von i-Symbolen, bei der jeweils benachbarte i-Symbole durch ein s getrennt sind: i, isi, isisi, .... Entwickle ein Syntaxdiagramm zur Beschreibung von isi- Folgen. (b) Eine ipigisi-Folge hat die Struktur isi-Folge p isi-Folge g isi-Folge. Beispiele für solche ipigisi-Folgen sind: ipigi, ipigisi, isipigisi, isipigisi, .... Entwickle Syntaxdiagramme zur Beschreibung von ipigisi-Folgen. (c) Ein mathematisch korrekter ipigisi-Ausdruck ist eine ipigisi-Folge, bei der die Summe der i- Symbole vor und nach dem g-Symbol gleich sind. Kann man korrekte ipigisi-Ausdrücke mit Hilfe von Syntaxdiagrammen beschreiben? Aufgabe: Die Sprache "hallihallo" Zur Sprache "hallihallo" gehören die folgenden Wörter: hallo, hallihallo, hallihallihallo, hallihallihallihallo, ... Beschreibe die Wörter der "hallihallo"-Sprache mit Hilfe von Syntaxregeln. 33 Teil 3 Grammatiken 34 Stark vereinfachte E-Mail-Adressen Die folgenden Syntaxdiagramme legen den Aufbau von stark vereinfachten E-Mail- Adressen fest. Beachte, dass in diesen Adressen nur die Symbole b, @ und . vorkommen dürfen. Eine nach diesen Syntaxdiagrammen gültige E-Mail-Adresse ist z.B. bb@b.bbb.bb. emailadresse -> user @ domain -> name @ domain -> buchstabe buchstabe @ domain -> b buchstabe @ domain -> b b @ domain -> b b @ subdomains topleveldomain -> b b @ name . name . topleveldomain -> b b @ buchstabe . name . topleveldomain -> b b @ b . name . topleveldomain -> b b @ b . buchstabe buchstabe buchstabe . topleveldomain -> b b @ b . b buchstabe buchstabe . topleveldomain -> b b @ b . b b buchstabe . topleveldomain -> b b @ b . b b b . topleveldomain -> bb@b.bbb.bb 35 Syntaxdiagramme und Ersetzungsregeln emailadresse -> user @ domain user -> name domain -> subdomains @ topleveldomain subdomains -> name . subdomains -> name . subdomains topleveldomain -> b b name -> b name -> b name buchstabe -> b Ersetzungsregeln Syntaxdiagramme 36 Ersetzungsregeln emailadresse -> user @ domain E -> U@D user -> name U -> N domain -> subdomains @ topleveldomain D -> ST subdomains -> name . S -> N. subdomains -> name . subdomains S -> N.S topleveldomain -> b b T -> bb name -> buchstabe N -> B Ersetzungsregeln in name -> buchstabe name N -> BN abgekürzter Form buchstabe -> b Ersetzungsregeln B -> b 37 Aufgabe Entwickle mit Hilfe der Ersetzungsregeln (in abkürzender Schreibweise) eine Ableitung der Adresse bb@b.bbb.bb. In jedem Ersetzungsschritt darf nur eine Regel angewandt werden. E -> U@D E -> # mit der Regel E -> U@D U -> N U@D -> # mit der Regel U -> bU D -> ST S -> N. bU@D -> # mit der Regel U -> bU S -> N.S T -> bb N -> B N -> BN B -> b Ersetzungsregeln Ableitung eines bb@b.bbb.bb Wortes 38 Aufgabe Teste die folgenden Ersetzungsregeln. Welche E-Mail-Adressen lassen sich mit diesen Regeln ausgehend vom Symbol E ableiten? E -> bU E -> # mit der Regel E -> bU U -> bU bU -> # mit der Regel U -> bU U -> @S S -> bB bbU -> # mit der Regel U -> bU B -> bB B -> .S B -> .T T -> bZ Z -> b Ersetzungsregeln Ableitung eines bb@b.bbb.bb Wortes 39 Fachkonzept - Grammatik Eine Grammatik besteht aus den folgenden E -> U@D Komponenten: U -> bU U -> λ  einer endlichen nichtleeren Menge T von D -> bS Terminalsymbolen (Alphabet der S -> bS betreffenden Sprache) S -> .bS  einer endlichen nichtleeren Menge N von .bS -> .bb Nichtterminalsymbolen (Hilfsymbole)  einer endlichen Menge P von Produktionen Grammatik (Ersetzungsregeln)  einem Startsymbol S  N (zum Starten einer Ableitung) Man schreibt auch kurz: G = (T, N, P, S). T = {b, @, .} Terminalsymbole N = {E, U, D, S} Nichtterminalsymbole P = {E -> U@D, ..., .bS -> .bb} Produktionen S: E Startsymbol 40 Fachkonzept - Ableitung Eine Ableitung beginnt immer mit dem E -> U@D Startsymbol. Sie endet, wenn alle U -> bU Nichtterminalsymbole ersetzt sind.
Related Search
We Need Your Support
Thank you for visiting our website and your interest in our free products and services. We are nonprofit website to share and download documents. To the running of this website, we need your help to support us.

Thanks to everyone for your continued support.

No, Thanks