• Non ci sono risultati.

Calcolabilit` a e Linguaggi Formali Parte II Recupero II compitino

N/A
N/A
Protected

Academic year: 2021

Condividi "Calcolabilit` a e Linguaggi Formali Parte II Recupero II compitino"

Copied!
3
0
0

Testo completo

(1)

Calcolabilit` a e Linguaggi Formali Parte II Recupero II compitino

14 Gennaio 2015

Esercizio 1

Enunciare e dimostrare il secondo teorema di ricorsione.

Esercizio 2

Dimostrare il primo teorema di Rice applicando il secondo teorema di ricorsione.

Soluzione

Sia I 6= ∅, N un insieme che rispetti le funzioni. Supponiamo per assurdo che I sia decidibile. Si fissino due numeri c0 ∈ I e c1 ∈ I. Si definisca allora la/ funzione f (x)= if x ∈ I allora f (x) = c1 altrimenti f (x) = c0. La funzione f e’ calcolabile totale in quanto I e’ decidibile. Dal secondo teorema di ricorsione esiste n tale che φn= φf (n). Abbiamo due casi:

Se n ∈ I allora φn = φc1 con c1 ∈ I. Quindi I non rispetta le funzioni./ Assurdo.

Se n /∈ I allora φn = φc0 con c0 ∈ I. Quindi I non rispetta le funzioni.

Assurdo.

Esercizio 3

Determinare il tipo dei seguenti linguaggi:

L1= {anbam+1am: n, m ≥ 0, m dispari};

L2= {anban+1am: n, m ≥ 0, 1 < m < 3}.

Se il linguaggio `e di tipo 3 definire una corrispondente grammatica regolare, un’espressione regolare ed un un automa a stati finiti.

Se il linguaggio `e di tipo 2 definire una grammatica libera da contesto o un automa a pila corrispondente e dimostrare tramite il pumping lemma di tipo 3 che non `e un linguaggio regolare.

(2)

Soluzione

Cominciamo con il linguaggio L1. Se m = 1, 3, 5, . . . , e’ dispari, allora m = 2k+1 per k ≥ 0. Quindi sostituendo 2k + 1 per m si ottiene:

L1= {anbam+1am: n, m ≥ 0, m dispari} = {anba2k+1+1a2k+1: n, k ≥ 0}

da cui si ricava:

L1= {anba4k+3: n, k ≥ 0}.

Il linguaggio e’ regolare.

Espressione regolare: abaaa(aaaa) Grammatica regolare:

S ::= aS|bB B ::= aB1

B1::= aB2

B2::= aC C ::= |aC1 C1::= aC2 C2::= aC3 C3::= aC

Automa a stati finiti: insieme Q = {S, B, B1, B2, C, C1, C2, C3} di stati.

Stato iniziale: S. Unico stato finale C. Produzioni quelle della grammatica precedente. Per esempio, S →aS, etc.

Consideriamo il linguaggio L2. Si puo’ scrivere come segue (m = 2):

L2= {anba3an: n ≥ 0}.

Il linguaggio e’ libero: S ::= aSa|baaa.

Dimostriamo ora che L2non e’ regolare. Supponiamo per assurdo che lo sia.

Esiste un numero naturale n > 0 tale che, se z ∈ L2 ha lunghezza maggiore di n, allora z puo’ essere scomposta in tre parti z = xyu con y 6=  in maniera tale che xyiu ∈ L2 per ogni i ≥ 0. Inoltre la precedente scomposizione in tre parti esiste in ogni sottostringa di z che abbia lunghezza maggiore di n.

Si consideri quindi an+1ba3an+1. Allora esistono x, y, u con y 6=  tali che an+1ba3an+1 = xyuba3an+1 ed inoltre xuba3an+1 ∈ L2. Questo e’ assurdo perche’ xu = ak con k < n.

Esercizio 4

Semplificare le seguenti espressioni regolari giustificando ogni passaggio:

(a) ( + R+ S)(U + R).

(b) (U S+ R)+ ((U + R)+ S).

2

(3)

Soluzione

(a)

( + R+ S)(U + R) = (R+ S)(U + R) perche’  + R= R

= (R + S)(U + R) perche’ (R + S)= (R+ S)

= (R + S)U + (R + S)R (b)

(U S+ R)+ ((U + R)+ S) = (U S+ R)+ ((U + R)+ S) perche’ (U + R)= (U + R)

= (U S+ R)+ ((U + R) + S) perche’ ((U + R)+ S)= ((U + R) + S)

= (U S+ R)+ (U + R + S)

= (U + R + S) perche’ (U S+ R)⊆ (U + R + S)

3

Riferimenti

Documenti correlati

Rice II per I: e’ applicabile con f la funzione costante di valore 0 sul dominio {3, 5, 6}, e g la funzione costante su tutto l’insieme N.. Ad I non appartengono programmi di

Eliminiamo i simboli improduttivi: {F, G}... Eliminiamo i simboli improduttivi:

[r]

Eliminiamo i simboli improduttivi: {F, G}.. Eliminiamo i simboli improduttivi:

Possemato Andrea Voto

[r]

Se il linguaggio ´ e tipo 3, dare un’espressione

Se il linguaggio ´ e tipo 3, dare un’espressione