Você está na página 1de 24

Parte 1: Introduo Geral teoria

dos Autmatos e Autmatos


Finitos determinsticos
Responsvel: Prof. Dr. Fbio
Paraguau

Questes Tericas Centrais


Quais so as potencialidades e limitaes
fundamentais das mquinas?
O que pode e o que no pode ser resolvido
por mquinas?
O que faz alguns problemas serem mais
complexos de se resolver por mquinas que
outros?

TC: reas Centrais


Teoria dos Autmatos e Gramticas
o

definio e propriedades de modelos formais de


computao.

Computabilidade
o

As possibilidades da computao via mquinas de Turing

Modelos Computacionais
Autmatos Finitos
o
o

Bom modelo para computadores com capacidade


de memria reduzida.
Fazem parte de vrios dispositivos eletromecnicos do dia-a-dia.

Controladores
Ex: Controlador de uma porta automtica

Viso area de uma porta automtica

Estado
O controlador pode estar em 2 estados:
aberto (significando porta aberta)
fechado (significando porta fechada)
O controlador passa de um estado para outro dependendo do estmulo
(entrada) que recebe:

Entrada
Existem 4 condies de entrada possveis:

1. Frente : significando que uma pessoa est em p


sobre o tapete da frente;
Retaguarda: significando que uma pessoa est em
p sobre o tapete de dentro;
Ambos: significando que existem pessoas sobre os
2 tapetes;
Nenhum: significando que ningum est sobre os
tapetes.

Diagrama de Estados
Representao da
situao:

Diagrama de estados

Tabela de Transio

Computao
Exemplo:
Controlador inicia no estado fechado e
recebe seguinte srie de sinais de
entrada:
frente, retaguarda, nenhum, frente, ambos

Srie de estados:

fechado (inicio), aberto, aberto, fechado,


aberto, aberto

Aplicaes
Controladores para:

Lavadoras de loua/roupa;
Controle de Sinal de Trnsito
Elevadores
Termmetros eletrnicos;
Relgios digitais;
Calculadoras;
Mquinas de venda automtica
Elevadores

So exemplos de controladores com memria


limitada e que podem ser descritos por um
Autmato Finito.

Autmato Finito
Autmatos finitos so dispositivos formais teis
para:
Reconhecimento de sequncias;
Projetar uma nova linguagem para uma aplicao
especifica;
Processamento de voz;
Elaborao de Modelos.

Autmato Finito
Vamos olhar os Autmatos finitos a partir de
uma perspectiva matemtica:
Definio precisa.
Definio abstrata.
Sem nenhuma referencia a qualquer aplicao
em particular.
Vamos descrever e manipular AFs e apresentar
resultados tericos que descrevem seu poder e
limitao.

Autmato Finito
Um autmato finito M1: (diagrama de estados)
Observaes:
M1 tem 3 estados, q1, q2, q3 ;
M1 inicia no estado q1 ;
M1 tem um estado final, q2 ;
Os arcos que vo de um estado
p/ outro chamam-se transies.

Autmato Finito
Observaes(continuao):
O autmato finito M1 recebe os
smbolos de entrada um por um;
Depois de ler cada smbolo, M1 movese de um estado para outro, de acordo
com a transio que possui aquele
smbolo como seu rtulo;
Quando M1 l o ultimo smbolo ele
produz uma sada: aceita se M1 est no
estado final e no-aceita se M1 no
estiver.

Autmato Finito
Definir um AF significa definir:

Um conjunto finito de estados;


Um alfabeto de entrada que indica os smbolos de
entrada permitidos;
Um conjunto de regras de movimento que indicam
como ir de um estado p/ outro, dependendo do
smbolo de entrada;
Um estado escolhido como estado inicial;
Um conjunto de estados escolhidos como estados
finais (de aceitao);

Autmato Finito
Definio formal:
Um AF M uma 5-tupla < K, Sigma, Delta, q0, F >, onde:
1. K um conjunto finito e no-vazio chamado de
conjunto de estados;
Sigma um conjunto finito e no-vazio chamado de
alfabeto;
Delta : K x Sigma -> K a funo de transio do
autmato;
q0 em K o estado inicial; e
F em K o conjunto de estados finais.

Funo de transio: representaes


Delta: K x Sigma -> K

Autmato Finito
Uma sentena dita ser reconhecida por um Autmato
finito M se Delta(q0,x)=p e p est em F, ou seja:
T(M)={x|Delta(q0,x) est em F}

Computao de um AF
M=(K,Sigma,Delta,qo,F)
Sigma={0,1}
K={q0,q1,q2,q3}
F=q0
Delta(q0,0)=q2
Delta(q0,1)=q1
Delta(q1,0)=q3
Delta(q1,1)=q0
Delta(q2,0)=q0
Delta(q2,1)=q3
Delta(q3,0)=q1
Delta(q3,1)=q2
Desenhe o autmato e verifique a linguagem que ele reconhece!

Computao de um AF
M={K,Sigma,Delta,q0,F}
Sigma={0,1}
K={q1,q2,q3}
F={q2}

q1

1
1

q2

0
0,1

q3

Autmato Finito
Exemplo:
M2 recebe strings no alfabeto {0,1} representando
mensagens.
Se o ltimo smbolo recebido de uma mensagem 1,
significa que houve um erro na transmisso e deve ser
sinalizado por M2.

(T(M2) = ?)

Autmato Finito
Troque os estados final e no final de M2

e veja o que resulta:

(T(M3)=?)

Autmato Finito
M4 :

T(M4) = ?