UEZO - CURSO DE CIÊNCIA DA COMPUTAÇÃO Primeiro semestre de 2013_2.

25
UEZO - CURSO DE CIÊNCIA DA COMPUTAÇÃO Primeiro semestre de 2013_2

Transcript of UEZO - CURSO DE CIÊNCIA DA COMPUTAÇÃO Primeiro semestre de 2013_2.

UEZO - CURSO DE CIÊNCIA DA COMPUTAÇÃOPrimeiro semestre de 2013_2

DISCIPLINA: LINGUAGENS FORMAIS E AUTÔMATOSProf. Dr. Macário Costae-mail: [email protected]

LINGUAGENS FORMAIS E AUTÔMATOSAula Inaugural

CONTEÚDO Introdução Motivação Modelos Ementa - Cronograma Bibliografia

INTRODUÇÃO Linguagens formais? Autômatos? Máquinas de estados?

Vamos começar com um exemplo!

EXEMPLO

Problema: elaborar um modelo computacional para representar uma máquina de bebidas.

MÁQUINA DE BEBIDAS 1º passo: identificar os elementos básicos

da máquina de bebidas.

2º passo: estabelecer as relações (ações) entre os elementos básicos da máquina.

MÁQUINA DE BEBIDAS 3º passo: escolher um modelo

computacional para definir a máquina de bebidas.

4º passo: modelo escolhido máquina de máquina de estados finitos (autômatos)estados finitos (autômatos)

MÁQUINA DE BEBIDAS Rascunho do modelo utilizando uma

representação similar à grafos.

Interface do Interface do programaprograma

MODELOS COMPUTACIONAIS Modelagem: dado um determinado

problema, identificar o problemas suas características e elementos buscando um modelo que retrate fielmente os aspectos desejados.

Ao final deve-se ter uma representação da solução computacional para o problema.

MODELOS Modelagem estática, dinâmica, funcional, organizacional, etc. cada tipo de modelagem tem um enfoque

diferenciado em determinada característica, tempo, objeto, ...

MODELOS FORMAIS Modelos formaisModelos formais exigem um estudo

aprofundado, porém asseguram a qualidade e correção na modelagem do problema.

Através da teoria de autômatos iremos estudar alguns modelos formais.

TEORIA DE AUTÔMATOS Autômatos lidam com definições e

propriedades de modelos matemáticos (formais) de computação.

Modelos aplicados em diversas áreas da ciência da computação.

AUTÔMATOS - APLICAÇÕES Aplicações dos modelos formais de

autômatos:

processamento de texto, compiladores, desenvolvimento de hardware;Linguagem de programação, inteligência artificial;Primeiro uso: modelagem de redes

neurais.

MOTIVAÇÃO Aplicações computacionais (previamente

citadas); Desenvolvimento do aprendizado

algorítmico; Estudo dos fundamentos da computação.

TEORIA DA COMPUTAÇÃO Compõe a base sólida da ciência da

computação.Áreas de estudo: lógica, matemática

discreta, linguagens formais, teoria de autômatos, máquina de Turing, complexidade, etc.

Pilares do desenvolvimento computacional, banco de dados, redes, linguagens de programação, IA, etc.

TEORIA DA COMPUTAÇÃO Complexidade computacional, Computabilidade, Teoria de Autômatos.

Questões fundamentais de investigação nessas áreas...

QUESTÕES Limitações computacionais

O que é solucionávelsolucionável? O que não é solucionável?

ClassificaçãoClassificação de problemasFácilDifícilIntratável

TEORIA DA COMPUTAÇÃO Teoria de Autômatos fornece

ferramentas para investigar complexidade e computabilidade.

Modelos teóricos computacionaisConstrução de modelos reais de

computação

impacto segurança - criptografia

EMENTA

Introdução à Linguagens Formais; Alfabeto, palavra e linguagem; Linguagens regulares e Autômatos Finitos; Gramáticas e expressões regulares Linguagens e Gramáticas Livre de Contexto; Autômatos de Pilha Linguagens sensíveis ao contexto Máquina de Turing

A DISCIPLINA DE LINGUAGENS FORMAIS Dúvidas?

Mande e-mail para: [email protected]

Avaliações: 3 provas; 5 listas de exercícios; 3 trabalhos

2 trabalhos práticos com simulador.

15/08 – 1. Apres. Aula 1 22/08 – 2. 29/08 – 3. 05/09 – 4. 12/09 – 5. 19/09 – 6. 26/09 – 7. 03/10 – 8. 10/10 – 9. Jornada de

Ciência e Tec.

17/10 – 10. AV1 24/10 – 11. 31/10 – 12. 07/11 – 14. 14/11 – 15. 21/11 – 16. 28/11 – 17. AV2 05/12 – 18. 12/12 – 19. AV3 19/12 – 20.

Plano de Aula / Datas Importantes

BIBLIOGRAFIA HOPCROFT, John E., ULLMAN, Jeffrey D.e

MONTWANI, R. Introdução à Teoria de Autômatos, Linguagens e Computação. Tradução da 2. Ed. Original de Vandenberg D. de Souza. – Rio de Janeiro : Elsever, 2002 – 10ª. Reimpressão.

AHO, Alfred V., SETHI, Ravi, ULLMAN, Jeffrey D. Compiladores: princípios, técnicas e ferramentas. Rio de Janeiro: LTC: 1995.

BIBLIOGRAFIA COMPLEMENTAR LEWIS, Harry R. & PAPADIMITRION, Christos H.

Elementos de Teoria da Computação. 2.ed. Porto Alegre, Bookman, 2000.

LUCCHESI, Cláudio L. et alii. Aspectos teóricos da computação. Rio de Janeiro, IMPA, 1979. 292p.

MENEZES, Paulo Blauth. Linguagens formais e autômatos. Porto Alegre, Sagra Luzzatto, 1998. 160p.

SUDKAMP, Thomas A. Languages and machines: an introduction to the theory of Computer Science. 2.ed. Reading, Addison-Wesley, 1997. 569 p.