Prolog Language
Programación de la lógica de restricción
Buscar..
CLP (FD)
Las restricciones de CLP (FD) ( dominios finitos ) implementan aritmética sobre enteros . Están disponibles en todas las implementaciones serias de Prolog.
Hay dos casos de uso principales de restricciones CLP (FD):
- Aritmética entera declarativa
- Resolución de problemas combinatorios como tareas de planificación, programación y asignación.
Ejemplos:
?- X #= 1+2.
X = 3.
?- 3 #= Y+2.
Y = 1.
Tenga en cuenta que si is/2
utilizara is/2
en la segunda consulta, se produciría un error de creación de instancias:
?- 3 is Y+2.
ERROR: is/2: Arguments are not sufficiently instantiated
CLP (Q)
CLP (Q) implementa razonamiento sobre números racionales .
Ejemplo:
?- { 5/6 = X/2 + 1/3 }.
X = 1.
CLP (H)
El propio prólogo se puede considerar como CLP (H) : Programación de la lógica de restricción sobre los términos de Herbrand . Con esta perspectiva, un programa Prolog publica restricciones sobre los términos . Por ejemplo:
?- X = f(Y), Y = a.
X = f(a),
Y = a.
Modified text is an extract of the original Stack Overflow Documentation
Licenciado bajo CC BY-SA 3.0
No afiliado a Stack Overflow