Exercícios Linguagens Formais.

Slides:



Advertisements
Apresentações semelhantes
Grafos eulerianos 1.
Advertisements

Decidibilidade e Indecidibilidade
Linguagens Livre-de-contexto
FAPE - Curso de Ciência da Computação
FAPE - Curso de Ciência da Computação
Software Básico Silvio Fernandes
Variantes de Máquina de Turing
Linguagem Fabrício Dias
I - Noções dum compilador
Solved Exercises 1. Finding the Peak. Let A= a1,…,an be a sequence of n numbers with the following property: there is p in {1,…,n} for which (i) the.
Prof. Yandre Maldonado e Gomes da Costa
LFA - Ambiguidade - Equivalência de gramáticas - Hierarquia de Chomsky
Teoria da Computação FIC– Ciência da Computação
Deyvisson, Rafael M.P., Renato, Robson C.F., Rodolfo
3 AUTÓMATOS FINITOS.
Máquinas de Turing Não Deterministas
Forma Normal de Chomsky
Lema do Bombeamento – Gramáticas Livres do Contexto
Profa. Heloise Manica Paris Teixeira
Análise Sintática - Continuação
Jorge Muniz Barreto UFSC-INE 2000
Prof. Sérgio Altenfelder
Linguagens Livres de Contexto
BCC 101– Matemática Discreta
Q={s,q1,…,q10,t,r} ={a,b,c} ={├,■,} Função de transição:
Linguagens Livre de Contexto
3(a), pag. 112: a n b 2n. 3(b) pag. 112: wcw R Só dicas... 3(c): a n b m c n+m –basta empilhar as e bs e desempilhá-los com os cs 3(d): a n b n+m c m.
Lema da Bomba (Pumping Lemma) para linguagens livre de contexto
esquerda p/ direita,read only
Linguagens e Máquinas WILSON ROSA DE OLIVEIRA DEPARTAMENTO DE INFORMÁTICA UFPE
autômatos finitos com transições e
Análise Dada uma cadeia de terminais w, queremos saber se wL(G) ou não. Se for o caso, poderemos querer achar uma derivação de w. Um algoritmo que pode.
Identificando Linguagens Não Regulares
Polinômios Prof. Marlon.
Construção de Compiladores
Prof. Luiz A M Palazzo Pelotas, fevereiro de 2011
Informática Teórica Engenharia da Computação
Informática Teórica Engenharia da Computação
Informática Teórica Engenharia da Computação
Informática Teórica Engenharia da Computação
Compiladores, Aula Nº 9 João M. P. Cardoso
Computabilidade e Linguagens Formais
Linguagens Livres de Contexto
Lema do Bombeamento Linguagens Livres de Contexto
Colégio Adventista de Telemaco Borba
Algorítmos e estrutura de dados III
Gramáticas Livres de Contexto
Compiladores, Aula Nº 10 João M. P. Cardoso
Ling. Formais e Autômatos AFN-ε
Teoria da Computação Aula 1 Prof. Fabiano Sabha.
Expressões Regulares e Gramáticas
Capítulo II Gramáticas e Linguagens
Analise sintática aula-07-analise-sintática.pdf.
Conectivos Lógicos / Operações
BCC 101 – Matemática Discreta I
Linguagens Formais e Autômatos
Linguagens Livres de Contexto
CONJUNTOS.
Linguagens Formais - aula 02
Potenciação an = a . a . a a (a ≠ 0) n fatores onde: a: base
Engenharia/Ciência da Computação
Sintaxe de uma Linguagem
tópicostópicos itens 01. Terminologia 02. Operações básicas 03. Representação de linguagens 04. Formalização de gramáticas 05. Processo de derivação 06.
Reverso de uma Linguagem Regular
1 Decidibilidade continuação…. 2 Teorema: Para qualquer linguagem recursivamente enumerável é indecidível determinar se é finita Prova: Vamos reduzir.
Faculdade Pernambuca - FAPE Compiladores Abril/2007 Compiladores Abril/2007.
Informática Teórica Engenharia da Computação. Teoria da Computação Contexto do que vamos começar a estudar As linguagens também podem ser definidas formalmente.
Informática Teórica Engenharia da Computação
CIRCUITOS CENTRO DE CIÊNCIAS E TECNOLOGIA AGROALIMENTAR UNIDADE ACADÊMICA DE TECNOLOGIA DE ALIMENTOS DISCIPLINA: FÍSICA III Prof. Bruno Farias.
Transcrição da apresentação:

Exercícios Linguagens Formais

Para cada um dos pares de descrições de linguagens a seguir, escolha o relacionamento correto de acordo com essas quatro opções: (1)  (2): linguagem (1) é um subconjunto da linguagem (2). (1)  (2): linguagem (1) é um super-conjunto da linguagem (2). (1) = (2): as linguagens (1) e (2) são as mesmas. (1) ? (2): as linguagens (1) e (2) não possuem relação de subconjunto; ou seja, existem cadeias em (1) que não estão em (2), e há cadeias em (2) que não estão em (1). a) (1): A linguagem da GLC com as produções S  0S1 | 1S0 | λ (2): A linguagem da expressão regular (0 + 1 )*. (1) está contida em (2). (2) gera todas as cadeias de 0’s e 1’s, enquanto (1) não gera cadeias como 11, ou qualquer string de tamanho ímpar.

b) (1): A linguagem da GLC com as produções S  AS | SB | λ, A  0 e B  1 (2): A linguagem da expressão regular 0*1* As linguagens são iguais.

(1): A linguagem da expressão regular (0 + 1)*11(0 + 1)* (2): A linguagem da expressão regular (0*1*11)*0*110*1* (1) contém (2). (1) é formada por todas as cadeias de 0’s e 1’s com dois 1’s consecutivos. (2) não possui algumas dessas cadeias, como por exemplo as terminadas em 110101.

2) Seja L a linguagem consistindo de todas as cadeias de zero ou mais 0’s seguidas por um ou mais 1’s, seguidas por dois ou mais 2’s. Por exemplo, 001122, 122 e 0111122 estão em L; 012 (poucos 2’s) e 0112122 (um 2 precede um 1) não estão. a) Escreva uma expressão regular cuja linguagem seja L. 0*11*222*

b) Dê uma gramática livre de contexto que gere a mesma linguagem b) Dê uma gramática livre de contexto que gere a mesma linguagem. É suficiente apenas dar as produções, assumindo que S é o símbolo inicial. Existem várias gramáticas aceitáveis, uma delas é: S  ABC A  0A | λ B  1B | 1 C  2C | 22

3) Construa uma gramática regular para cada uma das linguagens a seguir: (a) o conjunto das cadeias sobre {a, b, c} que não contém aa. S  aA | bS | cS | λ A  bS | cS | λ (b) o conjunto das cadeias sobre {a, b, c} nas quais cada b é seguido por pelo menos um c. S  aS | bA | cS | λ A  cS (c) o conjunto das cadeias sobre {a, b} nas quais o número de a’s é divisível por 3. S  aA | bS | λ A  aB | bA B  aS | bB

d) O conjunto das cadeias sobre {a, b} nos quais cada a é precedido (imediatamente) ou seguido (imediatamente) por b. S  aA | bB | λ A  bB B  aS | bB | λ

4) Seja G a gramática S  aS | Sb | ab | SS (a) Dê uma expressão regular para L(G). (a+b+)+ (b) Construa duas derivações mais a esquerda de aabb. S  aS  aSb  aabb S  Sb  aSb  aabb (c) Construa as árvores de derivação para as derivações da parte (b) S S a S S b S b a S a b a b

(d) Construa uma gramática não ambígua equivalente a G. S  aS | abA A  bA | S | λ (e) Escreva uma gramática regular equivalente. S  aS | aB B  bA A  bA | aS | aB | λ

5) Seja G a gramática livre de contexto com as seguintes produções: S  aS | Sb | a | b Prove, por indução no tamanho da derivação, que todas as cadeias w Є L(G) tem a propriedade de não conter ba como uma subcadeia. Seja t = tamanho da indução. Se t = 1 então S => a ou S => b. Portanto, não possuem ba como subcadeia. Supomos que, para 1  t < k, se S =>* w e |w|= t, então w não possui ba como subcadeia. Vamos mostrar que a proposição vale para t = k Nesse caso, S =>k w. Como em cada passo de derivação exatamente um terminal é gerado (a ou b), então necessariamente |w| = k. Além disso, w foi gerado num caminho S => aS =>k-1 ax ou S=> Sb =>k-1 yb, e |x| = |y| = k-1. Por (ii), nem x nem y têm ba como subcadeia. Logo, ax e yb também não têm ba como subcadeia c.q.d.

6) Construa uma gramática para cada uma das linguagens: (a) {ambn | m > n} S  aS | aA A  aAb | λ (b) {w Є {a, b}* | o número de a’s em w é o dobro do número de b’s} S  aSaSbS | aSbSaS | bSaSaS | λ (c) {ambn | n ≤ m ≤ 2n} S  aSb | aaSb | λ (d) {ambncpdq | m + n ≥ p + q}

6) Construa uma gramática para cada uma das linguagens: (a) {ambn | m > n} S  aS | aA A  aAb | λ (b) {w Є {a, b}* | o número de a’s em w é o dobro do número de b’s} S  aSaSbS | aSbSaS | bSaSaS | λ (c) {ambn | n ≤ m ≤ 2n} S  aSb | aaSb | λ (d) {ambncpdq | m + n ≥ p + q} S  aSd | A | B = gera igual número de a e d A  bAd | C = gera igual número de b e d B  aBc | C | D = gera igual número de a e c C  bCc | E = geral igual número de b e c D  aD | E = gera pelo menos um a E  bE | λ = gera pelo menos um b

Exercícios da 4a. Lista (material web) 6) Indicar qual é a linguagem gerada pela gramática dada, e classificá-la: S  A0 A  1A A0  10 L = 1+ 0 G.Regular equivalente: A  1A | 1

(e) S  0A | 1B A  0A | 0 B  1B | 1 L= (0+ + 11+) A linguagem é regular.