function logcdf( x, p ) {
	if (
		isnan( x ) ||
		isnan( p ) ||
		p < 0.0 ||
		p > 1.0
	) {
		return NaN;
	}
	if ( x < 0.0 ) {
		return NINF;
	}
	if ( x === PINF ) {
		return 0.0;
	}
	x = floor( x );
	return log1p( -pow( 1.0 - p, x + 1.0 ) );
}
Evaluates the logarithm of the cumulative distribution function (CDF) for a geometric distribution with success probability `p` at a value `x`.

@param {number} x - input value
@param {Probability} p - success probability
@returns {number} evaluated logCDF

@example
var y = logcdf( 2.0, 0.5 );
// returns ~-0.134

@example
var y = logcdf( 2.0, 0.1 );
// returns ~-1.306

@example
var y = logcdf( -1.0, 0.5 );
// returns -Infinity

@example
var y = logcdf( NaN, 0.5 );
// returns NaN

@example
var y = logcdf( 0.0, NaN );
// returns NaN

@example
// Invalid probability
var y = logcdf( 2.0, 1.4 );
// returns NaN