login
A393012
List giving least 5-rough number (A007310) of each prime signature.
1
1, 5, 25, 35, 125, 175, 385, 625, 875, 1225, 1925, 3125, 4375, 5005, 6125, 9625, 13475, 15625, 21875, 25025, 30625, 42875, 48125, 67375, 78125, 85085, 109375, 125125, 148225, 153125, 175175, 214375, 240625, 336875, 390625, 425425, 471625, 546875, 625625, 741125
OFFSET
1,2
COMMENTS
Sequences of the form "List giving least p-rough number of each prime signature." for prime p can help in a search for numbers k <= U such that sigma(k) >= b*k where U is some chosen upper bound and b is some chosen constant. If such sequence is S(p, U) then we can find the largest ratio sigma(k)/k for k in S(p, U) and use that to decide to continue searching.
b = 2 describes nonabundant numbers (A023196). p = 2 describes A025487. p = 3 describes A147516. This sequence has p = 5.
FORMULA
Sum_{n>=1} 1/a(n) = Product_{n>=3} 1/(1 - 3/A070826(n)) = 1.290389472537278155572... . - Amiram Eldar, Feb 13 2026
EXAMPLE
175 is in the sequence as it is a product of consecutive primes starting at 5 and for any two distinct prime powers p^ep and q^eq where p < q we have ep >= eq.
PROG
(PARI) is(n) = {if(n == 1, return(1)); e = valuation(n, 5); if(e == 0, return(0)); n\=5^e; if(n==1, return(1)); forprime(p = 7, oo, v = valuation(n, p); if(v > e, return(0)); if(v == 0, return(0)); n\=p^v; if(n==1, return(1)); e = v)}
(Python)
from itertools import count
from functools import lru_cache
from sympy import prime, integer_log
from oeis_sequences.OEISsequences import bisection
def A393012(n):
@lru_cache(maxsize=None)
def g(x, m, j): return sum(g(x//(prime(m)**i), m-1, i) for i in range(j, integer_log(x, prime(m))[0]+1)) if m>3 else max(0, integer_log(x, 5)[0]+1-j)
def f(x):
c, p = n-1+x, 1
for k in count(3):
p *= prime(k)
if p>x:
break
c -= g(x, k, 1)
return c
return bisection(f, n, n) # Chai Wah Wu, Mar 31 2026
(Python)
from itertools import islice
from heapq import heappop, heappush
from sympy import factorint, prevprime, nextprime
def A393012_gen(): # generator of terms if the first n terms are desired.
h, hset = [1], {1}
while True:
yield (m:=heappop(h))
ps = factorint(m)
for p in ps:
if p == 5 or ps[prevprime(p)]>ps[p]:
mp = m*p
if mp not in hset:
heappush(h, mp)
hset.add(mp)
mp = m*nextprime(max(ps.keys(), default=3))
if mp not in hset:
heappush(h, mp)
hset.add(mp)
A393012_list = list(islice(A393012_gen(), 40)) # Chai Wah Wu, Mar 31 2026
CROSSREFS
KEYWORD
nonn
AUTHOR
David A. Corneth, Feb 07 2026
STATUS
approved