Carregar apresentação
A apresentação está carregando. Por favor, espere
1
I - Noções dum compilador
DEI Linguagens formais Autómatos finitos Expressões regulares Bibliografia aconselhada: Apontamentos Jorge Morais LFA 1999/
2
Monóide DEI Grupóide: Semigrupo: Monóide:
Par (A, . ), onde A é um conjunto, e . Representa uma operação binária em A. Semigrupo: Grupóide em que . é associativa, isto é, a (b c) = (a b) c Monóide: Semigrupo com elemento neutro e: aA : a e = e a = a Jorge Morais LFA 1999/
3
Palavras DEI Alfabeto: Palavra (sequência finita de elementos de )
conjunto finito Palavra (sequência finita de elementos de ) é a palavra vazia a1 a2 ... an (ai ) representa uma palavra não vazia Convenção: an = a a ... a (n vezes, n>0); a0 = Jorge Morais LFA 1999/
4
Palavras (cont.) DEI Comprimento duma palavra Conteúdo duma palavra:
|a1 a2 ... an| = n || = 0 Conteúdo duma palavra: cont(a1 a2 ... an) = {a1, a2, ..., an} cont() = Jorge Morais LFA 1999/
5
Monóide livre DEI * - Monóide livre em
* (conjunto das palavras em ) Concatenação (operação binária associativa) (a1 a2 ... an)(an+1 an an+k)=a1 a2...an an+1 an+2...an+k (elemento neutro) (a1 a2 ... an) = (a1 a2 ... an) = a1 a2 ... an + = * \{} - Semigrupo livre em Jorge Morais LFA 1999/
6
Prefixo, sufixo, factor DEI Sejam u, v *
u é prefixo de v v = uw w * u é sufixo de v v = wu w * u é factor de v v = wuz w,z * Jorge Morais LFA 1999/
7
Autómato finito DEI Um autómato é um vector (S, , i, F, ):
S - conjunto finito de estados - alfabeto i S - estado inicial F S - conjunto de estados finais : S x S (função parcial) - conjunto de transições Jorge Morais LFA 1999/
8
Representação gráfica
DEI Jorge Morais LFA 1999/
9
Tipos de autómatos DEI Seja A=(S, , i, F, ) um autómato finito.
A diz-se autómato finito determinístico se, perante um símbolo x de , puder transitar, no máximo, para um único estado, isto é: ( (s, x, s’) (s, x, s’’) ) s’ = s’’ Caso contrário, A diz-se não determinístico A diz-se autómato finito se é possível transitar de estado sem usar nenhum símbolo de , isto é: S x ({}) x S Jorge Morais LFA 1999/
10
Caminho e rótulo DEI Seja A=(S, , i, F, ) um autómato finito.
Um caminho não trivial é uma sequência (s0, a1, s1), (s1, a2, s2), ..., (sn-1, an, sn) onde (si-1, ai, si) Um caminho trivial é uma tripla da forma (s, , s), com s S O rótulo do caminho é a1 a2 ... an Jorge Morais LFA 1999/
11
Linguagem reconhecida
DEI Seja A=(S, , i, F, ) um autómato finito. Um caminho diz-se bem sucedido se começa num estado inicial e termina num estado final Linguagem reconhecida por A: L(A) = {u * : u é o rótulo de um caminho bem sucedido em A} Jorge Morais LFA 1999/
12
Exemplo de autómato DEI A=(S, , i, F, ) = {0, 1} S = {i,f} F={f}
= {(i,0,i), (i,1,i), (i,0,f)} Este autómato finito (não determinístico) reconhece todas as sequências terminadas em 0 (números binários pares) Jorge Morais LFA 1999/
13
Exemplo de autómato (cont.)
DEI A=(S, , i, F, ) = {0, 1} S = {i,f} F={f} = {(i,0,f), (i,1,i), (f,0,f), (f,1,i)} Este autómato finito também reconhece todas as sequências terminadas em 0, mas é determinístico Jorge Morais LFA 1999/
14
Expressões regulares DEI
Uma expressão regular E representa um subconjunto de * que designamos por c(E) Sendo L * uma linguagem. As seguintes condições são equivalentes: L é reconhecida por um autómato finito L é reconhecida por um autómato finito determinístico L é reconhecida por um autómato finito L é reconhecida por uma expressão regular Jorge Morais LFA 1999/
15
Expressões regulares (cont.)
DEI Uma expressão regular tem uma das seguintes formas: c() = c() = {} a c(a) = {a} Sendo E1 e E2 expressões regulares: E1 + E2 c(E1 + E2) = c(E1) c(E2) E1 E2 c(E1 E2) = c(E1) c(E2) E1* c(E1*) = {a1 a2 ... an : n 0, a1, a2, ..., an E1} Jorge Morais LFA 1999/
16
Exemplo de expressões regulares
DEI Considerando = {0, 1} (0 + 1)* 0 - sequências terminadas em 0 0* (100*)* (1 + ) - sequências em que não aparecem 1’s consecutivos (0 + 1)* 101 (0 + 1)* - sequência que contem o factor 101 10 (0 + 1)* - sequência com prefixo 10 Jorge Morais LFA 1999/
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.