SlideShare a Scribd company logo
1 of 34
Download to read offline
U.T.N. – F.R.T.      LENGUAJES REGULARES Y
S. y S. de los L.
                       AUTÓMATAS FINITOS

 GRAMÁTICAS REGULARES (GR):

Recordemos..... :
   Las GR corresponden al Tipo 3 de la Jerarquía de Chomsky.
   Sus reglas pueden tener un formato regular por la derecha o
    regular por la izquierda, pero no ambos.
   Tienen la capacidad de generar solo Lenguajes Regulares.
   Sirven para describir el Nivel Lexicográfico de un Lenguaje.
   El modelo aceptor correspondiente es el Autómata Finito.
   Su formato estándar es: N1 → t N2 , N → t , S → λ
                                                 ING. JORGE BUABUD
U.T.N. – F.R.T.         LENGUAJES REGULARES Y
S. y S. de los L.
                          AUTÓMATAS FINITOS

 GRAMÁTICAS REGULARES (GR):

Obtención del Formato Estándar:

Pasos a seguir para obtener el Formato Estándar de Chomsky tipo 3:
1.- Eliminar reglas innecesarias.

2.- Eliminar el axioma S de la derecha, si es que λ ∈ L(GR).

3.- Eliminar reglas de redenominación o renombrado: N1 → N2

                                 →
4.- Eliminar reglas de borrado: N→ λ

5.- Realizar las sustituciones necesarias para reducir a uno la longitud de
   las secuencias de terminales que hubiera en las reglas.
                                                             ING. JORGE BUABUD
U.T.N. – F.R.T.          LENGUAJES REGULARES Y
S. y S. de los L.
                           AUTÓMATAS FINITOS

 GRAMÁTICAS REGULARES (GR):

1.- Eliminar reglas innecesarias: Son producciones que no aportan nada.
    1.1.- Reglas que tienen no-terminales inútiles, es decir aquellos N que
          no cumplen con: S ⇒* αNβ y N⇒* w
                                     β          ⇒
          donde S es el axioma, w ∈ ΣT* y α,β ∈ Σ*
                                                β
    1.2.- Reglas de la forma: N→N→

2.- Eliminar el axioma de la derecha: Si el axioma S aparece en la
    derecha de alguna producción y S ⇒* λ , entonces se realiza el
    siguiente artificio:
        2.1.- se introduce un nuevo símbolo inicial S1
        2.2.- se agrega a las producciones originales las reglas: S1 → S | λ
                                                           ING. JORGE BUABUD
U.T.N. – F.R.T.          LENGUAJES REGULARES Y
S. y S. de los L.
                           AUTÓMATAS FINITOS

 GRAMÁTICAS REGULARES (GR):

3.- Eliminar reglas de redenominación: Se reemplaza las producciones
    de la forma N1→N2 , por las reglas que surgen de reemplazar en las
    mismas N2 por las partes derechas de sus producciones.
4.- Eliminar reglas de borrado: Se reemplaza las producciones de la
    forma N→λ , por las reglas que surgen de reemplazar N por λ,
             →λ
    en todas las reglas donde figure N; a excepción de la regla S → λ ,
    donde S es el axioma.
5.- Reducción de longitud: Se reemplaza las reglas de la forma
    N1 → t1t2...tKN2 por las reglas N1→t1M1 , M1→t2M2 , .... , MK-1→ tKN2
    donde los Mi son nuevos no-terminales (en forma similar si la GR es
    por la izquierda).

                                                           ING. JORGE BUABUD
U.T.N. – F.R.T.         LENGUAJES REGULARES Y
S. y S. de los L.
                          AUTÓMATAS FINITOS

 GRAMÁTICAS REGULARES (GR):

Ejemplo de obtención del formato estándar de una GR:
Supongamos la siguiente GR por la derecha:
  G = 〈 ΣN , ΣT , S , P 〉
                                S → abaB | bb | λ | A

  ΣN = {S, A, B, C, D, E}       A → baS | aabC | a
                                B → aaA | B | λ
  ΣT = {a, b}
                                C → baC | aC
                      P=        D → bbB | aaa | abaD
                                E → aaE | abC

                                                        ING. JORGE BUABUD
U.T.N. – F.R.T.      LENGUAJES REGULARES Y
S. y S. de los L.
                       AUTÓMATAS FINITOS

 GRAMÁTICAS REGULARES (GR):

1) Eliminación de reglas innecesarias:
        S → abaB | bb | λ | A
        A → baS | a
        B → aaA | λ

2) Eliminación del axioma a la derecha:
        S1 → S | λ
        S → abaB | bb | λ | A
        A → baS | a
        B → aaA | λ
                                          ING. JORGE BUABUD
U.T.N. – F.R.T.       LENGUAJES REGULARES Y
S. y S. de los L.
                        AUTÓMATAS FINITOS

 GRAMÁTICAS REGULARES (GR):

3) Eliminación de reglas de redenominación:
        S1 → abaB | bb | baS | a | λ
        S → abaB | bb | λ | baS | a
        A → baS | a
        B → aaA | λ
4) Eliminación de reglas de borrado:
        S1 → abaB | bb | baS | a | λ | ba | aba
        S → abaB | bb | baS | a | ba | aba
        A → baS | a | ba
        B → aaA
                                                  ING. JORGE BUABUD
U.T.N. – F.R.T.           LENGUAJES REGULARES Y
S. y S. de los L.
                            AUTÓMATAS FINITOS

 GRAMÁTICAS REGULARES (GR):

5) Reducción de la longitud:
        S1 → aF | bH | bI | a | λ | bJ | aK
        F → bG
        G → aB                           Los otros componentes de G:
        H→b                              ΣN = { S1, A, B, F, G, H, I, J, K, L, S}
        I → aS                           ΣT = {a, b}
        J→a
                                         donde S1 es el nuevo axioma
        K → bJ
        S → aF | bH | bI | a | bJ | aK
        A → bI | a | bJ
        B → aL
        L → aA
                                                                 ING. JORGE BUABUD
U.T.N. – F.R.T.         LENGUAJES REGULARES Y
S. y S. de los L.
                          AUTÓMATAS FINITOS

 GRAMÁTICAS REGULARES (GR):

Equivalencia entre GR por derecha y GR por izquierda:
Los dos formatos posibles para una GR son equivalentes.
Veamos un algoritmo para pasar del formato por izquierda al formato
por derecha, partiendo de una GR en su forma estándar:
1.- Si el axioma figura en alguna parte derecha de las reglas, se procede
    a transformar la GR de la siguiente forma:
    1.1.- Agregar un nuevo símbolo no-terminal L
                              ∈Σ      ∈Σ
    1.2.- Si S es el axioma, t∈ΣT y N∈ΣN , entonces:
          1.2.1.- Para cada regla de la forma S → Nt
                  se crea una regla L → Nt
          1.2.2.- Cada regla de la forma N → St
                  se cambia por la regla N → Lt
                                                          ING. JORGE BUABUD
U.T.N. – F.R.T.         LENGUAJES REGULARES Y
S. y S. de los L.
                          AUTÓMATAS FINITOS

 GRAMÁTICAS REGULARES (GR):
2.- Se crea un grafo dirigido:
    2.1.- Se crea un nodo para cada no-terminal N y otro para λ
    2.2.- Para cada regla de la forma N1 → N2t
           se crea un arco desde el nodo N1 al nodo N2 con rótulo t
    2.3.- Para cada regla de la forma N → t
           se crea un arco desde el nodo N al nodo λ con etiqueta t
    2.4.- Si existe una regla S → λ
          se crea un arco sin rótulo desde el nodo S al nodo λ

3.- Se transforma este grafo de la siguiente manera:
    3.1.- Se intercambian las etiquetas de los nodos S y λ
    3.2.- Se invierte el sentido de todos los arcos
                                                             ING. JORGE BUABUD
U.T.N. – F.R.T.        LENGUAJES REGULARES Y
S. y S. de los L.
                         AUTÓMATAS FINITOS

 GRAMÁTICAS REGULARES (GR):

4.- Se transforma el grafo en un conjunto de reglas:
    4.1.- Para cada arco etiquetado con t que va del nodo N1 al nodo N2
          se crea la regla N1 → tN2
    4.2.- Para cada arco etiquetado con t que va del nodo N al nodo λ
          se crea la regla N → t
    4.3.- Si existe un arco del nodo del axioma S al nodo de λ
          se crea una regla S → λ


       En forma similar se puede definir un algoritmo para
       transformar una GR por derecha en su formato por
       izquierda equivalente.
                                                        ING. JORGE BUABUD
U.T.N. – F.R.T.      LENGUAJES REGULARES Y
S. y S. de los L.
                       AUTÓMATAS FINITOS

 GRAMÁTICAS REGULARES (GR):

Ejemplo de conversión de GR por Izquierda a Derecha:
Supongamos una GR por izquierda con las siguientes producciones:
           S → Ba | Ab , A → Sa | Ab , B → Bb | a
1.- Agregamos un nuevo no-terminal C y las reglas:
           S → Ba | Ab , A → Ca | Ab , B → Bb | a
           C → Ba | Ab
2.- Grafo:                    b
                    a   B      a      λ
                S     b          a
                              a
                        A             C
                   b          b
                                                     ING. JORGE BUABUD
U.T.N. – F.R.T.                 LENGUAJES REGULARES Y
S. y S. de los L.
                                  AUTÓMATAS FINITOS
 GRAMÁTICAS REGULARES (GR):

3) Transformamos el grafo:
                                     b
                        a        B    a       S
                    λ       b             a
                                     a
                                 A            C
                        b            b

4) Creamos las reglas de la GR por la derecha a partir del grafo:
           S → aB
           A → bC | bA | b
           B → aC | bB | a
           C → aA
                                                         ING. JORGE BUABUD
U.T.N. – F.R.T.      LENGUAJES REGULARES Y
S. y S. de los L.
                       AUTÓMATAS FINITOS

 EXPRESIONES REGULARES (ER):

Lenguaje Regular (LR):
Un LR es el lenguaje generado por una GR y se define mediante
las siguientes cláusulas:
1) Todo lenguaje finito es un LR
2) Si L1 y L2 son LR entonces L1∪L2 y L1.L2 también son LR
3) Si L es un LR entonces L* también es un LR
4) Todo LR se puede definir mediante las cláusulas 1, 2 y 3

                                                  ING. JORGE BUABUD
U.T.N. – F.R.T.     LENGUAJES REGULARES Y
S. y S. de los L.
                      AUTÓMATAS FINITOS

 EXPRESIONES REGULARES (ER):

Ejemplos de LR: Consideremos el alfabeto Σ={a, b}
L1 = { } = Φ
      λ
L2 = {λ} = Lλ
L3 = {a, b}
L4 = {aa, ab, ba, bb}
      λ
L5 = {λ, aba, aaa, bab, bbb}
L6 = L3 . L5 ∪ L4
L7 = L5 * . L4
L8 = L4 . L4 *
                                          ING. JORGE BUABUD
U.T.N. – F.R.T.      LENGUAJES REGULARES Y
S. y S. de los L.
                       AUTÓMATAS FINITOS

 EXPRESIONES REGULARES (ER):

Expresión Regular (ER):
Es una forma algebraica que se define sobre un alfabeto
base Σ y un alfabeto especial Σ’ = {+, *, • , Φ , λ , ( , ) }, con
Σ y Σ’ disjuntos, mediante las siguientes cláusulas:
1) Φ, λ, x∈Σ son ER
          ∈Σ
2) Si E1 y E2 son ER entonces E1+E2 y E1.E2 también son ER
3) Si E es una ER entonces E* y (E) también son ER
4) Todo ER se puede definir mediante las cláusulas 1, 2 y 3

                                                   ING. JORGE BUABUD
U.T.N. – F.R.T.         LENGUAJES REGULARES Y
S. y S. de los L.
                          AUTÓMATAS FINITOS

 EXPRESIONES REGULARES (ER):

Correspondencia entre las ER y los LR:
Aunque es casi obvio,          ER         LR
la siguiente tabla              Φ         {}
formaliza la relación           λ          λ
                                          {λ}
                                x         {x}
entre ER y LR:
                              R1+R2      L1∪L2
                              R1.R2      L1.L2
                               R*         L*

                                          ING. JORGE BUABUD
U.T.N. – F.R.T.     LENGUAJES REGULARES Y
S. y S. de los L.
                      AUTÓMATAS FINITOS

 EXPRESIONES REGULARES (ER):

Ejemplos de ER: Consideremos el alfabeto base Σ={a, b}
E1 = Φ
E2 = λ
E3 = a+b
E4 = aa+ab+ba+bb
E5 = λ+aba+aaa+bab+bbb
                       λ
E6 = E3.E5+E4 = (a+b).(λ+aba+aaa+bab+bbb)+(aa+ab+ba+bb)
                 λ
E7 = E5* . E4 = (λ+aba+aaa+bab+bbb)*.(aa+ab+ba+bb)
E8 = E4 . E4* = (aa+ab+ba+bb).(aa+ab+ba+bb)*
                                           ING. JORGE BUABUD
U.T.N. – F.R.T.        LENGUAJES REGULARES Y
S. y S. de los L.
                         AUTÓMATAS FINITOS

 EXPRESIONES REGULARES (ER):

Algunas aplicaciones de las ER:
En general las ER se asocian con los lenguajes regulares y
están presentes en diversas aplicaciones, por ejemplo:
1) Para descripción de patrones textuales:
   La mayoría de los procesadores de texto utilizan variantes de las
   ER para facilitar la búsqueda de palabras en un texto, como los
   “comodines” del Word . (Ver el help del MS-Word 2007).
  También se utilizan en la representación de cadenas de caracteres
   en muchos sistemas operativos, como en el GNU/Linux. (Ver
   página web http://iie.fing.edu.uy/~vagonbar/unixbas/expreg.htm)
                                                      ING. JORGE BUABUD
U.T.N. – F.R.T.             LENGUAJES REGULARES Y
S. y S. de los L.
                              AUTÓMATAS FINITOS

 EXPRESIONES REGULARES (ER):

2) Para representar estructuras algorítmicas:
   En el campo del análisis de algoritmos se utilizan ER para
   representar las estructuras básicas de control, por ejemplo:
                        a


                        b
                                    a.(b.(c+d))*.e
                    d        c

                        e

                                                  ING. JORGE BUABUD
U.T.N. – F.R.T.       LENGUAJES REGULARES Y
S. y S. de los L.
                        AUTÓMATAS FINITOS

 EXPRESIONES REGULARES (ER):

3) Para describir el léxico de un lenguaje de programación:
   Por ejemplo para el lenguaje C++:

   PalabrasClaves = main+if+else+while+do+switch+case+......
   Dígitos = 1+2+3+4+5+6+7+8+9
   NúmeroEnteroSinSigno = 0+Dígitos.(Dígitos+0)*
   Letra = a+b+c+d+..............+z
   Identificador = (Letra+ _ ).(Letra+ _ +Dígitos+0)*

                                                 ING. JORGE BUABUD
U.T.N. – F.R.T.       LENGUAJES REGULARES Y
S. y S. de los L.
                        AUTÓMATAS FINITOS

 EXPRESIONES REGULARES (ER):

Propiedades de las ER:
Existen muchas propiedades asociadas a las ER, a continuación
se muestran las más importantes:
1) Φ* = λ
2) E . E* = E* . E
3) E* = λ + E . E*
4) (E1* . E2*)* = (E1+ E2)* = (E1* . E2)* . E1*
         λ
5) E* = (λ+E+E2+E3+....+EN-1) . (EN)*

                                                  ING. JORGE BUABUD
U.T.N. – F.R.T.     LENGUAJES REGULARES Y
S. y S. de los L.
                      AUTÓMATAS FINITOS

 EXPRESIONES REGULARES (ER):

Sistema de Ecuaciones Características de una GR:
Dada una GR se puede obtener un conjunto de definiciones
                                            ∈Σ
regulares de la forma: X = R + T.X , donde X∈ΣN y (R,T)
son ER sobre Σ, del siguiente modo:
1) Agrupar todas las reglas que tengan igual parte izquierda
2) Igualar cada no-terminal X con la unión de todas las partes
   derechas correspondientes, usando el conectivo “+”
3) Sustituir la yuxtaposición de símbolos con la
   concatenación de los mismos, usando el conectivo “•”
                                                ING. JORGE BUABUD
U.T.N. – F.R.T.           LENGUAJES REGULARES Y
S. y S. de los L.
                            AUTÓMATAS FINITOS

 EXPRESIONES REGULARES (ER):

Ejemplo de Ecuaciones Características de una GR:
G = 〈 ΣN , ΣT , P , S 〉
                                 Sistema de Ecuaciones
ΣN = { S, A, B, C }                  Características
ΣT = { a, b, c }                S = a.A+b.B+c.C
P: S → aA | bB | cC             A = b.A+a.B
    A → bA | aB                 B = c.B+a
    B → cB | a
                                C = c.C+c
    C → cC | c
                                              ING. JORGE BUABUD
U.T.N. – F.R.T.     LENGUAJES REGULARES Y
S. y S. de los L.
                      AUTÓMATAS FINITOS

 EXPRESIONES REGULARES (ER):

Solución de una ecuación genérica: X=R+T.X
Mediante los siguientes pasos podemos deducir una expresión
para X tal que cumpla dicha igualdad:
1) Partimos de la propiedad de la expresión regular T:
             T* = λ + T . T*
2) Pos-concatenamos con la expresión regular R:
             T*.R = ( λ + T . T*).R
3) Resolvemos:
             T*.R = R + T . T*.R
4) Por simple comparación deducimos que: X = T*.R
                                               ING. JORGE BUABUD
U.T.N. – F.R.T.     LENGUAJES REGULARES Y
S. y S. de los L.
                      AUTÓMATAS FINITOS

 EXPRESIONES REGULARES (ER):

Obtención de la ER del lenguaje generado por una GR:

1) Se plantea el Sistema de Ecuaciones Características.

2) Se resuelve el sistema mediante método de sustitución y
  aplicación de la solución de la ecuación genérica.
3) La ER del lenguaje generado por la GR, es la solución
  correspondiente al axioma de la gramática.


                                                  ING. JORGE BUABUD
U.T.N. – F.R.T.     LENGUAJES REGULARES Y
S. y S. de los L.
                      AUTÓMATAS FINITOS

 EXPRESIONES REGULARES (ER):

Ejemplo de obtención de la ER de una GR:
Dando continuidad al ejemplo anterior de ecuaciones
características, tenemos:
C = c*.c
B = c*.a
A = b.A+a.c*.a
                    S = a.b*.a.c*.a+b.c*.a+c.c.c*
A = b*.a.c*.a
S = a.b*.a.c*.a+b.c*.a+c.c*.c
                                               ING. JORGE BUABUD
U.T.N. – F.R.T.       LENGUAJES REGULARES Y
S. y S. de los L.
                        AUTÓMATAS FINITOS

 EXPRESIONES REGULARES (ER):

Derivada de una ER:
La derivada de una expresión regular “E” respecto a un símbolo
                                 Σ
“x” perteneciente a un alfabeto “Σ”, se define como:

                    Dx(E) = {w / x.w ∈ E}
Es decir del conjunto de palabras “w” que están representadas
por “E”, se selecciona aquellas que comienzan por el símbolo
“x” respecto al que se deriva y la derivada será el conjunto de
los restos de esas palabras sin el prefijo “x”.

                                                 ING. JORGE BUABUD
U.T.N. – F.R.T.        LENGUAJES REGULARES Y
S. y S. de los L.
                         AUTÓMATAS FINITOS

 EXPRESIONES REGULARES (ER):

Propiedades de la Derivada de una ER:
             ∈Σ
Para todo x,y∈Σ se cumple que:
1) Dx(Φ) = Φ
      Φ             2) Dx(λ) = Φ
                          λ
3) Dx(x) = λ                          ≠
                    4) Dx(y) = Φ con y≠x
5) Dx(E1+E2) = Dx(E1)+Dx(E2)
                                                          λ∈E
                                                     λ si λ∈ 1
6) Dx(E1.E2) = Dx(E1).E2+f(E1).Dx(E2) con f(E1)=
                                                          λ∉E
                                                     Φ si λ∉ 1
7) Dx(E*) = Dx(E).E*
                                                   ING. JORGE BUABUD
U.T.N. – F.R.T.         LENGUAJES REGULARES Y
S. y S. de los L.
                          AUTÓMATAS FINITOS

 EXPRESIONES REGULARES (ER):

Ejemplo de Derivadas de una ER:
Supongamos la siguiente ER: E = a*.b.(a+b)*.b
   Da(E) = Da(a*).b.(a+b)*.b+f(a*).Da(b.(a+b)*.b)
                               λ
         = Da(a).a*.b.(a+b)*.b+λ.(Da(b).(a+b)*.b+f(b).Da((a+b)*.b))
         = λ.a*.b.(a+b)*.b+Φ.(a+b)*.b+Φ.Da((a+b)*.b)
                           Φ          Φ
                         Φ Φ
         = a*.b.(a+b)*.b+Φ+Φ = a*.b.(a+b)*.b = E
   Db(E) = Db(a*).b.(a+b)*.b+f(a*).Db(b.(a+b)*.b)
         = Φ.b.(a+b)*.b+λ.(Db(b).(a+b)*.b+f(b).Db((a+b)*.b))
                        λ
         = Φ+λ.(a+b)*.b+Φ.Db((a+b)*.b) = (a+b)*.b
             λ          Φ
                                                         ING. JORGE BUABUD
U.T.N. – F.R.T.       LENGUAJES REGULARES Y
S. y S. de los L.
                        AUTÓMATAS FINITOS

 EXPRESIONES REGULARES (ER):

Composición de Derivadas de una ER:
Se puede componer derivadas de la siguiente forma:
                        Dxy(E) = Dy(Dx(E))
En el ejemplo anterior tendríamos:
   Dab(E) = Db(Da(E)) = Db(E) = (a+b)*.b
   Dba(E) = Da(Db(E)) = Da((a+b)*.b)
           = Da((a+b)*).b+f((a+b)*).Da(b)
                              λΦ
           = Da(a+b).(a+b)*.b+λ.Φ = (a+b)*.b
                                               ING. JORGE BUABUD
U.T.N. – F.R.T.        LENGUAJES REGULARES Y
S. y S. de los L.
                         AUTÓMATAS FINITOS

 EXPRESIONES REGULARES (ER):

Obtención de la GR que genera el lenguaje de una ER:
Dada una ER E0 y el conjunto D de todas las ER Ei distintas que se
obtienen por derivación compuesta con respecto a todos los símbolos x
de Σ, el alfabeto base de E0 ; los componentes de la gramática G que
genera el lenguaje definido por E0 son:
ΣN = {E0} ∪ D ,       ΣT = Σ   ,   S = E0
            Si Dx(E1)=E2 , E2≠ λ , E2≠Φ , crear la regla E1 → x E2
               λ∈D
            Si λ∈ x(E1) , crear una regla E1 → x
  P=        Si λ∈E0 , crear una regla E0 → λ
               λ∈
                       Φ
            Si Dx(E1)=Φ , no crear ninguna regla
                                                      ING. JORGE BUABUD
U.T.N. – F.R.T.     LENGUAJES REGULARES Y
S. y S. de los L.
                      AUTÓMATAS FINITOS

 EXPRESIONES REGULARES (ER):

Ejemplo de obtención de una GR a partir de una ER:
Partamos de la ER del ejemplo anterior: E0 = a*.b.(a+b)*.b
Da(E0) = E0
Db(E0) = (a+b)*.b = E1
Da(E1) = E1
Db(E1) = Db((a+b)*.b) = Db((a+b)*).b+f((a+b)*).Db(b)
                           λλ             λ
       = Db(a+b).(a+b)*.b+λ.λ = (a+b)*.b+λ = E2
                    λ       Φ
Da(E2) = Da(E1)+Da(λ) = E1+Φ = E1
                    λ       Φ
Db(E2) = Db(E1)+Db(λ) = E2+Φ = E2
                                              ING. JORGE BUABUD
U.T.N. – F.R.T.        LENGUAJES REGULARES Y
S. y S. de los L.
                         AUTÓMATAS FINITOS

 EXPRESIONES REGULARES (ER):

De tal manera que:
ΣN = {E0 , E1 , E2}
ΣT = {a, b}
S = E0
            E0 → aE0 | bE1
                                     E0 → aE0 | bE1
P=          E1 → aE1 | bE2 | b   ≡
                                     E1 → aE1 | bE1 | b
            E2 → aE1 | bE2 | b
                                     con ΣN = {E0 , E1}

                                                 ING. JORGE BUABUD

More Related Content

What's hot

Automata Finito No Determinista - Francisco Torvisco 11-0402 & Jose Raul Nova...
Automata Finito No Determinista - Francisco Torvisco 11-0402 & Jose Raul Nova...Automata Finito No Determinista - Francisco Torvisco 11-0402 & Jose Raul Nova...
Automata Finito No Determinista - Francisco Torvisco 11-0402 & Jose Raul Nova...Don_Francisco
 
Logica Difusa Introduccion
Logica Difusa IntroduccionLogica Difusa Introduccion
Logica Difusa IntroduccionESCOM
 
El método de la secante y secante modificado
El método de la secante y secante modificadoEl método de la secante y secante modificado
El método de la secante y secante modificadoMoises Costa
 
automatas finitos
 automatas finitos automatas finitos
automatas finitosAnel Sosa
 
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
 
Conjuntos regulares 04[1]
Conjuntos regulares 04[1]Conjuntos regulares 04[1]
Conjuntos regulares 04[1]edeciofreitez
 
Los lenguajes aceptados para una maquina de turing
Los lenguajes aceptados para una maquina de turingLos lenguajes aceptados para una maquina de turing
Los lenguajes aceptados para una maquina de turingJonathan Bastidas
 
Matemáticas discretas- Teoría de Grafos
Matemáticas discretas- Teoría de GrafosMatemáticas discretas- Teoría de Grafos
Matemáticas discretas- Teoría de GrafosAngela Janeth Jimenez
 
Parte 4 Máquinas De Turing
Parte 4  Máquinas De  TuringParte 4  Máquinas De  Turing
Parte 4 Máquinas De TuringRicardo Quintero
 
Portafolio lenguajes y automatas unidad 3 - Autómatas finitos
Portafolio lenguajes y automatas unidad 3 - Autómatas finitosPortafolio lenguajes y automatas unidad 3 - Autómatas finitos
Portafolio lenguajes y automatas unidad 3 - Autómatas finitosHumano Terricola
 
Programación 3: Grafos, representación y operaciones
Programación 3: Grafos, representación y operacionesProgramación 3: Grafos, representación y operaciones
Programación 3: Grafos, representación y operacionesAngel Vázquez Patiño
 
Tópicos Avanzados de Programación - Unidad 3 programacion concurrente
Tópicos Avanzados de Programación - Unidad 3 programacion concurrenteTópicos Avanzados de Programación - Unidad 3 programacion concurrente
Tópicos Avanzados de Programación - Unidad 3 programacion concurrenteJosé Antonio Sandoval Acosta
 

What's hot (20)

Automata Finito No Determinista - Francisco Torvisco 11-0402 & Jose Raul Nova...
Automata Finito No Determinista - Francisco Torvisco 11-0402 & Jose Raul Nova...Automata Finito No Determinista - Francisco Torvisco 11-0402 & Jose Raul Nova...
Automata Finito No Determinista - Francisco Torvisco 11-0402 & Jose Raul Nova...
 
m discretas
m discretasm discretas
m discretas
 
Ejercicios
EjerciciosEjercicios
Ejercicios
 
TEORÍA DE GRAFOS
TEORÍA DE GRAFOSTEORÍA DE GRAFOS
TEORÍA DE GRAFOS
 
Automatas de pila
Automatas de pilaAutomatas de pila
Automatas de pila
 
Logica Difusa Introduccion
Logica Difusa IntroduccionLogica Difusa Introduccion
Logica Difusa Introduccion
 
El método de la secante y secante modificado
El método de la secante y secante modificadoEl método de la secante y secante modificado
El método de la secante y secante modificado
 
automatas finitos
 automatas finitos automatas finitos
automatas finitos
 
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.
 
Expresiones regulares y gramaticas
Expresiones regulares y gramaticasExpresiones regulares y gramaticas
Expresiones regulares y gramaticas
 
Conjuntos regulares 04[1]
Conjuntos regulares 04[1]Conjuntos regulares 04[1]
Conjuntos regulares 04[1]
 
Revisando la jerarquía de chomsky
Revisando la jerarquía de chomskyRevisando la jerarquía de chomsky
Revisando la jerarquía de chomsky
 
Los lenguajes aceptados para una maquina de turing
Los lenguajes aceptados para una maquina de turingLos lenguajes aceptados para una maquina de turing
Los lenguajes aceptados para una maquina de turing
 
Jerarquia de chomsky
Jerarquia de chomskyJerarquia de chomsky
Jerarquia de chomsky
 
Autómata finito
Autómata finitoAutómata finito
Autómata finito
 
Matemáticas discretas- Teoría de Grafos
Matemáticas discretas- Teoría de GrafosMatemáticas discretas- Teoría de Grafos
Matemáticas discretas- Teoría de Grafos
 
Parte 4 Máquinas De Turing
Parte 4  Máquinas De  TuringParte 4  Máquinas De  Turing
Parte 4 Máquinas De Turing
 
Portafolio lenguajes y automatas unidad 3 - Autómatas finitos
Portafolio lenguajes y automatas unidad 3 - Autómatas finitosPortafolio lenguajes y automatas unidad 3 - Autómatas finitos
Portafolio lenguajes y automatas unidad 3 - Autómatas finitos
 
Programación 3: Grafos, representación y operaciones
Programación 3: Grafos, representación y operacionesProgramación 3: Grafos, representación y operaciones
Programación 3: Grafos, representación y operaciones
 
Tópicos Avanzados de Programación - Unidad 3 programacion concurrente
Tópicos Avanzados de Programación - Unidad 3 programacion concurrenteTópicos Avanzados de Programación - Unidad 3 programacion concurrente
Tópicos Avanzados de Programación - Unidad 3 programacion concurrente
 

Viewers also liked

Viewers also liked (6)

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
 
Gramáticas y Modelos Matemáticos - Clase 3
Gramáticas y Modelos Matemáticos - Clase 3Gramáticas y Modelos Matemáticos - Clase 3
Gramáticas y Modelos Matemáticos - Clase 3
 
Gramáticas y Modelos Matemáticos - Clase 5
Gramáticas y Modelos Matemáticos - Clase 5Gramáticas y Modelos Matemáticos - Clase 5
Gramáticas y Modelos Matemáticos - Clase 5
 
Gramáticas y Modelos Matemáticos - Clase 4
Gramáticas y Modelos Matemáticos - Clase 4Gramáticas y Modelos Matemáticos - Clase 4
Gramáticas y Modelos Matemáticos - Clase 4
 
Lingüística Matemática Clase 1
Lingüística Matemática Clase 1Lingüística Matemática Clase 1
Lingüística Matemática Clase 1
 
Lingüística Matemática Clase 2
Lingüística Matemática Clase 2Lingüística Matemática Clase 2
Lingüística Matemática Clase 2
 

Recently uploaded

a propósito del estado su relevancia y definiciones
a propósito del estado su relevancia y definicionesa propósito del estado su relevancia y definiciones
a propósito del estado su relevancia y definicionessubfabian
 
Evaluación de los Factores Internos de la Organización
Evaluación de los Factores Internos de la OrganizaciónEvaluación de los Factores Internos de la Organización
Evaluación de los Factores Internos de la OrganizaciónJonathanCovena1
 
Tema 14. Aplicación de Diagramas 26-05-24.pptx
Tema 14. Aplicación de Diagramas 26-05-24.pptxTema 14. Aplicación de Diagramas 26-05-24.pptx
Tema 14. Aplicación de Diagramas 26-05-24.pptxNoe Castillo
 
Como construir los vínculos afectivos (Grupal)
Como construir los vínculos afectivos (Grupal)Como construir los vínculos afectivos (Grupal)
Como construir los vínculos afectivos (Grupal)portafoliodigitalyos
 
TERCER GRADO PROGRAMACION ANUAL CCSS 3° - 2024.docx
TERCER GRADO PROGRAMACION ANUAL CCSS 3° - 2024.docxTERCER GRADO PROGRAMACION ANUAL CCSS 3° - 2024.docx
TERCER GRADO PROGRAMACION ANUAL CCSS 3° - 2024.docxlitaroxselyperezmont
 
IMPLICACIONES BIOÉTICAS ANTE EL TRANSHUMANISMO A PARTIR DEL PENSAMIENTO FILOS...
IMPLICACIONES BIOÉTICAS ANTE EL TRANSHUMANISMO A PARTIR DEL PENSAMIENTO FILOS...IMPLICACIONES BIOÉTICAS ANTE EL TRANSHUMANISMO A PARTIR DEL PENSAMIENTO FILOS...
IMPLICACIONES BIOÉTICAS ANTE EL TRANSHUMANISMO A PARTIR DEL PENSAMIENTO FILOS...Andrés Canale
 
Vínculo afectivo (labor expositivo de grupo )
Vínculo afectivo (labor expositivo de grupo )Vínculo afectivo (labor expositivo de grupo )
Vínculo afectivo (labor expositivo de grupo )portafoliodigitalyos
 
Resumen Acuerdo 05 04 24.pdf por el que se rigen los Consejos Técnicos Escolares
Resumen Acuerdo 05 04 24.pdf por el que se rigen los Consejos Técnicos EscolaresResumen Acuerdo 05 04 24.pdf por el que se rigen los Consejos Técnicos Escolares
Resumen Acuerdo 05 04 24.pdf por el que se rigen los Consejos Técnicos EscolaresLluviaAliciaHernande
 
PLAN DE GESTION DEL RIESGO 2023 - 2024.docx
PLAN DE GESTION DEL RIESGO  2023 - 2024.docxPLAN DE GESTION DEL RIESGO  2023 - 2024.docx
PLAN DE GESTION DEL RIESGO 2023 - 2024.docxpily R.T.
 
Tipologías de vínculos afectivos (grupo)
Tipologías de vínculos afectivos (grupo)Tipologías de vínculos afectivos (grupo)
Tipologías de vínculos afectivos (grupo)portafoliodigitalyos
 
DESCRIPCIÓN-LOS-DILEMAS-DEL-CONOCIMIENTO.pptx
DESCRIPCIÓN-LOS-DILEMAS-DEL-CONOCIMIENTO.pptxDESCRIPCIÓN-LOS-DILEMAS-DEL-CONOCIMIENTO.pptx
DESCRIPCIÓN-LOS-DILEMAS-DEL-CONOCIMIENTO.pptxMARCOSMARTINALACAYOP1
 
📝 Semana 09 - Tema 01: Tarea - Aplicación del resumen como estrategia de fuen...
📝 Semana 09 - Tema 01: Tarea - Aplicación del resumen como estrategia de fuen...📝 Semana 09 - Tema 01: Tarea - Aplicación del resumen como estrategia de fuen...
📝 Semana 09 - Tema 01: Tarea - Aplicación del resumen como estrategia de fuen...harolbustamante1
 
PATRONES DE REFERENCIA, CRITERIOS Y DIAGNOSTICO Angeles.pptx
PATRONES DE REFERENCIA, CRITERIOS Y DIAGNOSTICO Angeles.pptxPATRONES DE REFERENCIA, CRITERIOS Y DIAGNOSTICO Angeles.pptx
PATRONES DE REFERENCIA, CRITERIOS Y DIAGNOSTICO Angeles.pptxSusanaAlejandraMende
 
a propósito de la globalización y sus efectos
a propósito de la globalización y sus efectosa propósito de la globalización y sus efectos
a propósito de la globalización y sus efectossubfabian
 
ANTOLOGIA COMPLETA ANITA LA ABEJITA PARA LA LECTOESCRITURA EN PRIMER GRADO.pdf
ANTOLOGIA COMPLETA ANITA LA ABEJITA PARA LA LECTOESCRITURA EN PRIMER GRADO.pdfANTOLOGIA COMPLETA ANITA LA ABEJITA PARA LA LECTOESCRITURA EN PRIMER GRADO.pdf
ANTOLOGIA COMPLETA ANITA LA ABEJITA PARA LA LECTOESCRITURA EN PRIMER GRADO.pdflvela1316
 
ACERTIJO SOPA DE LETRAS OLÍMPICA. Por JAVIER SOLIS NOYOLA
ACERTIJO SOPA DE LETRAS OLÍMPICA. Por JAVIER SOLIS NOYOLAACERTIJO SOPA DE LETRAS OLÍMPICA. Por JAVIER SOLIS NOYOLA
ACERTIJO SOPA DE LETRAS OLÍMPICA. Por JAVIER SOLIS NOYOLAJAVIER SOLIS NOYOLA
 
CONCLUSIONES DESCRIPTIVAS TIC que ayudaran a tus registrosdocx
CONCLUSIONES DESCRIPTIVAS TIC que ayudaran a tus registrosdocxCONCLUSIONES DESCRIPTIVAS TIC que ayudaran a tus registrosdocx
CONCLUSIONES DESCRIPTIVAS TIC que ayudaran a tus registrosdocxMarlynRocaOnofre
 
RESPONSABILIDAD SOCIAL EN LAS ORGANIZACIONES (4).pdf
RESPONSABILIDAD SOCIAL EN LAS ORGANIZACIONES (4).pdfRESPONSABILIDAD SOCIAL EN LAS ORGANIZACIONES (4).pdf
RESPONSABILIDAD SOCIAL EN LAS ORGANIZACIONES (4).pdfANEP - DETP
 

Recently uploaded (20)

a propósito del estado su relevancia y definiciones
a propósito del estado su relevancia y definicionesa propósito del estado su relevancia y definiciones
a propósito del estado su relevancia y definiciones
 
Evaluación de los Factores Internos de la Organización
Evaluación de los Factores Internos de la OrganizaciónEvaluación de los Factores Internos de la Organización
Evaluación de los Factores Internos de la Organización
 
Tema 14. Aplicación de Diagramas 26-05-24.pptx
Tema 14. Aplicación de Diagramas 26-05-24.pptxTema 14. Aplicación de Diagramas 26-05-24.pptx
Tema 14. Aplicación de Diagramas 26-05-24.pptx
 
Como construir los vínculos afectivos (Grupal)
Como construir los vínculos afectivos (Grupal)Como construir los vínculos afectivos (Grupal)
Como construir los vínculos afectivos (Grupal)
 
TERCER GRADO PROGRAMACION ANUAL CCSS 3° - 2024.docx
TERCER GRADO PROGRAMACION ANUAL CCSS 3° - 2024.docxTERCER GRADO PROGRAMACION ANUAL CCSS 3° - 2024.docx
TERCER GRADO PROGRAMACION ANUAL CCSS 3° - 2024.docx
 
IMPLICACIONES BIOÉTICAS ANTE EL TRANSHUMANISMO A PARTIR DEL PENSAMIENTO FILOS...
IMPLICACIONES BIOÉTICAS ANTE EL TRANSHUMANISMO A PARTIR DEL PENSAMIENTO FILOS...IMPLICACIONES BIOÉTICAS ANTE EL TRANSHUMANISMO A PARTIR DEL PENSAMIENTO FILOS...
IMPLICACIONES BIOÉTICAS ANTE EL TRANSHUMANISMO A PARTIR DEL PENSAMIENTO FILOS...
 
Vínculo afectivo (labor expositivo de grupo )
Vínculo afectivo (labor expositivo de grupo )Vínculo afectivo (labor expositivo de grupo )
Vínculo afectivo (labor expositivo de grupo )
 
Resumen Acuerdo 05 04 24.pdf por el que se rigen los Consejos Técnicos Escolares
Resumen Acuerdo 05 04 24.pdf por el que se rigen los Consejos Técnicos EscolaresResumen Acuerdo 05 04 24.pdf por el que se rigen los Consejos Técnicos Escolares
Resumen Acuerdo 05 04 24.pdf por el que se rigen los Consejos Técnicos Escolares
 
Revista Faro Normalista 6, 18 de mayo 2024
Revista Faro Normalista 6, 18 de mayo 2024Revista Faro Normalista 6, 18 de mayo 2024
Revista Faro Normalista 6, 18 de mayo 2024
 
PLAN DE GESTION DEL RIESGO 2023 - 2024.docx
PLAN DE GESTION DEL RIESGO  2023 - 2024.docxPLAN DE GESTION DEL RIESGO  2023 - 2024.docx
PLAN DE GESTION DEL RIESGO 2023 - 2024.docx
 
Tipologías de vínculos afectivos (grupo)
Tipologías de vínculos afectivos (grupo)Tipologías de vínculos afectivos (grupo)
Tipologías de vínculos afectivos (grupo)
 
DESCRIPCIÓN-LOS-DILEMAS-DEL-CONOCIMIENTO.pptx
DESCRIPCIÓN-LOS-DILEMAS-DEL-CONOCIMIENTO.pptxDESCRIPCIÓN-LOS-DILEMAS-DEL-CONOCIMIENTO.pptx
DESCRIPCIÓN-LOS-DILEMAS-DEL-CONOCIMIENTO.pptx
 
📝 Semana 09 - Tema 01: Tarea - Aplicación del resumen como estrategia de fuen...
📝 Semana 09 - Tema 01: Tarea - Aplicación del resumen como estrategia de fuen...📝 Semana 09 - Tema 01: Tarea - Aplicación del resumen como estrategia de fuen...
📝 Semana 09 - Tema 01: Tarea - Aplicación del resumen como estrategia de fuen...
 
PATRONES DE REFERENCIA, CRITERIOS Y DIAGNOSTICO Angeles.pptx
PATRONES DE REFERENCIA, CRITERIOS Y DIAGNOSTICO Angeles.pptxPATRONES DE REFERENCIA, CRITERIOS Y DIAGNOSTICO Angeles.pptx
PATRONES DE REFERENCIA, CRITERIOS Y DIAGNOSTICO Angeles.pptx
 
a propósito de la globalización y sus efectos
a propósito de la globalización y sus efectosa propósito de la globalización y sus efectos
a propósito de la globalización y sus efectos
 
Sesión de clase: Luz desde el santuario.pdf
Sesión de clase: Luz desde el santuario.pdfSesión de clase: Luz desde el santuario.pdf
Sesión de clase: Luz desde el santuario.pdf
 
ANTOLOGIA COMPLETA ANITA LA ABEJITA PARA LA LECTOESCRITURA EN PRIMER GRADO.pdf
ANTOLOGIA COMPLETA ANITA LA ABEJITA PARA LA LECTOESCRITURA EN PRIMER GRADO.pdfANTOLOGIA COMPLETA ANITA LA ABEJITA PARA LA LECTOESCRITURA EN PRIMER GRADO.pdf
ANTOLOGIA COMPLETA ANITA LA ABEJITA PARA LA LECTOESCRITURA EN PRIMER GRADO.pdf
 
ACERTIJO SOPA DE LETRAS OLÍMPICA. Por JAVIER SOLIS NOYOLA
ACERTIJO SOPA DE LETRAS OLÍMPICA. Por JAVIER SOLIS NOYOLAACERTIJO SOPA DE LETRAS OLÍMPICA. Por JAVIER SOLIS NOYOLA
ACERTIJO SOPA DE LETRAS OLÍMPICA. Por JAVIER SOLIS NOYOLA
 
CONCLUSIONES DESCRIPTIVAS TIC que ayudaran a tus registrosdocx
CONCLUSIONES DESCRIPTIVAS TIC que ayudaran a tus registrosdocxCONCLUSIONES DESCRIPTIVAS TIC que ayudaran a tus registrosdocx
CONCLUSIONES DESCRIPTIVAS TIC que ayudaran a tus registrosdocx
 
RESPONSABILIDAD SOCIAL EN LAS ORGANIZACIONES (4).pdf
RESPONSABILIDAD SOCIAL EN LAS ORGANIZACIONES (4).pdfRESPONSABILIDAD SOCIAL EN LAS ORGANIZACIONES (4).pdf
RESPONSABILIDAD SOCIAL EN LAS ORGANIZACIONES (4).pdf
 

Lenguajes Regulares y Autómatas Finitos - Clase 6

  • 1. U.T.N. – F.R.T. LENGUAJES REGULARES Y S. y S. de los L. AUTÓMATAS FINITOS GRAMÁTICAS REGULARES (GR): Recordemos..... : Las GR corresponden al Tipo 3 de la Jerarquía de Chomsky. Sus reglas pueden tener un formato regular por la derecha o regular por la izquierda, pero no ambos. Tienen la capacidad de generar solo Lenguajes Regulares. Sirven para describir el Nivel Lexicográfico de un Lenguaje. El modelo aceptor correspondiente es el Autómata Finito. Su formato estándar es: N1 → t N2 , N → t , S → λ ING. JORGE BUABUD
  • 2. U.T.N. – F.R.T. LENGUAJES REGULARES Y S. y S. de los L. AUTÓMATAS FINITOS GRAMÁTICAS REGULARES (GR): Obtención del Formato Estándar: Pasos a seguir para obtener el Formato Estándar de Chomsky tipo 3: 1.- Eliminar reglas innecesarias. 2.- Eliminar el axioma S de la derecha, si es que λ ∈ L(GR). 3.- Eliminar reglas de redenominación o renombrado: N1 → N2 → 4.- Eliminar reglas de borrado: N→ λ 5.- Realizar las sustituciones necesarias para reducir a uno la longitud de las secuencias de terminales que hubiera en las reglas. ING. JORGE BUABUD
  • 3. U.T.N. – F.R.T. LENGUAJES REGULARES Y S. y S. de los L. AUTÓMATAS FINITOS GRAMÁTICAS REGULARES (GR): 1.- Eliminar reglas innecesarias: Son producciones que no aportan nada. 1.1.- Reglas que tienen no-terminales inútiles, es decir aquellos N que no cumplen con: S ⇒* αNβ y N⇒* w β ⇒ donde S es el axioma, w ∈ ΣT* y α,β ∈ Σ* β 1.2.- Reglas de la forma: N→N→ 2.- Eliminar el axioma de la derecha: Si el axioma S aparece en la derecha de alguna producción y S ⇒* λ , entonces se realiza el siguiente artificio: 2.1.- se introduce un nuevo símbolo inicial S1 2.2.- se agrega a las producciones originales las reglas: S1 → S | λ ING. JORGE BUABUD
  • 4. U.T.N. – F.R.T. LENGUAJES REGULARES Y S. y S. de los L. AUTÓMATAS FINITOS GRAMÁTICAS REGULARES (GR): 3.- Eliminar reglas de redenominación: Se reemplaza las producciones de la forma N1→N2 , por las reglas que surgen de reemplazar en las mismas N2 por las partes derechas de sus producciones. 4.- Eliminar reglas de borrado: Se reemplaza las producciones de la forma N→λ , por las reglas que surgen de reemplazar N por λ, →λ en todas las reglas donde figure N; a excepción de la regla S → λ , donde S es el axioma. 5.- Reducción de longitud: Se reemplaza las reglas de la forma N1 → t1t2...tKN2 por las reglas N1→t1M1 , M1→t2M2 , .... , MK-1→ tKN2 donde los Mi son nuevos no-terminales (en forma similar si la GR es por la izquierda). ING. JORGE BUABUD
  • 5. U.T.N. – F.R.T. LENGUAJES REGULARES Y S. y S. de los L. AUTÓMATAS FINITOS GRAMÁTICAS REGULARES (GR): Ejemplo de obtención del formato estándar de una GR: Supongamos la siguiente GR por la derecha: G = 〈 ΣN , ΣT , S , P 〉 S → abaB | bb | λ | A ΣN = {S, A, B, C, D, E} A → baS | aabC | a B → aaA | B | λ ΣT = {a, b} C → baC | aC P= D → bbB | aaa | abaD E → aaE | abC ING. JORGE BUABUD
  • 6. U.T.N. – F.R.T. LENGUAJES REGULARES Y S. y S. de los L. AUTÓMATAS FINITOS GRAMÁTICAS REGULARES (GR): 1) Eliminación de reglas innecesarias: S → abaB | bb | λ | A A → baS | a B → aaA | λ 2) Eliminación del axioma a la derecha: S1 → S | λ S → abaB | bb | λ | A A → baS | a B → aaA | λ ING. JORGE BUABUD
  • 7. U.T.N. – F.R.T. LENGUAJES REGULARES Y S. y S. de los L. AUTÓMATAS FINITOS GRAMÁTICAS REGULARES (GR): 3) Eliminación de reglas de redenominación: S1 → abaB | bb | baS | a | λ S → abaB | bb | λ | baS | a A → baS | a B → aaA | λ 4) Eliminación de reglas de borrado: S1 → abaB | bb | baS | a | λ | ba | aba S → abaB | bb | baS | a | ba | aba A → baS | a | ba B → aaA ING. JORGE BUABUD
  • 8. U.T.N. – F.R.T. LENGUAJES REGULARES Y S. y S. de los L. AUTÓMATAS FINITOS GRAMÁTICAS REGULARES (GR): 5) Reducción de la longitud: S1 → aF | bH | bI | a | λ | bJ | aK F → bG G → aB Los otros componentes de G: H→b ΣN = { S1, A, B, F, G, H, I, J, K, L, S} I → aS ΣT = {a, b} J→a donde S1 es el nuevo axioma K → bJ S → aF | bH | bI | a | bJ | aK A → bI | a | bJ B → aL L → aA ING. JORGE BUABUD
  • 9. U.T.N. – F.R.T. LENGUAJES REGULARES Y S. y S. de los L. AUTÓMATAS FINITOS GRAMÁTICAS REGULARES (GR): Equivalencia entre GR por derecha y GR por izquierda: Los dos formatos posibles para una GR son equivalentes. Veamos un algoritmo para pasar del formato por izquierda al formato por derecha, partiendo de una GR en su forma estándar: 1.- Si el axioma figura en alguna parte derecha de las reglas, se procede a transformar la GR de la siguiente forma: 1.1.- Agregar un nuevo símbolo no-terminal L ∈Σ ∈Σ 1.2.- Si S es el axioma, t∈ΣT y N∈ΣN , entonces: 1.2.1.- Para cada regla de la forma S → Nt se crea una regla L → Nt 1.2.2.- Cada regla de la forma N → St se cambia por la regla N → Lt ING. JORGE BUABUD
  • 10. U.T.N. – F.R.T. LENGUAJES REGULARES Y S. y S. de los L. AUTÓMATAS FINITOS GRAMÁTICAS REGULARES (GR): 2.- Se crea un grafo dirigido: 2.1.- Se crea un nodo para cada no-terminal N y otro para λ 2.2.- Para cada regla de la forma N1 → N2t se crea un arco desde el nodo N1 al nodo N2 con rótulo t 2.3.- Para cada regla de la forma N → t se crea un arco desde el nodo N al nodo λ con etiqueta t 2.4.- Si existe una regla S → λ se crea un arco sin rótulo desde el nodo S al nodo λ 3.- Se transforma este grafo de la siguiente manera: 3.1.- Se intercambian las etiquetas de los nodos S y λ 3.2.- Se invierte el sentido de todos los arcos ING. JORGE BUABUD
  • 11. U.T.N. – F.R.T. LENGUAJES REGULARES Y S. y S. de los L. AUTÓMATAS FINITOS GRAMÁTICAS REGULARES (GR): 4.- Se transforma el grafo en un conjunto de reglas: 4.1.- Para cada arco etiquetado con t que va del nodo N1 al nodo N2 se crea la regla N1 → tN2 4.2.- Para cada arco etiquetado con t que va del nodo N al nodo λ se crea la regla N → t 4.3.- Si existe un arco del nodo del axioma S al nodo de λ se crea una regla S → λ En forma similar se puede definir un algoritmo para transformar una GR por derecha en su formato por izquierda equivalente. ING. JORGE BUABUD
  • 12. U.T.N. – F.R.T. LENGUAJES REGULARES Y S. y S. de los L. AUTÓMATAS FINITOS GRAMÁTICAS REGULARES (GR): Ejemplo de conversión de GR por Izquierda a Derecha: Supongamos una GR por izquierda con las siguientes producciones: S → Ba | Ab , A → Sa | Ab , B → Bb | a 1.- Agregamos un nuevo no-terminal C y las reglas: S → Ba | Ab , A → Ca | Ab , B → Bb | a C → Ba | Ab 2.- Grafo: b a B a λ S b a a A C b b ING. JORGE BUABUD
  • 13. U.T.N. – F.R.T. LENGUAJES REGULARES Y S. y S. de los L. AUTÓMATAS FINITOS GRAMÁTICAS REGULARES (GR): 3) Transformamos el grafo: b a B a S λ b a a A C b b 4) Creamos las reglas de la GR por la derecha a partir del grafo: S → aB A → bC | bA | b B → aC | bB | a C → aA ING. JORGE BUABUD
  • 14. U.T.N. – F.R.T. LENGUAJES REGULARES Y S. y S. de los L. AUTÓMATAS FINITOS EXPRESIONES REGULARES (ER): Lenguaje Regular (LR): Un LR es el lenguaje generado por una GR y se define mediante las siguientes cláusulas: 1) Todo lenguaje finito es un LR 2) Si L1 y L2 son LR entonces L1∪L2 y L1.L2 también son LR 3) Si L es un LR entonces L* también es un LR 4) Todo LR se puede definir mediante las cláusulas 1, 2 y 3 ING. JORGE BUABUD
  • 15. U.T.N. – F.R.T. LENGUAJES REGULARES Y S. y S. de los L. AUTÓMATAS FINITOS EXPRESIONES REGULARES (ER): Ejemplos de LR: Consideremos el alfabeto Σ={a, b} L1 = { } = Φ λ L2 = {λ} = Lλ L3 = {a, b} L4 = {aa, ab, ba, bb} λ L5 = {λ, aba, aaa, bab, bbb} L6 = L3 . L5 ∪ L4 L7 = L5 * . L4 L8 = L4 . L4 * ING. JORGE BUABUD
  • 16. U.T.N. – F.R.T. LENGUAJES REGULARES Y S. y S. de los L. AUTÓMATAS FINITOS EXPRESIONES REGULARES (ER): Expresión Regular (ER): Es una forma algebraica que se define sobre un alfabeto base Σ y un alfabeto especial Σ’ = {+, *, • , Φ , λ , ( , ) }, con Σ y Σ’ disjuntos, mediante las siguientes cláusulas: 1) Φ, λ, x∈Σ son ER ∈Σ 2) Si E1 y E2 son ER entonces E1+E2 y E1.E2 también son ER 3) Si E es una ER entonces E* y (E) también son ER 4) Todo ER se puede definir mediante las cláusulas 1, 2 y 3 ING. JORGE BUABUD
  • 17. U.T.N. – F.R.T. LENGUAJES REGULARES Y S. y S. de los L. AUTÓMATAS FINITOS EXPRESIONES REGULARES (ER): Correspondencia entre las ER y los LR: Aunque es casi obvio, ER LR la siguiente tabla Φ {} formaliza la relación λ λ {λ} x {x} entre ER y LR: R1+R2 L1∪L2 R1.R2 L1.L2 R* L* ING. JORGE BUABUD
  • 18. U.T.N. – F.R.T. LENGUAJES REGULARES Y S. y S. de los L. AUTÓMATAS FINITOS EXPRESIONES REGULARES (ER): Ejemplos de ER: Consideremos el alfabeto base Σ={a, b} E1 = Φ E2 = λ E3 = a+b E4 = aa+ab+ba+bb E5 = λ+aba+aaa+bab+bbb λ E6 = E3.E5+E4 = (a+b).(λ+aba+aaa+bab+bbb)+(aa+ab+ba+bb) λ E7 = E5* . E4 = (λ+aba+aaa+bab+bbb)*.(aa+ab+ba+bb) E8 = E4 . E4* = (aa+ab+ba+bb).(aa+ab+ba+bb)* ING. JORGE BUABUD
  • 19. U.T.N. – F.R.T. LENGUAJES REGULARES Y S. y S. de los L. AUTÓMATAS FINITOS EXPRESIONES REGULARES (ER): Algunas aplicaciones de las ER: En general las ER se asocian con los lenguajes regulares y están presentes en diversas aplicaciones, por ejemplo: 1) Para descripción de patrones textuales: La mayoría de los procesadores de texto utilizan variantes de las ER para facilitar la búsqueda de palabras en un texto, como los “comodines” del Word . (Ver el help del MS-Word 2007). También se utilizan en la representación de cadenas de caracteres en muchos sistemas operativos, como en el GNU/Linux. (Ver página web http://iie.fing.edu.uy/~vagonbar/unixbas/expreg.htm) ING. JORGE BUABUD
  • 20. U.T.N. – F.R.T. LENGUAJES REGULARES Y S. y S. de los L. AUTÓMATAS FINITOS EXPRESIONES REGULARES (ER): 2) Para representar estructuras algorítmicas: En el campo del análisis de algoritmos se utilizan ER para representar las estructuras básicas de control, por ejemplo: a b a.(b.(c+d))*.e d c e ING. JORGE BUABUD
  • 21. U.T.N. – F.R.T. LENGUAJES REGULARES Y S. y S. de los L. AUTÓMATAS FINITOS EXPRESIONES REGULARES (ER): 3) Para describir el léxico de un lenguaje de programación: Por ejemplo para el lenguaje C++: PalabrasClaves = main+if+else+while+do+switch+case+...... Dígitos = 1+2+3+4+5+6+7+8+9 NúmeroEnteroSinSigno = 0+Dígitos.(Dígitos+0)* Letra = a+b+c+d+..............+z Identificador = (Letra+ _ ).(Letra+ _ +Dígitos+0)* ING. JORGE BUABUD
  • 22. U.T.N. – F.R.T. LENGUAJES REGULARES Y S. y S. de los L. AUTÓMATAS FINITOS EXPRESIONES REGULARES (ER): Propiedades de las ER: Existen muchas propiedades asociadas a las ER, a continuación se muestran las más importantes: 1) Φ* = λ 2) E . E* = E* . E 3) E* = λ + E . E* 4) (E1* . E2*)* = (E1+ E2)* = (E1* . E2)* . E1* λ 5) E* = (λ+E+E2+E3+....+EN-1) . (EN)* ING. JORGE BUABUD
  • 23. U.T.N. – F.R.T. LENGUAJES REGULARES Y S. y S. de los L. AUTÓMATAS FINITOS EXPRESIONES REGULARES (ER): Sistema de Ecuaciones Características de una GR: Dada una GR se puede obtener un conjunto de definiciones ∈Σ regulares de la forma: X = R + T.X , donde X∈ΣN y (R,T) son ER sobre Σ, del siguiente modo: 1) Agrupar todas las reglas que tengan igual parte izquierda 2) Igualar cada no-terminal X con la unión de todas las partes derechas correspondientes, usando el conectivo “+” 3) Sustituir la yuxtaposición de símbolos con la concatenación de los mismos, usando el conectivo “•” ING. JORGE BUABUD
  • 24. U.T.N. – F.R.T. LENGUAJES REGULARES Y S. y S. de los L. AUTÓMATAS FINITOS EXPRESIONES REGULARES (ER): Ejemplo de Ecuaciones Características de una GR: G = 〈 ΣN , ΣT , P , S 〉 Sistema de Ecuaciones ΣN = { S, A, B, C } Características ΣT = { a, b, c } S = a.A+b.B+c.C P: S → aA | bB | cC A = b.A+a.B A → bA | aB B = c.B+a B → cB | a C = c.C+c C → cC | c ING. JORGE BUABUD
  • 25. U.T.N. – F.R.T. LENGUAJES REGULARES Y S. y S. de los L. AUTÓMATAS FINITOS EXPRESIONES REGULARES (ER): Solución de una ecuación genérica: X=R+T.X Mediante los siguientes pasos podemos deducir una expresión para X tal que cumpla dicha igualdad: 1) Partimos de la propiedad de la expresión regular T: T* = λ + T . T* 2) Pos-concatenamos con la expresión regular R: T*.R = ( λ + T . T*).R 3) Resolvemos: T*.R = R + T . T*.R 4) Por simple comparación deducimos que: X = T*.R ING. JORGE BUABUD
  • 26. U.T.N. – F.R.T. LENGUAJES REGULARES Y S. y S. de los L. AUTÓMATAS FINITOS EXPRESIONES REGULARES (ER): Obtención de la ER del lenguaje generado por una GR: 1) Se plantea el Sistema de Ecuaciones Características. 2) Se resuelve el sistema mediante método de sustitución y aplicación de la solución de la ecuación genérica. 3) La ER del lenguaje generado por la GR, es la solución correspondiente al axioma de la gramática. ING. JORGE BUABUD
  • 27. U.T.N. – F.R.T. LENGUAJES REGULARES Y S. y S. de los L. AUTÓMATAS FINITOS EXPRESIONES REGULARES (ER): Ejemplo de obtención de la ER de una GR: Dando continuidad al ejemplo anterior de ecuaciones características, tenemos: C = c*.c B = c*.a A = b.A+a.c*.a S = a.b*.a.c*.a+b.c*.a+c.c.c* A = b*.a.c*.a S = a.b*.a.c*.a+b.c*.a+c.c*.c ING. JORGE BUABUD
  • 28. U.T.N. – F.R.T. LENGUAJES REGULARES Y S. y S. de los L. AUTÓMATAS FINITOS EXPRESIONES REGULARES (ER): Derivada de una ER: La derivada de una expresión regular “E” respecto a un símbolo Σ “x” perteneciente a un alfabeto “Σ”, se define como: Dx(E) = {w / x.w ∈ E} Es decir del conjunto de palabras “w” que están representadas por “E”, se selecciona aquellas que comienzan por el símbolo “x” respecto al que se deriva y la derivada será el conjunto de los restos de esas palabras sin el prefijo “x”. ING. JORGE BUABUD
  • 29. U.T.N. – F.R.T. LENGUAJES REGULARES Y S. y S. de los L. AUTÓMATAS FINITOS EXPRESIONES REGULARES (ER): Propiedades de la Derivada de una ER: ∈Σ Para todo x,y∈Σ se cumple que: 1) Dx(Φ) = Φ Φ 2) Dx(λ) = Φ λ 3) Dx(x) = λ ≠ 4) Dx(y) = Φ con y≠x 5) Dx(E1+E2) = Dx(E1)+Dx(E2) λ∈E λ si λ∈ 1 6) Dx(E1.E2) = Dx(E1).E2+f(E1).Dx(E2) con f(E1)= λ∉E Φ si λ∉ 1 7) Dx(E*) = Dx(E).E* ING. JORGE BUABUD
  • 30. U.T.N. – F.R.T. LENGUAJES REGULARES Y S. y S. de los L. AUTÓMATAS FINITOS EXPRESIONES REGULARES (ER): Ejemplo de Derivadas de una ER: Supongamos la siguiente ER: E = a*.b.(a+b)*.b Da(E) = Da(a*).b.(a+b)*.b+f(a*).Da(b.(a+b)*.b) λ = Da(a).a*.b.(a+b)*.b+λ.(Da(b).(a+b)*.b+f(b).Da((a+b)*.b)) = λ.a*.b.(a+b)*.b+Φ.(a+b)*.b+Φ.Da((a+b)*.b) Φ Φ Φ Φ = a*.b.(a+b)*.b+Φ+Φ = a*.b.(a+b)*.b = E Db(E) = Db(a*).b.(a+b)*.b+f(a*).Db(b.(a+b)*.b) = Φ.b.(a+b)*.b+λ.(Db(b).(a+b)*.b+f(b).Db((a+b)*.b)) λ = Φ+λ.(a+b)*.b+Φ.Db((a+b)*.b) = (a+b)*.b λ Φ ING. JORGE BUABUD
  • 31. U.T.N. – F.R.T. LENGUAJES REGULARES Y S. y S. de los L. AUTÓMATAS FINITOS EXPRESIONES REGULARES (ER): Composición de Derivadas de una ER: Se puede componer derivadas de la siguiente forma: Dxy(E) = Dy(Dx(E)) En el ejemplo anterior tendríamos: Dab(E) = Db(Da(E)) = Db(E) = (a+b)*.b Dba(E) = Da(Db(E)) = Da((a+b)*.b) = Da((a+b)*).b+f((a+b)*).Da(b) λΦ = Da(a+b).(a+b)*.b+λ.Φ = (a+b)*.b ING. JORGE BUABUD
  • 32. U.T.N. – F.R.T. LENGUAJES REGULARES Y S. y S. de los L. AUTÓMATAS FINITOS EXPRESIONES REGULARES (ER): Obtención de la GR que genera el lenguaje de una ER: Dada una ER E0 y el conjunto D de todas las ER Ei distintas que se obtienen por derivación compuesta con respecto a todos los símbolos x de Σ, el alfabeto base de E0 ; los componentes de la gramática G que genera el lenguaje definido por E0 son: ΣN = {E0} ∪ D , ΣT = Σ , S = E0 Si Dx(E1)=E2 , E2≠ λ , E2≠Φ , crear la regla E1 → x E2 λ∈D Si λ∈ x(E1) , crear una regla E1 → x P= Si λ∈E0 , crear una regla E0 → λ λ∈ Φ Si Dx(E1)=Φ , no crear ninguna regla ING. JORGE BUABUD
  • 33. U.T.N. – F.R.T. LENGUAJES REGULARES Y S. y S. de los L. AUTÓMATAS FINITOS EXPRESIONES REGULARES (ER): Ejemplo de obtención de una GR a partir de una ER: Partamos de la ER del ejemplo anterior: E0 = a*.b.(a+b)*.b Da(E0) = E0 Db(E0) = (a+b)*.b = E1 Da(E1) = E1 Db(E1) = Db((a+b)*.b) = Db((a+b)*).b+f((a+b)*).Db(b) λλ λ = Db(a+b).(a+b)*.b+λ.λ = (a+b)*.b+λ = E2 λ Φ Da(E2) = Da(E1)+Da(λ) = E1+Φ = E1 λ Φ Db(E2) = Db(E1)+Db(λ) = E2+Φ = E2 ING. JORGE BUABUD
  • 34. U.T.N. – F.R.T. LENGUAJES REGULARES Y S. y S. de los L. AUTÓMATAS FINITOS EXPRESIONES REGULARES (ER): De tal manera que: ΣN = {E0 , E1 , E2} ΣT = {a, b} S = E0 E0 → aE0 | bE1 E0 → aE0 | bE1 P= E1 → aE1 | bE2 | b ≡ E1 → aE1 | bE1 | b E2 → aE1 | bE2 | b con ΣN = {E0 , E1} ING. JORGE BUABUD