ArithmeticRelation

Base class for implementing ISO arithmetic comparison predicates (=:=/2, =\=/2, </2, >/2, =</2, >=/2), i.e. BinaryRelation.Predicatives that first evaluate both arguments as arithmetic expressions (via it.unibo.tuprolog.solve.function.evalAsArithmeticExpression, raising an it.unibo.tuprolog.solve.exception.error.InstantiationError if unbound, or a it.unibo.tuprolog.solve.exception.error.TypeError if not evaluable/numeric) before comparing the resulting Numeric values via computeNumeric.

Inheritors

Constructors

Link copied to clipboard
constructor(operator: String)

Properties

Link copied to clipboard

Gets this wrapped primitive description Pair formed by signature and wrapped primitive type

Link copied to clipboard

A shorthand to get the signature functor name

Link copied to clipboard

Checked primitive implementation

Link copied to clipboard

Functions

Link copied to clipboard
abstract fun computeNumeric(x: Numeric, y: Numeric): Boolean

Template method comparing the two already-evaluated Numeric operands.