SlideShare una empresa de Scribd logo
1 de 27
Expresiones Generales
José André Cerón 15-0351
Jeffrey Arias 15-6547
Integrantes:
Tópicos
Expresiones
Regulares
Leyes
algebraicas
de
expresiones
regulares.
Equivalencia de
expresiones
regulares y
autómatas finitos.
Operaciones de
álgebra de
conjuntos entre
autómatas.
Modelos matemáticos
para construir
expresiones regulares
Operaciones de álgebra de conjuntos
entre autómatas.
6
Llamamos operaciones a formas
estándar de combinar o transformar
objetos matemáticos. Por ejemplo,
una operación habitual es la suma,
que en la expresión “3 + 7” combina
los objetos 3 y 7 dando como
resultado el objeto 10. El 3 y el 7, que
son los objetos que se combinan, son
los operandos, el “+” es la operación,
y el 10 es el resultado. Una operación
es binaria cuando tiene dos
operandos. Es unaria si tiene un solo
operando, como en la operación de la
raíz cuadrada.
Operaciones con Conjuntos
Unión de conjuntos, denotada por A  B, que contiene
los elementos del conjunto A y también los del conjunto
B, es decir, A  B = {x|x 2 A o x 2 B}. Por ejemplo, {1,
2, 3}  {3, 4} = {1, 2, 3, 4}. La unión de conjuntos es
conmutativa.
• Intersección
• Union
Intersección de conjuntos, escrita A  B, que
contiene los elementos que pertenecen
simultáneamente al conjunto A y al conjunto B, es
decir, A  B = {x|x 2 A y x 2 B}. Por ejemplo, {1,
2, 3}  {3, 4} = {3}.
Sean A y B conjuntos. Se definen las siguientes operaciones con los
conjuntos:


Diferencia
Diferencia de conjuntos, A − B, que contiene los
elementos de A que no están en B, esto es, A − B =
{x|x 2 A y x 62 B}. Por ejemplo, {1, 2, 3} − {3, 4}
= {1, 2}. La resta o diferencia de conjuntos no
siempre le “quita” elementos al primer conjunto; por
ejemplo {1, 2, 3} − {4, 5} = {1, 2, 3}. La diferencia
de conjuntos no es ni asociativa ni conmutativa.
−
Equivalencia de Conjuntos
La igualdad A  B = B  A es una de las llamadas “equivalencias de conjuntos”, que son muy
´útiles para reemplazar una expresión con operaciones de conjuntos por otra equivalente pero
más conveniente –por ejemplo más simple. En la lista siguiente presentamos algunas de las
equivalencias de más frecuente uso:
Leyes conmutativas
A  B = B  A, A  B = B  A, para los
conjuntos A y B.
Leyes de Morgan
A B 𝐶 = AC  BC, A B 𝐶 = AC BC
Doble complemento (AC
) 𝐶
= A
Leyes distributivas
A  (B  C) = (A  B)  (A  C), A  (B 
C) = (A  B)  (A  C).
Actividades
A partir de los siguientes Alfabetos 1 = 0,2,6,9,11 y
2 = 1,2,3,7,8,4 encontrar lo que se pide a
continuación.
𝟏

𝟐
𝟏

𝟐
𝟏
−
𝟐

𝟏
1
2
3
Ejemplos:
Ejemplos:
Union Diferencia Intersección Complemento
6
Un lenguaje es simplemente un conjunto de palabras. Así,
{abracadabra} es un lenguaje (de una sola palabra), {ali, baba,
y, sus, cuarenta, ladrones} es otro, ∗ es otro, etc. Puesto que
los lenguajes son conjuntos, podemos efectuar con ellos todas
las operaciones de los conjuntos (unión, intersección,
diferencia).
Definiremos además la operación de concatenación de
lenguajes, escrita como L1 • L2, como una extensión de la
concatenación de palabras: L1 • L2 = {w|w = xy, x 2 L1, y 2
L2}. Por ejemplo, dados los lenguajes L1 = {ca,ma} y L2 =
{nta, sa}, la concatenación L1L2 seria {canta, casa, manta,
masa}. Como se ve en este ejemplo, para calcular la
concatenación de dos lenguajes hay que concatenar cada
palabra del primero de ellos con cada una del segundo.
6
Lenguajes Regulares
Los lenguajes regulares se llaman así porque sus palabras contienen “regularidades” o repeticiones de los mismos
componentes, como por ejemplo en el lenguaje L1 siguiente:
L1 = {ab, abab, ababab, abababab, . . .}
En este ejemplo se aprecia que las palabras de L1 son simplemente repeticiones de “ab” cualquier número de veces.
Aquí la “regularidad” consiste en que las palabras contienen “ab” algún número de veces. Otro ejemplo más
complicado seria el lenguaje L2:
L2 = {abc, cc, abab, abccc, ababc, . . .}
La regularidad en L2 consiste en que sus palabras comienzan con repeticiones de “ab”, seguidas de repeticiones de
“c”. Similarmente es posible definir muchos otros lenguajes basados en la idea de repetir esquemas simples. Esta es la
idea básica para formar los lenguajes Regulares.
Definición formal de Lenguajes
Regulares
Un lenguaje L es regular si y solo si se cumple al menos una de las
condiciones siguientes:
L es finito L = R1R2 respectivamente.
L es la unión o la concatenación de otros
lenguajes regulares R1 y R2, L = R1 [ R2
o
L es la cerradura de Kleene de algún
lenguaje regular, L = R*.
Esta definición nos permite construir expresiones en la notación de conjuntos
que representan lenguajes regulares.
Actividades
Sea el lenguaje L de palabras formadas por a y b, pero que empiezan
con a, como aab, ab, a, abaa, etc. Probar que este lenguaje es regular, y
dar una expresión de conjuntos que lo represente.
Expresiones Regulares
6
La notación de conjuntos nos permite describir los
lenguajes regulares, pero nosotros quisiéramos una
notación en que las representaciones de los
lenguajes fueran simplemente texto (cadenas de
caracteres). Así las representaciones de los
lenguajes regulares serian simplemente palabras
de un lenguaje (el de las representaciones
correctamente formadas). Con estas ideas vamos a
definir un lenguaje, el de las expresiones regulares,
en que cada palabra va a denotar un lenguaje
regular.
Definición
Sea un alfabeto. El conjunto ER de las expresiones regulares sobre
contiene las cadenas en el alfabeto  {“”, “+”, “•”, “*”, “(”, “)”,””} que
cumplen con lo siguiente:
“” y “ ” ER
Si , entonces a
ER.
Si E1, E2 ER, entonces “(”E1“+”E2“)” ER,
“(”E1“•”E2“)” ER, “(”E1“)∗” ER.
1
2
3
Las comillas “ ” enfatizan
el hecho de que estamos
definiendo cadenas de
texto, no expresiones
matemáticas .
Actividades
Son ER en {a, b, c} las siguientes: “a”, “((a+b))*”, “((a • b) • c)”.
No son ER: “ab”, “((a • b(c)*)”.
6
Significado de las
ERLas ER son simplemente formulas cuyo propósito es representar cada una de ellas un
lenguaje. Así, el significado de una ER es simplemente el lenguaje que ella
representa.Por ejemplo.
la ER “” representa el conjunto vacío {}.
Para comprender intuitivamente la manera en que las ER representan lenguajes,
consideremos el proceso de verificar si una palabra dada w pertenece o no al
lenguaje representado por una ER dada. Vamos a decir que una palabra “empata”
con una expresión regular si es parte del lenguaje que esta representa.
A continuación definiremos formalmente la correspondencia entre la representación
(una ER) y el lenguaje representado.
Definición
El significado de una ER es una función L : ER → 2 ∗
(esto es, una función que toma
como entrada una expresión regular y entrega como salida un lenguaje), definida de la
manera siguiente:
L(“”) = {}
L(“(”R“•”S“)” ) = L(R)L(S),R, S 
ER
L( “(”R“)*” ) = L(R)*,R 
ER
L(“”) = ; (el conjunto
vacío)
L(“”) = {}, 
 .
L( “(”R“+”S“)” ) = L(R)
[ L(S),R, S  ER
1
3
5
2
4
6
Para calcular el significado de una ER en particular, se aplica a ella la función L. Las
ecuaciones dadas arriba se aplican repetidamente, hasta que el símbolo L
desaparezca.
Actividades
1. Buscar el significado de la ER “(((a + b))* • a)”
2. Encontrar una expresión regular para el lenguaje en {a, b}* en el
que inmediatamente antes de toda b aparece una a.
6
Metodología de
diseño de las ER
Al tratar de encontrar una ER para un lenguaje
dado, mientras más complejo sea el lenguaje es
obvio que resulta más difícil encontrar por pura
intuición dicha ER. En estos casos puede ser
conveniente trabajar en forma metódica. Una
técnica que funciona en muchos casos consiste en
determinar primero la estructura de la ER, dejando
unos “huecos” pendientes para resolverse luego.
Estos huecos, que llamaremos contextos, son
también lenguajes para los que habrá que
encontrar una ER.
Actividades
Obtener una ER para el lenguaje en el alfabeto {a, b, c} en que las
palabras contienen exactamente una vez dos b contiguas. Por ejemplo,
las palabras aabb, babba, pertenecen al lenguaje, pero no aaba, abbba
ni bbabb.
Para resolver este problema, expresamos primero la estructura de la ER
de la manera siguiente:
< contexto1 > bb < contexto2 >
6
Equivalencia de expresiones
regulares y autómatas
finitos.
Las expresiones regulares no representan en forma
´única a un lenguaje -esto es, la función L: ER →
2 ∗descrita arriba no es inyectiva. Esto quiere decir
que puede haber varias ER para un mismo
lenguaje, lo cual desde luego no es conveniente,
pues al ver dos ER distintas no podemos aún estar
seguros de que representan dos lenguajes
distintos. Por ejemplo, las ER (a + b)* y
(a*b*)*representan el mismo lenguaje.
Principales equivalencias de ER
• R + S = S + R, (R + S) + T = R + (S + T), R + _ = _ + R = R, R + R = R
• R • ^ = ^ • R = R, R • _ = _ • R = _, (R • S) • T = R • (S • T)
• R • (S + T) = R • S + R • T, (S + T) • R = S • R + T • R
• R* = R* • R*= (R*)* = (+ R)*, * =  = 
• R* =  + RR*
• (R + S)*= (R* + S*)* = (R*S*)* = (R*S)*R* = R*(SR*)*  R* + S*
• R*R = RR*, R(SR)* = (RS)*R
• (R*S)* =  + (R + S)*S, (RS*)* =  + R(R + S)*
• R = SR + T ssi R = S*T, R = RS + T ssi R = TS*
Las equivalencias de estos 9 grupos pueden usarse para verificar que dos ER
denotan el mismo lenguaje. La técnica a usar para verificar que P = Q, donde
P,Q 2 ER, es formar una serie de equivalencias P = R1 = R2 = . . . = Rn = Q,
usando las equivalencias dadas arriba para hacer reemplazamientos.
Actividades
Las equivalencias de estos 9 grupos pueden usarse para verificar que dos ER denotan
el mismo lenguaje. La técnica a usar para verificar que P = Q, donde P,Q 2 ER, es
formar una serie de equivalencias P = R1 = R2 = . . . = Rn = Q, usando las
equivalencias dadas arriba para hacer reemplazamientos.
Videos
Expresion Regular de Un Automata
https://www.youtube.com/watch?v
=a4ZLHsb4al0
Ejemplo Autómata 1
https://www.youtube.com/watch?v
=mCHpn-msFnw

Más contenido relacionado

La actualidad más candente

Portafolio unidad 2 [Lenguajes y autómatas]- Expresiones y lenguajes regulares
Portafolio unidad 2 [Lenguajes y autómatas]- Expresiones y lenguajes regularesPortafolio unidad 2 [Lenguajes y autómatas]- Expresiones y lenguajes regulares
Portafolio unidad 2 [Lenguajes y autómatas]- Expresiones y lenguajes regularesHumano Terricola
 
Alfabeto, Cadenas, Lenguajes, y Problemas
Alfabeto, Cadenas, Lenguajes, y ProblemasAlfabeto, Cadenas, Lenguajes, y Problemas
Alfabeto, Cadenas, Lenguajes, y ProblemasRaul
 
Lenguajes formales
Lenguajes formalesLenguajes formales
Lenguajes formalesIsabel
 
Automatas-Lenguajes1-1 (1).pdf
Automatas-Lenguajes1-1 (1).pdfAutomatas-Lenguajes1-1 (1).pdf
Automatas-Lenguajes1-1 (1).pdfRamosDiez
 
Conceptos Unidad 1 Lenguajes Automatas Introducción a la Teoría de Lenguaje...
Conceptos Unidad 1 Lenguajes Automatas Introducción  a  la Teoría de Lenguaje...Conceptos Unidad 1 Lenguajes Automatas Introducción  a  la Teoría de Lenguaje...
Conceptos Unidad 1 Lenguajes Automatas Introducción a la Teoría de Lenguaje...Hugo Alberto Rivera Diaz
 
LENGUAJES LIBRES DE CONTEXTO Y GRAMATICA LIBRES DE CONTEXTO
LENGUAJES LIBRES DE CONTEXTO Y GRAMATICA LIBRES DE CONTEXTO LENGUAJES LIBRES DE CONTEXTO Y GRAMATICA LIBRES DE CONTEXTO
LENGUAJES LIBRES DE CONTEXTO Y GRAMATICA LIBRES DE CONTEXTO Guillermo Iván Prisco Pérez
 
Gramática de libre contexto
Gramática de libre contextoGramática de libre contexto
Gramática de libre contextoJaVito GagrLu
 
Portafolio Lenguajes y Autómatas Unidad 1
Portafolio Lenguajes y Autómatas Unidad 1Portafolio Lenguajes y Autómatas Unidad 1
Portafolio Lenguajes y Autómatas Unidad 1Humano Terricola
 
Expresiones regulares fin
Expresiones regulares finExpresiones regulares fin
Expresiones regulares finmariellitaocj
 
Cap5
Cap5Cap5
Cap5CJAO
 
Lenguajes libre de contexto
Lenguajes libre de contextoLenguajes libre de contexto
Lenguajes libre de contextoVerónica Es'Loo
 
Calculo de Predicados
Calculo de PredicadosCalculo de Predicados
Calculo de PredicadosC-Reinoso45
 
Conceptos y definicion de al gebra
Conceptos y definicion de al gebraConceptos y definicion de al gebra
Conceptos y definicion de al gebrabeto328
 

La actualidad más candente (20)

Portafolio unidad 2 [Lenguajes y autómatas]- Expresiones y lenguajes regulares
Portafolio unidad 2 [Lenguajes y autómatas]- Expresiones y lenguajes regularesPortafolio unidad 2 [Lenguajes y autómatas]- Expresiones y lenguajes regulares
Portafolio unidad 2 [Lenguajes y autómatas]- Expresiones y lenguajes regulares
 
Alfabeto, Cadenas, Lenguajes, y Problemas
Alfabeto, Cadenas, Lenguajes, y ProblemasAlfabeto, Cadenas, Lenguajes, y Problemas
Alfabeto, Cadenas, Lenguajes, y Problemas
 
Lenguajes formales
Lenguajes formalesLenguajes formales
Lenguajes formales
 
GRAMATICAS AMBIGUAS
GRAMATICAS AMBIGUASGRAMATICAS AMBIGUAS
GRAMATICAS AMBIGUAS
 
Automatas-Lenguajes1-1 (1).pdf
Automatas-Lenguajes1-1 (1).pdfAutomatas-Lenguajes1-1 (1).pdf
Automatas-Lenguajes1-1 (1).pdf
 
Gramáticas formales
Gramáticas formales Gramáticas formales
Gramáticas formales
 
Clase2
Clase2Clase2
Clase2
 
Tipos de lenguaje formal según Chomsky
Tipos de lenguaje formal según ChomskyTipos de lenguaje formal según Chomsky
Tipos de lenguaje formal según Chomsky
 
Conceptos Unidad 1 Lenguajes Automatas Introducción a la Teoría de Lenguaje...
Conceptos Unidad 1 Lenguajes Automatas Introducción  a  la Teoría de Lenguaje...Conceptos Unidad 1 Lenguajes Automatas Introducción  a  la Teoría de Lenguaje...
Conceptos Unidad 1 Lenguajes Automatas Introducción a la Teoría de Lenguaje...
 
Lenguajes formales
Lenguajes formalesLenguajes formales
Lenguajes formales
 
LENGUAJES LIBRES DE CONTEXTO Y GRAMATICA LIBRES DE CONTEXTO
LENGUAJES LIBRES DE CONTEXTO Y GRAMATICA LIBRES DE CONTEXTO LENGUAJES LIBRES DE CONTEXTO Y GRAMATICA LIBRES DE CONTEXTO
LENGUAJES LIBRES DE CONTEXTO Y GRAMATICA LIBRES DE CONTEXTO
 
Gramática de libre contexto
Gramática de libre contextoGramática de libre contexto
Gramática de libre contexto
 
Portafolio Lenguajes y Autómatas Unidad 1
Portafolio Lenguajes y Autómatas Unidad 1Portafolio Lenguajes y Autómatas Unidad 1
Portafolio Lenguajes y Autómatas Unidad 1
 
Expresiones regulares fin
Expresiones regulares finExpresiones regulares fin
Expresiones regulares fin
 
Cap5
Cap5Cap5
Cap5
 
Lenguajes libre de contexto
Lenguajes libre de contextoLenguajes libre de contexto
Lenguajes libre de contexto
 
Calculo de Predicados
Calculo de PredicadosCalculo de Predicados
Calculo de Predicados
 
Gramaticas y lic
Gramaticas y licGramaticas y lic
Gramaticas y lic
 
Maria reyes
Maria reyesMaria reyes
Maria reyes
 
Conceptos y definicion de al gebra
Conceptos y definicion de al gebraConceptos y definicion de al gebra
Conceptos y definicion de al gebra
 

Destacado

Autómatas finitos y expresiones regulares
Autómatas finitos y expresiones regularesAutómatas finitos y expresiones regulares
Autómatas finitos y expresiones regularesIvan Vladimir Meza-Ruiz
 
Comando grep y expresiones regulares
Comando grep y expresiones regularesComando grep y expresiones regulares
Comando grep y expresiones regularesMadelón García
 
ejercicios red hat capitulo5
ejercicios red hat capitulo5ejercicios red hat capitulo5
ejercicios red hat capitulo5Oriencoop
 
El shell-bash
El shell-bashEl shell-bash
El shell-bashlluera
 
Cheat Sheet: Expresiones regulares para analistas
Cheat Sheet: Expresiones regulares para analistasCheat Sheet: Expresiones regulares para analistas
Cheat Sheet: Expresiones regulares para analistasAukera
 
Comandos basicos linux
Comandos basicos linuxComandos basicos linux
Comandos basicos linuxmaomaq
 
Semana 16 usuarios y grupos
Semana 16 usuarios y gruposSemana 16 usuarios y grupos
Semana 16 usuarios y gruposvictdiazm
 
INTERSECCIÓN DE CONJUNTOS
INTERSECCIÓN DE CONJUNTOSINTERSECCIÓN DE CONJUNTOS
INTERSECCIÓN DE CONJUNTOSMiguel Angel
 
Programación en Bash
Programación en BashProgramación en Bash
Programación en BashRafael Bucio
 

Destacado (15)

Autómatas finitos y expresiones regulares
Autómatas finitos y expresiones regularesAutómatas finitos y expresiones regulares
Autómatas finitos y expresiones regulares
 
Comando grep y expresiones regulares
Comando grep y expresiones regularesComando grep y expresiones regulares
Comando grep y expresiones regulares
 
Archivos especiales
Archivos especialesArchivos especiales
Archivos especiales
 
ejercicios red hat capitulo5
ejercicios red hat capitulo5ejercicios red hat capitulo5
ejercicios red hat capitulo5
 
Zhang Jiangong CV
Zhang Jiangong CVZhang Jiangong CV
Zhang Jiangong CV
 
Archivos especiales
Archivos especialesArchivos especiales
Archivos especiales
 
Curso Bash 2
Curso Bash 2Curso Bash 2
Curso Bash 2
 
El shell-bash
El shell-bashEl shell-bash
El shell-bash
 
Expresiones regulares
Expresiones regularesExpresiones regulares
Expresiones regulares
 
Cheat Sheet: Expresiones regulares para analistas
Cheat Sheet: Expresiones regulares para analistasCheat Sheet: Expresiones regulares para analistas
Cheat Sheet: Expresiones regulares para analistas
 
Comandos basicos linux
Comandos basicos linuxComandos basicos linux
Comandos basicos linux
 
Bash Tips Tricks Campus
Bash Tips Tricks CampusBash Tips Tricks Campus
Bash Tips Tricks Campus
 
Semana 16 usuarios y grupos
Semana 16 usuarios y gruposSemana 16 usuarios y grupos
Semana 16 usuarios y grupos
 
INTERSECCIÓN DE CONJUNTOS
INTERSECCIÓN DE CONJUNTOSINTERSECCIÓN DE CONJUNTOS
INTERSECCIÓN DE CONJUNTOS
 
Programación en Bash
Programación en BashProgramación en Bash
Programación en Bash
 

Similar a Expresiones regulares2.pdf

Expresiones Regulares y Gramáticas
Expresiones Regulares y GramáticasExpresiones Regulares y Gramáticas
Expresiones Regulares y GramáticasPaolaNovas
 
Expresiones regulares y gramaticas
Expresiones regulares y gramaticasExpresiones regulares y gramaticas
Expresiones regulares y gramaticasRobin Pena
 
Expresiones regularesfinal
Expresiones regularesfinalExpresiones regularesfinal
Expresiones regularesfinalNoel Gutierrez
 
Expresiones regulares y grámaticas regulares ariel acosta
Expresiones regulares y grámaticas regulares ariel acosta Expresiones regulares y grámaticas regulares ariel acosta
Expresiones regulares y grámaticas regulares ariel acosta franki3536
 
Expresiones regulares y gramáticas
Expresiones regulares y gramáticasExpresiones regulares y gramáticas
Expresiones regulares y gramáticasMaximo De Leon
 
Alfabetos-Lenguajes y Automatas 1
Alfabetos-Lenguajes y Automatas 1Alfabetos-Lenguajes y Automatas 1
Alfabetos-Lenguajes y Automatas 1Osiris Mirerus
 
Autómata finito no determinista e investigacion
Autómata finito no determinista e investigacionAutómata finito no determinista e investigacion
Autómata finito no determinista e investigacionAliciaSandovalCamacho
 
Expresiones regulares y gramáticas
Expresiones regulares y gramáticasExpresiones regulares y gramáticas
Expresiones regulares y gramáticasJuanchi Novas
 
Analisis Lexico
Analisis LexicoAnalisis Lexico
Analisis LexicoFARIDROJAS
 
Analisis lexico 2
Analisis lexico 2Analisis lexico 2
Analisis lexico 2perlallamas
 
Luismar Durán Ci 31163613 Expresiones algebraicas.pdf
Luismar Durán Ci 31163613 Expresiones algebraicas.pdfLuismar Durán Ci 31163613 Expresiones algebraicas.pdf
Luismar Durán Ci 31163613 Expresiones algebraicas.pdfLuismar72
 
301405_34-Tarea1-Danilo Coral.pptx
301405_34-Tarea1-Danilo Coral.pptx301405_34-Tarea1-Danilo Coral.pptx
301405_34-Tarea1-Danilo Coral.pptxharolw1
 
Expresiones regulares
Expresiones regularesExpresiones regulares
Expresiones regularesElbery
 
Lenguaje de operaciones segunda anny jimenez. ppt
Lenguaje de operaciones segunda anny jimenez. pptLenguaje de operaciones segunda anny jimenez. ppt
Lenguaje de operaciones segunda anny jimenez. pptanersantana
 
Conjuntos y subconjuntos
Conjuntos y subconjuntosConjuntos y subconjuntos
Conjuntos y subconjuntosGiovanni Vielma
 

Similar a Expresiones regulares2.pdf (20)

Expresiones Regulares y Gramáticas
Expresiones Regulares y GramáticasExpresiones Regulares y Gramáticas
Expresiones Regulares y Gramáticas
 
Expresiones regulares y gramaticas
Expresiones regulares y gramaticasExpresiones regulares y gramaticas
Expresiones regulares y gramaticas
 
Expresiones regularesfinal
Expresiones regularesfinalExpresiones regularesfinal
Expresiones regularesfinal
 
Expresiones regulares y grámaticas regulares ariel acosta
Expresiones regulares y grámaticas regulares ariel acosta Expresiones regulares y grámaticas regulares ariel acosta
Expresiones regulares y grámaticas regulares ariel acosta
 
Lenin herrera
Lenin herreraLenin herrera
Lenin herrera
 
Expresiones regulares y gramáticas
Expresiones regulares y gramáticasExpresiones regulares y gramáticas
Expresiones regulares y gramáticas
 
Alfabetos-Lenguajes y Automatas 1
Alfabetos-Lenguajes y Automatas 1Alfabetos-Lenguajes y Automatas 1
Alfabetos-Lenguajes y Automatas 1
 
Expresiones regulares y gramáticas
Expresiones regulares y gramáticasExpresiones regulares y gramáticas
Expresiones regulares y gramáticas
 
Automatas
AutomatasAutomatas
Automatas
 
Autómata finito no determinista e investigacion
Autómata finito no determinista e investigacionAutómata finito no determinista e investigacion
Autómata finito no determinista e investigacion
 
Expresiones regulares y gramáticas
Expresiones regulares y gramáticasExpresiones regulares y gramáticas
Expresiones regulares y gramáticas
 
Expresiones regulares y gramaticas
Expresiones regulares y gramaticasExpresiones regulares y gramaticas
Expresiones regulares y gramaticas
 
Analisis Lexico
Analisis LexicoAnalisis Lexico
Analisis Lexico
 
Analisis lexico 2
Analisis lexico 2Analisis lexico 2
Analisis lexico 2
 
Luismar Durán Ci 31163613 Expresiones algebraicas.pdf
Luismar Durán Ci 31163613 Expresiones algebraicas.pdfLuismar Durán Ci 31163613 Expresiones algebraicas.pdf
Luismar Durán Ci 31163613 Expresiones algebraicas.pdf
 
301405_34-Tarea1-Danilo Coral.pptx
301405_34-Tarea1-Danilo Coral.pptx301405_34-Tarea1-Danilo Coral.pptx
301405_34-Tarea1-Danilo Coral.pptx
 
Expresiones regulares
Expresiones regularesExpresiones regulares
Expresiones regulares
 
Lenguaje de operaciones segunda anny jimenez. ppt
Lenguaje de operaciones segunda anny jimenez. pptLenguaje de operaciones segunda anny jimenez. ppt
Lenguaje de operaciones segunda anny jimenez. ppt
 
Presentación 2
Presentación 2Presentación 2
Presentación 2
 
Conjuntos y subconjuntos
Conjuntos y subconjuntosConjuntos y subconjuntos
Conjuntos y subconjuntos
 

Último

El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.241514949
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA241531640
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx241523733
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafiosFundación YOD YOD
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaarkananubis
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxpabonheidy28
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxNombre Apellidos
 
Clase N°4 - Purificación y secuenciación de acidos nucleicos Benoit Diringer ...
Clase N°4 - Purificación y secuenciación de acidos nucleicos Benoit Diringer ...Clase N°4 - Purificación y secuenciación de acidos nucleicos Benoit Diringer ...
Clase N°4 - Purificación y secuenciación de acidos nucleicos Benoit Diringer ...Luis Olivera
 
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...JaquelineJuarez15
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersIván López Martín
 
ejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofJuancarlosHuertasNio1
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptMiguelAtencio10
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxaylincamaho
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadMiguelAngelVillanuev48
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfSergioMendoza354770
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxazmysanros90
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesFundación YOD YOD
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...FacuMeza2
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 

Último (20)

El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafios
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en mina
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docx
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
 
Clase N°4 - Purificación y secuenciación de acidos nucleicos Benoit Diringer ...
Clase N°4 - Purificación y secuenciación de acidos nucleicos Benoit Diringer ...Clase N°4 - Purificación y secuenciación de acidos nucleicos Benoit Diringer ...
Clase N°4 - Purificación y secuenciación de acidos nucleicos Benoit Diringer ...
 
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
 
ejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sof
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.ppt
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidad
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptx
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento Protégeles
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdf
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdf
 

Expresiones regulares2.pdf

  • 1. Expresiones Generales José André Cerón 15-0351 Jeffrey Arias 15-6547 Integrantes:
  • 2. Tópicos Expresiones Regulares Leyes algebraicas de expresiones regulares. Equivalencia de expresiones regulares y autómatas finitos. Operaciones de álgebra de conjuntos entre autómatas. Modelos matemáticos para construir expresiones regulares
  • 3. Operaciones de álgebra de conjuntos entre autómatas.
  • 4. 6 Llamamos operaciones a formas estándar de combinar o transformar objetos matemáticos. Por ejemplo, una operación habitual es la suma, que en la expresión “3 + 7” combina los objetos 3 y 7 dando como resultado el objeto 10. El 3 y el 7, que son los objetos que se combinan, son los operandos, el “+” es la operación, y el 10 es el resultado. Una operación es binaria cuando tiene dos operandos. Es unaria si tiene un solo operando, como en la operación de la raíz cuadrada.
  • 5. Operaciones con Conjuntos Unión de conjuntos, denotada por A  B, que contiene los elementos del conjunto A y también los del conjunto B, es decir, A  B = {x|x 2 A o x 2 B}. Por ejemplo, {1, 2, 3}  {3, 4} = {1, 2, 3, 4}. La unión de conjuntos es conmutativa. • Intersección • Union Intersección de conjuntos, escrita A  B, que contiene los elementos que pertenecen simultáneamente al conjunto A y al conjunto B, es decir, A  B = {x|x 2 A y x 2 B}. Por ejemplo, {1, 2, 3}  {3, 4} = {3}. Sean A y B conjuntos. Se definen las siguientes operaciones con los conjuntos:  
  • 6. Diferencia Diferencia de conjuntos, A − B, que contiene los elementos de A que no están en B, esto es, A − B = {x|x 2 A y x 62 B}. Por ejemplo, {1, 2, 3} − {3, 4} = {1, 2}. La resta o diferencia de conjuntos no siempre le “quita” elementos al primer conjunto; por ejemplo {1, 2, 3} − {4, 5} = {1, 2, 3}. La diferencia de conjuntos no es ni asociativa ni conmutativa. −
  • 7. Equivalencia de Conjuntos La igualdad A  B = B  A es una de las llamadas “equivalencias de conjuntos”, que son muy ´útiles para reemplazar una expresión con operaciones de conjuntos por otra equivalente pero más conveniente –por ejemplo más simple. En la lista siguiente presentamos algunas de las equivalencias de más frecuente uso: Leyes conmutativas A  B = B  A, A  B = B  A, para los conjuntos A y B. Leyes de Morgan A B 𝐶 = AC  BC, A B 𝐶 = AC BC Doble complemento (AC ) 𝐶 = A Leyes distributivas A  (B  C) = (A  B)  (A  C), A  (B  C) = (A  B)  (A  C).
  • 8. Actividades A partir de los siguientes Alfabetos 1 = 0,2,6,9,11 y 2 = 1,2,3,7,8,4 encontrar lo que se pide a continuación. 𝟏  𝟐 𝟏  𝟐 𝟏 − 𝟐  𝟏 1 2 3
  • 11. 6 Un lenguaje es simplemente un conjunto de palabras. Así, {abracadabra} es un lenguaje (de una sola palabra), {ali, baba, y, sus, cuarenta, ladrones} es otro, ∗ es otro, etc. Puesto que los lenguajes son conjuntos, podemos efectuar con ellos todas las operaciones de los conjuntos (unión, intersección, diferencia). Definiremos además la operación de concatenación de lenguajes, escrita como L1 • L2, como una extensión de la concatenación de palabras: L1 • L2 = {w|w = xy, x 2 L1, y 2 L2}. Por ejemplo, dados los lenguajes L1 = {ca,ma} y L2 = {nta, sa}, la concatenación L1L2 seria {canta, casa, manta, masa}. Como se ve en este ejemplo, para calcular la concatenación de dos lenguajes hay que concatenar cada palabra del primero de ellos con cada una del segundo.
  • 12. 6 Lenguajes Regulares Los lenguajes regulares se llaman así porque sus palabras contienen “regularidades” o repeticiones de los mismos componentes, como por ejemplo en el lenguaje L1 siguiente: L1 = {ab, abab, ababab, abababab, . . .} En este ejemplo se aprecia que las palabras de L1 son simplemente repeticiones de “ab” cualquier número de veces. Aquí la “regularidad” consiste en que las palabras contienen “ab” algún número de veces. Otro ejemplo más complicado seria el lenguaje L2: L2 = {abc, cc, abab, abccc, ababc, . . .} La regularidad en L2 consiste en que sus palabras comienzan con repeticiones de “ab”, seguidas de repeticiones de “c”. Similarmente es posible definir muchos otros lenguajes basados en la idea de repetir esquemas simples. Esta es la idea básica para formar los lenguajes Regulares.
  • 13. Definición formal de Lenguajes Regulares Un lenguaje L es regular si y solo si se cumple al menos una de las condiciones siguientes: L es finito L = R1R2 respectivamente. L es la unión o la concatenación de otros lenguajes regulares R1 y R2, L = R1 [ R2 o L es la cerradura de Kleene de algún lenguaje regular, L = R*. Esta definición nos permite construir expresiones en la notación de conjuntos que representan lenguajes regulares.
  • 14. Actividades Sea el lenguaje L de palabras formadas por a y b, pero que empiezan con a, como aab, ab, a, abaa, etc. Probar que este lenguaje es regular, y dar una expresión de conjuntos que lo represente.
  • 16. 6 La notación de conjuntos nos permite describir los lenguajes regulares, pero nosotros quisiéramos una notación en que las representaciones de los lenguajes fueran simplemente texto (cadenas de caracteres). Así las representaciones de los lenguajes regulares serian simplemente palabras de un lenguaje (el de las representaciones correctamente formadas). Con estas ideas vamos a definir un lenguaje, el de las expresiones regulares, en que cada palabra va a denotar un lenguaje regular.
  • 17. Definición Sea un alfabeto. El conjunto ER de las expresiones regulares sobre contiene las cadenas en el alfabeto  {“”, “+”, “•”, “*”, “(”, “)”,””} que cumplen con lo siguiente: “” y “ ” ER Si , entonces a ER. Si E1, E2 ER, entonces “(”E1“+”E2“)” ER, “(”E1“•”E2“)” ER, “(”E1“)∗” ER. 1 2 3 Las comillas “ ” enfatizan el hecho de que estamos definiendo cadenas de texto, no expresiones matemáticas .
  • 18. Actividades Son ER en {a, b, c} las siguientes: “a”, “((a+b))*”, “((a • b) • c)”. No son ER: “ab”, “((a • b(c)*)”.
  • 19. 6 Significado de las ERLas ER son simplemente formulas cuyo propósito es representar cada una de ellas un lenguaje. Así, el significado de una ER es simplemente el lenguaje que ella representa.Por ejemplo. la ER “” representa el conjunto vacío {}. Para comprender intuitivamente la manera en que las ER representan lenguajes, consideremos el proceso de verificar si una palabra dada w pertenece o no al lenguaje representado por una ER dada. Vamos a decir que una palabra “empata” con una expresión regular si es parte del lenguaje que esta representa. A continuación definiremos formalmente la correspondencia entre la representación (una ER) y el lenguaje representado.
  • 20. Definición El significado de una ER es una función L : ER → 2 ∗ (esto es, una función que toma como entrada una expresión regular y entrega como salida un lenguaje), definida de la manera siguiente: L(“”) = {} L(“(”R“•”S“)” ) = L(R)L(S),R, S  ER L( “(”R“)*” ) = L(R)*,R  ER L(“”) = ; (el conjunto vacío) L(“”) = {},   . L( “(”R“+”S“)” ) = L(R) [ L(S),R, S  ER 1 3 5 2 4 6 Para calcular el significado de una ER en particular, se aplica a ella la función L. Las ecuaciones dadas arriba se aplican repetidamente, hasta que el símbolo L desaparezca.
  • 21. Actividades 1. Buscar el significado de la ER “(((a + b))* • a)” 2. Encontrar una expresión regular para el lenguaje en {a, b}* en el que inmediatamente antes de toda b aparece una a.
  • 22. 6 Metodología de diseño de las ER Al tratar de encontrar una ER para un lenguaje dado, mientras más complejo sea el lenguaje es obvio que resulta más difícil encontrar por pura intuición dicha ER. En estos casos puede ser conveniente trabajar en forma metódica. Una técnica que funciona en muchos casos consiste en determinar primero la estructura de la ER, dejando unos “huecos” pendientes para resolverse luego. Estos huecos, que llamaremos contextos, son también lenguajes para los que habrá que encontrar una ER.
  • 23. Actividades Obtener una ER para el lenguaje en el alfabeto {a, b, c} en que las palabras contienen exactamente una vez dos b contiguas. Por ejemplo, las palabras aabb, babba, pertenecen al lenguaje, pero no aaba, abbba ni bbabb. Para resolver este problema, expresamos primero la estructura de la ER de la manera siguiente: < contexto1 > bb < contexto2 >
  • 24. 6 Equivalencia de expresiones regulares y autómatas finitos. Las expresiones regulares no representan en forma ´única a un lenguaje -esto es, la función L: ER → 2 ∗descrita arriba no es inyectiva. Esto quiere decir que puede haber varias ER para un mismo lenguaje, lo cual desde luego no es conveniente, pues al ver dos ER distintas no podemos aún estar seguros de que representan dos lenguajes distintos. Por ejemplo, las ER (a + b)* y (a*b*)*representan el mismo lenguaje.
  • 25. Principales equivalencias de ER • R + S = S + R, (R + S) + T = R + (S + T), R + _ = _ + R = R, R + R = R • R • ^ = ^ • R = R, R • _ = _ • R = _, (R • S) • T = R • (S • T) • R • (S + T) = R • S + R • T, (S + T) • R = S • R + T • R • R* = R* • R*= (R*)* = (+ R)*, * =  =  • R* =  + RR* • (R + S)*= (R* + S*)* = (R*S*)* = (R*S)*R* = R*(SR*)*  R* + S* • R*R = RR*, R(SR)* = (RS)*R • (R*S)* =  + (R + S)*S, (RS*)* =  + R(R + S)* • R = SR + T ssi R = S*T, R = RS + T ssi R = TS* Las equivalencias de estos 9 grupos pueden usarse para verificar que dos ER denotan el mismo lenguaje. La técnica a usar para verificar que P = Q, donde P,Q 2 ER, es formar una serie de equivalencias P = R1 = R2 = . . . = Rn = Q, usando las equivalencias dadas arriba para hacer reemplazamientos.
  • 26. Actividades Las equivalencias de estos 9 grupos pueden usarse para verificar que dos ER denotan el mismo lenguaje. La técnica a usar para verificar que P = Q, donde P,Q 2 ER, es formar una serie de equivalencias P = R1 = R2 = . . . = Rn = Q, usando las equivalencias dadas arriba para hacer reemplazamientos.
  • 27. Videos Expresion Regular de Un Automata https://www.youtube.com/watch?v =a4ZLHsb4al0 Ejemplo Autómata 1 https://www.youtube.com/watch?v =mCHpn-msFnw