Swi-Prolog

SWI-Prolog es un compilador Prolog de Dominio Público, que como el anterior sigue el estándar de Edinburgh. Ha sido diseñado e implementado por Jan Wielemaker, del departamento Social Science Informatics (SWI) de la Universidad de Amsterdam. El software lo podemos encontrar en la siguiente dirección:

https://www.swi.psy.uva.nl/projects/SWI-Prolog

La plataforma original sobre la que se desarrolló fue para Unix, aunque en la actualidad podemos encontrar versiones para Linux y para PC que se ejecutan bajo el entorno Windows (Windows 3.1., Windows 95 y Windows NT). Es potente y flexible (permite integración con C), y tiene las ventajas sobre el anterior de que, de momento, se mantiene actualizado y se ejecuta sobre un entorno gráfico más agradable para el usuario.

Posee un sistema de ayuda en línea que se puede consultar mediante los predicados:

?- help.

?- help(Termino).

?- apropos(Cadena).

 

También se puede conseguir una versión escrita del manual de referencia, tanto en formato PostScript como en html, en la misma dirección.

Para ejecutarlo, una vez iniciado Windows, basta con hacer doble click sobre el icono correspondiente (fig. 7).

 

Figura 7. Icono de Swi-Prolog

 

Abriéndose la ventana de SWI-Prolog como se muestra en la figura 8.

         Figura 8. Entorno de Swi-Prolog

Al estar desarrollado sobre plataforma Unix, reconoce algunas órdenes del sistema operativo que nos pueden ser de utilidad para la gestión de los archivos:

cd cambiar el directorio de trabajo

pwd muestra el directorio de trabajo

ls muestra el contenido del directorio de trabajo

...

 

Swi-Prolog ofrece un entorno de Prolog y una caja de herramientas de gráficos denominados: XPCE, es muy utilizado en aplicaciones del mundo real, se usa ampliamente en la investigación, en la educación, es muy útil para desarrollar sistemas expertos basados en reglas, por lo que en este trabajo se genera la aplicación en Swi-Prolog. El sistema experto permite detectar diversos tipos de cáncer usando  lógica de predicados, las reglas generadas usan encadenamiento hacia delante para obtener sus conclusiones.