Universidade de Évora
Departamento de Matemática
Programa da disciplina:
- Linguagens Formais e Autómatos
do 5º semestre lectivo da licenciatura em Engenharia Informática
Semestre Ímpar de 1998/1999
Responsável: José Júlio Alves Alferes
Horas Teóricas: 2 por semana
Horas Práticas Laboratoriais: 2 por semana
Objectivos:
Esta disciplina tem por objectivo estudar os conceitos de linguagens formais, gramáticas livres de contexto e de autómatos, com aplicação prática à análise sintáctica de programas.
Programa:
Introdução e motivação para a disciplina
- Apresentação da disciplina
- Pré-requisitos matemáticos
- Teoria de conjuntos
- Relações e funções
- Relações de equivalência
- Indução
- Conceitos básicos de linguagens
- "String" e linguagens
- Especificação finita de linguagens
- Expressões regulares
Gramáticas livres de contexto
- Definição e geração de linguagens
- Derivação e árvores de derivação
- Gramáticas regulares
Introdução à análise sintática
- Derivações esquerdas e direitas
- Grafo correspondente a uma gramática
- Ambiguidade nas gramáticas
- Analisadores sintáticos "top-down"
- Com pesquisa em largura
- Com pesquisa em profundidade
- Analisadores sintáticos "bottom-up"
- Com pesquisa em largura
- Com pesquisa em profundidade
Formas normais de gramáticas
- Forma Normal de Chomsky
- Forma Normal de Greibach
Autómatos finitos
- Autómatos finitos deterministicos
- Autómatos finitos não-deterministicos com transições-
l
Remoção de não-determinismo
Minimização de autómatos
Relação entre autómatos finitos, gramáticas regulares e expressões regulares.
Linguagens não-regulares, e "pumping" lemma.
Autómatos de pilha
- Definições básicas e construção de autómatos para linguagens livres de contexto
- Autómatos de pilha e gramáticas livres de contexto
Análise sintática deterministica
- Gramáticas LL(K)
- Gramáticas LR(K)
Bibliografia
Referência de base:
M. Sudkamp, "Languages and Machines", Addison Wesley, 1997.
Docentes:
Teóricas: José Alferes
Práticas: José Alferes
Avaliação:
Duas frequências (sendo a nota final a média aritmética) ou exame final.