多項式の展開                         戻る

 最近、整式という言葉が使われなくなりつつあり、「多項式」という言葉に取って代わられ
ようとしている。

 以前は、単項式のいくつかを、「+」や「−」で結びつけた式を多項式と呼んだが、今では
単項式も多項式の一つの場合に過ぎないという見方でとらえられている。

 このページでは、(1+x) の展開について考える。

 この多項式の展開については、当HPの「パスカルの三角形」で既に述べられている。

 そこでは、小さい n の値については、パスカルの三角形を使うのが有効であるが、十分
大きい n の値に対しては、2項定理を利用するという話であった。

2項定理(Binomial Theory)

            

   ここで、 は、2項係数といわれ、異なる n 個のものから、異なる k 個のもの
  をとる組合せの数である。
               
             但し、 (n の階乗)とする。

 確かに、2項定理は、各項の係数を即座に計算できるという利点はあるが、十分大きい
n の値に対しては、「計算が大変だ!」というのが本音だろう。

 そこで、このページでは漸化式の考えを取り入れ、順次前の項の係数から次の項の係
数を求める公式を紹介したい。

例 (1+x)3 =a0+a1x+a22+a33 とおき、数列 { a } の漸化式を作ってみよう。

  例えば、x の項に注目すると、a1 は次のような考えで定まる数であった。

     3つの 1+x のうちの1つから、「x」 を選択し、他の2つからは、「1」 を選択する。
    このような場合の数は、3通りある。 よって、 a1 = 3 となる。

     すなわち、下表で、黄色の部分からは「x」 を選択し、白色の部分からは「1」 を選
    択する。

1. 1+x 1+x 1+x
2. 1+x 1+x 1+x
3. 1+x 1+x 1+x

     この3つのそれぞれの場合を起点として、x2 の項を作るとき、その場合の数が、
    a2 となる。

     例えば、場合1.について、白色の部分から、もう一つ「x」 を選択すればよい。
    選ばれた部分を、赤色で表す。

1. 1+x 1+x 1+x
 
A. 1+x 1+x 1+x
B. 1+x 1+x 1+x

      同様にして、場合2.、場合3.についても次のようになる。

2. 1+x 1+x 1+x
 
C. 1+x 1+x 1+x
D. 1+x 1+x 1+x

3. 1+x 1+x 1+x
 
E. 1+x 1+x 1+x
F. 1+x 1+x 1+x

    以上から、場合の数は、6通りありそうに思えるが、実は上記の場合には同じもの
   が含まれている。(AとC、BとE、DとF)

    したがって、2通りずつ同じものが含まれるので、求める場合の数は、3通りで、

   a2 = 3 となる。

    このとき、 a2 と a1 の関係は、次のようになっている。

         a2 = a1 × 2 ÷ 2

   このことから、 ak+1 = a × (3−k) ÷ (k+1) という漸化式が予想される。


 上記の例を一般化して、漸化式を実際に求めてみよう。

    (1+x) =a0+a1x+・・・+a+ak+1k+1+・・・+a とおく。

     n 個の 1+x のうち、k 個の 1+x から、「x」 を選択し、残りの n−k 個の 1+x
    から、「1」 を選択する。 このような場合の数が a となる。

     各場合について、残りの n−k 個の 1+x から、「x」 を 1 個選択する場合の数
    は、n−k 通りある。

     ところが、それらの場合には同じものが含まれる。 k+1 個ずつ同じものがで
    きるので、求める場合の数は、

               a×(n−k)/(k+1) 通り

    となる。この値は、ak+1 に等しい。

     すなわち、
               

    が成り立つ。

    (別解) もちろん上記のような推論を経なくても、次の式変形から明らかだろう。

        ak+1k+1=n!/((k+1)!(n−k−1)!)

                ={n!/(k!(n−k)!)}・{(n−k)/(k+1)}

                =・{(n−k)/(k+1)}=a×{(n−k)/(k+1)} (終)

 この漸化式を用いると、多項式の展開は容易である。

例 (1+x)5 を展開してみよう。

  a0 = 1
  a1 = a0×(5−0)/(0+1)=5
  a2 = a1×(5−1)/(1+1)=10
  a3 = a2×(5−2)/(2+1)=10
  a4 = a3×(5−3)/(3+1)=5
  a5 = a4×(5−4)/(4+1)=1

 よって、 (1+x)5 = 1+5x+10x2+10x3+5x4+x5 となる。

例 (1+x)10 = 1+1・(10/1)x+10・(9/2)x2+45・(8/3)x3+120・(7/4)x4+・・・
         =1+10x+45x2+120x3+210x4+・・・

(コメント) 2項係数の対称性を利用すれば、上記の計算は半分で済む。面倒な2項係数
      の計算をしなくても上記の公式を用いれば、展開しながら次々に係数を暗算で求
      めて展開できるわけで、何か「鮮やか!」と感じるのは私だけだろうか?


(参考文献:ア・マルクシェビィチ 著 鈴木竹夫 訳  級数 (東京図書))


(追記) 平成22年10月9日付け

 当HPがいつもお世話になっているHN「攻略法」さんから、計算機における2項係数の効
率的な求め方について、ご教示いただいた。攻略法さんに感謝します。

  =n(n−1)(n−2)・・・(n−r+1)/r(r−1)(r−2)・・・3・2・1

    =(n/1)((n−1)/2)((n−3)/3)・・・((n−r+1)/r) ← 漸化式表現

 階乗をそのまま計算すると桁あふれを起こすが、このように求めると抑えることができる
そうである。

例 104=(10/1)(9/2)(8/3)(7/4)=210