Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Manual
Manual
Regulares
Operadores y
Operandos
Equivalencia
de Lenguajes
de FA y Expresiones Regulares
Lenguajes RE
Leyes
Algebraicas
de las
Expresiones
Regulares
INAOE
(INAOE) 1 / 52
Contenido
Expresiones
Regulares
Operadores y
Operandos
Equivalencia
1 Expresiones Regulares
de Lenguajes
de FA y
Lenguajes RE
(INAOE) 2 / 52
Expresiones Regulares
Expresiones Regulares
Expresiones
Regulares
Operadores y
Operandos
Equivalencia
Es un equivalente algebraico para un autómata.
de Lenguajes
de FA y • Utilizado en muchos lugares como un lenguaje para
Lenguajes RE
Leyes
describir patrones en texto que son sencillos pero muy
Algebraicas
de las
útiles.
Expresiones
Regulares • Pueden definir exactamente los mismos lenguajes que
los autómatas pueden describir: Lenguajes regulares
• Ofrecen algo que los autómatas no: Manera declarativa
de expresar las cadenas que queremos aceptar
(INAOE) 3 / 52
Expresiones Regulares
Expresiones Regulares
Expresiones
Regulares
Operadores y
Operandos
• Ejemplos de sus usos
Equivalencia
de Lenguajes • Comandos de búsqueda, e.g., grep de UNIX
de FA y
Lenguajes RE • Sistemas de formateo de texto: Usan notación de tipo
Leyes expresión regular para describir patrones
Algebraicas • Convierte la expresión regular a un DFA o un NFA y
de las
Expresiones simula el autómata en el archivo de búsqueda
Regulares
• Generadores de analizadores-léxicos. Como Lex o Flex.
• Los analizadores léxicos son parte de un compilador.
Dividen el programa fuente en unidades lógicas
(tokens), como while, números, signos (+, −, <, etc.)
• Produce un DFA que reconoce el token
(INAOE) 4 / 52
Expresiones Regulares
Expresiones Regulares
Expresiones
Regulares • Las expresiones regulares denotan lenguajes. Por
Operadores y
Operandos
ejemplo, la expresión regular: 01∗ + 10∗ denota todas
Equivalencia las cadenas que son o un 0 seguido de cualquier
de Lenguajes
de FA y cantidad de 1’s o un 1 seguido de cualquier cantidad de
Lenguajes RE
0’s.
Leyes
Algebraicas • Operaciones de los lenguajes:
de las
Expresiones 1 Unión: Si L y M son dos lenguajes, su unión se denota
Regulares
por L ∪ M (e.g., L = {11, 00}, M = {0, 1},
LcuoM = {0, 1, 00, 11})
2 Concatenación: La concatenación es: LM o L.M (e.g.,
LM = {110, 111, 000, 001} )
3 Cerradura (o cerradura de Kleene): Si L es un lenguaje
su cerradura se denota por: L∗
(L0 = {}, L1 = L, L2 = LL. Si
L = {0, 11}, L2 = {00, 011, 110, 1111})
(INAOE) 5 / 52
Operadores y Operandos
Expresiones Regulares
Expresiones
Regulares
Operadores y
Operandos
(INAOE) 6 / 52
Operadores y Operandos
Operandos
Expresiones
Regulares
Operadores y
Operandos
1 Si E y F son expresiones regulares, entonces E + F
Equivalencia también lo es denotando la unión de L(E) y L(F ).
de Lenguajes
de FA y L(E + F ) = L(E) ∪ L(F ).
Lenguajes RE
2 Si E y F son expresiones regulares, entonces EF
Leyes
Algebraicas también lo es denotando la concatenación de L(E) y
de las
Expresiones L(F ). L(EF ) = L(E)L(F ).
Regulares
3 Si E es una expresión regular, entonces E ∗ también lo
es y denota la cerradura de L(E). Osea
L(E ∗ ) = (L(E))∗
4 Si E es una expresión regular, entonces (E) también lo
es. Formalmente: L((E)) = L(E).
(INAOE) 7 / 52
Operadores y Operandos
Precedencia
Expresiones
Regulares
Operadores y
Operandos
1 El asterisco de la cerradura tiene la mayor precedencia
Equivalencia
de Lenguajes
de FA y
2 Concatenación sigue en precedencia a la cerradura, el
Lenguajes RE operador “dot”. Concatenación es asociativa y se
Leyes
Algebraicas
sugiere agrupar desde la izquierda (i.e. 012 se agrupa
de las
Expresiones
(01)2).
Regulares
3 La unión (operador +) tiene la siguiente precedencia,
también es asociativa.
4 Los paréntesis pueden ser utilizados para alterar el
agrupamiento
(INAOE) 8 / 52
Operadores y Operandos
Ejemplos
Expresiones
Regulares
Operadores y
Operandos
(INAOE) 9 / 52
Operadores y Operandos
Ejemplos
Expresiones
Regulares
Operadores y
Operandos
Equivalencia
de Lenguajes
de FA y 1 Encuentra la expresión regular para el conjunto de
Lenguajes RE
cadenas sobre el alfabeto {a, b, c} que tiene al menos
Leyes
Algebraicas una a y al menos una b
de las
Expresiones
Regulares
2 Encuentra la expresión regular para el conjunto de
cadenas de 0’s y 1’s tal que cada par de 0’s adyacentes
aparece antes de cualquier par de 1’s adyacentes
(INAOE) 10 / 52
Operadores y Operandos
Soluciones
Expresiones
Regulares
Operadores y
Operandos 1 c ∗ a(a + c)∗ b(a + b + c)∗ + c ∗ b(b + c)∗ a(a + b + c)∗
Equivalencia
de Lenguajes
Osea, cuando la primera a esta antes que la primera b
de FA y
Lenguajes RE
o cuando la primera b está antes de la primera a
Leyes 2 (10 + 0)∗ ( + 1)(01 + 1)∗ ( + 1)
Algebraicas
de las (10 + 0)∗ ( + 1) es el conjunto de cadenas que no
Expresiones
Regulares tienen dos 1’s adyacentes. La segunda parte es el
conjunto de cadenas que no tienen dos 0’s adyacentes.
De hecho + 1 lo podrı́amos eliminar porque se puede
obtener el 1 de lo que sigue, por lo que podemos
simplificarlo a: (10 + 0)∗ (01 + 1)∗ ( + 1)
(INAOE) 11 / 52
Equivalencia de Lenguajes de FA y Lenguajes RE
Equivalencia de Lenguajes de FA y
Expresiones
Lenguajes RE
Regulares
Operadores y
Operandos
Equivalencia
de Lenguajes
de FA y
Lenguajes RE
• Se mostrará que un NFA con transiciones- puede
Leyes aceptar el lenguaje de una RE.
Algebraicas
de las • Después, se mostrará que un RE puede describir el
Expresiones
Regulares lenguaje de un DFA (la misma construcción funciona
para un NFA).
• Los lenguajes aceptados por DFA, NFA, -NFA, RE son
llamados lenguajes regulares.
(INAOE) 12 / 52
Equivalencia de Lenguajes de FA y Lenguajes RE
Operadores y
Teorema 3.4: Si L = L(A) para algún DFA A, entonces
Operandos
existe una expresión regular R tal que L = L(R).
Equivalencia
de Lenguajes Prueba: Suponiendo que A tiene estados {1, 2, . . . , n}, n
de FA y
Lenguajes RE finito. Tratemos de construir una colección de RE que
Leyes describan progresivamente conjuntos de rutas del diagrama
Algebraicas
de las de transiciones de A
Expresiones (k)
Regulares • Rij es el nombre de la RE cuyo lenguaje es el
conjunto de cadenas w.
• w es la etiqueta de la ruta del estado i al estado j de A.
Esta ruta no tiene estado intermedio mayor a k . Los
estados inicial y terminal no son intermedios, i y/o j
pueden ser igual o menores que k
(INAOE) 13 / 52
Equivalencia de Lenguajes de FA y Lenguajes RE
Operadores y
Operandos
Equivalencia
(k)
de Lenguajes • Para construir Rij se utiliza una definición inductiva de
de FA y
Lenguajes RE k = 0 hasta k = n
Leyes
Algebraicas
• BASE: k = 0, implica que no hay estados intermedios.
de las
Expresiones
Sólo dos clases de rutas cumplen con esta condición:
Regulares 1 Un arco del nodo (estado) i al nodo j
2 Una ruta de longitud 0 con un solo nodo i
• Si i 6= j, solo el caso 1 es posible.
(INAOE) 14 / 52
Equivalencia de Lenguajes de FA y Lenguajes RE
Operadores y
Operandos
(INAOE) 15 / 52
Equivalencia de Lenguajes de FA y Lenguajes RE
Operadores y
Operandos
(INAOE) 16 / 52
Equivalencia de Lenguajes de FA y Lenguajes RE
(INAOE) 17 / 52
Equivalencia de Lenguajes de FA y Lenguajes RE
Operadores y
Operandos • Si combinamos las expresiones de las rutas de los dos
(k) (k−1) (k−1) (k−1) (k−1)
Equivalencia
de Lenguajes
tipos: Rij = Rij + Rik (Rkk )∗ Rkj para todas
de FA y
Lenguajes RE
las etiquetas de las rutas del estado i al j que no pasan
Leyes por estados mayores que k .
Algebraicas (n)
de las • Eventualmente tendremos Rij .
Expresiones
Regulares
• Suponemos que 1 es el estado inicial. El estado de
aceptación puede ser un conjunto de estados. La
expresión regular para el lenguaje del autómata es la
(n)
suma (unión) de todas las expresiones R1j tal que j es
un estado de aceptación.
(INAOE) 18 / 52
Equivalencia de Lenguajes de FA y Lenguajes RE
Ejemplo
Expresiones
Regulares
Operadores y
Operandos
Equivalencia
de Lenguajes Un DFA que acepta todas las cadenas que tienen al menos
de FA y
Lenguajes RE un 0
Leyes
Algebraicas
de las
Expresiones
Regulares
(INAOE) 19 / 52
Equivalencia de Lenguajes de FA y Lenguajes RE
Ejemplo
Expresiones
Regulares
Operadores y
Operandos
Equivalencia (0)
de Lenguajes Inicialmente sustituimos para la base: (i) Rij = , (ii)
de FA y
(0) (0)
Lenguajes RE
Rij = + a y (iii) Rij = + a1 + a2 + . . . + ak
Leyes
(0)
Algebraicas
de las
R11 =+1
Expresiones (0)
Regulares R12 =0
(0)
R21 =∅
(0)
R22 = ( + 0 + 1)
(INAOE) 20 / 52
Equivalencia de Lenguajes de FA y Lenguajes RE
Ejemplo
Expresiones
Regulares
Operadores y
Operandos
Equivalencia
de Lenguajes
Ahora para el paso de inducción:
(1) (0) (0) (0) (0)
de FA y
Lenguajes RE
Rij = Rij + Ri1 (R11 )∗ R1j
Leyes Por sustitución directa Simplificado
Algebraicas
(1)
de las
Expresiones
R11 = + 1 + ( + 1)( + 1)∗ ( + 1) 1∗
(1)
Regulares
R12 = 0 + ( + 1)( + 1)∗ 0 1∗ 0
(1)
R21 = ∅ + ∅( + 1)∗ ( + 1) ∅
(1)
R22 = + 0 + 1 + ∅( + 1)∗ 0 +0+1
(INAOE) 21 / 52
Equivalencia de Lenguajes de FA y Lenguajes RE
Ejemplo
Expresiones
Regulares
Operadores y
Operandos
(2) (1) (1) (1) (1)
Equivalencia
de Lenguajes
Rij = Rij + Ri2 (R22 )∗ R2j
de FA y
Lenguajes RE Por sustitución directa Simplificado
(2)
Leyes R11 = 1∗ + 1∗ 0( + 0 + 1)∗ ∅ 1∗
Algebraicas
(2)
de las
Expresiones
R12 = 1∗ 0 + 1∗ 0( + 0 + 1)∗ ( + 0 + 1) 1∗ 0(0 + 1)∗
(2)
Regulares
R21 = ∅ + ( + 0 + 1)( + 0 + 1)∗ ∅ ∅
(2)
R22 = + 0 + 1 + ( + 0 + 1)( + 0 + 1)∗ (0 + 1)∗
( + 0 + 1)
(INAOE) 22 / 52
Equivalencia de Lenguajes de FA y Lenguajes RE
Construcción de la RE final
Expresiones
Regulares
Operadores y
Operandos
Unión de todas las expresiones donde el primer estado es el
Equivalencia
de Lenguajes estado inicial y el segundo el estado de aceptación
de FA y
Lenguajes RE • Estado inicial: 1
Leyes
Algebraicas
• Estado final: 2
de las (2)
Expresiones • Sólo necesitamos R12
Regulares
• 1∗ 0(0 + 1)∗
Este método funciona también para NFA y -NFA pero su
construcción es muy costosa, hasta en el orden de 4n
sı́mbolos.
(INAOE) 23 / 52
Equivalencia de Lenguajes de FA y Lenguajes RE
Ejemplo
Expresiones
Regulares
Operadores y
Operandos
(INAOE) 24 / 52
Equivalencia de Lenguajes de FA y Lenguajes RE
Operadores y
Operandos
Equivalencia
de Lenguajes
• Evita duplicar trabajo en algunos puntos del teorema
de FA y
Lenguajes RE
anterior
Leyes • Ahora utilizaremos autómatas que podrán tener RE
Algebraicas
de las como etiquetas.
Expresiones
Regulares • El lenguaje del autómata es la unión de todas las rutas
que van del estado inicial a un estado de aceptación.
• Concatenando los lenguajes de las RE que van a través
de la ruta.
• En la siguiente figura se muestra un autómata al cual se
va a eliminar el estado “s”.
(INAOE) 25 / 52
Equivalencia de Lenguajes de FA y Lenguajes RE
Operadores y
Operandos
Equivalencia
de Lenguajes
de FA y
Lenguajes RE
Leyes
Algebraicas
de las
Expresiones
Regulares
(INAOE) 26 / 52
Equivalencia de Lenguajes de FA y Lenguajes RE
Operadores y
Operandos • Se eliminan todos los arcos que incluyen a “s”
Equivalencia • Se introduce, para cada predecesor qi de s y cada
de Lenguajes
de FA y
Lenguajes RE
sucesor pj de s, una RE que representa todas las rutas
Leyes
que inician en qi , van a s, quizás hacen un loop en s
Algebraicas
de las
cero o más veces, y finalmente van a pj .
Expresiones
Regulares • La expresión para estas rutas es Qi S ∗ Pj .
• Esta expresión se suma (con el operador unión) al arco
que va de qi a pj .
• Si este arco no existe, se añade primero uno con la RE
∅
• El autómata resultante después de la eliminación de “s”
es el siguiente:
(INAOE) 27 / 52
Equivalencia de Lenguajes de FA y Lenguajes RE
Operadores y
Operandos
Equivalencia
de Lenguajes
de FA y
Lenguajes RE
Leyes
Algebraicas
de las
Expresiones
Regulares
(INAOE) 28 / 52
Equivalencia de Lenguajes de FA y Lenguajes RE
Operadores y
Operandos
Equivalencia
de Lenguajes 1 Para cada estado de aceptación q, aplicar el proceso
de FA y
Lenguajes RE de reducción para producir un autómata equivalente
Leyes
Algebraicas
con RE como etiquetas en los arcos. Eliminar todos los
de las
Expresiones
estados excepto q y el estado inicial q0 .
Regulares
2 Si q 6= q0 , se genera un autómata con 2 estados como
el siguiente, una forma de describir la RE de este
autómata es (R + SU ∗ T )∗ SU ∗
(INAOE) 29 / 52
Equivalencia de Lenguajes de FA y Lenguajes RE
Operadores y
Operandos
Equivalencia
de Lenguajes
de FA y
Lenguajes RE
Leyes
Algebraicas
de las
Expresiones
Regulares
(INAOE) 30 / 52
Equivalencia de Lenguajes de FA y Lenguajes RE
Operadores y
Operandos
Equivalencia
de Lenguajes
de FA y
Lenguajes RE
Leyes
Algebraicas
de las
Expresiones
Regulares
(INAOE) 31 / 52
Equivalencia de Lenguajes de FA y Lenguajes RE
Ejemplo
Expresiones Para el siguiente NFA que acepta cadenas de 0’s y 1’s de
Regulares
Operadores y
manera que tienen un 1 dos o tres posiciones antes del final.
Operandos
Equivalencia
de Lenguajes
de FA y
Lenguajes RE
Leyes
Algebraicas
de las
Expresiones
Regulares
(INAOE) 32 / 52
Equivalencia de Lenguajes de FA y Lenguajes RE
Operadores y
Operandos
Equivalencia
de Lenguajes
Teorema 3.7: Todo lenguaje definido por una RE también
de FA y esta definido por un autómata finito.
Lenguajes RE
Leyes
Prueba: Suponemos L = L(R) para la expresión regular R.
Algebraicas
de las
Mostramos que L = L(E) para algún -NFA E con:
Expresiones
Regulares 1 Exactamente un estado de aceptación
2 Sin arcos que lleguen al estado inicial
3 Sin arcos que salgan del estado de aceptación
(INAOE) 33 / 52
Equivalencia de Lenguajes de FA y Lenguajes RE
Operadores y
Operandos
Base: cumpliendo las condiciones 1, 2, y 3.
Equivalencia
de Lenguajes
de FA y
Lenguajes RE
Leyes
Algebraicas
de las
Expresiones
Regulares
(INAOE) 34 / 52
Equivalencia de Lenguajes de FA y Lenguajes RE
Operadores y
Operandos
Equivalencia Inducción:
de Lenguajes
de FA y
Lenguajes RE a) Para las expresiones R + S
Leyes
Algebraicas
de las
Expresiones
Regulares
(INAOE) 35 / 52
Equivalencia de Lenguajes de FA y Lenguajes RE
Operadores y
Operandos
Equivalencia
de Lenguajes
de FA y
Lenguajes RE
b) Para las expresiones RS
Leyes
Algebraicas
de las
Expresiones
Regulares
(INAOE) 36 / 52
Equivalencia de Lenguajes de FA y Lenguajes RE
Operadores y
Operandos
Equivalencia
de Lenguajes
de FA y c) Para las expresiones R ∗
Lenguajes RE
Leyes
Algebraicas
de las
Expresiones
Regulares
(INAOE) 37 / 52
Equivalencia de Lenguajes de FA y Lenguajes RE
Operadores y
Operandos
Equivalencia
de Lenguajes
de FA y
Lenguajes RE
d) Para las expresiones (R)
Leyes
Algebraicas
de las
Expresiones
Regulares
(INAOE) 38 / 52
Equivalencia de Lenguajes de FA y Lenguajes RE
Ejemplo
Expresiones
Regulares Convertir la RE (0 + 1)∗ 1(0 + 1) a un -NFA.
Operadores y
Operandos
Equivalencia
de Lenguajes
de FA y
Lenguajes RE
Leyes
Algebraicas
de las
Expresiones
Regulares
(INAOE) 39 / 52
Equivalencia de Lenguajes de FA y Lenguajes RE
Ejemplo
Expresiones
Regulares
Operadores y
Dada la siguiente tabla de transición de un DFA:
Operandos 0 1
Equivalencia
de Lenguajes
→ q1 q2 q1
de FA y
Lenguajes RE
q2 q3 q1
Leyes ∗q3 q3 q2
Algebraicas
de las (0)
Expresiones • Dar las expresiones regulares para Rij
Regulares
(1)
• Dar las expresiones regulares para Rij y simplificar las
expresiones
• Construir el diagrama de transición para el DFA y dar la
expresión regular de su lenguaje eliminando el estado
q2
(INAOE) 40 / 52
Equivalencia de Lenguajes de FA y Lenguajes RE
Ejemplo
Expresiones
Convierte la siguiente expresión regular a un NFA con
Regulares transiciones : 01∗
Operadores y
Operandos
Equivalencia
de Lenguajes
de FA y
Lenguajes RE
Leyes
Algebraicas
de las
Expresiones
Regulares
(INAOE) 41 / 52
Leyes Algebraicas de las Expresiones Regulares
Asociatividad y Conmutatividad
Expresiones
Regulares
Operadores y
Operandos
Equivalencia
de Lenguajes
Existen un conjunto de leyes algebraı́cas que se pueden
de FA y
Lenguajes RE
utilizar para las expresiones regulares:
Leyes • Ley conmutativa para la unión: L + M = M + L
Algebraicas
de las
Expresiones
• Ley asociativa para la unión: (L + M) + N = L + (M + N)
Regulares
• Ley asociativa para la concatenación: (LM)N = L(MN)
NOTA: La concatenación no es conmutativa, es decir
LM 6= ML
(INAOE) 42 / 52
Leyes Algebraicas de las Expresiones Regulares
Identidades y Aniquiladores
Expresiones
Regulares
Operadores y
Operandos
Equivalencia
de Lenguajes
de FA y • Una identidad para un operador es un valor tal que
Lenguajes RE
cuando el operador se aplica a la identidad y a algún
Leyes
Algebraicas otro valor, el resultado es el otro valor.
de las
Expresiones
Regulares
• 0 es la identidad para la adición: 0 + x = x + 0 = x.
• 1 es la identidad para la multiplicación:
1×x =x ×1=x
(INAOE) 43 / 52
Leyes Algebraicas de las Expresiones Regulares
Identidades y Aniquiladores
Expresiones
Regulares
Operadores y
Operandos
Equivalencia
de Lenguajes
de FA y • Un aniquilador para un operador es un valor tal que
Lenguajes RE
cuando el operador se aplica al aniquilador y algún otro
Leyes
Algebraicas valor, el resultado es el aniquilador.
de las
Expresiones • 0 es el aniquilador para la multiplicación:
Regulares
0×x =x ×0=0
• No hay aniquilador para la suma
(INAOE) 44 / 52
Leyes Algebraicas de las Expresiones Regulares
Identidades y Aniquiladores
Expresiones
Regulares
Operadores y
Operandos
Equivalencia
de Lenguajes
de FA y
Lenguajes RE • ∅ es la identidad para la unión: ∅ + L = L + ∅ = L
Leyes
Algebraicas • es la identidad para la concatenación: L = L = L
de las
Expresiones • ∅ es el aniquilador para la concatenación: ∅L = L∅ = ∅
Regulares
(INAOE) 45 / 52
Leyes Algebraicas de las Expresiones Regulares
Leyes Distributivas
Expresiones
Regulares
Operadores y
Operandos
Equivalencia
de Lenguajes
de FA y • Como la concatenación no es conmutativa, tenemos
Lenguajes RE
dos formas de la ley distributiva para la concatenación:
Leyes
Algebraicas • Ley Distributiva Izquierda para la concatenación sobre
de las
Expresiones
Regulares
unión: L(M + N) = LM + LN
• Ley Distributiva Derecha para la concatenación sobre
unión: (M + N)L = ML + NL
(INAOE) 46 / 52
Leyes Algebraicas de las Expresiones Regulares
Ley de Idempotencia
Expresiones
Regulares
Operadores y
Operandos • Se dice que un operador es idempotente (idempotent)
Equivalencia
de Lenguajes
si el resultado de aplicarlo a dos argumentos con el
de FA y
Lenguajes RE
mismo valor es el mismo valor
Leyes • En general la suma no es idempotente: x + x 6= x
Algebraicas
de las (aunque para algunos valores sı́ aplica como 0 + 0 = 0)
Expresiones
Regulares • En general la multiplicación tampoco es idempotente:
x × x 6= x
• La unión e intersección son ejemplos comunes de
operadores idempotentes. Ley idempotente para la
unión: L + L = L
(INAOE) 47 / 52
Leyes Algebraicas de las Expresiones Regulares
Operadores y
Operandos
Equivalencia
• (L∗ )∗ = L∗ (Idempotencia para la cerradura)
de Lenguajes
de FA y • ∅∗ =
Lenguajes RE
Leyes
• ∗ =
• L+ = LL∗ = L∗ L, L+ se define como L + LL + LLL + . . .
Algebraicas
de las
Expresiones
Regulares • L∗ = + L + LL + LLL + . . .
• LL∗ = L + LL + LLL + LLLL + . . .
• L∗ = L+ +
• L? = + L
(INAOE) 48 / 52
Leyes Algebraicas de las Expresiones Regulares
Operadores y
Operandos
• Se puede proponer una variedad infinita de leyes para
Equivalencia
de Lenguajes RE
de FA y
Lenguajes RE • Se reduce a probar la igualdad de dos lenguajes
Leyes
Algebraicas especı́ficos
de las
Expresiones • Ejemplo: probar que (L + M)∗ = (L∗ M ∗ )∗
Regulares
• Para esto, probamos que las cadenas que están en
(L + M)∗ también están en (L∗ M ∗ )∗ , y
• Probamos que las cadenas que están en (L∗ M ∗ )∗
también están en (L + M)∗
(INAOE) 49 / 52
Leyes Algebraicas de las Expresiones Regulares
Operadores y
Operandos
• Cualquier RE con variables se puede ver como una RE
Equivalencia
de Lenguajes concreta sin variables, viendo cada variable como si
de FA y
Lenguajes RE fuera un sı́mbolo diferente
Leyes
Algebraicas • La expresión (L + M)∗ se puede ver como (a + b)∗ .
de las
Expresiones Utilizamos esta forma como una guı́a para concluir
Regulares
sobre los lenguajes.
• Podemos analizar el lenguaje que nos describe:
(a + b)∗
• Y analizar el lenguaje que nos describe: (a∗ b ∗ )∗
(INAOE) 50 / 52
Leyes Algebraicas de las Expresiones Regulares
Pasos de Prueba
Expresiones
Regulares
Operadores y
Operandos
(INAOE) 51 / 52
Leyes Algebraicas de las Expresiones Regulares
Ejemplos
Expresiones
Regulares
Operadores y
Operandos
Equivalencia
de Lenguajes Probar que se cumple o no se sumple:
de FA y
Lenguajes RE • R+S =S+R
Leyes
Algebraicas • (R ∗ )∗ = R ∗
de las
Expresiones
Regulares
• (R + S)∗ = R ∗ + S ∗
• S(RS + S)∗ R = RR ∗ S(RR ∗ S)∗
Simplificar: (0 + 1)∗ 1(0 + 1) + (0 + 1)∗ 1(0 + 1)(0 + 1)
(INAOE) 52 / 52