sentencia - unificacion prolog
¿Qué significa /+en Prolog? (3)
Es el operador '' no demostrable ''. Tiene éxito si su argumento no es demostrable (y falla si su argumento es demostrable).
He visto algunas respuestas aquí que lo usan y no sé qué significa o cómo usarlo. También es difícil buscarlo a través de un motor de búsqueda :)
La forma en que lo memorizo es a través de la siguiente regla lógica:
-
/+
= ''Siunsure
estáunsure
o esfalse
, suponga que esfalse
''
Esto es diferente de la lógica booleana estándar en que si su objetivo es incierto en lugar de ser verdadero o falso, se asume que es falso cuando no puede ser cierto. El ejemplo más obvio de esto es que no se puede ver si una secuencia todavía está abierta o no. Si no puede probar que está abierto, es lo mismo que estar cerrado para el programa.
Se hace con la negación. /+ Goal
tendrá éxito si no se puede demostrar el Goal
.