Arithmetik

Arithmetische Ausdrücke in Prolog bestehen aus Zahlen und arithmetischen Funktionsnamen. Sie werden vom Interpreter aber nicht automatisch evaluiert, d.h. als Zahlenwert berechnet. Soll der Wert arithmetischer Ausdrücke berechnet werden, verwendet man das zweistellige Prädikat is/2. Es besteht aus zwei Argumenten und einem Operator, wobei ein Argument zwingend aus einer Variable bestehen muss. Der Wert des zu berechnenden Ausdrucks wird dann an diese Variable gebunden. Prolog versteht auch die üblichen Klammerweglass-Konventionen, d.h.
?- 2*3+4=2*(3+4).
no

aber:
?-2*3+4=(2*3)+4.
yes
.
Arithmetische Vergleichsprädikate wie “kleiner als” (=<), “gleich” (=:=) und “ungleich” (=\=) können in Prolog verwendet werden. Sie evaluieren beim Beweisen implizit ihre Argumente. Im Moment des Evaluierens darf keines der Argumente eine ungebundene Variable sein oder enthalten.