Grammatikák csoportosítása

Grammatikák - ismétlés

Egy rendezett négyest grammatikának nevezünk, ha

  • és diszjunkt véges ábácék. elemeit nemterminális, elemeit pedig terminális szimbólumnak nevezzük.
  • a grammatika kezdőszimbóluma
  • rendezett párok véges halmaza, ahol és legalább egy nemterminális szimbólumot tartalmaz

A halmaz elemeit szabályoknak (vagy átírási szabályoknak vagy produkcióknak) hívjuk.

A gyakorlatban az jelölés helyett szinte mindig az jelölést használjuk.

Legyen egy generatív grammatika és legyen . A szó közvetlenül vagy egy lépésben levezethető az szóból -ben, jelölése: , ha és
, ahol és .

Legyen egy generatív grammatika és legyen . A szó (több lépésben) levezethető, ha vagy van olyan és , hogy és
Jelölés:

Grammatikák Chomsky féle osztályozása

Legyen egy grammatika. A grammatika -típusú (), ha szabályhalmazára teljesülnek a következők:

  • eset: nincs korlátozás
  • eset:
    • minden szabálya alakú, ahol és
    • Egyetlen kivételt megengedünk: tartalmazhatja az szabályt, de csak abban az esetben, ha nem fordul elő egyetlen szabályának jobb oldalán sem. Korlátozott szabály (KES)
  • eset: minden szabálya alakú, ahol és
  • eset: minden szabálya vagy vagy alakú, ahol és

Jelölje az -típusú gramatikák osztályát.

Grammatikák osztályba sorolása

Legyen egy grammatika. A következő esetek lehetségesek:


Lokálisan minden szabály -as és teljesül a KES.


Lokálisan minden szabály -as den nem teljesül a KES.


Lokálisan minden szabály -as, van -as szabály és teljesül a KES.


Lokálisan minden szabály -es, van nem -as szabály de nem teljesül a KES.


Lokálisan minden szabály -es, van nem -es szanály és teljesül a KES.


Van nem -es szabálya vagy minden szabály -es, van nem -es szabálya és nem teljesül a KES.

jelöli az -típusú nyelvek nyelvosztályát, elemeit -típusú nyelveknek nevezzük.

  • A 0-típusú grammatikákat mondatszerkezetű (phrase-structure) grammatikáknak is nevezzük, ami nyelvészeti eredetükre utal.
  • A 1-típusú grammatikák a környezetfüggő (context-sensitive) grammatikák, mert szabályai olyanok, hogy, egy A nemterminális valamely előfordulása egy szóval csak és kontextus jelenlétében helyettesíthető.
  • 2-típusú grammatikákat környezetfüggetlen (context-free) grammatikáknak mondjuk, mert szabályai olyanok, hogy az nemterminális -vel való helyettesítése bármely kontextusban megengedett.
  • A 3-típusú grammatikákat reguláris (regular) vagy véges állapotú (finite state) grammatikáknak hívjuk, a véges állapotú automatákkal való kapcsolatuk miatt.
  • 0,1,2,3-típusú nyelvek osztályait rendre rekurzíven felsorolható, környezetfüggő, környezetfüggetlen, valamint reguláris nyelvosztálynak is mondjuk.

Grammatikák a gyakorlatban

  • BNF (Backus-Naur Form).

A BNF egy széles körben használt metanyelv melynek segítségével szabályok alkothatók meg (például egy programozási nyelv szintaktikai szabályai).

Építőkövei:

  • , fogalmak (nemdeterminánsok)
  • a szabályok bal- és jobboldalának elválasztása
  • a sztringek alkotóelemei (terminálisok)

Egy szabály bal- és jobboldalból áll, köztük ::=, baloldalon pontosan 1 fogalom, jobboldalon terminálisok és fogalmak véges sorozata állhat.

A BNF megfelel a környezetfüggetlen grammatikának.

Chomsky-féle hierarchia

A grammatikák alakja alapján és

Később azt is meg fogjuk mutatni, hogy a következö tétel fennáll:

Ekvivalens grammatikák és nyelvek

Amíg minden grammatika egyetlen nyelvet generál, ez fordítva nem igaz. Ugyanazt a nyelvet több különböz ̋o grammatika is generálhatja.

A és grammatikák ekvivalensek egymással, ha ugyanazt a nyelvet generálják, azaz teljesül.

Az és nyelveket egymással gyengén ekvivalensnek nevezzük, ha legfeljebb az tartalmazásában térnek el egymástól, azaz ha .

A és grammatikákat gyengén ekvivalensnek nevezzük, ha egymással gyengén ekvivalens nyelveket generálnak.

Terminánsok elimminációja a szabályok baloldalán

Minden grammatikához van vele ekvivalens és azonos típusú grammatika, melyre minden -re

Zártsági tulajdonságok

Az unió, konkatenáció és iteratív lezárás műveleteket reguláris műveleteknek nevezzük.

Egy nyelvcsalád zárt a -változós nyelvműveletekre nézve, ha minden esetén

zárt a reguláris műveletekre nézve ()

Források