Regularna gramatika

From Wikipedia, the free encyclopedia

Remove ads

U računarstvu, regularna gramatika (još i pravilna gramatika[1]) je desna regularna gramatika ili desno-linearna gramatika ako je formalna gramatika (N, Σ, P, S) kojoj su sve produkcije iz skupa P oblika:

  1. A a - gdje je A nezavršni znak u N i a je završni znak u Σ
  2. A aB - gdje su A i B u N i a je u Σ
  3. A ε - gdje je A u N i ε označava prazni niz, tj. niz duljine 0.

U lijevoj regularnoj gramatici ili lijevo-linearnoj gramatici su sve produkcije oblika:

  1. A a - gdje je A nezavršni znak u N i a je završni znak u Σ
  2. A Ba - gdje su A i B u N i a je u Σ
  3. A ε - gdje je A u N i ε je prazni niz.

Primjer desno-linearne gramatike je G s N = {S, A}, Σ = {a, b, c}, P se sastoji od sljedećih produkcija:

S aS
S bA
A ε
A cA

S je početni nezavršni znak. Ova gramatika opisuje isti jezik kao i regularni izraz a*bc*.

Regularna gramatika je lijevo-linearna ili desno-linearna regularna gramatika.

Remove ads

Uvod

Regularne gramatike opisuju točno sve regularne jezike i u tom su smislu istovjetne konačnim automatima i regularnim izrazima. Štoviše, desno-linearne regularne gramatike su same istovjetne regularnim jezicima, baš kao što su i lijevo-linearne regularne gramatike.

Svaka regularna gramatika je kontekstno neovisna gramatika.

Svaka kontekstno neovisna gramatika se može lako zapisati u obliku u kojem je korištena samo kombinacija desnih i lijevih regularnih produkcija. Stoga takve gramatike mogu opisati sve kontekstno neovisne jezike. Regularne gramatike, koje koriste ili lijevo-linearne ili desno-linearne produkcije ali ne i obje, mogu generirati samo manji podskup jezika zvan regularni jezici. U tom su smislu one istovjetne s konačnim automatima i regularnim izrazima. Kao ilustraciju možemo navesti kanonski primjer kontekstno neovisnog jezika za svim nizovima znakova oblika kojeg generira gramatika G s N = {S, A}, Σ = {a, b}, te produkcijama u P:

S aA
A Sb
S ε

gdje je S početni nezavršni znak. Uočimo da ova gramatika ima i lijevo-linearne i desno-linearne produkcije te stoga više nije regularna.

Neki udžbenici zabranjuju uporabu praznih produkcija (ε-produkcija) i pretpostavljaju da prazni niz nije prisutan u jezicima.

Remove ads

Izvori

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads