CURSO ACADÉMICO 2008/2009
Escuela Técnica Superior de Ingeniería Informática Dep. Ciencias de la Computación e Inteligencia Artificial
Lógica y Programación DATOS BÁSICOS DE LA ASIGNATURA
Titulación: Ing. Tec. Informática de Gestión Nombre: Lógica y Programación
Código:270039 Año del plan de estudio:1997
Tipo:Optativa
Créditos totales (LRU):6,00 Créditos LRU teóricos:3,00 Créditos LRU prácticos:3,00 Créditos totales (ECTS):5,00 Créditos ECTS teóricos:2,50 Créditos ECTS prácticos:2,50 Horas de trabajo del alumno por crédito ECTS:12,00
Curso:3 Cuatrimestre: 2
º
Ciclo:1DATOS BÁSICOS DE LOS PROFESORES
Nombre Departamento Despacho email
Antonia Maria Chavez Gonzalez CCIA E1.64 [email protected]
Gonzalo Antonio Aranda Corral CCIA E1. 65 [email protected]
DATOS ESPECÍFICOS DE LA ASIGNATURA
1. Descriptores:
Lógica proposicional. Algoritmos de resolución del problema de satisfacibilidad para lógica proposicional. Tableros semánticos. Secuentes.
Procedimiento de DavisPutnam.
Resolución. SLDresolución.
2. Situación:
2.1. Conocimientos y destrezas previos:
Es aconsejable que el alumno posea conocimientos generales sobre los principios del razonamiento matemático que subyace en los fundamentos de esta materia.
2.2. Contexto dentro de la titulación:
Asignatura de tercer curso en la que se proporciona un extenso conocimiento sobre la programación funcional, continuación de la asignatura de primer cuatrimestre Programación Declarativa. La asignatura proporciona a los
alumnos una visión amplia de distintos algoritmos de resolución del problema de satisfacibilidad proposicional, haciendo especial hincapié en la implementación de los mismos en lenguaje de programación Haskell.
2.3. Recomendaciones:
También resultan de utilidad los conocimientos teóricos presentados en la asignatura Lógica Informática.
2.4. Adaptaciones para estudiantes con necesidades especiales:
Para alumnos con discapacidad visual, hay que tener en cuenta la iluminación del aula, la utilización de tizas de colores con contraste en el encerado, el tamaño de la grafía en el mismo tanto en pizarra como en documentación y enunciados de exámenes, el posible aumento de tiempo en la realización de las pruebas de evaluación, la verbalización de las espresiones lógicas escritas y de su simbología específica, etc.
4. Objetivos:
Concienciar al alumno sobre la importancia actual de la lógica proposicional para resolver problemas diversos y proporcionarle unos conocimientos básicos sobre distintos algoritmos de resolución del problema de satisfacibilidad proposicional, así como de las técnicas de implementación al uso.
Proporcionar al alumno unos conocimientos básicos sobre distintos principios y técnicas de programación funcional. Resolución de problemas típicos con un lenguaje de programación representativo. Aplicaciones.
5. Metodología:
Se impartirán clases teóricas y de laboratorio.
5.a Número de horas de trabajo del alumno SEGUNDO SEMESTRE. Actividades y horas:
•
Teorí-a (Horas presenciales + Horas no presenciales = Total de horas): 26,00 + 6,00 = 32,00•
Prácticas (Horas presenciales + Horas no presenciales = Total de horas): 0,00 + 0,00 = 0,00•
Laboratorio (Horas presenciales + Horas no presenciales = Total de horas): 22,00 + 8,00 = 30,00•
Trabajos (Horas presenciales + Horas no presenciales = Total de horas): 18,00 + 0,00 = 18,00•
Otros (Horas presenciales + Horas no presenciales = Total de horas): 16,00 + 6,00 = 22,00•
Exámenes (Total de horas): 4,006. Técnicas Docentes:
Sesiones académicas teóricas:[X] Exposición y debate: [X] Tutorías especializadas:[ ]
Sesiones académicas prácticas:[X] Visitas y excursiones: [ ] Controles de lecturas obligatorias: [ ] Otras:
Trabajos (en su caso)
DESARROLLO Y JUSTIFICACIÓN
Los alumnos realizarán el diseño e implementación de una aplicación que a su vez vendrá descrita y comentada con claridad y en en el lenguaje apropiado.
7. Bloques Temáticos:
Bloque 1: Programación Funcional
Tema 1: Introducción a la programación funcional Tema 2: Programación Funcional con Haskell Bloque 2: Lógica Proposicional
Tema 3: Sintaxis y Semántica de la Lógica Proposicional Tema 4: Formas Normales
Tema 5: Cláusulas y Formas Clausales Tema 6: Tableros Semánticos
Lógica y Programación (INGENIERO TÉCNICO EN INFORMÁTICA DE GESTIÓN ( Plan 97 ) (1997)) 2 de 5
Tema 7: Cálculo de Secuentes
Tema 8: El Procedimiento de Davis y Putnam Tema 9: Resolución Proposicional
Tema 10: Refinamientos de Resolución
8. Bibliografía 8.1. General:
A continuación se lista la bibliografía general de la asignatura - Díez Calzada, J. A.Iniciación a la Lógica ISBN 84-344-8764-0
- Russel, S., Norvig, P.Inteligencia Artificial: un enfoque moderno ISBN 84-205-4003-x - Genesereth, M.R. y Nilsson, N.J.Logical Foundations of Artificial Intelligence
- Ruiz, Gutiérrez, Guerrero, Gallardo.Razonamento con HaskellL: Un curso so¡bre programación Funcional ISBN 84-9732-277-0 - Chang, C.L. y Lee, R.C.TSymbolic Logic and Mechanical Theorem Proving.
- Doets, K., van Eijck, J.The Haskell Road to Logic, Maths and programming Vol 4. (2004)
9. Técnicas de evaluación:
Evaluación tradicional: Examen final teórico/práctico en la convocatoria oficial.
Evaluación alternativa: Se realizarán a lo largo del cuatrimestre dos exámenes parciales. Se podrá valorar la realización/participación en las clases prácticas/teóricas.
Según el número de alumnos se podrá proponer la realización y exposición de trabajos prácticos individuales o en grupo.
CRITERIOS DE EVALUACIÓN Y CALIFICACIÓN:
Se considerará que el alumno ha superado la asignatura cuando la calificación que obtenga sea igual o superior a 5 sobre un total de 10.
En caso de detección de copia en examen o trabajo, el alumno o alumnos implicados pasarán directamente a la siguiente convocatoria oficial de examen.
10. Organización docente semanal(Número de horas que a ese tipo de sesión va a dedicar el estudiante cada semana)
H: Horas presenciales
HORAS SEMANALES Exámenes Laboratorio Otros Prácticas Teorí-a Trabajos Temario
Segundo Semestre Total H Total H Total H Total H Total H Total -
Nº total de horas 26,00 32,00 0,00 0,00 22,00 30,00 18,00 18,00 16,00 22,00 4,00 -
1ªSemana 4,00 4,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 -
2ªSemana 2,00 2,00 0,00 0,00 2,00 2,00 0,00 0,00 0,00 0,00 0,00 -
3ªSemana 2,00 2,00 0,00 0,00 2,00 2,00 0,00 0,00 0,00 0,00 0,00 -
4ªSemana 2,00 2,00 0,00 0,00 2,00 2,00 0,00 0,00 0,00 0,00 0,00 -
5ªSemana 2,00 2,00 0,00 0,00 2,00 2,00 0,00 0,00 0,00 0,00 0,00 -
6ªSemana 2,00 2,00 0,00 0,00 2,00 2,00 0,00 0,00 4,00 4,00 0,00 -
7ªSemana 2,00 2,00 0,00 0,00 2,00 2,00 2,00 2,00 0,00 2,00 2,00 ,
8ªSemana 0,00 2,00 0,00 0,00 0,00 2,00 2,00 2,00 2,00 2,00 0,00 -
9ªSemana 2,00 2,00 0,00 0,00 2,00 2,00 2,00 2,00 0,00 0,00 0,00 -
10ªSemana 2,00 2,00 0,00 0,00 2,00 2,00 2,00 2,00 0,00 0,00 0,00 -
11ªSemana 0,00 2,00 0,00 0,00 0,00 2,00 4,00 4,00 2,00 2,00 0,00 -
12ªSemana 2,00 2,00 0,00 0,00 2,00 2,00 2,00 2,00 0,00 0,00 0,00 -
13ªSemana 2,00 2,00 0,00 0,00 2,00 2,00 2,00 2,00 4,00 4,00 0,00 -
14ªSemana 2,00 2,00 0,00 0,00 2,00 2,00 2,00 2,00 4,00 4,00 0,00 -
15ªSemana 0,00 2,00 0,00 0,00 0,00 4,00 0,00 0,00 0,00 4,00 2,00 ,
11. Temario desarrollado
Bloque 1: Programación Funcional
Tema 1: Introducción a la programación funcional
Funciones. Sesiones y declaraciones. Reducción. Sobre Haskell.
Tema 2: Programación Funcional con Haskell
El lenguaje Haskell. Tipos y clases de tipos. Jerarquía. Contextos. Subclases.
La clase Read y Show.Tipos simples predefinidos. Constructores de tipos predefinidos. Operadores.Patrones. Parcialización.
Polimorfismo.Sinónimos. Definición de tipos de datos. Sobrecarga
y polimorfismo restringido.Tipos y clases de tipos. Jerarquía. Contextos. Subclases.
La clase Read y Show. El tipo Lista. Concatenación. Inducción sobre listas. Selectores. Listas por comprensión. Map.Plegado. Ordenación.
Bloque 2: Lógica Proposicional
Tema 3: Sintaxis y Semántica de la Lógica Proposicional
Tema 4: Formas Normales
Tema 5: Cláusulas y Formas Clausales
Tema 6: Tableros Semánticos
Tema 7: Cálculo de Secuentes
Tema 8: El Procedimiento de Davis y Putnam
Tema 9: Resolución Proposicional
Tema 10: Refinamientos de Resolución
Lógica y Programación (INGENIERO TÉCNICO EN INFORMÁTICA DE GESTIÓN ( Plan 97 ) (1997)) 4 de 5
12. Mecanismo de control y seguimiento
En el desarrollo de la asignatura a lo largo del cuatrimestre se expondrán los conceptos relativos a cada tema.
Cada semana se expondrá un tema en la clase de teoría y se resolverá una práctica en la sesión de laboratorio. Cada práctica estará formada por una serie de ejercicios de programación relacionados con los temas explicados.
La evaluación alternativa de la asignatura estará formada por dos exámenes parciales a realizar durante el curso. Se valorará la entrega de ejercicios adicionales propuestos, la presentación y exposición de trabajos en clase.
De esta forma, se tienen dos oportunidades de superar la asignatura (la alternativa y el examen final).
Toda la información relativa a la asignatura: copias de las presentaciones realizadas en clase, ejercicios propuestos y resueltos, problemas propuestos, horario de tutorías, dirección de correo electrónico, ..., será publicada en la página Web correspondiente.
13. Horarios de clases y fechas de exámenes
Los horarios y fechas de exámenes serán los acordados por la Junta de Facultad o Escuela y publicados por la misma