30 maggio 2016, prova 01
Rispondi prima di leggere la spiegazione. I termini sottolineati offrono un aiuto rapido.
- 1
È falso che ?
- 2
Supponiamo . È vero che PRIMES non è EXP-hard?
- 3
Se sapremmo se esistono funzioni one-way?
- 4
?
- 5
SCHÖNFINKEL-BERNAYS SAT decidibile in tempo polinomiale con errore limitato da una MdT quantistica?
- 6
Le riduzioni per i function problems hanno qualcosa in più?
- 7
È vero che 2-SAT non appartiene a DP?
Programmare una MdT che accetta gli interi positivi dispari (codificati in complemento a due)
| # | Stato | Legge | Nuovo stato | Scrive | Mossa | Commento | ||
|---|---|---|---|---|---|---|---|---|
| 1 |
Prossima transizione (riga 1): δ(s, ▷) = (s, ▷, →) · supera l'inizio del nastro
La macchina deve accettare solo gli interi positivi dispari scritti in complemento a due. Controlla due condizioni: primo bit 0 (segno non negativo) e ultimo bit 1 (numero dispari, quindi diverso da zero). Per esempio, 011 è accettato, mentre 111 è rifiutato perché negativo.
Qui devi leggere anche la prima cifra, quindi non partire direttamente dal blocco «vai in fondo».
| commento | |||
|---|---|---|---|
| segno positivo | |||
| negativo | |||
| stringa vuota | |||
| va in fondo | |||
| torna sull'ultimo bit | |||
| dispari | |||
| pari (o zero) |
Traccia su input 011 (= 3):
▷ [0] 1 1 s : primo bit 0, positivo
▷ 0 [1] 1 a : vado in fondo
▷ 0 1 [1] a
▷ 0 1 1 [⊔] a : fine, torno sull'ultimo bit
▷ 0 1 [1] ⊔ t : ultimo bit 1, dispari: yes ✔
Con 110, che è negativo, la macchina rigetta al primo bit; con 010, che è pari, rigetta sull'ultimo.
Eseguila passo per passo
Prossima transizione: δ(s, ▷) = (s, ▷, →)
Mostra il codice della soluzione
s ▷ -> s ▷ R s 0 -> a 0 R # segno positivo s 1 -> no 1 S # negativo s ⊔ -> no ⊔ S # stringa vuota a b -> a b R # va in fondo a ⊔ -> t ⊔ L # torna sull'ultimo bit t 1 -> yes 1 S # dispari t 0 -> no 0 S # pari (o zero)