任意の周期数列を作る その3

目次

その1: 任意の周期数列を作る その1 - 冷水催眠
      周期  2,\ 3,\ 4,\ 6,\ 8

その2: 任意の周期数列を作る その2 - 冷水催眠
      周期  12,\ 3・2^m,\ 2^m

その3: ココ
      周期  m



前回までの記事、MathJax を使いまくってたせいでメチャクチャ重いページになっていたのに今更気づきました。次からは気をつけます!(修正するとは言っていない)


今までの話を一般化して、周期  m \hspace{10px} (m \ge 3) の周期数列  \{a_n\} の一般項を作ります。

 m 2 で割り切れるだけ割って奇数にし、その奇数個だけ独立な数列を作ってから  2 倍ずつ増やしていくという手順で作ります。

周期 m(奇数)


まずは  {a_n} の周期  m が奇数のときです。

周期  m の任意の数列を作るには一次独立な異なる数列が  m 個必要ですから、次の規則に従って  m 個の数列  f_m(n,\ 0) f_m(n,\ m-1) を作ります。


f:id:hge:20160318011215p:plain


すると、 \{a_n\} の一般項は係数  t_1 t_m を用いて次のように表せます。

 \displaystyle a_n = \sum_{k=1}^{m} {t_kf_m(n,\ k-1)}

係数  t_1 t_m は次の行列で与えられる実数です。

f:id:hge:20160318000929p:plain


 m が奇数のときに上の逆行列が存在することはどうしたら証明できるんでしょうかね・・・

 m=3 から  m=29 のときに逆行列を持つことは確認済みです。

 m が大きくなるごとに行列式の絶対値が増えていっているので恐らく大丈夫なはずです・・・・・・多分・・・・・・・・・(っ◞‸◟c)


周期 m(偶数)

次に、作りたい数列の周期  m が偶数のときを考えます。

 m 2 で割りきれるだけ割ったら奇数  p になったとき、適当な自然数  k を用いて  m=2^k \times p と書けます。

 p は奇数なので、上に書いた通りに  p 個の数列  f_p(n,\ 0) f_p(n,\ p-1) を作ると周期  p の任意の周期数列の一般項が作れます。

それを[前回の記事]でやったように、周期を2倍にする操作を  k 回行うことによって、周期  m の数列の一般項を作ることができます。

周期  p の任意の周期数列の一般項は  \displaystyle \sum_{i=1}^{p} {t_if_p(n,\ i-1)} と表せますが、これに次の操作を  k 回施します。


f:id:hge:20160318011655p:plain


 \displaystyle \operatorname{sgn}\left(\sin{\frac{(2n-1)\pi}{2a}}\right) は0にならないので  \displaystyle \frac{\sin{\frac{(2n-1)\pi}{2a}}}{\left|\sin{\frac{(2n-1)\pi}{2a}}\right|} とも書けます。前回の記事と同じ処理をしていることになります。

自分でも上の式で合ってるのかよく分からないのですが、具体例を書けば多分伝わります。


具体的には、 \displaystyle \sum_{i=1}^{p} {t_if_p(n,\ i-1)} は1度目の延長操作で

f:id:hge:20160318001937p:plain

となり、2回目の延長操作で (sgn(~)をfp(n, k)に含めてΣを結合し、Σの範囲を1から2pとして変換する)

f:id:hge:20160318001945p:plain

となり、3回目の延長操作で

f:id:hge:20160318001951p:plain

となり・・・・・・ といった感じで2倍2倍2倍2倍と伸ばしていきます。

 k 回伸ばしたら周期  m の一般項の原型の出来上がりです!


あとは係数  t_1 t_m を求めるだけです。

 m が奇数のとき、係数を求めるのにでっかい行列の逆行列を使っていました。

その逆行列

f:id:hge:20160318003417p:plain

とおきます。そして

f:id:hge:20160318004013p:plain

というように行列をさらに  k 個作ると、 A_m = A_{2^k \times p} に到達します。


そのとき、一般項の係数  t_1 t_m

 {
\left(
    \begin{array}{c}
        t_1 \\
        t_2 \\
        t_3 \\
        \vdots \\
        t_m \\
    \end{array}
\right) = A_m
\left(
    \begin{array}{c}
        a_1 \\
        a_2 \\
        a_3 \\
        \vdots \\
        a_m \\
    \end{array}
\right)}

で求められます。


書き方や表現が違いますが、今までやってきたことは前回の記事の後ろの方でやったことと全部同じ原理です。

実質的に異なるところは周期が任意の奇数の数列を作ったところだけです。

実際に1つ周期数列の一般項を作って、この記事を締めくくりたいと思います。


周期数列 1, 1, 4, 5, 1, 4, 1, 9, 1, 9, 1, 1, 4, 5, 1, 4, 1, 9, 1, 9, ...

ふ・・・深い意味なんてないんだからねっ!///


この数列の周期は  m=10=2^1 \times 5 です。

まずは①,②,③に従って  5 つの数列を作ります。


f:id:hge:20160318004833p:plain


上の5つの数列の一次結合は  \displaystyle \ \sum_{i=1}^{5} {t_if_5(n,\ i-1)}\ となります。

 5 \times 2^1 = 10 なので、求める周期数列の一般項は1回の延長操作をして

f:id:hge:20160318013103p:plain

と表せます。


次に係数  t_i を求めます。 5 次正方行列  A_5

f:id:hge:20160318013602p:plain

で定めます。

次に、 10\ (=m) 次正方行列  A_{10}=A_m

f:id:hge:20160318005236p:plain

で定めます。

この  A_m から、係数  t_i が次のように求まります。

f:id:hge:20160318005333p:plain

これを  (1) 式に代入すれば、求める一般項は

f:id:hge:20160318010226p:plain

となります!


欠点

この方法の欠点はコンピューターでの浮動小数点計算には向いていていないところ、そしてグラフが連続ではなくボッコボコで汚いところです。

コンピューターで一般項を浮動小数点計算すると本来  \operatorname{sgn}(0)=0 となってほしいところが  \operatorname{sgn}(0.00000000000001)=1 などと評価されてしまうことがあります。これは  n \equiv 0 \pmod{m} のときに発生してしまいます。


周期が  2,\ 3,\ 4,\ 6,\ 8,\ 12,\ 3・2^m,\ 2^m のときは式もグラフもきれいで  \operatorname{sgn} とかいうチートツールを酷使しない前回までの方法を使おうね!おねーちゃんとのお願いだよ!


そういえばはてなブログなんかにこの話載せちゃっていいのだろうか・・・・・・?

任意の周期数列を作る その2

目次

その1: 任意の周期数列を作る その1 - 冷水催眠
      周期  2,\ 3,\ 4,\ 6,\ 8

その2: ココ
      周期  12,\ 3・2^m,\ 2^m

その3: 任意の周期数列を作る その3 - 冷水催眠
      周期  m


表記(再掲)

この記事では便宜的に数列とベクトルを同一視した書き方をします。

そしてベクトルとみなした数列を  = で繋ぎ、加減算・スカラー倍します。


 c_1,\ c_2,\ \ldots, c_m,\ c_1,\ c_2,\ \ldots, c_m,\ c_1,\ \ldots という周期  m の数列  \{a_n\} と、 m 次元ベクトル  (c_1,\ c_2,\ \ldots,\ c_m) を対応させ、 a_n=(c_1,\ c_2,\ \ldots,\ c_m) と便宜的に表記することにします。

あくまでもこの記事の中だけの表記です。

この数列の一般項が  f(n) のとき  (c_1,\ c_2,\ \ldots,\ c_m)=f(n) と書くことにします。

このとき  a_n=f(n) です。


例えば  a_1=1,\ a_2=2,\ a_3=3 であるような周期  3 の数列を

 \begin{align} \{a_n\} &= \{1,\ 2,\ 3,\ 1,\ 2,\ 3,\ 1,\ 2,\ 3,\ \ldots\} \\ a_n &= (1,\ 2,\ 3) \end{align}

と表記し、 b_n=(3,\ 4,\ 5) としたときに

 2a_n+b_n=2(1,\ 2,\ 3)+(3,\ 4,\ 5)=(5,\ 8,\ 11)

のような操作をします。

添え字  n は正の整数とします。


周期12

一般項の形がきれいじゃなくなってきた・・・・・・これ以上周期が長くなるときれいな一般項の独立な数列作るの無理ですよ~~~(涙)

あっ、そうだ(唐突)

ここからは周期  6 および周期  8 の数列を作るときに使った数列を用いて周期  3・2^m と周期  2^m の数列を作れるようにします。


まずは周期  3・2^2 = 12 の数列を作ることを考えます。


 {\bf R}^6 の基底を作っていた6個の周期6の数列(に対応するベクトル)

 \begin{align}
    \displaystyle {a_n}' &= (1,\ 1,\ 1,\ 1,\ 1,\ 1) = 1 \\
    \displaystyle {b_n}' &= (-1,\ 1, -1,\ 1, -1,\ 1) = \cos{n\pi} \\
    \displaystyle {c_n}' &= (1, -1,\ 0,\ 1, -1,\ 0) = \frac{2\sqrt{3}}{3}\sin{\frac{2n\pi}{3}} \\
    \displaystyle {d_n}' &= (-1, -1,\ 2, -1, -1,\ 2) = 2\cos{\frac{2n\pi}{3}} \\
    \displaystyle {e_n}' &= (1,\ 1,\ 0, -1, -1,\ 0) = \frac{2\sqrt{3}}{3}\sin{\frac{n\pi}{3}} \\
    \displaystyle {f_n}' &= (1, -1, -2, -1,\ 1,\ 2) = 2\cos{\frac{n\pi}{3}}
\end{align}

をうまく使うと  {\bf R}^{12} の基底となるような周期12の数列12個を作ることができます。


周期12の数列を作るために使用する独立な12個の数列を

 a_n,\ b_n,\ c_n,\ d_n,\ e_n,\ f_n,\ g_n,\ h_n,\ i_n,\ j_n,\ k_n,\ l_n

とします。これらの数列を次のように構成します。


作る数列の周期を  m とする。

①.前半の  \displaystyle \frac{m}{2} a_n,\ b_n,\ \ldots,\ f_n はそれぞれ

 {a_n}',\ \ {b_n}',\ \ldots,\ \ {f_n}'
 を2周期分繰り返した数列とする。一般項は

 a_n={a_n}',\hspace{20px} b_n={b_n}',\hspace{16px} \ldots,\hspace{20px} f_n={f_n}'


②.後半の  \displaystyle \frac{m}{2} g_n,\ h_n,\ \ldots,\ l_n はそれぞれ

 {a_n}',\ \ {b_n}',\ \ldots,\ \ {f_n}'
 -{a_n}',\ -{b_n}',\ \ldots,\ -{f_n}'
 の2つを1周期分ずつ繋げた数列とする。一般項(仮)は

 \displaystyle g_n= \begin{cases} {a_n}' & (0 \le (n-1 \bmod{m}) \le \frac{m}{2}-1) \\ -{a_n}' & (\frac{m}{2} \le (n-1 \bmod{m}) \le m-1) \end{cases} \\
 \displaystyle h_n= \begin{cases} {b_n}' & (0 \le (n-1 \bmod{m}) \le \frac{m}{2}-1) \\ -{b_n}' & (\frac{m}{2} \le (n-1 \bmod{m}) \le m-1) \end{cases}
 \vdots


簡単に言えば①は  (1,\ 2,\ 3) を2回繰り返して  (1,\ 2,\ 3,\ 1,\ 2,\ 3) としよう!ってことです。ただし、2回繰り返したところで一般項は変わりません。

②は  (1,\ 2,\ 3) とその符号を反対にしたものを繋げて  (1,\ 2,\ 3, -1, -2, -3) としよう!ってことです。


①を用いて、独立な12個の数列のうち最初の6つを次のように構成します。

 \begin{align}
    \displaystyle a_n &= (1,\ 1,\ 1,\ 1,\ 1,\ 1,\ 1,\ 1,\ 1,\ 1,\ 1,\ 1) = 1 \\
    \displaystyle b_n &= (-1,\ 1, -1,\ 1, -1,\ 1, -1,\ 1, -1,\ 1, -1,\ 1) = \cos{n\pi} \\
    \displaystyle c_n &= (1, -1,\ 0,\ 1, -1,\ 0,\ 1, -1,\ 0,\ 1, -1,\ 0) = \frac{2\sqrt{3}}{3}\sin{\frac{2n\pi}{3}} \\
    \displaystyle d_n &= (-1, -1,\ 2, -1, -1,\ 2, -1, -1,\ 2, -1, -1,\ 2) = 2\cos{\frac{2n\pi}{3}} \\
    \displaystyle e_n &= (1,\ 1,\ 0, -1, -1,\ 0,\ 1,\ 1,\ 0, -1, -1,\ 0) = \frac{2\sqrt{3}}{3}\sin{\frac{n\pi}{3}} \\
    \displaystyle f_n &= (1, -1, -2, -1,\ 1,\ 2,\ 1, -1, -2, -1,\ 1,\ 2) = 2\cos{\frac{n\pi}{3}}
\end{align}

次に②を用いて、独立な12個の数列の残りの6つを次のように構成します。

 \begin{align}
    \displaystyle g_n &= (1,\ 1,\ 1,\ 1,\ 1,\ 1, -1, -1, -1, -1, -1, -1) = (\ ?\ ) \\
    \displaystyle h_n &= (-1,\ 1, -1,\ 1, -1,\ 1,\ 1, -1,\ 1, -1,\ 1, -1) = (\ ?\ ) \\
    \displaystyle i_n &= (1, -1,\ 0,\ 1, -1,\ 0, -1,\ 1,\ 0, -1,\ 1,\ 0) = (\ ?\ ) \\
    \displaystyle j_n &= (-1, -1,\ 2, -1, -1,\ 2,\ 1,\ 1, -2,\ 1,\ 1, -2) = (\ ?\ ) \\
    \displaystyle k_n &= (1,\ 1,\ 0, -1, -1,\ 0, -1, -1,\ 0,\ 1,\ 1,\ 0) = (\ ?\ ) \\
    \displaystyle l_n &= (1, -1, -2, -1,\ 1,\ 2, -1,\ 1,\ 2,\ 1, -1, -2) = (\ ?\ ) \\
\end{align}


後半6つの一般項は、前半6つの一般項に  \{ 1,\ 1,\ 1,\ 1,\ 1,\ 1, -1, -1, -1, -1, -1, -1,\ 1,\ \ldots \} という数列を掛ければ出来上がります。

この数列の一般項は  n=1 6 のときに正の値、 n=7 12 のときに負の値をとるような周期12の数列の一般項をそれ自身の絶対値で割ることで得られ、その一般項は  \displaystyle \frac{\sin{\frac{(2n-1)\pi}{12}}}{\left|\sin{\frac{(2n-1)\pi}{12}}\right|} で与えられます。

よって、後半の6つの数列の一般項は次の式で与えられます。

 \displaystyle 
g_n= \frac{\sin{\frac{(2n-1)\pi}{12}}}{\left|\sin{\frac{(2n-1)\pi}{12}}\right|}a_n,\hspace{20px}
h_n= \frac{\sin{\frac{(2n-1)\pi}{12}}}{\left|\sin{\frac{(2n-1)\pi}{12}}\right|}b_n,\hspace{20px}
i_n= \frac{\sin{\frac{(2n-1)\pi}{12}}}{\left|\sin{\frac{(2n-1)\pi}{12}}\right|}c_n
 \displaystyle 
j_n= \frac{\sin{\frac{(2n-1)\pi}{12}}}{\left|\sin{\frac{(2n-1)\pi}{12}}\right|}d_n,\hspace{20px}
k_n= \frac{\sin{\frac{(2n-1)\pi}{12}}}{\left|\sin{\frac{(2n-1)\pi}{12}}\right|}e_n,\hspace{20px}
l_n= \frac{\sin{\frac{(2n-1)\pi}{12}}}{\left|\sin{\frac{(2n-1)\pi}{12}}\right|}f_n

 g_n から  l_n の一般項は  a_n から  f_n で表せてしまいました。


これらの数列を用いれば、周期12の任意の数列の一般項を実数  t_1 t_{12} を用いて

 \begin{align}
    (一般項) &= t_1a_n+t_2b_n+t_3c_n+\ldots+t_{11}k_n+t_{12}l_n \\
    \displaystyle &= t_1a_n+t_2b_n+\ldots+t_6f_n+\frac{\sin{\frac{(2n-1)\pi}{12}}}{\left|\sin{\frac{(2n-1)\pi}{12}}\right|}\left( t_7a_n+t_8b_n+\ldots+t_{12}f_n \right)
\end{align}

と表すことができます。



さて、本当でしょうか?

作った12個の数列が独立かどうか確かめなければなりません。


周期12の数列  (a,\ b,\ \ldots,\ l) について考えます。

周期6のときの係数  t_1 t_6

 \displaystyle
\left( \begin{array}{c} a \\ b \\ c \\ d \\ e \\ f \end{array} \right) = 
\left( \begin{array}{cccccc}
    1 & -1 & 1 & -1 & 1 & 1 \\
    1 & 1 & -1 & -1 & 1 & -1 \\
    1 & -1 & 0 & 2 & 0 & -2 \\
    1 & 1 & 1 & -1 & -1 & -1 \\
    1 & -1 & -1 & -1 & -1 & 1 \\
    1 & 1 & 0 & 2 & 0 & 2
\end{array} \right)
\left( \begin{array}{c} t_1 \\ t_2 \\ t_3 \\ t_4 \\ t_5 \\ t_6 \end{array}\right)

という行列から求めました。ここにある6次正方行列を  A とおきます。すると周期12のときの係数  t_1 t_{12}

 \displaystyle \begin{align}
\left( \begin{array}{c} a \\ b \\ c \\ d \\ e \\ f \\ g \\ h \\ i \\ j \\ k \\ l \end{array} \right) &= 
\left( \begin{array}{cccccccccccc}
    1 & -1 & 1 & -1 & 1 & 1 & 1 & -1 & 1 & -1 & 1 & 1 \\
    1 & 1 & -1 & -1 & 1 & -1 & 1 & 1 & -1 & -1 & 1 & -1 \\
    1 & -1 & 0 & 2 & 0 & -2 & 1 & -1 & 0 & 2 & 0 & -2 \\
    1 & 1 & 1 & -1 & -1 & -1 & 1 & 1 & 1 & -1 & -1 & -1 \\
    1 & -1 & -1 & -1 & -1 & 1 & 1 & -1 & -1 & -1 & -1 & 1 \\
    1 & 1 & 0 & 2 & 0 & 2 & 1 & 1 & 0 & 2 & 0 & 2 \\
    1 & -1 & 1 & -1 & 1 & 1 & -1 & 1 & -1 & 1 & -1 & -1 \\
    1 & 1 & -1 & -1 & 1 & -1 & -1 & -1 & 1 & 1 & -1 & 1 \\
    1 & -1 & 0 & 2 & 0 & -2 & -1 & 1 & 0 & -2 & 0 & 2 \\
    1 & 1 & 1 & -1 & -1 & -1 & -1 & -1 & -1 & 1 & 1 & 1 \\
    1 & -1 & -1 & -1 & -1 & 1 & -1 & 1 & 1 & 1 & 1 & -1 \\
    1 & 1 & 0 & 2 & 0 & 2 & -1 & -1 & 0 & -2 & 0 & -2
\end{array} \right)
\left( \begin{array}{c} t_1 \\ t_2 \\ t_3 \\ t_4 \\ t_5 \\ t_6 \\ t_7 \\ t_8 \\ t_9 \\ t_{10} \\ t_{11} \\ t_{12} \end{array}\right) \\
&= \left( \begin{array}{cc}
    A & A \\
    A & -A
\end{array} \right)
\left( \begin{array}{c} t_1 \\ t_2 \\ \vdots \\ t_{12} \end{array}\right)
\end{align}

によって求められます。

ここで、 A逆行列  A^{-1} が存在するとき  \left( \begin{array}{cc} A & A \\ A & -A \end{array} \right)逆行列も存在し、 \displaystyle \left( \begin{array}{cc} A & A \\ A & -A \end{array} \right)^{-1} = \frac{1}{2}\left( \begin{array}{cc} A^{-1} & A^{-1} \\ A^{-1} & -A^{-1} \end{array} \right) となります。

よって  a_n,\ b_n,\ \ldots,\ l_n は独立であり、周期数列  (a,\ b,\ \ldots,\ l) の係数  t_1 t_{12}

 \displaystyle
\left( \begin{array}{c} t_1 \\ t_2 \\ \vdots \\ t_{12} \end{array}\right) = 
\frac{1}{2}\left( \begin{array}{cc} A^{-1} & A^{-1} \\ A^{-1} & -A^{-1} \end{array} \right)
\left( \begin{array}{c} a \\ b \\ \vdots \\ l \end{array} \right)

で求めることができます。


周期3・2m (m≧2)

周期  6→12 と同じように上の①,②の処理を繰り返し用いることで周期  24,\ 48,\ 96,\ 192,\ \ldots の任意の周期数列を作ることができます。


例えば、任意の周期  24 の数列  s_1,\ \ldots,\ s_{24} の一般項  f_{24}(x) は、実数  t_1 t_{24} と6つの数列

 \begin{align}
    \displaystyle a_n &= (1,\ 1,\ 1,\ 1,\ 1,\ 1,\ 1,\ 1,\ 1,\ 1,\ 1,\ 1) = 1 \\
    \displaystyle b_n &= (-1,\ 1, -1,\ 1, -1,\ 1, -1,\ 1, -1,\ 1, -1,\ 1) = \cos{n\pi} \\
    \displaystyle c_n &= (1, -1,\ 0,\ 1, -1,\ 0,\ 1, -1,\ 0,\ 1, -1,\ 0) = \frac{2\sqrt{3}}{3}\sin{\frac{2n\pi}{3}} \\
    \displaystyle d_n &= (-1, -1,\ 2, -1, -1,\ 2, -1, -1,\ 2, -1, -1,\ 2) = 2\cos{\frac{2n\pi}{3}} \\
    \displaystyle e_n &= (1,\ 1,\ 0, -1, -1,\ 0,\ 1,\ 1,\ 0, -1, -1,\ 0) = \frac{2\sqrt{3}}{3}\sin{\frac{n\pi}{3}} \\
    \displaystyle f_n &= (1, -1, -2, -1,\ 1,\ 2,\ 1, -1, -2, -1,\ 1,\ 2) = 2\cos{\frac{n\pi}{3}}
\end{align}

を用いて


    \displaystyle f_{24}(x) = t_1a_n+t_2b_n+\ldots+t_6f_n+\frac{\sin{\frac{(2n-1)\pi}{12}}}{\left|\sin{\frac{(2n-1)\pi}{12}}\right|}\left( t_7a_n+t_8b_n+\ldots+t_{12}f_n \right) \\
     \displaystyle \hspace{16px} +\frac{\sin{\frac{(2n-1)\pi}{24}}}{\left|\sin{\frac{(2n-1)\pi}{24}}\right|}\left\{ t_{13}a_n+t_{14}b_n+\ldots+t_{18}f_n+\frac{\sin{\frac{(2n-1)\pi}{12}}}{\left|\sin{\frac{(2n-1)\pi}{12}}\right|}\left( t_{19}a_n+t_{20}b_n+\ldots+t_{24}f_n \right) \right\}

と表せます。分母の  12 24 に注意です。


そして係数  t_1 t_{24} は、6次正方行列  A,12次正方行列  B,24次正方行列  C をそれぞれ

 \displaystyle
A = \left( \begin{array}{cccccc}
    1 & -1 & 1 & -1 & 1 & 1 \\
    1 & 1 & -1 & -1 & 1 & -1 \\
    1 & -1 & 0 & 2 & 0 & -2 \\
    1 & 1 & 1 & -1 & -1 & -1 \\
    1 & -1 & -1 & -1 & -1 & 1 \\
    1 & 1 & 0 & 2 & 0 & 2
\end{array} \right)

 \displaystyle
B = \left( \begin{array}{cc}
    A & A \\
    A & -A \\
\end{array} \right)

 \displaystyle
C = \left( \begin{array}{cc}
    B & B \\
    B & -B \\
\end{array} \right)

で定めると、

 \displaystyle
    \left( \begin{array}{c} t_1 \\ t_2 \\ \vdots \\ t_{24} \end{array}\right) = 
    C^{-1} \left( \begin{array}{c} s_1 \\ s_2 \\ \vdots \\ s_{24} \end{array} \right)

で求めることができます。ただし

 \displaystyle
C^{-1} = \frac{1}{2}\left( \begin{array}{cc} B^{-1} & B^{-1} \\ B^{-1} & -B^{-1} \end{array} \right),\hspace{20px}
B^{-1} = \frac{1}{2}\left( \begin{array}{cc} A^{-1} & A^{-1} \\ A^{-1} & -A^{-1} \end{array} \right)

 \displaystyle
A^{-1} = \frac{1}{12}
\left( \begin{array}{cccccc}
    2 & 2 & 2 & 2 & 2 & 2 \\
    -2 & 2 & -2 & 2 & -2 & 2 \\
    3 & -3 & 0 & 3 & -3 & 0 \\
    -1 & -1 & 2 & -1 & -1 & 2 \\
    3 & 3 & 0 & -3 & -3 & 0 \\
    1 & -1 & -2 & -1 & 1 & 2
\end{array} \right)

です。

アダマール行列のような形の並びが出てきていますね。


周期2m (m≧4)

同様に周期  8 の数列に対して上の①,②の処理を繰り返し用いることで周期  16,\ 32,\ 64,\ 128,\ \ldots の周期数列を作ることができます。

例えば、任意の周期  16 の数列の一般項  f_{16}(x) は実数  t_1 t_{16} と数列

 \begin{align}
    \displaystyle a_n &= (1,\ 1,\ 1,\ 1,\ 1,\ 1,\ 1,\ 1) = 1 \\
    \displaystyle b_n &= (-1,\ 1, -1,\ 1, -1,\ 1, -1,\ 1) = \cos{n\pi} \\
    \displaystyle c_n &= (1,\ 0,-1,\ 0,\ 1,\ 0,-1,\ 0) = \sin{\frac{n\pi}{2}} \\
    \displaystyle d_n &= (0, -1,\ 0,\ 1,\ 0, -1,\ 0,\ 1) = \cos{\frac{n\pi}{2}} \\
    \displaystyle e_n &= (1,\ 2,\ 1,\ 0, -1, -2, -1,\ 0) = 2\sin{\frac{(3n-\sin{\frac{n\pi}{2}})\pi}{12}} \\
    \displaystyle f_n &= (1,\ 0, -1, -2, -1,\ 0,\ 1,\ 2) = 2\cos{\frac{(3n+\sin{\frac{n\pi}{2}})\pi}{12}} \\
    \displaystyle g_n &= (0,\ 1,\ 2,\ 1,\ 0, -1, -2, -1) = 2\sin{\frac{(3n-3+\cos{\frac{n\pi}{2}})\pi}{12}} \\
    \displaystyle h_n &= (2,\ 1,\ 0, -1, -2, -1,\ 0,\ 1) = 2\cos{\frac{(3n-3-\cos{\frac{n\pi}{2}})\pi}{12}}
\end{align}
を用いて


    \displaystyle f_{16}(x) = t_1a_n+t_2b_n+\ldots+t_8h_n+\frac{\sin{\frac{(2n-1)\pi}{16}}}{\left|\sin{\frac{(2n-1)\pi}{16}}\right|}\left( t_9a_n+t_{10}b_n+\ldots+t_{16}h_n \right)

と表せます。

そして係数  t_1 t_{16} は8次正方行列  A,16次正方行列  B

 \displaystyle
A = \left( \begin{array}{cccccccc}
    1 & -1 & 1 & 0 & 1 & 1 & 0 & 2 \\
    1 & 1 & 0 & -1 & 2 & 0 & 1 & 1 \\
    1 & -1 & -1 & 0 & 1 & -1 & 2 & 0 \\
    1 & 1 & 0 & 1 & 0 & -2 & 1 & -1 \\
    1 & -1 & 1 & 0 & -1 & -1 & 0 & -2 \\
    1 & 1 & 0 & -1 & -2 & 0 & -1 & -1 \\
    1 & -1 & -1 & 0 & -1 & 1 & -2 & 0 \\
    1 & 1 & 0 & 1 & 0 & 2 & -1 & 1
\end{array} \right)

 \displaystyle
B = \left( \begin{array}{cc}
    A & A \\
    A & -A \\
\end{array} \right)

で定めると

 \displaystyle \begin{align}
    \left( \begin{array}{c} t_1 \\ t_2 \\ \vdots \\ t_{16} \end{array}\right) &= 
        B^{-1} \left( \begin{array}{c} s_1 \\ s_2 \\ \vdots \\ s_{16} \end{array} \right) \\
    \displaystyle &= \frac{1}{2}\left( \begin{array}{cc} A^{-1} & A^{-1} \\ A^{-1} & -A^{-1} \end{array} \right)
        \left( \begin{array}{c} s_1 \\ s_2 \\ \vdots \\ s_{16} \end{array} \right)
\end{align}

で与えられます。

このとき、 A逆行列

 \displaystyle A^{-1} = \frac{1}{8}
\left( \begin{array}{cccccccc}
    1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 \\
    -1 & 1 & -1 & 1 & -1 & 1 & -1 & 1 \\
    2 & 0 & -2 & 0 & 2 & 0 & -2 & 0 \\
    0 & -2 & 0 & 2 & 0 & -2 & 0 & 2 \\
    -2 & 4 & -2 & 0 & 2 & -4 & 2 & 0 \\
    -2 & 0 & 2 & -4 & 2 & 0 & -2 & 4 \\
    0 & -2 & 4 & -2 & 0 & 2 & -4 & 2 \\
    4 & -2 & 0 & 2 & -4 & 2 & 0 & -2
\end{array} \right)

となります。



同様に、任意の周期  32 の数列の一般項  f_{32}(x) は実数  t_1 t_{32} を用いて


    \displaystyle f_{32}(x) = t_1a_n+t_2b_n+\ldots+t_8h_n+\frac{\sin{\frac{(2n-1)\pi}{16}}}{\left|\sin{\frac{(2n-1)\pi}{16}}\right|}\left( t_9a_n+t_{10}b_n+\ldots+t_{16}h_n \right) \\
     \displaystyle \hspace{16px} +\frac{\sin{\frac{(2n-1)\pi}{32}}}{\left|\sin{\frac{(2n-1)\pi}{32}}\right|}\left\{ t_{17}a_n+t_{18}b_n+\ldots+t_{24}h_n+\frac{\sin{\frac{(2n-1)\pi}{16}}}{\left|\sin{\frac{(2n-1)\pi}{16}}\right|}\left( t_{25}a_n+t_{26}b_n+\ldots+t_{32}h_n \right) \right\}

と表せます。係数は上の8次及び16次正方行列  A,\ B と32次正方行列

 \displaystyle
C = \left( \begin{array}{cc}
    B & B \\
    B & -B \\
\end{array} \right)

を用いて

 \displaystyle
    \left( \begin{array}{c} t_1 \\ t_2 \\ \vdots \\ t_{32} \end{array}\right) = 
    C^{-1} \left( \begin{array}{c} s_1 \\ s_2 \\ \vdots \\ s_{32} \end{array} \right)

で与えられます。

グラフ

実際に周期16の数列  (0,\ 1,\ 2,\ 3,\ 4,\ 5,\ 6,\ 7,\ 0, -1, -2, -3, -4, -5, -6, -7) の一般項を作ってみました。

その一般項の添え字  n を実数  x に置き換えてグラフにしたものが下の図です。


f:id:hge:20160307145723p:plain


ノコギリ波のフーリエ級数展開っぽい形してますね・・・

グラフにすると途中で途切れていることがわかります。

 \displaystyle \frac{\sin{\frac{(2x-1)\pi}{16}}}{\left|\sin{\frac{(2x-1)\pi}{16}}\right|} の符号が  \displaystyle x=\frac{16k+1}{2}\ \ (k \in {\bf N}) を境に逆転するからです。

周期  2,\ 3,\ 4,\ 6,\ 8 では上の式を使っていないのでグラフは連続です。

連続じゃないのが少し残念・・・・・・というだけの話でした。


この記事では周期  6 または周期  8 の数列から周期を2倍4倍・・・にしていきましたが、周期  3 や周期  4 から周期を伸ばしてももちろんOKです。

次の記事ではいよいよ(?)周期  m の数列の一般項を作ります。

任意の周期数列を作る その1

先日Twitterでこんなツイートをしました。

この一般項の作り方の話をします。


目次

その1: ココ
      周期  2,\ 3,\ 4,\ 6,\ 8

その2: 任意の周期数列を作る その2 - 冷水催眠
      周期  12,\ 3・2^m,\ 2^m

その3: 任意の周期数列を作る その3 - 冷水催眠
      周期  m

表記

この記事では便宜的に数列とベクトルを同一視した書き方をします。

そしてベクトルとみなした数列を  = で繋ぎ、加減算・スカラー倍します。


 c_1,\ c_2,\ \ldots, c_m,\ c_1,\ c_2,\ \ldots, c_m,\ c_1,\ \ldots という周期  m の数列  \{a_n\} と、 m 次元ベクトル  (c_1,\ c_2,\ \ldots,\ c_m) を対応させ、 a_n=(c_1,\ c_2,\ \ldots,\ c_m) と便宜的に表記することにします。

あくまでもこの記事の中だけの表記です。

この数列の一般項が  f(n) のとき  (c_1,\ c_2,\ \ldots,\ c_m)=f(n) と書くことにします。

このとき  a_n=f(n) です。


例えば  a_1=1,\ a_2=2,\ a_3=3 であるような周期  3 の数列を

 \begin{align} \{a_n\} &= \{1,\ 2,\ 3,\ 1,\ 2,\ 3,\ 1,\ 2,\ 3,\ \ldots\} \\ a_n &= (1,\ 2,\ 3) \end{align}

と表記し、 b_n=(3,\ 4,\ 5) としたときに

 2a_n+b_n=2(1,\ 2,\ 3)+(3,\ 4,\ 5)=(5,\ 8,\ 11)

のような操作をします。

添え字  n は正の整数とします。


周期2

周期2の周期数列は簡単に作れてしまいますが、ここではこの後の話に繋がるような形で求めていきます。

まず2つの数列を用意します。

 a_n = (1,\ 1), \hspace{20px} b_n = (-1,\ 1)

それぞれ

 \{a_n\}=\{1,\ 1,\ 1,\ 1,\ 1,\ 1,\ \ \ldots\} \\ \{b_n\}=\{-1,\ 1,-1,\ 1,-1,\ 1,\ \ \ldots\}

を意味します。

それぞれの一般項は

 a_n=1, \hspace{20px} b_n=\cos{n\pi}

となります。*1


任意の周期2の数列は、この2つの数列の一次結合  t_1a_n+t_2b_n で表せます。

例えば数列  \{3,\ 5,\ 3,\ 5,\ \ldots\} は、 \{1,\ 1,\ 1,\ 1,\ \ldots\} 4 倍と  \{-1,\ 1,-1,\ 1,\ \ldots\} の足し算で表せます。


周期数列  (a,\ b)=\{a,\ b,\ a,\ b,\ \ldots \} の一般項を作ってみましょう。

数列  (a,\ b) a_n,\ b_n の一次結合で表せるので

 \begin{align} (a,\ b)&=t_1a_n+t_2b_n \\ &=t_1(1,\ 1)+t_2(-1,\ 1) \\ &=(t_1-t_2,\ t_1+t_2) \end{align}

両辺の要素を比較して連立すると

 \displaystyle
\left( \begin{array}{c} a \\ b \end{array} \right) = 
\left( \begin{array}{cc} 1 & -1 \\ 1 & 1 \end{array} \right)
\left( \begin{array}{c} t_1 \\ t_2 \end{array} \right)

 \displaystyle \begin{align}
\left( \begin{array}{c} t_1 \\ t_2 \end{array} \right) &= 
\left( \begin{array}{cc} 1 & -1 \\ 1 & 1 \end{array} \right)^{-1}
\left( \begin{array}{c} a \\ b \end{array} \right) \\ &= 
\displaystyle \frac{1}{2}\left( \begin{array}{cc} 1 & 1 \\ -1 & 1 \end{array} \right)
\left( \begin{array}{c} a \\ b \end{array} \right)\end{align}

 \displaystyle t_1=\frac{1}{2}(a+b), \hspace{20px} t_2=-\frac{1}{2}(a-b)

となるので、数列  (a,\ b) の一般項は

 (a,\ b)=\displaystyle \frac{1}{2}(a+b)a_n-\frac{1}{2}(a-b)b_n

と書けます。


数列  a_n,\ b_n の一般項はそれぞれ  a_n=1, \hspace{10px} b_n=\cos{n\pi} なので

一般項  (a,\ b)=\displaystyle \frac{1}{2}(a+b)-\frac{1}{2}(a-b)\cos{n\pi}

が求まります。


周期3

周期が3のときは3つの数列を用意します。

このとき、3つの数列それぞれに対応する3つのベクトルが一次独立になるようにします。

 \begin{align}
    \displaystyle a_n &= (1,\ 1,\ 1) = 1 \\
    \displaystyle b_n &= (1,-1,\ 0) = \frac{2\sqrt{3}}{3}\sin{\frac{2n\pi}{3}} \\
    \displaystyle c_n &= (-1,-1,\ 2) = 2\cos{\frac{2n\pi}{3}}
\end{align}

とすると

 \displaystyle
\left| \begin{array}{ccc} a_n\ \ b_n\ \ c_n \end{array} \right| = 
\left| \begin{array}{ccc} 1 & 1 & -1 \\ 1 & -1 & -1 \\ 1 & 0 & 2 \end{array} \right| = -6 \ne 0

となるので、この3つの数列(ベクトル)は独立です。

したがって、任意の周期3の数列は  a_n,\ b_n,\ c_n の一次結合で表すことができます。


周期数列  (a,\ b,\ c) の一般項を作ってみましょう。一般項は実数  t_1,\ t_2,\ t_3 を用いて

 \begin{align}
    (a,\ b,\ c) &= t_1a_n+t_2b_n+t_3c_n \\
    &= t_1(1,\ 1,\ 1)+t_2(1,-1,\ 0)+t_3(-1,-1,\ 2)
\end{align}

と表すことができます。これを行列にすると

 \displaystyle
\left( \begin{array}{c} a \\ b \\ c \end{array}\right) = 
\left( \begin{array}{ccc} 1 & 1 & -1 \\ 1 & -1 & -1 \\ 1 & 0 & 2 \end{array}\right)
\left( \begin{array}{c} t_1 \\ t_2 \\ t_3 \end{array} \right)
すなわち
 \displaystyle
\left( \begin{array}{c} t_1 \\ t_2 \\ t_3 \end{array}\right) = \frac{1}{6}
\left( \begin{array}{ccc} 2 & 2 & 2 \\ -3 & -3 & 0 \\ -1 & -1 & 2 \end{array}\right)
\left( \begin{array}{c} a \\ b \\ c \end{array} \right)

によって係数  t_1,\ t_2,\ t_3 が求まり、一般項

 \begin{align}
    (a,\ b,\ c) &= t_1(1,\ 1,\ 1)+t_2(1,-1,\ 0)+t_3(-1,-1,\ 2) \\
    &= t_1+\frac{2\sqrt{3}}{3}t_2\sin{\frac{2n\pi}{3}}+2t_3\cos{\frac{2n\pi}{3}}
\end{align}

が決定します。具体的に書き出すと

 \displaystyle (a,\ b,\ c) = \frac{1}{3}(a+b+c)-\frac{\sqrt{3}}{3}(a+b)\sin{\frac{2n\pi}{3}}-\frac{1}{6}(a+b-2c)\cos{\frac{2n\pi}{3}}

となります。


周期4

任意の周期4の数列を作るには、独立な数列が4つ必要です。

(最短)周期が  1,\ 2,\ 4,\ 4 の4つの数列を次のように用意します。*2

 \begin{align}
    \displaystyle a_n &= (1,\ 1,\ 1,\ 1) = 1 \\
    \displaystyle b_n &= (-1,\ 1,-1,\ 1) = \cos{n\pi} \\
    \displaystyle c_n &= (1,\ 0,-1,\ 0) = \sin{\frac{n\pi}{2}} \\
    \displaystyle d_n &= (0, -1,\ 0,\ 1) = \cos{\frac{n\pi}{2}}
\end{align}

このとき

 \displaystyle
\left| \begin{array}{cccc} a_n\ \ b_n\ \ c_n\ \ d_n \end{array} \right| = 
\left| \begin{array}{cccc} 1 & -1 & 1 & 0 \\ 1 & 1 & 0 & -1 \\ 1 & -1 & -1 & 0 \\ 1 & 1 & 0 & 1 \end{array} \right| = -8 \ne 0

より4つの数列は独立になります。


同じように周期数列  (a,\ b,\ c,\ d) の一般項を作ります。

この数列の一般項は4つの独立な数列  a_n,\ b_n,\ c_n,\ d_n を用いて

 \begin{align}
    (a,\ b,\ c,\ d) &= t_1a_n+t_2b_n+t_3c_n+t_4d_n \\
    &= t_1(1,\ 1,\ 1,\ 1)+t_2(-1,\ 1,-1,\ 1)+t_3(1,\ 0,-1,\ 0)+t_4(0, -1,\ 0,\ 1)
\end{align}

と表すことができます。したがって

 \displaystyle
\left( \begin{array}{c} a \\ b \\ c \\ d \end{array}\right) = 
\left( \begin{array}{cccc} 1 & -1 & 1 & 0 \\ 1 & 1 & 0 & -1 \\ 1 & -1 & -1 & 0 \\ 1 & 1 & 0 & 1 \end{array} \right)
\left( \begin{array}{c} t_1 \\ t_2 \\ t_3 \\ t_4 \end{array} \right)

 \displaystyle
\left( \begin{array}{c} t_1 \\ t_2 \\ t_3 \\ t_4 \end{array}\right) = \frac{1}{4}
\left( \begin{array}{cccc} 1 & 1 & 1 & 1 \\ -1 & 1 & -1 & 1 \\ 2 & 0 & -2 & 0 \\ 0 & -2 & 0 & 2 \end{array}\right)
\left( \begin{array}{c} a \\ b \\ c \\ d \end{array} \right)

によって係数  t_1,\ t_2,\ t_3,\ t_4 が求まり、一般項

 \begin{align}
    (a,\ b,\ c,\ d) &= t_1(1,\ 1,\ 1,\ 1)+t_2(-1,\ 1,-1,\ 1)+t_3(1,\ 0,-1,\ 0)+t_4(0, -1,\ 0,\ 1) \\
    &= t_1+t_2\cos{n\pi}+t_3\sin{\frac{n\pi}{2}}+t_4\cos{\frac{n\pi}{2}}
\end{align}

が求まります。


周期6

任意の周期6の数列を作るために、周期が  1,\ 2,\ 3,\ 3,\ 6,\ 6 の独立な数列を次のように6つ用意します。

 \begin{align}
    \displaystyle a_n &= (1,\ 1,\ 1,\ 1,\ 1,\ 1) = 1 \\
    \displaystyle b_n &= (-1,\ 1, -1,\ 1, -1,\ 1) = \cos{n\pi} \\
    \displaystyle c_n &= (1, -1,\ 0,\ 1, -1,\ 0) = \frac{2\sqrt{3}}{3}\sin{\frac{2n\pi}{3}} \\
    \displaystyle d_n &= (-1, -1,\ 2, -1, -1,\ 2) = 2\cos{\frac{2n\pi}{3}} \\
    \displaystyle e_n &= (1,\ 1,\ 0, -1, -1,\ 0) = \frac{2\sqrt{3}}{3}\sin{\frac{n\pi}{3}} \\
    \displaystyle f_n &= (1, -1, -2, -1,\ 1,\ 2) = 2\cos{\frac{n\pi}{3}}
\end{align}

このとき

 \displaystyle
\left| \begin{array}{cccccc} a_n\ \ b_n\ \ c_n\ \ d_n\ \ e_n\ \ f_n \end{array} \right| = 288 \ne 0

となり、6つの数列は独立です。


周期数列  (a,\ b,\ c,\ d,\ e,\ f) の一般項を求めます。

この数列の一般項は6つの数列  a_n f_n を用いて

 (a,\ b,\ c,\ d,\ e,\ f) = t_1a_n+t_2b_n+t_3c_n+t_4d_n+t_5e_n+t_6f_n

と表すことができます。係数  t_1,\ t_2,\ \ldots,\ t_6

 \displaystyle
\left( \begin{array}{c} t_1 \\ t_2 \\ t_3 \\ t_4 \\ t_5 \\ t_6 \end{array} \right) = \frac{1}{12}
\left( \begin{array}{cccccc}
    2 & 2 & 2 & 2 & 2 & 2 \\
    -2 & 2 & -2 & 2 & -2 & 2 \\
    3 & -3 & 0 & 3 & -3 & 0 \\
    -1 & -1 & 2 & -1 & -1 & 2 \\
    3 & 3 & 0 & -3 & -3 & 0 \\
    1 & -1 & -2 & -1 & 1 & 2
\end{array} \right)
\left( \begin{array}{c} a \\ b \\ c \\ d \\ e \\ f \end{array}\right)

によって求まります。これによって一般項

 (a,\ b,\ c,\ d,\ e,\ f) \\ \displaystyle \ = t_1+t_2\cos{n\pi}+ \frac{2\sqrt{3}}{3}t_3\sin{\frac{2n\pi}{3}}+2t_4\cos{\frac{2n\pi}{3}}+\frac{2\sqrt{3}}{3}t_5\sin{\frac{n\pi}{3}}+2t_6\cos{\frac{n\pi}{3}}

が求まります。


例: 周期6 (1, 1, 4, 5, 1, 4)

ここで、一度ツイートした周期数列  (1,\ 1,\ 4,\ 5,\ 1,\ 4) の一般項を実際に作ってみます。


上で定めた6つの数列  a_n,\ b_n,\ c_n,\ d_n,\ e_n,\ f_n を用いて

 \begin{align} (1,\ 1,\ 4,\ 5,\ 1,\ 4) &= t_1a_n+t_2b_n+t_3c_n+t_4d_n+t_5e_n+t_6f_n \end{align}

と表します。

 a_n = (1,\ 1,\ 1,\ 1,\ 1,\ 1),\hspace{20px} b_n = (-1,\ 1, -1,\ 1, -1,\ 1),\\ c_n = (1, -1,\ 0,\ 1, -1,\ 0),\hspace{20px} d_n = (-1, -1,\ 2, -1, -1,\ 2),\\ e_n = (1,\ 1,\ 0, -1, -1,\ 0),\hspace{20px} f_n = (1, -1, -2, -1,\ 1,\ 2)

から行列を作ると、係数  t_1,\ t_2,\ \ldots,\ t_6

 \begin{align} \displaystyle
\left( \begin{array}{c} t_1 \\ t_2 \\ t_3 \\ t_4 \\ t_5 \\ t_6 \end{array} \right) &= \frac{1}{12}
\left( \begin{array}{cccccc}
    2 & 2 & 2 & 2 & 2 & 2 \\
    -2 & 2 & -2 & 2 & -2 & 2 \\
    3 & -3 & 0 & 3 & -3 & 0 \\
    -1 & -1 & 2 & -1 & -1 & 2 \\
    3 & 3 & 0 & -3 & -3 & 0 \\
    1 & -1 & -2 & -1 & 1 & 2
\end{array} \right)
\left( \begin{array}{c} 1 \\ 1 \\ 4 \\ 5 \\ 1 \\ 4 \end{array}\right) \\
\displaystyle &= \left( \begin{array}{c} 8/3 \\ 2/3 \\ 1 \\ 2/3 \\ -1 \\ -1/3 \end{array}\right)
\end{align}

と求まります。したがって、周期数列  (1,\ 1,\ 4,\ 5,\ 1,\ 4) の一般項は

 \begin{align} (1,\ 1,\ 4,\ 5,\ 1,\ 4) &= \frac{8}{3}+\frac{2}{3}\cos{n\pi}+1・\frac{2\sqrt{3}}{3}\sin{\frac{2n\pi}{3}}+\frac{2}{3}・2\cos{\frac{2n\pi}{3}}-1・\frac{2\sqrt{3}}{3}\sin{\frac{n\pi}{3}}-\frac{1}{3}・2\cos{\frac{n\pi}{3}} \\
&= \frac{8}{3}+\frac{2}{3}\cos{n\pi}+\frac{2\sqrt{3}}{3}\sin{\frac{2n\pi}{3}}+\frac{4}{3}\cos{\frac{2n\pi}{3}}-\frac{2\sqrt{3}}{3}\sin{\frac{n\pi}{3}}-\frac{2}{3}\cos{\frac{n\pi}{3}} \end{align}

となります。

ツイートしたのはこれを  \displaystyle \frac{2}{3} で括って順番を変えた

 \displaystyle (1,\ 1,\ 4,\ 5,\ 1,\ 4) = \frac{2}{3} \left( \cos{n\pi}+\sqrt{3}\sin{\frac{2n\pi}{3}}+2\cos{\frac{2n\pi}{3}}-\sqrt{3}\sin{\frac{n\pi}{3}}-\cos{\frac{n\pi}{3}}+4 \right)

の形でした。


周期8

任意の周期8の数列を作るために、周期が  1,\ 2,\ 4,\ 4,\ 8,\ 8,\ 8,\ 8 の独立な数列を次のように8つ用意します。

 \begin{align}
    \displaystyle a_n &= (1,\ 1,\ 1,\ 1,\ 1,\ 1,\ 1,\ 1) = 1 \\
    \displaystyle b_n &= (-1,\ 1, -1,\ 1, -1,\ 1, -1,\ 1) = \cos{n\pi} \\
    \displaystyle c_n &= (1,\ 0,-1,\ 0,\ 1,\ 0,-1,\ 0) = \sin{\frac{n\pi}{2}} \\
    \displaystyle d_n &= (0, -1,\ 0,\ 1,\ 0, -1,\ 0,\ 1) = \cos{\frac{n\pi}{2}} \\
    \displaystyle e_n &= (1,\ 2,\ 1,\ 0, -1, -2, -1,\ 0) = (\ ?\ ) \\
    \displaystyle f_n &= (1,\ 0, -1, -2, -1,\ 0,\ 1,\ 2) = (\ ?\ ) \\
    \displaystyle g_n &= (0,\ 1,\ 2,\ 1,\ 0, -1, -2, -1) = (\ ?\ ) \\
    \displaystyle h_n &= (2,\ 1,\ 0, -1, -2, -1,\ 0,\ 1) = (\ ?\ )
\end{align}

これら8つの数列は

 \displaystyle
\left| \begin{array}{cccccc} a_n\ \ b_n\ \ c_n\ \ d_n\ \ e_n\ \ f_n\ \ g_n\ \ h_n \end{array} \right| = 512 \ne 0

より独立で、これらの一次結合で任意の周期8の数列が作れます。

 e_n h_n の一般項はどうやって作りましょう。


まずは  e_n = (1,\ 2,\ 1,\ 0, -1, -2, -1,\ 0) の一般項を作るために、似た形の関数をひとつ持ってきます。

ここでは  f(n)=\displaystyle 2\sin{\frac{n\pi}{4}} を使うことにしましょう。 f(n) が一般項の周期数列は  \displaystyle (\sqrt{2},\ 2,\ \sqrt{2},\ 0, -\sqrt{2}, -2, -\sqrt{2},\ 0) です。すこしずらすだけで  e_n が作れそうです。


この  \displaystyle (\sqrt{2},\ 2,\ \sqrt{2},\ 0, -\sqrt{2}, -2, -\sqrt{2},\ 0) e_n にしちゃえばいいじゃないか!って人もいるかと思いますが、係数を計算する上で数列が常に整数値をとったほうが都合がよいのです。


下の [図 1] の青い曲線が  \displaystyle y=f(n) です。

 n y のヘンテコな組み合わせには突っ込まないでください!


f:id:hge:20160307094510p:plain

[図 1]


この青い曲線をピンクの矢印のようにずらし、曲線が赤い点を全て通るようにします。

 
    e_1=f(1-\frac{1}{3})=1,\hspace{20px} e_2=f(2)=2 \\
    e_3=f(3+\frac{1}{3})=1,\hspace{20px} e_4=f(4)=0 \\
    e_5=f(5-\frac{1}{3})=-1,\hspace{20px} e_6=f(6)=-2 \\
    e_7=f(7+\frac{1}{3})=-1,\hspace{20px} e_8=f(8)=0

とすればよいので

 \displaystyle e_n=f\left(n-\frac{1}{3}\sin{\frac{n\pi}{2}}\right)=2\sin{\frac{(3n-\sin{\frac{n\pi}{2}})\pi}{12}}

となります。ずらしたグラフは次の図のようになります。


f:id:hge:20160307095525p:plain

[図 2]


同様に  f_n から  h_n も次のように一般項を作ることができます。

 \begin{align}
    \displaystyle f_n &= (1,\ 0, -1, -2, -1,\ 0,\ 1,\ 2) = 2\cos{\frac{(3n+\sin{\frac{n\pi}{2}})\pi}{12}} \\
    \displaystyle g_n &= (0,\ 1,\ 2,\ 1,\ 0, -1, -2, -1) = 2\sin{\frac{(3n-3+\cos{\frac{n\pi}{2}})\pi}{12}} \\
    \displaystyle h_n &= (2,\ 1,\ 0, -1, -2, -1,\ 0,\ 1) = 2\cos{\frac{(3n-3-\cos{\frac{n\pi}{2}})\pi}{12}}
\end{align}


それでは今までと同様に周期数列  (a,\ b,\ c,\ d,\ e,\ f,\ g,\ h) の一般項を求めます。

 (a,\ b,\ c,\ d,\ e,\ f,\ g,\ h) = t_1a_n+t_2b_n+\ldots+t_8h_n\hspace{20px}(t_i \in {\bf R})

と表して

 \displaystyle
\left( \begin{array}{c} t_1 \\ t_2 \\ t_3 \\ t_4 \\ t_5 \\ t_6 \\ t_7 \\ t_8 \end{array} \right) = \frac{1}{8}
\left( \begin{array}{cccccccc}
    1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 \\
    -1 & 1 & -1 & 1 & -1 & 1 & -1 & 1 \\
    2 & 0 & -2 & 0 & 2 & 0 & -2 & 0 \\
    0 & -2 & 0 & 2 & 0 & -2 & 0 & 2 \\
    -2 & 4 & -2 & 0 & 2 & -4 & 2 & 0 \\
    -2 & 0 & 2 & -4 & 2 & 0 & -2 & 4 \\
    0 & -2 & 4 & -2 & 0 & 2 & -4 & 2 \\
    4 & -2 & 0 & 2 & -4 & 2 & 0 & -2
\end{array} \right)
\left( \begin{array}{c} a \\ b \\ c \\ d \\ e \\ f \\ g \\ h \end{array}\right)

から係数  t_1,\ \ldots,\ t_8 が求まり、一般項

 \hspace{15px} (a,\ b,\ c,\ d,\ e,\ f,\ g,\ h) \\
\displaystyle = t_1+t_2\cos{n\pi}+t_3\sin{\frac{n\pi}{2}}+t_4\cos{\frac{n\pi}{2}}+2t_5\sin{\frac{(3n-\sin{\frac{n\pi}{2}})\pi}{12}} \\
\displaystyle \hspace{15px} +2t_6\cos{\frac{(3n+\sin{\frac{n\pi}{2}})\pi}{12}}+2t_7\sin{\frac{(3n-3+\cos{\frac{n\pi}{2}})\pi}{12}}+2t_8\cos{\frac{(3n-3-\cos{\frac{n\pi}{2}})\pi}{12}}

が求まります。



さて、ここからが本番です!!

・・・・・・と言いたいところですが、続きは作成中です。

次は周期  12,\ 3・2^m,\ 2^m の順で一般項を作っていくつもりです。


*1:周期が4以上のときにも使うことを考えて(-1)^nにはしていません。

*2:なるべく単純な式で表したいので、各数列の周期の和が最も小さくなるように周期の短い(きれいな一般項の)数列を使う形をとっています。