For a theoretical discussion of highly abundant numbers, I recommend a paper by Amir Akbary and Zachary Friggstad: “”Superabundant Numbers and the Riemann Hypothesis”. On the computational side, Keith Briggs has done extensive computations on colossally abundant numbers and their superset, the superabundant numbers.
Lately, my PARI/gp computations had numbers divisible by all of the first 2 million or so primes. I don’t anticipate learning something really new, so I’m saving my functions and related information to this blog post, from the session copied to file.
1 9999.9232266446326418187149410994781007
1 9999.9232266880843627443702299721036732
1 9999.9232267316056596584639606275433640
1 9999.9232267752155476413449702159867178
1 9999.9232268187048596669282189065799779
[2052132, 1009, 87, 27, 14, 9, 6, 5, 4, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 33358632.339692724277077694610619036065, 33358635.768925832297405813021639022195]
1 9999.9232268623207929088716587082809338
1 9999.9232269058731958161056893493794586
1 9999.9232269494571440822683462069651571
1 9999.9232269930916527483518243572963142
1 9999.9232270368527820810878248045484237
[2052137, 1009, 87, 27, 14, 9, 6, 5, 4, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 33358718.953146962066189699115062568343, 33358722.382380219993185776200260255519]
1 9999.9232270805313660867630525163905584
1 9999.9232271242224801831473119622153458
1 9999.9232271678880943008994416520232341
1 9999.9232272114901785083265040180801498
1 9999.9232272551618377980601809722333712
[2052142, 1009, 87, 27, 14, 9, 6, 5, 4, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 33358805.566613672074031958384239640313, 33358808.995847079907322060885461909710]
time = 6h, 6min, 40,599 ms.
### Last line of output before completion of 8000 loops, the last time.
? \u
harmonic =
(Z)->Euler+psi(Z+1)
### the user-defined function ‘harmonic’
for(YYY=1,niter,for(ZZZZ=1,5,thebest=0;nowpower=vector(30);for(X=1,30,nowpower[X]=sum(Z=1,90,www[Z]>www[X]));testprime=vector(30);for(X=1,30,testprime[X]=prime(www[X]+1));testcpp=vector(30);for(X=1,30,testcpp[X]=newcpp*testprime[X]);testsigcpp=vector(30);for(X=1,30,testsigcpp[X]=newsigcpp*(sum(Y=0,nowpower[X]+1,testprime[X]^Y)/sum(Y=0,nowpower[X],testprime[X]^Y)));cst=base*newsigcpp/(harmonic(newcpp)+log(harmonic(newcpp))*exp(harmonic(newcpp)));rat=vector(30);for(X=1,30,rat[X]=base*testsigcpp[X]/(harmonic(testcpp[X])+log(harmonic(testcpp[X]))*exp(harmonic(testcpp[X]))));for(X=1,30,newr2=rat[X];if(newr2>cst,cst=newr2;thebest=X));if(thebest>0,newcpp=testcpp[thebest];newsigcpp=testsigcpp[thebest];www[thebest]=www[thebest]+1);if(thebest>0,print(thebest,” “,rat[thebest])););www[99]=log(newcpp);www[100]=log(newsigcpp);print(www))
### That above should be the current command-line.
I forgot this:
? www
%991 = [2052142, 1009, 87, 27, 14, 9, 6, 5, 4, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 33358805.566613672074031958384239640313, 33358808.995847079907322060885461909710]
### We still have a product of 28 primorial, i.e.
### primorial(2052142)*primorial(1009)* … *primorial(1)^11 .
###
### the last two entries in www are the natural logarithms of
### the product ‘n’ of the 28 primorials, and
### the natural log. of sigma(n), that is the sum of divisors
### function at ‘n’.
? niter
%990 = 8000
### niter is the number of outer loops to do.