primeFactorization(num) := primeFactorizationHelp(num, 2, []); primeFactorizationHelp(num, divisor, factors(1)) := factors when num <= 1 else primeFactorizationHelp(num, divisor + 1, factors) when num mod divisor /= 0 else primeFactorizationHelp(num / divisor, divisor, factors ++ [divisor]);