Академический Документы
Профессиональный Документы
Культура Документы
Lenguajes Formales
1. Lenguajes Formales
Definición:
Un lenguaje L sobre un alfabeto Σ es un
conjunto de cadenas finitas formadas por
elementos de Σ. Las cadenas en un lenguaje son
llamadas también sentencias.
Dr. Ricardo Pérez Aguila Autómatas y Lenguajes Formales
1.1 Conceptos Básicos
Ejemplo:
Sea Σ = {0,1}
Dos lenguajes sobre Σ podrían ser:
L1 = {0, 01, 110}
L2 = {c: c es una cadena con n 0’s y n 1’s, n ≥ 1}
= {01, 0011, 010101, 0000011111, …}
De hecho:
Card(L1) = 3
Card(L2) = ∞
Ejemplo:
Sean σ = 01011 y τ = 001 entonces
στ = 01011001
τσ = 00101011
Propiedad: στ ≠ τσ
Dr. Ricardo Pérez Aguila Autómatas y Lenguajes Formales
1.1 Conceptos Básicos
Definición:
Sea x un símbolo. xn denota a la cadena
xxx
x
...
n
Ejemplo:
α5 = ααααα
Definición:
La longitud de una cadena σ es el número de
símbolos que forman a σ.
Ejemplo:
La longitud de la cadena σ = abc3628 es 7.
Definición:
La cadena vacía es aquella cuya longitud es
cero (no tiene símbolos) y se le denota por λ.
σλ = λσ = σ
x0 = λ
Dr. Ricardo Pérez Aguila Autómatas y Lenguajes Formales
1.1 Conceptos Básicos
Definición:
Sea Σ un alfabeto.
A → x1x2…xn
A→λ
G = {Σ, N, S, P}
Dr. Ricardo Pérez Aguila Autómatas y Lenguajes Formales
1.1 Conceptos Básicos
Ejemplo:
Sea G1 = {Σ, N, S, P} la gramática dada por:
Σ = {a, b, c}
N = {S, A, B, C}
Símbolo inicial: S
P se forma por las producciones:
S → AaB
S→B
A → aB
A→a
B → bC
C → ac
C→λ
Ejemplo:
Las siguientes son sentencias de la gramática G1:
AaB, λ, AABBcc, etc.
Dr. Ricardo Pérez Aguila Autómatas y Lenguajes Formales
1.1 Conceptos Básicos
Definición:
Sea G = {Σ, N, S, P} una gramática. Sea σ una sentencia de la forma
σ = γ1Aγ2 donde γ1 y γ2 son también sentencias y A es un símbolo no
terminal. Supóngase que la producción
A → x1x2…xn
σ 1 = aBabC ⇒ abCabC
↑
B →bC
σ 2 = aaCba ⇒ aaba
↑
C →λ
σ1 ⇒ τ1 ⇒ τ2 ⇒ τ3 ⇒ … ⇒ τn ⇒ σ2
σ1 ⇒* σ2
Dr. Ricardo Pérez Aguila Autómatas y Lenguajes Formales
1.1 Conceptos Básicos
Ejemplo:
Sea σ = S una sentencia de la gramática G1.
Entonces:
Por lo tanto:
σ ⇒* aabC
Dr. Ricardo Pérez Aguila Autómatas y Lenguajes Formales
1.1 Conceptos Básicos
Definición:
L(G) contiene cadenas formadas por símbolos terminales tales que pueden ser derivadas
a partir del símbolo inicial S y las producciones en P.
S ⇒ B ⇒ bC ⇒ bac = σ 3 ∴ S ⇒ *σ 3 , σ 3 ∈ L(G1 )
↑ ↑ ↑
S →B B →bC C → ac
E ⇒ T ⇒ T * F ⇒ T * a ⇒ F * a ⇒ (E) * a ⇒ (E + T ) * a
↑ ↑ ↑ ↑ ↑ ↑
E →T T →T *F F →a T →F F →( E ) E → E +T
⇒ ( E + F ) * a ⇒ ( E + a ) * a ⇒ (T + a ) * a ⇒ ( F + a ) * a
↑ ↑ ↑ ↑
T →F F →a E →T T →F
⇒ (a + a) * a
↑
F →a
∴ E ⇒ * ( a + a ) * a, ( a + a ) * a ∈ L(G0 )
Dr. Ricardo Pérez Aguila Autómatas y Lenguajes Formales
1.1 Conceptos Básicos
Ejemplo:
¿La cadena
(a + a) * ( a +
está en L(G0)?
Solo existe una producción que involucra al símbolo terminal +:
E→E+T
No existe una producción que involucre a la cadena vacía λ.
Entonces λ no puede ser derivada a partir de T.
Por lo tanto (a + a) * ( a ∉ L(G0).
⇒ aababbCaba ⇒ aababbabbaba
↑ ↑
C → abb C → abb
∴ aababbabbaba ∈ L(G2 )
Dr. Ricardo Pérez Aguila Autómatas y Lenguajes Formales
1.1 Conceptos Básicos
Definición:
Sea G una gramática. Un árbol de derivación para una
sentencia σ ∈ L(G) se construye de la siguiente manera:
1) El nodo raíz estará dado por el símbolo inicial.
2) Si A es un símbolo no terminal que es reemplazado por una
sentencia de acuerdo a la producción
A → x1x2…xn
entonces el nodo A tendrá por hijos en el árbol a los nodos
x1, x2, …, xn (en ese orden).
3) Las hojas del árbol corresponden siempre a símbolos
terminales.
Ejemplo:
a B a
La cadena S b
aababbabbaba ∈ L(G2).
a B a
Se tiene el siguiente
árbol de derivación:
b C C
a b b a b b
Ejemplo:
T * F
Demostrar mediante un
árbol de derivación que
(a + a) * a ∈ L(G0). F a
( E )
Todos los nodos hoja
corresponden a símbolos E + T
terminales.
T F
∴(a + a) * a ∈ L(G0)
F a
Ejemplo:
Demostrar que la cadena adios ∈ L(G3).
∴ adios ∈ L(G3 )
Definición:
S ⇒ ( S ) ⇒ ( SS ) ⇒ (( ) S ) ⇒ (( )( ))
↑ ↑ ↑ ↑
S →( S ) S → SS S →( ) S →( )
Definición:
A 0 A A 0 A
A 0 A 1 1 A 0 A
1 1 1 1
Por lo tanto la gramática G7 es ambigua.
Definición:
Ejercicios Capítulo 1
Incisos 2 al 22.