Hoy les comparto una breve introducción al lenguaje de Programación Prolog.
La palabra PROLOG proviene del acrónimo (PROgrammation LOGique) o programación lógica.
Es un lenguaje de programación que fue introducido por la Universidad de Aix-Marseille (Marsella, Francia) por los profesores Alain Colmerauer y Philippe Roussel al inicio de los 70's.
Sabiendo lo anterior, pasemos a la sintaxis. Prolog se compone por los siguientes elemento:
-Constantes
-Variables
-Hechos
-Relaciones
-Reglas
-Consultas
Constantes
Pueden ser números enteros o flotantes, cadenas de caracteres en minúsculas o cadenas de caracteres entre comillas ("").
Ejemplos: 56, 873.123, hola, adiós, "Hola"
Variables
Cadena de caracteres que comienza con mayúscula o con "_".
Ejemplos: X, Juan, _hola, _
Hechos
Un hecho es una afirmación y se conforma por un predicado, seguido de unos paréntesis, entre los que se coloca un sujeto y posterior a los paréntesis se coloca un punto.
predicado(sujeto).
Ejemplo: hombre(luis).
Y se lee, Pedro es hombre.
Relaciones
Las relaciones dentro de prolog se conforman de un predicado, seguido de unos paréntesis, entre los que se coloca un sujeto seguido de una coma "," y seguido de otro sujeto. Posterior a los paréntesis se coloca un punto.
predicado(sujeto1,sujeto2).
Ejemplo: progenitor(luis,juan).
Reglas
Las reglas son suposiciones en base a lo que ya sabemos (hechos) y se componen de un hecho sin punto al final, seguido de dos puntos y un guión medio (":-") que significa "entonces" o "si", seguido de un uno o mas hechos o reglas separados por comas (",") o punto y coma (";"), donde la coma es el operador lógico "and" y el punto y coma es el operador lógico "or".
predicado(sujeto1,...,sujetoN) :- predicado1(sujeto1,...,sujetoN) , predicado2(sujeto1,...,sujetoN) ; predicado3(sujeto1,...,sujetoN).
Ejemplo: padre(luis,juan) :- progenitor(luis,juan) , hombre(luis).
El ejemplo anterior se lee, Luis es padre de Juan si, Luis es progenitor de Juan y Luis es hombre.
Consultas
Una consulta en prolog se compone de el predicado de una regla, seguido de paréntesis, que contienen los sujetos o variables requeridas por dicha regla, y los un punto posterior a los paréntesis.
regla(sujeto1,sujeto2,variable1).
Ejemplo: padre(luis,juan). padre(X,Y). padre(luis,X). padre(X,juan).
Y se lee, ¿Es Luis, padre de Juan?
Hay dos maneras de realizar una consulta:
1- Mandando como parámetro valores específicos como en el ejemplo 1, donde se obtendrá como resultado "True" o "False", True si es verdad según los hechos y reglas establecidas y False en caso contrario.
padre(luis,pedro).
False
2- Mandando una o mas variables como en los ejemplos posteriores, donde se obtendrá como resultado todos los posibles valores que pueden llegar a tomar dichas variables:
padre(luis,X).
X=juan
Dato extra
Los comentarios van antecedidos del símbolo "%".
% Esto es un comentario.
Cuando se utiliza el operador lógico AND (","), se debe cumplir la condición tanto de la izquierda como de la derecha del signo para que sea verdadero el resultado.
Cuando se utiliza el operador lógico OR (";"), el resultado solo es falso cuando la condición tanto de la izquierda como la de la derecha son falsas.
Si queremos comparar dos elementos utilizaremos "==", si ambos elementos son iguales, retorna verdadero, si no es así, retorna falso.
El operador "not" nos sirve para negar una comparación, un hecho, una regla, etc. Y va antes de cualquiera de estos elementos.
not(X==Y)
Donde se indica que esa condición sera verdadera si X es diferente de Y.
Esto es todo por este tutorial, espero que les sea de mucha utilidad, cualquier cosa no duden en comentarla y de antemano muchas gracias.
Fuente:
http://www.itnuevolaredo.edu.mx/takeyas/apuntes/Inteligencia%20Artificial/Apuntes/IA/Prolog.pdf Consulta el 23 de Agosto del 2015.
http://ce.azc.uam.mx/profesores/mjm/pub/prolog.pdf Consulta el 23 de Agosto del 2015.
Mostrando entradas con la etiqueta Prolog. Mostrar todas las entradas
Mostrando entradas con la etiqueta Prolog. Mostrar todas las entradas
domingo, 23 de agosto de 2015
Instalar SWI-Prolog en Linux
Hoy les comparto un mini tutorial sobre como instalar SWI-Prolog en Linux.
Pero antes que comenzar. ¿Qué es SWI-Prolog?
SWI-Prolog es una implementación en código abierto del lenguaje de programación Prolog, comúnmente utilizado para la enseñanza y aplicaciones web semánticas.
Sabiendo eso, comencemos.
Abrimos nuestra terminal y escribimos el siguiente comando para instalar software-properties-common ya que lo requiere SWI-Prolog:
Ya que se genero el repositorio lo siguiente es actualizar el sistema para que se considere el cambio en el repositorio que generamos:
Y por ultimo instalamos SWI-Prolog con el siguiente comando:
Y con esto, SWI-Prolog estara listo para utilizarse, podemos comprobar si se instalo correctamente con el siguiente comando:
Para ejecutar SWI-Prolog basta con escribir en nuestra terminal:
Una ves que contemos con nuestro archivo .pl basta con acceder en la terminar a la ubicación de nuestro archivo .pl y ejecutar el siguiente comando:
Espero y este mini tutorial les sea de mucha utilidad para instalar y utilizar SWI-Prolog.
Cualquier duda o aclaración no duden en comentarla, y de antemano muchas gracias.
Fuente:
https://www.nuigalway.ie/information-solutions-services/servicesforstaff/software/softwarea-z/s-t/swi-prolog/ Consultado el 23 de Agosto del 2015.
Pero antes que comenzar. ¿Qué es SWI-Prolog?
SWI-Prolog es una implementación en código abierto del lenguaje de programación Prolog, comúnmente utilizado para la enseñanza y aplicaciones web semánticas.
Sabiendo eso, comencemos.
Abrimos nuestra terminal y escribimos el siguiente comando para instalar software-properties-common ya que lo requiere SWI-Prolog:
sudo apt-get install software-properties-commonUna vez hecho esto, generamos un repositorio con:
sudo apt-add-repository ppa:swi-prolog/stableNos pedira que oprimamos la tecla "Enter" para continuar.
Ya que se genero el repositorio lo siguiente es actualizar el sistema para que se considere el cambio en el repositorio que generamos:
sudo apt-get updateActualizar el sistema puede tomar un tiempo.
Y por ultimo instalamos SWI-Prolog con el siguiente comando:
sudo apt-get install swi-prologNos pedira seleccionar la tecla "Enter" para continuar la instalación.
Y con esto, SWI-Prolog estara listo para utilizarse, podemos comprobar si se instalo correctamente con el siguiente comando:
swipl --versionEste comando nos mostrara la versión de nuestro SWI-Prolog.
Para ejecutar SWI-Prolog basta con escribir en nuestra terminal:
swiplPara utilizarlo de manera sencilla, recomiendo generar nuestro archivo de Prolog (.pl), con cualquier editor de texto y guardarlo con la extensión .pl
Una ves que contemos con nuestro archivo .pl basta con acceder en la terminar a la ubicación de nuestro archivo .pl y ejecutar el siguiente comando:
swipl -f archivo.plY solo sustituimos la palabra "archivo" por el nombre de nuestro archivo y con esto ya podemos hacer consultas y probar nuestro programa.
Espero y este mini tutorial les sea de mucha utilidad para instalar y utilizar SWI-Prolog.
Cualquier duda o aclaración no duden en comentarla, y de antemano muchas gracias.
Fuente:
https://www.nuigalway.ie/information-solutions-services/servicesforstaff/software/softwarea-z/s-t/swi-prolog/ Consultado el 23 de Agosto del 2015.
Suscribirse a:
Entradas (Atom)