Class PredicateDrivenCostEstimator


  • public class PredicateDrivenCostEstimator
    extends CostEstimator
    • Field Detail

      • INFINITE_RESULT

        public static int INFINITE_RESULT
      • WHOLE_TM_RESULT

        public static int WHOLE_TM_RESULT
      • BIG_RESULT

        public static int BIG_RESULT
      • MEDIUM_RESULT

        public static int MEDIUM_RESULT
      • SMALL_RESULT

        public static int SMALL_RESULT
      • SINGLE_RESULT

        public static int SINGLE_RESULT
      • FILTER_RESULT

        public static int FILTER_RESULT
      • FAIL_RESULT

        public static int FAIL_RESULT
    • Constructor Detail

      • PredicateDrivenCostEstimator

        public PredicateDrivenCostEstimator()
    • Method Detail

      • computeCost

        public int computeCost​(Set context,
                               AbstractClause clause,
                               Set literalvars,
                               String rulename)
        INTERNAL: Computes the cost of evaluating the given clause in the given context of variable bindings. The cost largely depends on the number of unbound variables in the clause.
        Specified by:
        computeCost in class CostEstimator
        Parameters:
        context - A set of bound variables.
        clause - The clause whose cost we want to compute.
        literalvars - Contains the variables representing literals. Only an issue in rules.
        rulename - The name of the current rule (so we can delay recursive evaluation).
      • getComparisonPredicateCost

        public static int getComparisonPredicateCost​(boolean[] boundparams)