Kontekstno ovisni jezik
From Wikipedia, the free encyclopedia
Remove ads
Kontekstno ovisni jezik (rjeđe još i jezik ovisan o sadržaju, te okolinski jezik, kontekstualni jezik[1]) je formalni jezik koji se može definirati kontekstno ovisnom gramatikom, koja je jedan od četiri tipa gramatika u Chomskyjevoj hijerarhiji. Najmanje je korištena od sve četiri, kako u teoriji tako i u praksi.
Računska svojstva
Računski su kontekstno ovisni jezici istovjetni linearno ograničenom nedeterminističkom Turingovom stroju. To jest, nedeterminističkom Turingovom stroju s trakom od samo kn ćelija, gdje je n veličina ulaza i k konstanta asocirana sa strojem. Ovo znači da svaki formalni jezik kojeg takav stroj odlučuje jest kontekstno ovisni jezik, i svaki kontekstno ovisni jezik može biti odlučen takvim strojem.
Ovaj skup jezika je također poznat kao NLIN-SPACE pošto mogu biti prihvaćeni korištenjem linearnog prostora na nedeterminističkom Turingovom stroju. Klasa složenosti LIN-SPACE je definirana na sličan način, osim što koristi deterministički Turingov stroj. Očito slijedi da je LIN-SPACE podskup od NLIN-SPACE, ali se ne zna vrijedi li LIN-SPACE=NLIN-SPACE. Pretpostavlja se da te dvije klase nisu jednake.
Remove ads
Primjeri
Primjer kontekstno ovisnog jezika koji nije kontekstno neovisan jest L = { ap : p je prost broj }. Najlakši način za ovo dokazati jest korištenjem linearno ograničenog Turingovog stroja.
Svojstva kontekstno ovisnih jezika
- Unija, presjek i nadovezivanje (konkatenacija) dva kontekstno ovisna jezika jest konteksno ovisni jezik.
- Komplement kontekstno ovisnog jezika jest i sam kontekstno ovisan.
- Svaki kontekstno neovisni jezik jest kontekstno ovisan.
Izvori
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads