Skip to content

Ratio of huge products

4 messages · Alberto Magni, R. Michael Weylandt, Peter Langfelder +1 more

#
Hello everybody,

I have to compute something in this form:

x = prod(a:b) / prod(c:d),    where: a < c and b < d and obviously: a
< b and c < d

I cannot make assumptions on the relative position of c,b and a,d.

The problem is that a,b,c,d are large and the products are huge (R return Inf).
Their ratio is less than 1 but significantly higher than 0: it is a
non-tiny probability.

I need to find a way to simplify this ratio.
The only way to solve this that I see is to decompose into prime
factors all the
numbers in the numerator and the denominator and to remove the ones in common

Do you know a better way to do this ?

Thank you,
Alberto
#
Use logs?

Michael

On Thu, Dec 15, 2011 at 1:35 PM, Alberto Magni
<alberto.magni86 at gmail.com> wrote:
#
On Thu, Dec 15, 2011 at 10:35 AM, Alberto Magni
<alberto.magni86 at gmail.com> wrote:
Yes, exp( sum(log(a:c))-sum(log(b:d)) ), which is mathematically
exactly equivalent, unless I made a typo.
Remeber that log of a product is a sum of the logs of the arguments.

Peter.
#
On Dec 15, 2011, at 1:35 PM, Alberto Magni wrote:

            
Well, R does have some limitations.
x <- exp( sum(log(a:b)) -sum(log(c:d)) )
Ewww. That does sound painful.