Objetivo:

Desarrollar e implementar soluciones de programación orientada a objetos en JAVA.

El alumno aplicará la teoría de la computación al diagnóstico de la complejidad de problemas de decisión clásicos y del mundo real.

Como objetivos específicos se tienen los siguientes:

  • Manejar notaciones básicas para el estudio de los autómatas y sus aplicaciones: gramáticas y expresiones regulares.
  • Saber qué puede hacer una computadora: Decibilidad.
  • Saber qué puede hacer una computadora eficientemente: Problemas intratables.
  • Saber qué no pueden resolver las computadoras: Indecibilidad.
  • Conocer los teoremas para desarrollar demostraciones formales deductivas e inductivas
  • Conocer los conceptos fundamentales de la teoría de autómatas para el diseño y construcción de lenguajes formales.
  • Diseñar autómatas finitos y Máquinas de Turing para problemas relativamente restringidos, tales como protocolos de análisis, búsquedas de texto, resolubilidad de problemas por computadora y técnicas de reducibilidad.