Baixe o app para aproveitar ainda mais
Prévia do material em texto
Professor Me. Paulo David pd.mnpa@gmail.com Faculdade Maurício de Nassau Curso: Sistemas de Informação Disciplina: Linguagens Formais e Autômatos Professor: Me. Paulo Roberto Sousa David Autômatos Finitos Com Movimentos Vazios () • Os movimentos vazios generalizam os movimentos não determinísticos. • Um movimento vazio é uma transição sem a leitura de símbolo da fita (símbolo de entrada). • Pode ser interpretado como um não determinismo interno ao autômato, constituindo uma transição encapsulada. • Essa transição (encapsulada) executa uma eventual mudança de estado, nada mais por ser observado um movimento vazio. • Uma das vantagens dos autômatos finitos com movimentos vazios no estudo das linguagens formais é o fato de facilitarem algumas construções e demonstrações relacionadas com os autômatos. • Movimento vazio (transição ) corresponde a: uma transição sem leitura de símbolo. transição não obrigatória. • A computação de um Autômato Finito com Movimentos Vazios é análoga à de um AFND. • Assim, um AFND, ao processar uma entrada vazia, assume simultaneamente os estados destino e origem. • Portanto, a origem de um movimento vazio sempre é um caminho alternativo (daí o não determinismo). Definição 18: Um Autômato Finito Não Determinístico e com Movimentos Vazios (AFND) ou, simplesmente, Autômato Finito com Movimentos Vazios é uma 5-upla M = (K,Σ,,s,F) onde: • K (ou Q), Σ, s e F são definidos como no AFD. • (ou ) é uma relação (denominada relação de transição) sobre K×(Σ∪ {}). • Assim, para um estado p e um símbolo a: δ(p, ) = {q’, q”, q’’’,...}. é um movimento vazio ou uma transição vazia do autômato. • A parada do processamento de um Autômato Finito com Movimentos Vazios (AFND) é análoga à do AFND, assim como as definições de linguagem aceita e linguagem rejeitada. • A representação da função programa como um diagrama é análoga à do AFND. • Supondo que δ(p, ) = {q1}, δ(p, a1) = {q2}... δ(p, an) = {qn}. p q2 a1 Estado Anterior Símbolo Lido Conjunto de Novos Estados q1 qn an ... Exemplo 1: Seja o AFNDM1 = (K, Σ, ∆, s, F) com transição vazia a seguir: qfq0 b • q0 tem uma transição com a. • q0 tem transição com . a Exemplo 1: Seja o AFNDM1 = (K, Σ, ∆, s, F) com transição vazia e ∆ dada pela tabela: a b q0 qf q0 qf qf Exemplo 2: Seja o AFND M2 = (K, Σ, ∆, s, F) com: • K = {q0, q1, q2} • Σ = {a, b} • s = q0 • F = {q2} • ∆ dada pela tabela: Exemplo 2: Seja o AFNDM2 = (K, Σ, ∆, s, F) com transição vazia e ∆ dada pela tabela: a b q0 q1 (q0,q1) q0 q2 --- --- q2 q2 ------ --- Exemplo 3: Autômato que reconhece uma adição de um inteiro positivo ou negativo com um valor decimal positivo com uma casa decimal. q0 + – q1 q2 q3 q4 q6 q5 1,2, ...9 1,2, ...9 + 1,2, ...9 1,2, ...9 1,2, ...9 Exemplo: Reconhece a entrada -12 + 2.4 q0 + – q1 q2 q3 q4 q6 q5 1,2, ...9 1,2, ...9 + 1,2, ...9 1,2, ...9 1,2, ...9 – q0 q1 q2 1 q2 2 q5 q3 + Fq4 2 q6 4 Professor Me. Paulo David pd.mnpa@gmail.com Faculdade Maurício de Nassau Curso: Sistemas de Informação Disciplina: Linguagens Formais e Autômatos Professor: Me. Paulo Roberto Sousa David Autômatos Finitos Com Movimentos Vazios ()
Compartilhar