Download PROGRAMACION LOGICA Y FUNCIONAL SCC

Document related concepts

Programación funcional wikipedia , lookup

Mercury (lenguaje) wikipedia , lookup

Curry (lenguaje de programación) wikipedia , lookup

Oz (lenguaje de programación) wikipedia , lookup

Haskell wikipedia , lookup

Transcript
Toda copia en PAPEL es un "Documento No Controlado" a excepción del original.
INSTITUTO TECNOLÓGICO
SUPERIOR DE MISANTLA
Planeación Didáctica de Programación Lógica y Funcional
Responsable del Proceso: Docente frente a grupo
Apartado: 7.1
Copia No.
Código: PD-SCC-1019
o
Fecha de Versión: 23 de Enero de 2017
Versión No.: 02 Hoja : 2 de 12
Diseña, implementa y administra bases de datos optimizando los recursos
disponibles, conforme a las normas vigentes de manejo y seguridad de la
información.
o
Desarrolla
y
administra
software
para
apoyar
la
productividad
y
competitividad de las organizaciones cumpliendo con estándares de calidad.
3. OBJETIVO(S) GENERAL(ES) DEL CURSO
Conoce los principios lógicos y funcionales de la programación para identificarlos y aplicarlos en
la resolución de problemas a través del diseño de agentes inteligentes.
4.- COMPETENCIAS A DESARROLLAR
4.1 Competencias Específicas:

Conoce los principios lógicos y funcionales de la programación para identificarlos y
aplicarlos en la resolución de problemas a través del diseño de agentes inteligentes.

Identifica los paradigmas de los lenguajes de programación.

Realiza una aplicación dando solución a un problema del entorno usando el paradigma
de la programación funcional.

Conoce las ventajas y desventajas del paradigma de programación lógica.

Identifica los elementos de la programación lógica.

Realiza una aplicación dando solución a un problema del entorno usando el paradigma
de la programación lógica.
4.2 Competencias Genéricas:

Capacidad de análisis y síntesis.

Capacidad de organizar y planificar.

Comunicación oral y escrita.

Habilidades básicas de manejo de la computadora para la realización de análisis.

Habilidad para buscar y analizar información proveniente de fuentes diversas.

Solución de problemas.

Toma de decisiones.
4.3. Competencias Instrumentales:

Conocimientos generales básicos.

Conocimientos básicos de la carrera

Comunicación oral y escrita en su propia lengua.
VER.02/08/12
Toda copia en PAPEL es un "Documento No Controlado" a excepción del original.
F-SA-01
INSTITUTO TECNOLÓGICO
SUPERIOR DE MISANTLA
Planeación Didáctica de Programación Lógica y Funcional
Responsable del Proceso: Docente frente a grupo
Apartado: 7.1
Copia No.
Código: PD-SCC-1019
Fecha de Versión: 23 de Enero de 2017
Versión No.: 02 Hoja : 3 de 12

Conocimiento de una segunda lengua.

Habilidades básicas de manejo de la computadora.

Habilidades de gestión de información (habilidad para buscar y analizar información
proveniente de fuentes diversas)

Solución de problemas.

Toma de decisiones.
4.4. Competencias Interpersonales:
 Capacidad crítica y autocrítica.
 Trabajo en equipo.
 Habilidades interpersonales.
 Compromiso ético.
4.5. Competencias Sistémicas:

Capacidad de aplicar los conocimientos en la práctica.

Habilidades de investigación.

Capacidad de aprender.

Capacidad de adaptarse a nuevas situaciones.

Capacidad de generar nuevas ideas (creatividad).

Liderazgo.

Habilidad para trabajar en forma autónoma.

Iniciativa y espíritu emprendedor.

Preocupación por la calidad.

Búsqueda del logro.
VER.02/08/12
Toda copia en PAPEL es un "Documento No Controlado" a excepción del original.
F-SA-01
INSTITUTO TECNOLÓGICO
SUPERIOR DE MISANTLA
Planeación Didáctica de Programación Lógica y Funcional
Responsable del Proceso: Docente frente a grupo
Apartado: 7.1
Copia No.
Código: PD-SCC-1019
Fecha de Versión: 23 de Enero de 2017
Versión No.: 02 Hoja : 4 de 12
5. PLANEACIÓN DIDÁCTICA POR UNIDAD
5.1.
Unidad:
I
Tema:
Conceptos Fundamentales
Objetivo de la Unidad (Competencia a Desarrollar por el Alumno)
Desarrollar una visión del conjunto de los lenguajes de alto nivel que sirva como marco de referencia a la
metodología de los lenguajes de inteligencia artificial, como lo son la programación lógica y funcional.
No. Subtema
Descripción del Subtema
Actividades del Maestro
1.1
Diferentes estilos de
programación.
Ejemplica las características
de los diversos estilos de la
programación.
1.2
Analizando diferentes
estilos de programación.
Explica las diferencias entre
estilos de programación.
1.2.1
1.2.2
Sugerencia de Evaluación por Unidad
Éxamen escrito.
Tareas.
Exposiciones.
Competencia a
Desarrollar
Actividad del Alumno
Documenta las generalidades y
campos de aplicación de estilos
de programación, y realiza un
mapa conceptual.
Analiza programas que describan
cada uno de los estilos de
programación.

Evaluación de expresiones.
Define el concepto de
expresión y los distintos tipos
de operadores para su
evaluación.
Resuelve expresiones manejando
operadores aritméticos,
relacionales y lógicos.
Tipos de datos.
Elabora una tabla que
muestre los diferentes tipos
de datos.
Investiga los tipos de datos que
suelen utilizarse en los diferentes
paradigmas y lenguajes de
programación.




VER.02/08/12



Capacidad de análisis
y síntesis.
Capacidad
de
organizar y planificar.
Habilidad para buscar y
analizar
información
proveniente de fuentes
diversas.
Solución de problemas.
Toma de decisiones.
Trabajo en equipo.
Capacidad de aplicar
los conocimientos.
Habilidades
de
investigación.
F-SA-02
Toda copia en PAPEL es un "Documento No Controlado" a excepción del original.
No.
Sesiones
1
1
2
2
INSTITUTO TECNOLÓGICO
SUPERIOR DE MISANTLA
Planeación Didáctica de Programación Lógica y Funcional
Responsable del Proceso: Docente frente a grupo
Apartado: 7.1
Copia No.
Código: PD-SCC-1019
1.2.3
1.2.4
Disciplina de tipos.
Define el concepto de la
disciplina de tipos.
Funciones.
Explica el modelado de un
proceso que recibe valores
de entrada y retorna un valor
resultado (función) mediante
ejemplos.
Fecha de Versión: 23 de Enero de 2017
Versión No.: 02 Hoja : 5 de 12
Expone los diferentes lenguajes
de programación que
implementan la disciplina de tipos.
Implementa programas con
funciones concretas que sirvan
para evitar escribir el mismo
código varias veces y la
simplificación de los mismos.
Bibliografia:







Capacidad de generar
nuevas ideas.
Liderazgo.
Habilidad para trabajar
en forma autónoma.
Búsqueda del logro.
Recurso Didáctico:
Allen B. Tucker. Lenguajes de programación. ISBN: 9684221258
Grady Booch. Programación orientada a objetos, ISBN: 9684443528.
Stuart Russell, Norvig. Inteligencia Artificial: Un Enfoque Moderno, Segunda Edición. Prentice Hall
VER.02/08/12
Pizarrón blanco.
Computadora.
Cañon proyector.
F-SA-02
Toda copia en PAPEL es un "Documento No Controlado" a excepción del original.
2
2
INSTITUTO TECNOLÓGICO
SUPERIOR DE MISANTLA
Planeación Didáctica de Programación Lógica y Funcional
Responsable del Proceso: Docente frente a grupo
Apartado: 7.1
Copia No.
Código: PD-SCC-1019
5.2.
Unidad:
II
Tema:
Fecha de Versión: 23 de Enero de 2017
Versión No.: 02 Hoja : 6 de 12
Modelo de Programación Funcional
Objetivo de la Unidad (Competencia a Desarrollar por el Alumno)
Permitir que el estudiante conozca las ventajas y puntos débiles de la programación funcional; diseñar,
codificar, probar y depurar programas funcionales; identificar los principales ámbitos de aplicación para su
utilización como herramienta alternativa y complementaria en la solución de problemas.
No. Subtema
Descripción del Subtema
2.1
Introducción al modelo de
programación funcional.
2.2
El tipo de datos.
2.3
Funciones.
2.4
Intervalos.
2.5
Operadores.
VER.02/08/12
Actividades del Maestro
Explica las características de
la programación funcional y
el tipo de problemática que
resuelve.
Introduce y explica los
diferentes tipos de datos que
existen en la programacion
funcional.
Explica la forma de definir
funciones en un lenguaje de
programación funcional.
Define el concepto de
intervalo y la forma de
construirlos.
Define y explica los
operadores como funciones
y viceversa.
Sugerencia de Evaluación por Unidad
Éxamen escrito.
Prácticas.
Tareas/Trabajo.
Competencia a
Desarrollar
Actividad del Alumno
Elabora una tabla comparativa de
lenguajes de programación
funcional.

Esquematiza los tipos de datos
válidos de un lenguaje de
programación funcional.

Codifica funciones concretas en
un lenguaje de programación
fucional.
Realiza e implementa ejercicios
sobre intervalos que den como
resultado listas.
Realiza e implementa ejercicios
sobre operadores mediante
funciones.






Capacidad de análisis
y síntesis.
Capacidad
de
organizar y planificar.
Habilidad para buscar y
analizar
información
proveniente de fuentes
diversas.
Solución de problemas.
Toma de decisiones.
Trabajo en equipo.
Capacidad de aplicar
los conocimientos.
Habilidades
de
investigación.
F-SA-02
Toda copia en PAPEL es un "Documento No Controlado" a excepción del original.
No.
Sesiones
1
1
2
2
2
INSTITUTO TECNOLÓGICO
SUPERIOR DE MISANTLA
Planeación Didáctica de Programación Lógica y Funcional
Responsable del Proceso: Docente frente a grupo
Apartado: 7.1
Copia No.
Código: PD-SCC-1019
2.6
2.7
2.8
Aplicaciones de las listas.
Árboles.
Evaluación perezosa.
Explica la importancia de las
listas, establece su
estructura y las diferentes
formas de construcción.
Define y explica el concepto
de arbol; presenta y analiza
su construcción, clasificación
y aplicación; además
propone ejercicios para su
resolución.
Explica la forma en la que se
resuele una expresión bajo el
esquema de evaluación
perezosa.
Fecha de Versión: 23 de Enero de 2017
Versión No.: 02 Hoja : 7 de 12
Realiza ejercicios de listas y
programa una aplicación que
implique el uso de una lista.

Aplica los conceptos de la
programación funcional para
resolver un problema real, a partir
de un problema sencillo.





Capacidad de generar
nuevas ideas.
Liderazgo.
Habilidad para trabajar
en forma autónoma.
Búsqueda del logro.
Investiga las condiciones bajo las
cuales se utiliza la evaluación, y
resuelve ejercicios usando este
método.
Bibliografia:


2
4
2
Recurso Didáctico:
Alváro Tasistro, Jorge Vidart. Programación lógica y funcional. 1988.
Jeroen Fokker. Programación Funcional. Universidad de Utrecht - Departamento de Informática.
1996.
José A. Alonso Jiménez et al. Piensa en Haskell. Grupo de Lógica Computacional - Dpto. de Ciencias
de la Computación e Inteligencia Artificial. Universidad de Sevilla. Sevilla, 10 de Julio de 2012
Stuart Russell, Norvig. Inteligencia Artificial: Un Enfoque Moderno, Segunda Edición. Prentice Hall
VER.02/08/12
Pizarrón blanco.
Computadora.
Cañon proyector.
Software (Lenguaje de Programación:
Haskell)
F-SA-02
Toda copia en PAPEL es un "Documento No Controlado" a excepción del original.
INSTITUTO TECNOLÓGICO
SUPERIOR DE MISANTLA
Planeación Didáctica de Programación Lógica y Funcional
Responsable del Proceso: Docente frente a grupo
Apartado: 7.1
Copia No.
Código: PD-SCC-1019
5.3.
Unidad:
III
Tema:
Fecha de Versión: 23 de Enero de 2017
Versión No.: 02 Hoja : 8 de 12
Programación Lógica.
Objetivo de la Unidad (Competencia a Desarrollar por el Alumno)
Conoce las ventajas y desventajas del paradigma de programación lógica. Identifica los elementos de la
programación lógica.
No. Subtema
3.1
3.2
Descripción del Subtema
Repaso de la lógica de
primer orden.
Unificación y resolución.
VER.02/08/12
Actividades del Maestro
Revisa los conceptos
básicos de la lógica de
primer orden necesarios para
abordar los aspectos
formales de la programación
lógica.
Define y explica el principio
de resolución como
mecanismo de inferencia
utilizado en la programación
lógica; además del concepto
de unificación de dos
fórmulas bien formadas que
sintácticamente se volveran
equivalentes.
Sugerencia de Evaluación por Unidad
Éxamen escrito.
Tareas/Trabajo.
Exposiciones.
Competencia a
Desarrollar
Actividad dell Alumno
Realiza ejercicios de lógica de
primer orden.



Investiga los conceptos de
unificación y resolución en la
programación lógica; realiza
ejercicios de unificación y
resolución.



Capacidad de análisis
y síntesis.
Capacidad
de
organizar y planificar.
Habilidad para buscar y
analizar
información
proveniente de fuentes
diversas.
Solución de problemas.
Toma de decisiones.
Trabajo en equipo.
F-SA-02
Toda copia en PAPEL es un "Documento No Controlado" a excepción del original.
No.
Sesiones
2
4
INSTITUTO TECNOLÓGICO
SUPERIOR DE MISANTLA
Planeación Didáctica de Programación Lógica y Funcional
Responsable del Proceso: Docente frente a grupo
Apartado: 7.1
Copia No.
Código: PD-SCC-1019
3.3
3.4
Fecha de Versión: 23 de Enero de 2017
Versión No.: 02 Hoja : 9 de 12
Cláusulas de Horn.
Resolución SLD.
Análiza y define las cláusulas
de Horn y la metodología de
la resolución SLD.
Realiza ejercicios de conversión
de lógica de primer orden en
cláusulas de Horn y ejercicios de
resolución SLD.
Programación lógica con
clausulas de Horn.
Explica la estructura y definir
la construcción de las
cláusulas de Horn en la
programación lógica.
Programa la solución de un
problema real aplicando los
conceptos de las cláusulas de
Horn mediante la programación
lógica.
Bibliografia:










Capacidad de aplicar
los conocimientos.
Habilidades
de
investigación.
Capacidad de generar
nuevas ideas.
Liderazgo.
Habilidad para trabajar
en forma autónoma.
Búsqueda del logro.
4
4
Recurso Didáctico:
Stuart Russell, Norvig. Inteligencia Artificial: Un Enfoque Moderno, Segunda Edición. Prentice Hall
Jeroen Fokker. Programación Funcional. Universidad de Utrecht - Departamento de Informática.
1996.
Alváro Tasistro, Jorge Vidart. Programación lógica y funcional. 1988.
José A. Alonso Jiménez et al. Piensa en Haskell. Grupo de Lógica Computacional - Dpto. de Ciencias
de la Computación e Inteligencia Artificial. Universidad de Sevilla. Sevilla, 10 de Julio de 2012
VER.02/08/12
Pizarrón blanco.
Computadora.
Cañon proyector.
Software (Lenguaje de Programación)
F-SA-02
Toda copia en PAPEL es un "Documento No Controlado" a excepción del original.
INSTITUTO TECNOLÓGICO
SUPERIOR DE MISANTLA
Planeación Didáctica de Programación Lógica y Funcional
Responsable del Proceso: Docente frente a grupo
Apartado: 7.1
Copia No.
Código: PD-SCC-1019
5.4.
Unidad:
IV
Tema:
Fecha de Versión: 23 de Enero de 2017
Versión No.: 02 Hoja : 10 de 12
Modelo de Programación Lógica
Objetivo de la Unidad (Competencia a Desarrollar por el Alumno)
Realiza una aplicación dando solución a un problema del entorno usando el paradigma de la programación
lógica.
No. Subtema
4.1
4.2
Descripción del Subtema
Introducción al modelo de
programación lógica.
Semántica de los
programas lógicos.
Actividades del Maestro
Actividad dell Alumno
Describe los conceptos
básicos de la programación
lógica, explica las
características, el uso y
alcances del paradigma.
Introduce y define el
tratamiento de los lenguajes
lógicos y la representación
de su semántica.
Define los mecanismos para
representar cláusulas como
base de conocimiento.
Documenta y refuerza en varias
fuentes de información los temas
presentados por el docente.
Elabora un mapa mental a partir
de la información recabada.
4.3
Representación clausada
del conocimiento.
4.4
Consulta de una base de
cláusulas.
Define la manipulación de la
base de conocimiento en la
programación lógica.
4.5
Espacios de búsqueda.
Define los diferentes tipos de
espacios de busqueda
(profundidad y amplitud)
VER.02/08/12
Realiza ejercicios de análisis de la
semántica de los programas
lógicos realizados en Prolog.
Analiza, define y programa en
Prolog la base de conocimiento
de la aplicación del proyecto.
Realiza consultas, inserciones,
eliminaciones y actualizaciones
de la base de conocimiento del
proyecto en desarrollo.
Realiza ejercicios de espacios de
busqueda utilizando los árboles
de busqueda de soluciones.
Sugerencia de Evaluación por Unidad
Prácticas.
Exposiciones.
Proyecto.
Competencia a
Desarrollar
No.
Sesiones
2







Capacidad de análisis
y síntesis.
Capacidad
de
organizar y planificar.
Habilidad para buscar y
analizar información
proveniente de fuentes
diversas.
Solución de problemas.
Toma de decisiones.
Trabajo en equipo.
2
2
2
3
F-SA-02
Toda copia en PAPEL es un "Documento No Controlado" a excepción del original.
INSTITUTO TECNOLÓGICO
SUPERIOR DE MISANTLA
Planeación Didáctica de Programación Lógica y Funcional
Responsable del Proceso: Docente frente a grupo
Apartado: 7.1
Copia No.
Código: PD-SCC-1019
Programación lógica con
números, listas y arboles.
Explica los componentes
(numeros, listas y arboles)
de la programacon lógica en
el lenguaje de programación
Prolog.
4.7
Control de búsqueda en
programas lógicos.
Introduce las formas del
control de busqueda en la
programación lógica.
4.8
Manipulación de terminos.
Explica los tipos especiales
de los predicados no lógicos.
Predicados metalógicos.
Explica el concepto,
características, sintaxis y
semántica de los predicados
metalógico.
4.6
4.9
Fecha de Versión: 23 de Enero de 2017
Versión No.: 02 Hoja : 11 de 12
Desarrolla un proyecto con
aplicación real basado en
lenguaje lógico.
Elabora un cuadro sinóptico en el
que esquematiza los criterios que
usa el control de búsqueda en la
programación lógica.
Analiza el procedimiento que se
realiza para manipular términos,
así como los tipos de predicados.
Resuelve ejercicios de
ecuaciones de predicados
metalógicos.
Bibliografia:









3
Capacidad de aplicar
los conocimientos.
Habilidades
de
investigación.
Capacidad de generar
nuevas ideas.
Liderazgo.
Habilidad para trabajar
en forma autónoma.
Búsqueda del logro.
2
2
2
Recurso Didáctico:
Stuart Russell, Norvig. Inteligencia Artificial: Un Enfoque Moderno, Segunda Edición. Prentice Hall
Burnham, W. D. PROLOG . Programación y aplicaciones. Limusa, 1989. ISBN: 978-968-18-3012-0
Alváro Tasistro, Jorge Vidart. Programación lógica y funcional. 1988
VER.02/08/12
Pizarrón blanco.
Computadora.
Cañon proyector.
Software (Lenguaje de Programación:
Prolog)
F-SA-02
Toda copia en PAPEL es un "Documento No Controlado" a excepción del original.
INSTITUTO TECNOLÓGICO
SUPERIOR DE MISANTLA
Planeación Didáctica de Programación Lógica y Funcional
Responsable del Proceso: Docente frente a grupo
Apartado: 7.1
Copia No.
Código: PD-SCC-1019
Fecha de Versión: 23 de Enero de 2017
Versión No.: 02 Hoja : 12 de 12
6.- REVISION DE LA PLANEACION DIDACTICA
Esta planeación deberá ser revisada cada dos ciclos escolares a partir de la fecha de versión.
VER.02/08/12
Toda copia en PAPEL es un "Documento No Controlado" a excepción del original.
F-SA-02