Контекст-слободни језик

From Wikipedia, the free encyclopedia

Remove ads

У формалној теорији језика, контекстно слободни језик је језик који генерише нека контекстно-слободна граматика. Скуп свих контекстно слободних језика је идентичан скупу језика које прихватају потисни аутомати.

Примери

Класичан пример контекстно слободног језика је , језик свих непразних ниски парне дужине, чије ја прва половина састављена од слова , а друга половина је састављена од слова . је генерисан граматиком , а прихвата га потисни аутомат где је дефинисано на следећи начин:






where је почетни симбол стека а представља акцију скидања са стека.

Контекстно слободни језици имају многе примене у програмским језицима; на пример, језик свих исправно упарених заграда је генерисан граматиком . Такође, већина аритметичких израза су генерисани контекстно слободним граматикама.


Remove ads

Својства затворења

Контекстно слободни језици су затворени у односу на следеће операције. То јест, ако су и контекстно слободни језици, а је регуларан језик, онда су и следећи језици контекстно-слободни:

Контекстно слободни језици нису затворени за комплемент, пресек и разлику.

Незатвореност у односу на пресек

Контекстно слободни језици нису затворени за пресек. Ово се може видети ако се узму језици и , који су оба конетксно слободна. Њихов пресек је , за шта се може показати да није контекстно слободан језик пампинг лемом за контекстно слободне језике.

Remove ads

Својства одлучивости

Следећи проблеми су неодлучиви за произвољне контекстно слободне граматике и :

  • Еквиваленција: да ли је ?
  • да ли је  ?
  • да ли је  ?
  • да ли је  ?

Следећи проблеми су одлучиви за произвољне контекстно слободне граматике:

  • да ли је ?
  • да ли је коначан?
  • Припадност: за сваку дату реч , да ли је  ? (проблем припадности је чак одлучив у полиномијалном времену - видети )

Својства контекст-слободних језика

  • Језик обратан контекстно слободном језику је контекстно слободан, али његов комплемент не мора да буде.
  • Сваки регуларан језик је контекстно слободан јер може да се опише регуларном граматиком.
  • Пресек контекстно слободног језика и регуларног језика је увек контекстно слободан.
  • Постоје контекстно сензитивни језици који нису контексткно слободни.
  • У доказивању да неки језик није контекстно слободан може да се користи пампинг лема за контекстно слободне језике.
Remove ads

Литература

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads