A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Gramática Prof. Yandre Maldonado e Gomes da Costa Gramática - Prof. Yandre - 1.

Apresentações semelhantes


Apresentação em tema: "Gramática Prof. Yandre Maldonado e Gomes da Costa Gramática - Prof. Yandre - 1."— Transcrição da apresentação:

1 Gramática Prof. Yandre Maldonado e Gomes da Costa Gramática - Prof. Yandre - 1

2 Gramática n Gramática é um mecanismo que nos permite definir formalmente uma linguagem; n Através dela pode-se gerar todas as sentenças da linguagem definida por ela; Gramática - Prof. Yandre - 2

3 Gramática n Gramática é uma quádrupla ordenada G = (V, T, P, S), onde: –V é um conjunto finito de símbolos não-terminais (ou variáveis); –T é um conjunto finito de símbolos terminais disjunto de V; –P é um conjunto finito de pares, denominados regras de produção tal que a primeira componente é palavra de (V T) + e a segunda componente é palavra de (V T) * ; –S é um elemento de V, denominado símbolo inicial (ou símbolo de partida). Gramática - Prof. Yandre - 3

4 Gramática n Os símbolos de T são aqueles que aparecem nos programas de uma linguagem de programação. É o alfabeto em cima do qual a linguagem é definida; n Os elementos de V são símbolos auxiliares que são criados para permitir a definição das regras da linguagem. Eles correspondem à categorias sintáticas da linguagem definida: –Português: sentença, predicado, verbo,...; –Pascal: programa, bloco, procedure,...; Gramática - Prof. Yandre - 4

5 Gramática n Uma regra de produção (, ) é representada por ; n As regras de produção definem as condições de geração das sentenças; n A aplicação de uma regra de produção é denominada derivação; n Uma regra indica que pode ser substituído por sempre que aparecer; n Enquanto houver símbolo não-terminal na cadeia em derivação, esta derivação não terá terminado; Gramática - Prof. Yandre - 5

6 Gramática n O símbolo inicial é o símbolo através do qual deve iniciar o processo de derivação de uma sentença; n Observações: –V T = –Os elementos de T são os terminais. Procuraremos representá-los por letras minúsculas (a, b, c, d,...) –Os elementos de V são os não-terminais. Procuraremos representá-los por letras maiúsculas (A, B, C, D,...) –As cadeias mistas, isto é, aquelas que contém símbolos de V e símbolos de T (cadeias pertencentes à (V T) * ) serão representadas por letras gregas (,,,,...) Gramática - Prof. Yandre - 6

7 Gramática n Exemplo: –G 1 = ({S, A, B}, {a, b}, P, S) onde: P = { 1) S AB 2) A a 3) B b } –Quais as cadeias terminais geradas por esta gramática? Gramática - Prof. Yandre - 7

8 Gramáticas –G 2 V = {Sentença, Sn, Sv, Artigo, Verbo, Substantivo, Complemento} T = {peixe, isca, mordeu, o, a} P = { 1) Sentença Sn Sv 2) Sn Artigo Substantivo 3) Sv Verbo Complemento 4) Complemento Artigo Substantivo 5) Artigo o 6) Artigo a 7) Substantivo peixe 8) Substantivo isca 9) Verbo mordeu} S = Sentença Gramática - Prof. Yandre - 8

9 –G 3 - Eliminando os problemas de concordância de gênero V = {Sentença, Sn, Sv, ArtigoF, ArtigoM, Verbo, SubstantivoF, SubstantivoM, Complemento} T = {peixe, isca, mordeu, o, a} P = { 1) Sentença Sn Sv 2) Sn ArtigoF SubstantivoF 3) Sn ArtigoM SubstantivoM 4) Sv Verbo Complemento 5) Complemento ArtigoF SubstantivoF 6) Complemento ArtigoM SubstantivoM 7) ArtigoF a 8) ArtigoM o 9) SubstantivoF isca 10) SubstantivoM peixe 11) Verbo mordeu} S = Sentença Gramática - Prof. Yandre - 9

10 Gramáticas n BNF - Forma Normal de Backus –Substitui o símbolo por ::=; –Os não-terminais são ladeados por ; –É usada para regras que apresentam um único símbolo não-terminal do lado esquerdo; –Quando houverem repetições do lado esquerdo, do tipo: ::= 1 ::= 2... ::= n escreve-se: ::= 1 | 2 |... | n Gramática - Prof. Yandre - 10 * Os símbolos, :, = e | não fazem parte da linguagem, apenas ajudam a descrevê-la.

11 –G 3 - Descrição em BNF 1) ::= 2) ::= | 4) ::= 5) ::= | 7) ::= a 8) ::= o 9) ::= isca 10) ::= peixe 11) ::= mordeu} S = Gramática - Prof. Yandre - 11

12 Árvore de Derivação Sintática Gramática - Prof. Yandre - 12 opeixemordeu aisca

13 Gramáticas n Geração direta ( ): –Considere,,, (V T) * Uma cadeia gera diretamente ( ) uma cadeia sse: P Gramática - Prof. Yandre - 13

14 Gramáticas n Geração ( * ): –Considere,,, (V T) * Uma cadeia gera ( *) uma cadeia sse: 1, 2,..., n tal que n n 0 Gramática - Prof. Yandre - 14

15 Gramáticas n Assim, em G 1 temos: n S * ab n S * aB n AB * ab n E em G 3, temos: n * o peixe mordeu a n * o Gramática - Prof. Yandre - 15

16 n Definições: –Forma sentencial: uma cadeia (V T) * é uma forma sentencial de uma gramática sse S, ou seja, é um embrião para alguma sentença gerada pela gramática, ou a própria sentença. –Sentença: uma forma sentencial, é uma sentença de G sse T *. Portanto, as cadeias geradas pela gramática são as sentenças de G. Gramáticas Gramática - Prof. Yandre - 16 *

17 n Exemplo: dada a gramática G 1 = ({A, B}, {a, b, c}, P, A) onde: P = { 1) A aB 2)B bB 3)B c } Indique se as seguintes cadeias são sentenças ou formas sentenciais produzidas por G 1 : Gramáticas Gramática - Prof. Yandre - 17 abc A a abB abbbB abbbc Sentença Forma Sentencial

18 G 1 = ({A, B}, {a, b, c}, P, A) onde: P = { 1) A aB 2) B bB 3)B c } Gramáticas Gramática - Prof. Yandre - 18 G 2 = ({S, A, B, C}, {a, b, c}, P, S) onde: P = { 1) S A 2) A BaC 3) B bB 4) B b 5) C cC 6) C c } n Descrição de linguagens: –A linguagem gerada pela gramática G 1 descrita acima, poderia ser expressa da seguinte forma: L(G 1 )={ab n c, n 0} –A linguagem gerada pela gramática G 2 descrita acima, poderia ser expressa da seguinte forma: L(G 2 )={b i ac j, i 1, j 1}


Carregar ppt "Gramática Prof. Yandre Maldonado e Gomes da Costa Gramática - Prof. Yandre - 1."

Apresentações semelhantes


Anúncios Google