Documente Academic
Documente Profesional
Documente Cultură
SIN131
Linguagens e Gramáticas
• Linguagem:
– Conceito fundamental em Computação e Informática
• Símbolo ou Caractere:
– Entidade abstrata básica, não definida formalmente.
– Base para defnições
– Exemplos: letras e dígitos.
• Portanto:
– Conjunto infnito não é alfabeto
– ∅ é um alfabeto
• Alfabeto binário { a, b } ou { 0, 1 }
– Domínio de valores de um bit
– Analogia com a representação interna dos computadores reais
– Poucos símbolos: simplifca as diversas abordagens desenvolvidas.
• Notação
– justaposição dos símbolos que representam as palavras
componentes
• Propriedades
– Elemento Neutro: ε w = w = w ε
– Associativa: v(w t) = (v w)t
• Parênteses podem ser omitidos: v w t
– v w = baaaabb
– v ε = v = baaaa
• Σ* é indutivamente defnido
– Base de Indução
• ε ∈ Σ*
• Para qualquer x ∈ Σ, vale x ∈ Σ*
– Passo de Indução
• Se u e v são palavras de Σ*,
• então a concatenação u v é uma palavra de Σ*
• L1 ∩ L2 = {0}
• L1 - L2 = {11}
• Formalismo Gramática
– Uma maneira de especificar de forma finita
linguagens (eventualmente) infnitas
• Na qual:
– P = { S → XY,
– X → XaA | XbB | F
– Aa → aA, Ab → bA, AY → Ya,
– Ba → aB, Bb → bB, BY → Yb,
– Fa → aF, Fb → bF, FY → ε }
• Gera a linguagem
– { ww | w é palavra de { a, b }* }
SIN 131 – Introdução à Teoria da Computação Prof. Matheus Haddad
Gramática: Exemplo 2
• Derivação de baba: G = ({ S, X, Y, A, B, F }, { a, b }, P,
S)
– S ⇒ S → XY P = { S → XY,
– XY ⇒ X → XaA X → XaA | XbB | F,
– XaAY ⇒ AY → Ya Aa → aA,
– XaYa ⇒ X → XbB Ab → bA,
AY → Ya,
– XbBaYa ⇒ Ba → aB
Ba → aB,
– XbaBYa ⇒ BY → Yb Bb → bB,
– XbaYba ⇒ X→F BY → Yb,
– FbaYba ⇒ Fb → bF Fa → aF,
– bFaYba ⇒ Fa → aF Fb → bF,
FY → ε }
– baFYba ⇒ FY → ε
– baba
• 11) Sejam v=aa, w=b e t=ab palavras sobre o alfabeto Σ={a, b}.
Representar os resultados das seguintes expressões:
– (a) v(wt),
– (b) (vw)t,
– (c) vw3t2
– (d) (vw)2ε6t0
• Qual o tamanho da palavra resultante em cada caso?
SIN 131 – Introdução à Teoria da Computação Prof. Matheus Haddad
Exercícios
• 12) Dada a gramática G. Defna qual linguagem L(G) ela gera. Derive 3
palavras pertencentes a linguagem.
– G = (V, T, P, S)
• V = {S, A}
• T = {0, 1}
• P = { S ⟶ 0A
• A ⟶ 1S | 1 }
SIN131
Linguagens e Gramáticas