Dyckov jazyk

Zo stránky testwiki
Prejsť na navigáciu Prejsť na vyhľadávanie

Dyckov jazyk nad 2n-prvkovou abecedou {a1,b1,a2,b2,,an,bn}(n) je v teórii formálnych jazykov bezkontextový jazyk, pomenovaný podľa matematika Walthera von Dycka, generovaný nasledujúcou gramatikou:

σε | a1σb1σ | a2σb2σ |  | anσbnσ.

V prípade, že a1,a2,,an sú nejaké typy ľavých zátvoriek a b1,b2,,bn sú zodpovedajúce typy pravých zátvoriek, zodpovedá Dyckov jazyk nad abecedou {a1,b1,a2,b2,,an,bn} jayzku všetkých dobrých uzátvorkovaní nad danými typmi zátvoriek.

Gramatika generujúca Dyckov jazyk je jednoznačná (pre každé slovo z jazyka existuje práve jeden strom odvodenia).

Význam Dyckových jazykov umocňuje aj tzv. Chomského-Schützenbergerova veta, ktorá hovorí, že každý bezkontextový jazyk je homomorfným obrazom prieniku niektorého Dyckovho jazyka s vhodným regulárnym jazykom.

Príklad

Nasleduje príklad Dyckovho jazyka D2 nad štvorprvkovou abecedou pozostávajúcou zo znakov (,),[,]. Daný Dyckov jazyk bude generovaný gramatikou:

σε | (σ)σ | [σ]σ.

Takýto jazyk je jazykom všetkých dobrých uzátvorkovaní nad danou abecedou, a teda, napríklad:

( ( ) [ ] )D2,( [ [ ] ] ( ( ) ) )D2,) (D2,( [ ( ] ) )D2.

Zdroj

Šablóna:Preklad