Satz von Immerman und vszlepcsényi – Wikipedia

before-content-x4

Le Satz von Immerman und Velepcsényi est une phrase de la théorie de la complexité et déclare que les classes de complexité spatiale non éterministe sont terminées sous la formation du complément. En particulier, la classe NL (lieu de logarithmique non éterministe) est terminée sous la formation du complément.

after-content-x4

Pendant longtemps, comme pour les classes de complexité temporelle non éterministe, il a été supposé que NL n’était pas achevé en vertu du complément qu’en 1988 a toujours fourni des preuves. Pour cela, les deux ont reçu le prix Gödel (1995).

Peut être

s : N N {displayStyle s: mathbb {n} rightarrow mathbb {n}}

une fonction monotone avec

s ( n ) Oh ( enregistrer ( n ) ) {DisplayStyle s (n) dans Omega (log (n))}

. Ensuite, ce qui suit s’applique:

En particulier, s’applique alors

NL= co-NL{DisplayStyle {textsf {nl}} = {textsf {co-nl}}}}

.
Mais cela s’applique également à

after-content-x4
NL= co-NL{DisplayStyle {textsf {nl}} = {textsf {co-nl}}}}

Avec la technologie de rembourrage le théorème pour tout le monde

s ( n ) Oh ( enregistrer ( n ) ) {DisplayStyle s (n) dans Omega (log (n))}

suit.

Les preuves utilisent la technologie des preuves du comptage inductif (non déterministe).

Remarques préliminaires [ Modifier | Modifier le texte source ]]

Peut être

L : = L ( g ) {displayStyle l: = l (g)}

Une langue au-dessus de la grammaire de type 1

g : = ( N , UN , d , S ) {displayStyle g: = (n, sigma, delta, s)}

Avec les symboles habituels pour non-terminal

N {displaystyle n}

, Terminal

UN {DisplayStyle Sigma}

, Règles de production

d {DisplayStyle Delta}

Et le symbole de début

S {DisplayStyle S}

.
Alors c’est pour un mot

Dans UN {displaystyle win Sigma ^ {ast}}

Le graphique

g r un p H |w|: = ( ( UN N ) |w|, un Gb ) {displayStyle graph_ {| w |}: = ((Sigma Cup n) ^ {leq | w |}, alpha rightarrow _ {g} bêta)}

le graphique que tous les ensembles se trouvent avec une longueur au plus sur la longueur de

Dans {displayStyle in}

contient, par lequel le graphique a un bord entre deux ensembles de mouvement lorsqu’il s’agit d’une production en

g {displaystyle g}

donne.
En particulier, le graphique contient les deux

S {DisplayStyle S}

ainsi que

Dans {displayStyle in}

vous-même et cela s’applique que

Dans L {displaystyle win l}

Exactement quand il y a un chemin de

S {DisplayStyle S}

après

Dans {displayStyle in}

dans ce graphique.

S’il est maintenant possible de construire une machine de Turing non détéministe et linéaire qui accepte exactement quand elle Non Chemin de

S {DisplayStyle S}

après

Dans {displayStyle in}

la preuve est fournie.

Non-compétence [ Modifier | Modifier le texte source ]]

Il a d’abord été supposé que le nombre

N {displaystyle n}

le nœud réalisable de

S {DisplayStyle S}

est connu (nous reportons le calcul de

N {displaystyle n}

sur plus tard).
Ensuite, l’algorithme suivant résout le non-acabilité d’atteindre.

Graphique donné

g = ( DANS , ET ) {displayStyle g = (v, e)}

, Le nœud de démarrage

s {DisplayStyle S}

, Node cible

t {displayStyle t}

et nombre de nœuds accessibles

N {displaystyle n}

.

  1. Compteurs initialisés
  2. Pour chaque nœud
  3. Chutes

Ni

N {displaystyle n}

toujours

c {DisplayStyle C}

peut plus grand que

| DANS | {displayStyle | v |}

le sien et consommer (codé binaire) rien de plus que

enregistrer ( | DANS | ) {DisplayStyle Log (| v |)}

Espace de stockage.
L’algorithme garantit que tout le monde

N {displaystyle n}

Nootes que de

s {DisplayStyle S}

sont accessibles, à être répertoriés et uniquement acceptés si

t {displayStyle t}

n’était aucun de ces nœuds.

Compter inductif [ Modifier | Modifier le texte source ]]

Maintenant, seul le nombre précédemment inconnu reste

N {displaystyle n}

pour déterminer les nœuds accessibles. L’idée est le numéro

N i{displaystyle n_ {i}}

pour calculer le nœud, qui est au plus

je {displayStyle i}

Les étapes sont accessibles. Tu pars

je {displayStyle i}

Puis comptez inductif et utilisez-le

N = N |V|{DisplayStyle n = n_ {| v |}}}

est applicable. L’algorithme fonctionne comme suit:

  1. Initialiser
  2. Pour chaque nombre d’étapes
  3. Cadeau

Depuis l’algorithme seulement trois points (

c , N i, N i1{DisplayStyle c, n_ {i}, n_ {i-1}}}

) En même temps, il peut être réalisé avec un espace de stockage logarithmique.
Des preuves formelles de l’exactitude sont laissées au lecteur intéressé. La note suivante est l’idée de preuve:

N i{displaystyle n_ {i}}

Sera exactement alors alors pas incrémenté lorsque tous les nœuds avec une distance plus petite que

je {displayStyle i}

et aucun autre directement (c’est-à-dire dans un maximum d’une étape) n’a pu être trouvé.

La preuve [ Modifier | Modifier le texte source ]]

Maintenant, seuls les deux algorithmes doivent être combinés.

  1. Calculer
  2. Utiliser la non-compétence pour

Une telle machine Turing accepte exactement s’il n’y a pas de chemin de

S {DisplayStyle S}

après

Dans {displayStyle in}

Et comme les deux algorithmes partiels n’ont besoin que d’espace de stockage logarithmique, la preuve est terminée.

Publications originales:

Manuels:

after-content-x4