Luokat L ja NL

Tämä artikkeli käsittelee deterministisen Turingin koneen kieliluokkia. Unix-apuohjelmaa käsittelevän artikkelin nimi on nl .

Kieliluokka L on joukko kieliä, jotka ovat päätettävissä deterministisellä Turingin koneella, joka käyttää lisämuistia pituuden n syötteelle.

NL-kielten luokka on joukko kieliä, jotka ovat päätettävissä ei - deterministisellä Turingin koneella, joka käyttää lisämuistia pituuden n syötteelle.

Esimerkkejä:

NL-täydelliset ongelmat

Lokimuistimuunnin on Turingin kone, jossa on kolme nauhaa: vain luku -syöttönauha, vain kirjoitus -lähtönauha ja työnauha, joka voi käyttää enintään O(log(n))-solua.


Tällaisen muuntimen laskemaa funktiota kutsutaan logaritmisella muistilla lasketuksi funktioksi .

Tehtävä A pienentää logaritmisella muistista tehtävään B, jos muistista on logaritminen funktio, joka pienentää tehtävän A tehtäväksi B. Merkitään

Kieltä kutsutaan NL-täydelliseksi , jos se kuuluu NL:ään ja mikä tahansa NL:n kieli voidaan pelkistää siihen logaritmisesti muistista.

Lause:

Seuraus:

Jos NL-täydellinen kieli kuuluu L:lle, niin L = NL

Lausunto:

PATH on NL-täydellinen tehtävä.

Seuraus:

.

Immermannin lause

luokka coNL - kielet, joiden täydennykset ovat Alankomaissa.

Immermannin lause:

NL = conNL

Kirjallisuus