Základní pojmy
Gramatika
Gramatika G = (N, Σ, P, S)
N – konečná množina nonterminálních symbolů (nonterminálů)
Σ – konečná množina terminálních symbolů (terminálů)
P – je konečná množina přepisovacích pravidel
S – počáteční nonterminál S ∈ N
Přepisovací pravidlo
Podmnožina kartézského součinu (N ∪ Σ)*N(N ∪ Σ)* × (N ∪ Σ)*
(a, b) ∈ P zapisujeme ve tvaru a → b, kde a je levá strana a b je pravá strana pravidla.
Přímá derivace ⇒
Binární relace mezi řetezci u a v která platí pokud můžeme řetezce zapsat jako u = gad, v = gbd a (a, b) ∈ P, tj. pokud lze řetězec v vytvořit z retězce u aplikací jednoho přepisovacího pravidla.
Derivace ⇒⁺
Derivace ⇒*
Chomského hierarchie klasifikace gramatik
Klasifikace je definována podle tvaru přepisovacích pravidel příslušných gramatik
Platí: L₃ ⊂ L₂ ⊂ L₁ ⊂ L₀
Typ 0 – obecné (neomezené) gramatiky
Typ 1 – kontextové gramatiky
Context-sensitive grammar
Kontextové jazyky
Lineárně omezené Turingovy stroje
αAβ → αγβ, nebo S → ε pokud ε ∈ L a S se nevyskytuje na pravé straně žádného pravidla
Typ 2 – bezkontextové gramatiky
Typ 3 – pravé/levé linární gramatiky
Speciální podtypy gramatik
Pravé/levé regulární gramatiky
Stejné jako 3, ale x ∈ Σ (bez *).
Lineární gramatiky
Podmnožina gramatik typu 2
Deterministické bezkontextové gramatiky
Podmnožina typu 2, jazyky příjamné deterministickým zásobníkovým automatem.
Rekurzivní gramatiky
Podmnožina typu 0. Přijímají je úplné TS (TS, které pro každý vstup rozhodnou – nikdy necyklí).
Všechny kontextové jazyk jsou rekurzivní, ale ne všechny rekurzivní jazyky jsou kontextové.