Sistemas Expertos            Resumen PrologAndrade Zambrano David Alejandro        10 A Informática
IntroducciónProlog trabaja con un método de programación lógicarelacional porque existe una gama de lenguajes que siguenes...
El entorno de desarrollo de PrologProlog es un lenguaje de programación seminterpretado y esmuy similar a Java, el código ...
Elementos del lenguajeProlog carece de declaraciones en el sentido imperativo: secciones, declaracionesde tipo, declaracio...
La variable anónimaSi existen variables sin nombre y todas ellas se representan mediante el guionbajo ( _ ).              ...
Operadores.Los operadores simplemente sirven para      escribir términos unarios obinarios de una manera mas cómoda, por  ...
ClausulasLos predicados se definen mediante un conjunto de clausulas:          clausula1          clausula2          ……….....
Curso Intermedio de Prolog.
Tipos de datosTodos sabemos que los datos que maneja Prolog son los términos. Sinembargo, podemos construir otros tipos de...
Bucles de falloLos bucles de fallo constituyen una técnica d e programación que permiterecorrer una serie de elementos y a...
Upcoming SlideShare
Loading in …5
×

Prolog

696 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
696
On SlideShare
0
From Embeds
0
Number of Embeds
19
Actions
Shares
0
Downloads
14
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Prolog

  1. 1. Sistemas Expertos Resumen PrologAndrade Zambrano David Alejandro 10 A Informática
  2. 2. IntroducciónProlog trabaja con un método de programación lógicarelacional porque existe una gama de lenguajes que sigueneste paradigma.Cabe resaltar el hecho de que Prolog es 10 veces maslento que el lenguaje C, pero ocupa aproximadamente 10veces menos líneas de código y tiempo de desarrollo. Requisitos1. Un editor de texto, se recomienda Emacs, y2. Un entorno de desarrollo Prolog.
  3. 3. El entorno de desarrollo de PrologProlog es un lenguaje de programación seminterpretado y esmuy similar a Java, el código fuente se compila a un códigode byte al cual lo interpreta una maquina virtual llamadaWAM (Warren Abstract Machine).Su entorno se compone de:1. Un compilador2. Un interprete3. Un shell o top-level4. Una biblioteca de utilidades
  4. 4. Elementos del lenguajeProlog carece de declaraciones en el sentido imperativo: secciones, declaracionesde tipo, declaraciones de variable, declaraciones de procedimientos, etc. ComentariosLos comentarios en Prolog se escriben anteponiendo un símbolo de porcentaje;Ej.: %Hola, esto es un comentario Variables LógicasEn Prolog no son variables en el sentido común por eso se las denominavariables lógicas, Se escriben como una secuencia de caracteres alfabéticoscomenzando siempre por mayúscula o un guion bajo.Ej.:Variable _Hola _NO de esta manera: variable; $Hola; P_De esta manera se evita la necesidad de declarar previamente las variables.
  5. 5. La variable anónimaSi existen variables sin nombre y todas ellas se representan mediante el guionbajo ( _ ). TérminosSon el único elemento del lenguaje, es decir, los datos, el código, incluso elprograma son términos, estos se componen de un funtor seguido de cero a Nargumentos entre paréntesis separados por comas.Veamos algunos ejemplos de functores: functor f384p12 esto es un único functor, eh!! _functor $ +No son functores válidos: _functor Functor
  6. 6. Operadores.Los operadores simplemente sirven para escribir términos unarios obinarios de una manera mas cómoda, por ejemplo un functor definidocomo operador infijo es la suma (+). Así, la expresión a+b esperfectamente valida, aunque en realidad no es mas que el termino+(a,b). El mecanismo de unificaciónLa unificación es el mecanismo mediante el cual las variables lógicastoman valor en Prolog.Cuando una variable no tiene valor se dice que está libre. Pero una vezque se le asigna valor, éste ya no cambia, por eso se dice que la variableestá ligada.
  7. 7. ClausulasLos predicados se definen mediante un conjunto de clausulas: clausula1 clausula2 ……….. clausulaNDonde el orden es significativo, para facilitar la lectura, se suele dejar una líneaen blanco entre clausula y clausula. El shell de Prolog.Permite ejecutar objetivos y ver las ligaduras de las variables de manerainteractiva.
  8. 8. Curso Intermedio de Prolog.
  9. 9. Tipos de datosTodos sabemos que los datos que maneja Prolog son los términos. Sinembargo, podemos construir otros tipos de datos a partir de estos. RegistrosLos registros son agrupaciones ordenadas de datos que en Prolog podemosescribir como términos que almacenan cada dato en un argumento. ArbolesSon estructuras de datos recurrentes ya que los datos pueden ser recursivos. Cadenas de CaracteresEn Prolog son listas de códigos ASCII, las mismas se puede escribir de lamanera que mas nos interese entre comillas dobles.Ej.:“ABC” que es en realidad la lista [65,66,67].
  10. 10. Bucles de falloLos bucles de fallo constituyen una técnica d e programación que permiterecorrer una serie de elementos y aplicarles una operación. De la mismamanera que un bucle for o while. StreamsComo en todos los lenguajes, en Prolog existe la posibilidad de manejarentrada/salida, esto es, ficheros, pantalla, impresoras, etc. Todo ello se hace através de streams (concepto idéntico al de otros lenguajes).Los streams son buffers para escribir y/o leer de dispositivos como el teclado,la pantalla, eldisco, etc. De modo que consideramos tres tipos de streams:1. Streams de entrada (lectura).2. Streams de salida (escritura).3. Streams de entrada y salida (híbridos).

×