question: protected double lnXpluslnY ( double lnX , double lnY ) { double lnYminusLnX , temp ; if ( lnY > lnX ) { temp = lnX ; lnX = lnY ; lnY = temp ; } lnYminusLnX = lnY - lnX ; if ( lnYminusLnX < MININUM_EXPONENT ) { return lnX ; } else { return Math . log1p ( Math . exp ( lnYminusLnX ) ) + lnX ; } }
target:  Takes ln(x) and ln(y) as input, and returns ln(x + y)