2. Statistical Routines

These routines are generally accessed by the call GetLibrary('random).

2.1 General Statistical routines
_______________________________________________________________
Arrangements(lot,N,type)
Finds how many arrangements there are if N objects were picked from a group of size lot with picking scheme type.
Input	Class	Range	Description
lot	Integer	[1,°)	the amount of objects to choose from.
N	Integer	[0,°)	the amount of picks from [1,lot].
			If type is not replaced then N<=lot.
type	symbol		There are two ways to handle a pick
			producing four types of picks.  The
			numbers in the lot can be replaced
				after each pick or not replaced like
			in a lotto drawing. The arrangement
			of picks can be independent of order
			or they can be ordered like on a
			license plate. Thus the four possible
			values for type:
			'OrderedReplaced,
			'OrderedNotReplaced,
			'UnorderedReplaced,
			'UnorderedNotReplaced.

Output	Class	Range	Description
z	Real	[0,°)	The number of arrangements.

Example:
inspect local lib,lot,N,type,z;
lib := GetLibrary('Random);
lot := 52; // cards in a deck
N := 5; // cards in a hand
type := 'UnorderedNotReplaced;
z := lib:Arrangements(lot,N,type);
  = 2598960.0
// possible hands for first draw
_______________________________________________________________
Choose(lot,N,type)
Picks N numbers from a set of numbers [1,lot] according to the picking scheme type.  This function disreguards the ordered information in type. 
Input	Class	Range	Description
lot	Integer	[1,°)	the amount of objects to choose from.
N	Integer	[0,°)	the amount of picks from [1,lot].
			If type is not replaced then N<=lot.
type	symbol		There are one way to handle a pick
			producing two types of picks.  The
			numbers in the lot can be replaced
			after each pick or not replaced like
			in a lotto drawing.
			'OrderedReplaced,
			'OrderedNotReplaced,
			'UnorderedReplaced,
			'UnorderedNotReplaced.

Output	Class	Range	Description
z	Array	[1,lot]	The array of N picks.

Example:
inspect local lib,lot,N,type,z;
lib := GetLibrary('Random);
N := 5; // cards picked from deck
lot := 52; // cards in deck
type := 'UnorderedNotReplaced; // deck not replenished
z := lib:Choose(lot,N,type);
 = [52,4,33,27,41]
// this is a random choosing and will be different each time
_______________________________________________________________
EstimateCumulation(data)
Estimates the cumulation at each data point.
Input	Class	Range	Description
data	Array	(-°,°)	random data

Output	Class	Range	Description
z	Array	(-°,°)	The estimated cumulation returned
			as an array of paired data.
			z[0][i] = value
			z[1][i] = cumulation at value

Example:
inspect local lib,p,dat,z;
lib := GetLibrary('Random);
p := [0,1,36,0.3];
dat := lib.Binomial:GroupPick(p,10);//pick 10 Binomials
z := lib:EstimateCumulation(dat);
 = [
	[6,7,8,9,10,11,12,13,14,15,16],
	[0.1,0.1,0.2,0.5,0.6,0.8,0.8,0.9,0.9,0.9,1.0]
]
/*
note: the accuracy increases as the number of data increases
*/
_______________________________________________________________
EstimateDiscreteness(data)
Estimates various parameters assuming the data comes from a discrete distribution.
Input	Class	Range	Description
data	Array	(-°,°)	random data

Output	Class	Range	Description
z	Array	(-°,°)	The estimated parameters.
			z[0] = minimum value
			z[1] = smallest increment between data (1)
			z[2] = maximum number of values
			z[3] = discreteness, 0 if discrete

Example:
inspect local lib,p,dat,z;
lib := GetLibrary('Random);
p := [0,1,36,0.3];
dat := lib.Binomial:GroupPick(p,1000);//pick 1000 Binomials
z := lib:EstimateDiscreteness(dat);
 = [1,1,20,0]
_______________________________________________________________
EstimateMedian(data,interval)
Estimates the distibution median from data.
Input	Class	Range	Description
data	Array	(-°,°)	random data
inter	integer	[0,#data)	the interval over which to estimate.

Output	Class	Range	Description
z	Real	(-°,°)	The estimated median of the data.

Example:
inspect local lib,p,dat,z,m;
lib:=GetLibrary('Random);
p:=[0,1,3.3];
dat:=lib.LogNormal:GroupPick(p,1000);//pick 1000 lognormals
z:=lib:EstimateMedian(dat,2);
m:=lib.LogNormal:Median(p);
[z,m]
 = [0.926531544049331,1]
/*
note: the accuracy increases as the number of data increases
*/
_______________________________________________________________
EstimateMode(data,interval)
Estimates the distibution peak from data.
Input	Class	Range	Description
data	Array	(-°,°)	random data
inter	integer	[1,#data)	the interval over which to estimate.
			Use 1 for narrow and 10 for wide peaks.

Output	Class	Range	Description
z	Real	(-°,°)	The estimated mode of the data.

Example:
inspect local lib,p,dat,z,m;
lib := GetLibrary('Random);
p := [0,1,3.3];
dat := lib.LogNormal:GroupPick(p,1000); // pick 1000 lognormals
z := lib:EstimateMode(dat,2);
m := lib.LogNormal:Mode(p);
[z,m]
 = [0.00035837333511032,1.86437423315169e-05]
/*
note: the accuracy increases as the number of data increases
*/
_______________________________________________________________
EstimateProbability(data)
Estimates the probability at each data point.
Input	Class	Range	Description
data	Array	(-°,°)	random data

Output	Class	Range	Description
z	Array	(-°,°)	The estimated probability returned
			as an array of paired data.
			z[0][i] = value
			z[1][i] = probability at value z[0][i]

Example:
inspect local lib,p,dat,z;
lib:=GetLibrary('Random);
p:=[0,1,36,0.3];
dat:=lib.Binomial:GroupPick(p,10);//pick 10 Binomials
z:=lib:EstimateProbability(dat);
 = [[8,9,10,11,12,13,14,15],[0.3,0.1,0,0.2,0.2,0,0.1,0.1]]
/*
note: the accuracy increases as the number of data increases
*/
_______________________________________________________________
SGamma(x)
Standard Gamma random number generator equivalent to Gamma with location parameter of zero and scale parameter of one.
Input	Class	Range	Description
x	Real	[0,°)	shape parameter. If 1 then returns
			exponential distribution.

Output	Class	Range	Description
z	Real	[0,°)    

Example:
inspect local lib,z;
lib := GetLibrary('Random);
z := lib:SGamma(3.2);
 = 1.78813897819078
_______________________________________________________________
SNormal()
Standard Normal random number generator equivalent to Normal
with mean of zero and variance of one.
Output	Class	Range	Description
z	Real	(-°,°) 

Example:
inspect local lib,z;
lib := GetLibrary('Random);
z := lib:SNormal();
 = -1.43674073387962
_______________________________________________________________
SUniform()
Standard Uniform random number generator.
Output	Class	Range	Description
z	Real	[0,1)      

Example:
inspect local lib,z;
lib := GetLibrary('Random);
z := lib:SUniform();
 = 0.229261943139136
_______________________________________________________________
2.2  Distribution properties
_______________________________________________________________
name
Name of the distribution

Example:
inspect local lib,z;
lib := GetLibrary('Random);
z := lib.PT5.name;
 = "Pearson Type V"
_______________________________________________________________
range
The normalized range where the probability is not zero.

Example :
inspect local lib,z;
lib := GetLibrary('Random);
z := lib.PT5.range;
 = [0,1/0]
_______________________________________________________________
type
'Continuous or 'Discrete.

Example :
inspect local lib,z;
lib := GetLibrary('Random);
z := lib.PT5.type;
 = 'Continuous
_______________________________________________________________

2.3  Distribution functions
_______________________________________________________________
CheckParameters(p)
Tests if parameters are valid.  If not then an error is thrown and  execution is halted unless caught by an exception.
Input	Class	Range	Description
p	Array	(-°,°)	parameters to be tested

Output	Class	Range	Description
z	Imm	NIL	No usable output.

Example:
inspect local lib,d,p;
d:=GetLibrary('Random).Normal;
p:=[0,-3];
try d:CheckParameters(p);
onexception |evt.ex.msg.badParm| do
    GetRoot():Notify(3,d.name,
    "Bad Parameter: "&CurrentException().message);
 = {
	_proto: @127,
	timestamp: 49413167,
	nfType: 3,
	nfText: "Bad Parameter: Scale needs to be >0 in CheckParameters",
	overview: "Normal",
	seenByUser: NIL,
	sound: {
	sndFrameType: 'codec,
	codecName: "TDTMFCodec",
	dataType: 16,
	bufferSize: 6400,
	bufferCount: 4,
	compressionType: 6,
	samplingRate: 21600,
	samples: MakeBinaryFromHex("00010001000000000002F9C000002EE00000000000000064004600000000000300002EE0000000000000005A000000000000",'samples),
	userName: "Wheep"
},
	volume: NIL
}
_______________________________________________________________
Cumulation(x,p)
Cumulative function at a number.
Input	Class	Range	Description
x	Real	(-°,°) 
p	Array	(-°,°)	parameters

Output	Class	Range	Description
z	Real	[0,1] 	Cumulative mass (discrete) or
			cumulative density (continuous).

Example:
inspect local d,x,p,z;
d := GetLibrary('Random).Pareto;
x := 12;
p := [0,1,2.2];
z := d:Cumulation(x,p);
 = 0.995775247625742
_______________________________________________________________
Estimator(data,option)
Estimates parameters from data according to the options.  Refer to Distributions section below for options.
Input	Class	Range	Description
data	Array	(-°,°)	random data
option				options for estimating

Output	Class	Range	Description
z	Array	(-°,°)	The estimated parameters.

Example:
inspect local d,p,dat,z;
d:=GetLibrary('Random).pareto;
p:=[0,1,3.3];
dat:=d:GroupPick(p,100);//pick 100 paretos
z:=d:Estimator(dat,'ForceStandard);
 = [0,1.00168448836872,3.37783587756644]
_______________________________________________________________
Generator(p)
Generates a random number according to the parameters.
Input	Class	Range	Description
p	Array	(-°,°)	parameters

Output	Class	Range	Description
z	Real	(-°,°)	random number

Example:
inspect local d,p,z;
d:=GetLibrary('Random).LogNormal;
p:=[0,1,3.3];
z:=d:Generator(p);//pick a lognormal
 = 207.935595135066
_______________________________________________________________
GroupPick(p,N)
Picks N numbers from distribution using parameters p.
Input	Class	Range	Description
p	Array	(-°,°)	parameters to distribution
N	integer	[1,°)	the number of picks.

Output	Class	Range	Description
z	Array	(-°,°)	array of random data.

Example:
inspect local lib,p,z;
lib := GetLibrary('Random);
p := [0,1,3.3];
z := lib.LogNormal:GroupPick(p,10);//pick 10 lognormals
 = [
	50.7119823190568,
	0.130620970825848,
	67.9093649758937,
	0.206698279387369,
	6.16205186026135,
	0.000348876994034619,
	0.111836223940572,
	13,486.8113012619,
	1.096287455653,
	0.0393219509428675
]
_______________________________________________________________
Hazard(x,p)
Hazard function at a number.  The probability that an object will continue to survive if it has lasted up to time x so far.
Input	Class	Range	Description
x	Real	(-°,°)	time of survival
p	Array	(-°,°)	parameters

Output	Class	Range	Description
z	Real	(-°,°)	hazard

Example:
inspect local d,x,p,z;
d := GetLibrary('Random).pareto;
x := 4;
p := [0,1,3.3];
z := d:Hazard(x,p);
 = 0.824999999999997
_______________________________________________________________
InverseCumulation(F,p)
Cumulative function at a number
Input	Class	Range	Description
F	Real	[0,1]	cumulative probability
p	Array	(-°,°)	parameters

Output	Class	Range	Description
z	Real	[0,1]	P(Z<z)=F

Example:
inspect local d,F,p,z;
d := GetLibrary('Random).Pareto;
x := 0.8;
p := [0,1,2.2];
z := d:InverseCumulation(x,p);
 = 2.07832584512462
_______________________________________________________________
Mean(p)
Expectation value.
Input	Class	Range	Description
p	Array	(-°,°)	parameters

Output	Class	Range	Description
z	Real	(-°,°)	The expectation value.

Example:
inspect local d,p,z;
d := GetLibrary('Random).Pareto;
p := [0,1,2.2];
z := d:Mean(p);
 = 1.83333333333333
_______________________________________________________________
Median(p)
Median value. The value at which half of the random data occur below and half above.
Input	Class	Range	Description
p	Array	(-°,°)	parameters

Output	Class	Range	Description
z	Real	(-°,°)	The median value.

Example:
inspect local d,p,z;
d := GetLibrary('Random).Pareto;
p := [0,1,2.2];
z := d:Median(p);
 = 1.37035098472012
_______________________________________________________________
Mode(p)
Peak of distribution.
Input	Class	Range	Description
p	Array	(-°,°)	parameters

Output	Class	Range	Description
z	Real	(-°,°)	The peak value of the probability.

Example:
inspect local d,p,z;
d := GetLibrary('Random).Pareto;
p := [0,1,2.2];
z := d:Mode(p);
 = 1
_______________________________________________________________
Normalize(x,p)
Normalizes x by subtracting the offset and dividing by the scale.
Input	Class	Range	Description
x	Real	(-°,°)	the unnormalized number
p	Array	(-°,°)	the parameters for distribution

Output	Class	Range	Description
z	Real	(-°,°)	the normalized number

Example:
inspect local d,p,z;
d := GetLibrary('Random).LogNormal;
p := [-12,2,3.3];
z := d:Normalize(3,p);
 = 7.5  = (3-(-12))/2
_______________________________________________________________
NotWithinRange(x)
Tests if a normalized number is within range for the distribution.  Negative logic is used to distinguish the two TRUEs above and below the range.  If the number is not within range then the probability at x is zero by definition.
Input	Class	Range	Description
x	Real	(-°,°)	normalized number

Output	Class	Range	Description
z	Imm	NIL	within range
	Integer	0	below range,
		1	above range.

Example:
inspect local d,p,x,z;
d := GetLibrary('Random).LogNormal;
p := [-2.3,1,3.3];
x := d:Normalize(-4,p);
z := d:NotWithinRange(x);
 = 0
// below range
_______________________________________________________________
Probability(x,p)
Probability function at a number
Input	Class	Range	Description
x	Real	(-°,°) 
p	Array	(-°,°)	parameters

Output	Class	Range	Description
z	Real	[0,°)	Probability mass (discrete) or
			probability density (continuous).

Example:
inspect local d,x,p,z;
d := GetLibrary('Random).Pareto;
x := 12;
p := [0,1,2.2];
z := d:Probability(x,p);
 = 0.000774537935280702
_______________________________________________________________
StandardDeviation(p)
Standard deviation, also known as the square root of the variance.
Input	Class	Range	Description
p	Array	(-°,°)	parameters

Output	Class	Range	Description
z	Real	(-°,°)	The standard deviation.

Example:
inspect local d,p,z;
d := GetLibrary('Random).Pareto;
p := [0,1,2.2];
z := d:StandardDeviation(p);
 = 2.76385399196283
_______________________________________________________________
Test(data,p)
Tests data for fitness according to the distribution parameters.
Input	Class	Range	Description
data	Array	(-°,°)	random data
p	Array		the parameters to be passed to the
			probability function.

Output	Class	Range	Description
z	Real	(-°,°)	The smaller this number is the better
			the fit.  It is the average of the
			logarithm of one over the probability
			at each data point.

Example:
inspect local lib,p,dat,p1,t1,p2,t2;
lib:=GetLibrary('Random);
p:=[0,1,3.3];
lib.LogNormal:CheckParameters(p);
dat:=lib.LogNormal:GroupPick(p,100);
p1:=lib.Gamma:Estimator(dat,nil);
t1:=lib.Gamma:Test(dat,p1);
p2:=lib.LogNormal:Estimator(dat,nil);
t2:=lib.LogNormal:Test(dat,p2);
t2<t1
 = TRUE
therefore data is closer to lognormal distribution
_______________________________________________________________
Unnormalize(x,p)
Reverses normalization of a number
Input	Class	Range	Description
x	Real	(-°,°)	the normalized number
p	Array	(-°,°)	the parameters for distribution

Output	Class	Range	Description
z	Real	(-°,°)	the unnormalized number

Example:
inspect local d,p,z;
d := GetLibrary('Random).LogNormal;
p := [-12,2,3.3];
z := d:Unnormalize(3,p);
 = -6 = -12+3*2
_______________________________________________________________

2.4 Continuous Distributions
The following is a list of continuous probability distributions that are in RandomLib.  When a "u" is in the probability function then this means that it is the normalized value ( i.e. u := distrib:Normalize(x,p) = (x-offset)/scale).  The probability is further divided by the scale factor.  An option of NIL that is passed to the Estimator means all parameters will be estimated or a default if they cannot be estimated.
_______________________________________________________________
Beta
Parameters	[offset,scale,a1,a2]
Range		[offset,offset+scale]
Probability	ua1-1(1-u)a2-1/B(a1,a2)
Estimator Options	NIL
		'ForceStandard	offset := 0
					scale := 1
		frame			offset := option.offset
					scale := option.scale
_______________________________________________________________
Cauchy
Parameters	[offset,scale]
Range		(-°,°)
Probability	1/(1+u2)/¹
Estimator Options	NIL
		'ForceStandard	offset := 0
		number			offset := option
_______________________________________________________________
ChiSquared
Parameters	[offset,2,a] // scale must be equal to 2
Range		[offset,°)
Probability	ua/2-1e-u/Gamma(a/2)
Estimator Options	NIL
		'ForceStandard	offset := 0
		number			offset := option
_______________________________________________________________
Exponential
The Exponential distribution.
Parameters	[offset,scale]
Range		[offset,°)
Probability	e-u
Estimator Options	NIL
		'ForceStandard	offset := 0
		number			offset := option
_______________________________________________________________
Gamma
Parameters	[offset,scale,a]
Range		[offset,°)
Probability	ua-1e-u/Gamma(a)
Estimator Options	NIL
		'ForceStandard	offset := 0
		number			offset := option
_______________________________________________________________
Gumbel
Also known as the Extreme-value distribution.
Parameters	[offset,scale]
Range		(-°,°)
Probability	Exp(-u-e-u)
Estimator Options	NIL
		'ForceStandard	offset := 0
		number			offset := option
_______________________________________________________________
Logistic
Parameters	[offset,scale]
Range		(-°,°)
Probability	1/(1+cosh(u))
Estimator Options	NIL
		'ForceStandard	offset := 0
		number			offset := option
_______________________________________________________________
LogNormal
Parameters	[offset,scale,s]
Range		[offset,°)
Probability	u-Log(u)/(s*s*2)-1/(s*Ã(2¹))
Estimator Options	NIL
		'ForceStandard	offset := 0
		number			offset := option
_______________________________________________________________
MassiveBoson
Parameters	[offset,scale]
Range		[offset,°)
Probability	Ãu/(eu-1)/zeta(1.5)/Gamma(1.5)
Estimator Options	NIL
		'ForceStandard	offset := 0
		number			offset := option
_______________________________________________________________
MasslessBoson
This is the probability of energy of a photon for a black-body at equilibrium.
Parameters	[offset,scale]
Range		[offset,°)
Probability	u2/(eu-1)/zeta(3)/Gamma(3)
Estimator Options	NIL
		'ForceStandard	offset := 0
		number			offset := option
_______________________________________________________________
MassiveFermion
Parameters	[offset,scale]
Range		[offset,°)
Probability	Ãu/(eu-1)/eta(1.5)/Gamma(1.5)
Estimator Options	NIL
		'ForceStandard	offset := 0
		number			offset := option
_______________________________________________________________
MasslessFermion
Parameters	[offset,scale]
Range		[offset,°)
Probability	u2/(eu+1)/eta(3)/Gamma(3)
Estimator Options	NIL
		'ForceStandard	offset := 0
		number			offset := option
_______________________________________________________________
Maxwell
Parameters	[offset,scale]
Range		[offset,°)
Probability	4u2e-u*u/Ã¹
Estimator Options	NIL
		'ForceStandard	offset := 0
		number			offset := option
_______________________________________________________________
Normal
Also known as the Gaussian distribution.
Parameters	[offset,scale]
Range		(-°,°)
Probability	e-u*u/2/Ã(2¹)
Estimator Options	NIL
		'ForceStandard	offset := 0
		number			offset := option
_______________________________________________________________
Pareto
Parameters	[offset,scale,a2]
Range		[1+offset,°)
Probability	u-(1+a2)*a2
Estimator Options	'ForceStandard	offset := 0
		number			offset := option
_______________________________________________________________
PT5
This is the Pearson Type V distribution also known as the Inverted Gamma.
Parameters	[offset,scale,a]
Range		[offset,°)
Probability	u-(a+1)e-1/u/Gamma(a)
Estimator Options	NIL
		'ForceStandard	offset := 0
		number			offset := option
_______________________________________________________________
PT6
Pearson Type VI
Parameters	[offset,scale,a1,a2]
Range		[offset,°)
Probability	ua1-1(1+u)-(a1+a2)/B(a1,a2)
Estimator Options	'ForceStandard	offset := 0
					scale := 1
		frame			offset := option.offset
					scale := offset.scale
		number			scale := option
_______________________________________________________________
Rayleigh
Parameters	[offset,scale]
Range		[offset,°)
Probability	u*e-u*u/2
Estimator Options	NIL
		'ForceStandard	offset := 0
		number			offset := option
_______________________________________________________________
Snedecor
Snedecor's F distribution
Parameters	[offset,scale,n1,n2]
Range		[offset,°)
Probability	(u*n1/n2)n1-1(1+u*n1/n2)-(n1+n2)*n1/n2/B(n1,n2)
Estimator Options	'ForceStandard	offset := 0
					scale := 1
		frame			offset := option.offset
					scale := option.scale
		number			scale := option
_______________________________________________________________
Student
Student's t distribution.
Parameters	[offset,scale,n]
Range		(-°,°)
Probability	(1+u2/n)-(n+1)/2/B(n/2,1/2)
Estimator Options	'ForceStandard	offset := 0
					scale := 1
		frame			offset := option.offset
					scale := option.scale
		number			scale := option
_______________________________________________________________
Uniform
Parameters	[offset,scale]
Range		[offset,offset+scale]
Probability	1
Estimator Options	NIL
		'ForceStandard	offset := 0
		number			offset := option
_______________________________________________________________
vonMises
This distribution handles circular measurement.
Parameters	[offset,scale,b]
Range		[offset-scale/2,offset+scale/2]
Probability	eb*cos(¹u)/I0(b)
Estimator Options	'ForceStandard	scale := 360 // degrees in circle
		frame			offset := option.offset
					scale := option.scale
		number			scale := option
_______________________________________________________________
Weibull
Parameters	[offset,scale,a]
Range		[offset,°)
Probability	a*ua-1*Exp(-ua)
Estimator Options	NIL
		'ForceStandard	offset := 0
		number			offset := option
_______________________________________________________________

2.5  Discrete Distributions
The following is a list of discrete probability distributions that are in RandomLib.  When a "u" is in the probability function then this means that it is the normalized value ( i.e. u := distrib:Normalize(x,p) = (x-offset)/incr).  An option of NIL that is passed to the Estimator means all parameters will be estimated or a default if they cannot be estimated.
_______________________________________________________________
Bernoulli
Parameters	[offset,incr,p]
Range		[offset,offset+incr]
Probability	pu(1-p)1-u
Estimator Options	NIL
_______________________________________________________________
Binomial
Parameters	[offset,incr,N,p]
Range		[offset,offset+incr*(N-1)]
Probability	(Nu)pu(1-p)N-u
Estimator Options	NIL
		'ForceStandard	offset := 0
					incr := 1
		frame			offset := option.offset
					incr := option.incr
		number			offset := option
_______________________________________________________________
DiscreteUniform
Parameters	[offset,incr,N]
Range		[offset,offset+incr*(N-1)]
Probability	1/N
Estimator Options	NIL
		'ForceStandard	offset := 0
					incr := 1
		frame			offset := option.offset
					incr := option.incr
		number			offset := option
_______________________________________________________________
Geometric
Parameters	[offset,incr,p]
Range		[offset,°)
Probability	p(1-p)u
Estimator Options	NIL
		'ForceStandard	offset := 0
					incr := 1
		frame			offset := option.offset
					incr := option.incr
		number			offset := option
_______________________________________________________________
Hypergeometric
Parameters	[offset,incr,K,M,N]
Range		[offset,offset+incr*K]
Probability	(Mu)(N-MK-u)/(NK)
Estimator Options	NIL
		'ForceStandard	offset := 0
					incr := 1
		frame			offset := option.offset
					incr := option.incr
		number			offset := option
_______________________________________________________________
Logarithmic
Parameters	[offset,incr,p]
Range		[offset+incr,°)
Probability	-(1-p)u/u
Estimator Options	NIL
		'ForceStandard	offset := 0
					incr := 1
		frame			offset := option.offset
					incr := option.incr
		number			offset := option
_______________________________________________________________
NegativeBinomial
Parameters	[offset,incr,N,p]
Range		[offset,°)
Probability	(N+u-1u)pN(1-p)u
Estimator Options	NIL
		'ForceStandard	offset := 0
					incr := 1
		frame			offset := option.offset
					incr := option.incr
		number			offset := option
_______________________________________________________________
Poisson
Parameters	[offset,incr,L]
Range		[offset,inf)
Probability	Lu e-L/Gamma(u+1)
Estimator Options	NIL
		'ForceStandard	offset := 0
					incr := 1
		frame			offset := option.offset
					incr := option.incr
		number			offset := option
_______________________________________________________________