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.

A064364 Positive integers sorted by A001414(n), the sum of their prime divisors, as the major key and n as the minor key.

Original entry on oeis.org

1, 2, 3, 4, 5, 6, 8, 9, 7, 10, 12, 15, 16, 18, 14, 20, 24, 27, 21, 25, 30, 32, 36, 11, 28, 40, 45, 48, 54, 35, 42, 50, 60, 64, 72, 81, 13, 22, 56, 63, 75, 80, 90, 96, 108, 33, 49, 70, 84, 100, 120, 128, 135, 144, 162, 26, 44, 105, 112, 125, 126, 150, 160, 180, 192, 216, 243
Offset: 1

Views

Author

Howard A. Landman, Sep 25 2001

Keywords

Comments

This is a permutation of the positive integers.
a(1) could be taken as 0 because 1 is not a member of A001414 and one could start with a(0)=1 (see the W. Lang link).
The row length sequence of this array is A000607(n), n>=2.
If the array is [1,0,2,3,4,5,6,6,...] with offset 0 then the row length sequence is A000607(n), n>=0.
From David James Sycamore, May 11 2018: (Start)
For n > 1, a(n) is the smallest number not yet seen such that sopfr(a(n)) is the least possible integer. The sequence lists in increasing order elements of the finite sets S(k) = {x: sopfr(x)=k}, k >= 0, where sopfr(x) = 0 iff x = 1. When a(n) = A056240(k) for some k >= 2, then sopfr(a(n)) = k and a(n) is the first of A000607(k) terms, all of which have sopfr = k. (A000607(k) is the number of partitions of k into prime parts.) Consequently the sequence follows a sawtooth profile, rising from a(n) = A056240(k) to A000792(k), the greatest number with sopfr = k, then starting over with A056240(k+1) for the next larger value of sopfr. (End) [Edited by M. F. Hasler, Jan 19 2019]

Examples

			The triangle reads:
1,
(0,) (see comment in link to "first 16 rows" by W. Lang)
2,
3,
4,
5,  6,
8,  9,
7,  10, 12,
15, 16, 18,
14, 20, 24, 27,
21, 25, 30, 32, 36,
11, 28, 40, 45, 48, 54,
35, 42, 50, 60, 64, 72, 81,
13, 22, 56, 63, 75, 80, 90, 96, 108,
...
		

Crossrefs

Cf. A001414.
Cf. A000607 (row lengths), A002098 (row sums), A056240 (least = first term in the n-th row), A000792 (greatest term in the n-th row).
Cf. A257815 (inverse).

Programs

  • Haskell
    import Data.List (partition, union)
    a064364 n k = a064364_tabf !! (n-1) !! (k-1)
    a064364_row n = a064364_tabf !! (n-1)
    a064364_tabf = [1] : tail (f 1 [] 1 (map a000792 [2..])) where
       f k pqs v (w:ws) = (map snd pqs') :
         f (k + 1) (union pqs'' (zip (map a001414 us) us )) w ws where
           us = [v + 1 .. w]
           (pqs', pqs'') = partition ((== k) . fst) pqs
    a064364_list = concat a064364_tabf
    -- Reinhard Zumkeller, Jun 11 2015
    
  • Mathematica
    terms = 1000; nmax0 = 100000 (* a rough estimate of max sopfr *);
    sopfr[n_] := sopfr[n] = Total[Times @@@ FactorInteger[n]];
    f[n1_, n2_] := Which[t1 = sopfr[n1]; t2 = sopfr[n2]; t1 < t2, True, t1 == t2, n1 <= n2, True, False];
    Clear[g];
    g[nmax_] := g[nmax] = Sort[Range[nmax], f][[1 ;; terms]];
    g[nmax = nmax0];
    g[nmax += nmax0];
    While[g[nmax] != g[nmax - nmax0], Print[nmax]; nmax += nmax0];
    A064364 = g[nmax] (* Jean-François Alcover, Mar 13 2019 *)
  • PARI
    lista(nn) = {nmax = A000792(nn); v = vector(nmax, k, A001414(k)); for (n=1, nn, vn = select(x->x==n, v, 1); for (k = 1, #vn, print1(vn[k], ", ")))} \\ Michel Marcus, May 01 2018
    
  • PARI
    A064364_vec(N, k=6, L=9)={vector(N, i, if(i<7, N=i, until(A001414(N+=1)==k, ); NA056240(k)-1))} \\ To compute terms up to a given value of k=sopfr(n) and/or for large N >> 1000, it is more efficient to use code similar to lista() above, with "for(k...)" replaced by "a=concat(a, vn)". - M. F. Hasler, Jan 19 2019

Formula

If a(n) = A056240(k) for some k then a(n+A000607(k)-1) = A000792(k). - David James Sycamore, May 11 2018

Extensions

More terms from Vladeta Jovovic, Sep 27 2005