Class NumericConstraintPredicate
- java.lang.Object
-
- org.projog.core.predicate.AbstractSingleResultPredicate
-
- org.projog.core.predicate.builtin.clp.NumericConstraintPredicate
-
- All Implemented Interfaces:
KnowledgeBaseConsumer,ConstraintFactory,PredicateFactory
public final class NumericConstraintPredicate extends AbstractSingleResultPredicate implements ConstraintFactory
CLP predicates for comparing numeric values.#=equal to#\=not equal to#>greater than#>=greater than or equal to#<less than#=<less than or equal to
-
-
Field Summary
Fields Modifier and Type Field Description private java.util.function.BiFunction<org.projog.clp.Expression,org.projog.clp.Expression,org.projog.clp.Constraint>constraintGeneratorprivate ExpressionFactoriesexpressions
-
Constructor Summary
Constructors Modifier Constructor Description privateNumericConstraintPredicate(java.util.function.BiFunction<org.projog.clp.Expression,org.projog.clp.Expression,org.projog.clp.Constraint> constraintGenerator)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description org.projog.clp.ConstraintcreateConstraint(Term[] args, java.util.Set<ClpVariable> vars)static NumericConstraintPredicateequalTo()booleanevaluate(Term x, Term y)static NumericConstraintPredicategreaterThan()static NumericConstraintPredicategreaterThanOrEqualTo()protected voidinit()This method is called byAbstractSingleResultPredicate.setKnowledgeBase(KnowledgeBase).static NumericConstraintPredicatelessThan()static NumericConstraintPredicatelessThanOrEqualTo()static NumericConstraintPredicatenotEqualTo()-
Methods inherited from class org.projog.core.predicate.AbstractSingleResultPredicate
evaluate, evaluate, evaluate, evaluate, evaluate, getArithmeticOperators, getFileHandles, getKnowledgeBase, getOperands, getPredicate, getPredicates, getProjogListeners, getSpyPoints, getTermFormatter, isRetryable, setKnowledgeBase
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.projog.core.predicate.PredicateFactory
isAlwaysCutOnBacktrack
-
-
-
-
Field Detail
-
constraintGenerator
private final java.util.function.BiFunction<org.projog.clp.Expression,org.projog.clp.Expression,org.projog.clp.Constraint> constraintGenerator
-
expressions
private ExpressionFactories expressions
-
-
Method Detail
-
equalTo
public static NumericConstraintPredicate equalTo()
-
notEqualTo
public static NumericConstraintPredicate notEqualTo()
-
lessThan
public static NumericConstraintPredicate lessThan()
-
greaterThan
public static NumericConstraintPredicate greaterThan()
-
lessThanOrEqualTo
public static NumericConstraintPredicate lessThanOrEqualTo()
-
greaterThanOrEqualTo
public static NumericConstraintPredicate greaterThanOrEqualTo()
-
evaluate
public boolean evaluate(Term x, Term y)
- Overrides:
evaluatein classAbstractSingleResultPredicate
-
init
protected void init()
Description copied from class:AbstractSingleResultPredicateThis method is called byAbstractSingleResultPredicate.setKnowledgeBase(KnowledgeBase).Can be overridden by subclasses to perform initialisation before any calls to
AbstractSingleResultPredicate.evaluate(Term...)are made. AsAbstractSingleResultPredicate.setKnowledgeBase(KnowledgeBase)will have already been called before this method is invoked, overridden versions will be able to access theKnowledgeBaseusingAbstractSingleResultPredicate.getKnowledgeBase().- Overrides:
initin classAbstractSingleResultPredicate
-
createConstraint
public org.projog.clp.Constraint createConstraint(Term[] args, java.util.Set<ClpVariable> vars)
- Specified by:
createConstraintin interfaceConstraintFactory
-
-