Usted está aquí: Inicio Ingeniería Informática Teoría de Autómatas y Lenguajes Formales Material de clase

Material de clase

Acciones de Documento
  • Marcadores (bookmarks)
Autor: (course_default)
Carpeta contenedora de las transparencias de clase
Tema 4 - Lenguajes y Gramáticas Formales
Tema I: Introducción
La primera de las funciones de la asignatura (establecer con claridad y rigor los fundamentos y conceptos básicos de la materia) se traduce de modo inmediato en la presentación de los primeros temas del programa teórico. El objetivo de este primer tema es centrar al alumno en los conceptos básicos de la Teoría de Autómatas y Lenguajes Formales. En primer lugar, se lleva a cabo una breve mención histórica de los antecedentes principales que componen la asignatura. Posteriormente, se repasan las investigaciones interdisciplinares de las que se nutren los conceptos básicos que se desarrollaran a lo largo de la asignatura, Teoría de Autómatas, Matemáticas y Computabilidad y los Lenguajes Formales y Gramáticas.
Tema 2: Teoría de Autómatas
El Tema 2 corresponde a la Teoría de Autómatas y se compone de 5 apartados. A lo largo de este tema se amplia la introducción realizada sobre la Teoría de Autómatas en el tema anterior. En primera instancia, se describe la relación entre la Teoría de Autómatas y las Ciencias de la Computación para posteriormente describir el modelo matemático de un autómata. A partir de este modelo, se establece la relación entre los autómatas y los algoritmos para finalmente describir los tipos y clases de autómatas.
Tema 3: Autómatas Finitos
El objetivo principal de este tema es la identificación de los Autómatas como reconocedores de lenguajes y su utilización como analizadores lexicográficos. Se comienza formalizando los Autómatas Finitos Deterministas. Así mismo, se describen diversas operaciones de equivalencia y minimización. Se introducen los Autómatas Finitos No Deterministas y se demuestra que se pueden reducir a Deterministas equivalentes.
Tema 5: Lenguajes Regulares
A través de este tema se pretende proporcionar al alumno un metalenguaje para la descripción de lenguajes de Tipo 3: las Expresiones Regulares. En primer lugar, se presenta la definición recursiva de expresión regular y la equivalencia entre las mismas. En segundo lugar, se muestra la relación existente entre las Expresiones Regulares, los Autómatas Finitos y las Gramáticas Regulares (Teoremas de Kleene). Por último, se demuestran dichos teoremas a través de la solución de los problemas de análisis y síntesis.
Tema 6: Autómatas a Pila
El propósito de este tema es la identificación de los Autómatas a Pila (AP) como reconocedores de lenguajes independientes del contexto y su utilización como analizadores sintácticos. En primer lugar se definen las características básicas de los AP así como sus dos variantes: por vaciado de pila (APV) y por estados finales (APF). En segundo lugar se muestra la equivalencia entre los APV y APF, a través de la equivalencia de los lenguajes reconocidos por ambos tipos de AP. Por último se describe la construcción de un APV a partir de una Gramática de Tipo 2 y viceversa.
Tema 7: Máquinas de Turing
En este tema se define el concepto de Máquina de Turing así como su funcionamiento. En primer lugar se analiza el funcionamiento de las Máquinas de Turing con cualquier tipo de alfabeto para, posteriormente, reducir el funcionamiento general a máquinas que simplifican alguno de los aspectos de la Máquina de Turing. De esta manera se definen las máquinas binarias, con cinta limitada y con movimientos restringidos. A continuación, se analizan dos tipos de Máquinas de Turing, localizadora y transcriptora, que constituyen el fundamento de la Máquina de Turing Universal. A partir del concepto de Máquina de Turing Universal se discuten las capacidades de la Máquina de Turing, por un lado en su relación con los lenguajes y por otro con el problema de la indecidibilidad.
Tema 8: Complejidad Computacional
En este tema se presenta un estudio introductorio de la disciplina denominada complejidad computacional, con el objetivo de que el alumno conozca los conceptos y cuestiones relativas más importantes dentro de esta disciplina. En primer lugar, se presentan los objetivos del tema, definiendo conceptos como computabilidad, máquina, algoritmo, complejidad algorítmica, orden de complejidad, etc. De este estudio se obtiene una clasificación de los problemas solubles en diversas categorías. De estas categorías se analizan, en más detalle, las clases de problemas P y NP.
Reutilizar Curso
Descargar este curso