Paradigma logico un poco de nomenclatura

De Uqbar wiki

Resumen

  1. Individuo
    • Individuo simple
      • Átomo
      • Número
    • Individuo compuesto
      • Lista
      • Functor
  2. Predicado
    • Propiedad
    • Relación
  3. Cláusula
    • Hecho
    • Regla
  4. Consulta
    • Individual
    • Existencial

== Base de conocimiento = programa de ejemplo ==

 hombre(socrates).  hombre(solon).  hombre(pericles).  hombre(arquimedes).  mortal(X):-hombre(X).  ciudad(atenas).  ciudad(siracusa).  vive(socrates,atenas).  vive(solon,atenas).  vive(pericles,atenas).  vive(arquimedes,siracusa).  nacio(solon,-634).  nacio(pericles,-495).  nacio(arquimedes,-287).  sonConciudadanos(P1,P2):- vive(P1,C), vive(P2,C).

Individuos

Los individuos son aquellas cosas sobre las que versa el conocimiento que queremos expresar. En el ejemplo aparecen varios individuos: socrates, atenas, solon, arquimedes, siracusa, -634, -287. Individuo es cualquier entidad acerca de la cual nos interese estudiar sus características o sus relaciones con otros individuos. P.ej. si hiciéramos un sistema para controlar correlatividades entre las materias de la facultad, tendríamos un individuo para representar cada materia. Los individuos se dividen en

Predicados

Los predicados son las cosas que queremos decir (o predicar, je) acerca de los invividuos. En este ejemplo los predicados que aparecen son: mortal, hombre, vive, nacio, sonConciudadanos. Volviendo al ejemplo del sistema de correlatividades, seguramente tendría un predicado que relacione cada alumno con cada materia que cursó, y otro que indique la correlatividad entre dos materias relacionando una materia con cada requisito.

A la cantidad de parámetros que lleva cada predicado la llamamos su aridad. En el ejemplo, los predicados hombre, mortal y ciudad tienen aridad 1, mientras que vive y sonConciudadanos tienen aridad 2. A partir de su aridad podemos separar los predicados en:

Cláusulas

Cada una de las sentencias = unidades de información de una base de conocimiento. Las cláusulas deben terminar con un punto . El ejemplo tiene 15 cláusulas. Cada cláusula participa en la definición de un predicado, define ciertos casos para los que un predicado se verifica. En el ejemplo:

Cada cláusula puede ser:

 mortal(X):- hombre(X).

la condición es que un cierto X sea mortal, y lo que definimos es que si se cumple la condición entonces el predicado mortal se cumple para el mismo X. Una regla se compone de una cabeza (mortal(X)) y un cuerpo (hombre(X)), unidos por el símbolo :- que denominamos cuello. Si vemos una regla como una implicación con antecedente y consecuente, está invertida respecto a lo que se vio al estudiar lógica: la cabeza es el consecuente, el cuerpo es el antecedente.

Consultas

Son la forma de usar un programa en lógico, se hace una consulta, y se obtiene una o varias respuestas.

Existen dos tipos de consulta:

Individuales

se hacen sobre individuos específicos. Por ejemplo:

 ?- mortal(socrates).
 ?- sonConciudadanos(socrates,solon).

Existenciales

Se verifica si existe algún individuo que satisfaga la consulta. Además, Prolog a veces nos sabe dar "ejemplos" de individuos que hacen verdadera la consulta. Por ejemplo:

 ?- mortal(X).
 ?- sonConciudadanos(X,Y).
 ?- sonConciudadanos(solon,Y).

En el segundo caso cada respuesta es un par de conciudadanos (o sea, de individuos relacionados por el predicado sonConciudadanos, mientras que en el tercero cada respuesta es un conciudadano de Solón.
En este tipo de consultas aparecen variables o incógnitas. Por ese motivo este tipo de consultas también son llamadas consultas variables.

El paradigma lógico trabaja con el principio de Universo Cerrado.

Latest update on July 17, 2017 by GitHub