Prolog Language
Programowanie logiki z ograniczeniami
Szukaj…
CLP (FD)
Ograniczenia CLP (FD) ( Finite Domains ) implementują arytmetykę na liczbach całkowitych . Są dostępne we wszystkich poważnych implementacjach Prologu.
Istnieją dwa główne przypadki użycia ograniczeń CLP (FD):
- Deklaratywna arytmetyka liczb całkowitych
- Rozwiązywanie problemów kombinatorycznych, takich jak planowanie, planowanie i przydzielanie zadań.
Przykłady:
?- X #= 1+2.
X = 3.
?- 3 #= Y+2.
Y = 1.
Zauważ, że jeśli w drugim zapytaniu miałoby być is/2
, wystąpiłby błąd wystąpienia:
?- 3 is Y+2.
ERROR: is/2: Arguments are not sufficiently instantiated
CLP (Q)
CLP (Q) implementuje rozumowanie na podstawie liczb wymiernych .
Przykład:
?- { 5/6 = X/2 + 1/3 }.
X = 1.
CLP (H)
Sam Prolog można uznać za CLP (H) : Programowanie logiki z ograniczeniami w odniesieniu do terminów Herbrand . Z tej perspektywy program Prolog nakłada ograniczenia na warunki . Na przykład:
?- X = f(Y), Y = a.
X = f(a),
Y = a.
Modified text is an extract of the original Stack Overflow Documentation
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow