こんにちは。Mark6という者です。
皆さんは
OEIS
(オンライン整数列大辞典)というサイトをご存じでしょうか。
オンライン整数列大辞典は、無料で利用可能な整数列(各項が整数である数列)のオンラインデータベースである。
2018年3月時点で30万を超える整数列の情報が収められており、この種のデータベースとしては最大のものである。( Wikipedia より)
このサイトで数列を検索すると、しばしば下のような記述を目にします。
数列番号A000108(カタラン数)のページ、赤線は筆者
このページでは、OEISにおけるThe Hankel transform(以下ハンケル変換)について、定義及び性質を紹介します。
内容は主に参考文献[1][2]の抜粋・翻訳・解説になるので、興味のある方はぜひそちらを読んでください。
予備知識は行列式を仮定します。
一般にHankel transformやハンケル変換といったら、ベッセル関数を用いた積分変換の一種であるハンケル変換、およびそれの派生である(準)離散ハンケル変換を指すことが多いです。この記事ではそれとは異なる、行列式を利用する数列変換を扱います。
数列$\lbrace a_n \rbrace_{n \geq 0}$に対して、数列$\lbrace h_n \rbrace_{n \geq 0}$を以下の行列式で定める。
$$h_n =
\begin{vmatrix}
a_0 & a_1 & a_2 & \cdots &a_{n} \\
a_1 & a_2 & a_3 & \cdots &a_{n+1} \\
a_2 & a_3 & a_4 & \cdots &a_{n+2} \\
\vdots & \vdots &\vdots & \ddots & \vdots\\
a_{n} & a_{n+1} & a_{n+2} & \cdots & a_{2n}
\end{vmatrix}
$$
この数列$\lbrace h_n \rbrace$を、数列$\lbrace a_n \rbrace$のハンケル変換と呼ぶ。
数列を1-indexedにしたものをハンケル変換ということもあるようです。
例えば、
$h_0=a_0$
$h_1=a_0a_2-a_1^2$
$h_2=a_0a_2a_4-a_0a_3^2-a_1^2a_4+2a_1a_2a_3-a_4^3$
などが分かります。
そもそも、
$$
\begin{bmatrix}
a & b & c & d \\
b & c & d & e \\
c & d & e & f \\
d & e & f & g
\end{bmatrix}
$$
のような、右上~左下のナナメに値が等しいような行列をハンケル行列というようです(おそらくハンケル変換という名称もそこから来ているのでしょう)。
カタラン数
$$C_n=\frac{(2n)!}{n!(n+1)!}$$
のハンケル変換を$\lbrace a_n \rbrace$とすると、
$a_n = 1$
$n$ | $0$ | $1$ | $2$ | $3$ | $4$ | $\cdots$ |
---|---|---|---|---|---|---|
$C_n$ | $1$ | $1$ | $2$ | $5$ | $14$ | $\cdots$ |
$a_n$ | $1$ | $1$ | $1$ | $1$ | $1$ | $\cdots$ |
カタラン数は、格子経路の数え上げ等で有名な数列です。
変換先は非常に単純な数列になります。
モンモール数
$$D_n = \sum_{k=0}^{n} \frac{(-1)^{k}n!}{k!}$$
のハンケル変換を$\lbrace b_n \rbrace$とすると、
$$b_n=\prod_{i=0}^{n} (i!)^2$$
$n$ | $0$ | $1$ | $2$ | $3$ | $4$ | $\cdots$ |
---|---|---|---|---|---|---|
$D_n$ | $1$ | $0$ | $1$ | $2$ | $9$ | $\cdots$ |
$b_n$ | $1$ | $1$ | $4$ | $144$ | $82944$ | $\cdots$ |
モンモール数は、完全順列(攪乱数列)の個数として定義される数列です。
階乗
$$f_n=n!$$
のハンケル変換を$\lbrace d_n \rbrace$とすると
$$d_n=\prod_{i=0}^{n} (i!)^2$$
$n$ | $0$ | $1$ | $2$ | $3$ | $4$ | $\cdots$ |
---|---|---|---|---|---|---|
$f_n$ | $1$ | $1$ | $2$ | $6$ | $24$ | $\cdots$ |
$d_n$ | $1$ | $1$ | $4$ | $144$ | $82944$ | $\cdots$ |
変換先はモンモール数と同一の数列です。
今までに述べた例だけでもかなりハンケル変換の面白さが感じられたのではないでしょうか。
どうやら、組み合わせ論的な文脈を持つ数列とハンケル変換は相性がよさそうです。
いくつかの性質を列挙します。
ハンケル変換の対応関係は、多対一である
モンモール数と階乗のハンケル変換が同じ数列であったことからも分かる通り、複数の数列が同一のハンケル変換を持つことがあります。実際OEISでは、変換先が$1,1,1,1,1,\cdots$という数列になる20ほどの数列が見つかっているそうです[1]。
ここからは、多対一の対応だからこそ存在する「不変性」について述べます。
ハンケル変換は二項変換によって不変である
ここでの二項変換とは次の変換のことで、一般的に用いられている対合のアレとは異なります(適当に区別できる用語をご存じの方いらしたらご教示ください...)
数列$\lbrace a_n \rbrace$に対して
$$b_n = \sum_{i=0}^{n} {}_n \mathrm{C}_i a_i$$
で定まる数列$\lbrace b_n \rbrace$を、$\lbrace a_n \rbrace$の二項変換と呼ぶ。
この性質2は、$\lbrace a_n \rbrace$のハンケル変換と、$\lbrace b_n \rbrace$のハンケル変換が同一の数列である、という主張です。
数式でいうなら、数列$\lbrace a_n \rbrace$のハンケル変換を$H(a)$、二項変換を$B(a)$と表すとして
$$H(B(a)) = H(a)$$
と書けます。
これは非自明な、しかし非常に興味深い性質です。
ハンケル変換は反転変換によって不変である
適当な訳語が見当たらなかったので反転変換としましたが、英語ではInvert Transformです。
これはそもそもの定義を探すのに苦労しましたが、どうやら下の式のように形式的冪級数を用いて定義される物のようです[4]。定義内では数列は1-indexedなので、ハンケル変換するときは適当に調整するみたいですが、細かいところは飛ばします。
数列$\lbrace a_n \rbrace$に対して
$$1+\sum_{n=1}^{\infty} b_nx^n = \frac{1}{1-\sum_{n=1}^{\infty} a_n x^n}$$
で定まる$\lbrace b_n \rbrace$を、$\lbrace a_n \rbrace$の反転変換と呼ぶ。
項ごとに明示的に書くならこのようになります:
数列$\lbrace a_n \rbrace$に対して
$$b_n=\sum_{i=1}^{n} \sum_{x_1+\cdots+x_i=n} a_{x_1}\cdots a_{x_i}$$
で定まる$\lbrace b_n \rbrace$を、$\lbrace a_n \rbrace$の反転変換と呼ぶ。
(内側のシグマについて$x_i \in \mathbb{N}$)
数式でいうなら、数列$\lbrace a_n \rbrace$のハンケル変換を$H(a)$、反転変換を$I(a)$と表すとして
$$H(I(a)) = H(a)$$
と書けます。
これも非常に興味深い性質です。
定理2については、より強い下の性質も成立します。
ハンケル変換は、$k$-降下二項変換について不変である
ここで、$k \geq 1$に対し$k$-降下二項変換とは、参考文献[2]内で触れられた次の変換を指します。
数列$\lbrace a_n \rbrace$と$k \geq 1$に対して
$$b_n=\sum_{i=0}^{n} {}_n \mathrm{C}_i k^{n-i} a_i$$
で定まる$\lbrace b_n \rbrace$を、$\lbrace a_n \rbrace$の$k$-降下二項変換と呼ぶ。
$i$が増えるにしたがって$k$の肩の$n-i$が減少することが「降下」の由来のようです。
数式でいうなら、数列$\lbrace a_n \rbrace$のハンケル変換を$H(a)$、$k$-降下二項変換を$F(a,k)$と表すとして
$$H(F(a,k)) = H(a)$$
と書けます。$k=1$の場合は定理2と同一の結果です。
降下というからには類似した$k$-「上昇」二項変換も定義されます。
数列$\lbrace a_n \rbrace$と$k \geq 1$に対して
$$b_n=\sum_{i=0}^{n} {}_n \mathrm{C}_i k^{i} a_i$$
で定まる$\lbrace b_n \rbrace$を、$\lbrace a_n \rbrace$の$k$-上昇二項変換と呼ぶ。
しかし、ハンケル変換は上昇二項変換によって不変ではありません。これも興味深いところです。
正方行列$A$を下三角行列$L$と上三角行列$U$の積として
$$A=LU$$
と分解することを、行列のLU分解と呼ぶ。
$$A=
\begin{bmatrix}
5 & 6 & 7 \\
10 & 20 & 23 \\
15 & 60 & 67 \\
\end{bmatrix}
$$
をLU分解すると
$$A=
\begin{bmatrix}
1 & 0 & 0 \\
2 & 1 & 0 \\
3 & 4 & 1 \\
\end{bmatrix}
\begin{bmatrix}
5 & 6 & 7 \\
0 & 8 & 9 \\
0 & 0 & 10 \\
\end{bmatrix}
$$
[1]によると、どうやらある数列とその二項変換、反転変換について、LU分解がシンプルな関係式を満たす、ということのようです。
筆者はこれが何を示唆するのかよくわかってません。すみません。
どうでしたでしょうか。
ハンケル変換はおそらくマイナーな部類に属すると思うのですが(そもそも類似概念のせいで情報を得にくい)、もしこれをきっかけに興味を持ってくれる方がいたら嬉しいです。
間違っているところや誤解を招くところなどがあったら、時間が許す限り対応するので教えてください。よろしくお願いします。