Az L nyelvosztály azon nyelvek halmaza, amelyek eldönthetők egy determinisztikus Turing-gépen , amely további memóriát használ az n hosszúságú bemenethez.
Az NL nyelvek osztálya azoknak a nyelveknek a halmaza, amelyek eldönthetők egy nem determinisztikus Turing-gépen , amely további memóriát használ az n hosszúságú bemenethez.
Példák:
A naplómemória konverter egy Turing-gép három szalaggal: egy csak olvasható bemeneti szalaggal, egy csak írható kimeneti szalaggal és egy munkaszalaggal, amely legfeljebb O(log(n)) cellát használhat.
Az ilyen konverter által kiszámított függvényt logaritmikus memóriával számított függvénynek nevezzük .
Az A feladat logaritmikusan redukálja a memóriát a B feladatra, ha van olyan logaritmikus függvény a memóriából, amely az A feladatot B feladatra redukálja .
Egy nyelvet NL-teljesnek nevezünk, ha az NL-hez tartozik, és az NL-ben lévő bármely nyelv logaritmikusan redukálható rá a memóriából.
Tétel:
Következmény:
Ha egy NL-teljes nyelv L-hez tartozik, akkor L = NLNyilatkozat:
A PATH egy NL-teljes feladat.Következmény:
.osztály coNL - olyan nyelvek, amelyek kiegészítései NL-ben vannak.
Immermann tétele:
NL = conNLAlgoritmusok összetettségi osztályai | |
---|---|
Fénynek tekinthető | |
Állítólag nehéz | |
Nehéznek tartott |
|