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.

A196047 Path length of the rooted tree with Matula-Goebel number n.

Original entry on oeis.org

0, 1, 3, 2, 6, 4, 5, 3, 6, 7, 10, 5, 8, 6, 9, 4, 9, 7, 7, 8, 8, 11, 11, 6, 12, 9, 9, 7, 12, 10, 15, 5, 13, 10, 11, 8, 10, 8, 11, 9, 13, 9, 11, 12, 12, 12, 15, 7, 10, 13, 12, 10, 9, 10, 16, 8, 10, 13, 14, 11, 13, 16, 11, 6, 14, 14, 12, 11, 14, 12, 14, 9, 14, 11, 15, 9, 15, 12, 17, 10, 12, 14, 17, 10, 15, 12, 15, 13, 12, 13, 13, 13, 18, 16, 13, 8, 19, 11, 16, 14
Offset: 1

Views

Author

Emeric Deutsch, Sep 27 2011

Keywords

Comments

The path length of a rooted tree is defined as the sum of distances of all nodes to the root of the tree.
The Matula-Goebel number of a rooted tree is 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(7) = 5 because the rooted tree with Matula-Goebel number 7 is the rooted tree Y (0+1+2+2 = 5).
a(2^m) = m because the rooted tree with Matula-Goebel number 2^m is a star with m edges.
		

Crossrefs

Programs

  • Haskell
    import Data.List (genericIndex)
    a196047 n = genericIndex a196047_list (n - 1)
    a196047_list = 0 : g 2 where
       g x = y : g (x + 1) where
         y = if t > 0 then a196047 t + a061775 t else a196047 r + a196047 s
             where t = a049084 x; r = a020639 x; s = x `div` r
    -- Reinhard Zumkeller, Sep 03 2013
    
  • Maple
    with(numtheory): a := proc (n) local r, s, N: r := proc (n) options operator, arrow: op(1, factorset(n)) end proc: s := proc (n) options operator, arrow: n/r(n) end proc: N := proc (n) if n = 1 then 1 elif bigomega(n) = 1 then 1+N(pi(n)) else N(r(n))+N(s(n))-1 end if end proc: if n = 1 then 0 elif bigomega(n) = 1 then a(pi(n))+N(pi(n)) else a(r(n))+a(s(n)) end if end proc: seq(a(n), n = 1 .. 100);
  • Mathematica
    a[m_] := Module[{r, s, Nn},
       r[n_] := FactorInteger[n][[1, 1]];
       s[n_] := n/r[n];
       Nn[n_] := Which[n == 1, 1,
          PrimeOmega[n] == 1, 1+Nn[PrimePi[n]],
          True, Nn[r[n]]+Nn[s[n]]-1];
       Which[m == 1, 0,
       PrimeOmega[m] == 1, a[PrimePi[m]]+Nn[PrimePi[m]],
       True, a[r[m]]+a[s[m]]]];
    Table[a[n], {n, 1, 100}] (* Jean-François Alcover, May 03 2023, after Maple code *)
  • PARI
    NPl(n) = { if(n==1, return([1,0]),
        my(f=factor(n)~, v=Mat(vector(#f,k,NPl(primepi(f[1,k]))~))  );
        return( [ 1+sum(k=1,#f,v[1,k]*f[2,k]) , sum(k=1,#f,(v[1,k]+v[2,k])*f[2,k]) ] ) )
      };
    A196047(n) = NPl(n)[2]; \\ François Marques, Apr 02 2021

Formula

a(1)=0; if n=prime(t) then a(n)=a(t)+N(t), where N(t) is the number of nodes of the rooted tree with Matula number t; if n=r*s (r,s>=2), then a(n)=a(r)+a(s). The Maple program is based on this recursive formula.
a(n) = A196048(n) + A343006(n). - François Marques, Apr 02 2021