Zum Inhalt springen
L

Das Video kommt von YouTube: erst beim Abspielen verbindet sich die Seite mit YouTube (Google).

Die Chomsky-Hierarchie

Christian Spannagel21:29 57.708 Aufrufe veröffentlicht Auf YouTube

Das Wichtigste aus dem Video

Tipp auf eine Zeit – das Video springt genau dorthin.

Transkriptautomatisch erstellt · 113 Zeilen
Herunterladen
  1. okay also noch mal den Zusammenhang zwischen Grammatik und Sprache ja schauen wir uns mal an
  2. Grammatiken woraus besteht Grammatik generell aus welchen Elementen was brauch Grammatik zu
  3. bilden ja genau man
  4. brauch genau man braucht eine eine variablenmenge ne das sind diejenigen Elemente die ersetzt werden können so denkt man zumindest also Variablen bzw
  5. nonter terminale oder nicht terminale dann ein Alphabet das sind die terminalsymbole oder die die letztlich dann auch aus
  6. denen die Wörter der Sprache zusammengesetzt werden die von der Grammatik erzeugt wird und damit hat wir auch bislang bei Automaten zu tun in der
  7. Regel haben wir a und BS verwendet oder Symbole aus dem man arithmetische Ausdrücke zusammenbasteln kann und so V Sigma was brauchen wir
  8. noch P als Produktionssystem das ist das Regelsystem einer Grammatik ne und und S was ist s genau ein Startsymbol eine
  9. startvariable oder ein Start nicht terminalsymbol das hier in V drin steckt ne okay so jetzt haben wir festgestellt es
  10. gibt oder das wurde wurde erklärt dieomski Hierarchie es gibt vier verschiedene Typen von Grammatiken und die unterscheiden sich durch die Art der
  11. Regeln in den Produktionssystemen so zunächst mal gibt's Typ Null
  12. Grammatiken okay das sind einfach nach unserer Vorstellung jetzt mal alle möglichen Grammatiken da haben wir keine
  13. Einschränkung schauen wir uns mal nicht näher an jetzt weil die jetzt unseren Fall noch zu allgemein sind gehen wir mal in die Typ 1
  14. Grammatiken wie heißen die noch Typ 1 Grammatiken oder ja genau SAS muss man auswendig wissen ne Typ 1 oder kontextensi
  15. tief so was gilt denn für diese für diesen Typ von Grammatik für die Regeln wie müssen die alle Regeln in dem Produktionssystem dieser Grammatik
  16. beschaffen sein kürzer gleich oder kürzer genau kleiner gleich ne
  17. also wenn ich eine Regel hab der Form W1 geht nach W2 und das kann jetzt alles mögliche sein da können
  18. nonterminal und terminale drin stecken dem W1 und W2 ganz egal ja wenn ich W1 nach W2 ableite dann muss
  19. gelten die Länge von W1 ist kleiner gleich der Länge von W2 acho wenn man able wenn man tatsächlich ein ein ein Wort ableitet ja
  20. konkretes Wort oder herleitet dann nimmt man ein Doppelpfeil hier ist es jetzt aber die produktionsregel die hat ein ein einzelpfeil also ein mit einer Linie
  21. ne keine Doppellinie das das das ist jetzt keine a ableitungsschritt sondern das ist eine Regel die man verwenden kann beim Ableiten
  22. so okay so das heißt wenn ich ein Wort ein Ausdruck habe den ich ableite dann kann der nicht kürzer werden beim Ableiten wird immer
  23. länger und wenn ich von der startvariable losgehe startvariable hat der Länge 1 so dann kann ich nur Wörter ableiten
  24. die mindestens die Länge ein haben es gibt immer noch so eine Ausnahmeregel bezüglich des leerren Worts manchmal W wir das lehere Wort in einer Sprache mit
  25. drin haben dann kann man es auch einfach extra dazu nehmen ja das ist jetzt kein sonderlich schwieriger Fall man lässt es einfach weg und nimmt später dazu oder
  26. so okay so also die Ausnahme macht man gern gut jetzt kommt jetzt wird's immer interessanter sozusagen immer spezieller
  27. aber auch immer interessanter Typ 2 wie heißen die auch richtig kontextfrei das sind die
  28. kontextfreien Grammatiken so was muss für Kontext freie Grammatiken gelten wie müssen da
  29. die Produktionsregeln beschaffen sein genau links darf nur eine Variable stehen sonst nichts ne und das ist auch
  30. das ja soll ich sagen das was man natürlicherweise empfindet wenn man solche Grammatiken baut ne dass man eigentlich immer nur so gerne eine
  31. Variable hätte die abgeleitet wird also V irgendeine V n ich jetzt mal nicht weil hier oben V heißt meine Menge sagen wir mal groß a wird abgeleitet nach
  32. irgendwas links darf also nur eine Variable oder ein nichtterminal stehen jetzt hier bei Typ 1 da dürfen auf der linken Seite auch theoretisch nur
  33. terminale stehen deswegen ist der Begriff variable auch ja der macht eigentlich ersten Sinn wenn man so will wenn man hier über kontextfreie Sprachen
  34. spricht ne Variablen werden ersetzt bei kontextfreien Variablen durch Grammatiken durch irgendwas anderes und da können in W können auch wieder
  35. Variablen drin stecken die ihrerseits wieder ersetzt werden können so warum heißen die eigentlich fi diese Grammatiken wo kommt denn der Begriff
  36. her wo kommt der Begriff her kontextfrei ja ja ja also ich hol mal wegen der Aufzeichnung also was es hat keine
  37. Bedeutung was rechts steht nee das hat schon eine Bedeutung danach leite ich ja ab aber es hat keine Bedeutung in welchem Kontext die Variable steht wenn
  38. ich ableite also wenn ich jetzt gerade hier so ein Wort ableite ne machen mal ein Beispiel für eine Grammatik okay ich finde jetzt ich
  39. schreib mal nur die Produktionsregeln hin alles andere lass ich weg also machen wir mal a wird abgeleitet nach kein keine Ahnung
  40. ne a ab oder a a a sowas und a ist vielleicht auch gleich die startvariable ne und oder vielleicht sogar nach BA und
  41. groß B wird abgeleitet nach also das ist ein oder Zeichen dazwischen ist klar ne es gibt drei Regeln a wird abgeleitet nach AAB oder a wird abgeleitet nach AAA
  42. oder a wird abgeleitet nach B und B wird abgeleitet nach ab oder B
  43. so jetzt ist völlig gleich in welchem Kontext a vorkommt als Variable ich kann a immer ersetzen dadurch oder dadurch oder dadurch also wenn ich jetzt anfange
  44. abzuleiten ich ma mal eine Ableitung von A und jetzt mache ich ein Doppelpfeil jetzt leite ich mal ein konkretes Wort ab a kann ich ableiten nach
  45. AAB so und jetzt kann ich mir diese Variable hier wieder schnappen und ableiten denn der Kontext bleibt natürlich stehen a und z.B nach Groß BA
  46. und dann klein B ja jetzt habe ich dieses a abgeleitet nach BA und mir war wurscht was links oder rechts neben dem A steht danach musste ich nicht
  47. gucken genauso bei dem B ich kann jetzt dieses B hier ersetzen durch z.B klein B dann hätte ich jetzt hier ab B ab abgeleitet bin fertig kann nichts mehr
  48. machen es ist keine Variable mehr in diesem Ausdruck das heißt dieses Wort ist in der von der Grammatik erzeugten Sprache ich habe jetzt ein Wort erzeugt
  49. das in dieser Sprache drin ist so und bei dem ersetzen ist es immer egal wo die Variablen stehen deswegen kontextfrei wenn ich meine
  50. kontextsensitive Grammatik aufbaueer da kann ja folgendes drin stehen da könnte drin stehen dass das hier abgeleitet wird
  51. nach Groß AA und das hier abgeleitet wird nach Groß BB ja und wenn A das Startsymbol ist
  52. dann kann a vielleicht noch abgeleitet werden nach aa a oder so so und wenn ich jetzt mal so eine
  53. Ableitung mache also ich leite a ab nach A ja dann könnte ich jetzt zwar das hier nehmen dieses a wieder und da einsetzen
  54. aber ich könnte auch z.B das hier nehmen diese Regel und bei dieser Regel ist entscheidend dass um die Variable herum ein bestimmter Kontext ist der
  55. mitersetzt wird ja also ich kann jetzt hier das ersetzen durch also das ganze hier ersetzen durch
  56. BB dementsprechend spielt der Kontext hier eine Rolle also hier Links auf der linken Seite können nicht nur einzelne Variablen
  57. stehen sondern ganze Kontexte die ersetzt werden deswegen Kontext sensitiv okay bei Kontext frei kann man einfach
  58. Variablen ersetzen egal in welchem Kontext sie stehen ich ma das jetzt mal weg so okay also wir hatten jetzt hier Typ 1 da
  59. wird nimmt die Wortlänge zu oder bleibt gleich bei Typ 2 ist es so ähm dass auf der linken Seite nur eine Einzel variable stehen kann wie sieht's
  60. jetzt aus bei Typ 3 oder regulär ne das sind die regulären
  61. Sprache was gilt da wie können da nur die Regeln beschaffen sein
  62. Typ 3 Sprache ist ja auch eine Typ 2 Sprache das heißt auf der linken Seite steht auf jeden Fall nur eine
  63. Variable aber was steht auf der rechten Seite jetzt kommen nur noch die rechte Seite
  64. einschränken was steht auf der rechten Seite
  65. ja genau ich ma mal irgendeine Buchstaben ne also klein sag klein C groß D also kleiner Buchstabe gefolgt von einer
  66. Variable die die die Regeln haben alle diese Form Terminal nicht Terminal okay ähm ja jetzt kann man wenn man nur solche Regeln hat hört das ja nie auf ne
  67. jetzt gibt's zwei Varianten wie man reguläre Grammatiken definieren kann eine haben sie in dem Video gesehen da wird auch noch erlaubt dass man
  68. Variablen ableitet zum Leeren Wort zu nichts also wegnimmt ne das wäre die möglichit damit Ende der Prozess des ableitens indem ich die Variable die in
  69. dem Wort in der Ableitung bisherigen Ableitung drin steckt indem ich die ein weglasse nach nichtsableite das kann man machen ein
  70. bisschen Bauchschmerzen hat man da dabei weil Typ bei Typ 1 ja gefordert ist dass die Wortlänge mindestens mal gleich bleiben muss und wenn ich jetzt eine
  71. Variable nach nichts ableite wird's kleiner okay bei diesen Regeln kann manchmal Ausnahmen machen und so es gibt aber noch eine schönere
  72. Definition und ich würde Sie bitten oder empfehlen die zu nehmen man kann auch folgendes machen man kann auch noch Regeln hinzufügen wo eine Ableitung
  73. stattfindet einfach nur nach einer einzelnen variblen äh chuldigung nach dem einzelnen terminalsymbol ne also nach dem
  74. einzelnen Buchstaben aus dem Alphabet so das ist äquivalent ne also wenn sie z.B diese Ableitung hier nehmen also angenommen wir haben reguläre Sprache
  75. äh reguläre Grammatik die folgendermaßen aussieht reguläre Grammatik die folgendermaßen aussieht ich leite a nach Klein a groß a ab oder EP ja das WD so
  76. eine Regel damit würde es abbrechen mit dem könnte man folgendes machen ne a wird ersetzt durch
  77. AA und dieses große a wird noch mal ersetzt durch klein a groß a und jetzt Gicht das ganze abbrechen nem ich groß a nach EPS ableite nach dem Leeren Wort
  78. dann steht da AA so es ist eigentlich ein Schritt zu viel bei der anderen Variante hat man den Vorteil also wenn ich jetzt die
  79. andere Variante hinschreibe die würde so aussehen a wird abgeleitet nach Klein a groß a oder nach Klein a zum
  80. Abbrechen ja dann kann man folgendes machen a wird abgeleitet nach Klein a groß a und jetzt wenn ich das gleiche Wort
  81. erzeugen will le ich n nach Klein a ab ne so genau also diese Variante der Definition regulärer Grammatiken dass nur diese
  82. beiden Typen von Ableitung zugelassen sind sind einerseits konsistent hier oben mit der Förderung von Typ 1 sprachen von Typ 1 Grammatiken
  83. Entschuldigung und außerdem sind die Ableitungen kürzer also macht Sinn das so zu machen okay
  84. ähm so jetzt haben wir also vier verschiedene Typen von Grammatiken und jetzt ist die Frage
  85. Sprachen was ist eine Sprache also eine Grammatik hier ist ist so ein viertuuppel sagt man auch ja wenn man es formal definieren würde also
  86. Grammatik ist eine Menge von variable eine Menge von Buchstab also im Alphabet und ein Produktionssystem mit Regeln und einem
  87. stsymbol und daraus mit der Grammatik kann man Wörter erzeugen so was ist eine Sprache mal ganz formal gesprochen oder
  88. allgemein gesprochen
  89. ja ja genau sehr schön eine Teilmenge aus der Menge aller Zeichenketten ja wenn ich so ein Alphabet habe σma dann bedeutet σ Stern ich kann alle
  90. möglichenchte alle möglichen Zeichenketten ne also wenn σma A und B ist klein a klein B dann ist σ stn alles das leere Wort a b AA ab B a BB AAA ab a
  91. und so weiter und so weiter ne ich kann alle möglichen Zeichenketten bilden und eine Sprache ist eine Teilmenge da draus
  92. das jetzt Teilmenge nicht leider gleich ne Teilmenge aus Stern das bedeutet aber letztlich ist eine Sprache nichts anderes als eine
  93. Menge von Wörtern mathematisch gesehen eine Menge eine Sprache hat keine Regeln eine Sprache hat kein
  94. ableitungssystem eine Sprache ist kein Auto oder so sondern eine Sprache ist eine Menge von Wörtern
  95. Punkt was ist jetzt eine Typ 3 Sprache eine Typ 3 Sprache
  96. ja genau erzeugt ja ne jede dieser Grammatiken hier also jede Grammatik
  97. erzeugt ja eine bestimmte Menge von Wörtern das ist die von der Grammatik erzeugte Sprache ich kann mit einer Grammatik eine Menge von Wörtern
  98. erzeugen andere nicht alle Wörter die von der Grammatik erzeugt werden nehme ich zusammen als Menge und sag das ist die von der Grammatik erzeugte Sprache
  99. so eine Typ 3 Sprache eine Sprache ist dann eine Typ 3 Sprache wenn eine Typ 3 ammatik existiert die sie erzeugt wenn Sie irgendeine Sprache
  100. haben sagen ach Mensch ich kann typrammatik basteln die mir die Sprache erzeugt genauso Typ 2 Sprache ne Typ 2 Sprache ist eine
  101. Sprache für die eine Typ 2 Grammatik existiert ich kann Typ 2 Grammatik angeben die diese Sprache erzeugt und jetzt der Witz ist natürlich
  102. es gibt jetzt Sprachen das heiß es gibt Mengen von Wörtern die kann ich eine Typ 2 Grammatik angeben aber keine Typ 3 Grammatik also spannende sozusagen zu
  103. begründen dass es unmöglich ist bei eine bestimmte Menge von Wörtern eine Typ 3 Grammatik anzugeben dann ist die Sprache von Typ 2 ne wenn ich Typ 2 Grammatik
  104. angeben kann finde aber keine Typ 3 Grammatik so genauso bei Typ 1 ne es gibt tatsächlich Sprachen für die gibt es
  105. keine 2 Grammatik und damit auch keine Typ 3 Grammatik jede Typ 3 Grammatik ist eine Typ 2 Grammatik wenn ich keine Typ 2 Grammatik angeben kann kann ich auch
  106. keine Typ 3 Grammatik angeben aber vielleicht kann ich Typ 1 Grammatik angeben damit habe ich eine Typ 1 Sprache und man kann sagen je weiter man
  107. nach unten kommt spezieller man wird umso effizienter lässt sich die Sprache mit Algorithmen behandeln hier oben wird's immer
  108. schwieriger wenn die je breiter der Typ wird je allgemeiner es wird okay und das interessante also die interessanten Sprachen die eigentlich
  109. interessanten Sprachen im Anwendungsfeld ja das sind diese Sprachen hier Typ 2 und Typ 3 die tauchen immer wieder auf in der inform informatischen
  110. Alltag ja also Typ 3 reguläre Sprachen das damit Beschäftigung ist auch noch reguläre Ausdrücke beispielsweise oder Automaten so wie wir reguläre Automaten
  111. also dieerministische endliche Automaten sind diejenigen die Typ 3 Sprachen erkennen oder Typ 2 taucht immer auf arithmetische Ausdrücke haben wir schon
  112. festgestellt lässt sich nicht durch einen deterministischen endlichen Automaten erzeugen ist also nicht den Typ 3 sondern ist der Typ zwe Sprache
  113. ja okay

Zum Nachlesen