• Nenhum resultado encontrado

MatrigraniCF-RelPadCT200ListEx2

N/A
N/A
Protected

Academic year: 2021

Share "MatrigraniCF-RelPadCT200ListEx2"

Copied!
23
0
0

Texto

(1)

INSTITUTO TECNOLÓGICO DE AERONÁUTICA

RELATÒRIO PADRONIZADO LISTEX2 – CT200

CIRO FERNANDES MATRIGRANI

PROFESSOR: DR. PAULO M. TASINAFFO

SÃO JOSÉ DOS CAMPOS 2012

(2)

1 Projete gramáticas livres de contexto para as seguintes

linguagens:

1.1 O conjunto {0n1n |n > 1}, isto é, o conjunto de todos os strings de

um ou mais 0’s seguidos por uma quantidade igual de 1’s.

S  0S1 S  01

1.2 O conjunto {aibjck | i ≠ j ou j ≠ k }, ou seja, o conjunto de strings de

a’s seguidos por b’s e por c’s, tal que exista um número diferente

de a’s e b’s ou um número diferente de b’s e c’s, ou ambos.

S  DC | EC | AF | AG | A | B | C A  aA | a B  bB | b C  cC | c D  aDb | B E  aEb | A F  bFc | C G  bGc | B

2 A gramática a seguir gera a linguagem de expressões regulares

0*1(0+1)*.

S  A1B

A  0A | ε

B  0B | 1B | ε

Forneça derivações mais à esquerda e mais à direita dos seguintes

strings:

(3)

2.1 00101;

S LM A1B LM 0A1B LM 00A1B LM 00ε1B LM 00ε10B LM 00ε101B LM

00ε101ε

S RM A1B RM A10B RM A101B RM A101ε RM 0A101ε RM 00A101ε RM

00ε101ε

2.2 1001;

S LM A1B LM ε1B LM ε10B LM ε100B LM ε1001B LM ε1001ε S RM A1B RM A10B RM A100B RM A1001B RM A1001ε RM ε1001ε

2.3 00011

S LM A1B LM 0A1B LM 00A1B LM 000A1B LM 000ε1B 000ε11B LM 000ε11ε

S RM A1B RM A11B RM A11ε RM 0A11ε RM 00A11ε RM 000A11ε RM 000ε11ε

3 Considere a gramática

S  aS | aSbS | ε

Essa gramática é ambígua. Mostre em particular que o string aab

tem duas:

(4)

3.2 Derivações mais à esquerda;

S LM aSbS LM aaSbS LM aaεbS LM aaεbε

S LM aS LM aaSbS LM aaεbS LM aaεbε

3.3 Derivações mais à direita.

S LM aSbS LM aSbε LM aaSbε LM aaεbε

S RM aS RM aaSbS RM aaSbε RM aaεbε

4 A gramática a seguir gera expressões de prefixo com

operandos x e y e os operadores binários +, - e *:

E  +EE | *EE | -EE | x | y

4.1 Encontre as derivações mais à esquerda e mais à direita, e uma

árvore de derivações para o string +*-xyxy.

E LM +EE LM +*EEE LM +*-EEEE LM +*-xEEE LM +*-xyEE LM +*-xyxE 

LM +*-xyxy

E 

RM +EE RM +Ey RM +*EEy RM +*Exy RM +*-EExy RM +*-Eyxy RM

+*-xyxy

5 Comece com a gramática:

S  ASB | ε

A  aAS | a

B  SbS | A | bb

(5)

Variáveis anuláveis S  ε

S  ASB | AB A  aAS | aA | a

B  SbS | bS | Sb | b | A | bb

5.2 Elimine quaisquer produções unitárias na gramática resultante;

Pares Unitários (SS) (SA) (SB) (AA) (AB) (AS) (BB) (BA) (BS)

S  ASB | AB A  aAS | aA | a

B  SbS | bS | Sb | b | A | bb | aAS | aA | a

5.3 Elimine quaisquer símbolos inúteis na gramática resultante;

Símbolos Geradores A, B, S, a, b Símbolos Úteis A, B, S, a, b

5.4 Coloque a gramática resultante na forma normal de Chomsky.

S  ASB | AB B  SCS | C | A | CC | SSC | CS | DAS | DA | D C  b D  a A  DAS | DA | D S  AE | AB

(6)

B  SF | C | A | CC | F | CS | DG | DA | D C  b D  a A  DG | DA | D E  SB F  SC G  AS

6 Para as transparências 8 e 9 da Aula 7 do Prof. Carlos

Henrique, obter a função de “Descrições Instantâneas” para

cada um dos Autômatos de pilha lá presentes,

respectivamente. Para cada um destes ADP passe “dois strings”

uma que é aceito pelo ADP e outro que não é.

δF Q={q1,q2,q3,q4,q5,q6,q7}, ={a,b,c}, ={a,$}, F={q4,q7} Fita a b c ε Pilha a $ ε a $ ε a $ ε a $ ε q1 (q2,$) q2 (q2,a) (q3,ε) (q5,ε) q3 (q3,ε) (q4,ε) q4 (q4,ε) q5 (q5,ε) (q6,ε) q6 (q6,ε) (q7,ε) q7

(7)

String Aceita aaabccc String NÃO Aceita aabb

δF Q={q1,q2,q3,q4}, ={0,1}, ={0,1,$}, F={q1,q4} Fita 0 1 ε Pilha 0 1 $ ε 0 1 $ ε 0 1 $ ε q1 (q2,$) q2 (q2,0) (q2,1) (q3,ε) q3 (q3,ε) (q3,ε) (q4,ε) q4 String Aceita 00001111

String NÃO Aceita 01

7 Converta a gramática

S  0S1 | A

A  1A0 | S | ε

Em um ADP que aceite a mesma linguagem por pilha vazia.

G = ({S,A}, {0,1}, P, S) P = (Q, ∑, Γ, δ, q0, Z0)

(8)

Terminais para o ADP {0,1} Γ = V ∪ ∑ = {0,1,A,S} δ δ (q,ε,S) = {(q,0S1), (q,A)} δ (q,ε,A) = {(q,1A0), (q,S)} δ (q,0,0) = {(q,ε)} δ (q,1,1) = {(q,ε)} P=({AS}, {0,1}, {0,1,A,S}, δ, q0, S)

8 Converta a gramática

S  aAA

A  AS | bS | a

Em um ADP que aceite a mesma linguagem por pilha vazia.

G = ({S,A}, {a,b}, P, S) P = (Q, ∑, Γ, δ, q0, Z0)

Terminais para o ADP {a,b}

Γ = V ∪ ∑ = {a,b,A,S}

δ

δ (q,ε,S) = {(q,aAA)}

δ (q,ε,A) = {(q,AS), (q,bS), (q,a)} δ (q,a,a) = {(q,ε)}

δ (q,b,b) = {(q,ε)}

(9)

9 Para a gramática

I  a | b | Ia | Ib | I0 | I1

E  I | E*E | E+E | (E)

Determine:

9.1 Um ADP P equivalente a esta gramática livre de contexto;

= ({I,E}, {a,b,0,1,*,+,(,)}, P, I) P = (Q, ∑, Γ, δ, q0, Z0)

Terminais para o ADP { a,b,0,1,*,+,(,)}

Γ = V ∪ ∑ = { a,b,0,1,*,+,(,),I,E}

δ

δ (q,ε,I) = {(q,a), (q,b), (q,Ia), (q,Ib), (q,I0), (q,I1)}

δ (q,ε,E) = {(q,I), (q,E*E), (q,E+E), (q,(E)} δ (q,a,a) = {(q,ε)} δ (q,b,b) = {(q,ε)} δ (q,0,0) = {(q,ε)} δ (q,1,1) = {(q,ε)} δ (q,+,+) = {(q,ε)} δ (q,*,*) = {(q,ε)} δ (q,(,() = {(q,ε)} δ (q,),)) = {(q,ε)}

(10)

9.2 Esboce graficamente o ADP P resultante.

10 (*) – Prove o seguinte teorema:

“Se P = (Q, ∑, Γ, δ, q0, Z0, F) é um ADP, e se (q, x, ) *p (p, y,

β), então para

quaisquer w em ∑* e  em Γ*, também é verdade que, (q, xw, ) *p (p,

yw, β)”.

Seja P = (Q, ∑, Γ, δ, q0, Z0, F), x ∑*, α Γ*, q Q y ∈ ∈ ∈ ∑*, β Γ*, p Q. Supomos também que:

∈ ∈ ∈

(q, x, )

*

p (p, y, β)

Pelo Teorema 1.1, sabemos que a mesma derivação também é verdade se uma mesma string w ∑* for concatenado à ∈ direita de x e y. Assim:

(q, xw, )

*

p (p, y, β)

Pelo Teorema 1.2, sabemos que a mesma derivação também é verdade se uma mesma string  Γ* for concatenado ao fundo∈ ddas pilhas α e β. Assim:

(q, xw, )

*

p (p, yw, β), cqd.

11 Para um ADP P = ({q,p}, {0,1}, {Z0,X}, δ, q, Z0, {p}) com uma

função transição ou “descrição instantânea” dada por:

0 1

(11)

q (q,XX) (q,XZ0) (q,X) (p,ε)

p (p,XX) (p,ε) (p,ε)

(12)

11.1 : 0011

(q,0011,Z0) ⊢ (q,011,XZ0) ⊢ (q,11,XXZ0) ⊢ (q,1,XXZ0) ⊢ (q,ε,XXZ0) ⊢ (p,ε,XZ0) (q,011,XZ0) ⊢ (p,011,Z0) (q,11,XXZ0) ⊢ (p,11,XZ0) ⊢ (p,1,XXZ0) ⊢ (p,ε,XXXZ0) (q,1,XXZ0) ⊢ (p,1,XZ0) ⊢ (p,ε,XXZ0) (p,11,XZ0) ⊢ (p,11,Z0) ⊢ (p,1,ε) (p,1,XXZ0) ⊢ (p,1,XZ0) ⊢ (p,ε,XXZ0)

11.2 : 010

(q,010,Z0) ⊢ (q,10,XZ0) ⊢ (q,0,XZ0) ⊢ (q,ε,XXZ0) ⊢ (p,ε,XZ0) (q,10,XZ0) ⊢ (p,10,Z0) ( q,0,XZ0) ⊢ (p,0,Z0)

(13)

12 (*) – Mostre a seguinte propriedade “Se w está em L(PF), então

w está em N(PN)”. Ver página 10 para auxiliá-lo na

demonstração (lá o sentido desta propriedade encontra-se

demonstrado).

Supõe-se PN construído a partir de PF pelo algoritmo

apresentado em aula. Se ∈ L (PF), então:

(p0,w,X0)

⊢PN

(p,w,Z0X0)

Pelo Teorema 1, temos que:

(p0,w,Z0X0)

⊢PF

(q,ε,Z0X0)

As transições do estado q permitem retirar todos os símbolos da pilha, o que não era possível somente com os outros estados de PF, pois nenhuma transição desempilha X0.

Assim: (q,ε,Z0X0)

*PN (pF,ε,ε). E w é aceita por PN.

13 Projete um ADP para aceitar cada uma das linguagens a seguir.

Você pode decidir projetá-lo por “estado final” ou por pilha

vazia.

13.1 (*) – O conjunto de todos os string de 0’s e 1’s com um número

igual de 0’s e 1’s.

S  0S1 S  01

G = ({S}, {0,1}, P, S) P = (Q, ∑, Γ, δ, q0, Z0)

Terminais para o ADP {0,1}

(14)

δ δ (q,ε,S) = {(q,0S1), (q,01)} δ (q,0,0) = {(q,ε)} δ (q,1,1) = {(q,ε)} P=({S}, {0,1}, {0,1,S}, δ, S)

13.2 {aibjck | i=j ou j=k}

S  DC | AE A  aA | a B  bB | b C  cC | c D  aDb | ε E  bEc | ε G = ({S,A,B,C,D,E}, {a,b,c}, P, S) P = (Q, ∑, Γ, δ, q0, Z0)

Terminais para o ADP {a,b,c}

Γ = V ∪ ∑ = {a,b,c,S,A,B,C,D,E}

δ

δ (q,ε,S) = {(q,DC), (q,AE)} δ (q,ε,A) = {(q,aA), (q,a)} δ (q,ε,B) = {(q,bB), (q,b)} δ (q,ε,C) = {(q,cC), (q,c)} δ (q,ε,D) = {(q,aDb), (q,ε)} δ (q,ε,E) = {(q,bEc), (q,ε)} δ (q,a,a) = {(q,ε)} δ (q,b,b) = {(q,ε)} δ (q,c,c) = {(q,ε)} P=({S}, {a,b,c}, {a,b,c,S,A,B,C,D,E}, δ, S)

(15)

13.3 {0n1n | n > 1} O conjunto de todos os string de 0’s e 1’s com um

número igual de 0’s e 1’s.

S  0A1B | 1B0A A  01B | B | ε B  10A | A | ε G = ({S,A,B}, {0,1}, P, S) P = (Q, ∑, Γ, δ, q0, Z0)

Terminais para o ADP {0,1}

Γ = V ∪ ∑ = {0,1,S,A,B} δ δ (q,ε,S) = {(q,0A1B), (q,1B0A)} δ (q,ε,A) = {(q,01B), (q,B), (q,ε)} δ (q,ε,B) = {(q,10A), (q,A), (q,ε)} δ (q,0,0) = {(q,ε)} δ (q,1,1) = {(q,ε)} δ (q,ε,ε) = {(q,ε)} P=({S}, {0,1}, {0,1,S,A,B}, δ, q0, S)

14 Para os três itens do exercício anterior, 4.a, 4.b(*) e 4.c(*),

obtenha o ADP por “pilha vazia” para aquele que foram

projetados por “estado final” e obtenha o ADP por “estado

final” para aquele que foram projetados por “pilha vazia”.

G = (S,{0,1},P,S)

(16)

PN = ({q},{0,1},{0,1,S,A,B}, N, q,S) δ (q,ε,S) = {(q,0S1), (q,01)} δ (q,0,0) = {(q,ε)} δ (q,1,1) = {(q,ε)} PF = ({p,q,r},{0,1},{0,1,S,A,B,X0}, F, p, X0, {r}) δ (q,ε,X0) = {(q,SX0)} δ (p,ε,S) = {(q,0S1), (q,01)} δ (q,0,0) = {(q,ε)} δ (q,1,1) = {(q,ε)} δ (q,ε,X0) = {(r,ε)}

15 Converta o ADP P = ({p,q}, {0,1}, {X,Z0}, δ, q, Z0) em uma

gramática livre de contexto, se δ for dado por (Teorema de

Chomsky, 1962):

δ(q, 1, Z0) = {(q, XZ0)} δ(q, 1, X) = {(q, XX)} δ(q, 0, X) = {(q, Z0)} δ(q, ε, X) = {(q, Xε)} δ(q, 1, X) = {(q, Xε)} δ(q, 0, Z0) = {(q, Z0)} P = ({p,q}, {0,1}, {X,Z0}, δ, q, Z0) Q p,q ∑ 0,1 Γ X,Z0

(17)

P para os demais à direita q para os demais à direita [p a p] [q a q] [p a q] [q a p] Produções de G: ∑ 0,1 V = [pXp],[pXq],[qXp],[pZ0p],[pZ0q],[qZ0p],[qXq], [qZ0q], S S  [qZ0q] S  [qZ0p] [qZ0q]  1[qXq][qZ0q] [qZ0q]  1[qXp][pZ0q] [qZ0p]  1[qXq][qZ0p] [qZ0p]  1[qXp][pZ0p] [qXq]  1[qXq][qXq] [qXq]  1[qXp][pXq] [qXp]  1[qXq][qXp] [qXp]  1[qXp][pXp] [qXq]  0[pXq] [pXp]  0[pXp] [qXq]  ε [pXp]  0 [qZ0q]  0[qZ0q] [pZ0p]  0[qZ0p]

(18)

16 (*) – Utilizando o teorema de Chomsky e Miller. 1958 pesquise

um “autômato finito” que você ache interessante e converta-o

para uma gramática regular. Agora faça o inverso, ou seja,

pesquise uma gramática regular e transforme-a num autômato

finito.

Propriedade das Linguagens Regulares

Teorema: (O lema do bombeamento para linguagens regulares). Seja L uma

linguagem regular. Então, existe uma constante n (que depende de L) tal que,

para todo string w em L tal que |w| > n, pode-se dividir w em três strings,

w=xyz, tais que:

1. y ≠ ε 2. |xy| < n

3. Para todo k > 0, o string xyhz está em L.

Propriedade das Linguagens Livre de Contexto

Teorema: Seja L uma linguagem livre de contexto. Então, existe uma

constante n (que depende de L) tal que, se Z L e |Z| > n, pode-se escrever Z =

uvwxy de modo que:

1. |vx| > 1 2. |vwx| < n 3. uviwxiy ∈ L, para todo i > 0. 1º) G = ({q0,q1,q2,q3}, {a,b}, P, q0) b a a a a b b b

q0

q1

q2

q3

(19)

q0  aq2 | bq1 q1  aq3 | bq0 q2  aq0 | bq3 q3  aq1 | bq2 | ε 2º) G = ({q0,q1,q2}, {0,1}, P, q0) q0  0q2 | 1q1 q1  1q2 q2  0 | 1

17 Utilizando o lema de bombeamento para Linguagens Livre de

Contexto, mostre que as linguagens, como definidas abaixo,

não devem ser livre de contexto:

17.1 {aibjck | i < j < k};

17.2 {anbnci | i < n};

17.3 {0i1j | j = i2};

a. Seja Z ∈ L, Z = an b2n c3n, |Z|>n

Tomando u=an/2, v=an/4, w=an/4, x=ε, y=b2n, c3n temos que

z=uvwxy. |vx|>1 e |vwx|<n e ∀i, uviwxiy deveria pertencer à

L, mas isto não acontece. Para i = 7: an/2, a7n/4, an/4, b2n, c3n = a9n/4 > 2n. 0 1 0,1

q

0

q

2

q

1 ε 1

(20)

Absurdo! Assim, L não é livre de contexto. b. {anbnci|i < n}

Seja Z ∈ L, Z = a2n b2n cn, |Z|>n

Tomando u=a2nb2n, v=cn/4, w=cn/4, x=ε, y=cn/2.

Temos que z=uvwxy. |vx|>1 e |vwx|<n e ∀i, uviwxiy deveria

pertencer à L, mas isto não acontece. Para i = 7:

a2n, b2n, c7n/4, cn/4, cn/2 = a2n b2n c9n/2, mas

9 n

2

> 2n.

Absurdo! Assim, L não é livre de contexto. c. {0i1j|j = i2}

Seja Z ∈ L, Z = 0n 1n2 |Z|>n

Tomando u=0n/2, v=0n/4, w=0n/4, x=ε, y=1n2.

Temos que z=uvwxy. |vx|>1 e |vwx|<n e ∀i, uviwxiy deveria

pertencer à L, mas isto não acontece. Para i = 2: 0n/2, 02n/4, 0n/4, 1n2 = 00n/4 1n2, mas n2

(

9 n

4

)

2 =

81

16

n2.

(21)

18 Resolver exercícios das transparências do Prof. Carlos

Henrique (Aula 9 – pg. 14) (Aplicação da Tupla de 5 elementos

das Ações da Máquina de Turing).

a. 1 0 b  0 0 0 b  0 0 0 b  1

(22)

b. 0 0 1 b  0 0 0 1 b  1 0 1 1 b  0 0 1 1 b  0 c. 0 0 b  0 0 0 b  1 0 1 b  0

(23)

19 Verificar os strings de entrada, especificados abaixo, para a

Máquina de Turing na Aula 9 – pg. 15 – das Transparências do

Prof. Carlos Henrique.

19.1 :0011

19.2 :00111

a. q00011 ⊢ Xq1011 ⊢ X0q111 ⊢ Xq20Y1 ⊢ q2X0Y1 ⊢ Xq00Y1 ⊢ XXq1Y1 ⊢ XXYq11 ⊢ XXq2YY ⊢ XXq0YY ⊢ XXXq3Y ⊢ XXYYq3B ⊢ XXYYBq4B A string é aceita b.

(24)

q000111 ⊢ Xq10111 ⊢ X0q1111 ⊢ Xq20Y11 ⊢

q2X0Y11 ⊢

Xq00Y11 ⊢ XXq1Y11 ⊢ XXYq111 ⊢ XXq1YY1 ⊢

Xq1XYY1 ⊢

XXq1YY1 ⊢ XXYq3Y1 ⊢ XXYYq31

A string não é aceita

20 Encontrar a linguagem L para a Máquina de Turing da Aula 09

– pg. 16 das transparências do Prof. Carlos Henrique. (Na

referida transparência encontra-se esquematizado o grafo

direcionado para a máquina de Turing que se deseja obter L).

Referências

Documentos relacionados

Não podemos deixar de dizer que o sujeito pode não se importar com a distância do estabelecimento, dependendo do motivo pelo qual ingressa na academia, como

As práticas de gestão passaram a ter mais dinamicidade por meio da GIDE. A partir dessa mudança se projetaram todos os esforços da gestão escolar para que fossem

Vários são os produtos industriais importantes derivados do óleo, como: Nylon 11 - obtido a partir do metil ricinoleato (Rilsan ), óleo hidrogenado ou cera para borrachas

Os resultados deste trabalho mostram que o tempo médio de jejum realizado é superior ao prescrito, sendo aqueles que realizam a operação no período da tarde foram submetidos a

O Gráfico M-N apresenta um conjunto de pontos (N,M) obtidos a partir destas três propriedades físicas medidas para os principais minerais na constituição das

a) Remuneração adequada: remuneração necessária para o empregado viver dignamente dentro das necessidades pessoais e dos padrões culturais, sociais e econômicos

Na primeira semana pós-parto (que engloba o período de contacto com as mulheres) em alternativa aos fármacos, quando já existe alguma dor e desconforto, estratégias

Foi membro da Comissão Instaladora do Instituto Universitário de Évora e viria a exercer muitos outros cargos de relevo na Universidade de Évora, nomeadamente, o de Pró-reitor (1976-