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.

A196058 Diameter (i.e., largest distance between two vertices) of the rooted tree with Matula-Goebel number n.

Original entry on oeis.org

0, 1, 2, 2, 3, 3, 2, 2, 4, 4, 4, 3, 3, 3, 5, 2, 3, 4, 2, 4, 4, 5, 4, 3, 6, 4, 4, 3, 4, 5, 5, 2, 6, 4, 5, 4, 3, 3, 5, 4, 4, 4, 3, 5, 5, 4, 5, 3, 4, 6, 5, 4, 2, 4, 7, 3, 4, 5, 4, 5, 4, 6, 4, 2, 6, 6, 3, 4, 5, 5, 4, 4, 4, 4, 6, 3, 6, 5, 5, 4, 4, 5, 4, 4, 6, 4, 6, 5, 3, 5, 5, 4, 7, 5, 5, 3, 6, 4, 6, 6, 4, 5, 4, 4, 5, 3, 3, 4, 5, 7, 5, 3, 5, 4, 6, 5, 5, 5, 5, 5
Offset: 1

Views

Author

Emeric Deutsch, Sep 30 2011

Keywords

Comments

The Matula-Goebel number of a rooted tree can be defined in the following recursive manner: to the one-vertex tree there corresponds the number 1; to a tree T with root degree 1 there corresponds the t-th prime number, where t is the Matula-Goebel number of the tree obtained from T by deleting the edge emanating from the root; to a tree T with root degree m>=2 there corresponds the product of the Matula-Goebel numbers of the m branches of T.

Examples

			a(2^m) = 2 because the rooted tree with Matula-Goebel number 2^m is a star with m edges.
		

Crossrefs

Cf. A109082.

Programs

  • Maple
    with(numtheory): a := proc (n) local r, s, H: r := proc (n) options operator, arrow: op(1, factorset(n)) end proc: s := proc (n) options operator, arrow: n/r(n) end proc: H := proc (n) if n = 1 then 0 elif bigomega(n) = 1 then 1+H(pi(n)) else max(H(r(n)), H(s(n))) end if end proc: if n = 1 then 0 elif bigomega(n) = 1 then max(a(pi(n)), 1+H(pi(n))) else max(a(r(n)), a(s(n)), H(r(n))+H(s(n))) end if end proc: seq(a(n), n = 1 .. 120);
  • Mathematica
    r[n_] := r[n] = FactorInteger[n][[1, 1]];
    s[n_] := s[n] = n/r[n];
    H[n_] := H[n] = Which[n == 1, 0, PrimeOmega[n] == 1, 1 + H[PrimePi[n]], True, Max[H[r[n]], H[s[n]]]];
    a[n_] := a[n] = Which[n == 1, 0, PrimeOmega[n] == 1, Max[a[PrimePi[n]], 1 + H[PrimePi[n]]], True, Max[a[r[n]], a[s[n]], H[r[n]] + H[s[n]]]];
    Table[a[n], {n, 1, 120}] (* Jean-François Alcover, Nov 13 2017, after Emeric Deutsch *)
  • PARI
    HD(n) = { if(n==1, return([0,0]),
               my(f=factor(n)~, h=0, d=0, hd);
               foreach(f, p,
                 hd=HD(primepi(p[1]));
                 hd[1]++;
                 d=max(max(d,if(p[2]>1, 2*hd[1], hd[2])),h+hd[1]);
                 h=max(h,hd[1])
               );
               return([h,d])
               )
    };
    A196058(n)=HD(n)[2]; \\ François Marques, Mar 13 2021

Formula

a(1)=0; if n=prime(t), then a(n)=max(a(t), 1+H(t)); if n=r*s (r,s,>=2), then a(n)=max(a(r), a(s), H(r)+H(s)), where H(m) is the height of the tree with Matula-Goebel number m (see A109082). The Maple program is based on this recursive formula.
The Gutman et al. references contain a different recursive formula.
a(n^k) = 2*A109082(n) for k > 1. - François Marques, Mar 13 2021