Combinatoria Analítica, Criptografía, Análisis de Algoritmos y Complejidad Computacional; Aplicaciones para la resolución de problemas concretos.
Bases formales para la especificación y verificación en el contexto de la Ingeniería Dirigida por Modelos (MDE)
Seguridad Informática y Métodos Formales
Lógicas de programación para describir y razonar sobre modelos y sistemas
Análisis formal de sistemas críticos.
Ejemplos: modelos de seguridad para dispositivos móviles (Android, etc), plataformas de virtualización y protocolos de comunicación; Desarrollo de prototipos certificados (oráculos) y validación de implementaciones reales usando oráculos.
Métodos Formales
Semántica formal de lenguajes de programación (operacional, denotacional, axiomática)
Métodos de especificación formal de sistemas
Testing basado en métodos formales
Programación Funcional
Desarrollo de Lenguajes de Dominio Específico Embebidos (EDSLs)
Programación a nivel de tipos en Haskell (GADTs, type families, type classes, etc)
Programación con tipos dependientes
Conexiones entre Gramáticas de Atributos y Programación Funcional
Técnicas de programación en el paradigma funcional
Técnicas de transformación de programas funcionales
Análisis de Sentimientos en prensa y en redes sociales
Aprendizaje/Optimización (Algoritmos Evolutivos, Aprendizaje por Imitación, Aprendizaje por Refuerzo, Redes Neuronales Artificiales, ...)
Desarrollo de herramientas para el análisis lingüístico de textos en español: estudio y adaptación de herramientas existentes y desarrollo de herramientas nuevas
Extracción de Información
Métodos estadísticos aplicados al Procesamiento de Lenguaje Natural: Aprendizaje Automático, Redes Neuronales Profundas, Representaciones Vectoriales de Palabras
Navegación en robótica autónoma (control motor, localización, planificación de movimientos, sensado, armado de mapas)