LFA. Aula 04. Sintaxe e Semântica. Conceitos Básicos Alfabeto Palavra Linguagem

Tamanho: px
Começar a partir da página:

Download "LFA. Aula 04. Sintaxe e Semântica. Conceitos Básicos Alfabeto Palavra Linguagem"

Transcrição

1 LFA Aula 04 Sintaxe e Semântica. Conceitos Básicos Alfabeto Palavra Linguagem

2 Linguagens Formais Linguagens formais se preocupam com os problemas sintáticos das linguagens.

3 Sintaxe e Semântica Sintaxe é conjunto de regras formais que especifica a composição de programas (letras,digitos, ), while, do,...) Semântica é o conjunto de regras que especificam o significado de algum programa sintaticamente válido.

4 Sintaxe Aná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. Aná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).

5 Conceitos Básicos - Alfabeto Denotado por, é um conjunto finito não vazio (alguns autores consideram o vazio) de símbolos. ASCII e EBCDIC são exemplos de alfabetos de computadores. Exemplos: = {a, b, c,... } = {0, 1} (alfabeto binário) = {verde, amarelo, azul, branco}

6 Conceitos Básicos - Alfabeto Denotado por, é um conjunto finito não vazio de símbolos. ASCII e EBCDIC 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.

7 Conceitos Básicos - Alfabeto Denotado por, é um conjunto finito não vazio de símbolos. ASCII e EBCDIC são exemplos de alfabetos de computadores. Exemplos: = {a, b, c,... } = {0, 1} (alfabeto binário) = {verde, amarelo, azul, branco} A única restrição que temos é que o conjunto de símbolos é finito. Um símbolo do alfabeto pode ter mais de um caractere.

8 Conceitos Básicos - Alfabeto Denotado por, é um conjunto finito não vazio de símbolos. ASCII e EBCDIC são exemplos de alfabetos de computadores. Exemplos: = {a, b, c,... } = {0, 1} (alfabeto binário) = {verde, amarelo, azul, branco} Podemos usar reticências para definir alfabetos extensos. A única restrição que temos é que o conjunto de símbolos é finito. Um símbolo do alfabeto pode ter mais de um caractere.

9 Conceitos Básicos Palavra/Cadeia de Caracteres/Sentença A definição de palavra está intimamente relacionada com a de alfabeto. Uma palavra é um conjunto de símbolos de um alfabeto justapostos. 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

10 Conceitos Básicos Palavra/Cadeia de Caracteres/Sentença A definição de palavra está intimamente relacionada com a de alfabeto. Uma palavra é um conjunto de símbolos de um alfabeto justapostos. 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. Em uma linguagem de programação como Pascal, uma palavra é um programa

11 Conceitos Básicos - Comprimento Dado um alfabeto e uma palavra x = a 1 a 2 a 3... a n sobre, x denota o comprimento (tamanho) de x. a 1 a 2 a 3... a n = n. Exemplos: = {a, b, c,... z} amor =? verde =?

12 Conceitos Básicos - Comprimento Dado um alfabeto e uma palavra x = a 1 a 2 a 3... a n sobre, x denota o comprimento (tamanho) de x. a 1 a 2 a 3... a n = n. Exemplos: = {a, b, c,... z} amor = 4 verde = 5 = {verde, amarelo, azul, branco} verde =? azulamarelo =?

13 Conceitos Básicos - Comprimento Dado um alfabeto e uma palavra x = a 1 a 2 a 3... a n sobre, x denota o comprimento (tamanho) de x. 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

14 Conceitos Básicos Palavra Vazia Dado um alfabeto e uma palavra x = a 1 a 2 a 3... a n sobre, x denota o comprimento (tamanho) de x. a 1 a 2 a 3... a n = n. 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).

15 Conceitos Básicos Palavra Vazia Dado um alfabeto e uma palavra x = a 1 a 2 a 3... a n sobre, x denota o comprimento (tamanho) de x. a 1 a 2 a 3... a n = n. 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.

16 Conceitos Básicos Prefixo/Sufixo 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:? (temos 5)

17 Conceitos Básicos Prefixo/Sufixo 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:? (temos 5)

18 Conceitos Básicos Prefixo/Sufixo 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 sequência de símbolos contíguos da palavra

19 Conceitos Básicos Prefixo/Sufixo 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 Subpalavra que não é prefixo nem sufixo?

20 Conceitos Básicos Prefixo/Sufixo 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 Subpalavra que não é prefixo nem sufixo? bc

21 Conceitos Básicos - Concatenação 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. A concatenação, portanto, é formada pelos símbolos de x seguidos de y. Deve-se observar que: x + y = xy xy é diferente de yx. A ordem é importante. xε = x εx = x

22 Conceitos Básicos - Concatenação 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. A concatenação, portanto, é formada pelos símbolos de x seguidos de y. Exemplos: Dado = {a, b}, x = abab e y = babab xy =?

23 Conceitos Básicos - Concatenação 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. A concatenação, portanto, é formada pelos símbolos de x seguidos de y. Exemplos: Dado = {a, b}, x = abab e y = babab xy = ababbabab yx =?

24 Conceitos Básicos - Concatenação 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. A concatenação, portanto, é formada pelos símbolos de x seguidos de y. Exemplos: Dado = {a, b}, x = abab e y = babab xy = ababbabab yx = babababab x 2 =?

25 Conceitos Básicos - Concatenação 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. A concatenação, portanto, é formada pelos símbolos de x seguidos de y. Exemplos: Dado = {a, b}, x = abab e y = babab xy = ababbabab yx = babababab x 2 = xx = abababab εx =?

26 Conceitos Básicos - Concatenação 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. A concatenação, portanto, é formada pelos símbolos de x seguidos de y. Exemplos: Dado = {a, b}, x = abab e y = babab xy = ababbabab yx = babababab x 2 = xx = abababab εx = abab x 0 =?

27 Conceitos Básicos - Concatenação 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. A concatenação, portanto, é formada pelos símbolos de x seguidos de y. Exemplos: Dado = {a, b}, x = abab e y = babab xy = ababbabab yx = babababab x 2 = xx = abababab εx = abab x 0 = ε

28 Operações com Alfabeto Uma linguagem é um conjunto de palavras sobre um alfabeto. 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 = {ε}

29 Operações com Alfabeto 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

30 Conceitos Básicos - Linguagens A 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 L1 = {ab, b, ca, cc}

31 Conceitos Básicos - Linguagens A 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 L1 = {ab, b, ca, cc} L2 = todas as palavras sobre que terminam com o símbolo a

32 Conceitos Básicos - Linguagens A 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 L1 = {ab, b, ca, cc} L2 = todas as palavras sobre que terminam com o símbolo a L3 = todas as palavras sobre que possuam a subpalavra ab

33 Conceitos Básicos - Linguagens A 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 L1 = {ab, b, ca, cc} L2 = todas as palavras sobre que terminam com o símbolo a L3 = todas as palavras sobre que possuam a subpalavra ab L4 = {x x é uma palavra sobre e x = 4} = 4

34 Operações Regulares 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:

35 Operações Regulares 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 A e B linguagens A B = {x x A ou x B} junta todas as palavras de A e B

36 Operações Regulares 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 A e B linguagens A B = {xy x A e y B} coloca uma palavra de A em frente de uma palavra de B de todas as formas possíveis

37 Operações Regulares 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 A e B linguagens A* = {x 1 x 2..., x k k 0 e cada x i A} junta qualquer quantidade de palavras de A para formar uma nova palavra. é sempre uma palavra de A*

38 Operações Regulares Exemplo: Dados = {a, b,..., z}; L1 = {bom, ruim}; L2 = {garoto, garota} L1 L2 =?

39 Operações Regulares Exemplo: Dados = {a, b,..., z}; L1 = {bom, ruim}; L2 = {garoto, garota} L1 L2 = {bom, ruim, garoto, garota} L1 L2 =?

40 Operações Regulares 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,... }

41 Operações Regulares Exemplo: Dados = {a, b,..., z}; L1 = {bom, ruim}; L2 = {garoto, garota} L1 L2 = {bom, ruim, garoto, garota} L1 L2 = {bomgaroto, bomgarota, ruimgaroto, ruimgarota} L1* =?

42 Operações Regulares 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,... }

43 Lista de Exercícios.

LINGUAGENS FORMAIS E AUTÔMATOS

LINGUAGENS FORMAIS E AUTÔMATOS 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.

Leia mais

Alfabeto, Cadeias, Operações e Linguagens

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

Leia mais

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 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

Leia mais

Introdução Definição Conceitos Básicos de Linguagem

Introdução Definição Conceitos Básicos de Linguagem Introdução Definição Conceitos Básicos de Linguagem Introdução Desenvolvida originalmente em 1950 Objetivo: Desenvolver teorias relacionadas com a Linguagem natural Logo verificou-se a importância para

Leia mais

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 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

Leia mais

Linguagens Formais e Autômatos P. Blauth Menezes

Linguagens Formais e Autômatos P. Blauth Menezes Linguagens Formais e Autômatos P. Blauth Menezes blauth@inf.ufrgs.br Departamento de Informática Teórica Instituto de Informática / UFRGS Matemática Discreta para Ciência da Computação - P. Blauth Menezes

Leia mais

Linguagens Formais e Autômatos

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

Leia mais

Linguagens Formais e Autômatos

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

Leia mais

Teoria da Computação Aula 02 Introdução

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:

Leia mais

Um alfabeto é um conjunto de símbolos indivisíveis de qualquer natureza. Um alfabeto é geralmente denotado pela letra grega Σ.

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

Leia mais

IBM1088 Linguagens Formais e Teoria da

IBM1088 Linguagens Formais e Teoria da IBM1088 Linguagens Formais e Teoria da Computação Linguagens e Gramáticas Evandro Eduardo Seron Ruiz evandro@usp.br Universidade de São Paulo E.E.S. Ruiz (USP) LFA 1 / 47 Frase do dia Sofremos muito com

Leia mais

LFA. Provas formais; Indução; Sintaxe e Semântica Teoria dos Conjuntos

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

Leia mais

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

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 olivete@fct.unesp.br 1 Na aula passada... Visão geral Linguagens regulares expressões regulares autômatos finitos gramáticas

Leia mais

Linguagens Formais e Autômatos. Conceitos Básicos Prof. Anderson Belgamo

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

Leia mais

Histórico e motivação

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

Leia mais

1 INTRODUÇÃO E CONCEITOS BÁSICOS

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

Leia mais

Universidade Federal de Alfenas

Universidade Federal de Alfenas Universidade Federal de Alfenas Linguagens Formais e Autômatos Aula 04 Linguagens Formais humberto@bcc.unifal-mg.edu.br Última aula... Relação da teoria dos conjuntos com LFA; Relação dos grafos com LFA.

Leia mais

Lista de exercícios 1

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

Leia mais

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

Prof. Dr. Marcos Castilho. Departamento de Informática/UFPR. 27 de Fevereiro de 2018 27 de Fevereiro de 2018 Definição: Concatenação Sejam u, v Σ. A concatenação de u e v, denotado por uv é a operação binária sobre Σ assim definida (i) BASE: Se tamanho(v) = 0 então v = λ e uv = u. (ii)

Leia mais

Prof. Adriano Maranhão COMPILADORES

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

Leia mais

Linguagens Formais e Problemas de Decisão

Linguagens Formais e Problemas de Decisão Linguagens Formais e Problemas de Decisão Mário S. Alvim (msalvim@dcc.ufmg.br) Fundamentos de Teoria da Computação (FTC) DCC-UFMG (2018/02) Mário S. Alvim (msalvim@dcc.ufmg.br) Linguagens Formais e Problemas

Leia mais

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. 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

Leia mais

15/03/2018. Professor Ariel da Silva Dias Aspectos sintáticos e semânticos básicos de linguagens de programação

15/03/2018. Professor Ariel da Silva Dias Aspectos sintáticos e semânticos básicos de linguagens de programação Professor Ariel da Silva Dias Aspectos sintáticos e semânticos básicos de linguagens de programação Conjunto de regras que definem a forma da linguagem; Como as sentenças podem ser formadas como sequências

Leia mais

LINGUAGENS FORMAIS E AUTÔMATOS

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.

Leia mais

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?

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

Leia mais

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

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

Leia mais

Linguagens Formais e Autômatos (LFA)

Linguagens Formais e Autômatos (LFA) Linguagens Formais e Autômatos (LFA) Aula de 19/08/2013 Símbolos, Cadeias, Linguagens Propriedades e Representações Formais de Interesse 1 Nota preliminar ( O conceito de decomposição e suas representações

Leia mais

Teoria da Computação. Unidade 1 Conceitos Básicos. Referência Teoria da Computação (Divério, 2000)

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

Leia mais

INE5317 Linguagens Formais e Compiladores. AULA 4: Gramáticas

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: silveira@inf.ufsc.br URL:

Leia mais

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 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

Leia mais

Linguagens Formais e Autômatos

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

Leia mais

Definições Exemplos de gramáticas

Definições Exemplos de gramáticas Definições Exemplos de gramáticas 1 Gramáticas Conceito introduzido pela lingüística Objetivo de ensinar o inglês pelo computador e conseguir um tradutor de línguas Fracasso da tradução por volta dos anos

Leia mais

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. 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

Leia mais

Modelos de Computação

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

Leia mais

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 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

Leia mais

Compiladores. Análise Léxica

Compiladores. Análise Léxica Compiladores Análise Léxica Regras Léxicas Especificam o conjunto de caracteres que constituem o alfabeto da linguagem, bem como a maneira que eles podem ser combinados; Exemplo Pascal: letras maiúsculas

Leia mais

Capítulo 1: Alfabetos, cadeias, linguagens

Capítulo 1: Alfabetos, cadeias, linguagens Capítulo 1: Alfabetos, cadeias, linguagens Símbolos e alfabetos. Um alfabeto é, para os nossos fins, um conjunto finito não vazio cujos elementos são chamados de símbolos. Dessa maneira, os conceitos de

Leia mais

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

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.

Leia mais

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

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

Leia mais

Definições Hierarquia de Chomsky Exemplos de gramáticas. Gramáticas. Objetivo de ensinar o inglês pelo computador e conseguir um tradutor de línguas

Definições Hierarquia de Chomsky Exemplos de gramáticas. Gramáticas. Objetivo de ensinar o inglês pelo computador e conseguir um tradutor de línguas Definições Hierarquia de Chomsky Exemplos de gramáticas 1 Gramáticas Conceito introduzido pela lingüística Objetivo de ensinar o inglês pelo computador e conseguir um tradutor de línguas Fracasso da tradução

Leia mais

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 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.

Leia mais

Matemática Discreta para Computação e Informática

Matemática Discreta para Computação e Informática Matemática Discreta para Computação e Informática P. Blauth Menezes blauth@inf.ufrgs.br Departamento de Informática Teórica Instituto de Informática / UFRGS Matemática Discreta para Computação e Informática

Leia mais

Teoria da Computação. Máquinas Universais Máquina com Pilhas

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

Leia mais

Problema A Codificação Símbolos Dado um inteiro n, n é N representação de inteiros 0,1,...,b - 1 numa base b Dado um grafo G, G é conexo?

Problema A Codificação Símbolos Dado um inteiro n, n é N representação de inteiros 0,1,...,b - 1 numa base b Dado um grafo G, G é conexo? 2 Linguagens Uma linguagem de programação, ou uma língua natural como o Português ou o Inglês, pode ser vista como um conjunto de sequências de símbolos, pertencentes a um conjunto finito. Em Português

Leia mais

Notas de aula: Cálculo e Matemática Aplicados às Notas de aula: Ciências dos Alimentos

Notas de aula: Cálculo e Matemática Aplicados às Notas de aula: Ciências dos Alimentos Notas de aula: Cálculo e Matemática Aplicados às Notas de aula: Ciências dos Alimentos 1 Conjuntos Um conjunto está bem caracterizado quando podemos estabelecer com certeza se um elemento pertence ou não

Leia mais

Notas sobre Definições Recursivas

Notas sobre Definições Recursivas Notas sobre Definições Recursivas Anjolina Grisi de Oliveira Centro de Informática Universidade Federal de Pernambuco CIn-UFPE Introdução A torre de Hanói Jogo antigo inventado pelo matemético francês

Leia mais

Fundamentos da Teoria da Computação

Fundamentos da Teoria da Computação Fundamentos da Teoria da Computação Primeira Lista de Exercícios - Aula sobre dúvidas Sérgio Mariano Dias 1 1 Doutorando em Ciência da Computação Estagiário em docência II Departamento de Ciência da Computação

Leia mais

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

Linguagens Formais e Autômatos 02/2016. LFA Aula 01 24/10/2016. Celso Olivete Júnior. LFA Aula 01 Apresentação 24/10/2016 Celso Olivete Júnior olivete@fct.unesp.br 1 Professor Celso Olivete Júnior Bacharelado em Ciência da Computação (Unoeste-2002) Mestrado e Doutorado em Engenharia Elétrica

Leia mais

Conceitos Básicos. Vocabulário Cadeias Linguagens Problema

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)

Leia mais

MATEMÁTICA. Aula 2 Teoria dos Conjuntos. Prof. Anderson

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

Leia mais

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 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

Leia mais

Teoria das Linguagens. Linguagens Formais e Autómatos (Linguagens)

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.

Leia mais

Matemática Discreta para Ciência da Computação

Matemática Discreta para Ciência da Computação Matemática Discreta para Ciência da Computação P. Blauth Menezes blauth@inf.ufrgs.br Departamento de Informática Teórica Instituto de Informática / UFRGS Matemática Discreta para Ciência da Computação

Leia mais

Teoria da Computação

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

Leia mais

1 TEORIA DOS CONJUNTOS

1 TEORIA DOS CONJUNTOS 1 TEORIA DOS CONJUNTOS Definição de Conjunto: um conjunto é uma coleção de zero ou mais objetos distintos, chamados elementos do conjunto, os quais não possuem qualquer ordem associada. Em outras palavras,

Leia mais

Compiladores Aula 4. Celso Olivete Júnior.

Compiladores Aula 4. Celso Olivete Júnior. Aula 4 Celso Olivete Júnior olivete@fct.unesp.br Na aula de hoje... Revisão: gramáticas Relações em uma gramática: Cabeça, Último, Primeiro (First) e Seguinte (Follow) Capítulo 4 (seção 4.4.2) do livro

Leia mais

Linguagem (formal) de alfabeto Σ

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

Leia mais

Semântica Denotacional

Semântica Denotacional Semântica Denotacional Uma introdução ISBN 0-321-19362-8 Semântica denotacional é um método formal para definir a semântica de linguagens de programação. Interessa a: projetista de linguagens, quem escreve

Leia mais

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 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

Leia mais

Linguagens Formais - Preliminares

Linguagens Formais - Preliminares Linguagens Formais - Preliminares Regivan H. N. Santiago DIMAp-UFRN 25 de fevereiro de 2007 Regivan H. N. Santiago (DIMAp-UFRN) Linguagens Formais - Preliminares 25 de fevereiro de 2007 1 / 26 Algumas

Leia mais

AXB = {(x, y) x A e y B}

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

Leia mais

Teoria da Computação

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

Leia mais

COMPILADORES. Revisão Linguagens formais Parte 01. Geovane Griesang

COMPILADORES. Revisão Linguagens formais Parte 01. Geovane Griesang Universidade de Santa Cruz do Sul UNISC Departamento de informática COMPILADORES Revisão Linguagens formais Parte 01 geovanegriesang@unisc.br Legenda: = sigma (somatório) = delta ε = épsilon λ = lambda

Leia mais

Revisões de Conjuntos

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

Leia mais

Expressões e Gramáticas Regulares e Autómatos Finitos

Expressões e Gramáticas Regulares e Autómatos Finitos Folha Prática Expressões e Gramáticas Regulares e Autómatos Finitos 1 Expressões e Gramáticas Regulares e Autómatos Finitos Expressões Regulares e Autómatos Finitos 1. Determine e implemente computacionalmente

Leia mais

Dado um inteiro positivo n, definimos U(n) como sendo o conjunto dos inteiros positivos menores que n e primos com n. Não é difícil ver que a

Dado um inteiro positivo n, definimos U(n) como sendo o conjunto dos inteiros positivos menores que n e primos com n. Não é difícil ver que a Exemplo (U(n)) Dado um inteiro positivo n, definimos U(n) como sendo o conjunto dos inteiros positivos menores que n e primos com n. Não é difícil ver que a multiplicação módulo n é uma operação binária

Leia mais

Linguagens Regulares. Prof. Daniel Oliveira

Linguagens Regulares. Prof. Daniel Oliveira Linguagens Regulares Prof. Daniel Oliveira Linguagens Regulares Linguagens Regulares ou Tipo 3 Hierarquia de Chomsky Linguagens Regulares Aborda-se os seguintes formalismos: Autômatos Finitos Expressões

Leia mais

Editor de Autômatos Finitos. Acadêmica: Josiane Patrícia Morastoni Orientadora: Joyce Martins

Editor de Autômatos Finitos. Acadêmica: Josiane Patrícia Morastoni Orientadora: Joyce Martins Editor de Autômatos Finitos Acadêmica: Josiane Patrícia Morastoni Orientadora: Joyce Martins 0 1 0 0 Roteiro da Apresentação Introdução Autômatos Finitos Desenvolvimento trabalho Considerações finais 2/31

Leia mais

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 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: silveira@inf.ufsc.br

Leia mais

Lógica Proposicional Fórmulas e Precedência de Operadores

Lógica Proposicional Fórmulas e Precedência de Operadores Lógica Proposicional Fórmulas e Precedência de Operadores Prof. Marcos A. Schreiner Disciplina de Introdução à Lógica 23 de março de 2015 Prof. Marcos A. Schreiner (UFPR) 23 de março de 2015 1 / 18 1 Introdução

Leia mais

Aulas 10 e 11 / 18 e 20 de abril

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

Leia mais

Conceitos básicos de Teoria da Computação

Conceitos básicos de Teoria da Computação Folha Prática Conceitos básicos de 1 Conceitos básicos de Métodos de Prova 1. Provar por indução matemática que para todo o número natural n: a) 1 + 2 + 2 2 + + 2 n = 2 n+1 1, para n 0 b) 1 2 + 2 2 + 3

Leia mais

Exercícios Associados à Aula 02 (14/08/2013)

Exercícios Associados à Aula 02 (14/08/2013) Exercícios Associados à Aula 02 (14/08/2013) Os exercícios da disciplina devem ser feitos pelos alunos à medida que as aulas vão sendo dadas. Dúvidas devem ser dirigidas à professora, por email ou em sala

Leia mais

Sistemas de Numeração

Sistemas de Numeração Sistemas de Numeração Objetivos Conhecer representações numéricas para inteiros positivos (naturais) nas bases binária, hexadecimal e octal. Generalizar representações para qualquer base. Manipular fluentemente

Leia mais

Expressões regulares

Expressões regulares Expressões regulares IBM1088 Linguagens Formais e Teoria da Computação Evandro Eduardo Seron Ruiz evandro@usp.br Universidade de São Paulo E.E.S. Ruiz (USP) LFA 1 / 38 Frase do dia A vida é uma luta inteira

Leia mais

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

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

Leia mais

Linguagens Formais e Autômatos P. Blauth Menezes

Linguagens Formais e Autômatos P. Blauth Menezes Linguagens Formais e Autômatos P. Blauth Menezes blauth@inf.ufrgs.br Departamento de Informática Teórica Instituto de Informática / UFRGS Matemática Discreta para Ciência da Computação - P. Blauth Menezes

Leia mais

Construção de Compiladores

Construção de Compiladores Construção de Compiladores Parte 1 Introdução Linguagens e Gramáticas F.A. Vanini IC Unicamp Klais Soluções Motivação Porque compiladores? São ferramentas fundamentais no processo de desenvolvimento de

Leia mais

Exercícios Associados à Aula 28 (27/11/2013) Feitos em sala e em equipes

Exercícios Associados à Aula 28 (27/11/2013) Feitos em sala e em equipes Exercícios Associados à Aula 28 (27/11/2013) Feitos em sala e em equipes Questões do POSCOMP 2011 A resposta certa está assinalada em vermelho. Por que é correta e por que as demais alternativas são incorretas?

Leia mais

Programação em Lógica. UCPEL/CPOLI/BCC Lógica para Ciência da Computação Luiz A M Palazzo Maio de 2010

Programação em Lógica. UCPEL/CPOLI/BCC Lógica para Ciência da Computação Luiz A M Palazzo Maio de 2010 Programação em Lógica UCPEL/CPOLI/BCC Lógica para Ciência da Computação Luiz A M Palazzo Maio de 2010 Roteiro Introdução Conceitos Básicos Linguagens Lógicas Semântica de Modelos Semântica de Prova Programação

Leia mais

1 introdução e conceitos básicos

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

Leia mais

LFA Aula 07. Equivalência entre AFD e AFND. Equivalência entre ER s e AF s Equivalência entre GR s e AF s. Linguagens Formais e Autômatos

LFA Aula 07. Equivalência entre AFD e AFND. Equivalência entre ER s e AF s Equivalência entre GR s e AF s. Linguagens Formais e Autômatos LFA Aula 07 Equivalência entre AFD e AFND AFND: uma aplicação busca em textos Equivalência entre ER s e AF s Equivalência entre GR s e AF s Celso Olivete Júnior olivete@fct.unesp.br www.fct.unesp.br/docentes/dmec/olivete/lfa

Leia mais

IBM1088 Linguagens Formais e Teoria da Computação

IBM1088 Linguagens Formais e Teoria da Computação IBM1088 Linguagens Formais e Teoria da Computação Apresentação da disciplina Evandro Eduardo Seron Ruiz evandro@usp.br Universidade de São Paulo E.E.S. Ruiz (USP) LFA 1 / 16 IBM1088 Objetivos Fornecer

Leia mais

Aula 3: Autômatos Finitos

Aula 3: Autômatos Finitos Teoria da Computação Primeiro Semestre, 25 Aula 3: Autômatos Finitos DAINF-UTFPR Prof. Ricardo Dutra da Silva Um procedimento ue determina se uma string de entrada pertence à uma linguagem é um reconhecedor

Leia mais

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

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

Leia mais

Linguagens Formais e Autômatos. Alfabetos, Palavras, Linguagens e Gramáticas

Linguagens Formais e Autômatos. Alfabetos, Palavras, Linguagens e Gramáticas Linguagens Formais e Autômatos Alfabetos, Palavras, Linguagens e Gramáticas Cristiano Lehrer, M.Sc. Introdução (1/3) A Teoria das Linguagens Formais foi originariamente desenvolvida na década de 1950 com

Leia mais

Gramática regular. IBM1088 Linguagens Formais e Teoria da Computação. Evandro Eduardo Seron Ruiz Universidade de São Paulo

Gramática regular. IBM1088 Linguagens Formais e Teoria da Computação. Evandro Eduardo Seron Ruiz Universidade de São Paulo Gramática regular IBM1088 Linguagens Formais e Teoria da Computação Evandro Eduardo Seron Ruiz evandro@usp.br Universidade de São Paulo E.E.S. Ruiz (USP) LFA 1 / 41 Frase do dia Através de três métodos

Leia mais

Computação L2. Linguagem C++ Observação: Material Baseado na Disciplina Computação Eletrônica.

Computação L2. Linguagem C++ Observação: Material Baseado na Disciplina Computação Eletrônica. Computação L2 Linguagem C++ ovsj@cin.ufpe.br Observação: Material Baseado na Disciplina Computação Eletrônica. Alfabeto São os símbolos ( caracteres ) permitidos na linguagem: Letras (maiúsculas e minúsculas);

Leia mais

Expressões Regulares e Gramáticas Regulares

Expressões Regulares e Gramáticas Regulares Universidade Católica de Pelotas Escola de informática 053212 Linguagens Formais e Autômatos TEXTO 2 Expressões Regulares e Gramáticas Regulares Prof. Luiz A M Palazzo Março de 2007 Definição de Expressão

Leia mais

INE5403 FUNDAMENTOS DE MATEMÁTICA DISCRETA

INE5403 FUNDAMENTOS DE MATEMÁTICA DISCRETA INE5403 FUNDAMENTOS DE MATEMÁTICA DISCRETA PARA A COMPUTAÇÃO PROF. DANIEL S. FREITAS UFSC - CTC - INE Prof. Daniel S. Freitas - UFSC/CTC/INE/2007 p.1/30 3 - INDUÇÃO E RECURSÃO 3.1) Indução Matemática 3.2)

Leia mais

Linguagens de Programação Aula 4

Linguagens de Programação Aula 4 Aula 4 Celso Olivete Júnior olivete@fct.unesp.br Na aula passada... Autômatos finitos AF:exemplos... Cadeia de caracteres a,b,c 2/82 Na aula passada... Autômatos finitos AF:exemplos... Números inteiros(com

Leia mais

Segunda Lista de Exercícios 2004/2...

Segunda Lista de Exercícios 2004/2... + + UFLA Universidade Federal de Lavras Departamento de Ciência da Computação COM162 Linguagens Formais e Autômatos Prof. Rudini Sampaio Monitor: Rodrigo Pereira dos Santos Segunda Lista de Exercícios

Leia mais

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 UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO TEORIA DA COMPUTAÇÃO Aula 08 Equivalência de programas Parte 2 Prof.ª Danielle Casillo Poder computacional dos diversos tipos de programas

Leia mais

Matemática Discreta - 07

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 jorge.cavalcanti@univasf.edu.br www.univasf.edu.br/~jorge.cavalcanti www.twitter.com/jorgecav

Leia mais

Linguagens de Programação Aula 3

Linguagens de Programação Aula 3 Aula 3 Celso Olivete Júnior olivete@fct.unesp.br Na aula passada... Classificação das LPs (nível, geração e paradigma) Paradigmas Imperativo, OO, funcional, lógico e concorrente 2/33 Na aula de hoje...

Leia mais

Linguagens e Programação Gramáticas. Paulo Proença

Linguagens e Programação Gramáticas. Paulo Proença Linguagens e Programação Gramáticas Gramáticas Ferramenta para a descrição e análise de linguagens; Baseada num conjunto de regras que especificam o modo de construção das frases válidas na linguagem;

Leia mais

Como construir um compilador utilizando ferramentas Java

Como construir um compilador utilizando ferramentas Java Como construir um compilador utilizando ferramentas Java p. 1/2 Como construir um compilador utilizando ferramentas Java Aula 4 Análise Léxica Prof. Márcio Delamaro delamaro@icmc.usp.br Como construir

Leia mais

Circuitos Lógicos Aula 5

Circuitos Lógicos Aula 5 Circuitos Lógicos Aula 5 Aula passada Sistemas numéricos Metodo de conversão Conversão entre sistemas Números fracionários Aula de hoje Conversão fracionária Método da multiplicação Código BCD Código ASCII

Leia mais