SlideShare una empresa de Scribd logo
Robín Peña 12-0914
Noel Gutiérrez 12-0723
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, . . .}

Definicíon.- Un lenguaje L es regular si y sólo si se cumple al menos una de las
condiciones siguientes:

L es finito;

L es la unión o la concatenación de otros lenguajes regulares R1 y R2, L = R1 [
R2 o L = R1R2 respectivamente.

L es la cerradura de Kleene de algun lenguaje regular, L = R.
Definición.- Sea un alfabeto. El conjunto ER de las
expresiones regulares sobre contiene las cadenas en el
alfabeto [ {“^”, “+”, “•”, “”, “(”, “)”, “”} que cumplen con lo
siguiente:

1. “^” y “” 2 ER
2. Si 2 , entonces 2 ER.
3. Si E1,E2 2 ER, entonces “(”E1“+”E2“)” 2 ER, “(”E1“•”E2“)” 2
ER, “(”E1“)”
2 ER.
Las comillas “ ” enfatizan el hecho de que estamos
definiendo cadenas de texto, no expresiones matemáticas 3.
Es la misma diferencia que hay entre el carácter ASCII
“0”, que se puede teclear en una terminal, y el número
0, que significa que se cuenta un conjunto sin ningún
elemento.
Las 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 {}.

1. L(“”) = ; (el conjunto vacío)
2. L(“^”) = {"}
3. L(“”) = {}, 2 .
4. L(“(”R“•”S“)” ) = L(R)L(S),R, S 2 ER
5. L( “(”R“+”S“)” ) = L(R) [ L(S),R, S 2 ER
6. L( “(”R“)” ) = L(R),R 2 ER
Ejemplo.- 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 >

Podemos ver que en esta expresión aparecen directamente las bb que deben estar en la ER, rodeadas por otras dos
ER, que son < contexto1 > y < contexto2 >. Ahora el problema es determinar qu´e ER corresponden a < contexto1 > y <
contexto2 >, lo cual es un su problema del problema original. El lenguaje de < contexto1 > comprende a las palabras
que no tienen bb y además no terminan en b. Esto es equivalente a decir que toda b esta seguida de una a o una c.

Esto quiere decir que la ER de este contexto va ser de la forma:
(. . . b(a + c) . . .)

donde los detalles que faltan están representados por las “. . .”. Lo que falta por considerar
es que puede haber cualquier cantidad de a’s o c’s en el < contexto1 >, por lo que dicho
contexto queda como:

                                                      (b(a + c) + a + c)

Similarmente se puede obtener la expresión para < contexto2 >, que es (a + c + (a + c)b),
por lo que finalmente la ER del problema es:
                                          (b(a + c) + a + c)bb(a + c + (a + c)b)
1. R + S = S + R, (R + S) + T = R + (S + T), R + = + R = R, R + R = R
2. R • ^ = ^ • R = R, R • = • R = , (R • S) • T = R • (S • T)
3. R • (S + T) = R • S + R • T, (S + T) • R = S • R + T • R
4. R = R • R = (R) = (^ + R), = ^ = "
5. R = ^ + RR
6. (R + S) = (R + S) = (RS) = (RS)R = R(SR) 6= R + S
7. RR = RR, R(SR) = (RS)R
8. (RS) = ^ + (R + S)S, (RS) = ^ + R(R + S)
9. R = SR + T ssi R = ST, R = RS + T ssi R = TS
Por ejemplo, el conjunto de todas las palabras formadas por a’s y
b’s, que es el conjunto infinito {", a, b, ab, ba, aaa, aab, . .
.}, puede ser representado mediante la cadena de caracteres
“{a, b}”, que es una palabra formada por caracteres del alfabeto
{“a”,“b”,“{”,“}”,“”, “,” }. Como vemos en este ejemplo, una cadena de
caracteres de 6 caracteres puede representar todo un lenguaje
infinito.

Teorema.- El conjunto de los lenguajes en un alfabeto finito es
incontable.
Teorema de Kleene.- Un lenguaje es regular si y solo si es
aceptado por algún autómata finito.
Una posible solución es el uso de las graficas de transición. Estas ´ultimas son esencialmente AFN en
que las etiquetas de las flechas tienen expresiones regulares, en lugar de palabras. Las graficas de
transición (GT) son por lo tanto quíntuplos (K,,, s, F) en donde 2 K × ER × K.

Los AFN son un subconjunto propio de las GT, puesto que las palabras en las etiquetas de un AFN
pueden ser vistas como expresiones regulares que se representan así mismas.
Un procedimiento para hacerlo consiste en ir
eliminando gradualmente nodos de una
GT, que inicialmente es el AFN que se quiere
transformar, hasta que únicamente queden un
nodo inicial y un nodo final.
1. El primer paso en este procedimiento
   consiste en añadir al autómata finito un
   nuevo estado inicial i, mientras que el
   antiguo estado inicial q0 deja de ser
   inicial, y un nuevo estado final f, mientras
   que los antiguos estados finales qi ∈ F
   dejan de ser finales;
2. El segundo paso consiste en eliminar
   nodos intermedios en la GT.
Una gramática es un conjunto de reglas para
formar correctamente las frases de un lenguaje; así
tenemos la gramática del español, del francés, etc

Una regla es una expresión de la forma α → β, en
donde tanto α como β son cadenas de símbolos en
donde pueden aparecer tanto elementos del alfabeto
Σ como unos nuevos símbolos, llamados variables.

Los símbolos que no son variables son constantes.
Formalizamos estas nociones con las siguientes
definiciones:

Definición.- Una gramática regular es un
cuádruplo (V, Σ, R, S) en donde:
V es un alfabeto de variables,
Σ es un alfabeto de constantes,
R, el conjunto de reglas, es un subconjunto finito
de V × (ΣV ∪ Σ).
S, el símbolo inicial, es un elemento de V
Teorema.- La clase de los lenguajes generados
por alguna gramática regular es exactamente
la de los lenguajes regulares.

   Limitaciones de los lenguajes
             regulares
Los AF están limitados a los estados de que
disponen como único medio para “recordar” la
serie de símbolos recibidos hasta un momento dado.
Teorema.- Si L es un lenguaje regular
infinito, entonces existen cadenas x, y, z tales
que
y 6= ε, y xynz ∈ L, para algún n ≥ 0.

Lo que este resultado establece es
que, suponiendo que cierto lenguaje es
regular,  entonces    forzosamente   dicho
lenguaje debe contener palabras en que una
subcadena se repite cualquier número de

Más contenido relacionado

La actualidad más candente

Analizador Sintáctico
Analizador SintácticoAnalizador Sintáctico
Analizador Sintáctico
Pablo Guerra
 
tecnicas de revisión del software
tecnicas de revisión del softwaretecnicas de revisión del software
tecnicas de revisión del software
MARCO POLO SILVA SEGOVIA
 
Automata Finito No Determinista
Automata Finito No DeterministaAutomata Finito No Determinista
Automata Finito No Determinista
Jean Bernard
 
Expresiones regulares
Expresiones regularesExpresiones regulares
Expresiones regulares
Rennytox Hernandez
 
Unidad1 2 Lenguajes y automatas
Unidad1 2  Lenguajes y automatasUnidad1 2  Lenguajes y automatas
Unidad1 2 Lenguajes y automatas
Sergio Lara Guevara
 
Expresiones regulares y gramaticas
Expresiones regulares y gramaticasExpresiones regulares y gramaticas
Expresiones regulares y gramaticas
Silvia Nathaly Rodriguez Pantaleon
 
Lenguajes no regulares
Lenguajes no regularesLenguajes no regulares
Lenguajes no regulares
Alfredo Armendáriz
 
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
 
Investigacion errores lexicos
Investigacion errores lexicosInvestigacion errores lexicos
Investigacion errores lexicos
Borreguito Inolvidable
 
Alfabetos-Lenguajes y Automatas 1
Alfabetos-Lenguajes y Automatas 1Alfabetos-Lenguajes y Automatas 1
Alfabetos-Lenguajes y Automatas 1
Osiris Mirerus
 
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
Humano Terricola
 
Tópicos Avanzados de Programación - Unidad 2 componentes y librerias
Tópicos Avanzados de Programación - Unidad 2 componentes y libreriasTópicos Avanzados de Programación - Unidad 2 componentes y librerias
Tópicos Avanzados de Programación - Unidad 2 componentes y librerias
José Antonio Sandoval Acosta
 
UNIDAD 2 PROGRAMACIÓN BASICA
UNIDAD 2 PROGRAMACIÓN BASICAUNIDAD 2 PROGRAMACIÓN BASICA
UNIDAD 2 PROGRAMACIÓN BASICA
Instituto Tecnológico de Tuxtla Gutiérrez
 
Gramáticas dependiente del contexto
Gramáticas dependiente del contextoGramáticas dependiente del contexto
Gramáticas dependiente del contexto
Ivan Vladimir Meza-Ruiz
 
ESPRESIONES REGULARES
ESPRESIONES REGULARESESPRESIONES REGULARES
ESPRESIONES REGULARES
Anel Sosa
 
Tabla de símbolos
Tabla de símbolosTabla de símbolos
Tabla De Transicion
Tabla De TransicionTabla De Transicion
Tabla De Transicion
GILDARDO MARTINEZ ESPINOSA
 
Clasificacion de los problemas
Clasificacion de los problemasClasificacion de los problemas
Clasificacion de los problemas
Johnfornerod
 
Automatas-Lenguajes1-1 (1).pdf
Automatas-Lenguajes1-1 (1).pdfAutomatas-Lenguajes1-1 (1).pdf
Automatas-Lenguajes1-1 (1).pdf
RamosDiez
 
Unidad 1.2 A IntroduccióN A Los Proceso De Software Modelos Tradicionales
Unidad 1.2 A IntroduccióN A Los Proceso De Software   Modelos TradicionalesUnidad 1.2 A IntroduccióN A Los Proceso De Software   Modelos Tradicionales
Unidad 1.2 A IntroduccióN A Los Proceso De Software Modelos Tradicionales
Sergio Sanchez
 

La actualidad más candente (20)

Analizador Sintáctico
Analizador SintácticoAnalizador Sintáctico
Analizador Sintáctico
 
tecnicas de revisión del software
tecnicas de revisión del softwaretecnicas de revisión del software
tecnicas de revisión del software
 
Automata Finito No Determinista
Automata Finito No DeterministaAutomata Finito No Determinista
Automata Finito No Determinista
 
Expresiones regulares
Expresiones regularesExpresiones regulares
Expresiones regulares
 
Unidad1 2 Lenguajes y automatas
Unidad1 2  Lenguajes y automatasUnidad1 2  Lenguajes y automatas
Unidad1 2 Lenguajes y automatas
 
Expresiones regulares y gramaticas
Expresiones regulares y gramaticasExpresiones regulares y gramaticas
Expresiones regulares y gramaticas
 
Lenguajes no regulares
Lenguajes no regularesLenguajes no regulares
Lenguajes no regulares
 
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...
 
Investigacion errores lexicos
Investigacion errores lexicosInvestigacion errores lexicos
Investigacion errores lexicos
 
Alfabetos-Lenguajes y Automatas 1
Alfabetos-Lenguajes y Automatas 1Alfabetos-Lenguajes y Automatas 1
Alfabetos-Lenguajes y Automatas 1
 
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
 
Tópicos Avanzados de Programación - Unidad 2 componentes y librerias
Tópicos Avanzados de Programación - Unidad 2 componentes y libreriasTópicos Avanzados de Programación - Unidad 2 componentes y librerias
Tópicos Avanzados de Programación - Unidad 2 componentes y librerias
 
UNIDAD 2 PROGRAMACIÓN BASICA
UNIDAD 2 PROGRAMACIÓN BASICAUNIDAD 2 PROGRAMACIÓN BASICA
UNIDAD 2 PROGRAMACIÓN BASICA
 
Gramáticas dependiente del contexto
Gramáticas dependiente del contextoGramáticas dependiente del contexto
Gramáticas dependiente del contexto
 
ESPRESIONES REGULARES
ESPRESIONES REGULARESESPRESIONES REGULARES
ESPRESIONES REGULARES
 
Tabla de símbolos
Tabla de símbolosTabla de símbolos
Tabla de símbolos
 
Tabla De Transicion
Tabla De TransicionTabla De Transicion
Tabla De Transicion
 
Clasificacion de los problemas
Clasificacion de los problemasClasificacion de los problemas
Clasificacion de los problemas
 
Automatas-Lenguajes1-1 (1).pdf
Automatas-Lenguajes1-1 (1).pdfAutomatas-Lenguajes1-1 (1).pdf
Automatas-Lenguajes1-1 (1).pdf
 
Unidad 1.2 A IntroduccióN A Los Proceso De Software Modelos Tradicionales
Unidad 1.2 A IntroduccióN A Los Proceso De Software   Modelos TradicionalesUnidad 1.2 A IntroduccióN A Los Proceso De Software   Modelos Tradicionales
Unidad 1.2 A IntroduccióN A Los Proceso De Software Modelos Tradicionales
 

Destacado

Expresiones regulares y gramáticas
Expresiones regulares y gramáticasExpresiones regulares y gramáticas
Expresiones regulares y gramáticas
Juanchi Novas
 
Clase4: Transformación desde Expresión regular a Autómata finito determinista
Clase4: Transformación desde Expresión regular a Autómata finito deterministaClase4: Transformación desde Expresión regular a Autómata finito determinista
Clase4: Transformación desde Expresión regular a Autómata finito determinista
mvagila
 
Lenguajes Regulares y Autómatas Finitos - Clase 6
Lenguajes Regulares y Autómatas Finitos - Clase 6Lenguajes Regulares y Autómatas Finitos - Clase 6
Lenguajes Regulares y Autómatas Finitos - Clase 6
UTN-FRT Tucumán Argentina
 
Lenguajes Regulares.
Lenguajes Regulares.Lenguajes Regulares.
Lenguajes Regulares.
guestdf1874
 
Expresiones regulares
Expresiones regularesExpresiones regulares
Expresiones regulares
Jordan-P
 
Presentación Autómatas Finito No Deterministico
Presentación  Autómatas Finito No DeterministicoPresentación  Autómatas Finito No Deterministico
Presentación Autómatas Finito No Deterministico
Scarlinr
 
Lenguajes Regulares y Autómatas Finitos - Clase 7
Lenguajes Regulares y Autómatas Finitos - Clase 7Lenguajes Regulares y Autómatas Finitos - Clase 7
Lenguajes Regulares y Autómatas Finitos - Clase 7
UTN-FRT Tucumán Argentina
 
Conversión de un AFN a un AFD.
Conversión de un AFN a un AFD.Conversión de un AFN a un AFD.
Conversión de un AFN a un AFD.
Vikky Moscoso
 
Mapa conceptual victortorrealba
Mapa conceptual   victortorrealbaMapa conceptual   victortorrealba
Mapa conceptual victortorrealba
vmtorrealba
 
Introducción a las Expresiones Regulares
Introducción a las Expresiones RegularesIntroducción a las Expresiones Regulares
Introducción a las Expresiones Regulares
Jose Luis Martínez
 
Expresiones regulares y gramáticas
Expresiones regulares y gramáticasExpresiones regulares y gramáticas
Expresiones regulares y gramáticas
Santiago Ramirez
 
Tema 11 expresiones regulares en java por gio
Tema 11   expresiones regulares en java por gioTema 11   expresiones regulares en java por gio
Tema 11 expresiones regulares en java por gio
Robert Wolf
 
Trabajo colaborativo 1
Trabajo colaborativo 1Trabajo colaborativo 1
Trabajo colaborativo 1
anarojasparra
 
Automatas finitos
Automatas finitosAutomatas finitos
Automatas finitos
Oscar Eduardo
 
Expresiones Regulares
Expresiones RegularesExpresiones Regulares
Expresiones Regulares
Kar Juan
 
Equivalencia de autómatas finitos y expresiones regulares.
Equivalencia de autómatas finitos y expresiones regulares.Equivalencia de autómatas finitos y expresiones regulares.
Equivalencia de autómatas finitos y expresiones regulares.
Yamilee Valerio
 
Automatas y compiladores tablas de transición análisis léxico
Automatas y compiladores tablas de transición análisis léxicoAutomatas y compiladores tablas de transición análisis léxico
Automatas y compiladores tablas de transición análisis léxico
Germania Rodriguez
 
Herramientas computacionales
Herramientas computacionales Herramientas computacionales
Herramientas computacionales
Andrea6e
 
Lenguajes regulares
Lenguajes regularesLenguajes regulares
Lenguajes regulares
Kenia Adams
 
Diseño de Algoritmos
 Diseño de Algoritmos Diseño de Algoritmos
Diseño de Algoritmos
TaniaCalle
 

Destacado (20)

Expresiones regulares y gramáticas
Expresiones regulares y gramáticasExpresiones regulares y gramáticas
Expresiones regulares y gramáticas
 
Clase4: Transformación desde Expresión regular a Autómata finito determinista
Clase4: Transformación desde Expresión regular a Autómata finito deterministaClase4: Transformación desde Expresión regular a Autómata finito determinista
Clase4: Transformación desde Expresión regular a Autómata finito determinista
 
Lenguajes Regulares y Autómatas Finitos - Clase 6
Lenguajes Regulares y Autómatas Finitos - Clase 6Lenguajes Regulares y Autómatas Finitos - Clase 6
Lenguajes Regulares y Autómatas Finitos - Clase 6
 
Lenguajes Regulares.
Lenguajes Regulares.Lenguajes Regulares.
Lenguajes Regulares.
 
Expresiones regulares
Expresiones regularesExpresiones regulares
Expresiones regulares
 
Presentación Autómatas Finito No Deterministico
Presentación  Autómatas Finito No DeterministicoPresentación  Autómatas Finito No Deterministico
Presentación Autómatas Finito No Deterministico
 
Lenguajes Regulares y Autómatas Finitos - Clase 7
Lenguajes Regulares y Autómatas Finitos - Clase 7Lenguajes Regulares y Autómatas Finitos - Clase 7
Lenguajes Regulares y Autómatas Finitos - Clase 7
 
Conversión de un AFN a un AFD.
Conversión de un AFN a un AFD.Conversión de un AFN a un AFD.
Conversión de un AFN a un AFD.
 
Mapa conceptual victortorrealba
Mapa conceptual   victortorrealbaMapa conceptual   victortorrealba
Mapa conceptual victortorrealba
 
Introducción a las Expresiones Regulares
Introducción a las Expresiones RegularesIntroducción a las Expresiones Regulares
Introducción a las Expresiones Regulares
 
Expresiones regulares y gramáticas
Expresiones regulares y gramáticasExpresiones regulares y gramáticas
Expresiones regulares y gramáticas
 
Tema 11 expresiones regulares en java por gio
Tema 11   expresiones regulares en java por gioTema 11   expresiones regulares en java por gio
Tema 11 expresiones regulares en java por gio
 
Trabajo colaborativo 1
Trabajo colaborativo 1Trabajo colaborativo 1
Trabajo colaborativo 1
 
Automatas finitos
Automatas finitosAutomatas finitos
Automatas finitos
 
Expresiones Regulares
Expresiones RegularesExpresiones Regulares
Expresiones Regulares
 
Equivalencia de autómatas finitos y expresiones regulares.
Equivalencia de autómatas finitos y expresiones regulares.Equivalencia de autómatas finitos y expresiones regulares.
Equivalencia de autómatas finitos y expresiones regulares.
 
Automatas y compiladores tablas de transición análisis léxico
Automatas y compiladores tablas de transición análisis léxicoAutomatas y compiladores tablas de transición análisis léxico
Automatas y compiladores tablas de transición análisis léxico
 
Herramientas computacionales
Herramientas computacionales Herramientas computacionales
Herramientas computacionales
 
Lenguajes regulares
Lenguajes regularesLenguajes regulares
Lenguajes regulares
 
Diseño de Algoritmos
 Diseño de Algoritmos Diseño de Algoritmos
Diseño de Algoritmos
 

Similar a Expresiones regulares y gramaticas

Expresiones Regulares y Gramáticas
Expresiones Regulares y GramáticasExpresiones Regulares y Gramáticas
Expresiones Regulares y Gramáticas
PaolaNovas
 
Expresiones regularesfinal
Expresiones regularesfinalExpresiones regularesfinal
Expresiones regularesfinal
Noel Gutierrez
 
Expresiones regulares2.pdf
Expresiones regulares2.pdfExpresiones regulares2.pdf
Expresiones regulares2.pdf
Jeffreyagnz
 
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áticas
Nestor Fabio Alduey Gonzalez
 
Expresiones regulares y gramáticas
Expresiones regulares y gramáticasExpresiones regulares y gramáticas
Expresiones regulares y gramáticas
Maximo De Leon
 
Lenin herrera
Lenin herreraLenin herrera
Lenin herrera
Lenin Herrera
 
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
AliciaSandovalCamacho
 
Presentacion automata grupo 1 unibe 02-02-2018
Presentacion automata grupo 1   unibe 02-02-2018Presentacion automata grupo 1   unibe 02-02-2018
Presentacion automata grupo 1 unibe 02-02-2018
Edward Caceres
 
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
anersantana
 
Gramática y autómatas
Gramática y autómatasGramática y autómatas
Gramática y autómatas
Alejandro Zaraos Vázquez
 
Lenguajes formales
Lenguajes formalesLenguajes formales
Lenguajes formales
JuanCarlosSosaDelaCruz
 
Gramáticas formales
Gramáticas formales Gramáticas formales
Gramáticas formales
Astrid Rodriguez
 
Alfabeto, Cadenas, Lenguajes, y Problemas
Alfabeto, Cadenas, Lenguajes, y ProblemasAlfabeto, Cadenas, Lenguajes, y Problemas
Alfabeto, Cadenas, Lenguajes, y Problemas
Raul
 
Automatas propuestos
Automatas propuestosAutomatas propuestos
Automatas propuestos
vanesagu60
 
Vanessaguzman
VanessaguzmanVanessaguzman
Vanessaguzman
vanesagu60
 
Automatas
AutomatasAutomatas
Clase2
Clase2Clase2
Clase2
mvagila
 
Unidad 7 lenguajes gramaticas y automatas
Unidad 7 lenguajes gramaticas y automatasUnidad 7 lenguajes gramaticas y automatas
Unidad 7 lenguajes gramaticas y automatas
Jurgen Cuadrado Martinez
 
lenguajes y_gramaticas
lenguajes y_gramaticaslenguajes y_gramaticas
lenguajes y_gramaticas
Cristhian V Juanez
 

Similar a Expresiones regulares y gramaticas (20)

Expresiones Regulares y Gramáticas
Expresiones Regulares y GramáticasExpresiones Regulares y Gramáticas
Expresiones Regulares y Gramáticas
 
Expresiones regularesfinal
Expresiones regularesfinalExpresiones regularesfinal
Expresiones regularesfinal
 
Expresiones regulares2.pdf
Expresiones regulares2.pdfExpresiones regulares2.pdf
Expresiones regulares2.pdf
 
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
 
Expresiones regulares y gramáticas
Expresiones regulares y gramáticasExpresiones regulares y gramáticas
Expresiones regulares y gramáticas
 
Expresiones regulares y gramáticas
Expresiones regulares y gramáticasExpresiones regulares y gramáticas
Expresiones regulares y gramáticas
 
Lenin herrera
Lenin herreraLenin herrera
Lenin herrera
 
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
 
Presentacion automata grupo 1 unibe 02-02-2018
Presentacion automata grupo 1   unibe 02-02-2018Presentacion automata grupo 1   unibe 02-02-2018
Presentacion automata grupo 1 unibe 02-02-2018
 
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
 
Gramática y autómatas
Gramática y autómatasGramática y autómatas
Gramática y autómatas
 
Lenguajes formales
Lenguajes formalesLenguajes formales
Lenguajes formales
 
Gramáticas formales
Gramáticas formales Gramáticas formales
Gramáticas formales
 
Alfabeto, Cadenas, Lenguajes, y Problemas
Alfabeto, Cadenas, Lenguajes, y ProblemasAlfabeto, Cadenas, Lenguajes, y Problemas
Alfabeto, Cadenas, Lenguajes, y Problemas
 
Automatas propuestos
Automatas propuestosAutomatas propuestos
Automatas propuestos
 
Vanessaguzman
VanessaguzmanVanessaguzman
Vanessaguzman
 
Automatas
AutomatasAutomatas
Automatas
 
Clase2
Clase2Clase2
Clase2
 
Unidad 7 lenguajes gramaticas y automatas
Unidad 7 lenguajes gramaticas y automatasUnidad 7 lenguajes gramaticas y automatas
Unidad 7 lenguajes gramaticas y automatas
 
lenguajes y_gramaticas
lenguajes y_gramaticaslenguajes y_gramaticas
lenguajes y_gramaticas
 

Expresiones regulares y gramaticas

  • 1. Robín Peña 12-0914 Noel Gutiérrez 12-0723
  • 2. 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, . . .} Definicíon.- Un lenguaje L es regular si y sólo si se cumple al menos una de las condiciones siguientes: L es finito; L es la unión o la concatenación de otros lenguajes regulares R1 y R2, L = R1 [ R2 o L = R1R2 respectivamente. L es la cerradura de Kleene de algun lenguaje regular, L = R.
  • 3. Definición.- Sea un alfabeto. El conjunto ER de las expresiones regulares sobre contiene las cadenas en el alfabeto [ {“^”, “+”, “•”, “”, “(”, “)”, “”} que cumplen con lo siguiente: 1. “^” y “” 2 ER 2. Si 2 , entonces 2 ER. 3. Si E1,E2 2 ER, entonces “(”E1“+”E2“)” 2 ER, “(”E1“•”E2“)” 2 ER, “(”E1“)” 2 ER. Las comillas “ ” enfatizan el hecho de que estamos definiendo cadenas de texto, no expresiones matemáticas 3. Es la misma diferencia que hay entre el carácter ASCII “0”, que se puede teclear en una terminal, y el número 0, que significa que se cuenta un conjunto sin ningún elemento.
  • 4. Las 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 {}. 1. L(“”) = ; (el conjunto vacío) 2. L(“^”) = {"} 3. L(“”) = {}, 2 . 4. L(“(”R“•”S“)” ) = L(R)L(S),R, S 2 ER 5. L( “(”R“+”S“)” ) = L(R) [ L(S),R, S 2 ER 6. L( “(”R“)” ) = L(R),R 2 ER
  • 5. Ejemplo.- 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 > Podemos ver que en esta expresión aparecen directamente las bb que deben estar en la ER, rodeadas por otras dos ER, que son < contexto1 > y < contexto2 >. Ahora el problema es determinar qu´e ER corresponden a < contexto1 > y < contexto2 >, lo cual es un su problema del problema original. El lenguaje de < contexto1 > comprende a las palabras que no tienen bb y además no terminan en b. Esto es equivalente a decir que toda b esta seguida de una a o una c. Esto quiere decir que la ER de este contexto va ser de la forma: (. . . b(a + c) . . .) donde los detalles que faltan están representados por las “. . .”. Lo que falta por considerar es que puede haber cualquier cantidad de a’s o c’s en el < contexto1 >, por lo que dicho contexto queda como: (b(a + c) + a + c) Similarmente se puede obtener la expresión para < contexto2 >, que es (a + c + (a + c)b), por lo que finalmente la ER del problema es: (b(a + c) + a + c)bb(a + c + (a + c)b)
  • 6. 1. R + S = S + R, (R + S) + T = R + (S + T), R + = + R = R, R + R = R 2. R • ^ = ^ • R = R, R • = • R = , (R • S) • T = R • (S • T) 3. R • (S + T) = R • S + R • T, (S + T) • R = S • R + T • R 4. R = R • R = (R) = (^ + R), = ^ = " 5. R = ^ + RR 6. (R + S) = (R + S) = (RS) = (RS)R = R(SR) 6= R + S 7. RR = RR, R(SR) = (RS)R 8. (RS) = ^ + (R + S)S, (RS) = ^ + R(R + S) 9. R = SR + T ssi R = ST, R = RS + T ssi R = TS
  • 7. Por ejemplo, el conjunto de todas las palabras formadas por a’s y b’s, que es el conjunto infinito {", a, b, ab, ba, aaa, aab, . . .}, puede ser representado mediante la cadena de caracteres “{a, b}”, que es una palabra formada por caracteres del alfabeto {“a”,“b”,“{”,“}”,“”, “,” }. Como vemos en este ejemplo, una cadena de caracteres de 6 caracteres puede representar todo un lenguaje infinito. Teorema.- El conjunto de los lenguajes en un alfabeto finito es incontable.
  • 8. Teorema de Kleene.- Un lenguaje es regular si y solo si es aceptado por algún autómata finito.
  • 9. Una posible solución es el uso de las graficas de transición. Estas ´ultimas son esencialmente AFN en que las etiquetas de las flechas tienen expresiones regulares, en lugar de palabras. Las graficas de transición (GT) son por lo tanto quíntuplos (K,,, s, F) en donde 2 K × ER × K. Los AFN son un subconjunto propio de las GT, puesto que las palabras en las etiquetas de un AFN pueden ser vistas como expresiones regulares que se representan así mismas.
  • 10. Un procedimiento para hacerlo consiste en ir eliminando gradualmente nodos de una GT, que inicialmente es el AFN que se quiere transformar, hasta que únicamente queden un nodo inicial y un nodo final.
  • 11. 1. El primer paso en este procedimiento consiste en añadir al autómata finito un nuevo estado inicial i, mientras que el antiguo estado inicial q0 deja de ser inicial, y un nuevo estado final f, mientras que los antiguos estados finales qi ∈ F dejan de ser finales; 2. El segundo paso consiste en eliminar nodos intermedios en la GT.
  • 12.
  • 13. Una gramática es un conjunto de reglas para formar correctamente las frases de un lenguaje; así tenemos la gramática del español, del francés, etc Una regla es una expresión de la forma α → β, en donde tanto α como β son cadenas de símbolos en donde pueden aparecer tanto elementos del alfabeto Σ como unos nuevos símbolos, llamados variables. Los símbolos que no son variables son constantes.
  • 14. Formalizamos estas nociones con las siguientes definiciones: Definición.- Una gramática regular es un cuádruplo (V, Σ, R, S) en donde: V es un alfabeto de variables, Σ es un alfabeto de constantes, R, el conjunto de reglas, es un subconjunto finito de V × (ΣV ∪ Σ). S, el símbolo inicial, es un elemento de V
  • 15. Teorema.- La clase de los lenguajes generados por alguna gramática regular es exactamente la de los lenguajes regulares. Limitaciones de los lenguajes regulares Los AF están limitados a los estados de que disponen como único medio para “recordar” la serie de símbolos recibidos hasta un momento dado.
  • 16. Teorema.- Si L es un lenguaje regular infinito, entonces existen cadenas x, y, z tales que y 6= ε, y xynz ∈ L, para algún n ≥ 0. Lo que este resultado establece es que, suponiendo que cierto lenguaje es regular, entonces forzosamente dicho lenguaje debe contener palabras en que una subcadena se repite cualquier número de