Method: Prime#int_from_prime_division

Defined in:
lib/prime.rb

#int_from_prime_division(pd) ⇒ Object

Re-composes a prime factorization and returns the product.

For the decomposition:

[[p_1, e_1], [p_2, e_2], ..., [p_n, e_n]],

it returns:

p_1**e_1 * p_2**e_2 * ... * p_n**e_n.

Parameters

pd

Array of pairs of integers. Each pair consists of a prime number – a prime factor – and a natural number – its exponent (multiplicity).

Example

Prime.int_from_prime_division([[3, 2], [5, 1]])  #=> 45
3**2 * 5                                         #=> 45
[View source]

268
269
270
271
272
# File 'lib/prime.rb', line 268

def int_from_prime_division(pd)
  pd.inject(1){|value, (prime, index)|
    value * prime**index
  }
end