Package org.xcsp.common.predicates
Class TreeEvaluator
- java.lang.Object
-
- org.xcsp.common.predicates.TreeEvaluator
-
public class TreeEvaluator extends Object
- Author:
- Christophe Lecoutre
-
-
Nested Class Summary
-
Field Summary
Fields Modifier and Type Field Description TreeEvaluator.Evaluator[]
evaluators
The sequence of evaluators (built from a post-fixed expression) that can be called for evaluating a tuple of values (instantiation).static int
SAMPLING_LIMIT
-
Constructor Summary
Constructors Constructor Description TreeEvaluator(XNode<? extends IVar> tree)
TreeEvaluator(XNode<? extends IVar> tree, Map<String,Integer> mapOfSymbols)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static int
arityOf(String tok)
static Class<?>
classOf(String tok)
int[][]
computeTuples(int[][] domValues, int[] targetDom)
boolean
controlArityOfEvaluators()
boolean
controlTypeOfEvaluators(boolean booleanType)
long
evaluate(int value)
Evaluates the value, by using the recorded so-called evaluators.long
evaluate(int[] values)
Evaluates the specified tuple of values, by using the recorded so-called evaluators.int[][]
generateConflicts(int[][] domValues)
int[]
generatePossibleValues(int[][] domValues)
int[][]
generateSupports(int[][] domValues)
int[][]
generateTuples(int[][] domValues, Utilities.ModifiableBoolean positive)
int[][]
generateTuples(int[][] domValues, Utilities.ModifiableBoolean positive, int limit)
static boolean
isAssociative(String tok)
boolean
isBoolean()
boolean
isInteger()
static boolean
isSymmetric(String tok)
-
-
-
Field Detail
-
SAMPLING_LIMIT
public static final int SAMPLING_LIMIT
- See Also:
- Constant Field Values
-
evaluators
public TreeEvaluator.Evaluator[] evaluators
The sequence of evaluators (built from a post-fixed expression) that can be called for evaluating a tuple of values (instantiation).
-
-
Method Detail
-
arityOf
public static int arityOf(String tok)
-
isSymmetric
public static boolean isSymmetric(String tok)
-
isAssociative
public static boolean isAssociative(String tok)
-
isBoolean
public boolean isBoolean()
-
isInteger
public boolean isInteger()
-
evaluate
public final long evaluate(int[] values)
Evaluates the specified tuple of values, by using the recorded so-called evaluators.
-
generatePossibleValues
public final int[] generatePossibleValues(int[][] domValues)
-
generateTuples
public final int[][] generateTuples(int[][] domValues, Utilities.ModifiableBoolean positive, int limit)
-
generateTuples
public final int[][] generateTuples(int[][] domValues, Utilities.ModifiableBoolean positive)
-
generateSupports
public final int[][] generateSupports(int[][] domValues)
-
generateConflicts
public final int[][] generateConflicts(int[][] domValues)
-
computeTuples
public final int[][] computeTuples(int[][] domValues, int[] targetDom)
-
evaluate
public final long evaluate(int value)
Evaluates the value, by using the recorded so-called evaluators.
-
controlArityOfEvaluators
public boolean controlArityOfEvaluators()
-
controlTypeOfEvaluators
public boolean controlTypeOfEvaluators(boolean booleanType)
-
-