docs: public static double logpdf(double x, double k, double theta) {
      if(x < 0) {
        return Double.NEGATIVE_INFINITY;
      }
      if(x == 0) {
        return (k == 1.0) ? FastMath.log(theta) : Double.NEGATIVE_INFINITY;
      }
      if(k == 1.0) {
        return FastMath.log(theta) - x * theta;
      }
      final double xt = x * theta;
      return (xt == Double.POSITIVE_INFINITY) ? Double.NEGATIVE_INFINITY : //
          FastMath.log(theta) + (k - 1.0) * FastMath.log(xt) - xt - logGamma(k);
    }