Categories
General

Práctica Sesión 5

Sesión correspondiente al mismo dea de teoria osea (19/10/2010).

Hoy Carlos no ha avanzado en la teoria y ha dejado la clase para explicar posibles errores o avisos de compilador que nos pueden aparacer al realizar el programa en prolog.

También se han resuelto dudas que habia sobre la fase 3 del programa

Entre los mensajes que nos puede sacar prolog de error o aviso están los siguientes:

Correcciones:
-Si no escribamos correctamente una regla o predicado, prolog nos ayudará y nos muestrará la posible corrección, si entiende algo de lo que hemos puesto, dándonos la opción de no ejecutar la corrección o de ejecutarla, en cuyo caso ejecutará el predicado o regla que él crea correcto.
?- vcino(carles_logicus).
Correct to: “vecino(carles_logicus)”? yes

Menú de ayuda
-Aparece al pulsar Ctrl+C o una tecla sin funcionamiento definido.
Action (h for help) ? Options
a: abort b: break
c: continue e: exit
g: goals t: trace

Cláusulas separadas
-Este mensaje nos aparecerá al compilar pero no es un error, nos indica que no tenemos todas las sentencias de “X” predicado juntas. Quizá tengamos un “vecino” en la primera línea y después de otros predicados, el siguiente “vecino”.
Warning: Clauses of vecino/1 are not together in the
source-file

Procedimientos indefinidos
-Llamanda a una “función” con el número de argumentos incorrecto.
-Ejemplo
?- lindes_zona(‘Bajo B’, X, Y, Z).
ERROR: Undefined procedure: lindes_zona/4
ERROR: However, there are definitions for: lindes_zona/5

Hemos puesto 4 argumentos pero “lindes_zona” tiene 5.

Variables Singleton
-Se inicializan a algún valor y pero no se utilizan en ninguna operación. Es decir, el intérprete nos avisa de que esa variable no se utiliza en ninguna parte.

Ejemplo:

quien_grita :- ente(persona,P,H), ente(monstruo,M,H),
write(‘aaaahhh’).

P y M generarán el mensaje de “Singleton Variable”.

Categories
General

Teoria sesión 5

Hola a tod@s estra entrada corresponde a lo dado en la sesión 5 del (19-10-2010) en esta sesión la profesora a puesto el turbo pero intentaré resumirlo todo lo mejor que pueda.

Hemos comenzado terminando de ver los fundamentos teóricos para validar semánticamente un razonamiento mediante:

  • Interpretacion de los cuantificadores

Los cuantificadores se interpretan en el dominio de referencia D de la siguiente forma:

a) Una fórmula cuantificada universalmente respecto a “x” es “V” si para cualquier elemento del dominio asignado a “x”  la                       fórmula es “V”. “F” en otro caso.   (V= verdadera; F= falsa)

b)Una fórmula cuantificada existencialmente respecto de “x” es “V” si para algún elemento del dominio asignado a “x”                                  la fbf  es “V”. “F” si todos son falsos.

  • Tipos de interpretaciones

Con la ayuda de las interpretaciones vamos a descubrir si un razonamiento es verdadero o no. Existen dos posibles tipos de                 interpretaciones:

Interpretación modelo: una interpretación de una fórmula bien formada es modelo si bajo esta interpretación la fórmula se                    interpreta como verdadera.

Interpretación contramodelo o contraejemplo: una interpretación es contramodelo si bajo esta interpretación la fórmula se                 interpreta como falsa.

  • Número de interpretaciones de una fórmula

El número de interpretaciones que tiene una fórmula depende del número de subfórmulas atómicas distintas que aparezcan en            dicha fórmula.

Para fórmulas del lenguaje de proposiciones tenemos del orden de 2n interpretaciones para una fórmula de n variables.

Ejemplo: p ∧ q → r ∨ q

El número de interpretaciones es 23, ya que tiene n=3 variables proposicionales distintas.

  • Clasificación semántica de fórmulas lógicas atendiendo a sus interpretaciones

Clasificación semántica de una fórmula atómica: verdadera o falsa.

Clasificación semántica de una fórmula molecular: Se clasificará en función del conjunto de todas las interpretaciones de las que          dispone dicha fórmula. Una fórmula molecular “A” se podrá clasificar semánticamente como:

-Tautología o válida: cuando la fórmula “A” es verdadera para toda interpretación “I”(toda interpretación es modelo).

-Contradicción o no válida: cuando la fórmula “A” no es verdadera bajo ninguna interpretación (toda interpretación es                             contramodelo).

-Contingencia o Indeterminación: cuando existe al menos una interpretación que hace que la fórmula “A” se interprete como                verdadera y al menos otra interpretación que la haga falsa (algunas “I” son modelos y otras contramodelos).

  • Consecuencia lógica

Es la relación entre las premisas y la conclusión de un argumento deductivamente correcto. Se caracteriza porque es necesaria            y formal. Según la teoría semántica una conclusión es una consecuencia lógica de las premisas cuando no es posible que las                    premisas sean verdaderas y la conclusión falsa, o cuando todo modelo de las premisas es también un modelo de la conclusión.

A continuación hemos seguido la clase viendo los métodos de las tablas de verdad y el método del contraejemplo:

  • Métodos de las tablas de verdad

Una tabla de verdad es una tabla que muestra el valor semántico de una fbf molecular para cada combinación de valores de                   verdad que se pueda asignar a sus componentes (fbf atómicas y conectores).

Para hacer una tabla de verdad se crea un cuadro de doble entrada que tendrá tantas filas como interpretaciones disponga la                 fórmula. Se coloca una columna por cada variable que aparezca en la fbf.

Una vez sabemos esto, vamos rellenando cada columna de la siguiente forma:

1a variable: 2n/2 valores V seguidos de 2n/2 valores F; hasta 2n.

2a variable: 2n/22 valores V seguidos de 2n/22 valores F; hasta 2n.

nava variable: 1 valor V seguidos de 1 valor de F; hasta 2n.

  • Método del contraejemplo

Un contraejemplo es un ejemplo que prueba la falsedad de un enunciado. Un contraejemplo para un razonamiento es la existencia de una interpretación que asigne valores verdaderos a las premisas y falso a la conclusión.

Para comprobar la existencia de un contraejemplo en la resolución de un problema se supone la existencia de dicha interpretación en el problema y se estudia el comportamiento de cada una de las fórmulas del argumento, buscando posibles contradicciones.

Se parte del supuesto de que es  un razonamiento incorrecto y si no conseguimos demostrarlo entonces será correcto.

Por hoy he terminado, otro día más, pero no mejor, aqui en el blog de averiguar si estudir lógica es lógico.