LMF2013: Cláusulas en Haskell

En la clase de hoy del curso de Lógica matemática y fundamentos (de 3º de Grado en Matemáticas) se ha comentado las soluciones de los ejercicios sobre la implementación en Haskell de las cláusulas.

Las soluciones de los ejercicios se muestran a continuación. En los ejercicios se usa el módulo SintaxisSemantica desarrollado en la clase del día 27 de febrero y el módulo FormasNormales desarrollado en la clase del día 8 de mayo.
Read More “LMF2013: Cláusulas en Haskell”

LMF2013: Formas normales conjuntivas y disyuntivas en Haskell

En la clase de hoy del curso de Lógica matemática y fundamentos (de 3º de Grado en Matemáticas) se ha comentado las soluciones de los ejercicios sobre la implementación en Haskell de las formas conjuntivas y disyuntivas.

Las soluciones de los ejercicios se muestran a continuación. En los ejercicios se usa el módulo SintaxisSemantica desarrollado en la clase del día 27 de febrero.
Read More “LMF2013: Formas normales conjuntivas y disyuntivas en Haskell”

I1M2012: El problema de las N reinas en Haskell

En la clase de hoy de Informática de 1º del Grado en Matemáticas hemos estudiado el problema de las reinas (consistente en colocar N reinas en un tablero de dimensiones N por N de forma que no se encuentren más de una en la misma línea: horizontal, vertical o diagonal) y su programación en Haskell.

El código del problema de las N reinas es
Read More “I1M2012: El problema de las N reinas en Haskell”

I1M2012: Ejercicios sobre matrices en Haskell (2)

En la clase hoy Informática de 1º del Grado en Matemáticas hemos continuando comentado las soluciones de los ejercicios sobre vectores y matrices en Haskell de la relación 26. Concretamente, de los ejercicios para

  • calcular la traspuesta de una matriz (ej. 14),
  • decidir si una matriz es cuadrada (ej. 15),
  • decidir si una matriz es simétrica (ej. 16),
  • calcular la diagonal principal de una matriz (ej. 17),
  • calcular la diagonal secundaria de una matriz (ej. 18) y
  • calcular la submatriz obtenida suprimiendo una fila y una columna (ej. 19).

Los ejercicios de la relación, junto con las soluciones de los 19 primeros, se muestran a continuación
Read More “I1M2012: Ejercicios sobre matrices en Haskell (2)”

I1M2012: División y factorización de polinomios mediante la regla de Ruffini en Haskell (2)

En la clase de hoy de Informática de 1º del Grado en Matemáticas se han explicado las soluciones de los ejercicios de la relación 25. El objetivo de la relación es implementar la regla de Ruffini y sus aplicaciones utilizando las implementaciones del TAD de polinomio estudiadas en el tema 21.

En los ejercicios se usan las siguientes librerías:

  • PolRepTDA: Implementación de los polinomios mediante tipos de datos algebraicos.
  • PolRepDispersa: Implementación de los polinomios mediante listas dispersas.
  • PolRepDensa: Implementación de los polinomios mediante listas densas.
  • PolOperaciones: Operaciones con el TAD de los polinomios.

Los ejercicios, y sus soluciones, se muestran a continuación.
Read More “I1M2012: División y factorización de polinomios mediante la regla de Ruffini en Haskell (2)”