SlideShare uma empresa Scribd logo
1 de 8
Baixar para ler offline
Linguagens Formais e Autômatos
Michel Alves dos Santos ∗
Outubro de 2010
∗Bacharelando em Ciência da Computação, Universidade Federal do Estado de Alagoas(UFAL). E-mails: mi-
chel.mas@gmail.com, michelalavessantos@hotmail.com. Disciplina: Linguagens Formais e Autômatos. Docente
Responsável: Eliana Almeida.
1
Sumário
Lista de Figuras 2
Lista de Tabelas 2
1 Construa o AFD MÍNIMO que reconheça a linguagem denotada por (utilize o
algoritmo para obter o AFD MÍNIMO, se for o caso!): 2
2 Descreva sobre a Máquina de MEALY e a Máquina de MOORE, apresente um
exemplo explicando o seu funcionamento. 5
Referências Bibliográficas 8
Lista de Figuras
1 Autômato Finito Determinístico que aceita a linguagem La denotada por (aa +
bb)*. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2 Autômato Finito Determinístico Mínimo que aceita a linguagem La denotada por
(aa + bb)*. Levando em consideração que a palavra vazia λ leva sempre ao estado
inicial que consequentemente é o final. . . . . . . . . . . . . . . . . . . . . . . . . 4
3 Autômato Finito Não-Determinístico que aceita a linguagem Lb denotada por (a +
bb)*(aa + b)*. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
4 Autômato Finito Determinístico Mc que aceita a linguagem Lb denotada por (a +
bb)*(aa + b)*. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
5 Autômato Finito Determinístico Mc que aceita a linguagem Lb denotada por (a +
bb)*(aa + b)*. Note que os antigos estados agregados foram mapeados para novos
rótulos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Lista de Tabelas
1 Tabela de transição do autômato Ma. . . . . . . . . . . . . . . . . . . . . . . . . . 3
2 Tabela de transição do autômato Mb. . . . . . . . . . . . . . . . . . . . . . . . . . 3
3 Tabela de transição do autômato Mc. . . . . . . . . . . . . . . . . . . . . . . . . . 5
4 Tabela de mapeamento de estados do autômato Mc. . . . . . . . . . . . . . . . . . 5
1 Construa o AFD MÍNIMO que reconheça a linguagem de-
notada por (utilize o algoritmo para obter o AFD MÍ-
NIMO, se for o caso!):
• a. (aa + bb)*
A linguagem denotada pela expressão regular dada acima aceita as seguintes palavras: La =
{λ, aa, bb, aaaa, bbbb, aaaaaa, bbbbbb, ...}. Um Autômato Finito Determinístico que reconhece
a linguagem La pode ser dado pela figura 1. A descrição do autômato Ma que reconhece a
linguagem La é dada por:
Ma = ({a, b}, {q0, q1, q2}, δ, q0, {q0})
2
Figura 1: Autômato Finito Determinístico que aceita a linguagem La denotada por (aa + bb)*.
δ λ a b
q0 q0 q1 q2
q1 - q0 -
q2 - - q1
Tabela 1: Tabela de transição do autômato Ma.
A lista de transição de estados do autômato Ma é exibida através da tabela 1. Porém
podemos observar que o autômato descrito anteriormente ainda é passível de minimização.
Isso pode ser observado através da figura 2.
• b. (a + bb)*(aa + b)*
A linguagem denotada pela expressão regular dada acima aceita as seguintes palavras:
Lb = {λ, a, b, bb, aa, ab, aaa, abb, bbaa, bbb, aaaa, aaaaaa, bbbbbb, abbbb, ...}. Um Autômato Fi-
nito Não-Determinístico que reconhece a linguagem Lb pode ser dado em primeira instância
pela figura 3. A descrição do autômato Mb que reconhece a linguagem Lb é dada por:
Mb = ({a, b}, {q0, q1, q2}, δ, q0, {q0})
As transições de estado do autômato Mb são exibidas através da tabela 1. Porém até
δ λ a b
q0 q0 q0,q2 q0,q1
q1 - - q0
q2 - q0 -
Tabela 2: Tabela de transição do autômato Mb.
o presente momento só dispomos de um autômato finito não-determinístico, dessa maneira
devemos transformar o autômato Mb em um autômato Mc finito e determinístico. Usando os
devidos mecanismos de transformação de autômatos não-determinísticos em determinísticos
teremos o autômato representado pela figura 4. As transições mapeadas do autômato Mb
para o autômato Mc são dadas pela tabela 3. Nesse momento faz-se necessário um novo
3
Figura 2: Autômato Finito Determinístico Mínimo que aceita a linguagem La denotada por (aa
+ bb)*. Levando em consideração que a palavra vazia λ leva sempre ao estado inicial que conse-
quentemente é o final.
Figura 3: Autômato Finito Não-Determinístico que aceita a linguagem Lb denotada por (a +
bb)*(aa + b)*.
4
Figura 4: Autômato Finito Determinístico Mc que aceita a linguagem Lb denotada por (a +
bb)*(aa + b)*.
δ a b
q0 q0q2 q0q1
q0q1 q0q2 q0q1
q0q2 q0q2 q0q1
Tabela 3: Tabela de transição do autômato Mc.
mapeamento de rótulos dos estados do autômato Mc gerado a partir da transformação do
autômato Mb em um autômato finito determinístico. O mapeamento utilizado poderá ser
visualizado através da tabela 4 e da figura 5.
Antigo Estado Novo Estado
q0 p0
q0q1 p1
q0q2 p2
Tabela 4: Tabela de mapeamento de estados do autômato Mc.
2 Descreva sobre a Máquina de MEALY e a Máquina de
MOORE, apresente um exemplo explicando o seu funcio-
namento.
A Máquina de MEALY é um autômato finito determinístico modificado de forma a gerar uma
palavra de saída (a qual pode ser vazia) para cada transição da máquina. Uma Máquina de
MEALY M é representada por uma 6-upla:
M = (Σ, Q, δ, q0, F, ∆)
Na qual:
a) Σ é um alfabeto de símbolos de entrada;
5
Figura 5: Autômato Finito Determinístico Mc que aceita a linguagem Lb denotada por (a +
bb)*(aa + b)*. Note que os antigos estados agregados foram mapeados para novos rótulos.
b) Q é um conjunto de estados possíveis do autômato;
c) δ é uma função de transição;
d) q0 é um elemento distinto de Q, chamado de estado inicial;
e) F é um subconjunto de Q, chamado de conjunto de estados finais;
f) ∆ é um alfabeto de símbolos de saída;
Uma aplicação comum e frequentemente recomendada para os autômatos com saída é o projeto de
diálogo entre um programa de computador e seu usuário, gerando, eventualmente, ações internas
ao sistema. Basicamente um diálogo pode ser de dois tipos:
• Comandado pelo programa;
• Comandado pelo usuário.
Em qualquer caso, uma das principais dificuldades do projetista é a visualização do conjunto de
eventos e ações que definam um diálogo adequado para as diversas situações possíveis. Um outro
exemplo de uso da Máquina de MEALY seria na definição de máquinas de cifras. As máquinas de
Mealy oferecem um modelo matemático rudimentar para construir tais máquinas. Considerando
como alfabeto de entrada e de saída o alfabeto latino, por exemplo, então a máquina de Mealy
pode ser desenhada de forma que dada uma série de letras (uma sequência de entrada de dados),
ela pode processá-la numa série cifrada (uma sequência de saída de dados). No entanto, apesar
de ser possível descrever a Enigma(nome pela qual é conhecida a máquina electro-mecânica de
criptografia com rotores, utilizada tanto para criptografar como para descriptografar mensagens
secretas, usada em várias formas na Europa a partir dos anos 1920) através de uma máquina de
Mealy, o diagrama de estados seria por demais complexo para se considerar um método cômodo
para desenhar máquinas de cifra.
A Máquina de MOORE possui uma segunda função, que gera uma palavra de saída (a qual
pode ser vazia) para cada estado da máquina. Uma Máquina de MOORE M é um autômato finito
determinístico com saídas associadas aos estados. É representada por uma 7-upla:
6
M = (Σ, Q, δ, q0, F, ∆, δS)
Na qual:
a) Σ é um alfabeto de símbolos de entrada;
b) Q é um conjunto de estados possíveis do autômato;
c) δ é uma função de transição δ : QxΣ → Q a qual é uma função parcial;
d) q0 é um elemento distinto de Q, chamado de estado inicial;
e) F é um subconjunto de Q, chamado de conjunto de estados finais;
f) ∆ é um alfabeto de símbolos de saída;
g) δS é uma função de saída δS : Q → ∆∗
que é uma função total;
Um exemplo comum de aplicação do conceito de Máquina de MOORE é o desenvolvimento de
Analisadores Léxicos de compiladores ou tradutores de linguagens em geral. Basicamente um ana-
lisador léxico é um autômato finito (em geral, determinístico) que identifica os componentes básicos
da linguagem como, por exemplo, números, identificadores, separadores, etc. Uma Máquina de
MOORE como um Analisador Léxico é como segue:
• Um estado final é associado a cada unidade léxica;
• Cada estado final possui uma saída (definida pela função de saída) que descreve ou codifica
a unidade léxica identificada;
• Para os demais estados (não finais) em geral, a saída gerada é a palavra vazia. Eventual-
mente pode ser não vazia, se alguma informação adicional à codificação da unidade léxica é
necessária.
7
Referências
Hopcroft, J. E. (2003), Introdução à Teoria de Autômatos, Linguagens e Computação, 2 ed.,
Elsevier.
Menezes, P. B. (2008), Linguagens Formais e Autômatos., 5 ed., Bookman Editora, Porto Alegre.
8

Mais conteúdo relacionado

Mais procurados (12)

Compiladores 5
Compiladores 5Compiladores 5
Compiladores 5
 
Broffice calc prf_marcat_praet_2013
Broffice calc prf_marcat_praet_2013Broffice calc prf_marcat_praet_2013
Broffice calc prf_marcat_praet_2013
 
Tecnicas programacao i_c_p4
Tecnicas programacao i_c_p4Tecnicas programacao i_c_p4
Tecnicas programacao i_c_p4
 
Linguagem c
Linguagem cLinguagem c
Linguagem c
 
Linguagem c parte 1
Linguagem c parte 1Linguagem c parte 1
Linguagem c parte 1
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Ud2
Ud2Ud2
Ud2
 
Tecnicas programacao i_c_p3
Tecnicas programacao i_c_p3Tecnicas programacao i_c_p3
Tecnicas programacao i_c_p3
 
Algoritmos C/C++ - Aula 01
Algoritmos C/C++ - Aula 01Algoritmos C/C++ - Aula 01
Algoritmos C/C++ - Aula 01
 
Aula de C e C++
Aula de C e C++Aula de C e C++
Aula de C e C++
 
Matlab
Matlab Matlab
Matlab
 
Aula01
Aula01Aula01
Aula01
 

Semelhante a Formal Languages ​​and Automata

Aula 9 propriedadedas linguagensregulares
Aula 9   propriedadedas linguagensregularesAula 9   propriedadedas linguagensregulares
Aula 9 propriedadedas linguagensregulareswab030
 
Aula 10 minimizaçãode automato
Aula 10   minimizaçãode automatoAula 10   minimizaçãode automato
Aula 10 minimizaçãode automatowab030
 
Aula 5 linguagens regularese automatosfinitosnãodeterministico
Aula 5   linguagens regularese automatosfinitosnãodeterministicoAula 5   linguagens regularese automatosfinitosnãodeterministico
Aula 5 linguagens regularese automatosfinitosnãodeterministicowab030
 
Aula 12 revisãodos exercícios
Aula 12   revisãodos exercíciosAula 12   revisãodos exercícios
Aula 12 revisãodos exercícioswab030
 
Aula 11 automato finitocomsaida
Aula 11   automato finitocomsaidaAula 11   automato finitocomsaida
Aula 11 automato finitocomsaidawab030
 
Tutorial Octave Matlab
Tutorial Octave MatlabTutorial Octave Matlab
Tutorial Octave Matlabblogmaxima
 

Semelhante a Formal Languages ​​and Automata (9)

Aula 9 propriedadedas linguagensregulares
Aula 9   propriedadedas linguagensregularesAula 9   propriedadedas linguagensregulares
Aula 9 propriedadedas linguagensregulares
 
Aula 10 minimizaçãode automato
Aula 10   minimizaçãode automatoAula 10   minimizaçãode automato
Aula 10 minimizaçãode automato
 
Aula 5 linguagens regularese automatosfinitosnãodeterministico
Aula 5   linguagens regularese automatosfinitosnãodeterministicoAula 5   linguagens regularese automatosfinitosnãodeterministico
Aula 5 linguagens regularese automatosfinitosnãodeterministico
 
Lista tc02
Lista tc02Lista tc02
Lista tc02
 
5423 c ou c++
5423 c ou c++5423 c ou c++
5423 c ou c++
 
Apostila C++
Apostila C++ Apostila C++
Apostila C++
 
Aula 12 revisãodos exercícios
Aula 12   revisãodos exercíciosAula 12   revisãodos exercícios
Aula 12 revisãodos exercícios
 
Aula 11 automato finitocomsaida
Aula 11   automato finitocomsaidaAula 11   automato finitocomsaida
Aula 11 automato finitocomsaida
 
Tutorial Octave Matlab
Tutorial Octave MatlabTutorial Octave Matlab
Tutorial Octave Matlab
 

Mais de Michel Alves

Texture Synthesis: An Approach Based on GPU Use
Texture Synthesis: An Approach Based on GPU UseTexture Synthesis: An Approach Based on GPU Use
Texture Synthesis: An Approach Based on GPU UseMichel Alves
 
Intelligent Transfer of Thematic Harmonic Color Palettes
Intelligent Transfer of Thematic Harmonic Color PalettesIntelligent Transfer of Thematic Harmonic Color Palettes
Intelligent Transfer of Thematic Harmonic Color PalettesMichel Alves
 
A Framework for Harmonic Color Measures
A Framework for Harmonic Color MeasuresA Framework for Harmonic Color Measures
A Framework for Harmonic Color MeasuresMichel Alves
 
Effectiveness of Image Quality Assessment Indexes
Effectiveness of Image Quality Assessment IndexesEffectiveness of Image Quality Assessment Indexes
Effectiveness of Image Quality Assessment IndexesMichel Alves
 
Introduction to Kernel Functions
Introduction to Kernel FunctionsIntroduction to Kernel Functions
Introduction to Kernel FunctionsMichel Alves
 
About Perception and Hue Histograms in HSV Space
About Perception and Hue Histograms in HSV SpaceAbout Perception and Hue Histograms in HSV Space
About Perception and Hue Histograms in HSV SpaceMichel Alves
 
Color Harmonization - Results
Color Harmonization - ResultsColor Harmonization - Results
Color Harmonization - ResultsMichel Alves
 
Wave Simulation Using Perlin Noise
Wave Simulation Using Perlin NoiseWave Simulation Using Perlin Noise
Wave Simulation Using Perlin NoiseMichel Alves
 
Similarity Maps Using SSIM Index
Similarity Maps Using SSIM IndexSimilarity Maps Using SSIM Index
Similarity Maps Using SSIM IndexMichel Alves
 
Qualifying Exam - Image-Based Reconstruction With Color Harmonization
Qualifying Exam - Image-Based Reconstruction With Color HarmonizationQualifying Exam - Image-Based Reconstruction With Color Harmonization
Qualifying Exam - Image-Based Reconstruction With Color HarmonizationMichel Alves
 
TMS - Schedule of Presentations and Reports
TMS - Schedule of Presentations and ReportsTMS - Schedule of Presentations and Reports
TMS - Schedule of Presentations and ReportsMichel Alves
 
Month Presentations Schedule - March/2015 - LCG/UFRJ
Month Presentations Schedule - March/2015 - LCG/UFRJMonth Presentations Schedule - March/2015 - LCG/UFRJ
Month Presentations Schedule - March/2015 - LCG/UFRJMichel Alves
 
Color Palettes in R
Color Palettes in RColor Palettes in R
Color Palettes in RMichel Alves
 
Hue Wheel Prototype
Hue Wheel PrototypeHue Wheel Prototype
Hue Wheel PrototypeMichel Alves
 
Triangle Mesh Plot
Triangle Mesh PlotTriangle Mesh Plot
Triangle Mesh PlotMichel Alves
 
Capacity-Constrained Point Distributions :: Video Slides
Capacity-Constrained Point Distributions :: Video SlidesCapacity-Constrained Point Distributions :: Video Slides
Capacity-Constrained Point Distributions :: Video SlidesMichel Alves
 
Capacity-Constrained Point Distributions :: Density Function Catalog
Capacity-Constrained Point Distributions :: Density Function CatalogCapacity-Constrained Point Distributions :: Density Function Catalog
Capacity-Constrained Point Distributions :: Density Function CatalogMichel Alves
 

Mais de Michel Alves (20)

Texture Synthesis: An Approach Based on GPU Use
Texture Synthesis: An Approach Based on GPU UseTexture Synthesis: An Approach Based on GPU Use
Texture Synthesis: An Approach Based on GPU Use
 
Intelligent Transfer of Thematic Harmonic Color Palettes
Intelligent Transfer of Thematic Harmonic Color PalettesIntelligent Transfer of Thematic Harmonic Color Palettes
Intelligent Transfer of Thematic Harmonic Color Palettes
 
A Framework for Harmonic Color Measures
A Framework for Harmonic Color MeasuresA Framework for Harmonic Color Measures
A Framework for Harmonic Color Measures
 
Effectiveness of Image Quality Assessment Indexes
Effectiveness of Image Quality Assessment IndexesEffectiveness of Image Quality Assessment Indexes
Effectiveness of Image Quality Assessment Indexes
 
Introduction to Kernel Functions
Introduction to Kernel FunctionsIntroduction to Kernel Functions
Introduction to Kernel Functions
 
About Perception and Hue Histograms in HSV Space
About Perception and Hue Histograms in HSV SpaceAbout Perception and Hue Histograms in HSV Space
About Perception and Hue Histograms in HSV Space
 
Color Harmonization - Results
Color Harmonization - ResultsColor Harmonization - Results
Color Harmonization - Results
 
Wave Simulation Using Perlin Noise
Wave Simulation Using Perlin NoiseWave Simulation Using Perlin Noise
Wave Simulation Using Perlin Noise
 
Similarity Maps Using SSIM Index
Similarity Maps Using SSIM IndexSimilarity Maps Using SSIM Index
Similarity Maps Using SSIM Index
 
Qualifying Exam - Image-Based Reconstruction With Color Harmonization
Qualifying Exam - Image-Based Reconstruction With Color HarmonizationQualifying Exam - Image-Based Reconstruction With Color Harmonization
Qualifying Exam - Image-Based Reconstruction With Color Harmonization
 
TMS - Schedule of Presentations and Reports
TMS - Schedule of Presentations and ReportsTMS - Schedule of Presentations and Reports
TMS - Schedule of Presentations and Reports
 
Month Presentations Schedule - March/2015 - LCG/UFRJ
Month Presentations Schedule - March/2015 - LCG/UFRJMonth Presentations Schedule - March/2015 - LCG/UFRJ
Month Presentations Schedule - March/2015 - LCG/UFRJ
 
Color Palettes in R
Color Palettes in RColor Palettes in R
Color Palettes in R
 
Sigmoid Curve Erf
Sigmoid Curve ErfSigmoid Curve Erf
Sigmoid Curve Erf
 
Hue Wheel Prototype
Hue Wheel PrototypeHue Wheel Prototype
Hue Wheel Prototype
 
Cosine Curve
Cosine CurveCosine Curve
Cosine Curve
 
Triangle Mesh Plot
Triangle Mesh PlotTriangle Mesh Plot
Triangle Mesh Plot
 
Triangle Plot
Triangle PlotTriangle Plot
Triangle Plot
 
Capacity-Constrained Point Distributions :: Video Slides
Capacity-Constrained Point Distributions :: Video SlidesCapacity-Constrained Point Distributions :: Video Slides
Capacity-Constrained Point Distributions :: Video Slides
 
Capacity-Constrained Point Distributions :: Density Function Catalog
Capacity-Constrained Point Distributions :: Density Function CatalogCapacity-Constrained Point Distributions :: Density Function Catalog
Capacity-Constrained Point Distributions :: Density Function Catalog
 

Último

Aula - 2º Ano - Cultura e Sociedade - Conceitos-chave
Aula - 2º Ano - Cultura e Sociedade - Conceitos-chaveAula - 2º Ano - Cultura e Sociedade - Conceitos-chave
Aula - 2º Ano - Cultura e Sociedade - Conceitos-chaveaulasgege
 
Cartilha 1º Ano Alfabetização _ 1º Ano Ensino Fundamental
Cartilha 1º Ano Alfabetização _ 1º Ano Ensino FundamentalCartilha 1º Ano Alfabetização _ 1º Ano Ensino Fundamental
Cartilha 1º Ano Alfabetização _ 1º Ano Ensino Fundamentalgeone480617
 
A Inteligência Artificial na Educação e a Inclusão Linguística
A Inteligência Artificial na Educação e a Inclusão LinguísticaA Inteligência Artificial na Educação e a Inclusão Linguística
A Inteligência Artificial na Educação e a Inclusão LinguísticaFernanda Ledesma
 
Slides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptx
Slides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptxSlides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptx
Slides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptxLuizHenriquedeAlmeid6
 
Cultura e Sociedade - Texto de Apoio.pdf
Cultura e Sociedade - Texto de Apoio.pdfCultura e Sociedade - Texto de Apoio.pdf
Cultura e Sociedade - Texto de Apoio.pdfaulasgege
 
DIGNITAS INFINITA - DIGNIDADE HUMANA -Declaração do Dicastério para a Doutrin...
DIGNITAS INFINITA - DIGNIDADE HUMANA -Declaração do Dicastério para a Doutrin...DIGNITAS INFINITA - DIGNIDADE HUMANA -Declaração do Dicastério para a Doutrin...
DIGNITAS INFINITA - DIGNIDADE HUMANA -Declaração do Dicastério para a Doutrin...Martin M Flynn
 
PPT _ Módulo 3_Direito Comercial_2023_2024.pdf
PPT _ Módulo 3_Direito Comercial_2023_2024.pdfPPT _ Módulo 3_Direito Comercial_2023_2024.pdf
PPT _ Módulo 3_Direito Comercial_2023_2024.pdfAnaGonalves804156
 
Educação São Paulo centro de mídias da SP
Educação São Paulo centro de mídias da SPEducação São Paulo centro de mídias da SP
Educação São Paulo centro de mídias da SPanandatss1
 
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptxQUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptxIsabellaGomes58
 
v19n2s3a25.pdfgcbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
v19n2s3a25.pdfgcbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbv19n2s3a25.pdfgcbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
v19n2s3a25.pdfgcbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbyasminlarissa371
 
ÁREA DE FIGURAS PLANAS - DESCRITOR DE MATEMATICA D12 ENSINO MEDIO.pptx
ÁREA DE FIGURAS PLANAS - DESCRITOR DE MATEMATICA D12 ENSINO MEDIO.pptxÁREA DE FIGURAS PLANAS - DESCRITOR DE MATEMATICA D12 ENSINO MEDIO.pptx
ÁREA DE FIGURAS PLANAS - DESCRITOR DE MATEMATICA D12 ENSINO MEDIO.pptxDeyvidBriel
 
Recurso Casa das Ciências: Sistemas de Partículas
Recurso Casa das Ciências: Sistemas de PartículasRecurso Casa das Ciências: Sistemas de Partículas
Recurso Casa das Ciências: Sistemas de PartículasCasa Ciências
 
HORA DO CONTO4_BECRE D. CARLOS I_2023_2024
HORA DO CONTO4_BECRE D. CARLOS I_2023_2024HORA DO CONTO4_BECRE D. CARLOS I_2023_2024
HORA DO CONTO4_BECRE D. CARLOS I_2023_2024Sandra Pratas
 
19 de abril - Dia dos povos indigenas brasileiros
19 de abril - Dia dos povos indigenas brasileiros19 de abril - Dia dos povos indigenas brasileiros
19 de abril - Dia dos povos indigenas brasileirosMary Alvarenga
 
Slide de exemplo sobre o Sítio do Pica Pau Amarelo.pptx
Slide de exemplo sobre o Sítio do Pica Pau Amarelo.pptxSlide de exemplo sobre o Sítio do Pica Pau Amarelo.pptx
Slide de exemplo sobre o Sítio do Pica Pau Amarelo.pptxconcelhovdragons
 
As Viagens Missionária do Apostolo Paulo.pptx
As Viagens Missionária do Apostolo Paulo.pptxAs Viagens Missionária do Apostolo Paulo.pptx
As Viagens Missionária do Apostolo Paulo.pptxAlexandreFrana33
 
Dança Contemporânea na arte da dança primeira parte
Dança Contemporânea na arte da dança primeira parteDança Contemporânea na arte da dança primeira parte
Dança Contemporânea na arte da dança primeira partecoletivoddois
 
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdf
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdfBRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdf
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdfHenrique Pontes
 
Mesoamérica.Astecas,inca,maias , olmecas
Mesoamérica.Astecas,inca,maias , olmecasMesoamérica.Astecas,inca,maias , olmecas
Mesoamérica.Astecas,inca,maias , olmecasRicardo Diniz campos
 
HORA DO CONTO3_BECRE D. CARLOS I_2023_2024
HORA DO CONTO3_BECRE D. CARLOS I_2023_2024HORA DO CONTO3_BECRE D. CARLOS I_2023_2024
HORA DO CONTO3_BECRE D. CARLOS I_2023_2024Sandra Pratas
 

Último (20)

Aula - 2º Ano - Cultura e Sociedade - Conceitos-chave
Aula - 2º Ano - Cultura e Sociedade - Conceitos-chaveAula - 2º Ano - Cultura e Sociedade - Conceitos-chave
Aula - 2º Ano - Cultura e Sociedade - Conceitos-chave
 
Cartilha 1º Ano Alfabetização _ 1º Ano Ensino Fundamental
Cartilha 1º Ano Alfabetização _ 1º Ano Ensino FundamentalCartilha 1º Ano Alfabetização _ 1º Ano Ensino Fundamental
Cartilha 1º Ano Alfabetização _ 1º Ano Ensino Fundamental
 
A Inteligência Artificial na Educação e a Inclusão Linguística
A Inteligência Artificial na Educação e a Inclusão LinguísticaA Inteligência Artificial na Educação e a Inclusão Linguística
A Inteligência Artificial na Educação e a Inclusão Linguística
 
Slides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptx
Slides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptxSlides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptx
Slides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptx
 
Cultura e Sociedade - Texto de Apoio.pdf
Cultura e Sociedade - Texto de Apoio.pdfCultura e Sociedade - Texto de Apoio.pdf
Cultura e Sociedade - Texto de Apoio.pdf
 
DIGNITAS INFINITA - DIGNIDADE HUMANA -Declaração do Dicastério para a Doutrin...
DIGNITAS INFINITA - DIGNIDADE HUMANA -Declaração do Dicastério para a Doutrin...DIGNITAS INFINITA - DIGNIDADE HUMANA -Declaração do Dicastério para a Doutrin...
DIGNITAS INFINITA - DIGNIDADE HUMANA -Declaração do Dicastério para a Doutrin...
 
PPT _ Módulo 3_Direito Comercial_2023_2024.pdf
PPT _ Módulo 3_Direito Comercial_2023_2024.pdfPPT _ Módulo 3_Direito Comercial_2023_2024.pdf
PPT _ Módulo 3_Direito Comercial_2023_2024.pdf
 
Educação São Paulo centro de mídias da SP
Educação São Paulo centro de mídias da SPEducação São Paulo centro de mídias da SP
Educação São Paulo centro de mídias da SP
 
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptxQUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
 
v19n2s3a25.pdfgcbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
v19n2s3a25.pdfgcbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbv19n2s3a25.pdfgcbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
v19n2s3a25.pdfgcbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
 
ÁREA DE FIGURAS PLANAS - DESCRITOR DE MATEMATICA D12 ENSINO MEDIO.pptx
ÁREA DE FIGURAS PLANAS - DESCRITOR DE MATEMATICA D12 ENSINO MEDIO.pptxÁREA DE FIGURAS PLANAS - DESCRITOR DE MATEMATICA D12 ENSINO MEDIO.pptx
ÁREA DE FIGURAS PLANAS - DESCRITOR DE MATEMATICA D12 ENSINO MEDIO.pptx
 
Recurso Casa das Ciências: Sistemas de Partículas
Recurso Casa das Ciências: Sistemas de PartículasRecurso Casa das Ciências: Sistemas de Partículas
Recurso Casa das Ciências: Sistemas de Partículas
 
HORA DO CONTO4_BECRE D. CARLOS I_2023_2024
HORA DO CONTO4_BECRE D. CARLOS I_2023_2024HORA DO CONTO4_BECRE D. CARLOS I_2023_2024
HORA DO CONTO4_BECRE D. CARLOS I_2023_2024
 
19 de abril - Dia dos povos indigenas brasileiros
19 de abril - Dia dos povos indigenas brasileiros19 de abril - Dia dos povos indigenas brasileiros
19 de abril - Dia dos povos indigenas brasileiros
 
Slide de exemplo sobre o Sítio do Pica Pau Amarelo.pptx
Slide de exemplo sobre o Sítio do Pica Pau Amarelo.pptxSlide de exemplo sobre o Sítio do Pica Pau Amarelo.pptx
Slide de exemplo sobre o Sítio do Pica Pau Amarelo.pptx
 
As Viagens Missionária do Apostolo Paulo.pptx
As Viagens Missionária do Apostolo Paulo.pptxAs Viagens Missionária do Apostolo Paulo.pptx
As Viagens Missionária do Apostolo Paulo.pptx
 
Dança Contemporânea na arte da dança primeira parte
Dança Contemporânea na arte da dança primeira parteDança Contemporânea na arte da dança primeira parte
Dança Contemporânea na arte da dança primeira parte
 
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdf
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdfBRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdf
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdf
 
Mesoamérica.Astecas,inca,maias , olmecas
Mesoamérica.Astecas,inca,maias , olmecasMesoamérica.Astecas,inca,maias , olmecas
Mesoamérica.Astecas,inca,maias , olmecas
 
HORA DO CONTO3_BECRE D. CARLOS I_2023_2024
HORA DO CONTO3_BECRE D. CARLOS I_2023_2024HORA DO CONTO3_BECRE D. CARLOS I_2023_2024
HORA DO CONTO3_BECRE D. CARLOS I_2023_2024
 

Formal Languages ​​and Automata

  • 1. Linguagens Formais e Autômatos Michel Alves dos Santos ∗ Outubro de 2010 ∗Bacharelando em Ciência da Computação, Universidade Federal do Estado de Alagoas(UFAL). E-mails: mi- chel.mas@gmail.com, michelalavessantos@hotmail.com. Disciplina: Linguagens Formais e Autômatos. Docente Responsável: Eliana Almeida. 1
  • 2. Sumário Lista de Figuras 2 Lista de Tabelas 2 1 Construa o AFD MÍNIMO que reconheça a linguagem denotada por (utilize o algoritmo para obter o AFD MÍNIMO, se for o caso!): 2 2 Descreva sobre a Máquina de MEALY e a Máquina de MOORE, apresente um exemplo explicando o seu funcionamento. 5 Referências Bibliográficas 8 Lista de Figuras 1 Autômato Finito Determinístico que aceita a linguagem La denotada por (aa + bb)*. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 2 Autômato Finito Determinístico Mínimo que aceita a linguagem La denotada por (aa + bb)*. Levando em consideração que a palavra vazia λ leva sempre ao estado inicial que consequentemente é o final. . . . . . . . . . . . . . . . . . . . . . . . . 4 3 Autômato Finito Não-Determinístico que aceita a linguagem Lb denotada por (a + bb)*(aa + b)*. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 4 Autômato Finito Determinístico Mc que aceita a linguagem Lb denotada por (a + bb)*(aa + b)*. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 5 Autômato Finito Determinístico Mc que aceita a linguagem Lb denotada por (a + bb)*(aa + b)*. Note que os antigos estados agregados foram mapeados para novos rótulos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 Lista de Tabelas 1 Tabela de transição do autômato Ma. . . . . . . . . . . . . . . . . . . . . . . . . . 3 2 Tabela de transição do autômato Mb. . . . . . . . . . . . . . . . . . . . . . . . . . 3 3 Tabela de transição do autômato Mc. . . . . . . . . . . . . . . . . . . . . . . . . . 5 4 Tabela de mapeamento de estados do autômato Mc. . . . . . . . . . . . . . . . . . 5 1 Construa o AFD MÍNIMO que reconheça a linguagem de- notada por (utilize o algoritmo para obter o AFD MÍ- NIMO, se for o caso!): • a. (aa + bb)* A linguagem denotada pela expressão regular dada acima aceita as seguintes palavras: La = {λ, aa, bb, aaaa, bbbb, aaaaaa, bbbbbb, ...}. Um Autômato Finito Determinístico que reconhece a linguagem La pode ser dado pela figura 1. A descrição do autômato Ma que reconhece a linguagem La é dada por: Ma = ({a, b}, {q0, q1, q2}, δ, q0, {q0}) 2
  • 3. Figura 1: Autômato Finito Determinístico que aceita a linguagem La denotada por (aa + bb)*. δ λ a b q0 q0 q1 q2 q1 - q0 - q2 - - q1 Tabela 1: Tabela de transição do autômato Ma. A lista de transição de estados do autômato Ma é exibida através da tabela 1. Porém podemos observar que o autômato descrito anteriormente ainda é passível de minimização. Isso pode ser observado através da figura 2. • b. (a + bb)*(aa + b)* A linguagem denotada pela expressão regular dada acima aceita as seguintes palavras: Lb = {λ, a, b, bb, aa, ab, aaa, abb, bbaa, bbb, aaaa, aaaaaa, bbbbbb, abbbb, ...}. Um Autômato Fi- nito Não-Determinístico que reconhece a linguagem Lb pode ser dado em primeira instância pela figura 3. A descrição do autômato Mb que reconhece a linguagem Lb é dada por: Mb = ({a, b}, {q0, q1, q2}, δ, q0, {q0}) As transições de estado do autômato Mb são exibidas através da tabela 1. Porém até δ λ a b q0 q0 q0,q2 q0,q1 q1 - - q0 q2 - q0 - Tabela 2: Tabela de transição do autômato Mb. o presente momento só dispomos de um autômato finito não-determinístico, dessa maneira devemos transformar o autômato Mb em um autômato Mc finito e determinístico. Usando os devidos mecanismos de transformação de autômatos não-determinísticos em determinísticos teremos o autômato representado pela figura 4. As transições mapeadas do autômato Mb para o autômato Mc são dadas pela tabela 3. Nesse momento faz-se necessário um novo 3
  • 4. Figura 2: Autômato Finito Determinístico Mínimo que aceita a linguagem La denotada por (aa + bb)*. Levando em consideração que a palavra vazia λ leva sempre ao estado inicial que conse- quentemente é o final. Figura 3: Autômato Finito Não-Determinístico que aceita a linguagem Lb denotada por (a + bb)*(aa + b)*. 4
  • 5. Figura 4: Autômato Finito Determinístico Mc que aceita a linguagem Lb denotada por (a + bb)*(aa + b)*. δ a b q0 q0q2 q0q1 q0q1 q0q2 q0q1 q0q2 q0q2 q0q1 Tabela 3: Tabela de transição do autômato Mc. mapeamento de rótulos dos estados do autômato Mc gerado a partir da transformação do autômato Mb em um autômato finito determinístico. O mapeamento utilizado poderá ser visualizado através da tabela 4 e da figura 5. Antigo Estado Novo Estado q0 p0 q0q1 p1 q0q2 p2 Tabela 4: Tabela de mapeamento de estados do autômato Mc. 2 Descreva sobre a Máquina de MEALY e a Máquina de MOORE, apresente um exemplo explicando o seu funcio- namento. A Máquina de MEALY é um autômato finito determinístico modificado de forma a gerar uma palavra de saída (a qual pode ser vazia) para cada transição da máquina. Uma Máquina de MEALY M é representada por uma 6-upla: M = (Σ, Q, δ, q0, F, ∆) Na qual: a) Σ é um alfabeto de símbolos de entrada; 5
  • 6. Figura 5: Autômato Finito Determinístico Mc que aceita a linguagem Lb denotada por (a + bb)*(aa + b)*. Note que os antigos estados agregados foram mapeados para novos rótulos. b) Q é um conjunto de estados possíveis do autômato; c) δ é uma função de transição; d) q0 é um elemento distinto de Q, chamado de estado inicial; e) F é um subconjunto de Q, chamado de conjunto de estados finais; f) ∆ é um alfabeto de símbolos de saída; Uma aplicação comum e frequentemente recomendada para os autômatos com saída é o projeto de diálogo entre um programa de computador e seu usuário, gerando, eventualmente, ações internas ao sistema. Basicamente um diálogo pode ser de dois tipos: • Comandado pelo programa; • Comandado pelo usuário. Em qualquer caso, uma das principais dificuldades do projetista é a visualização do conjunto de eventos e ações que definam um diálogo adequado para as diversas situações possíveis. Um outro exemplo de uso da Máquina de MEALY seria na definição de máquinas de cifras. As máquinas de Mealy oferecem um modelo matemático rudimentar para construir tais máquinas. Considerando como alfabeto de entrada e de saída o alfabeto latino, por exemplo, então a máquina de Mealy pode ser desenhada de forma que dada uma série de letras (uma sequência de entrada de dados), ela pode processá-la numa série cifrada (uma sequência de saída de dados). No entanto, apesar de ser possível descrever a Enigma(nome pela qual é conhecida a máquina electro-mecânica de criptografia com rotores, utilizada tanto para criptografar como para descriptografar mensagens secretas, usada em várias formas na Europa a partir dos anos 1920) através de uma máquina de Mealy, o diagrama de estados seria por demais complexo para se considerar um método cômodo para desenhar máquinas de cifra. A Máquina de MOORE possui uma segunda função, que gera uma palavra de saída (a qual pode ser vazia) para cada estado da máquina. Uma Máquina de MOORE M é um autômato finito determinístico com saídas associadas aos estados. É representada por uma 7-upla: 6
  • 7. M = (Σ, Q, δ, q0, F, ∆, δS) Na qual: a) Σ é um alfabeto de símbolos de entrada; b) Q é um conjunto de estados possíveis do autômato; c) δ é uma função de transição δ : QxΣ → Q a qual é uma função parcial; d) q0 é um elemento distinto de Q, chamado de estado inicial; e) F é um subconjunto de Q, chamado de conjunto de estados finais; f) ∆ é um alfabeto de símbolos de saída; g) δS é uma função de saída δS : Q → ∆∗ que é uma função total; Um exemplo comum de aplicação do conceito de Máquina de MOORE é o desenvolvimento de Analisadores Léxicos de compiladores ou tradutores de linguagens em geral. Basicamente um ana- lisador léxico é um autômato finito (em geral, determinístico) que identifica os componentes básicos da linguagem como, por exemplo, números, identificadores, separadores, etc. Uma Máquina de MOORE como um Analisador Léxico é como segue: • Um estado final é associado a cada unidade léxica; • Cada estado final possui uma saída (definida pela função de saída) que descreve ou codifica a unidade léxica identificada; • Para os demais estados (não finais) em geral, a saída gerada é a palavra vazia. Eventual- mente pode ser não vazia, se alguma informação adicional à codificação da unidade léxica é necessária. 7
  • 8. Referências Hopcroft, J. E. (2003), Introdução à Teoria de Autômatos, Linguagens e Computação, 2 ed., Elsevier. Menezes, P. B. (2008), Linguagens Formais e Autômatos., 5 ed., Bookman Editora, Porto Alegre. 8