Chomskyjeva hijerarhija jezika je sustav klasifikacije koji kategorizira formalne gramatike na temelju njihove generativne moći. Predložio ga je Noam Chomsky, poznati lingvist i računalni znanstvenik, 1950-ih. Hijerarhija se sastoji od četiri razine, od kojih svaka predstavlja drugu klasu formalnih jezika. Te su razine poznate kao Tip-3 (Regular), Tip-2 (bez konteksta), Tip-1 (Osjetljiv na kontekst) i Tip-0 (Neograničen).
Na najnižoj razini hijerarhije imamo jezike tipa 3, također poznate kao regularni jezici. Ti se jezici mogu prepoznati po konačnim automatima, kao što su deterministički i nedeterministički konačni automati. Regularne jezike karakteriziraju regularni izrazi i regularne gramatike. Regularni izrazi su algebarski izrazi koji opisuju uzorke nizova, dok se regularne gramatike sastoje od proizvodnih pravila koja generiraju nizove u regularnom jeziku. Primjer regularnog jezika je skup svih nizova koji odgovaraju danom regularnom izrazu, kao što je jezik svih binarnih nizova s parnim brojem nula.
Krećući se u hijerarhiji, susrećemo jezike tipa 2, također poznate kao jezici bez konteksta. Ovi se jezici mogu prepoznati po pushdown automatima, koji su konačni automati prošireni hrpom. Kontekstno-slobodni jezici opisuju se kontekstno-slobodnim gramatikama, koje se sastoje od proizvodnih pravila koja generiraju nizove u kontekstualno-slobodnom jeziku. Gramatike bez konteksta imaju neterminalne simbole, terminalne simbole i pravila proizvodnje koja određuju kako se neterminali mogu zamijeniti nizom simbola. Primjer jezika bez konteksta je skup svih dobro oblikovanih aritmetičkih izraza, gdje su zagrade uravnotežene, a operatori ispravno primijenjeni.
Sljedeća razina hijerarhije su jezici tipa 1, poznati i kao jezici osjetljivi na kontekst. Ti se jezici mogu prepoznati po linearno ograničenim automatima, koji su konačni automati s vrpcom koja se može kretati u oba smjera. Kontekstno osjetljivi jezici opisani su kontekstno osjetljivim gramatikama, koje se sastoje od proizvodnih pravila koja generiraju nizove u kontekstualno osjetljivom jeziku. Gramatike osjetljive na kontekst imaju dodatno ograničenje da duljina desne strane produkcijskog pravila ne može biti kraća od duljine lijeve strane. Primjer kontekstno osjetljivog jezika je skup svih palindroma, gdje se niz čita jednako naprijed i unatrag.
Konačno, na vrhu hijerarhije imamo jezike tipa 0, također poznate kao jezici bez ograničenja. Te jezike mogu prepoznati Turingovi strojevi, koji su apstraktni računalni uređaji sposobni simulirati bilo koji računalni algoritam. Neograničeni jezici opisani su neograničenim gramatikama, koje nemaju ograničenja na pravila proizvodnje. Primjer neograničenog jezika je skup svih rekurzivno nabrojivih jezika, koji uključuje sve izračunljive jezike.
Chomskyjeva hijerarhija jezika pruža sustavni okvir za klasifikaciju formalnih gramatika na temelju njihove generativne moći. Započinje s uobičajenim jezicima, koji su najmanje moćni, i napreduje do kontekstno slobodnih, kontekstno osjetljivih i neograničenih jezika, koji su sve moćniji. Ova hijerarhija je temeljni koncept u polju teorije računalne složenosti i ima važne implikacije za proučavanje formalnih jezika i automata.
Ostala nedavna pitanja i odgovori u vezi Chomsky hijerarhija i jezici osjetljivi na kontekst:
- Što znači da je jedan jezik moćniji od drugog?
- Postoje li trenutačne metode za prepoznavanje tipa 0? Očekujemo li da će kvantna računala to učiniti izvedivim?
- Opišite proces dizajniranja kontekstno osjetljive gramatike za jezik koji se sastoji od nizova s jednakim brojem jedinica, dvojki i trica.
- Navedite primjer kontekstno osjetljivog jezika i objasnite kako ga kontekstno osjetljiva gramatika može prepoznati.
- Kako se jezici tipa 0, također poznati kao rekurzivno prebrojivi jezici, razlikuju od drugih vrsta jezika u smislu računske složenosti?
- Objasnite razliku između kontekstno slobodnih jezika i kontekstno osjetljivih jezika u smislu pravila koja upravljaju njihovim oblikovanjem.