Recherche…


CLP (FD)

Les contraintes CLP (FD) ( domaines finis ) implémentent l'arithmétique sur les entiers . Ils sont disponibles dans toutes les implémentations sérieuses de Prolog.

Il existe deux cas d'utilisation majeurs de contraintes CLP (FD):

  • Arithmétique entière déclarative
  • Résoudre des problèmes combinatoires tels que la planification, la planification et les tâches d'allocation.

Exemples:

?- X #= 1+2.
X = 3.

?- 3 #= Y+2.
Y = 1.

Notez que si is/2 devait être utilisé dans la deuxième requête, une erreur d’instanciation se produirait:

?- 3 is Y+2.
ERROR: is/2: Arguments are not sufficiently instantiated

CLP (Q)

CLP (Q) implémente le raisonnement sur des nombres rationnels .

Exemple:

?- { 5/6 = X/2 + 1/3 }.
X = 1.

CLP (H)

Prolog lui-même peut être considéré comme CLP (H) : programmation par contraintes logiques sur les termes de Herbrand . Dans cette perspective, un programme Prolog affiche des contraintes sur les termes . Par exemple:

?- X = f(Y), Y = a.
X = f(a),
Y = a.


Modified text is an extract of the original Stack Overflow Documentation
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow