Module:Utils: Difference between revisions
m next_young_diagram() implemented |
CompactStar (talk | contribs) Adding get_monzo to utils since I think it is useful for multiple modules |
||
Line 191: | Line 191: | ||
return d | return d | ||
end | end | ||
-- get monzo of n/d | |||
-- e.g. for 3/2: {[2] = -1, [3] = 1} | |||
function p.get_monzo(n, d) | |||
local primes = {2,3,5,7,11,13,17,23,29,31,37,41,47,53} | |||
local n_pf = p.prime_factorization_raw(n) | |||
local d_pf = p.prime_factorization_raw(d) | |||
local result = {} | |||
for i=1,#primes do | |||
local t = (n_pf[primes[i]] or 0) - (d_pf[primes[i]] or 0) | |||
if t ~= 0 then | |||
result[primes[i]] = t | |||
end | |||
end | |||
return result | |||
end | |||
return p | return p |