A Immerman-Szelepcsényi tétel egy tétel az elméleti számítógép-tudomány és különösen a elméletének összetettsége bizonyította 1987-ben önállóan Neil Immerman és Róbert Szelepcsényi , és amely elnyerte azokat együttesen a Gödel-díjat 1995-ben egy egyszerűsített változata ennek a tételnek jelentése NL = ko-NL .
A tétel a nem determinisztikus Turing-gépekkel végzett számítások térbeli összetettségére vonatkozik . A térbeli bonyolultságot a szalagon lévő cellák számával mérjük, amelyet a Turing-gép számításai foglalnak el. A bejegyzés nagysága szerint fejezzük ki.
A nem determinisztikus gépek esetében mindig kissé trükkös a komplexitásról beszélni, mivel adott esetben több, sőt végtelen számítás is létezhet. Először is csak a számításokat vesszük figyelembe. E számítások közül pedig az, amelyik a legkedvezőbb az elvégzett mérés szempontjából, vagy a leggyorsabb az idő bonyolultsága szempontjából , vagy a leggazdaságosabb a hely komplexitása szempontjából . Végül, azokban a problémákban, amelyek „igen-nem” válaszokkal rendelkeznek, ami jelen esetben van, csak sikeres számításokat veszünk figyelembe, amelyek ezért pozitív választ adnak.
Az NSPACE jelöli azokat a problémákat, amelyeket ily módon egy nem determinisztikus Turing-géppel lehet megoldani, legfeljebb az adatok méretének függvényében , és az NSPACE-vel együtt a problémákat, beleértve azokat a kiegészítőket is, amelyek képesek legfeljebb a helyén lévő nemdeterminisztikus Turing-gép oldhatja meg .
A fent leírt számítási modellben, ha egy Turing-gép egy adott tér felhasználásával pozitív választ ad, akkor semmi sem eleve garantálja , hogy ez a tér elegendő ahhoz, hogy negatív választ adjon egy problémára, amelynek nincs megoldása: nem elég a számításokat figyelembe venni amelyek kudarcot vallottak a gépben, mivel nagyon nagyok lehetnek, vagy akár nem is korlátozott cellákon végződhetnek, és akkor hogyan lehet kiválasztani a legjobbat?
Általános formájában az Immerman-Szelepcsényi-tétel kimondja az egyenlőséget:
bármely funkcióhoz .
A tétel különleges esetként pozitív bizonyítékot ad a lineárisan korlátozott automatákra vonatkozó „második problémára” , és ezáltal azt bizonyítja, hogy a kontextus szerinti nyelvek halmazát kiegészítés zárja le, amely kérdés több mint három évtizede nyitva maradt.
Egy megfelelő nyilatkozat az NL és a co-NL komplexitási osztályokra vonatkozik . Valójában az NL az NSPACE rövidítése , azaz NL = NSPACE és hasonlóképpen co-NL = co-NSPACE . A nyilatkozat szerint:
.Látszólag alacsonyabb, mivel ez az első eset a sajátos eset , de az ebben az elméletben gyakran használt argumentum, amelyet kitöltési argumentumnak (in) hívnak (angolul argumentum kitöltés ), bizonyíthatja az ekvivalenciát.
A tétel igazolása elemi, de finom. Az eredmény önmagában alapvető és meglehetősen egyedülálló a komplexitáselméletben. Hasonló eredmény nem ismert az idő bonyolultsága tekintetében, és általában azt feltételezik, hogy az NP és a co-NP komplexitási osztályok eltérőek.
Megjelenése óta a tétel és annak bizonyítása a bonyolultságelmélet alapjainak részét képezi, ezért mesteri szinten tanítják őket, és oktatókönyvekben tartalmazzák. Különösen megemlíthetjük Papadimitriou, Arora és Barak könyveit.
Ugyanebben a cikkben Immerman következményként bemutatja az NL osztály és a logaritmikus hierarchia közötti egyenlőséget , vagyis azokat a nyelveket, amelyeket a Turing-gépek váltogatnak , logaritmikus időben közvetlen hozzáféréssel és korlátozott számváltásokkal. Ehhez használja az NL osztály és az elsőrendű logika közötti egyenlőséget a tranzitív lezárással FO (Transitive closure) (en) , az egyenlőséget, amelyet a leíró bonyolultsággal hoz létre .