• Presentación de la asignatura

      Queremos darte la bienvenida a la asignatura Informática Teórica y Lenguajes Formales, perteneciente a la titulación de Inteligencia Artificial, publicada como recurso educativo abierto (REA) de la Universidad Rey Juan Carlos.

      Los lenguajes formales se definen como conjuntos de símbolos que se asocian mediante una serie de reglas formales definidas a través de gramáticas. Dependiendo de la complejidad de la gramática existe una jerarquía de lenguajes formales, que encuentran su aplicación en ciencias de la computación sobre todo en la comunicación máquina a máquina y entre aplicaciones informáticas. 

      Un modelo de computación es una abstracción matemática que describe como
      realizar cálculos y procesar información. Esto permite modelar un problema como un proceso de comunicación, en el que el cálculo algoritmico consiste en algo que es emitido (input),  que es procesado y que es respondido (output). Estos modelos abstractos permiten entender los límites de la computación, en cuanto a resolver un problema mediante una solución software, en cuanto si a un problema es decidible, esto es puede ser resuelto por un computador o tratable, en el que no existen programas suficientemente veloces.  El estudio de las clases de lenguajes formales permite decidir si nuestros problemas entran en esas categorías.

      Esta asignatura tiene como objetivo ser una introducción a los fundamentos de los modelos de computación, por lo que el modelado teórico de automátas que toman una entrada en un lenguaje formal definido por una gramática y reconocido por un autómata. Los contenidos pretenden mostrar como modelar problemas mediante lenguaje, a través de sus técnicas de procesamiento léxico, sintáctico y semántico para su solución mediante automátas. Para ello se examinarán una serie de modelos abstractos y construcciones, para saber como utilizar cada modelo y las limitaciones de cada uno, así como las equivalencias y la relación entre cada uno.

      Como requisito de entrada a la asignatura  es necesario estar familiarizado en el manejo formal de sistemas discretos para comprender la intuición detrás del funcionamiento de ciertas técnicas, por lo que  el conocimiento de lógica y matemática discreta puede ayudar a la comprensión de los contenidos de la asignatura. El resultado esperado es que el estudiante pueda aplicar el conocimiento anterior para la construcción de un traductor dirigido por sintáxis.

      Finalmente, en la pestaña de "Materiales consolidados" podrás encontrar la colección de materiales en abierto, en la pestaña de "Temario" podrás verlos organizados por los temas de la asignatura.