Una variante della funzione di castoro occupato


9

Leggendo questa domanda " Problemi indecidibili di RE naturale ma non completi di Turing " mi è venuta in mente la seguente lingua:

Se Σ() è la funzione di castoro occupato (punteggio massimo raggiungibile tra tutte le macchine di Turing a stato n con 2 simboli di arresto del tipo sopra descritto, quando avviate su un nastro vuoto), definire la funzione:

BB(M)={1M computes Σ()0 otherwise

Ora definisci la lingua:

L={M|M halts and BB(M)=0}

è Lricorsivamente enumerabile? (dovrebbe essere re: basta simulare in M parallelo con tutte le TM della stessa lunghezza, e se M si arresta ed un altro M ferma con un più alto punteggio metti M per l'enumerazione).

Possiamo ridurre il problema dell'arresto a L ? (sembra che non possa "catturare" l'arresto dei castori indaffarati)


È il numero di stati? |M|
Pål GD,

Quando enumererai una che non si ferma in L ? L non può essere RE a meno che non enumerare tutti i suoi membri, e la procedura che hai descritto enumera solo quelli che in realtà battuta d'arresto. MLL
Steven Stadnicki,

@ PålGD: sì, è il numero di stati (escluso lo stato di arresto)
Vor

@StevenStadnicki: ho implicitamente supposto che contenga solo macchine che si fermano ... forse dovrei chiarirlo nella domanda (fammi pensare un po ', forse rende la domanda banale). L
Vor

2
@Kaveh Non è nemmeno un problema promessa - si può semplicemente definire (come credo il PO inteso) come L = { M | M soste B B ( M ) = 0 } . LL={M|M haltsBB(M)=0}
Steven Stadnicki,

Risposte:


3

Non riesco a credere di non averlo visto prima, ma sì, con un oracolo per puoi risolvere il problema dell'arresto. Ovviamente un oracolo per L ci dà "ricorsivamente" tutte le macchine per fermare i castori non occupati, quindi la domanda è "possiamo capire ricorsivamente in L quali sono i castori occupati?". Definire Σ 2 ( n ) come funzione di conteggio del "secondo castoro più indaffarato"; cioè, il secondo punteggio più alto ottenibile tra tutte le TM n -state a due simboli fermanti. Il trucco qui è che c'è una funzione ricorsiva f ( ) tale che Σ ( n ) Σ 2LLLΣ2(n)nf() (è quasi certo che f ( n ) = n + 1 farà il trucco, in realtà, ma ciò richiede che si sappia che la funzione BB è in costante aumento): data una macchina M di dimensione n che stampa Σ ( M ) 1s sul suo nastro e poi si ferma, c'è qualche c > 1 e due macchine ciascuna di dimensionic n che stampano esattamente Σ ( M ) 1s e esattamente Σ ( M )Σ(n)Σ2(f(n))f(n)=n+1MnΣ(M)c>1cnΣ(M) 1s, rispettivamente, sui loro nastri - e questo vale per una macchina M "castoro indaffarata" M anche se non conosciamo M esplicitamente. Ciò significa che avere un limite sulla funzione "secondo castoro occupato" per f ( n ) dà un limite per la funzione castoro occupato su n ; ma poi avendo questo, è facile risolvere il problema della terminazione per una TM M di dimensione n - qualoraM L allora dire che M si arresta; altrimenti, trova la macchina più lunga della dimensione f ( n ) in LΣ(M)+1M Mf(n)nMnMLMf(n)L(che può essere fatto in modo ricorsivo poiché ci sono solo finitamente molte macchine di dimensioni ) e simula M per tutti i passaggi necessari per fermare quella macchina. Se M non si ferma entro quel tempo, allora M non può fermarsi.f(n)MMM


Grazie; ispirato dalla tua risposta ho trovato un rapido (banale) -: riduzione diretta dal problema di arresto in una risposta separata.
Vor

3

Questa è una versione rielaborata della buona risposta di Steven, con una riduzione esplicita del problema di Halting.

Dato accumulo M ' che corre M su w e se si ferma va a destra del nastro, scrive uno 0 e battuta d'arresto.M,wMMw

Se ferma, B B ( M ) = 0 perché esiste una TM equivalente della stessa dimensione che scrive 1 e si ferma; quindi possiamo usare il decisore per L per verificare se M si ferma su w ( M si ferma su w iff M L )MBB(M)=0LMwMwML

... si è scoperto che la domanda è davvero banale :-)

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.