I. Descripción de la asignatura: paradigma lógico

ATENCIÓN: este documento es un borrador NO OFICIAL de la cátedra de paradigmas. Además se trata de un trabajo en progreso, y no de un trabajo terminado. Úselo bajo su propia cuenta y riesgo.

Deberá conocer la fundamentación teórica en la que se basa el paradigma lógico, esencialmente el mecanismo de inferencia y los conceptos de lógica matemática utilizados (regla de inferencia por resolución, concepto de programa, consecuencia lógica, formas clausales, etc). Además de lo anterior, el alumno deberá ser capaz de diseñar programas de poca complejidad en PROLOG.

La página oficial de la asignatura reside en http://www.frsf.utn.edu.ar/universidad_virtual/catedras/sistemas/paradigmas/index.htm

II. Objetivos

El desarrollo de la materia procura que el alumno: (falta completar)

  1. Comprenda cómo calcular el valor de verdad de las interpretaciones de una fórmula.
  2. Comprenda cuándo una interpretación es un modelo de un conjunto de fórmulas.
  3. Entienda el concepto de aridad de funciones.
  4. Sepa construir fórmulas bien conformadas.
  5. Construya unificadores para un par de predicados.
  6. Diferencie entre dos unificadores, para saber cuál es más general.
  7. Obtenga el unificador más general entre dos predicados.
  8. Describa el mecanismo de inferencia.
  9. Describa la regla de inferencia por resolución
  10. Comprenda el modelo de ejecución del intérprete no determinista.
  11. Comprenda el modelo de ejecución del intérprete de Prolog.
  12. Diferencie entre los modos de ejecución del intérprete no determinista y Prolog para una consulta dada.
  13. concepto de programa lógico ???
  14. Sepa correr en papel un programa lógico con una consulta dada.
  15. consecuencia lógica ???
  16. formas clausales ???
  17. Comprenda el tratamiento de Prolog como base de datos.
  18. Pueda utilizar símbolos funcionales en las cláusulas.
  19. Dibuje el árbol de derivación en lógica de un programa lógico. Ídem para un programa Prolog.
  20. Recorra una lista y cuente elementos de la misma.
  21. Recorra una lista y aplique un predicado a cada elemento de la lista.
  22. Obtenga la lista de los resultados de una consulta dada.
  23. Recorra una lista y se quede con aquellos elementos que satisfacen cierta condición.
  24. Recorre una lista y busca si cierto elemento está presente.
  25. Recorre recursivamente los nodos de un árbol para buscar, insertar o eliminar un nodo dado.
  26. Comprenda cómo recorrer un grafo para encontrar un camino entre dos nodos dados.
  27. Sepa como transformar una representación de un grafo en otra equivalente bajo ciertas condiciones.
  28. Explore las características de generación de soluciones en el caso de permutaciones de elementos.
  29. Escriba programas Prolog para manejar matrices bidimensionales.

III. Contenidos temáticos

Unidad 1

Tema principal. Descripción de subtemas.

IV. Trabajos prácticos

No hay planificado ningún trabajo práctico sobre el tema de paradigma lógico.

V. Evaluación

La evaluación del paradigma lógico se realizará mediante un exámen parcial y un conjunto de minievaluaciones semanales de seguimiento.

La nota final del alumno se compone de las notas de los parciales. Las minievaluaciones deben responderse correctamente en un porcentaje no inferior a PONER_PORCENTAJE sobre el total de los tres paradigmas: objetos, lógico y funcional

VI. Cronograma

Total de semanas de clases de práctica: 16
Horas de clase por semana: 4
Hay dos clases que no se pueden dictar: 19/08 feriado, 30/09 exámenes finales.

Fecha 1.er exámen parcial: 11 de octubre, 09:00 hs
Fecha 2.do exámen parcial: no definido
Fecha de entrega de calificaciones a los alumnos: no definido

Existen tres guías de práctica. A los fines de dividir los problemas se proponen las siguientes áreas temáticas, con los problemas asociados:

  1. Lógica proposicional: 1-01 al 1-04.
  2. Unificadores: 1-05 al 1-07.
  3. Intérprete no determinístico vs. prolog: 1-08.
  4. Árbol de búsqueda prolog: 1-09 al 1-12
  5. Base de datos y obtener listas de resultados: 2-01, 3-16, 3-18, 3-20.
  6. Tratamiento de listas: 2-02, 2-04 al 2-07, 3-03, 3-04, 3-13, 3-14
  7. Árboles: 2-03, 3-09 al 3-11
  8. Generación de resultados: 3-01, 3-02, 3-12
  9. Grafos: 3-05 al 3-08.
  10. Problemas de integración: 3-15, 3-17, 3-19

La teoría requerida tiene la siguiente interpretación:

Cronograma de dictado de Paradigmas de Programación durante el 2003
SemanaFechaActividadTeoría requerida
- 19/08/2003 No se dicta clases por feriado.  
1 26/08/2003 Práctica objetos. Clase 1. Primera minievaluación objetos  
2 02/09/2003 Práctica objetos. Clase 2. Segunda minievaluación objetos.  
3 09/09/2003 Práctica objetos. Clase 3. Tercera minievaluación objetos.  
4 16/09/2003 Práctica objetos. Clase 4. Cuarta minievaluación objetos.  
5 23/09/2003 Práctica objetos. Clase 5. Quinta minievaluación objetos.  
- 30/09/2003 No se dicta clases por semana de exámenes finales.  
6 07/10/2003 Clase práctica lógica 1:
lógica proposicional, unificadores.
Primera minievaluación lógica.
lógica proposicional:t6 á t20
unificadores: t70 á t83
introducción: plyf2
7 14/10/2003 Clase práctica lógica 2:
intérprete no determinístico vs. prolog,
árbol de búsqueda prolog.
Segunda minievaluación lógica.
no determinístico vs prolog: t127 á t135
árboles SLD: t118
interpretación lógica: plyf3
8 21/10/2003 Clase práctica lógica 3:
bases de datos y listas de resultados,
tratamiento de listas.
Tercera minievaluación lógica.
prolog básico: t138 á t153
listas: t154 á t160
cut: t177 á t183
not: t184 á t192
interpretación algorítmica: plyf4
9 28/10/2003 Clase práctica lógica 4:
árboles,
generación de resultados.
Cuarta minievaluación lógica.
árboles binarios: t161 á t163
interpretación algorítmica: plyf4
10 04/11/2003 Clase práctica lógica 5:
grafos,
problemas de integración.
Quinta minievaluación lógica.
interpretación algorítmica: plyf4
11 11/11/2003 Práctica funcional. Clase 1. Primera minievaluación funcional.  
12 18/11/2003 Práctica funcional. Clase 2. Segunda minievaluación funcional.  
13 25/11/2003 Práctica funcional. Clase 3. Tercera minievaluación funcional.  

VII. Bibliografía

Marcela Vera
César Ballardini
Auxiliares docentes, Cátedra de Paradigmas de Programación.

Valid HTML 4.01!

1