LINGUAGENS FORMAIS E AUTÔMATOS
|
|
|
- Yago Botelho da Conceição
- 8 Há anos
- Visualizações:
Transcrição
1 LINGUGENS FORMIS E UTÔMTOS Introdução reve Histórico Em 1936, lan Turing (matemático) propôs a possibilidade de se construir um computador digital através da formalização de um procedimento em tempo finito. Turing estabeleceu um modelo formal de algoritmo. Ele reduziu os vários sistemas formais a um sistema básico, tornando possível o computador digital. Um sistema formal é como um jogo rigorosamente definido, onde regras para manipulação dos símbolos são especificadas. Neste é estabelecido a natureza dos símbolos, a situação inicial e uma lista de movimentos permitidos a uma dada posição. lan Turing criou uma máquina que executava operações sobre a teoria dos números por meio de regras de um sistema formal, embutidas na mesma. Isso gerou uma nova perspectiva para formalizar a matemática. Turing descobriu que os números são mais importantes como símbolos. o longo Church apresentou a Tese de Church qualquer procedimento pode ser descrito por uma máquina de Turing, ou seja, qualquer processo aceito por nós homens como um algoritmo é precisamente o que uma Máquina de Turing pode fazer. Em outras palavras, qualquer computação que pode ser descrita por uma máquina de Turing pode ser executada mecanicamente e vice-versa teoria das linguagens formais surgiu nas décadas de 1940 e Seu objetivo inicial era modelar a função do cérebro, desenvolvendo teorias relacionadas com as linguagens naturais. Em 1969, S. Cook estendeu o estudo de Turing do que podia e do que não podia ser calculado. Cook conseguiu separar os problemas que podem ser resolvidos de forma eficiente por computadores daqueles problemas que podem em principio ser resolvidos, mas que, na prática, levam tanto tempo que os computadores são inúteis para solucionar todas as instâncias do problema, exceto aquelas muito pequenas, Os problemas dessa última classe são chamados intratáveis ou NP-difíceis. J. E. Hopcroft Porque Estudar LF? presenta uma fundamentação matemática da computação (fornece provas). É pré-requisito essencial para a disciplina de compiladores Dá suporte à verificação da computabilidade de problemas (problemas reais têm solução computacional).
2 Para entender a complexidade de um problema. Um problema pode ser fácil ou difícil de se resolver. complexidade de algoritmos pode fazer esta classificação baseando-se na dificuldade computacional do problema. Para entender a teoria computacional. lguns problemas básicos não podem ser resolvidos. Ela classifica os problemas em solúveis e não solúveis Sintaxe e Semântica Linguagens Formais preocupa se com os problemas sintáticos das linguagens. ssim, inicialmente, é importante introduzir os conceitos de sintaxe e de semântica de linguagens. Paulo. Menezes sintaxe e a semântica são dois componentes importantes das linguagens de programação. Sintaxe é conjunto de regras formais que especifica a composição de programas (letras,digitos, ), while, do....) e semântica é o conjunto de regras que especificam o significado de algum programa sintaticamente válido. Sintaxe é dividida em: 1. nálise Léxica (regras léxicas): São regras que especificam um conjunto de caracteres que constituem um alfabeto (símbolos elementares) é a maneira como tais caracteres podem ser combinados. Ela efetua a validação da formação das palavras de uma linguagem. 2. nálise Sintática (regras sintáticas): São regras que definem a forma da linguagem. Realiza a verificação da estrutura sintática da linguagem (sintaxe possui construções matemáticas bem definidas e universalmente reconhecidas). Teoria dos Conjuntos Conjunto é um grupo de objetos representados como uma unidade (sem repetições e sem qualquer ordenação). Ex.: conjunto das vogais. Elementos são membros ou objetos num conjunto. Ex.: a,e,i,o,u Dizemos que um elemento pertence ( ) ou não pertence ( ) quanto ele está ou não está em um conjunto, respectivamente. Ex.: a pertence ao conjunto das vogais Diagrama de Venn é a forma de se representar graficamente na teoria dos conjuntos. a e i o u universo (U) Conjunto Conjunto
3 é um subconjunto de se e somente se todo elemento de pertence também a, denotamos a continência da seguinte forma: {a, b} {a, b, c, d} {a, b, c} {b, c, d, e} Sendo,, e C três conjuntos arbitrários valem as seguintes propriedades: (reflexiva) 3. ( e ) = (anti-simétrica) 4. ( e C) C (transitiva) Dois conjuntos são iguais ( = ) se e somente se têm os mesmos elementos, caso contrário. Dados dois conjuntos e, chama-se reunião de e o conjunto formado pelos elementos que pertencem a ou a. {a,b} U {c, d} = {a, b, c, d} ; U = ; {a, b, c} U = {a, b, c}; U = U Dados dois conjuntos e, chama-se intersecção de e o conjunto formado pelos elementos que pertencem a e a. {a,b} {c, d} = (conjunto disjunto não tem elementos comum) {a, b, c} =
4 diferença de dois conjuntos é o conjunto formado pelos elementos de que não pertence a {a, b, c} {b, c, d, e} = {a} {a, b} {a, b, c, d, e} = = - O produto cartesiano de dois conjuntos ( x ) é o conjunto de todos os pares onde o primeiro elemento é um objeto de e o segundo e um elemento de. Se = {1, 2, 3} e = {1, 2} então x = { (1, 1), (1, 2), (2, 1), (2, 2), (3, 1), (3, 1)} O complementar de um conjunto, denominado, é o conjunto de todos os elementos que não pertence a. = ; U = U. definição de um conjunto pode ser dada através da: denotação por extensão onde é dada uma lista de todos os elementos do conjunto numa ordem qualquer, separados por vírgula e entre chaves, como por exemplo: V = {a,e,i,o,u} denotação por compreensão onde o conjunto é definido por sua propriedade, como por exemplo: P = {n N n é número par} lguns conjuntos bem conhecidos são: O conjunto dos números naturais, denotado por N. N={0,1,2,3,...} O conjunto dos números inteiros, denotado por Z. Z={...,-2,-1,0,1,2,...} O conjunto dos números reais, denotado por R. Conceitos ásicos Um alfabeto, denotado por, é um conjunto finito não vazio de símbolos. SCII e ECDIC são exemplos de alfabetos de computadores. Exemplos: = {a, b, c,... } = {0, 1} (alfabeto binário) = {verde, amarelo, azul, branco} Um símbolo do alfabeto pode ter mais de um caractere. única restrição que temos é que o conjunto de símbolos é finito. Podemos usar reticências para definir alfabetos extensos.
5 definição de palavra está intimamente relacionada com a de alfabeto. Uma palavra é um conjunto de símbolos de um alfabeto. Dado um, a sequência de símbolos a 1 a 2 a 3... a n é uma palavra sobre se e somente se, para cada i= 1, 2, 3,..., n, a i pertença ao alfabeto. Exemplos: Dado = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9 } palavras sobre : {0, 11, 9787, 33} -11 não é uma palavra sobre o alfabeto por causa do sinal (-) Dado = {a, b,..., z} palavras sobre : {casa, zebra} fa3 não é uma palavra sobre o alfabeto por causa do 3 Dado um alfabeto e uma palavra x = a 1 a 2 a 3... a n sobre ; x denota o comprimento (tamanho) de x. Isto é: a 1 a 2 a 3... a n = n. Exemplos: = {a, b, c,... z} amor = 4 verde = 5 = {verde, amarelo, azul, branco} verde = 1 azulamarelo = 2 Palavra de comprimento 0, isto é, palavra que não possui nenhum símbolo é denominada palavra vazia. Denotaremos a palavra vazia por ε (epsilon) (alguns autores utiliza N). Note que ε é uma palavra e não um símbolo, logo ε não pode pertencer a nenhum alfabeto. Um prefixo (ou sufixo) de uma palavra é qualquer sequência inicial (final) de símbolos contígua da palavra. Exemplos: Dado = {a, b, c} e a palavra abcb Prefixos: ε, a, ab, abc, abcb Sufixos: ε, b, cb, bcb, abcb Subpalavras: qualquer sufixo ou qualquer prefixo Dado o alfabeto, sejam x = a 1 a 2 a 3... a n e y = b 1 b 2 b 3... b n palavras sobre, a concatenação de x e y é denotada por xy = a 1 a 2 a 3... a n b 1 b 2 b 3... b n. concatenação, portanto, é formada pelos símbolos de x seguidos de y. Deve-se observar que: x + y = xy xy é diferente de yx. ordem é importante. xε = x εx = x
6 Exemplos: Dado = {a, b}, x = abab e y = babab xy = ababbabab yx = babababab x 2 = xx = abababab εx = abab Dado um alfabeto e um inteiro não negativo k, definimos: k = {x x é uma palavra sobre e x = k} k é o conjunto de todas as palavras sobre de comprimento k. Exemplo: Dado o = {0, 1} 1 = {0, 1} 2 = {00, 01, 10, 11} 0 = {ε} Dado um alfabeto definimos: * = U k=0 até k = 0 U 1 U = U k=1 até k = 1 U 2 U = * - {ε } * é o conjunto de todas as palavras possíveis sobre o alfabeto + é o conjunto de todas as palavras possíveis e não vazias sobre o alfabeto * é um conjunto infinito sobre, cada palavra que pertence * tem comprimento finito definição de linguagem está intimamente relacionada com a de alfabeto e palavra. Uma linguagem é um conjunto de palavras sobre um alfabeto. Normalmente denotaremos uma linguagem pela letra L. Exemplo: Dado = {a,b,c}, podemos definir a. L1 = {ab, b, ca, cc} b. L2 = todas as palavras sobre que terminam com o símbolo a c. L3 = conjunto de todas as palavras sobre que possuam a subpalavra ab d. L4 = {x x é uma palavra sobre e x = 4} = 4 Na matemática os objetos são números e as ferramentas são operações para manipulá-los, como: + e x. Na teoria da computação os objetos são linguagens e as ferramentas são operações especialmente formuladas para manipular as linguagens. Vamos definir três operações chamadas operações regulares: Sejam e linguagens 1. = {x x ou x } junta todas as palavras de e 2. = {xy x e y } coloca uma palavra de em frente de uma palavra de de todas as formas possíveis 3. * = {x 1 x 2..., x k k 0 e cada x i } junta qualquer quantidade de palavras de para formar uma nova palavra. é sempre uma palavra de *
7 Exemplo: Dados = {a, b,..., z}; L1 = {bom, ruim}; L2 = {garoto, garota} L1 L2 = {bom, ruim, garoto, garota} L1 L2 = {bomgaroto, bomgarota, ruimgaroto, ruimgarota} L1* = {, bom, ruim, bombom, ruimruim,... } Revisão Exercícios 1) Provar as Leis de Morgan. 1. ( ) = 2. ( ) = 2) Examine as seguintes descrições formais dos conjuntos e escreva uma breve descrição informal em português para cada conjunto abaixo. 1. {1, 3, 5,7,...} 2. {..., -4, -2, 0, 2, 4,...} 3. {n n = 2m para algum m em N} 3) Dê a descrição formal dos conjuntos abaixo: 1. o conjunto contento os números 1, 10, o conjunto contento todos os inteiros maiores que 5 3. o conjunto contento todos os naturais menores que 5 4. o conjunto contento a palavra aba 5. o conjunto contento a palavra vazia 6. o conjunto vazio 4) Dado ={x,y,z} e ={x,y} 1. é subconjunto de? 2. é subconjunto de? 3. O que é? 4. O que é? 5. O que é x? 6. O que é - Conceitos ásicos 1) Escreva 3 palavras para cada um dos alfabetos abaixo: a. = {GU,, L } b. = {0, 1,..., 9, a, b,..., z } c. = {Maria, João, José} d. = {:, =, 0, 1,..., 9} 2) Dado = {a, b} escreva
8 a. todas as possíveis palavras de comprimento 1 b. todas as possíveis palavras de comprimento 2 c. todas as possíveis palavras de comprimento 3 d. uma palavra qualquer de comprimento 15 3) Dado = {do, re, mi, fa, sol, la, si} determine os comprimentos das palavras abaixo: a. re = b. sidoremi = c. misimisimisi = d. rerererererere = 4) Dado = { do, re, mi, fa, sol, la, si} e a palavra doremifa sobre determine: a. todos os sufixos b. todos os prefixos c. todas as subpalavras que não são sufixos e nem prefixos 5) Considere os alfabetos abaixo: a. = {V, F} b. = {a, b, c} c. = {Maria, João, Casa, oneca} Escreva todas as palavras possíveis para 1. Palavras com comprimento 4 para o alfabeto a. 2. Palavras com comprimento 2 para o alfabeto b. 3. Palavras com comprimento 2 para o alfabeto c. 6) Dadas as palavras x = VVF, y= abbc, z = VF, escreva os resultados das concatenações abaixo: a. xxy b. xyz c. xzy d. z 2 y e. zεy 3 f. εyx g. x 2 y 2 h. xy 3 x 7) Dado = {V, F}, determine os conjuntos abaixo: a. 0 b. 1 c. 2 d. 3 8) Dado = {a, b, c}, determine os conjuntos 1 e 2
LFA. Aula 04. Sintaxe e Semântica. Conceitos Básicos Alfabeto Palavra Linguagem
LFA Aula 04 Sintaxe e Semântica. Conceitos Básicos Alfabeto Palavra Linguagem Linguagens Formais Linguagens formais se preocupam com os problemas sintáticos das linguagens. Sintaxe e Semântica Sintaxe
Linguagens Formais e Autômatos. Apresentação do Plano de Ensino
Linguagens Formais e Autômatos Apresentação do Plano de Ensino Linguagens Formais e Autômatos LFA Código - CMP4145 Turma A01 Engenharia da Computação e Ciência da Computação Horário: Segunda, Terça e Quinta.
Linguagens Formais e Autômatos. Apresentação do Plano de Ensino
Linguagens Formais e Autômatos Apresentação do Plano de Ensino Linguagens Formais e Autômatos LFA Código - CMP4145 Turma C01 Engenharia da Computação e Ciência da Computação Horário: Terça e Sexta: 20:30
LFA. Provas formais; Indução; Sintaxe e Semântica Teoria dos Conjuntos
LFA Provas formais; Indução; Sintaxe e Semântica Teoria dos Conjuntos Técnicas de Demonstração Um teorema é uma proposição do tipo: p q a qual, prova-se, é verdadeira sempre que: p q Técnicas de Demonstração
Alfabeto, Cadeias, Operações e Linguagens
Linguagens de Programação e Compiladores - Aula 3 1 Alfabeto, Cadeias, Operações e Linguagens 1.Conjuntos Para representar um determinado conjunto é necessário buscar uma notação para representá-lo e ter
Linguagens Formais. Aula 01 - Conceitos Básicos. Prof. Othon Batista Mestre em Informática
Linguagens Formais Aula 01 - Conceitos Básicos Prof. Othon Batista Mestre em Informática Sumário Introdução à Linguagem Alfabeto Cadeias de Símbolos, Palavras Tamanho de Palavra Prefixo, Sufixo ou Subpalavra
Um alfabeto é um conjunto de símbolos indivisíveis de qualquer natureza. Um alfabeto é geralmente denotado pela letra grega Σ.
Linguagens O conceito de linguagem engloba uma variedade de categorias distintas de linguagens: linguagens naturais, linguagens de programação, linguagens matemáticas, etc. Uma definição geral de linguagem
Teoria da Computação Aula 02 Introdução
Teoria da Computação Aula 02 Introdução Prof. Esp. Pedro Luís Antonelli Anhanguera Educacional Alfabeto Um alfabeto é um conjunto finito de símbolos ou caracteres, representado pela letra sigma ( ). Portanto:
UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO. Prof.ª Danielle Casillo
UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO TEORIA DA COMPUTAÇÃO Aula 02 Introdução à Teoria da Computação Prof.ª Danielle Casillo Linguagem: é uma forma precisa de expressar
1 INTRODUÇÃO E CONCEITOS BÁSICOS
1 INTRODUÇÃO E CONCEITOS BÁSICOS Inicia com uma breve história do surgimento e do desenvolvimento dos conceitos, resultados e formalismos nos quais a Teoria da Computação é baseada. Formalização dos conceitos
INE5317 Linguagens Formais e Compiladores AULA 3: Introdução a Teoria da Computação
INE5317 Linguagens Formais e Compiladores AULA 3: Introdução a Teoria da Computação bas eado em material produzido pelo prof Olinto Jos é Varela Furtado Ricardo Azambuja Silveira INE-CTC-UFSC E-Mail: [email protected]
Modelos de Computação
Modelos de Computação 2.ano LCC e LERSI URL: http://www.ncc.up.pt/~nam/aulas/0405/mc Escolaridade: 3.5T e 1P Frequência:Semanalmente serão propostos trabalhos aos alunos, que serão entregues nas caixas
Linguagens Formais e Autômatos P. Blauth Menezes
Linguagens Formais e Autômatos P. Blauth Menezes [email protected] Departamento de Informática Teórica Instituto de Informática / UFRGS Matemática Discreta para Ciência da Computação - P. Blauth Menezes
I.2 Introdução a Teoria da Computação
I.2 Introdução a Teoria da Computação O que é? Fundamento da Ciência da Computação Tratamento Matemático da Ciência da Computação Estudo Matemático da Transformação da Informação Qual sua importância?
Juliana Kaizer Vizzotto. Universidade Federal de Santa Maria. Disciplina de Teoria da Computação
Universidade Federal de Santa Maria Disciplina de Teoria da Computação Quais são as capacidades e limitações fundamentais dos computadores? Funções Computáveis Algoritmo: descrição finitade uma computação
Apostila 01 Fundamentação da Teoria da Computação e Linguagens Formais
Cursos: Bacharelado em Ciência da Computação e Bacharelado em Sistemas de Informação Disciplinas: (1493A) Teoria da Computação e Linguagens Formais, (4623A) Teoria da Computação e Linguagens Formais e
LINGUAGENS FORMAIS E AUTÔMATOS
LINGUAGENS FORMAIS E AUTÔMATOS O objetivo deste curso é formalizar a idéia de linguagem e definir os tipos de sintaxe e semântica. Para cada sintaxe, analisamos autômatos, ue são abstrações de algoritmos.
Linguagens Formais e Problemas de Decisão
Linguagens Formais e Problemas de Decisão Mário S. Alvim ([email protected]) Fundamentos de Teoria da Computação (FTC) DCC-UFMG (2018/02) Mário S. Alvim ([email protected]) Linguagens Formais e Problemas
Conceitos Básicos. Vocabulário Cadeias Linguagens Expressões Regulares Problema X Linguagem
Conceitos Básicos Vocabulário Cadeias Linguagens Expressões Regulares Problema X Linguagem Alfabeto ou Vocabulário: Conjunto finito não vazio de símbolos. Símbolo é um elemento qualquer de um alfabeto.
Linguagens Formais e Autômatos 02/2015. LFA Aula 02. introdução 28/09/2015. Celso Olivete Júnior.
LFA Aula 02 Linguagens regulares - introdução 28/09/2015 Celso Olivete Júnior [email protected] 1 Na aula passada... Visão geral Linguagens regulares expressões regulares autômatos finitos gramáticas
Procedimentos e Algorítmos Programas e Linguagens de Programação Tese de Church-Turing Formas de Representação de Linguagens
Procedimentos e Algorítmos Programas e Linguagens de Programação Tese de Church-Turing Formas de Representação de Linguagens 1 Introdução Estudar computação do ponto de vista teórico é sinônimo de caracterizar
UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO. Prof.ª Danielle Casillo
UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO Prof.ª Danielle Casillo Nome: Teoria da Computação Créditos: 4 60 horas Período: 2010.2 Horário: segundas e quintas das 20:40 às 22:20
IBM1088 Linguagens Formais e Teoria da
IBM1088 Linguagens Formais e Teoria da Computação Linguagens e Gramáticas Evandro Eduardo Seron Ruiz [email protected] Universidade de São Paulo E.E.S. Ruiz (USP) LFA 1 / 47 Frase do dia Sofremos muito com
Linguagens Formais e Autômatos
Linguagens Formais e Autômatos Prof. Yandre Maldonado - 1 Prof. Yandre Maldonado e Gomes da Costa Introdução Problema: definir um conjunto de cadeias de símbolos; Prof. Yandre Maldonado - 2 Exemplo: conjunto
Linguagens Formais e Autômatos
Linguagens Formais e Autômatos Prof. Yandre Maldonado - 1 Prof. Yandre Maldonado e Gomes da Costa Problema: definir um conjunto de cadeias de símbolos; Prof. Yandre Maldonado - 2 Exemplo: conjunto M dos
Linguagens Formais e Autômatos. Apresentação do Plano de Ensino
Linguagens Formais e Autômatos Apresentação do Plano de Ensino Linguagens Formais e Autômatos LFA Código - CMP4145 Turma C01 Engenharia da Computação e Ciência da Computação Horário: Segunda e Quinta:
MATEMÁTICA. Aula 2 Teoria dos Conjuntos. Prof. Anderson
MATEMÁTICA Aula 2 Teoria dos Conjuntos Prof. Anderson CONCEITO Na teoria dos conjuntos, um conjunto é descrito como uma coleção de objetos bem definidos. Estes objetos são chamados de elementos ou membros
Matemática Discreta para Computação e Informática
Matemática Discreta para Computação e Informática P. Blauth Menezes [email protected] Departamento de Informática Teórica Instituto de Informática / UFRGS Matemática Discreta para Computação e Informática
Linguagens Formais e Autômatos
Linguagens Formais e Autômatos (notas da primeira aula 1 Definições básicas 1.1 Conjuntos Definição 1. Um conjunto é uma coleção de objetos, denominados elementos. Notação 1. Para indicar que um elemento
1 introdução. capítulo. O que é uma solução computável? Quais são os limites do que pode ser computado? Existem problemas sem solução computacional?
capítulo 1 introdução A ciência da computação é o conhecimento sistematizado da computação. Sua origem é milenar, tendo se desenvolvido em diferentes regiões e épocas. A teoria da computação é a base fundamental
INE5317 Linguagens Formais e Compiladores. AULA 4: Gramáticas
INE5317 Linguagens Formais e Compiladores AULA 4: Gramáticas bas eado em material produzido pelo prof Olinto Jos é Varela Furtado Ricardo Azambuja Silveira INE-CTC-UFSC E-Mail: [email protected] URL:
PCC104 - Projeto e Análise de Algoritmos
PCC104 - Projeto e Análise de Algoritmos Marco Antonio M. Carvalho Departamento de Computação Instituto de Ciências Exatas e Biológicas Universidade Federal de Ouro Preto 5 de dezembro de 2017 Marco Antonio
Teoria da Computação
Introdução Março - 2009 1 Noções e Terminologia Matemática Conjuntos Um conjunto é um grupo de objetos, chamados elementos ou membros, representado como uma unidade. O conjunto { 3, 41, 57} possui os elementos
Capítulo 2: Procedimentos e algoritmos
Capítulo 2: Procedimentos e algoritmos Para estudar o processo de computação de um ponto de vista teórico, com a finalidade de caracterizar o que é ou não é computável, é necessário introduzir um modelo
Pensamento. (Provérbio Chinês) Prof. MSc. Herivelto Nunes
Aula Introdutória Matemática Básica- março 2017 Pensamento Não creio em números, não creio na palavra tudo e nem na palavra nada. São três afirmações exatas e imóveis: o mundo está sempre dando voltas.
Aula1 Noções de matemática Discreta Técnicas de Demonstração. Prof. Dr. Ricardo Luis de Azevedo da Rocha
Aula1 Noções de matemática Discreta Técnicas de Demonstração Prof. Dr. Ricardo Luis de Azevedo da Rocha Matemática Discreta seleção de tópicos de Matemática essenciais para o estudo da Ciência da Computação
Teoria Elementar dos Conjuntos
Teoria Elementar dos Conjuntos Última revisão em 27 de fevereiro de 2009 Este texto é uma breve revisão sobre teoria elementar dos conjuntos. Em particular, importam-nos os aspectos algébricos no estudo
Prof. Dr. Marcos Castilho. Departamento de Informática/UFPR. 22 de Fevereiro de 2018
22 de Fevereiro de 2018 Motivação O que é um computador? O que é um algoritmo? Para que serve um algoritmo? Quando um algoritmo é bom? A análise de um algoritmo depende do computador? Motivação Em teoria
IBM1088 Linguagens Formais e Teoria da Computação
IBM1088 Linguagens Formais e Teoria da Computação Apresentação da disciplina Evandro Eduardo Seron Ruiz [email protected] Universidade de São Paulo E.E.S. Ruiz (USP) LFA 1 / 16 IBM1088 Objetivos Fornecer
UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO. Prof.ª Danielle Casillo
UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO Prof.ª Danielle Casillo Diferencia-se das máquinas de Turing e Post principalmente pelo fato de possuir a memória de entrada separada
Linguagens Formais e Autômatos. Conceitos Básicos Prof. Anderson Belgamo
Linguagens Formais e Autômatos Conceitos Básicos Prof. Anderson Belgamo Introdução Teoria das Linguagens Formais Originariamente desenvolvida na década de 1950. Objetivo inicial: desenvolver teorias relacionadas
Histórico e motivação
Expressões regulares 1. Histórico e motivação 2. Definição a) Sintaxe b) Semântica c) Precedência dos operadores 3. Exemplos 4. Leis algébricas 5. Dialetos 6. Aplicações 7. Exercícios Pré-requisito: básico
Teoria Elementar dos Conjuntos
Teoria Elementar dos Conjuntos Este capítulo visa oferecer uma breve revisão sobre teoria elementar dos conjuntos. Além de conceitos básicos importantes em matemática, a sua imprtância reside no fato da
Disciplina: LINGUAGENS FORMAIS, AUTÔMATOS E COMPUTABILIDADE Prof. Jefferson Morais
UNIVERSIDADE FEDERAL DO PARÁ INSTITUTO DE CIÊNCIAS EXATAS E NATURAIS FACULDADE DE COMPUTAÇÃO CURSO DE BACHARELADO EM CIÊNCIA DA COMPUTAÇÃO Disciplina: LINGUAGENS FORMAIS, AUTÔMATOS E COMPUTABILIDADE Prof.
Lógica e Matemática Discreta
Lógica e Matemática Discreta Teoria Elementar dos Conjuntos Prof Clezio 04 de Junho de 2010 Curso de Ciência da Computação Noções básicas Um conjunto designa-se geralmente por uma letra latina maiúscula:
Teoria dos Conjuntos. Teoria dos Conjuntos. Teoria dos Conjuntos. Teoria dos Conjuntos. Teoria dos Conjuntos. Teoria dos Conjuntos
Pode-se dizer que a é em grande parte trabalho de um único matemático: Georg Cantor (1845-1918). noção de conjunto não é suscetível de definição precisa a partir d noções mais simples, ou seja, é uma noção
INTRODUÇÃO À TEORIA DOS CONJUNTOS
1 INTRODUÇÃO À TEORIA DOS CONJUNTOS Gil da Costa Marques 1.1 Introdução 1.2 Conceitos básicos 1.3 Subconjuntos e intervalos 1.4 O conjunto dos números reais 1.4.1 A relação de ordem em 1.5 Intervalos 1.5.1
Conjunto Quociente e Classe de Equivalência (Alguns Exemplos e Definições)
Exemplos Definições Conjunto Quociente e Classe de Equivalência (Alguns Exemplos e Definições) Matemática Elementar - EAD Departamento de Matemática Universidade Federal da Paraíba 4 de setembro de 2014
LINGUAGENS FORMAIS Definições. Desenvolveram-se na História em função da necessidade dos grupos humanos que as empregavam
Linguagens Naturais LINGUAGENS FORMAIS Definições Desenvolveram-se na História em função da necessidade dos grupos humanos que as empregavam São muito ricas, mas também ambíguas e imprecisas. Ex.: João
UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO. Prof.ª Danielle Casillo
UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO TEORIA DA COMPUTAÇÃO Aula 01 Apresentação da Disciplina Prof.ª Danielle Casillo PLANO DE ENSINO Nome: Teoria da Computação Créditos:
Prof. Adriano Maranhão COMPILADORES
Prof. Adriano Maranhão COMPILADORES LINGUAGENS: INTERPRETADAS X COMPILADAS Resumo: Linguagem compilada: Se o método utilizado traduz todo o texto do programa, para só depois executar o programa, então
Teoria da Computação. Máquinas Universais Máquina com Pilhas
Máquinas Universais Máquina com Pilhas Cristiano Lehrer Introdução A Máquina com Pilhas diferencia-se das Máquinas de Turing e de Post principalmente pelo fato de possuir uma memória de entrada separada
Curso: Ciência da Computação Turma: 6ª Série. Teoria da Computação. Aula 2. Conceitos Básicos da Teoria da Computação
Curso: Ciência da Computação Turma: 6ª Série Aula 2 Conceitos Básicos da Computação pode ser definida como a solução de um problema ou, formalmente, o cálculo de uma função, através de um algoritmo. A
Teoria dos Conjuntos MATEMÁTICA DISCRETA CONCEITOS PRELIMINARES. Fundamentos de Lógica Técnicas Elementares de Prova A NOÇÃO DE CONJUNTO
SUMÁRIO MATEMÁTICA DISCRETA CONCEITOS PRELIMINARES Teoria dos Conjuntos Relações e Funções Fundamentos de Lógica Técnicas Elementares de Prova Newton José Vieira 21 de agosto de 2007 1 A NOÇÃO DE CONJUNTO
Lista de exercícios 1
UNIVERSIDADE FEDERAL DO ESPÍRITO SANTO CENTRO DE CIÊNCIAS AGRÁRIAS CCA/ UFES Departamento de Engenharia Rural Lista de exercícios 1 Disciplina: Linguagens Formais e Autômatos Professora: Juliana Pinheiro
Linguagem (formal) de alfabeto Σ
Linguagem (formal) de alfabeto Σ Linguagem é qualquer subconjunto de Σ, i.e. qualquer conjunto de palavras de Σ Σ = {a, b} {aa, ab, ba, bb} ou {x x {a, b} e x = 2} {a, aa, ab, ba, aaa, aab, aba,...} ou
Matemática Discreta para Ciência da Computação
Matemática Discreta para Ciência da Computação P. Blauth Menezes [email protected] Departamento de Informática Teórica Instituto de Informática / UFRGS Matemática Discreta para Ciência da Computação
Revisões de Conjuntos
Revisões de Conjuntos {, {a}, {b}, {a, b}} a A a pertence a A, a é elemento de A a {a, b, c} a / A a não pertence a A d / {a, b, c} A B A contido em B, A subconjunto de B x A x B {a, b} {b, c, a} A B A
Aulas 10 e 11 / 18 e 20 de abril
1 Conjuntos Aulas 10 e 11 / 18 e 20 de abril Um conjunto é uma coleção de objetos. Estes objetos são chamados de elementos do conjunto. A única restrição é que em geral um mesmo elemento não pode contar
Definição: Todo objeto parte de um conjunto é denominado elemento.
1. CONJUNTOS 1.1. TEORIA DE CONJUNTOS 1.1.1. DEFINIÇÃO DE CONJUNTO Definição: Conjunto é toda coleção de objetos. Uma coleção de números é um conjunto. Uma coleção de letras é um conjunto. Uma coleção
Curso: Ciência da Computação Turma: 6ª Série. Teoria da Computação. Aula 3. Autômatos Finitos
Curso: Ciência da Computação Turma: 6ª Série Aula 3 Autômatos Finitos Alfabeto Alfabeto Conjunto finito de símbolos; Normalmente descrito por ; Exemplos: ={a, b} ={1, 2, 3} ={00, 11} Ø Alfabeto romano
Matemática Discreta para Ciência da Computação
Matemática Discreta para Ciência da Computação P. Blauth Menezes [email protected] Departamento de Informática Teórica Instituto de Informática / UFRGS Matemática Discreta para Ciência da Computação
Teoria das Linguagens. Linguagens Formais e Autómatos (Linguagens)
Teoria das Lic. em Ciências da Computação Formais e Autómatos () Carla Mendes Dep. Matemática e Aplicações Universidade do Minho 2010/2011 Teoria das - LCC - 2010/2011 Dep. Matemática e Aplicações - Univ.
Conceitos Básicos. Vocabulário Cadeias Linguagens Problema
Conceitos Básicos Vocabulário Cadeias Linguagens Problema Alfabeto ou Vocabulário: Conjunto finito não vazio de símbolos. Símbolo é um elemento qualquer de um alfabeto. Ex: {A,B,C,.Z} alfabeto latino (maiúsculas)
Teoria da Computação. Computabilidade e complexidade computacional
Teoria da Computação Computabilidade e complexidade computacional 1 Computabilidade e Complexidade Computabilidade: verifica a existência de algoritmos que resolva uma classe de linguagens trata a possibilidade
Teoria da Computação (BBC244)
Teoria da Computação (BBC244) Professor: Anderson Almeida Ferreira [email protected] http://www.decom.ufop.br/anderson Sala COM 10 DECOM-UFOP Ementa Gramáticas. Linguagens. Operações com Linguagens.
Teoria da Computação Aula 01 Revisão de Conjuntos
Teoria da Computação Aula 01 Revisão de Conjuntos Prof. Esp. Pedro Luís Antonelli Anhanguera Educacional Conjuntos Conjunto e uma estrutura que agrupa objetos e constitui uma base para construir estruturas
Linguagens Formais e Autômatos. Tiago Alves de Oliveira
Linguagens Formais e Autômatos Tiago Alves de Oliveira Ementa Linguagens Regulares; Máquinas de Turing; O Problema da Parada da Máquina de Turing; Autômatos Finitos; Linguagens Livres de Contexto; Autômatos
Matemática Discreta - 07
Universidade Federal do Vale do São Francisco Curso de Engenharia da Computação Matemática Discreta - 07 Prof. Jorge Cavalcanti [email protected] www.univasf.edu.br/~jorge.cavalcanti www.twitter.com/jorgecav
1 introdução e conceitos básicos
capítulo 1 introdução e conceitos básicos Este capítulo faz uma apresentação da matemática discreta, de sua importância, de seus conceitos básicos e de seus usos. Também apresenta uma revisão dos conceitos
Teoria dos Conjuntos. Matemática Discreta. Teoria dos Conjuntos - Parte I. Profa. Sheila Morais de Almeida DAINF-UTFPR-PG.
Matemática Discreta Teoria dos Conjuntos - Parte I Profa. Sheila Morais de Almeida DAINF-UTFPR-PG abril - 2017 Letras maiúsculas: conjuntos. Letras minúsculas: elementos do conjunto. Pertinência: o símbolo
Teoria da Computação. Unidade 1 Conceitos Básicos. Referência Teoria da Computação (Divério, 2000)
Unidade 1 Conceitos Básicos Referência (Divério, 2000) Conceitos Básicos Linguagem Conceito fundamental Forma precisa de expressar problemas Permite um desenvolvimento formal adequado ao estudo da computabilidade
Curso: Ciência da Computação Disciplina: Matemática Discreta 3. CONJUNTOS. Prof.: Marcelo Maraschin de Souza
Curso: Ciência da Computação Disciplina: Matemática Discreta 3. CONJUNTOS Prof.: Marcelo Maraschin de Souza 3. Conjuntos Definição: Um conjunto é uma coleção desordenada de zero ou mais objetos, denominados
AXB = {(x, y) x A e y B}
CENTRO UNIVERSITÁRIO DO NORTE PAULISTA LÓGICA E MATEMÁTICA DISCRETA 2010 1 Produto Cartesiano Par ordenado: são dois elementos em uma ordem fixa, (x,y) Produto Cartesiano: Dados dois conjuntos A e B, não
INTRODUÇÃO À TEORIA DOS CONJUNTOS1
INTRODUÇÃO À TEORIA DOS CONJUNTOS1 TÓPICO Gil da Costa Marques 1.1 Elementos da Teoria dos Conjuntos 1.2 Introdução 1.3 Conceitos Básicos 1.4 Subconjuntos e Intervalos 1.5 Conjuntos Numéricos 1.5.1 O Conjunto
Expressões regulares
Expressões regulares IBM1088 Linguagens Formais e Teoria da Computação Evandro Eduardo Seron Ruiz [email protected] Universidade de São Paulo E.E.S. Ruiz (USP) LFA 1 / 38 Frase do dia A vida é uma luta inteira
PC Polícia Civil do Estado de São Paulo PAPILOSCOPISTA
PC Polícia Civil do Estado de São Paulo PAPILOSCOPISTA Concurso Público 2016 Conteúdo Teoria dos conjuntos. Razão e proporção. Grandezas proporcionais. Porcentagem. Regras de três simples. Conjuntos numéricos
BCC244. Alfabeto, String, Linguagem, Gramática. Registro aqui o agradecimento à Profa. Lucília por ceder slides que fazem parte deste materal.
BCC244 Alfabeto, String, Linguagem, Gramática Registro aqui o agradecimento à Profa. Lucília por ceder slides que fazem parte deste materal. Exemplo: Máquina de Venda A máquina de venda retorna uma cocacola
Teoria da Computação
1 Teoria da Computação Última atualização: 2/2/2009 1 Autômatos: Introdução e Conceitos Básicos A teoria de autômatos é o estudo de computadores abstratos, também chamados de máquinas. Em 1930, antes de
4) Defina o que vem a ser um algoritmo, e porque, o mesmo depende do processo.
Lista de Exercício 1 Algoritmo e Programação 29/08/2018 (Solução) 1) Escreva conforme a premissas computacionais, o que vem a ser, lógica. R: São as premissas básicas para se executar instruções, alocadas
Teoria da Computação
Ciência da Computação Teoria da Computação (ENG10395) Profa. Juliana Pinheiro Campos E-mail: [email protected] Máquinas Universais Máquinas Universais podem ser entendidas de duas formas: Se é capaz
Modelos de Computação Folha de trabalho n. 8
Modelos de Computação Folha de trabalho n. 8 Nota: Os exercícios obrigatórios marcados de A a D constituem os problemas que devem ser resolvidos individualmente. A resolução em papel deverá ser depositada
n. 28 RELAÇÕES BINÁRIAS ENTRE CONJUNTOS
n. 28 RELAÇÕES BINÁRIAS ENTRE CONJUNTOS Uma relação é um conjunto de pares ordenados, ou seja, um subconjunto de A B. Utilizando pares ordenados podemos definir relações por meio da linguagem de conjuntos.
CONJUNTOS RELAÇÕES DE PERTINÊNCIA, INCLUSÃO E IGUALDADE; OPERAÇÕES ENTRE CONJUNTOS, UNIÃO, INTER- SEÇÃO E DIFERENÇA
CONJUNTOS RELAÇÕES DE PERTINÊNCIA, INCLUSÃO E IGUALDADE; OPERAÇÕES ENTRE CONJUNTOS, UNIÃO, INTER- SEÇÃO E DIFERENÇA CONJUNTO: É um conceito primitivo associado à idéia de coleção.. - INDICAÇÃO: Os conjuntos
a n Sistemas de Estados Finitos AF Determinísticos
a n Sistemas de Estados Finitos AF Determinísticos 1 Relembrando Uma representação finita de uma linguagem L qualquer pode ser: 1. Um conjunto finito de cadeias (se L for finita); 2. Uma expressão de um
Existem conjuntos em todas as coisas e todas as coisas são conjuntos de outras coisas.
MÓDULO 3 CONJUNTOS Saber identificar os conjuntos numéricos em diferentes situações é uma habilidade essencial na vida de qualquer pessoa, seja ela um matemático ou não! Podemos dizer que qualquer coisa
Teoria dos conjuntos
Matemática I Teoria dos conjuntos UNE - Universidade do Estado da ahia Departamento de Ciências Humanas e Tecnologias Campus XXIV Xique Xique Matemática I Teoria dos conjuntos Prof. MSc. Rebeca Dourado
Máquinas de Turing - Computabilidade
BCC244-Teoria da Computação Prof. Lucília Figueiredo Lista de Exercícios 03 DECOM ICEB - UFOP Máquinas de Turing - Computabilidade 1. Seja L uma linguagem não livre de contexto. Mostre que: (a) Se X uma
