Returns the difference between two numbers when the arguments and the result are in log.
That is, it returns log(a - b) given log(a) and log(b)
Implementation is less efficient than add(), since we're less likely to use this function, provided for completeness. Notice however that the result only makes sense if the minuend is higher than the subtrahend. Otherwise, we should return the log of a negative number.
It implements the subtraction as:
log(a - b) = log(a) + log(1 - exp(log(b) - log(a))) No need to check for underflow/overflow.
@param logMinuend value in log domain (i.e. log(minuend)) to be subtracted from
@param logSubtrahend value in log domain (i.e. log(subtrahend)) that is being subtracted
@return difference between minuend and the subtrahend in the log domain
@throws IllegalArgumentException
This is a very slow way to do this, but this method should rarely be used.