function mgf( t, n, p ) {
	var base;
	if (
		isnan( t ) ||
		isnan( n ) ||
		isnan( p ) ||
		p < 0.0 ||
		p > 1.0 ||
		!isNonNegativeInteger( n ) ||
		n === PINF
	) {
		return NaN;
	}
	base = 1.0 - p + (p * exp(t));
	return pow( base, n );
}
Evaluates the moment-generating function (MGF) for a binomial distribution with number of trials `n` and success probability `p` at a value `t`.

@param {number} t - input value
@param {NonNegativeInteger} n - number of trials
@param {Probability} p - success probability
@returns {number} evaluated MGF

@example
var y = mgf( 0.5, 20, 0.2 );
// returns ~11.471

@example
var y = mgf( 5.0, 20, 0.2 );
// returns ~4.798e29

@example
var y = mgf( 0.9, 10, 0.4 );
// returns ~99.338

@example
var y = mgf( 0.0, 10, 0.4 );
// returns 1.0

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

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

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

@example
var y = mgf( 0.2, 1.5, 0.5 );
// returns NaN

@example
var y = mgf( 0.2, -2.0, 0.5 );
// returns NaN

@example
var y = mgf( 0.2, 20, -1.0 );
// returns NaN

@example
var y = mgf( 0.2, 20, 1.5 );
// returns NaN