Rekurzivni jezik
U matematici, logici i računarstvu, rekurzivni jezik je tip formalnog jezika koji se još zove i rekurzivan, odlučiv ili Turing-odlučiv. Klasa svih rekurzivnih jezika se često zove R, iako se to ime često upotrebljava i za klasu složenosti RP.
Ovaj tip jezika nije definiran u Chomskyjevoj hijerarhiji.
Definicije
U literaturi prevladavaju dvije istovjetne definicije koncepta rekurzivnog jezika:
- Rekurzivni formalni jezik je rekurzivni podskup skupa svih mogući riječi nad abecedom jezika.
- Rekurzivni jezik je formalni jezik za kojeg postoji Turingov stroj koji će, za svaki ulazni niz znakova (simbola) stati i prihvatiti niz ako je on element jezika, a inače ga neće prihvatiti. Turingov stroj uvijek staje - poznat i pod nazivom odlučitelj - i kažemo da odlučuje rekurzivni jezik.
Svi rekurzivni jezici su rekurzivno prebrojivi. Svi regularni, kontekstno neovisni i kontekstno ovisni jezici su rekurzivni.
Svojstva zatvorenosti
Rekurzivni su jezici zatvoreni nad sljedećim operacijama. To jest, ako su L i P dva rekurzivna jezika, tada su i sljedeći jezici također rekurzivni:
- Kleeneov operator jezika L
- neprebrisujući homeomorfizam φ(L) jezika L
- nadovezivanje (konkatenacija) jezika L i jezika P
- unija
- presjek
- komplement jezika L
- razlika
Posljednje svojstvo slijedi iz činjenice da se razlika skupova može izraziti preko presjeka i komplementa.