Sei sulla pagina 1di 9

L 2 M I M accetta esattamente una

stringa

Consideriamo la proprietà
Pe 2 LE RE l Ill 1

Notiamo che banale


Lp Le e poi non è

quindi per te Rice le R

Dimostriamo che le RE facendo una riduzione del


linguaggio le
E li Ricordiamo che le è

M Iii M definito sull'alfabeto


E 20,1
Linea 4 11cm il L

Consideriamo per la macchina M un alfabeto E E 2 3


Definiamo M cosi si

M
Descrizione M
Il modulo e porta all'accettazione diretta di
M se vi altrimenti
C calcola la stringa w che è la stringa W

depurata dalla occorrenza del carattere

quindi notache W e È
La macchina M'procede a questo punto
eseguendo M see vu
Di conseguenza N accetta almeno la elenga
x Accetterà altre stringhe se e solo se

M accetta qualche stringa

e
MI accetta esattamente una
strega se e solo se

se LIM 0

Per completezza mostriamo anche che


le co RE
Mostriamo
infatti che il suo problema complementare RE
Consideriamo I MI 1cm 0 oppure I Limits 1
La E
no
I m

Fiteens
nn mi m
w

M
Il modulo CHECK si attiva se M EM e accetta
solo se l'input w è la stringa 1

Se MHM si Llm 0 sì
Se MFM no
IL IM'st 1 Ino
PROBLEMA DIFFERENZA DI LINGUAGGI

Le
dig 2 me ma I we 1cm Lima

Mostriamo che lift RE

Ld
ldiff.mnMa Ma
batte la codifica della macchina M costruiamo una

coppia di macchine Me MA come segue


M è una macchina che accetta tutto ore 2g
Ma è la seguente smacchina

se MEM allora
Mr LIM E

altrimenti
Lima 0

Di conseguenza
M M Lima Lima 2 0 f 0
l
51 SI

M KM LIM Lima E E 0
NO NO
Prova scritta di Informatica Teorica
03 febbraio 2014
Durata 2 ore

Esercizio 1
Si definisca una macchina di Turing, eventualmente non-deterministica e/o multinastro, per il riconoscimento
del seguente linguaggio:

L1 = {A#B#W1 # . . . #Wk |A, B, Wi 2 (0|1)+ , |A| > |B|, k = |A| |B|, 81  i  k 1, 9si , ri 2 (0|1)+ , |si | = |B|, |ri | = |A|
tale che: si ✓ Wi ^ ri ✓ Wi+1 ^ sR
i ⇢ ri }.

Ad esempio la stringa

z }| {
011101#010#1001110#001101100#10 001110 10

in cui |A| = 6, |B| = 3, k = 3, s1 = 011, r1 = 011011, s2 = 100, r2 = 001110, appartiene al linguaggio L1 .

Esercizio 2
Discutere la calcolabilità del seguente linguaggio:

L2 = {M | la macchina (codificata da) M non accetta L1 },

dove L1 è il linguaggio descritto nell’esercizio 1.

Esercizio 3
Si consideri il seguente problema Arca (di Noè): occorre salvare gli animali dal diluvio universale, ma non c’è
spazio per tutti sull’arca. Allora Noè pensa di selezionare un sottoinsieme delle specie da salvare che siano
rappresentative di tutte le altre.
Un’istanza del problema Arca è una tupla hS, a, `i in cui S è una matrice quadrata di interi non negativi
m ⇥ m che codifica la similarità tra le m specie di animali da salvare, a è la capienza dell’arca (cioè il numero
massimo di coppie di animali che possono essere ospitati sull’arca) ed ` è il livello minimo di similarità accettabile
per Noè. L’elemento generico S[i][j] della matrice rappresenta il grado di similarità tra la specie i e la specie j
(più è alto più le specie sono simili). La matrice S è simmetrica.
Un’istanza hS, a, `i è un’istanza “si” del problema Arca se esiste un sottoinsieme X di specie di animali
(codificati con interi nell’intervallo [1, . . . m]) tale che |X|  a ed ogni specie i 2 [1, . . . m] appartiene ad X
oppure S[i][j] ` per qualche specie j 2 X (cioè se la specie i non viene salvata ne esiste una molto simile che
è ospitata sull’arca).
Qual è la complessità del problema Arca?
Discutere infine la complessità del seguente problema di ottimizzazione di Noè: data una coppia hS, ai,
calcolare il più alto livello di similarità ` tale che l’istanza hS, a, `i sia un’istanza “si” del problema Arca.
ESERCIZIO 2
LE M I 1cm Li

E RE 24 La R
per
th RICE
a e
lei 1cm V
ft e Elmi e x Li
sembra difficile verificare tale disgiunzione in
RE soprattutto la
parte
Dimostriamo che la RE di sinistra

La L2

f
M y m

MHM y bin 7 La

ÉTÉ
definita per
l'esercizio 1
no che accetta le
µ e si attiva se MFM

Se ME M 1cm L mi L
NO NO

Se M EM 1cm 07 Li
si SI Nata
il bing.li è

diverso da 0
ESERCIZIO 3
Il problema Area e NP
Lascio come esercizio la membership
Argomentare con Rel peal lil e
pool
decidibile
Il problema è NAhard
Facciamo una riduzione da Dominating Set
DS p
Area
G K sia l

G v E IDEA DI RIDUZIONE
È Numero di razza di esseri viventi
2 m IVI le 1
a a K
p 9 matrice di incidenza
05
4 di 6

sti JIJI 1 se li JIE E


altrimenti stetti 0

E facile vedere che vi è una


corrispondenza
biunivoca tra dominating seta di G di
cardinalità K e sottoinsiemi di specie da
salvare con le caratteristiche richieste
Prova scritta di Informatica Teorica
21 febbraio 2018
Durata 2 ore

Esercizio 1
Si definisca una macchina di Turing, eventualmente non-deterministica e/o multinastro, per il riconoscimento
del seguente linguaggio L:

L = {W1 # . . . #Wn | Wi 2 (0|1)+ , 9s 2 (0|1)+ | 81  i < n, |Wi |s < |Wi+1 |s },


dove |Wi |s denota il numero di occorrenze della sottostringa s nella stringa Wi (1  i  n).

Ad esempio, la stringa 0110#0111101#11011110 in cui s = 11 appartiene al linguaggio L.

Esercizio 2
Si consideri il seguente linguaggio:

L = {(M, w) | M è una macchina di Turing, w è una stringa e la macchina M non accetta w}.

Discutere la calcolabilità di tale linguaggio (cioè dire se è decidibile, indecidibile, semi-decidibile, o nemmeno
semi-decidibile).

Esercizio 3
Discutere la complessità del seguente problema Scheduling Processi Aziendali (SPA):
Si vuole progettare un algoritmo di scheduling di supporto alla programmazione di un insieme di attività
(processi aziendali) svolti all’interno di un’azienda . In particolare l’azienda può eseguire al più un processo
in ogni istante di tempo. Inoltre ogni processo è eseguito senza interruzione per un certo periodo di tempo.
Formalmente un’istanza del problema SPA è una tupla hP, T, W, D, Bi definita come segue: P è un insieme
di processi, T è l’insieme dei tempi di completamento di ogni processo, W è l’insieme dei profitti che possono
generare i processi, D è l’insieme delle scadenze associate ai processi (definite da un numero intero che specifica il
tempo massimo in cui quel processo deve essere necessariamente terminato, a partire dall’istante 0 di inizio delle
attività) e B è il profitto complessivo minimo che l’azienda vuole ottenere dall’esecuzione di un sottoinsieme di
tali processi.
In tale contesto, un processo j completato entro la propria deadline genera un profitto wj ; viceversa il
profitto è 0.
Un’istanza I = hP, T, W, D, Bi è un’istanza “sı̀” del problema SPA se esiste uno scheduling di processi che
rispettano le scadenze aventi un profitto complessivo almeno pari a B.
Discutere la complessità di decidere se un’istanza del problema SPA è un’istanza “sı̀”.
ESERCIZIO 3
Il problema SPA E NP
Membership facile Fare per esercizio

Mostriamo che SPA E NP hard facendo una

riduzione dal problema della laicaccia

KNAPSACK p SPA
IDEA DI RIDUZIONE
Abbiamo processi
Istanza tianya.ae e

Definiamo B Umani

vi vu f fi e El n

C la

ti ei

iii di Cmax

Tutti i processi hanno


la stessa scadenza massima
In questo modo anche l'ultimo
processo a
partire dopo che sono
terminati gli altri diciamo il processo j
dovrà
terminare entro il tempo complessivo dj Cmax
È facile vedere che otteniamo così una

corrispondenza biunivoca tra le soluzioni di


dei pesi
knapsack in cui la somma
degli
oggettideve essere Cmax e le soluzioni dell'istanza di SPA
Esercizio 2

L 2 M w I M non accetta e

È facile vedere che L RE e che L Eco RE

L
Nolte che
poiché ognistringa binaria
è interpretata come una TM
si ha che I Lu E RE

Facciamo una
semplicissima riduzione da Ld
Ld E L

M I M M

Ì
definiamo la stringa W uguale
alla codifica della macchina M

N.B Il fatto che l RE si


può anche inferiore
poiché I La Se fosse infatti LE RE
essendo la E RE si avrebbe
LE R e la c R che è

impossibile

Potrebbero piacerti anche