login
A206488
The determinant of the distance matrix of the rooted tree having Matula number n.
0
0, -1, 4, 4, -12, -12, -12, -12, 32, 32, 32, 32, 32, 32, -80, 32, 32, -80, 32, -80, -80, -80, -80, -80, 192, -80, 192, -80, -80, 192, -80, -80, 192, -80, 192, 192, -80, -80, 192, 192, -80, 192, -80, 192, -448, 192, 192, 192, 192, -448, 192, 192, -80, -448, -448, 192, 192, 192, -80, -448
OFFSET
1,3
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.
REFERENCES
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 Y-N. 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 Review, 10, 1968, 273.
FORMULA
The Maple program d finds recursively the distance matrix (time consuming).
EXAMPLE
a(2)=-1 because the rooted tree with Matula number 2 is the one-edge tree with distance matrix [(0,1, (1,0)].
MAPLE
with(numtheory): with(linalg): with(LinearAlgebra): V := 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 1 elif bigomega(n) = 1 then 1+V(pi(n)) else V(r(n))+V(s(n))-1 end if end proc: d := proc (n) local r, s, C, a: r := proc (n) options operator, arrow: op(1, factorset(n)) end proc: s := proc (n) options operator, arrow: n/r(n) end proc: C := proc (A, B) local c: c := proc (i, j) options operator, arrow: A[1, i]+B[1, j+1] end proc: Matrix(RowDimension(A), RowDimension(B)-1, c) end proc: a := proc (i, j) if i = 1 and j = 1 then 0 elif 2 <= i and 2 <= j then d(pi(n))[i-1, j-1] elif i = 1 then 1+d(pi(n))[1, j-1] elif j = 1 then 1+d(pi(n))[i-1, 1] else end if end proc: if n = 1 then Matrix(1, 1, [0]) elif bigomega(n) = 1 then Matrix(V(n), V(n), a) else Matrix(blockmatrix(2, 2, [d(r(n)), C(d(r(n)), d(s(n))), Transpose(C(d(r(n)), d(s(n)))), SubMatrix(d(s(n)), 2 .. RowDimension(d(s(n))), 2 .. RowDimension(d(s(n))))])) end if end proc: for n to 60 do dd[n] := d(n) end do: seq(Determinant(dd[n]), n = 1 .. 60);
CROSSREFS
Sequence in context: A269629 A241496 A273412 * A273491 A168398 A281913
KEYWORD
sign
AUTHOR
Emeric Deutsch, Apr 14 2012
STATUS
approved