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.

A225640 Array A(n,k) of iterated Landau-like functions, where on the row n=0 A(0,0)=1 and A(0,k>=1)=k, and the successive rows A(n,k) give a maximum value lcm(p1,p2,...,pj,A(n-1,k)) for all partitions {p1+p2+...+pj} of k; square array A(n,k), n>=0, k>=0, read by antidiagonals.

Original entry on oeis.org

1, 1, 1, 2, 1, 1, 3, 2, 1, 1, 4, 6, 2, 1, 1, 5, 12, 6, 2, 1, 1, 6, 30, 12, 6, 2, 1, 1, 7, 30, 60, 12, 6, 2, 1, 1, 8, 84, 60, 60, 12, 6, 2, 1, 1, 9, 120, 420, 60, 60, 12, 6, 2, 1, 1, 10, 180, 840, 420, 60, 60, 12, 6, 2, 1, 1, 11, 210, 1260, 840, 420, 60, 60, 12, 6, 2, 1, 1
Offset: 0

Views

Author

Antti Karttunen, May 14 2013

Keywords

Comments

In this array the maximization of LCM starts from partition {k} of k, instead of partition {1+1+...+1} as in A225630.

Examples

			The top-left corner of the array:
1, 1, 2, 3,  4,  5,  6,   7,   8,   9,    10,    11,    12, ...
1, 1, 2, 6, 12, 30, 30,  84, 120,  180,  210,   330,   420, ...
1, 1, 2, 6, 12, 60, 60, 420, 840, 1260,  840,  4620,  4620, ...
1, 1, 2, 6, 12, 60, 60, 420, 840, 2520, 2520, 13860, 13860, ...
1, 1, 2, 6, 12, 60, 60, 420, 840, 2520, 2520, 27720, 27720, ...
...
		

Crossrefs

Transpose: A225641.
Cf. A225642, A225644, A001477 (row 0), A225646 (row 1).
Rows converge towards A003418 (main diagonal of this array).
See A225630 for a variant employing a similar process, but which uses 1 in column n as the initial seed for that column, instead of n.

Programs

  • Scheme
    (define (A225640 n) (A225640bi (A025581 n) (A002262 n)))
    (define (A225640bi col row) (let ((maxlcm (list 0))) (let loop ((prevmaxlcm (max 1 col)) (stepsleft row)) (if (zero? stepsleft) prevmaxlcm (begin (gen_partitions col (lambda (p) (set-car! maxlcm (max (car maxlcm) (apply lcm (cons prevmaxlcm p)))))) (loop (car maxlcm) (- stepsleft 1)))))))
    (define (gen_partitions m colfun) (let recurse ((m m) (b m) (n 0) (partition (list))) (cond ((zero? m) (colfun partition)) (else (let loop ((i 1)) (recurse (- m i) i (+ 1 n) (cons i partition)) (if (< i (min b m)) (loop (+ 1 i))))))))