Prof José Rui
2. Linguagens Regulares
2 – Linguagens Regulares
Aula 06
Prof José Rui
2. Linguagens Regulares
Sumário
Capítulo 2 – Linguagens Regulares
2.1. Definição
2.1.1. Linguagem Tipo 3
2.1.2. Sistema de estados finitos
2.2. Formalismos
2.2.1. Autômatos
a. Autômato Finito Determinístico (AFD)
b. Autômato Finito Não-Determinístico
c. Autômato Finito com Movimentos Vazios
d. Equivalência entre autômatos
e. Minimização de autômatos
2.2.2. Expressão Regular
2.2.3. Gramática Regular
Prof José Rui
2. Linguagens Regulares
Sumário
Capítulo 2 – Linguagens Regulares
2.2.1. Autômatos
c. Autômato Finito Com Movimentos Vazios
– Não determinísmo
– Definição matemática
– Critérios de parada
– Matriz de transição
Prof José Rui
2. Linguagens Regulares
Autômato Finito com Movimentos Vazios
● Movimento vazio
– Generaliza os movimentos não-determinísticos
● Movimento vazio
– Transição sem leitura de símbolo
– É interpretado como um não-determinísmo interno ao autômato
● Transição encapsulada
● Vantagens
– Facilita algumas construções e demostrações
– Não aumenta o poder computacional
● Qualquer AFNε pode ser convertido num AFN e por sua vez num AFD
Prof José Rui
2. Linguagens Regulares
Autômato Finito com Movimentos Vazios
δ (p, ε) = {p0} δ (p, a1) = {p1} δ (p, an) = {pn}
Prof José Rui
2. Linguagens Regulares
Autômato Finito com Movimentos Vazios
● Definição Matemática:
M = (Σ, Q, δ, q0, F)
– Σ, é um alfabeto
– Q, é o conjunto de estados possíveis do automato (finito)
– δ, é uma função de transição
δ: Q x (Σ U ε) →2Q
● Transição vazia: δ (p, ε) = {q1, q2, …, qn}
– q0, estado inicial
– F, subconjunto de Q, conjunto dos estados finais
Prof José Rui
2. Linguagens Regulares
Autômato Finito com Movimentos Vazios
● Computação de uma AFNε
– Análogo ao AFN
● Processamento de uma transição vazia
– Não determinístico
– Assume simultaneamente o estado origem e destino
Prof José Rui
2. Linguagens Regulares
Autômato Finito com Movimentos Vazios
● L = { w | w possui a's que antecedem b's}
● AFNε
Prof José Rui
2. Linguagens Regulares
Autômato Finito com Movimentos Vazios
● L = { w | w possui a's que antecedem b's}
● AFNε
Garante que só virá a,
neste estado. E a qualquer
momento pode mudar
de estado.
Prof José Rui
2. Linguagens Regulares
Autômato Finito com Movimentos Vazios
● L = { w | w possui a's que antecedem b's}
● AFNε
– Matriz de transição
δ a b ε
q0 {q0} - {q1}
q1 - {q1} -
Prof José Rui
2. Linguagens Regulares
Exemplos
a) O conjunto de palavras com, no mínimo, 3 ocorrências de a´s ou 3
ocorrências de b´s ou 3 ocorrências de c´s.
b) O conjunto de palavras com sufixo abc ou bca.
c) O conjunto de palavras em que existem duas ocorrências de ab com três
ou 6 símbolos entre elas.
d) {w ∈{0,1}* | |w| ≥ 4 e o segundo e o penúltimo símbolos são ambos 1}
g) {w ∈{0,1}* | entre dois 1´s de w há sempre um número par de 0´s, exceto
nos últimos 4 símbolos}
e) {w ∈{0,1,2}* | w tem uma subpalavra constituída de dois 1´s separados
por um número par de símbolos 0 ou impar de simbolos 2}
Prof José Rui
2. Linguagens Regulares
Exemplos
(Pos2008) Considere o autômato finito mostrado na figura abaixo (os círculos em
negrito representam estados terminais).
A esse respeito, assinale a afirmativa FALSA.
A) A palavra aaa é reconhecida pelo autômato.
B) A palavra ababa não é reconhecida pelo autômato.
C) A palavra vazia é reconhecida pelo autômato.
D) A palavra aba é reconhecida pelo autômato.
E) A palavra baba é reconhecida pelo autômato.
Prof José Rui
2. Linguagens Regulares
Exemplos
(pos2008) Seja o autômato finito mostrado na figura abaixo que opera sobre
o alfabeto {a,b} (o círculo em negrito indica um estado terminal):
Analise as seguintes afirmativas.
I. O autômato finito mostrado na figura é determinístico.
II. O autômato finito mostrado na figura é não-determinístico.
III.O autômato finito mostrado na figura reconhece a palavra vazia.
A análise permite concluir que
A) todas as afirmativas são falsas.
B) somente a afirmativa I é falsa.
C) somente a afirmativa II é falsa.
D) somente a afirmativa III é falsa.
E) nenhuma das afirmativas é falsa.