ilogSum = {
let partialSums = [];
let graphLimit = 2 ** 18;
let intLogs = getIntLogs(graphLimit);
let altSum = 0;
let sum = 0;
let primeSum = 0;
let primes = getPrimes(graphLimit);
let primeIndex = 0;
for (let [index, ilog] of Object.entries(intLogs)) {
while (primes[primeIndex] <= index) {
let p = primes[primeIndex];
primeSum += p / (p - 1);
primeIndex++;
}
altSum += ilog.intLog * (index % 2 === 0 ? 1 : -1);
sum += ilog.intLog;
partialSums.push({
index: +index,
sum,
altSum,
asymptote: index * primeSum * 0.83,
ratio: (index * primeSum) / sum
});
}
return partialSums;
}