LMF2017: Sintaxis y semántica de la lógica proposicional

La clase de hoy del curso Lógica matemática y fundamentos ha tenido dos partes.

En la primera parte se ha presentado un panorama de la lógica y sus aplicaciones. También se ha explicado cómo formalizar en lógica proposicional argumentos expresados en lenguaje natural. Para practicar con las formalizaciones se ha presentado APLI2.

En la segunda parte se ha explicado la sintaxis de la lógica proposicional insistiendo en el carácter inductivo del tipo de datos de las fórmulas proposicionales, del procedimiento de definiciones por recursión sobre las fórmulas y de demostración de propiedades por inducción sobre las fórmulas.

Finalmente, se ha iniciado el estudio de la semántica de la lógica proposicional definiendo los booleanos, las interpretaciones, las funciones de verdad de las conectivas y mostrando cómo a partir de dichos conceptos se puede calcular el valor de verdad de una fórmula respecto de una interpretación.

A partir de lo anterior se han estudiado los modelos de fórmulas, la clasificación semántica de fórmulas (satisfacibles, insatisfacibles, tautologías, contradictorias y contingentes), los problemas SAT y TAUT. Finalmente, se han visto dos algoritmos para la solución de los problemas SAT y TAUT: tablas de verdad y método de Quine.

Otros conceptos definidos son equivalencia de fórmulas, modelos de conjuntos de fórmulas, conjuntos consistentes e inconsistentes y consecuencia lógica.

Las transparencias de esta clase son las páginas 1-30 del tema 1.

I1M2016: Matrices en Haskell

En la clase de hoy del curso de Informática de 1º del Grado en Matemáticas se ha estudiado cómo trabajar con tablas en Haskell usando el módulo Data.Array.

En la primera parte se ha explicado El tipo predefinido de las tablas (“arrays”) se han estudiado las funciones sobre índices (range, index, inRange, rangeSize) y sobre tablas (array, (!), bounds, indices, elems, assocs, (//), listArray y accumArray). También se han estudiado ejemplos de definiciones con dichas funciones.

En la segunda parte se han comentado las soluciones de los siguientes ejercicios de la Relación 15:

Read More “I1M2016: Matrices en Haskell”

RA2016: Deducción natural en lógica de primer orden con Isabelle/HOL

En la clase de hoy del curso de Razonamiento automático se ha presentado la deducción natural en lógica de primer orden con Isabelle/HOL. La presentación se basa en los ejemplos del tema 8 del curso de Lógica informática, que a su vez se basa en el capítulo 2 del libro de de Huth y Ryan Logic in Computer Science (Modelling and reasoning about systems).

La página al lado de cada ejemplo indica la página de las transparencias donde se encuentra la demostración.

Para cada ejemplo se presentan distintas demostraciones. La primera intenta reflejar la demostración de las transparencias, las siguientes van eliminando detalles de la prueba hasta la última que es automática.

A los largos de los ejemplos se van comentando los elementos del lenguaje conforme van entrando en el juego.

La teoría con los ejemplos presentados en la clase es la siguiente:
Read More “RA2016: Deducción natural en lógica de primer orden con Isabelle/HOL”