logo

Prólogo | Una introducción


Introducción :

El prólogo es un programación lógica idioma. Tiene un papel importante en la inteligencia artificial. A diferencia de muchos otros lenguajes de programación, Prolog está pensado principalmente como un lenguaje de programación declarativo. En el prólogo, la lógica se expresa como relaciones (llamadas hechos y reglas). El corazón central del prólogo se encuentra en el lógica siendo aplicado. La formulación o cálculo se lleva a cabo ejecutando una consulta sobre estas relaciones.



Instalación en Linux:

abrir una terminal (Ctrl+Alt+T) y escriba:

 sudo apt-get install swi-prolog>

Sintaxis y campos básicos:



En el prólogo, declaramos algunos hechos. Estos hechos constituyen la Base de Conocimiento del sistema. Podemos consultar en la base de conocimientos. Obtenemos un resultado afirmativo si nuestra consulta ya está en la Base de conocimiento o está implícita en la Base de conocimiento; de lo contrario, obtenemos un resultado negativo. Por lo tanto, la base de conocimientos puede considerarse similar a una base de datos, en la que podemos realizar consultas. Los hechos del prólogo se expresan en un patrón definido. Los hechos contienen entidades y su relación. Las entidades se escriben entre paréntesis separadas por coma (,). Su relación se expresa al inicio y fuera del paréntesis. Cada hecho/regla termina con un punto (.). Entonces, un hecho de prólogo típico es el siguiente:

 Format : relation(entity1, entity2, ....k'th entity). Example : friends(raju, mahesh). singer(sonu). odd_number(5). Explanation : These facts can be interpreted as : raju and mahesh are friends. sonu is a singer. 5 is an odd number.>

Características clave:
1. Unificación: La idea básica es: ¿se pueden hacer que los términos dados representen la misma estructura?
2. Retroceder: Cuando una tarea falla, prolog rastrea hacia atrás e intenta satisfacer la tarea anterior.
3. Recursión: La recursividad es la base de cualquier búsqueda en el programa.

Consultas en ejecución:
Una consulta de prólogo típica se puede formular como:



 Query 1 : ?- singer(sonu). Output : Yes. Explanation : As our knowledge base contains the above fact, so output was 'Yes', otherwise it would have been 'No'. Query 2 : ?- odd_number(7). Output : No. Explanation : As our knowledge base does not contain the above fact, so output was 'No'.>

Ventajas:
1. Base de datos fácil de construir. No necesita mucho esfuerzo de programación.
2. Combinar patrones es fácil. La búsqueda se basa en la recursividad.
3. Tiene manejo de listas incorporado. Hace que sea más fácil jugar con cualquier algoritmo que involucre listas.

anotaciones de arranque de primavera

Desventajas:
1. LISP (otro lenguaje de programación lógica) domina sobre prolog con respecto a las funciones de E/S.
2. A veces, la entrada y salida no es fácil.

Aplicaciones:

Prolog se utiliza mucho en inteligencia artificial (IA). Prolog también se utiliza para la coincidencia de patrones en árboles de análisis de lenguaje natural.

Referencia 1: https://en.wikipedia.org/wiki/Prolog

Referencia 2: http://www.swi-prolog.org/