Können Multipebble-Automaten alle deterministischen kontextsensitiven Sprachen bestimmen?

12

Ein MPA (Multipebble-Automat) ist ein 2DFA (bidirektionaler deterministischer endlicher Automat), der eine beliebige Anzahl von Steinen verwenden kann (tatsächlich höchstens Steine ​​auf einer gegebenen Eingabe w - die Eingabe wird auf das Band zwischen zwei Enden geschrieben -Markierungen als # w # ). Während der Berechnung kann ein MPA erkennen, ob das Symbol unter dem Kopf einen Kiesel aufweist, und er kann dann einen Kiesel platzieren (den Kiesel entfernen), wenn kein Kiesel vorhanden ist (ein Kiesel).|w|+2w#w#

ist ein Homomorphismus, wobei σ ein Symbol ist und k > 0 .hk(σ)=σσk times=σkσk>0

Für jede deterministische kontextsensitive Sprache es nicht schwer zu zeigen, dass es ein k > 0 gibt, so dass h k ( L )L  (LDSPACE(n)),k>0 hk(L) von einem MPA erkannt werden kann. Also können wir das sagen

Jedes "Problem", das von einem linearen DTM (deterministische Turing-Maschine) entschieden werden kann, kann von einem MPA entschieden werden.

Ist es auch wahr für jede Sprache in ? Können MPAs alle deterministischen kontextsensitiven Sprachen bestimmen?DSPACE(n)


ist die Länge von w .|w|w

ist das i t h Symbol von w , wobei 1 i | w | .wiithw1i|w|

.hk(L)={hk(w1)hk(w2)hk(w|w|)wL}

Abuzer Yakaryilmaz
quelle
interessante Frage; beabsichtigen, einige lose verwandte Verweise zu veröffentlichen, die relevant sein könnten, wenn sich niemand anderes etwas Besseres / Näheres einfallen lässt. eine Frage. CSLs in DSpace (n) müssen nicht mit allen linearen DTMs identisch sein, oder? eigentlich ist das eine offene frage oder? oder eng mit einem verwandt? weil CSLs nachweislich NSpace (n) entsprechen und offen sind, wenn NSpace (n) == DSpace (n).
vzn
@vzn: CSLs in DSPACE (n) werden deterministische CSLs genannt und bilden genau DSPACE (n).
Abuzer Yakaryilmaz
in Ordnung. Der Hinweis, den ich als "wahrscheinlich verwandt" in Erinnerung hatte, sind die Kieselargumente, die verwendet wurden, um die Frage DTime (n ^ k) =? Ntime (n ^ k) anzugreifen, z. B. die jüngsten Ergebnisse von Santhanam , die auf dem PPST-Ergebnis aufbauen. Ein weiteres Problem, von dem ich intuitiv denke, dass es damit zusammenhängt, ist das Problem der Komprimierung einer TM-
Laufsequenz
kannst du die frage bitte etwas klären? Haben Sie nicht gerade in dem hervorgehobenen Text behauptet, dass MPAs alle deterministischen CSLs bestimmen können? Gibt es beispielsweise eine Möglichkeit, Ihre Frage in Bezug auf h_k (L) umzuformulieren?
vzn
2
Das Theorem besagt, dass wenn eine DCSL ist, es einige k gibt, so dass h k ( σ ) durch eine MPA berechnet werden kann. Die Frage ist, können wir k = 1 nehmen ? σkhk(σ)k=1
Ben Standeven

Antworten:

3

Vielleicht können Sie in DPSACE (n) eine Sprache erstellen, die von einem MPA mit mit einem Diagonalisierungsargument erkannt werden kann (wahrscheinlich ähnelt die Idee der in Bens Antwort, aber ich habe mich nicht damit befasst):k=1

Angenommen, Sie codieren über dem Alphabet einen MPA mit einer Liste von Übergängen:Σ={0,1}

s,a,ps,p,L|R;...#

wobei der aktuelle Zustand ist, a das aktuelle Symbol ist, p der Kieselzustand ist, s ' der neue Zustand ist, p ' der neue Kieselzustand ist, L | R ist die Bewegungsrichtung, # ist ein Endmarker).sapspL|R#

Eine Turingmaschine am Eingang x kann prüfen, ob es sich um eine gültige Beschreibung eines M P A x handelt, und diese am Eingang x für 4 | simulieren x | Schritte mit 6 | x | + log | x | Zellen, dehnen die Eingabe auf diese Weise:MxMPAxx4|x|6|x|+log|x|

 MPA description # MPA tape # curr_state # counter #

Wo:

  • Die MPA-Beschreibung ist die ursprüngliche Eingabezeichenfolge (hat die Länge | x | );x|x|
  • MPA-Band ist die MPA-Banddarstellung: Für jede Zelle können wir 3 Bits verwenden, um das Kopf-Flag, das Kiesel-Flag und den (festen) Bandinhalt zu speichern (hat die Länge );3|x|
  • curr_state speichert den aktuellen Zustand des MPA (hat die Länge );log|x|
  • counter ist der Simulationsschrittzähler, der nach jedem Simulationsschritt aktualisiert wird (Länge ).2|x|

Wenn in 4 | anhält x | Schritte, dann gibt TM M das Gegenteil aus (wenn es nicht anhält, gibt M 0 aus).MPAx4|x|MM

Für groß genug ist die 4 | x | Simulationsschritte sind größer als 2 | x | + 2 | x | log | x | die größer ist als die Länge einer vollständigen Konfigurationsbeschreibung von M P A x ; auf diese Weise, wenn M P A x in 4 | nicht anhält x | Schritte, dann sind wir sicher, dass es für immer Schleife wird.x>x04|x|2|x|+2|x|log|x|MPAxMPAx4|x|

Angenommen, es gibt ein , das die gleiche Sprache L von M entscheidet , dann hält es immer an, und Sie können ein "größeres" M P A y ' aufbauen , das die gleiche Sprache entscheidet, mit y > x 0 (addieren Sie einfach Dum Staaten).MPAyLMMPAyy>x0

Konstruktionsbedingt gilt was ein Widerspruch ist.MPAy(y)=1M(y)=1MPAy(y)

Marzio De Biasi
quelle
Ja, das ist das Argument, an das ich gedacht habe.
Ben Standeven
3

Gegenbeispiel: Das Halteproblem für MPAs ist im linearen Raum entscheidbar: Wenn der MPA N Zustände hat, benötigen wir | k | +2 Bits Platz zum Speichern der Kieselorte, log N Bits zum Speichern des aktuellen Zustands und Bits zum Speichern eines Zählers; Wenn der Zähler zyklisch läuft, wird die simulierte Maschine niemals anhalten. Dies ist linear in | k | (Ignorieren Sie den O (N \ log N) Speicherplatz, der zur Beschreibung der Maschine erforderlich ist), wie erforderlich.log(N(|k|+2))+|k|+2

Da diese Sprache im linearen Raum entscheidbar ist, kann sie auch als DCSL ausgedrückt werden.

Ben Standeven
quelle
Vielleicht fehlen mir einige einfache Punkte, aber ich konnte nicht verstehen, wie Ihr Gegenbeispiel funktioniert. Könnten Sie bitte genauer beschreiben, wie Ihre Argumentation funktioniert? Vielen Dank!!!
Abuzer Yakaryilmaz