Linguagens Formais - Preliminares
|
|
- Marcela Carlos Ventura
- 6 Há anos
- Visualizações:
Transcrição
1 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 / 26
2 Algumas propriedades de Conjuntos Algumas propriedades de Conjuntos PROPOSIÇÃO: Sejam A e B conjuntos quaisquer. Então 1 A B = B A, 2 A B = B A, 3 A (B C) = (A B) (A C), 4 A (B C) = (A B) (A C), 5 A = A = A, 6 A =, 7 = U, 8 A = A, 9 A B = A B, 10 A B = A B, 11 Se A B então A B = B, A B = A e B A. Regivan H. N. Santiago (DIMAp-UFRN) Linguagens Formais - Preliminares 25 de fevereiro de / 26
3 Alfabetos e Linguagens Alguns Conceitos Alfabetos e linguagens Seja Σ um conjunto finito não vazio de símbolos, chamado alfabeto. Dos símbolos individuais construiremos cadeias (strings) que são sequências finitas de símbolos do alfabeto. EXEMPLO: Se o alfabeto for Σ = {a, b}, então abab e aaabba são cadeiais sobre Σ. A cadeia vazia, é aquela sem nenhum símbolo, e será denotado por λ. A concatenação de duas cadeias w e v, denotado por wv, é a cadeia obtida juntando-se os símbolos de v à direita de w, isto é, se w = a 1... a n e v = b 1... b n, então wv = a 1... a n b 1... b m. Note que, λw = wλ = w para qualquer cadeia w. Regivan H. N. Santiago (DIMAp-UFRN) Linguagens Formais - Preliminares 25 de fevereiro de / 26
4 Alfabetos e linguagens A reversa de uma cadeia é obtida escrevendo-se os símbolos em ordem reversa. Se w é a cadeia acima, então a reversa de w, denotado por w R, é a cadeia a n a 1. Uma definição recursiva da reversa de uma cadeia é a seguinte: λ R = λ e (aw) R = w R a EXEMPLO: Sejam w = bbab e v = aaab. Então wv = bbabaaab, vw = aaabbbab, w R = babb e v R = baaa. Regivan H. N. Santiago (DIMAp-UFRN) Linguagens Formais - Preliminares 25 de fevereiro de / 26
5 Alfabetos e linguagens Se w = vu, então v é chamado de prefixo e u de sufixo de w. Formalmente v é um prefixo de w se existe uma cadeia u tal que vu = w. Analogamente, u é um sufixo de w se existe uma cadeia v tal que vu = w. EXEMPLO: Seja w = abbab. O conjunto de todos os prefixos de w é {λ, a, ab, abb, abba, abbab} e de todos os sufixos é {λ, b, ab, bab, bbab, abbab}. Regivan H. N. Santiago (DIMAp-UFRN) Linguagens Formais - Preliminares 25 de fevereiro de / 26
6 Alfabetos e linguagens O comprimento de uma cadeia w, denotado por w, é o número de símbolos que figuram na cadeia. Por exemplo, abba = 4. Sejam u e v cadeias quaisquer sobre um alfabeto Σ. Então uv = u + v. (1) De fato, para mostrar esta igualdade precisamos de uma definição mais precisa de comprimento de cadeia. Daremos a seguinte definição recursiva. λ = 0 e wa = w +1, para todo a Σ e qualquer cadeia w de Σ. Usaremos a indução no comprimento da cadeia para mostrar a equação (1). Regivan H. N. Santiago (DIMAp-UFRN) Linguagens Formais - Preliminares 25 de fevereiro de / 26
7 Alfabetos e linguagens Se v = 0, então v = λ. Logo, por definição, uv = u = u +0 = u + v. Suponha que uv = u + v e calculemos uva : uva = uv +1 = u + v +1 = u + va. Logo, por indução, a igualdade é válida para todo v. Se w é uma cadeia, então w n é a cadeia obtida concatenando w com ela própria n vezes. Portanto, w n+1 = ww n. No caso especial de n = 0, w 0 = λ. Regivan H. N. Santiago (DIMAp-UFRN) Linguagens Formais - Preliminares 25 de fevereiro de / 26
8 Fecho Estrêla - Fecho de Kleene Alfabetos e linguagens Seja Σ um alfabeto. O fecho estrela de Σ, denotado por Σ, é o conjunto de todas as cadeias (finitas) obtidas concatenando zero ou mais símbolos de Σ. Por exemplo, se Σ = {a}, então Σ = {λ, a, aa, aaa, aaaa,...}. Formalmente, podemor definir o fecho estrela de um alfabeto Σ, indutivamente, por 1 λ Σ 2 Se w Σ e a Σ, então wa Σ 3 os únicos elementos de Σ são aqueles que podem ser obtidos aplicando uma quantidade finita de vezes as regras 1) e 2), acima. Regivan H. N. Santiago (DIMAp-UFRN) Linguagens Formais - Preliminares 25 de fevereiro de / 26
9 Fecho Estrêla - Fecho de Kleene Alfabetos e linguagens O conjunto Σ sempre contém λ. O fecho estrela de Σ sem a cadeia vazia é denominado fecho positivo do alfabeto Σ, e é denotado por Σ +. Isto é, Σ + = Σ {λ}. Enquanto um alfabeto Σ é um conjunto finito, Σ e Σ + são sempre infinitos, pois Σ é não vazio e não existe limite no comprimento das cadeias nesses dois conjuntos. Regivan H. N. Santiago (DIMAp-UFRN) Linguagens Formais - Preliminares 25 de fevereiro de / 26
10 Alfabetos e linguagens Um subconjunto qualquer de Σ pode ser visto como uma linguagem sobre o alfabeto Σ. Uma cadeia w numa linguagem L, isto é w L, será chamada palavra ou sentença de L. Na teoria das linguagens formais não há distinção entre palavras e sentenças. Para fornecer mais estrutura a essa definição, bastante ampla, de linguagem, estudaremos métodos pelos quais poderemos definir linguagens particulares. EXEMPLO: Seja Σ = {a, b}. Então Σ = {λ, a, b, aa, ab, ba, bb, aaa, aab,...}. O conjunto {a, aa, aab} é uma linguagem sobre Σ. Regivan H. N. Santiago (DIMAp-UFRN) Linguagens Formais - Preliminares 25 de fevereiro de / 26
11 Alfabetos e linguagens Linguagens Linguagens, Sublinguagens e Palavras Um subconjunto qualquer de Σ pode ser visto como uma linguagem sobre o alfabeto Σ. Uma cadeia w numa linguagem L, isto é w L, será chamada palavra ou sentença de L. Exemplo: Seja Σ = {a, b}. Então Σ = {λ, a, b, aa, ab, ba, bb, aaa, aab,...}. Os conjuntos: 1 L 1 {a, aa, aab}; e 2 L 2 = {a n b n /n 0}. São linguagens sobre Σ, onde as cadeias aabb e aaaabbbb são palavras de L 2, enquanto que a cadeia abb não está em L. Ao contrário de L 1, a linguagem L 2 é infinita Regivan H. N. Santiago (DIMAp-UFRN) Linguagens Formais - Preliminares 25 de fevereiro de / 26
12 Operações sobre Linguagens Operações sobre Linguagens Operações Conjuntistas: União, intersecção, diferença, complemento (L = Σ L). Operações Linguísticas: concatenação, fecho estrela, fecho positivo, reverso, prefixos, sufixos, etc. Regivan H. N. Santiago (DIMAp-UFRN) Linguagens Formais - Preliminares 25 de fevereiro de / 26
13 Operações sobre Linguagens A concatenação de duas linguagens L 1 e L 2, sobre os alfabetos Σ 1 e Σ 2, respectivamente, é a linguagem, sobre o alfabeto Σ 1 Σ 2, denotada por L 1 L 2, consistindo do conjunto de todas as cadeias obtidas concatenando-se qualquer elemento de L 1 com qualquer elemento de L 2, isto é L 1 L 2 = {xy / x L 1 e y L 2 }. EXEMPLO: Sejam as linguagens L 1 = {aa, ab} e L 2 = {bb, ba, aba}. Então a concatenaçãode L 1 com L 2 é a linguagem L 1 L 2 = {aabb, aaba, aaaba, abbb, abba, ababa}. Regivan H. N. Santiago (DIMAp-UFRN) Linguagens Formais - Preliminares 25 de fevereiro de / 26
14 Operações sobre Linguagens Exponenciação de linguagens: Define-se L n como sendo L concatenado n vezes com ele próprio. Nos casos especiais de n = 0 e n = 1 temos que, recursivamente temos: L 0 = {λ} e L 1 = L. L 0 = {λ} e L n+1 = LL n. EXEMPLO: Se L = {a n b n / n 0}, então L 2 = {a m b m a n b n / m 0 e n 0}. Observe que m e n não estão relacionados. A cadeia aabbaaabbb está em L 2. Regivan H. N. Santiago (DIMAp-UFRN) Linguagens Formais - Preliminares 25 de fevereiro de / 26
15 Operações sobre Linguagens O fecho estrela de uma linguagem L, sobre um alfabeto Σ, denotado por L, é o fecho de L {λ} Σ com respeito à operação (binária) de concatenação de cadeias. Por definição de fecho de conjuntos L Σ, logo L é uma linguagem sobre o próprio Σ. L também pode ser obtido da seguinte maneira: L = L i = L 0 L 1 L 2 L 3 i=0 Regivan H. N. Santiago (DIMAp-UFRN) Linguagens Formais - Preliminares 25 de fevereiro de / 26
16 Operações sobre Linguagens O fecho positivo da linguagem L, denotado por L +, o fecho de L Σ com respeito à operação (binária) de concatenação de cadeias. Também pode ser definido por L + = L i = L 1 L 2 L 3 i=1 Observação: Note que não necessariamente é verdade que L + = L L 0 = L {λ}, pois se λ L então, L + = L. Regivan H. N. Santiago (DIMAp-UFRN) Linguagens Formais - Preliminares 25 de fevereiro de / 26
17 Operações sobre Linguagens EXEMPLO: Seja L a linguagem L = {aa, bb, aba}. Então os fechos estrela e positivo de L são definidos por: L = {λ, aa, bb, aba, aaaa, aabb, aaaba, bbaa, bbbb, bbaba} {abaaa, ababb, abaaba, aaaaaa, aaaabb,...} e L + = {aa, bb, aba, aaaa, aabb, aaaba, bbaa, bbbb, bbaba} {abaaa, ababb, abaaba, aaaaaa, aaaabb,...}. Regivan H. N. Santiago (DIMAp-UFRN) Linguagens Formais - Preliminares 25 de fevereiro de / 26
18 Operações sobre Linguagens A linguagem reversa de uma linguagem L, sobre um alfabeto Σ, é a linguagem L R, sobre o próprio alfabeto Σ, consistindo de todas as cadeias em L revertidas, isto é w L se e somente se w R L R. Como (w R ) R = w para qualquer cadeia w, temos que L R é definida por L R = {w Σ / w R L}. EXEMPLO: Seja a linguagem L = {aa, baa, aba, abbb}. A linguagem reversa de L é: L R = {aa, aab, aba, bbba}. Regivan H. N. Santiago (DIMAp-UFRN) Linguagens Formais - Preliminares 25 de fevereiro de / 26
19 Operações sobre Linguagens A linguagem de prefixos de uma linguagem L, sobre um alfabeto Σ, é a linguagem L P, sobre o próprio Σ, definida por L P = {v Σ / vw L para algum w Σ }. Isto é, L P é a linguagem consisitindo de todas as cadeias que são prefixos de alguma cadeia em L. Analogamente, A linguagem de sufixos de uma linguagem L, sobre um alfabeto Σ, é a linguagem L S, sobre o próprio Σ, definida por L S = {w Σ /vw L para algum v Σ }. Isto é, L S é a linguagem consisitindo de todas as cadeias que são sufixos de alguma cadeia em L. Observe que L L R e L L S. Regivan H. N. Santiago (DIMAp-UFRN) Linguagens Formais - Preliminares 25 de fevereiro de / 26
20 Gramáticas Alguns Conceitos Gramáticas Para estudar linguagens, matematicamente, precisamos de um mecanismo para descrevê-las. A linguagem do dia a dia é imprecisa e ambígua, portanto, a descrição em português, em geral, é inadequada. A notação de conjuntos é mais adequada, porém limitada. Aqui, introduziremos a noção de gramática, uma ferramenta comum e poderosa para definir linguagens. Regivan H. N. Santiago (DIMAp-UFRN) Linguagens Formais - Preliminares 25 de fevereiro de / 26
21 Gramáticas Uma gramática, G, é definida como uma quádrupla G = V, T, S, P, onde V é um conjunto finito de objetos, chamados variáveis, T é um conjunto finito de objetos, disjunto de V, chamados símbolos terminais, S V é um símbolo especial, chamado variável de início, e P é um conjunto finito de produções. Regivan H. N. Santiago (DIMAp-UFRN) Linguagens Formais - Preliminares 25 de fevereiro de / 26
22 Gramáticas Uma produção tem a forma: x y, onde x é um elemento de (V T ) + e y está em (V T ). As produções são aplicadas como segue: dado uma cadeia da forma w = uxv, dizemos que a produção é aplicável a esta cadeia, e podemos usá-la para trocar uma ocorrência de x por y, obtendo, assim, a nova cadeia z = uyv. Regivan H. N. Santiago (DIMAp-UFRN) Linguagens Formais - Preliminares 25 de fevereiro de / 26
23 Gramáticas Neste caso, dizemos que w deriva z ou z é derivada de w, denotado por w = z. Cadeias sucessivas são derivadas aplicando regras de produção da gramática, numa ordem arbitrária. Uma produção pode ser usada se ela é aplicável e pode ser aplicada quantas vezes se quiser. Se w 1 = w 2 =... = w n, dizemos que w 1 deriva w n e escrevemos w 1 = w n. A estrela indica que foi considerado um número não especificado de etapas (incluindo zero) para derivar w n de w 1. Portanto, w = w sempre se dá. Para indicar que, pelo menos uma produção foi aplicada escreveremos w + = v. Regivan H. N. Santiago (DIMAp-UFRN) Linguagens Formais - Preliminares 25 de fevereiro de / 26
24 Gramáticas Seja G = V, T, S, P uma gramática. O conjunto L(G) = {w T / S = w} é denominado linguagem gerada pela gramática G. Os elementos de L(G) são chamados sentenças ou palavras. Se w L(G), então a sequência S = w 1 = w 2 =... = w n = w é uma derivação da sentença w. As cadeias S, w 1, w 2,..., w n que contém variáveis e objetos terminais, são chamados formas sentenciais da derivação. Regivan H. N. Santiago (DIMAp-UFRN) Linguagens Formais - Preliminares 25 de fevereiro de / 26
25 Gramáticas Exemplo Considere a gramática G = {S}, {a, b}, S, P, onde P é dado por S asb S λ. Então, S = asb = aasbb = aabb. Logo, podemos escrever S = aabb. A cadeia aabb é uma sentença na linguagem gerada por G, enquanto aasbb é uma forma sentencial. Regivan H. N. Santiago (DIMAp-UFRN) Linguagens Formais - Preliminares 25 de fevereiro de / 26
26 Autômatos Alguns Conceitos Autômatos Regivan H. N. Santiago (DIMAp-UFRN) Linguagens Formais - Preliminares 25 de fevereiro de / 26
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 maisLinguagem (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 maisAlfabeto, 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 maisLinguagens 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 maisTeoria 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 maisIBM1088 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 maisModelos 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 maisUm 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 maisProblema 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 maisTeoria 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 maisLinguagens 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 maisAlfabeto e palavras. Alfabeto conjunto finito de símbolos (Σ).
Alfabeto e palavras Alfabeto conjunto finito de símbolos (Σ). {A,...,Z}, {α, β,... }, {a,b}, {0,1}, ASCII Palavra de Σ sequência finita de símbolos do alfabeto Σ Σ = {a, b} aabba a aaaaaaaa Comprimento
Leia maisLinguagens 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 maisLinguagens 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 maisApostila 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 maisLinguagens 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 maisConceitos 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 maisRevisõ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 maisDefiniçõ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 maisAula 8: Gramáticas Livres de Contexto
Teoria da Computação Primeiro Semestre, 2015 Aula 8: Gramáticas Livres de Contexto DAINF-UTFPR Prof. Ricardo Dutra da Silva Veremos agora maneira de gerar as strings de um tipo específico de linguagem,
Leia maisTEORIA DAS LINGUAGENS 3. GRAMÁTICAS INDEPENDENTES DE CONTEXTO
LICENCIATURA EM CIÊNCIAS DA COMPUTAÇÃO TEORIA DAS LINGUAGENS 3. GRAMÁTICAS INDEPENDENTES DE CONTEXTO José Carlos Costa Dep. Matemática e Aplicações Universidade do Minho Braga, Portugal 31 de Maio de 2010
Leia maisDefiniçõ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 maisIntroduçã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 maisCOMPILADORES. 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 maisGramáticas ( [HMU00], Cap. 5.1)
Gramáticas ( [HMU00], Cap. 5.1) Vimos que a seguinte linguagem não é regular L = {0 n 1 n n 0} Contudo podemos fácilmente dar uma definição indutiva das suas palavras: 1. ɛ L 2. Se x L então 0x1 L L é
Leia maisMarcos Castilho. DInf/UFPR. 21 de março de 2019
21 de março de 2019 Análise sintática: introdução Dada uma gramática G e uma palavra w Σ, como saber se w L(G)? Isto é, como saber se S = G w? Derivações à esquerda e ambiguidade w L(G) se S = G w; Sabemos
Leia maisBCC244. 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 maisGramáticas e Linguagens independentes de contexto
Capítulo 6 Gramáticas e Linguagens independentes de contexto 6.1 Gramáticas Nesta secção vamos introduzir gramáticas formais para caracterização das linguagens, estudando fundamentalmente as gramáticas
Leia maisExpressõ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 maisUniversidade de São Paulo Instituto de Ciências Matemáticas e de Computação Curso de Ciências de Computação
Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Curso de Ciências de Computação SCC-205 TEORIA DA COMPUTAÇÃO E LINGUAGENS FORMAIS Turma 1 2º. Semestre de 2012 Prof. João Luís
Leia maisLinguagens, Reconhecedores e Gramáticas
Linguagens, Reconhecedores e Gramáticas Já vimos que Linguagem é um conjunto de cadeias de símbolos sobre um alfabeto/vocabulário, V. É um subconjunto específico de V*. Estas cadeias são denominadas sentenças
Leia mais1 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 maisLista de Exercícios CT-200 Primeiro Bimestre Carlos Henrique Quartucci Forster Estagiário: Wesley Telles. Revisão de Teoria de Conjuntos
Lista de Exercícios CT-200 Primeiro Bimestre 2010 Carlos Henrique Quartucci Forster Estagiário: Wesley Telles Revisão de Teoria de Conjuntos 1. Sejam A = {1,2 } e B = { x, y, z}. Quais os elementos dos
Leia maisLINGUAGEM LIVRE DE CONTEXTO GRAMÁTICA LIVRE DE CONTEXTO
LINGUAGEM LIVRE DE CONTEXTO As Linguagens Livres de Contexto é um reconhecedor de linguagens, capaz de aceitar palavras corretas (cadeia, sentenças) da linguagem. Por exemplo, os autômatos. Um gerador
Leia maisConceitos de Análise Sintática
Conceitos de Análise Sintática Pro.f. Marcus Ramos UNIVASF Atualizado em 28 de outubro de 2016 The Theory of Parsing, Translation and Compiling Volume I: Parsing Alfred V. Aho Jeffrey D. Ullman Prentice
Leia maisSCC Capítulo 1 Linguagens Regulares e Autômatos Finitos
SCC-505 - Capítulo 1 Linguagens Regulares e Autômatos Finitos João Luís Garcia Rosa 1 1 Departamento de Ciências de Computação Instituto de Ciências Matemáticas e de Computação Universidade de São Paulo
Leia maisUNIVERSIDADE 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 maisLinguagens 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 maisLinguagens 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 maisA.Tomás, N.Moreira Modelos de Computação DCC-FCUP
1.1. NOTAÇÃO PARA CONJUNTOS 4 Capítulo 1 Preliminares 1.1 Notação para conjuntos Nesta secção vamos essencialmente rever alguma da notação que usaremos para conjuntos. Sendo A e B conjuntos, a A a pertence
Leia maisApostila 05 Assunto: Linguagens dos tipos 0 e 1
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 maisTeoria 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 maisConceitos 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 maisConceitos 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 maisGramá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 maisAutómatos de Pilha e Linguagens Livres de Contexto
Folha Prática Autómatos de Pilha e Linguagens Livres de Contexto 1 Autómatos de Pilha e Linguagens Livres de Contexto Autómatos de Pilha Não Determinísticos (APND) 1. Considere a seguinte tabela de transição
Leia maisOs movimentos do reconhecedor correspondem ao uso de derivações mais à esquerda; A árvore de sintaxe é montada de cima para baixo (da raiz em direção
Os movimentos do reconhecedor correspondem ao uso de derivações mais à esquerda; A árvore de sintaxe é montada de cima para baixo (da raiz em direção às folhas); Caracteriza a classe das gramáticas (e
Leia maisINE5317 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 maisModelos 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 maisApontamentos de Modelos de Computação. Ana Paula Tomás
Apontamentos de Modelos de Computação Ana Paula Tomás Departamento de Ciência de Computadores Faculdade de Ciências da Universidade do Porto 1999 Conteúdo 1 Preliminares 3 1.1 Notação para conjuntos.................................
Leia maisTEORIA DA COMPUTAÇÃO
LICENCIATURA EM ENGENHARIA INFORMÁTICA TEORIA DA COMPUTAÇÃO António Dourado Pereira Correia Advertência. Este documento é um texto de trabalho para apoio ao estudo da cadeira de Teoria da Computação. Não
Leia maisSegunda 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 maisFundamentos 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 maisCOMPILADORES. Revisão Linguagens formais Parte 02. Prof. Geovane Griesang
Universidade de Santa Cruz do Sul UNISC Departamento de informática COMPILADORES Revisão Linguagens formais Parte 02 Prof. geovanegriesang@unisc.br Legenda: = sigma (somatório) = delta ε = epsilon λ =
Leia maisINE5403 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 maisLINGUAGENS FORMAIS E AUTÔMATOS. Prova 2-10/06/ Prof. Marcus Ramos
LINGUAGENS FORMAIS E AUTÔMATOS Prova 2-10/06/2011 - Prof. Marcus Ramos NOME: _ Colocar seu nome no espaço acima; A prova pode ser feita à lápis ou caneta; A duração é de três horas; As questões da parte
Leia maisDisciplina: 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 maisUniversidade 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 maisFundamentos de Teoria da Computação
Fundamentos de Teoria da Computação (Versão preliminar em constante modificação) Prof. Celso Antônio Alves Kaestner, Dr. Eng. Universidade Tecnológica Federal do Paraná celsokaestner@utfpr.edu.br 28 de
Leia maisProf. 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 maisExpressõ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 maisLinguagens 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 Linguagens Formais e Autômatos - P. Blauth Menezes 1 Linguagens
Leia maisCapí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 maisGramá3ca Livre de Contexto (GLC)
Linguagens Formais e Autômatos Gramá3ca Livre de Contexto (GLC) Andrei Rimsa Álvares Material extraído do livro e slides do Prof. Newton Vieira (hep://dcc.ufmg.br/~nvieira) Sumário Gramá4cas livres de
Leia maisFaculdade de Computação
UNIVERSIDADE FEDERAL DE UBERLÂNDIA Faculdade de Computação Disciplina : Teoria da Computação - 1 0 Semestre 007 Professora : Sandra Aparecida de Amo Solução da Lista de Exercícios n o 1 Exercícios de Revisão
Leia maisMatemá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 maisCurso de Engenharia de Computação - UTFPR Teoria da Computação - Prof. Celso Kaestner Lista de exercícios
Curso de Engenharia de Computação - UTFPR Teoria da Computação - Prof. Celso Kaestner Lista de exercícios 1. Escreva a expressão regular para as seguintes linguagens sobre o alfabeto {0, 1}: strings começando
Leia maisCT-200 Fundamentos de Linguagens Formais e Automata - Aula 01 - In...
1 de 1 1//010 09:1 CT-00 Fundamentos de Linguagens Formais e Automata Aula 01 - Introdução Segunda Aula (updated just now by YourName) Propriedades de Relações Partições Seja A={1,,,...,10} e os subconjuntos
Leia maisApostila 02. Objetivos: Estudar os autômatos finitos Estudar as expressões regulares Estudar as gramáticas regulares Estudar as linguagens regulares
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 maisGramáticas e Linguagens Independentes de Contexto
Gramáticas e Linguagens Independentes de Contexto 6.1 Responde às uestões seguintes considerando a gramática independente de contexto G = (V, {a, b}, P, R), onde o conjunto de regras P é: R XRX S S at
Leia maisGramáticas Regulares
Capítulo 3 Expressões Regulares, Linguagens Regulares es e Gramáticas Regulares 3.1. Expressões Regulares (RE) 3.2. Relação entre ER e Linguagens Regulares (LR) 3.3. Gramáticas Regulares (GR) 3.4. Síntese
Leia maisPropriedades das Linguagens Livres do Contexto
Capítulo 7 Propriedades das Linguagens Livres do Contexto As linguagens livres do contexto ocupam uma posição central na hierarquia das linguagens formais. Por um lado, as linguagens livres do contexto
Leia maisHistó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 maisConstrução de Compiladores Aula 16 - Análise Sintática
Construção de Compiladores Aula 16 - Análise Sintática Bruno Müller Junior Departamento de Informática UFPR 25 de Setembro de 2014 1 Introdução Hierarquia de Chomsky Reconhecedores Linguagens Livres de
Leia maisAula 7: Autômatos com Pilha
Teoria da Computação Segundo Semestre, 2014 Aula 7: Autômatos com Pilha DAINF-UTFPR Prof. Ricardo Dutra da Silva Vamos adicionar um memória do tipo pilha ao nossos autômatos para que seja possível aceitar
Leia maisAFNs, Operações Regulares e Expressões Regulares
AFNs, Operações Regulares e Expressões Regulares AFNs. OperaçõesRegulares. Esquematicamente. O circulo vermelho representa o estado inicial q 0, a porção verde representa o conjunto de estados de aceitação
Leia maisFundamentos da Teoria da Computação
Fundamentos da Teoria da Computação Primeira Lista de Exercícios - Aula sobre dúvidas da lista Sérgio Mariano Dias 1 1 UFMG/ICEx/DCC Entrega da 1 a lista: 31/03/2009 Sérgio Mariano Dias (UFMG) Fundamentos
Leia maisFundamentos da Teoria da Computação
Fundamentos da Teoria da Computação Terceira Lista de Exercícios - Aula sobre dúvidas Sérgio Mariano Dias 1 1 Mestrando em Ciência da Computação Departamento de Ciência da Computação Universidade Federal
Leia maisCurso: 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 maisLista 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 maisAula 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 maisTeoria de Linguagens 1 o semestre de 2018 Professor: Newton José Vieira Primeira Lista de Exercícios Data de entrega: 17/4/2018 Valor: 10 pontos
Departamento de Ciência da Computação ICEx/UFMG Teoria de Linguagens o semestre de 8 Professor: Newton José Vieira Primeira Lista de Exercícios Data de entrega: 7/4/8 Valor: pontos. Uma versão do problema
Leia maisLinguagens 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 maisExercí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 maisCompiladores 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 maisGramáticas Livres de Contexto
Gramáticas Livres de Contexto 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 / 42 Frase do dia Quando vires
Leia maisGramática. Prof. Yandre Maldonado e Gomes da Costa. Prof. Yandre Maldonado - 1
Prof. Yandre Maldonado - 1 Prof. Yandre Maldonado e Gomes da Costa yandre@din.uem.br Prof. Yandre Maldonado - 2 Mecanismo gerador que permite definir formalmente uma linguagem; Através de uma gramática
Leia maisGramática. Gramática. Gramática
Prof. Yandre Maldonado - 1 Prof. Yandre Maldonado e Gomes da Costa yandre@din.uem.br Prof. Yandre Maldonado - 2 Mecanismo gerador que permite definir formalmente uma linguagem; Através de uma gramática
Leia maisExpressõ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 maisO que é Linguagem Regular. Um teorema sobre linguagens regulares. Uma aplicação do Lema do Bombeamento. Exemplo de uso do lema do bombeamento
O que é Linguagem Regular Um teorema sobre linguagens regulares Linguagem regular Uma linguagem é dita ser uma linguagem regular se existe um autômato finito que a reconhece. Dada uma linguagem L: É possível
Leia maisAutomata e Linguagens Formais
Automata e Linguagens Formais 6 Prof. Carlos H. C. Ribeiro carlos@ita.br Análise Sintática (Parsing) GLCs ambíguas Grafos de GLCs Estratégias para parsing Exemplos de parsers Análise Sintática (Parsing)
Leia maisCAPÍTULO 5 LINGUAGENS LIVRES DE CONTEXTO
CAPÍTULO 5 LINGUAGEN LIVRE DE CONTEXTO 5.1. Introdução 181 5.2 Gramáticas livres de contexto 181 5.2.1. Definição e exemplos 183 5.2.2 Derivação pela extrema direita e pela extrema esquerda 188 5.2.3.Árvores
Leia mais1 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 maisCompiladores I Prof. Ricardo Santos (cap 3 Análise Léxica: Introdução, Revisão LFA)
Compiladores I Prof. Ricardo Santos (cap 3 Análise Léxica: Introdução, Revisão LFA) Análise Léxica A primeira fase da compilação Recebe os caracteres de entrada do programa e os converte em um fluxo de
Leia maisAutómatos de pilha e GIC
Autómatos de pilha e GIC Proposição 17.1. A classe de linguagens aceites por autómatos de pilha está contida na classe das linguagens independentes de contexto. Dem. Seja L uma linguagem independente de
Leia maisTeoria de Linguagens 2 o semestre de 2017 Professor: Newton José Vieira Primeira Lista de Exercícios Data de entrega: 19/9/2017 Valor: 10 pontos
Departamento de Ciência da Computação ICEx/UFMG Teoria de Linguagens o semestre de 7 Professor: Newton José Vieira Primeira Lista de Exercícios Data de entrega: 9/9/7 Valor: pontos. Uma versão do problema
Leia maisLinguagens 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 maisTeoria 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 maisConceitos de Análise Sintática
Conceitos de Análise Sintática Pro.f. Marcus Ramos UNIVASF Atualizado em 21 de dezembro de 2017 às 14:18 The Theory of Parsing, Translation and Compiling Volume I: Parsing Alfred V. Aho Jeffrey D. Ullman
Leia maisLinguagens Formais e Autômatos
Linguagens Formais e Autômatos Soluções para a Lista 4 Universidade Federal do ABC Aritanan Gruber aritanan.gruber@ufabc.edu.br http://professor.ufabc.edu.br/ aritanan.gruber Os exercícios marcados com
Leia mais