Gramáticas ( [HMU00], Cap. 5.1)

Documentos relacionados
Alfabeto e palavras. Alfabeto conjunto finito de símbolos (Σ).

Autómatos finitos não determinísticos (AFND)

Capítulo 5. Linguagens livres de contexto

Outras Máquinas de Turing

Teoria da Computação Linguagens e Expressões Regulares, Autómatos de Estados Finitos

Os limites da computação algorítmica

Fundamentos de Bancos de Dados 3 a Prova Caderno de Questões

Gramáticas Livres de Contexto

Apostila 03 Linguagens Livres de Contexto

Inversão de Matrizes

Autômatos a pilha. UFRN/DIMAp/DIM0330 Linguagens formais. David Déharbe. david/enseignement/2003.

Faculdade de Computação

Recorrendo à nossa imaginação podemos tentar escrever números racionais de modo semelhante: 1 2 =

Modelagem de uma Vending Machine utilizando um Autômato Finito com Saída

Linguagens Formais e Compilação Ficha de exercícios

Gramáticas Livres de Contexto

6.3 Equivalência entre Autômatos com Pilha Não-Determinísticos e Gramáticas Livre do Contexto

Exercícios e questões de Álgebra Linear

Lista n 0 1 de Exercícios de Teoria da Computação

I. Conjunto Elemento Pertinência

Cap. II EVENTOS MUTUAMENTE EXCLUSIVOS E EVENTOS NÃO- EXCLUSIVOS

Entropia, Entropia Relativa

Conhecimentos Bancários. Item Derivativos

M =C J, fórmula do montante

Lógica para computação Professor Marlon Marcon

Inteligência Artificial

Aula 5. Uma partícula evolui na reta. A trajetória é uma função que dá a sua posição em função do tempo:

Pró-Reitoria de Ensino de Graduação P L A N O D E E N S I N O

p. 2 Trechos de Material Didático (Apostila) e Conteúdo do Livro Texto, de autoria de Marcus Ramos, João José Neto e Ítalo Vega i <= 1

Exercício. Exercício

Unidade 1: O Computador

Universidade Federal de Goiás Campus Catalão Departamento de Matemática

Acionamento de Motores: PWM e Ponte H

O Cálculo λ sem Tipos

Corrente elétrica, potência, resistores e leis de Ohm

AV2 - MA UMA SOLUÇÃO

Linguagens, Gramáticas e Máquinas

Exercícios de Teoria da Computação Autómatos, gramáticas e expressões regulares

Introdução aos Computadores Introdução à Ciência de Computadores Outubro / 16

8 AULA. Operações com Conjuntos: União e Interseção LIVRO. META: Introduzir algumas propriedades da união e da interseção de conjuntos.

Cadeira de Tecnologias de Informação. Ano lectivo 2009/2010. Sites dinâmicos. Com Expression Web TI2009/10 EWD_1. Filipa Pires da Silva (2009)

Erros de Estado Estacionário. Carlos Alexandre Mello. Carlos Alexandre Mello 1

Árvores de Derivação para GLC Ambigüidade nas GLC Precedência, Prioridade e Associatividade de operadores

Engenharia de Software II

Introdução ao determinante

CRIAÇÃO DE TABELAS NO ACCESS. Criação de Tabelas no Access

ENG1000 Introdução à Engenharia

Conteúdos: Língua, Linguagens e códigos Linguagem verbal e não verbal

Definição 2.2 (Palavra) As sequências finitas de letras são designadas por palavras sobre o alfabeto V.

LINGUAGENS, CÓDIGOS E SUAS TECNOLOGIAS

Optimização e Algoritmos (2004/2005)

Prof. Daniela Barreiro Claro

IFRN - Campus Parnamirim Curso de eletricidade turma de redes de Computadores Figura 35 Relé eletromecânico

Teoria dos Grafos. Valeriano A. de Oliveira Socorro Rangel Departamento de Matemática Aplicada.

Curso de Formação de Oficiais Conhecimentos Específicos ENGENHARIA DE COMPUTAÇÃO CADERNO DE QUESTÕES

Álgebra Linear Aplicada à Compressão de Imagens. Universidade de Lisboa Instituto Superior Técnico. Mestrado em Engenharia Aeroespacial

Relações. Antonio Alfredo Ferreira Loureiro. UFMG/ICEx/DCC MD Relações 1

Driver Next Versão 1.0 de Português

Modelo Lógico: Tabelas, Chaves Primárias e Estrangeiras

Estruturas de Repetição

EXERCÍCIOS DE ÁLGEBRA LINEAR E GEOMETRIA ANALÍTICA (sistemas de equações lineares e outros exercícios)

INDUÇÃO MATEMÁTICA. Primeiro Princípio de Indução Matemática

MATÉRIA TÉCNICA APTTA BRASIL SENSORES MAGNETO-RESTRITIVOS UM CRUZAMENTO DE DOIS TIPOS DE SENSORES CONHECIDOS.

Definição de determinantes de primeira e segunda ordens. Seja A uma matriz quadrada. Representa-se o determinante de A por det(a) ou A.

Usando potências de 10

LEITURA E ESCRITA FOTO NOME DESCRIÇÃO

Análise de Sistemas 3º Bimestre (material 2)

a) O Word é um editor de TEXTOS. Com ele é possível digitar cartas, currículos e trabalhos escolares.

Módulo de Equações do Segundo Grau. Equações do Segundo Grau: Resultados Básicos. Nono Ano

Modelo Entidade Relacionamento (MER) Professor : Esp. Hiarly Alves

Cristais e Filtros Piezelétricos

Introdução de XML. Dados da Web. Gerência de Dados da Web. A Web representa, nos dias de hoje, um repositório universal de dados, onde:

Adriana da Silva Santi Coord. Pedagógica de Matemática SMED - Abril/2015

INICIADOS - 2ª Sessão ClubeMath

Em linguagem matemática, essa proprieade pode ser escrita da seguinte maneira: x. 1 = x Onde x representa um número natural qualquer.

Roteiro da Aula 3. Sintaxe. 2 Exemplos. 4 Propriedades de Fechamento. Teoria da Aula 3. Roteiro

Lista de Exercícios 5: Soluções Teoria dos Conjuntos

Lógica de Predicados

Polos Olímpicos de Treinamento. Aula 1. Curso de Teoria dos Números - Nível 3. Divisibilidade 1. Carlos Gustavo Moreira e Samuel Barbosa Feitosa

=E4/26 F10 =F4 = G4+F5

Linguagem Formais e Autômatos

Fundamentos de Programação. Diagrama de blocos

1.2. Recorrendo a um diagrama em árvore, por exemplo, temos: 1.ª tenda 2.ª tenda P E E

Matemática Discreta - 08

Informação Prova de Equivalência à Frequência Agrupamento de Escolas de ANTÓNIO NOBRE. DISCIPLINA: Inglês CÓDIGO DA PROVA: 358

Disciplina: Álgebra Linear - Engenharias ], C = Basta adicionar elemento a elemento de A e B que ocupam a mesma posição na matriz.

Aula 03. Processadores. Prof. Ricardo Palma

Conteúdos do Vestibulinho 2016

Disciplina: Eletrificação Rural

ÁLGEBRA BOOLEANA. Foi um modelo formulado por George Boole, por volta de 1850.

Se inicialmente, o tanque estava com 100 litros, pode-se afirmar que ao final do dia o mesmo conterá.

Sergio da Silva Aguiar Universidade Estadual do Sudoeste da Bahia - I Seemat

Série Rações Semanais Xpath e XSLT Rogério Araújo

ActivALEA. ative e atualize a sua literacia

ATIVIDADE 02 O CONJUNTO ARQUITETÔNICO DA PAMPULHA: UM CARTÃO-POSTAL DA CIDADE

Universidade Estadual de Campinas Departamento de Matemática. Teorema de Jacobson. Adriana Wagner(RA: ) Gustavo Terra Bastos(RA: )

Transformadores Trifásicos

Matrizes de Transferência de Forças e Deslocamentos para Seções Intermediárias de Elementos de Barra

Transcrição:

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 é a linguagem de {0, 1} obtida por aplicação, uma ou mais vezes, da seguintes regras: (1) P ɛ (2) P 0P 1 que definem a categoria sintáctica P, que representa as palavras de L. Por exemplo, 0011 L pois P 0P 1 00P 11 0011 Departamento de Ciência de Computadores da FCUP MC Aula 12 1

Gramática para o Português f rase f rase nominal f rase verbal f rase nominal determinante f rase nominal1 f rase nominal1 nome c adjs f rase nominal1 nome p adjs adj adjs adjs ɛ f rase verbal verbo i f rase verbal verbo t f rase nominal nome c gato nome c rato nome p joana verbo i dorme verbo t comeu determinante o adj preto Departamento de Ciência de Computadores da FCUP MC Aula 12 2

Esta gramática deriva a frase o gato preto comeu o rato, mas não a frase gato rato comeu o. Departamento de Ciência de Computadores da FCUP MC Aula 12 3

f rase f rase nominal f rase verbal determinante f rase nominal1 f rase verbal o f rase nominal1 f rase verbal o nome c adjs f rase verbal o gato adjs f rase verbal o gato adj adjs f rase verbal o gato preto frase verbal o gato preto verbo t f rase nominal o gato preto comeu frase nominal o gato preto comeu determinante f rase nominal1 o gato preto comeu o frase nominal1 o gato preto comeu o nome c o gato preto comeu o rato Departamento de Ciência de Computadores da FCUP MC Aula 12 4

Gramática para expressões aritméticas E E E E E+E E (E) E I I D I DI Uma derivação para 5 (6 + 19) D 0 D 1 D 2 D 3 D 4 D 5 D 6 D 7 D 8 D 9 E E E I E D E 5 E 5 (E) 5 (E + E) 5 (I + E) 5 (D + E) 5 (6 + E) 5 (6 + I) 5 (6 + DI) 5 (6 + 1I) 5 (6 + 1D) 5 (6 + 19) Departamento de Ciência de Computadores da FCUP MC Aula 12 5

A linguagem L sobre {a,b} descrita pela expressão regular a(a +b )b pode ser descrita pela gramática seguinte: S at b T A T B A aa A ɛ B bb B ɛ abbb L, porque:s at b abb abbb abbbb abbɛb abbb ab L, porque:s at b abb aɛb ab aaaab L, porque:s at b aab aaab aaaab aaaaab aaaaɛb aaaab Departamento de Ciência de Computadores da FCUP MC Aula 12 6

aaabbb L porque depois do segundo a a palavra só pode ter um único b no fim. Depois de aplicada a regra para A, só podem ser derivados a. Departamento de Ciência de Computadores da FCUP MC Aula 12 7

Gramáticas Independentes de Contexto Uma gramática independente de contexto é um quádruplo G = (V, Σ, P, S) V é um conjunto finito não vazio de variáveis ou não terminais (ou categorias sintáticas) Σ é um conjunto finito não vazio, disjunto de V, alfabeto ou conjunto de terminais S V é o símbolo inicial de G P é uma relação binária finita de V em (V Σ). Os elementos de P denominam-se produções ou regras.se (X, w) P escreve-se X w Se existirem várias regras para um mesmo não terminal X podemos abreviar numa, separando-as com do lado direito X α 1, X α 2, X α 3 fica X α 1 α 2 α 3 Departamento de Ciência de Computadores da FCUP MC Aula 12 8

Porquê Independentes de contexto? Porque as regras que definem um não terminal X não estão restritas a um contexto. Para gramáticas mais gerais podemos ter regras do tipo α β com α, β (V Σ), α ε e no caso das GIC tem de se ter α V! Aplicações As GICs permitem descrever conjuntos infinitos de um modo finito.são especialmente utilizadas para a descrição da sintaxe de linguagens programação. Departamento de Ciência de Computadores da FCUP MC Aula 12 9

Exemplos de GIC G 1 = ({E, D, I}, {0, 1, 2, 3, 4, 5, 6, 7, 8, 9,, +, (, )}, {E E E E + E (E) I, I D DI, D 0 1 2 3 4 5 6 7 8 9}, E) G 2 = ({S}, {0, 1}, {S 0S1 ε}, S) G 4 = ({S}, {(, )}, {S (S) SS ɛ}, S) G 3 = ({S, A, B}, {a, b}, {S ab ba, A a as baa, B b bs abb}, S) A linguagem que uma gramática gera é constituída pelas palavras que podem ser derivadas a partir do símbolo inicial (usando as regras). Departamento de Ciência de Computadores da FCUP MC Aula 12 10

Derivação num passo Seja G = (V, Σ, P, S) e α, β (V Σ). β é derivável de α num passo α 1 G β se β resulta de α substituindo uma ocorrência dum não terminal A em α por γ, onde A γ P. Isto é, se existem α 1, α 2 (V Σ) tal que α = α 1 Aα 2 e β = α 1 γα 2 1 G é uma relação binária em (V Σ) Sendo G = ({S, A, B}, {a, b}, {S ab ba, A a as baa, B b bs abb}, S) aaab 1 G aaasb com α 1 = aa, α 2 = b e a regra A as. Departamento de Ciência de Computadores da FCUP MC Aula 12 11

Derivação em n passos Define-se a relação n G, derivação em n passos por indução para n 0: α 0 G α 1 G α, para α (V Σ) β, derivação num passo α n+1 G β, se existe γ tal que α n G γ e γ 1 G β Derivação A relação de derivação G é o fecho reflexivo e transitivo da relação derivação num passo 1 G, isto é G= n 0 n G Se α (V Σ) diz-se que é uma forma sentencial.uma forma sentencial α é uma frase se consiste apenas em símbolos terminais (α Σ ). Departamento de Ciência de Computadores da FCUP MC Aula 12 12

Linguagem gerada por uma GIC A linguagem gerada por G = (V, Σ, P, S), L(G) é o conjunto L(G) = {x Σ S G x} Uma linguagem A Σ é independente de contexto, se A = L(G) para alguma gramática independente de contexto G. Duas gramáticas G 1 e G 2 são equivalentes se L(G 1 ) = L(G 2 ). Departamento de Ciência de Computadores da FCUP MC Aula 12 13

A linguagem L = {0 n 1 n n 0 } é IC Temos que mostrar que existe uma GIC G tal que L = L(G). Seja a gramática G 2 = ({S}, {0, 1}, {S 0S1 ε}, S) Por exemplo, 0 3 1 3 L(G 2 )porque: S 1 G 2 0S1 1 G 2 00S11 1 G 2 000S111 1 G 2 000ɛ111 = 000111i.e, Lema 12.1. n 0, S n+1 G 2 Dem. Por indução em n. S 4 G 2 000111. 0 n 1 n Vamos mostrar que L(G 2 ) = L ( ) Pelo lema 12.1 se x L então x L(G 2 ). ( ) Inversamente, se x L(G 2 ) então x é da forma 0 n 1 n, o que pode ser mostrado por indução no número de passos de derivação: Departamento de Ciência de Computadores da FCUP MC Aula 12 14

Base. Se n = 1 então x = ɛ Indução. Se S n+1 x então S 1 0S1 n 0y1 = x e por hipótese de indução y é da forma 0 m 1 m. Donde x = 0 m+1 1 m+1 L Departamento de Ciência de Computadores da FCUP MC Aula 12 15

Leituras [HMU00] (Cap. 5.1) Referências [HMU00] John E. Hopcroft, Rajeev Motwani, and Jeffrey D. Ullman. Introduction to Automata Theory, Languages and Computation. Addison Wesley, 2nd edition, 2000. [Tom99] Ana Paula Tomás. Apontamentos de modelos de computação. Technical report, Departamento de Ciência de Computadores, FCUP, 1999. Departamento de Ciência de Computadores da FCUP MC Aula 12 16