A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

FAPE - Curso de Ciência da Computação Aspectos Teóricos da Computação Professor: Gleifer Vaz Alves Quarta Aula - 2006/1.

Apresentações semelhantes


Apresentação em tema: "FAPE - Curso de Ciência da Computação Aspectos Teóricos da Computação Professor: Gleifer Vaz Alves Quarta Aula - 2006/1."— Transcrição da apresentação:

1 FAPE - Curso de Ciência da Computação Aspectos Teóricos da Computação Professor: Gleifer Vaz Alves Quarta Aula /1

2 FAPE ATC-04 Conteúdo Parte II: Linguagens regulares Linguagens regulares Autômatos Finitos Autômatos Finitos Expressões Regulares Gramáticas Regulares

3 FAPE ATC-04 Introdução Uma expressão regular (ER) sobre um alfabeto é indutivamente definida: é uma ER que denota a linguagem vazia. é uma ER que denota a linguagem contendo exclusivamente a palavra vazia, ou seja { }.

4 FAPE ATC-04 Expressão Regular qualquer símbolo x pertencente ao alfabeto é uma ER e denota a linguagem contendo a palavra unitária x, ou seja {x}.

5 FAPE ATC-04 Operações com expressões Três operações básicas: Operação de união, Operação de concatenação, Operação de concatenação sucessiva ou operação estrela.

6 FAPE ATC-04 ER - Operações Se r e s são ER´s e denotam respectivamente as linguagens R e S, então: (r+s) é ER e denota a linguagem R S (rs) é ER e denota a linguagem {uv | u R e v S} (r * ) é ER e denota a linguagem R *

7 FAPE ATC-04 Expressão Regular Uma linguagem gerada por uma ER r é representada por L(r) ou GERA(r). É possível omitir parênteses, seguindo prioridades nas operações: a concatenação sucessiva tem prioridade em relação à concatenação e a união, e a concatenação tem prioridade em relação à união.

8 FAPE ATC-04 Expressão Regular - exemplos ERLinguagem aaPalavra aa ba*Inicia por b, seguido de zero ou mais a (a+b)*Todas palavras do alfabeto {a,b} a*ba*ba*Todas palavras que têm exatamente dois b´s.

9 FAPE ATC-04 Expressão Regular - exemplos ERLinguagem (a+b)* aa(a+b)* Todas palavras que têm aa como subpalavra. (a+b)* (aa+bb) As palavras que terminam com aa ou bb. (a+ ) (b+ba)* As palavras que não possuem dois a´s consecutivos.

10 FAPE ATC-04 Expressões e Linguagens A classe das expressões regulares corresponde exatamente a classe das linguagens regulares. Expressão Regular Linguagem Regular Se r é uma ER, então GERA(r) é uma linguagem regular

11 FAPE ATC-04 Expressões e Linguagens Linguagem Regular Expressão Regular Se L é uma linguagem regular, então existe uma expressão regular r tal que GERA(r) = L

12 FAPE ATC-04 Conversão: expressões autômatos r = a r = a

13 FAPE ATC-04 expressões autômatos r = ab r = a + b a a b b

14 FAPE ATC-04 ER´s e Autômatos r = a* a

15 FAPE ATC-04 Gramática Seja G={N,T,P,S} uma gramática, onde: N – conjunto de símbolos não-terminais; T – conjunto de símbolos terminais; P – conjunto de regras de produção; S – símbolo inicial da gramática.

16 FAPE ATC-04 Gramática Terminologia: símbolos não-terminais N = {A,B,C,...T} símbolos terminais T = {a,b,c,...t} S N

17 FAPE ATC-04 Regras de produção Aplicando as regras de produção definidas na gramáticas são geradas palavras referentes a linguagem que a gramática representa. Gramática palavra r. de produção

18 FAPE ATC-04 Regras de produção Exemplo: G = ( {S,A,B}, {a,b}, P, S ) P = { S AB, A a | AB, B b } Passos para gerar a palavra: abb S AB ABB aBB abB abb.

19 FAPE ATC-04 Tipos de Gramática linear Uma gramática G pode ser: GLD: se todas as regras de produção são da forma A wB ou A w. GLE: se todas as regras de produção são da forma A Bw ou A w.

20 FAPE ATC-04 Gramática Regular Uma gramática regular é qualquer gramática linear. Uma linguagem gerada por uma gramática regular G é representada por L(G) ou GERA(G).

21 FAPE ATC-04 Exemplos - gramáticas Linguagem a(ba)* GLD: G = ( {S,A}, {a,b}, { S aA, A baA | }, S ) GLE: G = ( {S}, {a,b}, { S Sba | a }, S )

22 FAPE ATC-04 Exemplos - gramáticas Linguagem (a+b)*(aa+bb) G = ( {S,A}, {a,b}, P, S ) P = { S aS | bS | A, A aa | bb }

23 FAPE ATC-04 Árvores de derivação Igualmente é possível representar as produções das gramáticas através de árvores derivação. S a S A b b palavra: abb

24 FAPE ATC-04 Gramática Autômato Tipo de produçãotransição A (A, )=qf A a (A,a)=qf A B (A, )=B A aB (A,a)=B

25 FAPE ATC-04 Exemplo: GR AF Considerando a gramática, G = ( {S,A,B}, {a,b}, { S aA A bB | B aA }, S ) O AF que reconhece a gramática é M = ({a,b}, {S,A,B,qf},, S, {qf})

26 FAPE ATC-04 Exemplo: GR AF Tipo de produçãotransição S aA (S,a)=A A bB (A,b)=B A (A, )=qf B aA (B,a)=A

27 FAPE ATC-04 Exemplo: GR AF

28 FAPE ATC-04 Exemplo: AF GR Estados terminais: qo, q1 e q2.

29 FAPE ATC-04 Exemplo: AF GR TransiçãoTipo de produção S A A B C Correspondências: q0 = A, q1 = B, q2 = C

30 FAPE ATC-04 Exemplo: AF GR TransiçãoTipo de produção (q0,a)=q0 A aA (q0,b)=q1 A bB (q1,b)=q1 B bB (q1,c)=q2 B cC (q2,c)=q2 C cC

31 Tarefa: lista de exercícios 4


Carregar ppt "FAPE - Curso de Ciência da Computação Aspectos Teóricos da Computação Professor: Gleifer Vaz Alves Quarta Aula - 2006/1."

Apresentações semelhantes


Anúncios Google