public void LogProbabilityMassFunctionTest()
{
JointDistribution dist = JointDistribution.Uniform(1, 2, 5);
double p = System.Math.Log(0.25);
double l = System.Math.Log(0);
Assert.AreEqual(l, dist.LogProbabilityMassFunction(new[] { 0 }));
Assert.AreEqual(l, dist.LogProbabilityMassFunction(new[] { 1 }));
Assert.AreEqual(p, dist.LogProbabilityMassFunction(new[] { 2 }));
Assert.AreEqual(p, dist.LogProbabilityMassFunction(new[] { 3 }));
Assert.AreEqual(p, dist.LogProbabilityMassFunction(new[] { 4 }));
Assert.AreEqual(p, dist.LogProbabilityMassFunction(new[] { 5 }));
Assert.AreEqual(l, dist.LogProbabilityMassFunction(new[] { 6 }));
Assert.AreEqual(l, dist.LogProbabilityMassFunction(new[] { 7 }));
}