Your SlideShare is downloading. ×
0
01   introducao e conceitos basicos
01   introducao e conceitos basicos
01   introducao e conceitos basicos
01   introducao e conceitos basicos
01   introducao e conceitos basicos
01   introducao e conceitos basicos
01   introducao e conceitos basicos
01   introducao e conceitos basicos
01   introducao e conceitos basicos
01   introducao e conceitos basicos
01   introducao e conceitos basicos
01   introducao e conceitos basicos
01   introducao e conceitos basicos
01   introducao e conceitos basicos
01   introducao e conceitos basicos
01   introducao e conceitos basicos
01   introducao e conceitos basicos
01   introducao e conceitos basicos
01   introducao e conceitos basicos
01   introducao e conceitos basicos
01   introducao e conceitos basicos
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

01 introducao e conceitos basicos

417

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
417
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
32
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Linguagens Formais e Autômatos P. Blauth Menezes blauth@inf.ufrgs.br Departamento de Informática Teórica Instituto de Informática / UFRGSMatemática Discreta para Ciência da Computação - P. Blauth Menezes 1
  • 2. Linguagens Formais e Autômatos P. Blauth Menezes 1 Introdução e Conceitos Básicos 2 Linguagens e Gramáticas 3 Linguagens Regulares 4 Propriedades das Linguagens Regulares 5 Autômato Finito com Saída 6 Linguagens Livres do Contexto 7 Propriedades e Reconhecimento das Linguagens Livres do Contexto 8 Linguagens Recursivamente Enumeráveis e Sensíveis ao Contexto 9 Hierarquia de Classes e Linguagens e ConclusõesLinguagens Formais e Autômatos - P. Blauth Menezes 2
  • 3. 1 – Introdução e Conceitos Básicos 1.1 Introdução 1.1.1 Sintaxe e Semântica 1.1.2 Abordagem 1.2 Conjuntos, Relações e Funções 1.3 Noções de Lógica 1.4 Técnicas de Demonstração 1.5 InduçãoLinguagens Formais e Autômatos - P. Blauth Menezes 3
  • 4. 1 – Introdução e Conceitos BásicosLinguagens Formais e Autômatos - P. Blauth Menezes 4
  • 5. 1.1 Introdução◆ Teoria das Linguagens Formais • desenvolvida na década de 1950 • objetivo inicial ∗ desenvolver teorias relacionadas com as linguagens naturais • entretanto, logo foi verificado que era importante ∗ estudo de linguagens artificiais ∗ em especial, para as linguagens originárias da Computação e Informática • desde então, desenvolveu-se significativamenteLinguagens Formais e Autômatos - P. Blauth Menezes 5
  • 6. ◆ Exemplos de aplicações • análise léxica e análise sintática de linguagens de programação • modelagem de circuitos lógicos ou redes lógicas • modelagem de sistemas biológicos • …◆ Mais recentemente • animações • hipertextos e hipermídias • linguagens não-lineares ∗ planares ∗ espaciais ∗ n-dimensionaisLinguagens Formais e Autômatos - P. Blauth Menezes 6
  • 7. 1 – Introdução e Conceitos Básicos 1.1 Introdução 1.1.1 Sintaxe e Semântica 1.1.2 Abordagem 1.2 Conjuntos, Relações e Funções 1.3 Noções de Lógica 1.4 Técnicas de Demonstração 1.5 InduçãoLinguagens Formais e Autômatos - P. Blauth Menezes 7
  • 8. 1.1.1 Sintaxe e Semântica◆ Linguagens Formais • problemas sintáticos das linguagens◆ Importante apresentar os conceitos de • sintaxe e semântica◆ Historicamente, o problema sintático • reconhecido antes do problema semântico • primeiro a receber um tratamento adequado • tratamento mais simples que os semânticosLinguagens Formais e Autômatos - P. Blauth Menezes 8
  • 9. ◆ Conseqüência • grande ênfase à sintaxe • levando à idéia de que questões das linguagens de programação ∗ resumiam-se às questões da sintaxe◆ Teoria da sintaxe possui construções matemáticas • bem definidas e universalmente reconhecidas • exemplo: Gramáticas de ChomskyLinguagens Formais e Autômatos - P. Blauth Menezes 9
  • 10. ◆ Linguagem de programação (ou qq modelo matemático) pode ser vista como uma entidade • livre, sem qualquer significado associado • juntamente com uma interpretação do seu significado◆ Sintaxe • trata das propriedades livres da linguagem • exemplo: verificação gramatical de programas◆ Semântica • objetiva dar uma interpretação para a linguagem • exemplo: significado ou valor para um determinado programaLinguagens Formais e Autômatos - P. Blauth Menezes 10
  • 11. ◆ Conseqüentemente, a sintaxe: • manipula símbolos • sem considerar os seus correspondentes significados◆ Mas, para resolver qualquer problema real • necessário dar uma interpretação semântica aos símbolos • exemplo: estes símbolos representam os inteiros◆ Sintaticamente "errado" • não existe tal noção de programa • simplesmente não é um programa da linguagem◆ Sintaticamente válido ("correto") • pode não ser o programa que o programador esperava escreverLinguagens Formais e Autômatos - P. Blauth Menezes 11
  • 12. ◆ Programa "correto" ou "errado" • se o mesmo modela adequadamente o comportamento desejado◆ Limites entre a sintaxe e a semântica • nem sempre são claros • exemplo: ocorrência de um nome em um programa • entretanto, em linguagens artificiais ∗ distinção entre sintaxe e semântica é (em geral) óbvia◆ Análise léxica • tipo especial de análise sintática • centrada nas componentes básicas da linguagem • portanto, também é ênfase das Linguagens FormaisLinguagens Formais e Autômatos - P. Blauth Menezes 12
  • 13. 1 – Introdução e Conceitos Básicos 1.1 Introdução 1.1.1 Sintaxe e Semântica 1.1.2 Abordagem 1.2 Conjuntos, Relações e Funções 1.3 Noções de Lógica 1.4 Técnicas de Demonstração 1.5 InduçãoLinguagens Formais e Autômatos - P. Blauth Menezes 13
  • 14. 1.1.2 Abordagem◆ Centrada no tratamento sintático • linguagens lineares abstratas • com fácil associação às linguagens da Computação e Informática◆ Clasificação dos formalismos • Operacional • Axiomático • DenotacionalLinguagens Formais e Autômatos - P. Blauth Menezes 14
  • 15. Operacional◆ Autômato ou uma máquina abstrata • estados • instruções primitivas • especificação de como cada instrução modifica cada estado◆ Máquina abstrata • suficientemente simples • para não permitir dúvidas sobre a execução de seu código◆ Também é dito um formalismo Reconhecedor • análise de uma entrada para verificar se é "reconhecida"Linguagens Formais e Autômatos - P. Blauth Menezes 15
  • 16. ◆ Principais máquinas • Autômato Finito • Autômato com Pilha • Máquina de TuringLinguagens Formais e Autômatos - P. Blauth Menezes 16
  • 17. Axiomático◆ Associam-se regras • às componentes da linguagem◆ Regras permitem afirmar • o que será verdadeiro após a ocorrência de cada cláusula • considerando-se o que era verdadeiro antes da ocorrência◆ Também é dito um formalismo Gerador • verifica se um elemento da linguagem é "gerado"Linguagens Formais e Autômatos - P. Blauth Menezes 17
  • 18. ◆ Abordagem é sobre Gramáticas • Regulares • Livres do Contexto • Sensíveis ao Contexto • IrrestritasLinguagens Formais e Autômatos - P. Blauth Menezes 18
  • 19. Denotacional◆ Ou Funcional◆ Define-se um domínio • caracteriza o conjunto de palavras admissíveis na linguagem • funções, em geral, composicionais (horizontalmente) ∗ valor denotado por uma construção ∗ especificado em termos dos valores denotados por suas subcomponentes◆ Abordagem restrita às Expressões Regulares◆ Também é dito um formalismo Gerador • é simples inferir ("gerar") as palavras da linguagemLinguagens Formais e Autômatos - P. Blauth Menezes 19
  • 20. 1 – Introdução e Conceitos Básicos 1.1 Introdução 1.1.1 Sintaxe e Semântica 1.1.2 Abordagem 1.2 Conjuntos, Relações e Funções 1.3 Noções de Lógica 1.4 Técnicas de Demonstração 1.5 InduçãoLinguagens Formais e Autômatos - P. Blauth Menezes 20
  • 21. Linguagens Formais e Autômatos P. Blauth Menezes 1 Introdução e Conceitos Básicos 2 Linguagens e Gramáticas 3 Linguagens Regulares 4 Propriedades das Linguagens Regulares 5 Autômato Finito com Saída 6 Linguagens Livres do Contexto 7 Propriedades e Reconhecimento das Linguagens Livres do Contexto 8 Linguagens Recursivamente Enumeráveis e Sensíveis ao Contexto 9 Hierarquia de Classes e Linguagens e ConclusõesLinguagens Formais e Autômatos - P. Blauth Menezes 21

×