Linguagens Formais e Autômatos (LFA)

Documentos relacionados
Linguagens Formais e Autômatos. Apresentação do Plano de Ensino

Linguagens Formais e Autômatos Apresentação da Disciplina

Linguagens Formais e Autômatos. Apresentação do Plano de Ensino

I.2 Introdução a Teoria da Computação

Linguagens Formais e Autômatos. Apresentação do Plano de Ensino

IBM1088 Linguagens Formais e Teoria da Computação

INE5317 Linguagens Formais e Compiladores AULA 3: Introdução a Teoria da Computação

Apostila 06. Objetivos: Estudar a Computabilidade Estudar a Decidibilidade Estudar a Redutibilidade

Apostila 01 Fundamentação da Teoria da Computação e Linguagens Formais

Linguagens Formais e Autômatos

Máquina de Turing Linguagens Sensíveis ao Contexto e Enumeráveis Recursivamente

Procedimentos e Algorítmos Programas e Linguagens de Programação Tese de Church-Turing Formas de Representação de Linguagens

Linguagens Formais e Problemas de Decisão

PCC104 - Projeto e Análise de Algoritmos

1 INTRODUÇÃO E CONCEITOS BÁSICOS

Linguagens Formais e Autômatos (LFA)

Turma A - Segundas e Quartas das 8h30min - 10h10min Turma B - Segundas e Quartas das 10h30min - 12h10min

Teoria da Computação. Computabilidade e complexidade computacional

Linguagens Formais e Autômatos

Prof. Dr. Marcos Castilho. Departamento de Informática/UFPR. 22 de Fevereiro de 2018

SCC Introdução à Teoria da Computação

SCC Capítulo 3 Linguagens Sensíveis ao Contexto e Autômatos Limitados Linearmente

SCC-5832 Teoria da Computação

Linguagens Formais e Autômatos 02/2016. LFA Aula 01 24/10/2016. Celso Olivete Júnior.

Teoria dos Grafos Aula 16

Inteligência Artificial. Aula 1 Prof. Nayat Sánchez Pi

Máquinas Universais. Máquina de Turing. Celso Olivete Júnior.

INF 1771 Inteligência Artificial

SCC Teoria da Computação e Linguagens Formais

Construção de Compiladores Aula 16 - Análise Sintática

2. DISCIPLINA REQUISITO (RECOMENDAÇÃO) 3. INDICAÇÃO DE CONJUNTO (BCC) Obrigatória TEORIA: 60 LABORATÓRIO: 30

Compiladores. Análise lexical. Plano da aula. Motivação para análise lexical. Vocabulário básico. Estrutura de um compilador

Juliana Kaizer Vizzotto. Universidade Federal de Santa Maria. Disciplina de Teoria da Computação

UNIVERSIDADE ESTADUAL DE MARINGÁ DEPARTAMENTO DE INFORMÁTICA

Linguagens Formais e Autômatos 02/2015. LFA Aula 02. introdução 28/09/2015. Celso Olivete Júnior.

Linguagens recursivamente enumeráveis

CT-200 Fundamentos de Linguagens Formais e Automata - Aula 01 - In...

Linguagens Formais. Aula 01 - Conceitos Básicos. Prof. Othon Batista Mestre em Informática

UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO. Prof.ª Danielle Casillo

INE5317 Linguagens Formais e Compiladores AULA 5: Autômatos Finitos

MCZA Processamento de Linguagem Natural Introdução

Máquinas de Turing para construção: Foram encontrados dois modelos que se destacaram em nossas pesquisas.

a n Sistemas de Estados Finitos AF Determinísticos

Capítulo A máquina de Turing (TM) padrão Combinações de máquinas de Turing A Tese de Turing. ADC/TC/Cap.9/ /LEI/DEIFCTUC 375

IBM1088 Linguagens Formais e Teoria da

Mecanismos de Interrupção e de Exceção, Barramento, Redes e Sistemas Distribuídos. Sistemas Operacionais, Sistemas

ECO026 TEORIA DA COMPUTAÇÃO. Prof: Rafael Santos Site:

CRÉDITOS DO CURSO. Carga Horária Créditos IN1030 Seminários 30 2

Modelos de Computação

Teoria da Computação. Aula 01

Lógica e Computação. Uma Perspectiva Histórica

Linguagens Livres do Contexto. Adaptado de H. Brandão

UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO. Prof.ª Danielle Casillo

Linguagens Formais e Autômatos (LFA)

Aula 3: Autômatos Finitos

O que é Inteligência Artificial?

LINGUAGENS FORMAIS Definições. Desenvolveram-se na História em função da necessidade dos grupos humanos que as empregavam

UNIVERSIDADE ESTADUAL DE MARINGÁ DEPARTAMENTO DE INFORMÁTICA

Lógica Computacional

Inteligência Artificial. Aula 2

Gramáticas Livres de Contexto

Teoria da Computação. Unidade 3 Máquinas Universais. Referência Teoria da Computação (Divério, 2000)

Modelos de Computação Folha de trabalho n. 10

O que é a Teoria em Ciência da Computação. Introdução à Ciência da Computação Mário S. Alvim

Informática PUC-Rio. Aula de 14/08/2013. Linguagens e Autômatos Exercícios. cios com JFLAP e Ruby. Clarisse S. de Souza, 2013

INF1007 Programação II

Disciplina: LINGUAGENS FORMAIS, AUTÔMATOS E COMPUTABILIDADE Prof. Jefferson Morais

Estudo de Linguagens Formais: Conceitos e Prática Aplicados na Construção de um Semáforo

Linguagens Formais e Autômatos P. Blauth Menezes

Teoria da Computação. Computabilidade

Linguagens de Domínio Específico

Linguagens Formais e Autômatos P. Blauth Menezes

Teoria da Computação. Capítulo 1. Máquina de Turing. Prof. Wanderley de Souza Alencar, MSc.

Aula 6 GERATIVISMO. MARTELOTTA, Mário Eduardo. Manual de Linguística. São Paulo: Contexto, 2012, p

Algoritmos e Programação de Computadores Disciplina:

Prova 1 de INF1626 Linguagens Formais e Autômatos

Aula 3: Autômatos Finitos

História e evolução dos computadores. Professor Leonardo Cabral da R. Soares

Transcrição:

Linguagens Formais e Autômatos (LFA) Aula de 12/08/2013 Introdução 1

2

Grade Curricular para Ciência da Computação 3

Grade Curricular para Engenharia da Computação

Grade Curricular para Sistemas de Informação

Mecanização do Raciocínio David Hilbert Alan Turing ENIGMA Decifrado (II Guerra Mundial) Bletchley Park & Colossus http://www.bbc.co.uk/history/code_breaking/ 6

Tradução Automática e Compreensão de LN Turing (1950): Teste para Raciocinadores Mecânicos (Teste de Turing) Tradução Automática de Documentos (Russo <-> Inglês) durante a Guerra Fria Linguística Formal para Linguagens Artificiais e Humanas (Noam Chomsky, 1953, 1957 e 1965) Relatório ALPAC (1966) Evolução da Área desde ALPAC até 2013, considerando-se interfaces de sistemas, busca e mineração de texto, tradução automática, entre outros. http://bigthink.com/videos/noam-chomsky-on-languages-great-mysteries 7

Programa de INF1626 em 2013-2 8

Computação, Representação e Processamento Simbólico Representação: Requisito para a mecanização de tarefas mentais humanas Como representar conjuntos infinitos de conhecimentos, conceitos, sentenças, etc? Através de uma LINGUAGEM. Exemplo rápido do que está em jogo numa representação linguística passível de tratamento mecânico. Baseado em: Douglas R. Hofstadter (1989) Gödel, Escher, Bach: An Eternal Golden Braid. Vintage Books Edition Capítulo II (Meaning and Form in Mathematics) 9

Significado do Raciocínio Mecânico Suponhamos um sistema simplíssimo com 3 representações apenas: p, q e -. Podemos expressar infinitas verdades (conhecimentos válidos) com ele através das seguintes regras: 1. É verdade que X,p,-,q,X,- para todo X igual a uma sequência de hífens (por exemplo, -, --, ---, ). 2. Também é verdade que X,p,Y,-,q,Z,- se for verdade X,p,Y,q,Z. Exemplos de verdades: -p--q--- --p---q----- -p-q-- Mas, para que serve isto? O que significa? 10

Isomorfismos induzem significados Quando há uma correspondência biunívoca entre uma representação e uma verdade, crença, possibilidade ou outro conceito que possamos ter em mente, ( conhecer ), a representação passa a significar este conhecimento para nós. E podemos melhorar a representação a partir disto. Experimentem trocar - por, p por + e q por =. 11

Padrões Significativos Motivam Representações Algo muito diferente: Representação de padrões de conversas de elevador Padrões: 1. Você diz Bom dia ; Quem está no elevador responde Bom dia. 2. Você diz Bom dia ; Quem está no elevador responde Bom dia ; Você diz <P>; Quem está no elevador responde <R>; Você diz: Até logo ; Quem está no elevador responde Até logo. --PQ// --PQPQ// --PQ PQ// 12

Computação e Processamento Simbólico Uma primeira aproximação Padrões de conhecimento Correspondências com representações escolhidas Regras de geração (inferência, derivação) de todas as instâncias (potencialmente infinitas) de representação válidas biunivocamente correspondentes a conhecimentos válidos 13

Computação e Processamento Simbólico Uma primeira aproximação Padrões de conhecimento Correspondências com representações escolhidas Regras de geração (inferência, derivação) de todas as instâncias (potencialmente infinitas) de representação válidas biunivocamente correspondentes a conhecimentos válidos Máquinas capazes de reconhecer (decidir se) uma cadeia qualquer de símbolos é ou não uma representação de conhecimento válida e se for- de sinalizar a correspondência entre ela o conhecimento representado. Imaginemos máquinas capazes de: a) Ler, um símbolo contido da representação b) Mover-se para o próximo símbolo não lido E dotadas de: 1. Um conjunto de estados (inicial, intermediários e finais) 2. Regras de transição entre estados, determinadas pelos símbolos lidos na representação. 14

Processando mecanicamente conversas de elevador - (corresponde a Bom dia ) / (corresponde a Até logo ) P (corresponde a algo que você diz) Q (corresponde a algo que lhe respondem) A nossa máquina tem os seguintes estados: I, F, q1, q2, q3 e q4 Ela sempre inicia as transições no início da representação e no estado I. Ela para se não houver mais símbolos a ler na representação, ou se no estado em que ela está não houver transições definidas (para o símbolo que está lendo).

Processando mecanicamente conversas de elevador - (corresponde a Bom dia ) / (corresponde a Até logo ) P (corresponde a algo que você diz) Q (corresponde a algo que lhe respondem) A nossa máquina tem os seguintes estados: I, F, q1, q2, q3 e q4 Ela sempre inicia as transições no início da representação e no estado I. Ela para se não houver mais símbolos a ler na representação, ou se no estado em que ela está não houver transições definidas (para o símbolo que está lendo). Conversa = -,-,BatePapo, /,/ BatePapo = [P,Q]* Obs: * indica uma repetição de zero a n vezes. As regras de transições entre os estados podem ser representadas assim: - I q1 q2 q3 F P - / / q4 Q 16

O que vamos estudar em LFA: Sistemas de representação Máquinas (mecanismos) abstratos capazes de reconhecer sistemas de representação (reconhecedores) Correspondências entre sistemas de representação e reconhecedores Tipos e propriedades de: Sistemas de representação Reconhecedores Por que é importante saber estas coisas? Noções gerais sobre as condições de processamento dos sistemas de representação Limites de computabilidade Complexidade do processamento 17

Visita ao Website da Disciplina www.inf.puc-rio.br/~inf1626 18

Para lembrar: Consulte sempre para baixar slides, listas de exercícios, acompanhar o programa de curso, controlar datas de provas, etc. Não é preciso login/senha para entrar. Temos um assistente de docência, Luiz M. Afonso, doutorando do DI. Ele nos ajudará com a correção de exercícios e preparação para provas. Avisos para a turma serão SEMPRE circulados pelo sistema de comunicação eletrônica oficial da PUC, o PUC Online. Mantenham suas informações de cadastro atualizadas para não perderem comunicações importantes sobre provas, notas, aulas extra e similares. Sempre que for preciso, entrem em contato com a professora. Seus emails serão respondidos em até 24 horas, desconsiderados finais de semana e feriados. Caso não o sejam, reenviem a mensagem. Ela pode não ter chegado ou não ter sido identificada como proveniente de um aluno da turma. Para evitar este último caso, sempre incluam na assinatura de seu email o seu nome e número de matrícula. 19

Recursos Adicionais & Sugestões Culturais Prefácio do Livro-Texto da Disciplina http://www.univasf.edu.br/~marcus.ramos/livro-lfa/prefacio.pdf Para quemlêeminglês: Amostras do livro A Concise Introduction to Languages and Machines (Alan P. Parkes, Springer 2008) Prefácio http://www.springer.com/cda/content/document/cda_downloaddocument/9781848001206-p1.pdf?sgwid=0-0-45-733817-p173781620 Apresentação de linguagens formais http://www.springer.com/cda/content/document/cda_downloaddocument/9781848001206-c2.pdf?sgwid=0-0-45-733851-p173781620 Sugestões Culturais O livro dos códigos (Simon Singh) Editora Record Websites em Português: http://turing100.fee.unicamp.br/ http://www.ufrgs.br/alanturingbrasil2012/expo.html Website em Inglês http://www.bbc.co.uk/history/places/bletchley_park http://www.bbc.co.uk/history/code_breaking/ 20