Programación logíca
A menudo, al resolver los problemas reales, usted debe seguir un camino a su conclusión lógica. Si esta conclusión no da la respuesta que ustedestaba buscando, usted debe escoger un camino alterno.
Visual Prolog agota este mismo apoyo y probando el método de nuevo, el llamado back tracking, sirve para encontrar una solución a un problemadado. Cuando el visual prolog empieza a buscar una solución a un problema o meta, podría tener que decidir entre dos posibles casos. Pone un marcador a lugar donde se da la bifurcación (sepa como unpunto del backtraking) y selecciona los primeros subgoal para seguir. Si ese subgoal falla (equivalente a alcanzar un fin muerto), Prolog volverá a la parte de atrás que rastrea el punto y probará unsubgoal alternado.
Estos dos son predicados que no tienen argumentos. Cut y fail.
▪ Corte ( ( ) Detiene la vuelta hacía atrás. Es decir, se convierte en una valla que impide que la reevaluaciónla atraviese en su vuelta hacía atrás, convirtiendo en inaccesibles todos los marcadores de las metas que se encuentran a su izquierda.
Permite decirle a PROLOG cuales son las opciones previas queno hace falta que vuelva a considerar en un posible proceso de reevaluación
En un mecanismo muy delicado y que puede marcar la diferencia entre un programa que funcione y uno que no funcione. Suutilidad viene dada por:
▪ Optimización del tiempo de ejecución: n malgastando tiempo intentando satisfacer objetivos que de antemano sabemos que nunca contribuirán a una solución.
▪Optimización de memoria: al no tener que registrar puntos de reevaluación para un examen posterior.
Los usos comunes del corte se pueden dividir en tres áreas según la intención con la que lo hayamoscolocado:
1) Confirmación de la elección de una regla: se informa a PROLOG que va por buen camino, por tanto, si ha pasado el corte ha encontrado la regla correcta para resolver el objetivo....
Regístrate para leer el documento completo.