|
|
A196056
|
|
Triangle read by rows: T(n,k) is the number of nodes at level k>=1 of the rooted tree having Matula-Goebel number n (n>=2).
|
|
3
|
|
|
1, 1, 1, 2, 1, 1, 1, 2, 1, 1, 2, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 3, 1, 1, 2, 1, 2, 2, 2, 2, 1, 4, 1, 1, 2, 3, 2, 1, 3, 3, 1, 1, 2, 3, 2, 1, 1, 1, 1, 2, 2, 4, 1, 2, 2, 2, 2, 2, 1, 3, 3, 3, 2, 1, 2, 1, 1, 3, 2, 1, 1, 1, 1, 1, 1, 5, 2, 2, 1, 1, 2, 1, 2, 2, 3, 1, 4, 2, 1, 3, 1, 2, 3, 2, 3, 1, 4, 1, 1, 1, 1, 2, 1, 3, 3, 1, 2, 2, 3, 1, 1, 1, 3, 3, 1
(list;
graph;
refs;
listen;
history;
text;
internal format)
|
|
|
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,...).
The generating polynomial of row n is the partial Wiener polynomial of the rooted tree having Matula-Goebel number n with respect to the root (for partial Wiener polynomial see the Doslic reference, p. 68).
|
|
LINKS
|
|
|
FORMULA
|
We give the recursive construction of the row generating polynomials R(n)=R(n,x). R(1)=0; if n = pprime(t) (=the t-th prime), then R(n)=x*R(t) + x; if n=r*s (r,s>=2), then R(n)=R(r)+R(s) (2nd Maple program yields R(n)).
|
|
EXAMPLE
|
Row n=7 is [1,2] because the rooted tree with Matula-Goebel number 7 is the rooted tree Y, having 1 node at level 1 and 2 nodes 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;
1,1;
2,
1,1,1;
2,1;
1,2;
3;
2,2;
2,1,1;
...
|
|
MAPLE
|
with(numtheory): R := 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 = 1 then 0 elif bigomega(n) = 1 then sort(expand(x*R(pi(n))+x)) else sort(expand(R(r(n))+R(s(n)))) end if end proc: for n from 2 to 45 do seq(coeff(R(n), x, k), k = 1 .. degree(R(n))) end do;
with(numtheory): R := 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 = 1 then 0 elif bigomega(n) = 1 then sort(expand(x*R(pi(n))+x)) else sort(expand(R(r(n))+R(s(n)))) end if end proc: R(987654321);
|
|
MATHEMATICA
|
r[n_] := FactorInteger[n][[1, 1]];
s[n_] := n/r[n];
R[n_] := Which[ n == 1, 0, PrimeOmega[n] == 1, x*R[PrimePi[n]] + x, True, R[r[n]] + R[s[n]]];
T[n_] := Rest@CoefficientList[R[n], x];
|
|
PROG
|
(PARI) P(n)={ if(n==1, return(0),
my(f=factor(n)~, v=vector(#f, k, P(primepi(f[1, k]))) );
return( 'x*sum(k=1, #f, (v[k]+1)*f[2, k]) ) )
};
|
|
CROSSREFS
|
|
|
KEYWORD
|
nonn,tabf
|
|
AUTHOR
|
|
|
EXTENSIONS
|
|
|
STATUS
|
approved
|
|
|
|