SlideShare ist ein Scribd-Unternehmen logo
1 von 17
TEORÍA DE LENGUAJES FORMALES Y AUTÓMATAS
ELABORADO POR: MANUEL GUEVARA
ÍNDICE
• 1. Introducción
• 2. Repaso general de conceptos
• 3. Definición de lenguaje
• 4. Tipos de lenguajes
• 5. Herramientas computacionales ligadas con el lenguaje
• 6. Definición de autómatas
• 7. Análisis AFD
• 8. Análisis AFND
• 9. Regex
• 10. Conclusión
• 11. Bibliografía
INTRODUCCIÓN
Los lenguajes formales y autómatas ,están
interpretados en lenguajes básicos pero con
operadores lógicos para la interactividad de los
conjuntos.
• Alfabeto: es un conjunto de símbolos y
normalmente se denota con la letra Σ. Ejemplos
• Σ = {a,b,c,…z} Σ = {1,2,3,…9} Σ = {0,1} Σ = {a,b}
• Símbolo: es un signo que representa algo
abstracto. En este material, símbolo se referirá a un
caracter alfanumérico.
• Ejemplos : a, b, 1, 0, x, y, z, 9,
* Cadenas: es un conjunto de símbolos de algún alfabeto Σ concatenados
entre sí, es decir uno enseguida del otro.
Ejemplos:
Para el alfabeto Σ = {a,b,c,…z} algunas cadenas son: ab, z, cc, abc, abab
Para el alfabeto Σ = {0,1} algunas cadenas son: 0, 1, 01, 000, 0101
* Longitud de una cadena: es el número de símbolos que componen la
cadena.
Ejemplos:
"abcbd" tiene longitud 4. Así |abcbd| = 5.
“Manuel” tiene longitud 6. Así |Manuel|=6
* Cadena vacía: ε, es la cadena que no
contiene ningún símbolo.
Ejemplos representativos en los lenguajes de
programación:
C, C++: (“”){'0’}
C++: std::string()
* Concatenación de cadenas: es "pegar o unir"
las dos cadenas para formar una nueva o una
sola. Es decir, La concatenación de w con z es la
cadena que se obtiene al añadir a la cadena w la
cadena z. Se denota como wz o w · z.
Ejemplo:
*Universo del discurso: Es un conjunto de todas las cadenas
donde podemos formar con símbolos del alfabeto V le
denominamos universo del discurso de V y la representamos
de la siguiente manera W (V).
Ejemplos:
Un alfabeto con una sola letra V = { a }, podemos decir que el
universo del discurso es: W(V) = { λ, a, aa, aaa, aaaa,....} y asi
contiene una cadenas infinitas.
* Lenguaje: es un conjunto de cadenas o palabras
definido en un alfabeto Σ.
Ejemplos
Si Σ = {0,1} podríamos definir los lenguajes “conjunto de
cadenas en Σ que terminan en 0” algunos
de las palabras del lenguajes serían:
0, 10,00,010,100, 110…
• Tipos de lenguajes: Natural, Artificial y Regulares.
Lenguaje Natural: Este tipo de lenguaje es el que nos permite el designar
las cosas actuales y razonar a cerca de ellas, fue desarrollado y organizado
a partir de la experiencia humana y puede ser utilizado para analizar
situaciones altamente complejas y razonar muy sutilmente.
Ejemplo: inglés, francés, español, etc.
Lenguaje Artificial: Son lenguajes de tamaño típicamente muy limitado
que emergen ya sea en simulaciones computacionales entre agentes
artificiales, interacciones entre robots o en experimentos psicológicos
controlados con seres humanos.
Un claro ejemplo del uso de estos lenguajes es la matemática, que
permite formalizar con precisión teorías físicas y los lenguajes de
programación para transmitir órdenes a las computadoras para que
ejecuten ciertas tareas.
Lenguaje Regular: es un tipo de lenguaje formal que satisface las
siguientes propiedades: Los lenguajes más sencillos que se considerarán
son los lenguajes regulares, es decir, los que se pueden generar a partir de
los lenguajes básicos, con la aplicación de las operaciones de unión,
concatenación y * de Kleene un número finito de veces.
*Traductor: Es un programa que tiene como entrada un texto escrito en
un lenguaje (lenguaje fuente) y como salida produce un texto escrito en
un lenguaje (lenguaje objeto) que preserva el significado de origen.
Ejemplos: ensambladores y los compiladores.
Ensambladores: Es el programa que realiza la traducción de un programa
escrito en ensamblador a lenguaje máquina.
Compiladores: es un programa informático que traduce un programa
escrito en lenguaje de programación y lo pasa a lenguaje de
programación, podemos decir que este programa nos permite traducir un
código fuente de un programa en lenguaje de nivel alto, y lo pasmos a
otro nivel inferior (lenguaje máquina).
* Intérpretes: Es un programa o software capaz de analizar y ejecutar
programas escritos en lenguajes de alto nivel. Los intérpretes
funcionan de manera distinta a los compiladores, ya que van
traduciendo y ejecutando el código hecho por el programador o
desarrollador línea a línea.
Ejemplos: BASIC, QBASIC, QUICKBASIC, VISUALBASIC, SMALLTALK,
JAVA.
Es una máquina matemática M formada por 5 elementos M
= (Σ, Q, s, F, δ) donde Σ es un alfabeto de entrada, Q es un
conjunto finito de estados, s es el estado inicial, F es un
conjunto de estados finales o de aceptación y δ (delta) es
una relación de transición.
Autómata Finito Determinista (AFD) es un autómata finito
en donde δ (delta) es una función de transición, es decir,
que para cada par (estado actual y símbolo de entrada) le
corresponde un único estado siguiente.
Autómata Finito No Determinista (AFND) es un autómata
finito en donde δ no es necesariamente una función de
transición, es decir, que para cada par (estado actual y
símbolo de entrada) le corresponde cero, uno, dos o más
estados siguientes, Normalmente la relación de transición
para un AFND se denota con ∆.
Regex: Es una secuencia de caracteres que conforma un
patrón de búsqueda. Se utilizan principalmente para la
búsqueda de patrones de cadenas de caracteres u
operaciones de sustituciones.
Por ejemplo, pudieras usar expresiones regulares para
validar datos en un formulario: nombres de usuario,
contraseñas, direcciones de correo, códigos postales,
números telefónicos, etc.
Ejemplos:
Un claro ejemplo del uso de regex en la tecnología de la
información es la función de buscar y reemplazar de los
editores de texto, la cual fue implementada por primera vez
en los por Ken Thompson.
CONCLUSIÓN
Hay todo tipos de lenguajes , y cada tipo cumple
con su labor , de entender, traducir y explicar,
además todos los lenguajes interactúan entre si,
para encontrar la singularidad o patrón de
origen.
BIBLIOGRAFÍA
• https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=&cad=rja&uact=8&ved=2ahUKE
wje4uGIxtfpAhUEhuAKHeXQC3MQFjAAegQIBRAB&url=https%3A%2F%2Fcore.ac.uk%2Fdownload%2Fp
df%2F154797605.pdf&usg=AOvVaw0hdWJxaPf6loN9p3mvQk8s

Weitere ähnliche Inhalte

Was ist angesagt?

Lenguajes autómatas.
Lenguajes autómatas.Lenguajes autómatas.
Lenguajes autómatas.LuiS YmAY
 
Gramática Libre de Contexto
Gramática Libre de ContextoGramática Libre de Contexto
Gramática Libre de ContextoBrayhan Acosta
 
Gramática de libre contexto
Gramática de libre contextoGramática de libre contexto
Gramática de libre contextoJaVito GagrLu
 
LENGUAJES LIBRES DE CONTEXTO Y GRAMATICA LIBRES DE CONTEXTO
LENGUAJES LIBRES DE CONTEXTO Y GRAMATICA LIBRES DE CONTEXTO LENGUAJES LIBRES DE CONTEXTO Y GRAMATICA LIBRES DE CONTEXTO
LENGUAJES LIBRES DE CONTEXTO Y GRAMATICA LIBRES DE CONTEXTO Guillermo Iván Prisco Pérez
 
Clase analisis lexico
Clase analisis lexicoClase analisis lexico
Clase analisis lexicoInfomania pro
 
Portafolio unidad 2 [Lenguajes y autómatas]- Expresiones y lenguajes regulares
Portafolio unidad 2 [Lenguajes y autómatas]- Expresiones y lenguajes regularesPortafolio unidad 2 [Lenguajes y autómatas]- Expresiones y lenguajes regulares
Portafolio unidad 2 [Lenguajes y autómatas]- Expresiones y lenguajes regularesHumano Terricola
 
ESPRESIONES REGULARES
ESPRESIONES REGULARESESPRESIONES REGULARES
ESPRESIONES REGULARESAnel Sosa
 
Clase6 conceptos del analisis lexico
Clase6 conceptos del analisis lexicoClase6 conceptos del analisis lexico
Clase6 conceptos del analisis lexicoInfomania pro
 

Was ist angesagt? (20)

Unidad 7 lenguajes gramaticas y automatas
Unidad 7 lenguajes gramaticas y automatasUnidad 7 lenguajes gramaticas y automatas
Unidad 7 lenguajes gramaticas y automatas
 
Lenguajes autómatas.
Lenguajes autómatas.Lenguajes autómatas.
Lenguajes autómatas.
 
Lenguajes regulares
Lenguajes regularesLenguajes regulares
Lenguajes regulares
 
Tipos Primitivos y Elementos Léxicos de Java
Tipos Primitivos y Elementos Léxicos de JavaTipos Primitivos y Elementos Léxicos de Java
Tipos Primitivos y Elementos Léxicos de Java
 
Gramática Libre de Contexto
Gramática Libre de ContextoGramática Libre de Contexto
Gramática Libre de Contexto
 
Gramática de libre contexto
Gramática de libre contextoGramática de libre contexto
Gramática de libre contexto
 
LENGUAJES LIBRES DE CONTEXTO Y GRAMATICA LIBRES DE CONTEXTO
LENGUAJES LIBRES DE CONTEXTO Y GRAMATICA LIBRES DE CONTEXTO LENGUAJES LIBRES DE CONTEXTO Y GRAMATICA LIBRES DE CONTEXTO
LENGUAJES LIBRES DE CONTEXTO Y GRAMATICA LIBRES DE CONTEXTO
 
Clase analisis lexico
Clase analisis lexicoClase analisis lexico
Clase analisis lexico
 
Claselexico
ClaselexicoClaselexico
Claselexico
 
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
 
Lenguajes formales
Lenguajes formalesLenguajes formales
Lenguajes formales
 
A3 identificador palabraclavetipos
A3 identificador palabraclavetiposA3 identificador palabraclavetipos
A3 identificador palabraclavetipos
 
GRAMATICAS AMBIGUAS
GRAMATICAS AMBIGUASGRAMATICAS AMBIGUAS
GRAMATICAS AMBIGUAS
 
Tipos de lenguaje formal según Chomsky
Tipos de lenguaje formal según ChomskyTipos de lenguaje formal según Chomsky
Tipos de lenguaje formal según Chomsky
 
Gramaticas y lic
Gramaticas y licGramaticas y lic
Gramaticas y lic
 
ESPRESIONES REGULARES
ESPRESIONES REGULARESESPRESIONES REGULARES
ESPRESIONES REGULARES
 
Introducción a la programación
Introducción a la programaciónIntroducción a la programación
Introducción a la programación
 
Gramáticas formales1
Gramáticas formales1Gramáticas formales1
Gramáticas formales1
 
Gramáticas formales
Gramáticas formales Gramáticas formales
Gramáticas formales
 
Clase6 conceptos del analisis lexico
Clase6 conceptos del analisis lexicoClase6 conceptos del analisis lexico
Clase6 conceptos del analisis lexico
 

Ähnlich wie Teoría Lenguajes Formales Autómatas

Ähnlich wie Teoría Lenguajes Formales Autómatas (20)

Lenguajes formales y teoría de autómatas I.pdf
Lenguajes formales y teoría de autómatas I.pdfLenguajes formales y teoría de autómatas I.pdf
Lenguajes formales y teoría de autómatas I.pdf
 
T1. Introducción a la Teoría de Lenguajes Formales.pptx
T1. Introducción a la Teoría de Lenguajes Formales.pptxT1. Introducción a la Teoría de Lenguajes Formales.pptx
T1. Introducción a la Teoría de Lenguajes Formales.pptx
 
Compiladores, Analisis Lexico Conceptos
Compiladores, Analisis Lexico ConceptosCompiladores, Analisis Lexico Conceptos
Compiladores, Analisis Lexico Conceptos
 
Gramaticas
GramaticasGramaticas
Gramaticas
 
Trabajo maxi unidad i
Trabajo maxi unidad iTrabajo maxi unidad i
Trabajo maxi unidad i
 
Unidad 6 introduccion a los lenguajes formales
Unidad 6 introduccion a los lenguajes formalesUnidad 6 introduccion a los lenguajes formales
Unidad 6 introduccion a los lenguajes formales
 
Lenguajes de programación
Lenguajes de programaciónLenguajes de programación
Lenguajes de programación
 
Investigación Expositiva
Investigación ExpositivaInvestigación Expositiva
Investigación Expositiva
 
Lenguaje c
Lenguaje cLenguaje c
Lenguaje c
 
1expo yeisland12
1expo yeisland121expo yeisland12
1expo yeisland12
 
Automatas
AutomatasAutomatas
Automatas
 
Gramática de contexto libre abel rodriguez (08 1297)
Gramática de contexto libre abel rodriguez (08 1297)Gramática de contexto libre abel rodriguez (08 1297)
Gramática de contexto libre abel rodriguez (08 1297)
 
Análisis lexicográfico
Análisis lexicográficoAnálisis lexicográfico
Análisis lexicográfico
 
Lenguajes regulares
Lenguajes regularesLenguajes regulares
Lenguajes regulares
 
Gramaticas
GramaticasGramaticas
Gramaticas
 
Gramaticas
GramaticasGramaticas
Gramaticas
 
Lema de bombeo
Lema de bombeoLema de bombeo
Lema de bombeo
 
Compilador2
Compilador2Compilador2
Compilador2
 
Gramaticas y lic
Gramaticas y licGramaticas y lic
Gramaticas y lic
 
Sesión 4 y 5 LFP.pptx
Sesión 4 y 5 LFP.pptxSesión 4 y 5 LFP.pptx
Sesión 4 y 5 LFP.pptx
 

Teoría Lenguajes Formales Autómatas

  • 1. TEORÍA DE LENGUAJES FORMALES Y AUTÓMATAS ELABORADO POR: MANUEL GUEVARA
  • 2. ÍNDICE • 1. Introducción • 2. Repaso general de conceptos • 3. Definición de lenguaje • 4. Tipos de lenguajes • 5. Herramientas computacionales ligadas con el lenguaje • 6. Definición de autómatas • 7. Análisis AFD • 8. Análisis AFND • 9. Regex • 10. Conclusión • 11. Bibliografía
  • 3. INTRODUCCIÓN Los lenguajes formales y autómatas ,están interpretados en lenguajes básicos pero con operadores lógicos para la interactividad de los conjuntos.
  • 4. • Alfabeto: es un conjunto de símbolos y normalmente se denota con la letra Σ. Ejemplos • Σ = {a,b,c,…z} Σ = {1,2,3,…9} Σ = {0,1} Σ = {a,b}
  • 5. • Símbolo: es un signo que representa algo abstracto. En este material, símbolo se referirá a un caracter alfanumérico. • Ejemplos : a, b, 1, 0, x, y, z, 9,
  • 6. * Cadenas: es un conjunto de símbolos de algún alfabeto Σ concatenados entre sí, es decir uno enseguida del otro. Ejemplos: Para el alfabeto Σ = {a,b,c,…z} algunas cadenas son: ab, z, cc, abc, abab Para el alfabeto Σ = {0,1} algunas cadenas son: 0, 1, 01, 000, 0101 * Longitud de una cadena: es el número de símbolos que componen la cadena. Ejemplos: "abcbd" tiene longitud 4. Así |abcbd| = 5. “Manuel” tiene longitud 6. Así |Manuel|=6
  • 7. * Cadena vacía: ε, es la cadena que no contiene ningún símbolo. Ejemplos representativos en los lenguajes de programación: C, C++: (“”){'0’} C++: std::string() * Concatenación de cadenas: es "pegar o unir" las dos cadenas para formar una nueva o una sola. Es decir, La concatenación de w con z es la cadena que se obtiene al añadir a la cadena w la cadena z. Se denota como wz o w · z. Ejemplo:
  • 8. *Universo del discurso: Es un conjunto de todas las cadenas donde podemos formar con símbolos del alfabeto V le denominamos universo del discurso de V y la representamos de la siguiente manera W (V). Ejemplos: Un alfabeto con una sola letra V = { a }, podemos decir que el universo del discurso es: W(V) = { λ, a, aa, aaa, aaaa,....} y asi contiene una cadenas infinitas.
  • 9. * Lenguaje: es un conjunto de cadenas o palabras definido en un alfabeto Σ. Ejemplos Si Σ = {0,1} podríamos definir los lenguajes “conjunto de cadenas en Σ que terminan en 0” algunos de las palabras del lenguajes serían: 0, 10,00,010,100, 110…
  • 10. • Tipos de lenguajes: Natural, Artificial y Regulares. Lenguaje Natural: Este tipo de lenguaje es el que nos permite el designar las cosas actuales y razonar a cerca de ellas, fue desarrollado y organizado a partir de la experiencia humana y puede ser utilizado para analizar situaciones altamente complejas y razonar muy sutilmente. Ejemplo: inglés, francés, español, etc. Lenguaje Artificial: Son lenguajes de tamaño típicamente muy limitado que emergen ya sea en simulaciones computacionales entre agentes artificiales, interacciones entre robots o en experimentos psicológicos controlados con seres humanos. Un claro ejemplo del uso de estos lenguajes es la matemática, que permite formalizar con precisión teorías físicas y los lenguajes de programación para transmitir órdenes a las computadoras para que ejecuten ciertas tareas. Lenguaje Regular: es un tipo de lenguaje formal que satisface las siguientes propiedades: Los lenguajes más sencillos que se considerarán son los lenguajes regulares, es decir, los que se pueden generar a partir de los lenguajes básicos, con la aplicación de las operaciones de unión, concatenación y * de Kleene un número finito de veces.
  • 11. *Traductor: Es un programa que tiene como entrada un texto escrito en un lenguaje (lenguaje fuente) y como salida produce un texto escrito en un lenguaje (lenguaje objeto) que preserva el significado de origen. Ejemplos: ensambladores y los compiladores. Ensambladores: Es el programa que realiza la traducción de un programa escrito en ensamblador a lenguaje máquina. Compiladores: es un programa informático que traduce un programa escrito en lenguaje de programación y lo pasa a lenguaje de programación, podemos decir que este programa nos permite traducir un código fuente de un programa en lenguaje de nivel alto, y lo pasmos a otro nivel inferior (lenguaje máquina).
  • 12. * Intérpretes: Es un programa o software capaz de analizar y ejecutar programas escritos en lenguajes de alto nivel. Los intérpretes funcionan de manera distinta a los compiladores, ya que van traduciendo y ejecutando el código hecho por el programador o desarrollador línea a línea. Ejemplos: BASIC, QBASIC, QUICKBASIC, VISUALBASIC, SMALLTALK, JAVA.
  • 13. Es una máquina matemática M formada por 5 elementos M = (Σ, Q, s, F, δ) donde Σ es un alfabeto de entrada, Q es un conjunto finito de estados, s es el estado inicial, F es un conjunto de estados finales o de aceptación y δ (delta) es una relación de transición.
  • 14. Autómata Finito Determinista (AFD) es un autómata finito en donde δ (delta) es una función de transición, es decir, que para cada par (estado actual y símbolo de entrada) le corresponde un único estado siguiente. Autómata Finito No Determinista (AFND) es un autómata finito en donde δ no es necesariamente una función de transición, es decir, que para cada par (estado actual y símbolo de entrada) le corresponde cero, uno, dos o más estados siguientes, Normalmente la relación de transición para un AFND se denota con ∆.
  • 15. Regex: Es una secuencia de caracteres que conforma un patrón de búsqueda. Se utilizan principalmente para la búsqueda de patrones de cadenas de caracteres u operaciones de sustituciones. Por ejemplo, pudieras usar expresiones regulares para validar datos en un formulario: nombres de usuario, contraseñas, direcciones de correo, códigos postales, números telefónicos, etc. Ejemplos: Un claro ejemplo del uso de regex en la tecnología de la información es la función de buscar y reemplazar de los editores de texto, la cual fue implementada por primera vez en los por Ken Thompson.
  • 16. CONCLUSIÓN Hay todo tipos de lenguajes , y cada tipo cumple con su labor , de entender, traducir y explicar, además todos los lenguajes interactúan entre si, para encontrar la singularidad o patrón de origen.