Carrillo

Solo disponible en BuenasTareas
  • Páginas : 3 (528 palabras )
  • Descarga(s) : 0
  • Publicado : 23 de mayo de 2010
Leer documento completo
Vista previa del texto
Recursividad en Prolog
La recursividad forma parte del repertorio para resolver problemas en Computación y es de los métodos más poderosos y usados.
Los algoritmos recursivos ofrecen solucionesestructuradas, modulares y elegantemente simples.
La recursividad es un concepto fundamental en matemáticas y en computación. Una definición recursiva dice cómo obtener conceptos nuevos empleando elmismo concepto que intenta describir.
En toda situación en la cual la respuesta pueda ser expresada como una secuencia de movimientos, pasos o transformaciones gobernadas por un conjunto de reglas noambiguas, la fórmula recursiva es un buen candidado para resolver el problema.

El concepto de recursividad en el paradigma lógico no sólo puede ser aplicado a listas, como en los paradigmasprocedurales o funcionales. La relación recursiva entre elementos de un mismo tipo no tiene por qué estar contenida en una lista.
Un ejemplo de relación recursiva es la relación antepasado.

Definoantepasado de una persona X a:
▪ Y tal que Y es progenitor de X;
▪ Y tal que Z es progenitor de X e Y es antepasado de Z.

Es decir, un antepasado mío o es mi padre o bien es una persona que esantepasado de mi padre (su padre, o el padre de su padre, etc...).

progenitor (daniel, papa).
progenitor (papa, abuelo).
progenitor (abuelo, bisa).
antepasado(X,Y):- progenitor(X, Y).antepasado(X,Y):- progenitor(X,Z), antepasado(Z,Y).

Entonces, para este caso, la relación progenitor es el CORTE DE LA RECURSIVIDAD.

Otro ejemplo:
Tengo habitaciones conectadas entre sí por puertas (comoen el DOOM), y quiero llegar de una habitación a otra, es decir, hallar un paso entre las habitaciones.
Veo entonces las relaciones:

puerta(Habitacion1, Habitacion2)
paso(Habitacion1,HabitacionN).

Como se define el paso?
El paso entre dos habitaciones A y B es que haya una puerta entre las habitaciones (este es el CORTE DE LA RECURSIVIDAD), o bien que haya una puerta entre A y otra...
tracking img