Lfya 2

223 views
197 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
223
On SlideShare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Lfya 2

  1. 1. LFyA2012 -abc. abdielc@acm.org Lenguajes Formales y Aut´matas o Alfabetos y lenguajes Alfabetos Palabras Lenguajes Operaciones con palabras Operaciones con lenguajes Lenguajes regulares Expresiones regulares Aut´matas finitos o Diagrama de transiciones Uso del diagrama de transiciones Tabla de transici´n de o estados Definici´n formal o Extensi´n de la o funci´n de transici´n o o Estados aceptores Modelo de AFD Orientado a Objetos M´todos de la clase e afd% Ejemplo de un AFD Abdiel E. C´ceres Gonz´lez a a El lenguaje de unUniversidad Ju´rez Aut´noma de Tabasco, DACB (www.ujat.mx) a o Aut´mata o abdielc@acm.org
  2. 2. LFyA2012 -abc. abdielc@acm.org Alfabetos y lenguajes Alfabetos Palabras Lenguajes Operaciones con palabras Operaciones con lenguajes Lenguajes regulares Expresiones regulares Aut´matas finitos o Diagrama de transiciones Uso del diagrama de transicionesAlfabetos, palabras y lenguajes Tabla de transici´n de estados Definici´n formal o o Extensi´n de la o funci´n de transici´n o o Estados aceptores Modelo de AFD Orientado a Objetos M´todos de la clase e afd% Ejemplo de un AFD El lenguaje de un Aut´mata o
  3. 3. LFyA2012Alfabetos, palabras y lenguajes -abc. abdielc@acm.org La comunicaci´n se realiza mediante el uso de un lenguaje com´n para el que o u transmite como para el que recibe el mensaje. En aut´matas tambi´n se usan o e Alfabetos y lenguajes Alfabetos lenguajes, sin embargo se usan un poco m´s formalmente que en el lenguaje a Palabras natural. Lenguajes Operaciones con Empecemos con algunas definiciones que nos permitir´n estar de acuerdo con a palabras los conceptos m´s usados. a Operaciones con lenguajes Definici´n (Alfabeto) o Lenguajes regulares Expresiones regulares Un alfabeto es un conjunto no vac´ y finito de s´ ıo ımbolos. Aut´matas finitos o Generalmente denotaremos un alfabeto por la letra griega Σ. Cada s´ ımbolo Diagrama de transiciones del alfabeto se conoce tambi´n como letra. e Uso del diagrama de transiciones escribir ejemplos de alfabetos y del s´ ımbolo nulo Tabla de transici´n de o estados Definici´n formal o Extensi´n de la o funci´n de transici´n o o Estados aceptores Modelo de AFD Orientado a Objetos M´todos de la clase e afd% Ejemplo de un AFD El lenguaje de un Aut´mata o
  4. 4. LFyA2012En el lenguaje natural, con las letras podemos formar palabras. En loslenguajes formales sucede lo mismo. -abc. abdielc@acm.orgDefinici´n (Palabra) o Alfabetos y lenguajes AlfabetosSi Σ es un alfabeto, diremos que una palabra ω est´ construida con s´ a ımbolos Palabrasde Sigma, denot´ndola como ω ∈ Σ y le´ como “omega es una palabra en a ıda Lenguajes Operaciones consigma”, cuando ω sea una secuencia finita de s´ımbolos en Σ. palabras Operaciones con lenguajes ω = σ0 σ1 . . . σm−1 ; con cada σi ∈ Σ; i = 0, 1, . . . , m − 1 Lenguajes regulares Expresiones regularesLas palabras tienen varios sin´nimos, entre ellos cadena, string, palabra. o Aut´matas finitos oescribir ejemplos de palabras y hablar del espacio en blanco y la palabra vac´ ∅ ıa Diagrama de transiciones Uso del diagrama de transiciones Tabla de transici´n de o estados Definici´n formal o Extensi´n de la o funci´n de transici´n o o Estados aceptores Modelo de AFD Orientado a Objetos M´todos de la clase e afd% Ejemplo de un AFD El lenguaje de un Aut´mata o
  5. 5. LFyA2012escribir ejemplos de palabras y hablar del espacio en blanco y la palabra vac´ ∅ ıa -abc. abdielc@acm.org Alfabetos y lenguajes Alfabetos Palabras Lenguajes Operaciones con palabras Operaciones con lenguajes Lenguajes regulares Expresiones regulares Aut´matas finitos o Diagrama de transiciones Uso del diagrama de transiciones Tabla de transici´n de o estados Definici´n formal o Extensi´n de la o funci´n de transici´n o o Estados aceptores Modelo de AFD Orientado a Objetos M´todos de la clase e afd% Ejemplo de un AFD El lenguaje de un Aut´mata o
  6. 6. LFyA2012Un conjunto muy importante es el siguiente: -abc. abdielc@acm.orgDefinici´n (Σ∗ ) oEl conjunto Σ∗ es el conjunto de todas las palabras en Σ de longitud finita. Alfabetos y lenguajes AlfabetosAs´ Σ es el conjunto generador de Σ∗ . ı, Palabras Lenguajes Operaciones con palabras Operaciones con lenguajes Lenguajes regulares Expresiones regulares Aut´matas finitos o Diagrama de transiciones Uso del diagrama de transiciones Tabla de transici´n de o estados Definici´n formal o Extensi´n de la o funci´n de transici´n o o Estados aceptores Modelo de AFD Orientado a Objetos M´todos de la clase e afd% Ejemplo de un AFD El lenguaje de un Aut´mata o
  7. 7. No todas las palabras de Σ∗ sirven. LFyA2012 -abc. abdielc@acm.orgDefinici´n (Lenguaje) oUn lenguaje L basado en un alfabeto Σ es un subconjunto de Σ∗ , esto es Alfabetos y lenguajes AlfabetosLΣ ⊆ Σ∗ , donde Palabras LΣ = {ω ∈ Σ∗ |P(ω)} Lenguajes Operaciones con palabrasEl predicado P(ω) determina la pertenencia de ω al lenguaje LS igma. En el Operaciones con lenguajeslenguaje espaol, las palabras que pertenecen al lenguaje son aquellas que Lenguajes regularestienen significado en el diccionario. Otras palabras como wipsjwql no tienen Expresiones regularessignificado, por lo que no pertenecen al lenguaje. Aut´matas finitos o Diagrama de transiciones Uso del diagrama de transiciones Tabla de transici´n de o estados Definici´n formal o Extensi´n de la o funci´n de transici´n o o Estados aceptores Modelo de AFD Orientado a Objetos M´todos de la clase e afd% Ejemplo de un AFD El lenguaje de un Aut´mata o
  8. 8. LFyA2012 Si ω es una palabra (en cualquier alfabeto), la longitud de la palabra ω se determina por |ω|, de igual modo que la cardinalidad de un conjunto, pero -abc. abdielc@acm.org cuando el operando es una palabra, la cardinalidad es el n´mero de s´ u ımbolos Alfabetos y lenguajes que tiene la palabra, sin importar si aparece m´s de una vez en la misma a Alfabetos palabra. Palabras Lenguajes Operaciones con As´ si ω1 = 10110 , |ω| = 5. No importa que el s´ ı, ımbolo ’1’ y el s´ ımbolo ’0’ palabras ocurran m´s de una vez. a Operaciones con lenguajes Lenguajes regulares Recursivamente podemos definir la longitud de una palabra como: Expresiones regulares Aut´matas finitos o 0 si ω = ∅ longitud(ω) ← Diagrama de 1 + longitud(cdr(ω)) en otro caso transiciones Uso del diagrama de transiciones Tabla de transici´n de o1 (define LONGITUD estados2 (λ (ω) Definici´n formal o3 (if (empty? ω) Extensi´n de la o4 0 funci´n de transici´n o o5 (+ 1 (LONGITUD (cdr ω)))))) Estados aceptores Modelo de AFD Orientado a Objetos M´todos de la clase e afd% Ejemplo de un AFD El lenguaje de un Aut´mata o
  9. 9. LFyA2012Definir longitud como recursivo-cola -abc. abdielc@acm.org Alfabetos y lenguajes Alfabetos Palabras Lenguajes Operaciones con palabras Operaciones con lenguajes Lenguajes regulares Expresiones regulares Aut´matas finitos o Diagrama de transiciones Uso del diagrama de transiciones Tabla de transici´n de o estados Definici´n formal o Extensi´n de la o funci´n de transici´n o o Estados aceptores Modelo de AFD Orientado a Objetos M´todos de la clase e afd% Ejemplo de un AFD El lenguaje de un Aut´mata o
  10. 10. LFyA2012Un operador b´sico en la manipulaci´n de cadenas (modeladas como listas) es a oel constructor de listas cons. -abc. abdielc@acm.orgDefinici´n (Constructor de listas) o Alfabetos y lenguajes AlfabetosEl operador cons, es una funci´n con encabezado cons : Σ × o Σ∗ → Σ∗ con Palabrasdefinici´n: o Lenguajes Operaciones con palabras σ si w = ∅ Operaciones con cons(σ, ω) ← lenguajes σσ0 σ1 . . . σm−1 en otro caso Lenguajes regulares Expresiones regulares Aut´matas finitos o Diagrama de transiciones Uso del diagrama de transiciones Tabla de transici´n de o estados Definici´n formal o Extensi´n de la o funci´n de transici´n o o Estados aceptores Modelo de AFD Orientado a Objetos M´todos de la clase e afd% Ejemplo de un AFD El lenguaje de un Aut´mata o
  11. 11. LFyA2012A´n hay otros dos constructores de listas (recordemos que por ahora, un usin´nimo de lista es palabra), estos constructores de listas son: o -abc. abdielc@acm.org list Se utiliza con cero o m´s argumentos y crea una lista con los a Alfabetos y lenguajes argumentos que se utilizan en su invocaci´n. o Alfabetos Palabras Lenguajes Se utiliza list cuando se desea crear una lista, los elementos Operaciones con de la lista quedan en el mismo orden que ocuparon en la palabras Operaciones con invocaci´n de la funci´n. Si se invoca sin argumentos el o o lenguajes resultado es la palabra vac´ ıa. Lenguajes regulares Expresiones regulares append Se utiliza con cero o m´s listas, y crea una lista anexando los a Aut´matas finitos o elementos de la segunda lista a los elementos de la primera. Diagrama de Si se utiliza sin listas, el resultado es la lista vac´ ıa. transiciones Uso del diagrama deLas diferencias son sutiles, pero muy utiles si se saben utilizar. Al utilizar list ´ transiciones Tabla de transici´n de ose crea una lista con tantos elementos como argumentos tenga la invocaci´n, o estadospero al utilizar append, se debe asegurar de que todos los elementos son listas, Definici´n formal o Extensi´n de la ode modo que el resultado es una lista con los elementos de cada una de las funci´n de transici´n o o Estados aceptoreslistas. Modelo de AFD Orientado a Objetos M´todos de la clase e afd% Ejemplo de un AFD El lenguaje de un Aut´mata o
  12. 12. LFyA2012Definici´n (Enlistar) o -abc. abdielc@acm.orgLa funci´n de enlistar tiene un encabezado list : Σ∗ → Σ∗ definida del o Alfabetos y lenguajessiguiente modo: Alfabetos Palabras ∅ si ω = ∅ Lenguajes list(ω) ← cons(car(ω), list(cdr(ω))) en otro caso. Operaciones con palabras Operaciones con lenguajes Lenguajes regulares Expresiones regulares Aut´matas finitos o Diagrama de transiciones Uso del diagrama de transiciones Tabla de transici´n de o estados Definici´n formal o Extensi´n de la o funci´n de transici´n o o Estados aceptores Modelo de AFD Orientado a Objetos M´todos de la clase e afd% Ejemplo de un AFD El lenguaje de un Aut´mata o
  13. 13. LFyA2012Para modelar la funci´n append, necesitaremos primero una funci´n que anexe o ouna letra a una palabra. Pero que la anexe por la derecha, del mismo modo -abc. abdielc@acm.orgque se escribe, de izquierda a derecha. Alfabetos y lenguajesDefinici´n (Anexa1) o Alfabetos PalabrasLa funci´n anexa1 tiene un encabezado anexa1 : o Σ∗ ×Σ→ Σ∗ y definida Lenguajes Operaciones concomo: palabras Operaciones con lenguajes anexa1(ω, σ) = append(ω, list(σ)) Lenguajes regulares Expresiones regularesLa funci´n anexar1 tiene un efecto similar al cons, pero en lugar de agregar o Aut´matas finitos opor la izquierda, agrega por la derecha. Diagrama de transiciones Uso del diagrama deLo siguiente es utilizar anexar1 para anexar todas las letras de una palabra a transiciones Tabla de transici´n de ootra palabra, con el fin de tener una funci´n que anexe palabras. o estados Definici´n formal oDefinici´n (Anexar) o Extensi´n de la o o funci´n de transici´n oEl anexado es una funci´n con encabezado append : Σ∗ × Σ∗ → Σ∗ y o Estados aceptores Modelo de AFDdefinida como sigue: Orientado a Objetos M´todos de la clase e afd% ω1 si ω2 = ∅ Ejemplo de un AFDappend(ω1 , ω2 ) ← append(anexa1(ω1 , car(ω2 )), cdr(ω1 )) en otro caso. El lenguaje de un Aut´mata oEsta operaci´n de anexar, se conoce tambi´n como concatenar. Por o ecomodidad, en la lectura de los s´ ımbolos matem´ticos, frecuentemente apodemos encontrar la concatenaci´n de las palabras ω1 y ω2 como ω1 ω2 . oEscribir sobre la longitud de la concatenaci´n. o
  14. 14. LFyA2012Definici´n (Potencia) o -abc. abdielc@acm.orgLa potencia n de una palabra ω es una funci´n con encabezado opotencia : Σ∗ × Z≥0 → Σ∗ definida como: Alfabetos y lenguajes Alfabetos Palabras ∅ si n = 0, Lenguajes potencia(ω, n) ← Operaciones con append(ω, potencia(ω, n − 1)) en otro caso. palabras Operaciones con lenguajes∅ es el s´ ımbolo que utilizaremos para denotar la identidad multiplicativa en las Lenguajes regularespalabras, es la palabra que no tiene s´ ımbolos. Expresiones regulares Aut´matas finitos o Diagrama de transiciones Uso del diagrama de transiciones Tabla de transici´n de o estados Definici´n formal o Extensi´n de la o funci´n de transici´n o o Estados aceptores Modelo de AFD Orientado a Objetos M´todos de la clase e afd% Ejemplo de un AFD El lenguaje de un Aut´mata o
  15. 15. LFyA2012Definici´n o -abc. abdielc@acm.orgPalabras iguales La igualdad entre palabras es una funci´n con encabezado o=: Σ∗ × Σ∗ → B, donde B = {#t, #f} las constantes booleanas y cuya Alfabetos y lenguajesdefinici´n es o Alfabetos Palabras  Lenguajes  #t  si ω1 = ∅ ∧ ω2 = ∅; Operaciones con palabras #f si ω1 = ∅ ⊕ ω2 = ∅;  =(ω1 , ω2 ) ← Operaciones con  #f  si car(ω1 ) = car(ω2 ); lenguajes =(cdr(ω1 ), cdr(ω2 )) En otro caso.  Lenguajes regulares Expresiones regulares Aut´matas finitos o Diagrama de transiciones Uso del diagrama de transiciones Tabla de transici´n de o estados Definici´n formal o Extensi´n de la o funci´n de transici´n o o Estados aceptores Modelo de AFD Orientado a Objetos M´todos de la clase e afd% Ejemplo de un AFD El lenguaje de un Aut´mata o
  16. 16. LFyA2012Definici´n (prefijo) o -abc. abdielc@acm.orgSi α, ω ∈ Σ∗ , decimos que α es un prefijo de ω, si existe una palabra β ∈ Σ∗ Alfabetos y lenguajestal que αβ = ω Alfabetos PalabrasDefinici´n (sufijo) o Lenguajes Operaciones conSi β, ω ∈ Σ∗ , decimos que β es un sufijo de ω, si existe una palabra α ∈ Σ∗ palabras Operaciones contal que αβ = ω lenguajesEscribir definiciones de es-prefijo?, es-sufijo?, prefijo, sufijo Lenguajes regulares Expresiones regularesComo ∅ es la palabra vac´ es posible que sea el prefijo (sufijo) de cualquier ıa, Aut´matas finitos opalabra, as´ cualquier palabra es prefijo (sufijo) de ella misma. Las palabras ı Diagrama deprefijos (sufijos) diferentes a ellas mismas se llaman prefijo (sufijo) propio. transiciones Uso del diagrama de transiciones Tabla de transici´n de o estados Definici´n formal o Extensi´n de la o funci´n de transici´n o o Estados aceptores Modelo de AFD Orientado a Objetos M´todos de la clase e afd% Ejemplo de un AFD El lenguaje de un Aut´mata o
  17. 17. LFyA2012Definici´n (Subpalabra) o -abc. abdielc@acm.orgUna palabra γ ∈ Σ∗ es una subpalabra de otra palabra ω ∈ Σ∗ si existe unprefijo α ∈ Σ∗ y un sufijo β ∈ Σ∗ tales que ω = αγβ. Alfabetos y lenguajes AlfabetosDefinir es-subpalabra? Palabras Lenguajes Operaciones con palabras Operaciones con lenguajes Lenguajes regulares Expresiones regulares Aut´matas finitos o Diagrama de transiciones Uso del diagrama de transiciones Tabla de transici´n de o estados Definici´n formal o Extensi´n de la o funci´n de transici´n o o Estados aceptores Modelo de AFD Orientado a Objetos M´todos de la clase e afd% Ejemplo de un AFD El lenguaje de un Aut´mata o
  18. 18. LFyA2012Definir subpalabra: recibe dos palabras y devuelve a.w1.b, donde a es prefijo y b es sufijo -abc. abdielc@acm.org Alfabetos y lenguajes Alfabetos Palabras Lenguajes Operaciones con palabras Operaciones con lenguajes Lenguajes regulares Expresiones regulares Aut´matas finitos o Diagrama de transiciones Uso del diagrama de transiciones Tabla de transici´n de o estados Definici´n formal o Extensi´n de la o funci´n de transici´n o o Estados aceptores Modelo de AFD Orientado a Objetos M´todos de la clase e afd% Ejemplo de un AFD El lenguaje de un Aut´mata o
  19. 19. LFyA2012Definici´n (Palabra inversa) o -abc. abdielc@acm.orgEl inverso de una palabra es una funci´n con encabezado inversa : Σ∗ → Σ∗ y o Alfabetos y lenguajesdefinida como Alfabetos Palabras ∅ Si ω = ∅; inversa(ω) ← Lenguajes append(inversa(cdr(ω)), list(car(ω))) En otro caso. Operaciones con palabras Operaciones con lenguajes Lenguajes regulares Expresiones regulares Aut´matas finitos o Diagrama de transiciones Uso del diagrama de transiciones Tabla de transici´n de o estados Definici´n formal o Extensi´n de la o funci´n de transici´n o o Estados aceptores Modelo de AFD Orientado a Objetos M´todos de la clase e afd% Ejemplo de un AFD El lenguaje de un Aut´mata o
  20. 20. LFyA2012Como los lenguajes son subconjuntos de los conjuntos de todas las palabras, ylo importante aqu´ es que sean subconjuntos, entonces todas las operaciones ı -abc. abdielc@acm.orgentre conjuntos tienen validez tambi´n en los lenguajes. En particular las e Alfabetos y lenguajesoperaciones de concatenaci´n (append), la potencia y el inverso. o Alfabetos PalabrasDefinici´n (Anexar lenguajes) o Lenguajes Operaciones conSi AΣ1 y BΣ2 son lenguajes, cada uno en su propio alfabeto, el anexar el palabraslenguaje BΣ2 al lenguaje AΣ1 es una funci´n con encabezado o Operaciones con lenguajesappend∗ : P(Σ∗ 1 ) × P(Σ∗ 2 ) → P(Σ∗ 3 ), donde Σ∗ 3 = Σ∗ 1 ∪ Σ∗ 2 , y la funci´n o Lenguajes regularesdefinida como Expresiones regulares ∗ Aut´matas finitos o append (AΣ1 , BΣ2 ) ← ∀ x ∈ AΣ1 : ∀ y ∈ BΣ2 : append(x, y ) Diagrama de transiciones Uso del diagrama de transicionesEjemplos con {libr , flor } y {ero, eria} Tabla de transici´n de o estados Definici´n formal o Extensi´n de la o funci´n de transici´n o o Estados aceptores Modelo de AFD Orientado a Objetos M´todos de la clase e afd% Ejemplo de un AFD El lenguaje de un Aut´mata o
  21. 21. LFyA2012Definici´n (Potencia de un lenguaje) o -abc. abdielc@acm.orgSi AΣ∗ es un lenguaje, la potencia del lenguaje es una funci´n con oencabezado potencia∗ : P(Σ∗ ) × Z≥0 → Σ∗ y definida como: Alfabetos y lenguajes Alfabetos Palabras {∅} si AΣ∗ = ∅; Lenguajespotencia∗ (AΣ∗ , n) ← append∗ (AΣ∗ , potencia∗ (AΣ∗ , n − 1)) en otro caso. Operaciones con palabras Operaciones con lenguajes Lenguajes regulares Expresiones regulares Aut´matas finitos o Diagrama de transiciones Uso del diagrama de transiciones Tabla de transici´n de o estados Definici´n formal o Extensi´n de la o funci´n de transici´n o o Estados aceptores Modelo de AFD Orientado a Objetos M´todos de la clase e afd% Ejemplo de un AFD El lenguaje de un Aut´mata o
  22. 22. LFyA2012Definici´n (Sublenguaje) o -abc. abdielc@acm.orgSi LΣ∗ es un lenguaje en alg´n alfabeto Σ, LΣ∗ es un sublenguaje de LΣ∗ , y u Alfabetos y lenguajeslo denotamos por LΣ∗ ⊆ LΣ∗ si ∀ ω ∈ LΣ∗ : ω ∈ LΣ∗ Alfabetos Palabras Lenguajes Operaciones con palabras Operaciones con lenguajes Lenguajes regulares Expresiones regulares Aut´matas finitos o Diagrama de transiciones Uso del diagrama de transiciones Tabla de transici´n de o estados Definici´n formal o Extensi´n de la o funci´n de transici´n o o Estados aceptores Modelo de AFD Orientado a Objetos M´todos de la clase e afd% Ejemplo de un AFD El lenguaje de un Aut´mata o
  23. 23. LFyA2012Teorema (Igualdad de lenguajes) -abc. abdielc@acm.orgSean AΣ∗ y BΣ∗ dos lenguajes. AΣ∗ = BΣ∗ ↔ AΣ∗ ⊆ BΣ∗ ∧ BΣ∗ ⊆ AΣ∗ Alfabetos y lenguajes Alfabetos Palabras Lenguajes Operaciones con palabras Operaciones con lenguajes Lenguajes regulares Expresiones regulares Aut´matas finitos o Diagrama de transiciones Uso del diagrama de transiciones Tabla de transici´n de o estados Definici´n formal o Extensi´n de la o funci´n de transici´n o o Estados aceptores Modelo de AFD Orientado a Objetos M´todos de la clase e afd% Ejemplo de un AFD El lenguaje de un Aut´mata o
  24. 24. LFyA2012Como los lenguajes son conjuntos de palabras (aquellas que son permitidas, oque tienen alg´n significado), podemos utilizar las operaciones fundamentales u -abc. abdielc@acm.orgde conjuntos, como la uni´n y la intersecci´n. o o Alfabetos y lenguajesDefinici´n (Uni´n de lenguajes) o o Alfabetos PalabrasSean AΣ∗ 1 y BΣ∗ 2 dos lenguajes. La uni´n de los lenguajes es un nuevo o Lenguajes Operaciones conlenguaje denotado por (AΣ∗ 1 ∪ BΣ∗ 2 )Σ∗ 1 ∪Σ∗ 2 , definido como palabras Operaciones con lenguajes (AΣ∗ 1 ∪ BΣ∗ 2 )Σ∗ 1 ∪Σ∗ 2 ← {ω|ω ∈ AΣ∗ 1 ∨ ω ∈ ∩BΣ∗ 2 } Lenguajes regulares Expresiones regulares Aut´matas finitos o Diagrama de transiciones Uso del diagrama de transiciones Tabla de transici´n de o estados Definici´n formal o Extensi´n de la o funci´n de transici´n o o Estados aceptores Modelo de AFD Orientado a Objetos M´todos de la clase e afd% Ejemplo de un AFD El lenguaje de un Aut´mata o
  25. 25. LFyA2012Definici´n (Intersecci´n de lenguajes) o o -abc. abdielc@acm.orgSean AΣ∗ 1 y BΣ∗ 2 dos lenguajes. La intersecci´n de los lenguajes es un nuevo o Alfabetos y lenguajeslenguaje denotado por (AΣ∗ 1 ∩ BΣ∗ 2 )Σ∗ 1 ∩Σ∗ 2 , definido como Alfabetos Palabras (A Σ∗ 1 ∩B Σ∗ 2 ) Σ∗ 1 ∩Σ∗ 2 ← {ω|ω ∈ A Σ∗ 1 ∧ ω ∈ ∩B Σ∗ 2 } Lenguajes Operaciones con palabras Operaciones con lenguajes Lenguajes regulares Expresiones regulares Aut´matas finitos o Diagrama de transiciones Uso del diagrama de transiciones Tabla de transici´n de o estados Definici´n formal o Extensi´n de la o funci´n de transici´n o o Estados aceptores Modelo de AFD Orientado a Objetos M´todos de la clase e afd% Ejemplo de un AFD El lenguaje de un Aut´mata o
  26. 26. LFyA2012 -abc. abdielc@acm.org Alfabetos y lenguajes Alfabetos Palabras Lenguajes Operaciones con palabras Operaciones con lenguajes Lenguajes regulares Expresiones regulares Aut´matas finitos o Diagrama de transiciones Uso del diagrama de transicionesLenguajes regulares Tabla de transici´n de estados Definici´n formal o o Extensi´n de la o funci´n de transici´n o o Estados aceptores Modelo de AFD Orientado a Objetos M´todos de la clase e afd% Ejemplo de un AFD El lenguaje de un Aut´mata o
  27. 27. LFyA2012Definici´n (Lenguaje Regular) o -abc. abdielc@acm.orgSe define recursivamente como: Alfabetos y lenguajes 1. ∅ es un lenguaje regular ∅ representa el lenguaje vac´ un conjunto de palabras. ıo, Alfabetos Palabras 2. {∅} es un lenguaje regular ∅ es la palabra vac´ ıa Lenguajes Operaciones con 3. ∀ a ∈ Σ, {a} es un lenguaje regular palabras Operaciones con 4. Si A y B son lenguajes regulares, A ∪ B, A · B, y A∗ , son lenguajes lenguajes regulares. Lenguajes regulares Expresiones regulares 5. Ning´n otro lenguajes sobre Σ es regular. u Aut´matas finitos o Diagrama deAs´ el conjunto de los lenguajes regulares sobre Σ est´ formado por: ı, a transiciones Uso del diagrama de El lenguaje vac´ ∅. ıo transiciones Tabla de transici´n de o Los lenguajes unitarios, inclu´ {∅}. ıdo estados Definici´n formal o Todos los lenguajes que se puedan obtener usando la concatenaci´n o Extensi´n de la o funci´n de transici´n o o (anexado), uni´n y cerradura de estrella de lenguajes. o Estados aceptores Modelo de AFD Orientado a Objetos M´todos de la clase e afd% Ejemplo de un AFD El lenguaje de un Aut´mata o

×