Você está na página 1de 29

Linguagens Formais e Autmatos

P. Blauth Menezes
blauth@inf.ufrgs.br

Departamento de Informtica Terica Instituto de Informtica / UFRGS

Linguagens Formais e Autmatos - P. Blauth Menezes

Linguagens Formais e Autmatos


P. Blauth Menezes 1 2 3 4 5 6 7 8 9 Introduo e Conceitos Bsicos Linguagens e Gramticas Linguagens Regulares Propriedades das Linguagens Regulares Autmato Finito com Sada Linguagens Livres do Contexto Propriedades e Reconhecimento das Linguagens Livres do Contexto Linguagens Recursivamente Enumerveis e Sensveis ao Contexto Hierarquia de Classes e Linguagens e Concluses

Linguagens Formais e Autmatos - P. Blauth Menezes

9 - Hierarquia de Classes de

Linguagens e Concluses

9.1 Hierarquia de Chomsky 9.2 Concluses 9.3 Leitura Complementar: Gramtica de Grafos

Linguagens Formais e Autmatos - P. Blauth Menezes

9 - Hierarquia de Classes de Linguagens e Concluses


Linguagens Formais e Autmatos - P. Blauth Menezes

9 Hierarquia de Classes de Linguagens e Concluses


9.1 Hierarquia de Chomsky

Constituda pelas classes & incluses prprias


Regulares ou Tipo 3 Livres do Contexto ou Tipo 2 Sensveis ao Contexto ou Tipo 1 Recursivamente Enumerveis ou Tipo 0

Linguagens Formais e Autmatos - P. Blauth Menezes

Linguagens Recursivamente Enumerveis ou Tipo 0 Linguagens Sensveis ao Contexto ou Tipo 1 Linguagens Livres do Contexto ou Tipo 2

Linguagens Regulares ou Tipo 3

Noam Chomsky definiu estas classes como (potenciais) modelos para linguagens naturais
6

Linguagens Formais e Autmatos - P. Blauth Menezes

Linguagens de programao
nem sempre so tratadas adequadamente na Hierarquia de Chomsky

Existem linguagens que no so livres do contexto para as quais


poder dos formalismos sensveis ao contexto excessivo inadequados principalmente no que se refere complexidade

Conhecimento das linguagens sensveis ao contexto


relativamente limitado dificulta o seu tratamento

Linguagens Formais e Autmatos - P. Blauth Menezes

Exemplos de problemas que no Livres do Contexto


mltiplas ocorrncias de um mesmo trecho de programa como a declarao de um identificador e suas referncias de uso anlogo a { wcw w palavra de {a, b}* } alguns casos de validao de expresses com variveis de tipos diferentes associao de um significado (semntica) de um trecho de programa anlise de um conjunto de informaes (dependentes de contextos) como identificadores, ambientes, tipos de dados, localizao, seqncias de operaes, etc

Linguagens Formais e Autmatos - P. Blauth Menezes

Para algumas linguagens de programao


Classe das Linguagens Livres do Contexto excessiva Classe das Linguagens Regulares, insuficiente

Linguagem Livre do Contexto Determinstica


pode ser denotada por um Autmato com Pilha Determinstico possvel implementar (facilmente) um reconhecedor com tempo de processamento proporcional a 2n n o tamanho da entrada muito mais eficiente que o melhor algoritmo conhecido para as linguagens livres do contexto

Linguagens Formais e Autmatos - P. Blauth Menezes

De qualquer forma, o estudo das Linguagens Livres do Contexto tem sido de especial interesse
permitem uma representao simples da sintaxe adequada para estruturao formal e para anlise computacional

Entretanto, o estudo das Linguagens Livres do Contexto tem mostrado problemas no-solucionveis
determinar se uma gramtica ambgua existem duas ou mais rvores de derivao distintas para uma mesma palavra no existe um algoritmo que verifique a igualdade de duas linguagens dificulta otimizao e teste de processadores de linguagens

Linguagens Formais e Autmatos - P. Blauth Menezes

10

Portanto, dependendo da linguagem e dos objetivos do trabalho


estudos especficos eventualmente fora da Hierarquia de Chomsky so recomendados ou necessrios exemplo apresentado Classe de Linguagens Recursivas

Linguagens Formais e Autmatos - P. Blauth Menezes

11

9 - Hierarquia de Classes de

Linguagens e Concluses

9.1 Hierarquia de Chomsky 9.2 Concluses 9.3 Leitura Complementar: Gramtica de Grafos

Linguagens Formais e Autmatos - P. Blauth Menezes

12

9.2 Concluses

Linguagens Formais oferecem meios para modelar e desenvolver ferramentas que


especificam linguagens processos de anlise propriedades limitaes algortmicas

Linguagens Formais e Autmatos - P. Blauth Menezes

13

Alguns problemas possuem questes em aberto


traduo de linguagens, com nfase nas naturais exploso de estados dos autmatos finitos desenvolvimento de solues (possivelmente) complexas exige um nmero excessivo de estados importante tema de pesquisa tratamento de linguagens n-dimensionais, nfase bi/tridimensionais imagens animaes sistemas biolgicos: simulao do desenvolvimento de sistemas vivos), tanto no plano, quanto no espao sistemas concorrentes (eventualmente distribudos e/ou comunicantes): especificao formal e prova de propriedades

Linguagens Formais e Autmatos - P. Blauth Menezes

14

Limitao do trabalho desenvolvido


formalismos desenvolvidos no so adequados para o tratamento de problemas complexos no possuem construes composicionais em suas definies sem qualquer estruturao modular ou hierrquica

Algumas construes composicionais foram exploradas


unio, interseco, complemento, etc limitadas em termos de expressividade

Linguagens Formais e Autmatos - P. Blauth Menezes

15

Construes composicionais mais ricas: inspiradas em Teoria das Categorias


constituem uma lgebra sobre os formalismos com operaes expressivas desenvolvimento de solues complexas de forma simples em grande parte dos casos, corretas por construo abordagem: transcende o objetivo da disciplina importante linha de pesquisa para quem deseja dar continuidade aos estudos

Linguagens Formais e Autmatos - P. Blauth Menezes

16

9 - Hierarquia de Classes de

Linguagens e Concluses

9.1 Hierarquia de Chomsky 9.2 Concluses 9.3 Leitura Complementar: Gramtica de Grafos

Linguagens Formais e Autmatos - P. Blauth Menezes

17

9.3 Leitura Complementar: Gramtica de Grafos


Uma abordagem s linguagens n-dimensionais Idia bsica das gramticas de grafos


anloga das Gramticas de Chomsky

Gramtica de Grafos
regras de produo: pares, mas de grafos derivao: substituio de um subgrafo de acordo com uma regra de produo

Linguagens Formais e Autmatos - P. Blauth Menezes

18

Gramticas de grafos
caso particular das gramticas categoriais nenhum conceito de Teoria das Categorias formalmente introduzido

Linguagens Formais e Autmatos - P. Blauth Menezes

19

Gramticas categoriais podem ser definidas sobre


palavras grafos conjuntos parcialmente ordenados redes autmatos mquinas linguagens de programao , desde que sejam satisfeitas determinadas condies

Adicionalmente, as derivaes so generalizadas

Linguagens Formais e Autmatos - P. Blauth Menezes

20

Exp: Gramtica de Grafos: PacMan


Jogo PacMan (simplificado) tabuleiro PacMan conjunto de fantasmas conjunto de mas


Linguagens Formais e Autmatos - P. Blauth Menezes

21

Palavra da linguagem nodos pretos lugares do tabuleiro arestas caminhos possveis entre dois lugares PacMan, fantasmas e mas nodos com simbologia prpria arcos denotam o posicionamento no tabuleiro nodo branco ma j comida fase em que se encontra o jogo (no caso, segunda fase)

Linguagens Formais e Autmatos - P. Blauth Menezes

22

Regras de produo

move:

come:

mata:

Linguagens Formais e Autmatos - P. Blauth Menezes

23

Grafo resultante da aplicao da regra move


Linguagens Formais e Autmatos - P. Blauth Menezes

24

Comparativamente com as gramticas de Chomsky


em geral, no distinguem entre variveis e terminais todos os smbolos (grafos) so tratados como terminais possui smbolo inicial (grafo inicial) linguagem gerada conjunto de grafos que podem ser gerados via derivaes a partir do grafo inicial

Linguagens Formais e Autmatos - P. Blauth Menezes

25

Exerccio: Jogo da Velha


jogadas alternadas de dois jogadores condio de parada quando um dos jogadores completa uma linha de trs casas (horizontal, vertical ou oblqua)

Linguagens Formais e Autmatos - P. Blauth Menezes

26

Exerccio: Jogo de Damas


jogador com as pedras brancas inicia o jogo Dica na definio da regra comer uma pedra, lembre-se de que o movimento sempre em linha reta o no pode fazer uma curva de 90 no tabuleiro

Linguagens Formais e Autmatos - P. Blauth Menezes

27

Linguagens Formais e Autmatos


P. Blauth Menezes 1 2 3 4 5 6 7 8 9 Introduo e Conceitos Bsicos Linguagens e Gramticas Linguagens Regulares Propriedades das Linguagens Regulares Autmato Finito com Sada Linguagens Livres do Contexto Propriedades e Reconhecimento das Linguagens Livres do Contexto Linguagens Recursivamente Enumerveis e Sensveis ao Contexto Hierarquia de Classes e Linguagens e Concluses
28

Linguagens Formais e Autmatos - P. Blauth Menezes

Linguagens Formais e Autmatos


P. Blauth Menezes
blauth@inf.ufrgs.br

Departamento de Informtica Terica Instituto de Informtica / UFRGS

Linguagens Formais e Autmatos - P. Blauth Menezes

29