lenguaje prolog

9
INSTITUTO TECNOLOGICO DE TUXTLA GUTIERREZ CRESUD ACALA ASESOR: Ing. Guadalupe Del Rosario Aguilar Lopez MATERIA Programacion Logica y funcional UNIDA 2 TEMA Investigacion de lenguaje de Prolog ALUMNA Vargas Pérez María de los Ángeles 12270303 A

description

que es el lenguaje prolog

Transcript of lenguaje prolog

Page 1: lenguaje prolog

INSTITUTO TECNOLOGICO DE TUXTLA

GUTIERREZ

CRESUD ACALA

ASESOR:

Ing. Guadalupe Del Rosario Aguilar Lopez

MATERIA

Programacion Logica y funcional

UNIDA 2

TEMA

Investigacion de lenguaje de Prolog

ALUMNA

Vargas Pérez María de los Ángeles 12270303 A

15° Cuatrimestre

ACALA CHIAPAS

OCTUBRE DEL 2015

Page 2: lenguaje prolog

1. INTRODUCCION

En esta actividad explicáremos los puntos de mayor importancia sobre el lenguaje

de programación Prolog, como son los tipos de datos, sus funciones e intervalos

nos dice que es un lenguaje de programación hecho para representar y utilizar

el conocimiento  que se tiene sobre un determinado dominio. De un conjunto de

objetos y el conocimiento se representa por un conjunto de relaciones que

describen las propiedades de los objetos y sus interrelaciones. Un conjunto de

reglas que describa estas propiedades y estas relaciones es un programa Prolog.

Page 3: lenguaje prolog

2. LENGUAJE DE PROLOG

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. ProLog es un lenguaje de

programación especialmente indicado para modelar problemas que impliquen

objetos y las relaciones entre ellos. Está basado en los siguientes mecanismos

básicos: unificación, estructuras de datos basadas en árboles

y backtracking automático. La sintaxis del lenguaje incluye la declaración de

hechos, preguntas y reglas. La popularidad de este lenguaje se debe a su

capacidad de deducción y además es un lenguaje fácil de usar por

su semántica y sintaxis. Sólo busca relaciones entre los objetos creados, las

variables y las listas, que son su estructura básica. 

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. 

Un programa en ProLog consiste de una base de hechos de relaciones lógicas y

detalles que se cumplen para la aplicación. Dicha base de datos no tiene una

estructura impuesta, ni un procedimiento o clase principal. Escribir un programa en

ProLog consiste en declarar el conocimiento disponible acerca de los objetivos,

además de sus relaciones y sus reglas. En lugar de correr en un programa para

obtener una solución, se hace una pregunta, el programa revisa la base de

datos para encontrar la solución a la pregunta. Si existe más de una solución,

ProLog hace backtracking para encontrar soluciones distintas. El propio sistema

es el que deduce las respuestas a las preguntas que se le plantean, dichas

respuestas las deduce del conocimiento obtenido por el conjunto de reglas dadas.

La ejecución de ProLog consiste en una búsqueda en profundidad de un árbol

Page 4: lenguaje prolog

conteniendo todas las posibles soluciones. Para cada una de ellas se evaluará su

validez. La estructura de un programa en ProLog es lógica y directa. Se explican

cada una de sus partes y operadores disponibles a continuación.

2.1. CARACTERÍSTICAS DEL LENGUAJE PROLOG

1) Basado en lógica y programación declarativa. 

2) No se especifica cómo debe hacerse, sino qué debe lograrse. 

3) Una característica importante en ProLog y que lo diferencia de otros

lenguajes de programación, es que una variable sólo puede tener un valor

mientras se cumple el objetivo. 

4) El programador se concentra más en el conocimiento que en

los algoritmos. ¿Qué es conocido? (hechos, reglas)  ¿Qué preguntar?

(Cómo resolverlo).En ProLog, se llega a una solución infiriéndola desde

algo ya conocido. 

2.2. TIPO DE DATOS

Symbol

Hay dos tipos de símbolos:

Un grupo de caracteres consecutivos (letras, números y signos de subrayado) que

comienzan con un carácter en minúscula

Ejemplo: Alto,Alto_edificio,El_alto_edificio_en_la_ciudad

Un grupo de caracteres consecutivos (letras y números) que comienzan y

terminan con dobles comillas("). Este tipo es útil cuando se quiere comenzar el

símbolo con un carácter en mayúscula o si se quieres agregar espacios entre los

caracteres del símbolo.

Ejemplo:"alto", "alto edificio"

String

Page 5: lenguaje prolog

Cualquier grupo de caracteres consecutivos (letras y números) que comience y

termine con dobles comillas("). Es igual a símbolo pero Prolog los trata de forma

distinta.

Ejemplo:"alto","alto edificio"

Integer

Cualquier número comprendido entre (-32.768 y 32.768). El límite esta

determinado porque los enteros se almacenan como valores de 16 bits, este límite

puede variar según la versión de Prolog.

Ejemplo: 4,-300,3004

Real

Cualquier numero real en el rango +/- 1E-307 a +/-1E+308. El formato incluye

estas opciones: signo, numero, punto decimal, fracción, E(exponente), signo para

el exponente, exponente.

Ejemplo: 3,3.1415

Char

Cualquier carácter de la lista ASCII estándar, posicionado entre dos comillas

sencillas (‘).

Ejemplos: ‘t’, ‘X’, ‘f’

2.3. FUNCIONES

2.4. INTERVALOS

3. CONCLUSION

Page 6: lenguaje prolog

En esta actividad aprendimos que

4. BIBLIOGRAFIAS

http://computacion.cs.cinvestav.mx/~acaceres/courses/itesm/lp/clases/lp14.pdf

http://www.uhu.es/nieves.pavon/pprogramacion/temario/tema1/tema1.html

http://www.inf.utfsm.cl/~mcloud/iwi-253/apuntes/apunte05-03-6x.pdf

http://www.ecured.cu/index.php/Prolog_(Lenguaje_de_programaci%C3%B3n)

https://es.wikipedia.org/wiki/Lenguaje_ensamblador

http://fcqi.tij.uabc.mx/usuarios/ardiaz/material/manual_lab_prolog.pdf

http://www.monografias.com/trabajos5/prolog/prolog.shtml

http://platea.pntic.mec.es/jdelucas/prolog.htm

http://www.uco.es/~ma1fegan/2013-2014/pd/temas/Tema-9/PD-Tema-9.pdf

http://www.desarrolloweb.com/articulos/1573.php

http://mural.uv.es/mijuanlo/PracticasPROLOG.pdf

http://es.slideshare.net/pedrovera5011/tutorial-de-prolog-19959264

http://www.di-mare.com/adolfo/cursos/2007-2/pp-Prolog.pdf

http://elvex.ugr.es/decsai/intelligent/workbook/ai/PROLOG.pdf

http://www.infor.uva.es/~teodoro/PrologAlicante.pdf

http://www.uhu.es/nieves.pavon/pprogramacion/temario/tema2/tema2.html

https://grupoexabyte.files.wordpress.com/2009/05/programacion-logica.pdf

http://es.slideshare.net/uni_fcys_sistemas/programacion-practica-prolog

Page 7: lenguaje prolog

http://es.slideshare.net/maxsp5566/practicas-prolog

http://html.rincondelvago.com/lenguajes-de-programacion_12.html

http://labsys.frc.utn.edu.ar/ppr-2011/Unidad%20V%20-%20Paradigma%20L%C3%B3gico/Unidad%20V%20-%20Paradigma%20LOGICO.pdf

http://arantxa.ii.uam.es/~dcamacho/logica/recursos/3848.0.prolog.pdf