manual de prolog
TRANSCRIPT
Universidad Regional Autónoma de los Andes
–UNIANDES–
FACULTAD DE SISTEMAS MERCANTILES
CARRERA DE SISTEMAS
INTELIGENCIA ARTIFICIAL
Tema: Manual de Instalación del Programa Prolog
Estudiante: Carlos Cifuentes
Docente: Ing. Jorge Yaguar
Fecha: 10/05/2014
Contenido
INTRODUCCIÓN.- .................................................................................................................................. 1
OBJETIVO.- .......................................................................................................................................... 1
MARCO TEÓRICO.- ................................................................................................................................ 1
CONCLUSIONES Y RECOMENDACIONES.- ................................................................................................... 5
BIBLIOGRAFÍA (APA 6).- ......................................................................................................................... 6
CARRERA DE SISTEMAS
1
Introducción.-
Prolog es un lenguaje de programación diseñado para representar y utilizar el conocimiento que
se tiene sobre un determinado dominio. Los programas en Prolog responden preguntas sobre el
tema del cual tienen conocimiento.
Forma parte de lo que se conoce como programación declarativa. En lenguajes tradicionales se
indica cómo resolver un problema, en la programación lógica se establecen hechos reales y
reglas para así no saber como resolver el problema, sino que hacer para resolverlo
Objetivo.-
El objetivo fundamental demostrar cómo se da el paso desde el concepto de programación
lógica\ pura" estudiado en el tema anterior a un lenguaje de programación \real". En efecto, el
lenguaje Prolog se puede ver como una extensión dela programación lógica pura, en el sentido
de que, además de permitir programar de acuerdo con el paradigma de la programación lógica,
incorpora una serie de elementos adicionales cuyo objetivo es ofrecer una herramienta de
programación que sea útil en la práctica.
Marco teórico.-
Prolog es un lenguaje de programación simple, pero poderoso. Se basa en nociones matemáticas
de relaciones de inferencia. Es un lenguaje declarativo e interpretado, esto quiere decir que el
lenguaje se usa para representar conocimientos sobre un determinado dominio y las relaciones
entre objetos de ese dominio.
Prolog es una aplicación de fácil instalación que nos va a permitir realizar tareas simultáneas.
Un programa se ejecuta cuando el usuario introduce una pregunta un conjunto de términos que
deben ser todos ciertos. Los hechos y las reglas de la base de datos se usan para determinar
cuáles sustituciones de variables de la pregunta (llamadas unificación) son congruentes con la
información de la base de datos.
Lisp es injustamente un gran desconocido especialmente en el mundo hispano e incluso dentro
del software libre. Ciertos análisis poco rigurosos hacen parecer que Lisp es escasa-mente usado.
Características del lenguaje:
Prolog es un lenguaje de programación seminterpretado. Su funcionamiento es muy similar a
Java. Por eso, un entorno de desarrollo Prolog se compone de:
Un compilador. Transforma el código fuente en código de byte. A diferencia de Java, no
existe un standard al respecto. Por eso, el código de byte generado por un entorno de
desarrollo no tiene por qué funcionar en el intérprete de otro entorno.
Un intérprete. Ejecuta el código de byte.
UN shell o top-level. Se trata de una utilidad que permite probar los programas, depurarlos,
etc. Su funcionamiento es similar a los interfaces de línea de comando de los sistemas
operativos.
Una biblioteca de utilidades. Estas bibliotecas son, en general, muy amplias. Muchos
entornos incluyen unas bibliotecas standard-ISO que permiten funcionalidades básicas
como manipular cadenas, entrada/salida, etc.
Elementos del lenguaje
En esta lección explicaremos como reconocer los diferentes elementos que componen un
programa fuente en Prolog. Como observará en breve, Prolog carece de declaraciones en el
sentido imperativo: secciones, declaraciones de tipo, declaraciones de variable, declaraciones de
procedimientos, etc.
Después de leer está sección deber ser capaz de distinguir variables y términos lógicos entre la
"maraña" de caracteres que hay en un programa fuente.
Comentarios
Los comentarios en Prolog se escriben comenzando la línea con un símbolo de porcentaje.
Ejemplo:
Variables lógicas
Las variables en Prolog no son variables en el sentido habitual, por eso las llamamos variables
lógicas. Se escriben como una secuencia de caracteres alfabéticos comenzando siempre por
mayúscula o subrayados.
Términos
Los términos son el único elemento del lenguaje, es decir, los datos son términos, el código son
términos, incluso el propio programa es un término. No obstante, es habitual, llamar término
solamente a los datos que maneja un programa.
Un término se compone de un factor seguido de cero a N argumentos entre paréntesis y
separados por comas. Los números enteros o decimales sin restricciones de tamaño también son
términos.
Operadores
Algunos factores pueden estar declarados como operadores, bien de manera predefinida, o bien
por el programador. Los operadores simplemente sirven para escribir términos unarios o
binarios de una manera más cómoda. Por ejemplo, un functor definido como operador infijo es
la suma (+). Así, la expresión a+b es perfectamente válida, aunque en realidad no es más que el
término +(a,b).
Ejemplo de programa en prolog:
El siguiente ejemplo es un sencillo programa en prolog de cómo usar la base de conocimientos y
las consultas. Así también se explicara la forma en que prolog trabaja.
Primero tenemos un tipo de posibles consultas del programa una vez compilado.
En si hay un sinnúmero de formas de la utilización de este lenguaje, ya que este lenguaje brinda
beneficios, una mejor programación etc.
Conclusiones y Recomendaciones.-
- Respecto a la aplicación de PROLOG para la construcción de sistemas que apoyen
actividades educativas, en números anteriores del Boletín de Informática Educativa se
han dado criterios específicos para mejor aprovechamiento de esta tecnología
- PROLOG (o cualquier otra herramienta) es la dimensión social de la interacción con el
computador que comienza a plantear nuevos retos y posibilidades sobre el enfoque de
individualización promovido en el pasado.
Bibliografía (apa 6).-
http://www.csupomona.edu/~jrfisher/www/prolog_tutorial/contents.html
Colin Baker ‘home page’:
http://perso.wanadoo.fr/colin.barker/index.htm
Swin-Prolog:
http://www.swi-prolog.org/
Strawberry Prolog:
http://www.dobrev.com/
El club de los caminantes:
http://caminantes.metropoliglobal.com/web/informatica/prolog.htm
Programación lógica:
http://www.geocities.com/v.iniestra/apuntes/pro_log/
Programing in Prolog:
http://cwis.kub.nl/~fdl/general/people/rmuskens/courses/prolog/