function logpmf( x, p ) {
	var q;
	if ( isnan( x ) || isnan( p ) ) {
		return NaN;
	}
	if ( p < 0.0 || p > 1.0 ) {
		return NaN;
	}
	if ( isNonNegativeInteger( x ) ) {
		q = 1.0 - p;
		return ln( p ) + (x * ln( q ));
	}
	return NINF;
}
Evaluates the logarithm of the probability mass function (PMF) for a geometric distribution with success probability `p` at a value `x`.

@param {number} x - input value
@param {Probability} p - success probability
@returns {NonPositiveNumber} logarithm of PMF

@example
var y = logpmf( 4.0, 0.3 );
// returns ~-2.631

@example
var y = logpmf( 2.0, 0.7 );
// returns ~-2.765

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

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

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

@example
// Invalid success probability:
var y = logpmf( 2.0, 1.5 );
// returns NaN