Manual de Prolog
Manual de Prolog
Manual de Prolog
UNIANDES
FACULTAD DE SISTEMAS MERCANTILES
CARRERA DE SISTEMAS
INTELIGENCIA ARTIFICIAL
Tema: Manual de Instalacin del Programa Prolog
Estudiante: Carlos Cifuentes
Docente: Ing. Jorge Yaguar
Fecha: 10/05/2014
Contenido
INTRODUCCIN.- .................................................................................................................................. 1
OBJETIVO.- .......................................................................................................................................... 1
MARCO TERICO.- ................................................................................................................................ 1
CONCLUSIONES Y RECOMENDACIONES.- ................................................................................................... 5
BIBLIOGRAFA (APA 6).- ......................................................................................................................... 6
CARRERA DE SISTEMAS
1
Introduccin. -
Prolog es un lenguaje de programacin diseado 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 programacin declarativa. En lenguajes tradicionales se
indica cmo resolver un problema, en la programacin lgica se establecen hechos reales y
reglas para as no saber como resolver el problema, sino que hacer para resolverlo
Objetivo. -
El objetivo fundamental demostrar cmo se da el paso desde el concepto de programacin
lgica\ pura" estudiado en el tema anterior a un lenguaje de programacin \real". En efecto, el
lenguaje Prolog se puede ver como una extensin dela programacin lgica pura, en el sentido
de que, adems de permitir programar de acuerdo con el paradigma de la programacin lgica,
incorpora una serie de elementos adicionales cuyo objetivo es ofrecer una herramienta de
programacin que sea til en la prctica.
Marco terico. -
Prolog es un lenguaje de programacin simple, pero poderoso. Se basa en nociones matemticas
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 aplicacin de fcil instalacin que nos va a permitir realizar tareas simultneas.
Un programa se ejecuta cuando el usuario introduce una pregunta un conjunto de trminos que
deben ser todos ciertos. Los hechos y las reglas de la base de datos se usan para determinar
cules sustituciones de variables de la pregunta (llamadas unificacin) son congruentes con la
informacin de la base de datos.
Lisp es injustamente un gran desconocido especialmente en el mundo hispano e incluso dentro
del software libre. Ciertos anlisis poco rigurosos hacen parecer que Lisp es escasa-mente usado.
Caractersticas del lenguaje:
Prolog es un lenguaje de programacin seminterpretado. Su funcionamiento es muy similar a
Java. Por eso, un entorno de desarrollo Prolog se compone de:
Un compilador. Transforma el cdigo fuente en cdigo de byte. A diferencia de Java, no
existe un standard al respecto. Por eso, el cdigo de byte generado por un entorno de
desarrollo no tiene por qu funcionar en el intrprete de otro entorno.
Un intrprete. Ejecuta el cdigo 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 lnea 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 bsicas
como manipular cadenas, entrada/salida, etc.
Elementos del lenguaje
En esta leccin 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.
Despus de leer est seccin deber ser capaz de distinguir variables y trminos lgicos entre la
"maraa" de caracteres que hay en un programa fuente.
Comentarios
Los comentarios en Prolog se escriben comenzando la lnea con un smbolo de porcentaje.
Ejemplo:
Variables lgicas
Las variables en Prolog no son variables en el sentido habitual, por eso las llamamos variables
lgicas. Se escriben como una secuencia de caracteres alfabticos comenzando siempre por
mayscula o subrayados.
Trminos
Los trminos son el nico elemento del lenguaje, es decir, los datos son trminos, el cdigo son
trminos, incluso el propio programa es un trmino. No obstante, es habitual, llamar trmino
solamente a los datos que maneja un programa.
Un trmino se compone de un factor seguido de cero a N argumentos entre parntesis y
separados por comas. Los nmeros enteros o decimales sin restricciones de tamao tambin son
trminos.
Operadores
Algunos factores pueden estar declarados como operadores, bien de manera predefinida, o bien
por el programador. Los operadores simplemente sirven para escribir trminos unarios o
binarios de una manera ms cmoda. Por ejemplo, un functor definido como operador infijo es
la suma (+). As, la expresin a+b es perfectamente vlida, aunque en realidad no es ms que el
trmino +(a,b).
Ejemplo de programa en prolog:
El siguiente ejemplo es un sencillo programa en prolog de cmo usar la base de conocimientos y
las consultas. As tambin se explicara la forma en que prolog trabaja.
Primero tenemos un tipo de posibles consultas del programa una vez compilado.
En si hay un sinnmero de formas de la utilizacin de este lenguaje, ya que este lenguaje brinda
beneficios, una mejor programacin etc.
Conclusiones y Recomendaciones. -
- Respecto a la aplicacin de PROLOG para la construccin de sistemas que apoyen
actividades educativas, en nmeros anteriores del Boletn de Informtica Educativa se
han dado criterios especficos para mejor aprovechamiento de esta tecnologa
- PROLOG (o cualquier otra herramienta) es la dimensin social de la interaccin con el
computador que comienza a plantear nuevos retos y posibilidades sobre el enfoque de
individualizacin promovido en el pasado.
Bibliografa (apa 6). -
http://www.csupomona.edu/~jrfisher/www/prolog_tutorial/co
ntents. 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/prol
og.htm
Programacin lgica:
http://www.geocities.com/v. iniestra/apuntes/pro_log/
Programing in Prolog:
http://cwis. kub. nl/~fdl/general/people/rmuskens/courses/pr
olog/