cp's OEIS Frontend

This is a front-end for the Online Encyclopedia of Integer Sequences, made by Christian Perfect. The idea is to provide OEIS entries in non-ancient HTML, and then to think about how they're presented visually. The source code is on GitHub.

A356637 a(n) = A000265(A263931(n)).

Original entry on oeis.org

1, 1, 1, 1, 1, 9, 3, 3, 45, 5, 1, 21, 7, 175, 675, 45, 45, 1485, 5775, 5775, 45045, 2145, 195, 8775, 2925, 5733, 22491, 833, 6545, 373065, 24871, 24871, 1566873, 3086265, 181545, 357903, 39767, 39767, 156975, 309925, 61985, 5020785, 239085, 20322225, 160730325
Offset: 0

Views

Author

Peter Luschny, Sep 07 2022

Keywords

Comments

Let n >= 5. If a(n) is squarefree, then 2 divides binomial(2*n, n) more than once and is the only prime that does so. There is only a finite number of such cases (see A059097).
An efficient algorithm for the calculation is available, which is based on prime factorization. See the SageMath implementation. The main application is the efficient calculation of the central binomial coefficient, which is the product of this sequence, the Glaisher/Gould sequence, and the upper primorial function (see the formula section).
Since the central binomial coefficient is a bisection of the swinging factorial A056040, and the swinging factorial, in turn, is the building block for an efficient algorithm for the computation of the factorial function, the terms of this sequence occur as factors in all these computations. See the links for details.

Examples

			Let n = 22 and consider the prime factorization of m = binomial(2*n, n):
2^3 * [3 * 5 * 13] * 23 * 29 * 31 * 37 * 41 * 43. Then a(22) = 3 * 5 * 13. This is what is left after the 'prime tail' A261130(n) and the 'prime head' A006519(m) = A001316(n) have been cut off.
		

Crossrefs

Programs

  • Maple
    A263931 := n -> binomial(2*n, n) / convert(select(isprime, {$n+1..2*n}), `*`):
    A000265 := n -> n / 2^padic[ordp](n, 2):
    seq(A000265(A263931(n)), n = 0..45);
  • SageMath
    def A356637(n: int) -> int:
        m = 2 * n
        if m < 5: return 1
        sqrtm = isqrt(m) + 1
        R = prime_range(sqrtm, m // 3 + 1)
        factors = [x for x in R if is_odd(m // x)]
        for prime in prime_range(3, sqrtm):
            p: int = 1
            q: int = m
            while True:
                q //= prime
                if q == 0:
                    break
                if q & 1 == 1:
                    p *= prime
            if p > 1:
                factors.append(p)
        return product(factors)
    print([A356637(n) for n in range(45)])

Formula

A000984(n) = a(n) * A001316(n) * A261130(n) for n >= 2.