OFFSET
2,4
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.
Number of entries in row n is A109082(n) (n=2,3,...).
LINKS
F. Goebel, On a 1-1-correspondence between rooted trees and natural numbers, J. Combin. Theory, B 29 (1980), 141-143.
I. Gutman and A. Ivic, On Matula numbers, Discrete Math., 150, 1996, 131-142.
I. Gutman and Yeong-Nan Yeh, Deducing properties of trees from their Matula numbers, Publ. Inst. Math., 53 (67), 1993, 17-22.
D. W. Matula, A natural rooted tree enumeration by prime factorization, SIAM Rev. 10 (1968) 273.
FORMULA
We give the recursive construction of the row generating polynomials P(n)=P(n,x). P(2)=x; if n = prime(t), then P(n)=x*P(t); if n=r*s (r,s>=2), then P(n)=P(r)+P(s) (2nd Maple program yields P(n)).
EXAMPLE
Row n=7 is [0,2] because the rooted tree with Matula-Goebel number 7 is the rooted tree Y, having 0 leaves at level 1 and 2 leaves at level 2.
Row n=2^m is [m] because the rooted tree with Matula-Goebel number 2^m is a star with m edges.
Triangle starts:
1;
0,1;
2;
0,0,1;
1,1;
0,2;
3;
0,2;
...
MAPLE
with(numtheory): P := proc (n) local r, s: r := proc (n) options operator, arrow: op(1, factorset(n)) end proc: s := proc (n) options operator, arrow: n/r(n) end proc: if n = 2 then x elif bigomega(n) = 1 then sort(expand(x*P(pi(n)))) else sort(P(r(n))+P(s(n))) end if end proc: for n from 2 to 30 do seq(coeff(P(n), x, k), k = 1 .. degree(P(n))) end do; # yields sequence in triangular form
with(numtheory): P := proc (n) local r, s: r := proc (n) options operator, arrow: op(1, factorset(n)) end proc: s := proc (n) options operator, arrow: n/r(n) end proc: if n = 2 then x elif bigomega(n) = 1 then sort(expand(x*P(pi(n)))) else sort(P(r(n))+P(s(n))) end if end proc: for n from 2 to 30 do P(n) end do;
MATHEMATICA
r[n_] := FactorInteger[n][[1, 1]];
s[n_] := n/r[n];
P[n_] := Which[n == 2, x, PrimeOmega[n] == 1, x*P[PrimePi[n]], True, P[r[n]] + P[s[n]]];
T[n_] := Rest@CoefficientList[P[n], x];
Table[T[n], {n, 2, 50}] // Flatten (* Jean-François Alcover, Jun 21 2024, after first Maple code *)
CROSSREFS
KEYWORD
nonn,tabf
AUTHOR
Emeric Deutsch, Oct 06 2011
EXTENSIONS
Keyword tabf added by Michel Marcus, Apr 09 2013
STATUS
approved