Usted está aquí: Inicio web asignaturas

 

Fichas de asignaturas 2009-10


PROGRAMACIÓN LÓGICA

Asignaturas
 

  Código Nombre    
Asignatura 1711044 PROGRAMACIÓN LÓGICA Créditos Teóricos 2,5
Descriptor   PROGRAMACIÓN LÓGICA Créditos Prácticos 2,5
Titulación 1711 INGENIERÍA TÉCNICA EN INFORMÁTICA DE SISTEMAS Tipo Optativa
Departamento C137 LENGUAJES Y SISTEMAS INFORMATICOS    
Curso      
Duración (A: Anual, 1Q/2Q) 2Q      
Créditos ECTS 4      

Para el curso Créditos superados frente a presentados Créditos superados frente a matriculados
2007-08 100.0% 33.3%

 

 

Pulse aquí si desea visionar el fichero referente al cronograma sobre el número de horas de los estudiantes.

Profesorado

Mª del Carmen  de Castro Cabrera (coordinadora)

Situación

Contexto dentro de la titulación

Asignatura optativa de 3ºcurso de la titulación en Ingeniería Técnica en
Informática de Sistemas.

Recomendaciones

Actitud abierta a aprender lenguajes de programación de diferentes paradigmas.
Trabajo y estudio al día que permita la asimilación de conceptos de manera
gradual.
Utilización del Campus Virtual como medio de intercambio y comunicación de
conocimientos entre los estudiantes y con los profesores.

Competencias

Competencias transversales/genéricas

Capacidad de análisis y síntesis.
Capacidad de relacionar conocimientos teóricos con la práctica.
Capacidad de comunicación oral y escrita.
Autonomía en la resolución de problemas.
Capacidad de trabajar en grupo.

Competencias específicas

  • Cognitivas(Saber):

    Conocimientos de informática relativos al ámbito de estudio.
    Capacidad de organización y planificación.
    Manejo de manuales y documentación en inglés.
    Conceptos básicos de lógica clásica.
    Especificar problemas para solucionarlos en un lenguaje lógico.
    Conocer Teoría de Modelos y Teoría de la Demostración.
    Métodos de Demostración automática.
  • Procedimentales/Instrumentales(Saber hacer):

    Expresar razonamientos de lenguaje natural en lenguaje lógico.
    Demostrar la corrección de un razonamiento lógico a través de
    diferentes métodos de demostración.
    Saber aplicar los diferentes métodos de Demostración lógica.
    Implementar programas en lenguaje de programación lógica que resuelvan
    problemas.
    Mejorar implementaciones de programas mediante predicados de control
    y otras técnicas.
    Saber representar las diferentes estructuras de datos en lenguaje de
    programación lógica.
  • Actitudinales:

    Compromiso ético.
    Responsabilidad individual y de grupo.
    Toma de decisiones.
    Razonamiento crítico.
    Capacidad de iniciativa y participación.
    Creatividad.

Objetivos

* Conocer el paradigma declarativo de la programación, en general y la
programación lógica en concreto, como alternativa a otros tipos de programación
* Conocer los orígenes y la base teórica de la programación lógica.
* Aprender el lenguaje de programación Prolog.
* Ser capaces de solucionar diversos problemas realizando programas en Prolog que
los resuelvan.
* Manejar material relacionado con la asignatura en lengua inglesa.
* Conocer aplicaciones prácticas de este tipo de programación

Programa

PROGRAMA TEÓRICO

TEMA 1: INTRODUCCIÓN. (2 h.)
1.1 Objetivos e historia de la Lógica.
1.2.Tipos de Lógicas.
1.3.Limitaciones y posibilidades de la lógica en Computación.
1.4. Lenguaje, Semántica.
1.3. Teoría de la Demostración versus Teoría de Modelos.
1.4. La automatización de las Deduciones.

TEMA 2: LÓGICA PROPOSICIONAL. (6 hrs)
2.1. Lenguaje.
2.2. Semántica.
2.2.1. Validez, Satisfacibilidad.
2.2.2. Equivalencia lógica.
2.2.3. Formas Normales
2.3. Sistemas de Demostración.
2.3.1 De razonamiento directo.
2.3.2. De Refutación.

TEMA 3: LÓGICA DE PREDICADOS DE PRIMER ORDEN. (5 hrs.)
3.1. Lenguaje.
3.2. Semántica.
3.2.1. Validez, Satisfacibilidad.
3.2.2. Equivalencia lógica.

TEMA 4: FORMA LÓGICA CLAUSAL. (3 hrs)
4.1. Forma Normal Prenexa.
4.2. Form Normal de Skolem.
4.3. Cláusulas.

TEMA 5: RESOLUCIÓN. UNIFICACIÖN (6 hrs.)
5.1. Resolución básica.
5.2. El Algoritmo de Unificación.
5.3. Resolución de átomos no básicos.

TEMA 6: RESOLUCIÓN SLD. (3 hrs)
6.1. Cláusulas Horn.
6.2. Programa lógico.

PROGRAMA DE PRÁCTICAS.

TEMA 1: INTRODUCCIÓN AL PROLOG. (4 hrs.)
Historia. Sintaxis y Semántica básicas.Backtracking.
Manejo del entorno de programación. Programas simples.

TEMA 2: PROGRAMACIÓN RECURSIVA. (6 hrs).
Concepto de recursividad. Representación en Prolog. Recursividad
directa.Recursividad final. Listas. Predicados relacionados con listas.

TEMA 3: OTRAS ESTRUCTURAS DE DATOS. ENTRADA / SALIDA (6 hrs.)
Representación de grafos y árboles. Bases de datos. Predicados de
gestión de cadenas. Predicados de entrada/salida.

TEMA 4: CONTROL DE EJECUCIÓN. (5 hrs)
Control de ejecución natural. Predicados de control predefinidos.Usos.

TEMA 5: APLICACIONES.(4 hrs)

Actividades

Propuesta y resolución de ejercicios y problemas que, en ocasiones, deberán
plantearse en grupo.

Metodología

En las clases de teoría: explicación de los contenidos en pizarra  o en
cualquier otro medio audiovisual y  realización y propuesta de ejercicios así
como  su corrección. Lectura y debate de documentos relacionados con la
asignatura. Se utilizará el aula virtual para facilitar documentos que
complementen las clases, comunicación con los alumnos (a través del correo y los
foros), para realizar, ocasionalmente, tests de autoevaluación y para
actividades que tengan como objetivo mejorar el aprendizaje del alumno y/o la
docencia del profesor.

En las practicas: explicación de las características propias del lenguaje
lógico a utilizar y, propuesta y resolución de problemas en el ordenador.
Algunos de estos problemas propuestos podrían resolverlos en grupos.

Distribución de horas de trabajo del alumno/a

Nº de Horas (indicar total): 100

  • Clases Teóricas: 22  
  • Clases Prácticas: 22  
  • Exposiciones y Seminarios: 4  
  • Tutorías Especializadas (presenciales o virtuales):
    • Colectivas: 2  
    • Individules:  
  • Realización de Actividades Académicas Dirigidas:
    • Con presencia del profesorado: 4  
    • Sin presencia del profesorado: 11,25  
  • Otro Trabajo Personal Autónomo:
    • Horas de estudio: 29,75  
    • Preparación de Trabajo Personal:  
    • ...
        
  • Realización de Exámenes:
    • Examen escrito: 3  
    • Exámenes orales (control del Trabajo Personal):  

Técnicas Docentes

Sesiones académicas teóricas:Si   Exposición y debate:Si   Tutorías especializadas:Si  
Sesiones académicas Prácticas:Si   Visitas y excursiones:No   Controles de lecturas obligatorias:No  

Criterios y Sistemas de Evaluación

1. Se evaluará la consecución de los objetivos mediante el examen final de la
asignatura en la convocatoria oficial. Dicho examen consta de una parte teórica
y otra práctica.

2. Por otro lado, el alumnado que asiste regularmente a clase (al menos al 80%
de las sesiones) podrá optar por aprobar la asignatura mediante una evaluación
continua, superando la realización de cada uno de los ejercicios, controles y/o
trabajos(individuales y en grupo), propuestos durante el cuatrimestre. La nota
final de esta modalidad de evaluación será:
95% de la calificación final. Es la media de las notas obtenidas en cada uno
de los ejercicios, controles realizados o trabajos entregados.
5% de la calificación final: Asistencia como mínimo al 80% de las sesiones y
participación activa en el Aula Virtual de la asignatura (foros, tutorías
virtuales, etc.).
En la modalidad de evaluación continua, si la calificación final obtenida es
igual o mayor a 5, no será necesario realizar el examen final de la asignatura.

Recursos Bibliográficos

BIBLIOGRAFÍA BÁSICA:

- C.J. Hogger.
'Essentials Of Logic Programming'.
Clarendon Press. Oxford 1990.

- M. Ojeda Aciego, I. Pérez De Guzman
‘Lógica Para La Computación’ (Vol.1)
Agora Universidad,1993.

- G. Aguilera Venegas, I. Pérez De Guzman
‘Lógica Para La Computación’ (Vol. 2)
Agora Universidad, 1997

- J. Pizarro, J.A. Jimenez, M.C.De Castro.
‘Introducción A La Programación Lógica’
Dto. Lenguajes Y Sistemas Informáticos, 1997

- Leon Sterling Y Ehud Shapiro.
'The Art Of Prolog' Second Edition
The Mit Press. 1994

- W.F.Clocksin Y C.S. Mellish.
'Programación En Prolog'.
Gustavo Gili S.A. Barcelona 1993.

- William Clocksin,
'CLAUSE AND EFFECT: Prolog Programming for the working programers'
Ed. Springer,1997.

BIBLIOGRAFÍA COMPLEMENTARIA:

-Arenas Alegría, L. 'Lógica formal para Informáticos', ed. Diaz de Santos,
1996.

-Chang, C., Char-Tung-Lee, R. 'Symbolic Logic and Mechanical Theorem
Proving', Academic Press, 1987.

- R.Kowalsky.
'Lógica, Programación E Inteligencia Artificial'.
Diaz De Santos. 1986.

- T. Van Le.
'Técniques Of Prolog Programming'.
John Wiley & Sons 1993

- Ivan Bratko.
'Prolog. Programming For Artificial Inteligence'.
Addison Wesley 2001.

- F. Pereira Y S.M. Shieber.
'Prolog And Natural-Language Analysis'.
Clsi 1987.

 

El presente documento es propiedad de la Universidad de Cádiz y forma parte de su Sistema de Gestión de Calidad Docente. En aplicación de la Ley 3/2007, de 22 de marzo, para la igualdad efectiva de mujeres y hombres, así como la Ley 12/2007, de 26 de noviembre, para la promoción de la igualdad de género en Andalucía, toda alusión a personas o colectivos incluida en este documento estará haciendo referencia al género gramatical neutro, incluyendo por lo tanto la posibilidad de referirse tanto a mujeres como a hombres.