Section 19.3 The Size of the Sum of Divisors Function
¶For the rest of this chapter, we will focus on σ1=σ itself, since the sum of divisors function has a deep richness of its own. We could ask questions about evenness, other patterns, and so forth. This short section asks a particularly interesting question. Try the following interactive cell.xxxxxxxxxx
def _(n=range_slider(1,150,1,(1,20))):
top = n[1]
bottom = n[0]
cols = ((top-bottom)//10)+1
T = [cols*['$n$',r'$\sigma(n)$',r'$\sigma(n)/n$']]
list = [[i,sigma(i),(sigma(i)/i).n(digits=3)] for i in range(bottom,top+1)]
list.extend((10-(len(list)%10))*['',''])
for k in range(10):
t = [item for j in range(cols) for item in list[k+10*j]]
T.append(t)
pretty_print(html(table(T,header_row = True, frame = True)))
Question 19.3.1.
For any given n, what is the constant Cn such that σ(n)=Cn⋅n? How big can this get?
xxxxxxxxxx
def _(n=[1..15]):
pretty_print(html(r"Try $2^{%s}\cdot3^{%s}\cdot5^{%s}=%s$"%(n, n, n, 2^n*3^n*5^n)))
pretty_print(html(r"Then $\sigma(%s)=%s=%s\cdot %s\approx %s\cdot %s$"%(2^n*3^n*5^n, sigma(2^n*3^n*5^n), sigma(2^n*3^n*5^n)/(2^n*3^n*5^n), 2^n*3^n*5^n, (sigma(2^n*3^n*5^n)/(2^n*3^n*5^n)).n(digits=3), 2^n*3^n*5^n)))
σ(n)n=∏ki=1(pei+1i−1pi−1)∏ki=1peii=k∏i=1pi−(1/peii)pi−1≈k∏i=1pipi−1
Based on this, we should expect this approximation to be very close when ei are all quite large. Then for large numbers, since pp−1>1, if we multiply by enough of these we will get very large numbers and so σ(n)/n will be greater than any given C, and then σ(n)>Cn.
Of course, p=2 is the best for this since 22−1=2, but the other primes will hopefully be useful for this as well. For instance, n=210310 will have
σ(n)/n=2−1/2102−1⋅3−1/3103−1≈22−1⋅33−1=3
so certainly σ(610) will be nearly 3⋅610.
If we multiply it by 5 as well that should do it, and that gives the results we saw in the previous cell:
2−1/2102−1⋅3−1/3103−1⋅5−1/55−1≈22−1⋅33−1⋅55−1=2⋅32⋅54=154=3.75
We can check out some of these ideas, and how much bigger we can get.
xxxxxxxxxx
print((sigma(6^10)/(6^10)).n())
print((sigma(5*6^10)/(5*6^10)).n())
xxxxxxxxxx
print((sigma(2^4*3^4*5^4*7)/(2^4*3^4*5^4*7)).n(digits=3))
xxxxxxxxxx
N = prod([p^4 for p in primes_first_n(100)])
print((sigma(N)/N).n(digits=3))
Fact 19.3.2.
For any positive C, there is a positive integer n such that
σ(n)>Cn.