上三角 Pascal 行列による多項式のシフト
- 1. 上三角 Pascal 行列による多項式のシフト
似鳥啓吾
2015 年 1 月 18 日
時間の多項式 f (t) があって、n 回微分 f (n) (t) = dn
dtn f (t) まで持っておくことにする。
時間刻み h で次元を揃えて、ベクトル (R → Rn+1
)
F(t) =
f (t)
h f (1) (t)
h2
f (2) (t)/2!
...
hn f (n) (t)/n!
(1)
の時間シフトを考える。微小時間での変化が
d
dt
F(t) =
1
h
0 1 0 · · · 0
0 0 2 · · · 0
0 0 0
...
...
...
...
...
... n
0 0 0 · · · 0
F(t) (2)
なので、1ステップ進めるには、この上ずらし対角行列をネイピア数の上に載せて、
F(t + h) = exp
0 1 0 · · · 0
0 0 2 · · · 0
0 0 0
...
...
...
...
...
... n
0 0 0 · · · 0
F(t) =
(0
0
) (1
0
) (2
0
)
· · ·
(n
0
)
0
(1
1
) (2
1
)
· · ·
(n
1
)
0 0
(2
2
)
· · ·
(n
2
)
...
...
...
...
...
0 0 0 · · ·
(n
n
)
F(t) (3)
でいいことにいなる。この二項係数を成分に持つ上三角行列を上三角 Pascal 行列という。
数数行列の行列指数関数として整数行列を得るところがミソである。
1
- 2. 急にこんなこといわれても泣き出しそうなので以下簡単に例示。7 × 7 の正方行列を
S7 =
0 1 0 0 0 0 0
0 0 2 0 0 0 0
0 0 0 3 0 0 0
0 0 0 0 4 0 0
0 0 0 0 0 5 0
0 0 0 0 0 0 6
0 0 0 0 0 0 0
(4)
とすると、
S7
2
=
0 0 2 0 0 0 0
0 0 0 6 0 0 0
0 0 0 0 12 0 0
0 0 0 0 0 20 0
0 0 0 0 0 0 30
0 0 0 0 0 0 0
0 0 0 0 0 0 0
S7
3
=
0 0 0 6 0 0 0
0 0 0 0 24 0 0
0 0 0 0 0 60 0
0 0 0 0 0 0 120
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
S7
4
=
0 0 0 0 24 0 0
0 0 0 0 0 120 0
0 0 0 0 0 0 360
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
S7
5
=
0 0 0 0 0 120 0
0 0 0 0 0 0 720
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
S7
6
=
0 0 0 0 0 0 720
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
S7
7
=
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
(5)
なので、S7 の指数関数として上三角行列
U7 = exp (S7) =
∞∑
n=0
S7
n
n!
=
1 1 1 1 1 1 1
0 1 2 3 4 5 6
0 0 1 3 6 10 15
0 0 0 1 4 10 20
0 0 0 0 1 5 15
0 0 0 0 0 1 6
0 0 0 0 0 0 1
(6)
を得る。一般に成分は、[U]i j =
(j−1
i−1
)
であり、逆行列は [U−1
]i j = (−1)i+j
(j−1
i−1
)
となる。
2