Theoretische und technische Informatik - ganz praktisch
Herzlich willkommen auf der Question/Answer-Plattform zu Grundlagen der Informatik II. Wir wünschen Ihnen viel Spaß beim Lernen und Diskutieren!
Loggen Sie sich mit Ihrem KIT-Account (u...) ein, um loszulegen!
Beachten Sie auch diese Informationen zum Schnelleinstieg.
(Nicht-KIT-Studierende beachten bitte diese Informationen.)

Unterschied der Spracharten

+1 Punkt
219 Aufrufe

Wäre bei Teil b) auch folgende Grammatik richtig:

S --> ASA | BSB | 1
A --> 1
B --> 0

Mir ist der Unterschied zwischen den kontextfreien, kontextsensitiven und regulären Sprachen nicht klar. Kann mir jemand in deutschen Sätzen den Unterschied erklären? Mit den Definitonen der Vorlesung kann ich wenig anfangen.

Danke im Voraus

Gefragt 22, Okt 2014 in PUM-AC von uxcyx uxcyx Tutor(in) (104,810 Punkte)  

Eine Antwort

+1 Punkt

Hallo,

die angegebene Grammatik ist ebenfalls korrekt.

Der Unterschied zwischen den verschiedenen Sprachebenen rührt von der Art der Grammatik her, die man zur Erzeugung der Sprache benötigt. Bei regulären Sprachen brauche ich nur eine rechtslineare Grammatik. Bei einer solchen Grammatik steht auf der linken Seite der Produktionen immer ein einzelnes Nonterminalsymbol. Auf der rechten Seite steht entweder das leere Wort, ein einzelnes Terminalsymbol oder ein Terminalsymbol gefolgt von einem Nonterminalsymbol.

Bei einer kontextfreien Grammatik, fällt die Einschränkung der rechtslinearen Grammatik für die rechte Seite der Produktionen weg. D.h. auf der linken Seite der Produktion steht immernoch nur ein einzelnes Nonterminal, auf der rechten kann jedoch eine beliebige Folge von Terminal- und Nonterminalsymbolen stehen - oder auch das leere Wort.

Bei einer kontextsensitiven Grammatik kann zusätzlich auf der linken Seite eine beliebige Folge von (Non-)Terminalsymbolen vor und nach dem eigentlich zu ersetzenden Nonterminalsymbol stehen. Diese muss aber genauso auch auf der rechten Seite der jeweiligen Produktion stehen. Zudem kannst du ein Nonterminal niemals durch das leere Wort ersetzen.

Ich hoffe das hilft dir etwas weiter!

Beste Grüße

Fabian (Tutor)

 

 

Beantwortet 22, Okt 2014 von uxcyx uxcyx Tutor(in) (104,810 Punkte)  
...