public static double foilGain(int featureIndex, double utility, List coveredPos, List coveredNeg) {
    { IntegerWrapper matchValue = ((featureIndex < 0) ? Stella.ZERO_WRAPPER : Stella.ONE_WRAPPER);
      int index = (((featureIndex < 0) ? (0 - featureIndex) : featureIndex)) - 1;
      int p = Logic.countExampleMatches(coveredPos, index, matchValue);
      int n = Logic.countExampleMatches(coveredNeg, index, matchValue);

      return (p * (Logic.foilUtility(p, n) - utility));
    }
  }