Gramáticas Livres do Contexto
Revisão
Teoria da Computação
Pós-Graduação em Ciência da
Computação
Profa. Sandra de Amo
Gramática
• G = (V,T,P,S)
V = variáveis, S = variável inicial
T = terminais
P = conjunto de regras do tipo
w -> u onde
w = string de variáveis e terminais
u = string de variáveis e terminais
Diferença entre gramáticas e
autômatos
Autômato
Gramática
Gera strings
Mecanismo Enumerador
Reconhece strings
Mecanismo Reconhecedor
Quais são as palavras
A palavra “aba”
pertence a linguagem
L?
da Linguagem L
aaa
abab
abbb
….
SIM
NÃO
Diferença entre gramáticas e
autômatos
Autômato
Gramática
Sim
abab
Não
Aaaabb
Abababa
Sweklk
Slkdjfil
Slkdfjlskd
…..
abab pertence a L ?
Gramática Livre do Contexto
S
S -> AB
S->a
A-> AC
A -> a
B-> AC
C -> c
C-> SB
B
A
A
C
a
c
A
A
C
C
B
S
a
a
c
A
C
z=acaaacc
a
c
Derivação de uma palavra
S -> AB
S->a
A-> AC
A -> a
B-> AC
C -> c
C-> SB
z=acaaacc
S
B
A
A
C
a
c
A
A
C
C
B
S
a
a
c
A
a
C
c
S  AB  ACB  a C B ac B  acAC  ac AC C  acaCC  aca SBC 
acaaBC  acaaACC  acaaaCC  acaaacC  acaaacc
Tamanho da derivação = número de regras aplicadas = 13
Linguagem gerada por uma
Gramática Livre do Contexto
• G = gramática livre do contexto
• L(G) = {w  Σ* | existe uma derivação de
w usando as regras da gramática G}
Download

Slides