Lenguajes formales y autómatas

Anuncio
Lenguajes Formales y Autómatas
1. Introducción
TEMA 1. Introducción
1. Símbolo, alfabeto, palabra y lenguaje
2. Operaciones con palabras
3. Operaciones con lenguajes
4. Clasificación y descripción de los lenguajes
5. Generación y reconocimiento de los lenguajes
1
Lenguajes Formales y Autómatas
1. Introducción
1. Símbolo, alfabeto, palabra y lenguaje
-
Alfabeto: conjunto no vacío de símbolos (∑ i )
Ejemplo:
∑ 1 = {a, b}
∑
2
= {0,1}
■
-
Palabra: secuencia de símbolos de un alfabeto
• Longitud: número de símbolos que forman una palabra.
• λ ≡ palabra vacía
-
Universo de un alfabeto: al universo pertenecen todas las palabras que
se pueden formar con un alfabeto (∑ *i )
•
-
λ siempre está en el universo de cualquier alfabeto
Lenguaje: cualquier subconjunto del universo del alfabeto ∑ i
Ejemplo:
L1 = {aa, bb, b}
L2 = {λ, a}
■
-
Lenguaje vacío: es aquel lenguaje que no contiene ninguna palabra.
LΦ = {}
-
Lenguaje que contiene la palabra vacía
L λ = { λ}
2. Operaciones con palabras
-
Concatenación
Sean x, y dos palabras. El resultado de concatenar x con y (x·y) da como
resultado las dos palabras seguidas.
x, y
x·y = xy
Se trata de una operación interna.
•
•
•
2
Asociativa
No conmutativa, en general (será conmutativa para palabras
iguales y para λ)
Elemento neutro: λ
Lenguajes Formales y Autómatas
-
1. Introducción
Potencia
La potencia i-ésima de una palabra x es el resultado de concatenar esa
palabra consigo misma i veces
xi=x···x
•
-
i veces
x0= λ
Reflexión
La reflexión es la inversión de la palabra, es decir, invertir el orden de los
símbolos.
x-1
Ejemplo:
x = ab
x-1 = ba
■
3. Operaciones con lenguajes
-
Unión
Sean L1 y L2 definidos para el mismo alfabeto, la unión será:
L1 U L2 = {x | x ∈ L1 ó x ∈ L2 }
Ejemplo:
L1 = {a, b}
L2 = {b, c}
L1 U L2 = {a, b, c}
■
•
•
•
•
-
Operación cerrada
Asociativa
Idempotente ( L U L = L)
Elemento neutro L U LΦ = LΦ U L = L
Intersección
L1 I L2 = {x | x ∈ L1 y x ∈ L2 }
Ejemplo:
L1 = {a, b}
L2 = {b, c}
L1 I L2 = {b}
■
3
Lenguajes Formales y Autómatas
-
1. Introducción
Resta
L1 – L2 = { x | x ∈ L1 y x ∉ L2 }
Ejemplo:
L1 = {a, b}
L1 − L2 = {a}
L2 = {b, c}
L2 − L1 = {c}
■
-
Concatenación
L1 ·L2 = {x. y | x ∈ L1 , y ∈ L2 }
•
•
•
•
Operación cerrada
Asociativa
No conmutativa, en general
Elemento neutro ( L·{λ} = {λ}·L = L ) , ( L·LΦ = LΦ ·L = LΦ )
Ejemplo:
L1 = {a, aa}
L2 = {b, ab}
L1 ·L2 = {ab, aab, aaab}
■
-
Potencia
Li = L···L
•
i veces
L0 = {λ}
Ejemplo:
L13 = {0,1}
L3 = {0,1}
L23 = {00,01,10,11}
L23 = {000,001,010,011,100,101,110,111}
■
-
Clausura positiva o cierre positivo
Se trata de la unión infinita de todas las potencias del lenguaje,
excluyendo la potencia 0.
∞
L = U Li = L1 U L2 U L3 U···
+
i =1
4
Lenguajes Formales y Autómatas
1. Introducción
Ejemplo:
L3 = {0,1}
L+3 = {0,1,00,01,10,11,000,001,010,011,100,101,110,111}
■
-
Clausura de Kleene estrella
Se trata de la unión infinita de todas las potencias del lenguaje.
∞
L* = U Li = L0 U L1 U L2 U···
i =0
•
L* = L+ U {λ}
•
L·L* = L+
Ejemplo:
L3 = {0,1}
L3 = {λ ,0,1,00,01,...}
■
-
Reflexión
Se aplica el operador reflexión a cada una de las palabras del lenguaje.
L−1 = {x −1 | x ∈ L}
Ejemplo: Sean los lenguajes L1, L2 y el alfabeto
∑
∑ ={1,2,3, a, b, c}
L1 = {1,2, a, b}
L2 = {1, b,3, c}
1) L1 U L2 = {1,2,3, a, b, c}
2) L1 I L2 = {1, b}
3) L1 − L2 = {2, a}
4) L1 ·L2 = {11,1b,13,1c,21,2b,23,2c, a1, ab, a3, ac, b1, bb, b3, bc}
5)( L1 ·L2 ) 2 = {1111,111b,1113,...}
6) L*1 ·L+2 =
7) L1−1 =
■
5
Lenguajes Formales y Autómatas
1. Introducción
Ejemplo: DNI
L1 = {0,1,2,3,4,5,6,7,8,9}
L2 = { A, B, C , D,..., Z }
L3 = {a, b, c, d ,..., z}
DNI’s con letras mayúsculas: L81 ·{−}·L2
DNI’s con letras mayúsculas y minúsculas:
( L81 ·{−}·L2 ) U ( L81 ·{−}·L3 )
■
4. Clasificación y descripción de los lenguajes
-
Lenguajes regulares: Contienen un número finito de palabras
-
Lenguajes independientes del contexto: contiene a los regulares
-
Lenguajes dependientes del contexto: contiene a los independientes
del contexto
-
Lenguajes con estructura de frase: contiene a los dependientes del
contexto.
L.E.F
L.D.C
L.I.C
Lenguajes
regulares
5. Generación y reconocimiento de lenguajes
6
Documentos relacionados
Descargar