二項定理

初等代数学における二項定理（にこうていり、英: binomial theorem）または二項展開 (binomial expansion) は二項式の冪の代数的な展開を記述するものである。定理によれば、冪 (x + y)n は a xb yc の形の項の和に展開できる。ただし、冪指数 b, c は b + c = n を満たす非負整数で、各項の係数 a は n と b に依存して決まる特定の正整数である。例えば ( x + y ) 2 = x 2 + 2 x y + y 2 , {\displaystyle (x+y)^{2}=x^{2}+2xy+y^{2},} ( x + y ) 3 = x 3 + 3 x 2 y + 3 x y 2 + y 3 , {\displaystyle (x+y)^{3}=x^{3}+3x^{2}y+3xy^{2}+y^{3},} ( x + y ) 4 = x 4 + 4 x 3 y + 6 x 2 y 2 + 4 x y 3 + y 4 . {\displaystyle (x+y)^{4}=x^{4}+4x^{3}y+6x^{2}y^{2}+4xy^{3}+y^{4}.} a xb yc の項の係数 a は二項係数 ( n b ) ( = ( n c ) ) {\displaystyle {\tbinom {n}{b}}(={\tbinom {n}{c}})} とも呼ばれる。これら係数を n および b を動かして並べることでパスカルの三角形を描くことができる。これらの数は組合せ論においても現れ、 ( n b ) {\displaystyle {\tbinom {n}{b}}} は n-元集合から b 個の相異なる元を選ぶ組合せの総数を与える。 特別の場合の二項定理は古代より知られていた。紀元前4世紀ギリシャの数学者エウクレイデスは冪指数 2 に対する特別の場合の二項定理に言及している。三次の場合の二項定理が6世紀のインドで知られていたことは証拠がある。 n 個の対象から重複無く k 個を選ぶ総数を表す組合せ論的量としての二項係数は、古代ヒンドゥーに着目されていた。この組合せ論的問題に対する言及として知られる最も古いものは、ヒンドゥーの詩人ピンガラ（英語版） (c. 200 B.C.) による Chandaḥśāstra で、それにはその解法も含まれている。紀元後10世紀に評者ハラーユダ（英語版）はこの解法を今日パスカルの三角形と呼ばれるものを用いて説明した。6世紀ごろのヒンドゥーの数学者には、この数が n!⁄(n−k)! k! なる商で表されることがおそらく知られていたし、明らかにこの規則についての言及を12世紀にバースカラ2世の表した文書 Lilavati に見つけることができる。 そういった意味での二項定理は、二項係数の三角形パターンについて記述した11世紀アラビアの数学者アル゠カラジ（英語版）の業績にも見つけることができる。アル゠カラジはまた、原始的な形の数学的帰納法をもちいて二項定理およびパスカルの三角形に関する数学的証明も与えている。ペルシアの詩人で数学者のオマール・カヤームは、その数学的業績のほとんどは失われてしまったが、恐らく高階の二項定理についてよく知っていた。低次の二項展開は13世紀中国の楊輝や朱世傑の数学的業績にもみられる。楊輝は遥か旧く11世紀の賈憲（英語版）の書の方法に従った（それらもまた今日では失われてしまったが）。 1544年にミハエル・シュティーフェル（英語版）は「二項係数」("binomial coefficient") の語を導入して、「パスカルの三角形」を通じて (1 + a)n を (1 + a)n−1 で表すためにそれらをどのように使うのかを示した。ブレーズ・パスカルは、今日彼の名を冠して呼ばれる三角形を論文（英語版） Traité du triangle arithmétique (1653) において包括的に研究したが、これら数の規則性はルネッサンス後期ヨーロッパの数学者たち（例えばシュティーフェル、タルタリア、シモン・ステヴィンなど）には既に知られていた。 アイザック・ニュートンは任意の有理数冪に対して成り立つ一般化された二項定理を示したと考えられている。 定理によれば、x + y の任意の冪を ( x + y ) n = ( n 0 ) x n y 0 + ( n 1 ) x n − 1 y 1 + ( n 2 ) x n − 2 y 2 + ⋯ + ( n n − 1 ) x 1 y n − 1 + ( n n ) x 0 y n {\displaystyle (x+y)^{n}={n \choose 0}x^{n}y^{0}+{n \choose 1}x^{n-1}y^{1}+{n \choose 2}x^{n-2}y^{2}+\cdots +{n \choose n-1}x^{1}y^{n-1}+{n \choose n}x^{0}y^{n}} (1) の形の和に展開することができる（冪指数が零となるときは対応する冪は 1 に等しいものとし、その項の因子としてはしばしば省略する）。ここに (n k) は二項係数と呼ばれる特定の正整数である。この等式はしばしば二項公式（ドイツ語版）あるいは二項（恒）等式とも呼ばれる。総和の ∑-記法（英語版）を用いれば ( x + y ) n = ∑ k = 0 n ( n k ) x n − k y k = ∑ k = 0 n ( n k ) x k y n − k {\displaystyle (x+y)^{n}=\sum _{k=0}^{n}{n \choose k}x^{n-k}y^{k}=\sum _{k=0}^{n}{n \choose k}x^{k}y^{n-k}} と書ける。最後の式はもともとの式における x と y との対称性と、定理の等式に現れる二項係数の列の対称性により、真ん中の式から得られる。二項公式の簡単版が y に 1 を代入して一変数化することで得られる。つまり、 ( 1 + x ) n = ( n 0 ) x 0 + ( n 1 ) x 1 + ( n 2 ) x 2 + ⋯ + ( n n − 1 ) x n − 1 + ( n n ) x n = ∑ k = 0 n ( n k ) x k . {\displaystyle (1+x)^{n}={n \choose 0}x^{0}+{n \choose 1}x^{1}+{n \choose 2}x^{2}+\cdots +{n \choose {n-1}}x^{n-1}+{n \choose n}x^{n}=\sum _{k=0}^{n}{n \choose k}x^{k}.} 注 この定理は冪指数 n が任意の自然数であるとき、x および y が任意の単位的可換環の元として成り立つ。このとき、項 ( n k ) x n − k y k {\displaystyle {\tbinom {n}{k}}x^{n-k}y^{k}} は環の元の積 xn−kyk の整数 ( n k ) {\displaystyle {\tbinom {n}{k}}} によるスカラー倍である。つまりここでは環を Z-加群と見做している。 必ずしも可換でない一般の単位的環においても x と y が可換である（つまり xy = yx を満たす）限りにおいて二項定理は成り立つ。 xn と yn の項を分けて書けば単位元の存在も仮定しなくてよい: ( x + y ) n = x n + [ ∑ k = 1 n − 1 ( n k ) x n − k y k ] + y n . {\displaystyle (x+y)^{n}=x^{n}+\left[\sum _{k=1}^{n-1}{\binom {n}{k}}x^{n-k}y^{k}\right]+y^{n}.} 定理の主張を、多項式列 {1, x, x2, …} は二項型であると述べることもできる。 n = 0 ( x + y ) 0 = 1 = ( 0 0 ) x 0 y 0 , {\displaystyle (x+y)^{0}=1={0 \choose 0}x^{0}y^{0},} n = 1 ( x + y ) 1 = x + y = ( 1 0 ) x 1 y 0 + ( 1 1 ) x 0 y 1 {\displaystyle (x+y)^{1}=x+y={1 \choose 0}x^{1}y^{0}+{1 \choose 1}x^{0}y^{1}} が主張を満たすことは明らか。以下 n は 1 以上の整数として n に関する帰納法で示す。 帰納法の仮定により、 ( x + y ) n + 1 = ( x + y )   ∑ k = 0 n ( n k ) x n − k y k {\displaystyle (x+y)^{n+1}=(x+y)~\sum _{k=0}^{n}{n \choose k}x^{n-k}y^{k}} が成り立つから、分配法則によって ( x + y ) n + 1 = x n + 1 + x   ∑ k = 1 n ( n k ) x n − k y k + y   ∑ k = 0 n − 1 ( n k ) x n − k y k + y n + 1 = x n + 1 + ∑ k = 1 n [ ( n k ) + ( n k − 1 ) ] x n − k + 1 y k + y n + 1 {\displaystyle {\begin{aligned}(x+y)^{n+1}&=x^{n+1}+x~\sum _{k=1}^{n}{n \choose k}x^{n-k}y^{k}+y~\sum _{k=0}^{n-1}{n \choose k}x^{n-k}y^{k}+y^{n+1}\\&=x^{n+1}+\sum _{k=1}^{n}\left\lbrack {n \choose k}+{n \choose {k-1}}\right\rbrack x^{n-k+1}y^{k}+y^{n+1}\end{aligned}}} となり、パスカルの法則（英語版）を用いて ( x + y ) n + 1 = x n + 1 + ∑ k = 1 n ( n + 1 k )   x n − k + 1 y k + y n + 1 = ∑ k = 0 n + 1 ( n + 1 k )   x n − k + 1 y k {\displaystyle {\begin{aligned}(x+y)^{n+1}&=x^{n+1}+\sum _{k=1}^{n}{{n+1} \choose k}~x^{n-k+1}y^{k}+y^{n+1}\\&=\sum _{k=0}^{n+1}{{n+1} \choose k}~x^{n-k+1}y^{k}\end{aligned}}} を得る。これは所期の式である。 二項係数 (n k) が n-元集合から得られる k-元部分集合の総数であるという組合せ論的性質を用いてより直観的な証明ができる。展開すべき式を ( x + y ) n = ( x + y ) ( x + y ) ⋯ ( x + y ) ⏟ n  factors {\displaystyle (x+y)^{n}=\underbrace {(x+y)(x+y)\cdots (x+y)} _{n{\text{ factors}}}} と書く。x および y をそれぞれ j 個および k 個選んで掛け合わせれば xjyk の形の項を生じるが、ここで y を選ばないときには x を選ぶしかないから j = n – k である。最終的に k 個の y を選ぶ方法は (n k) 通りであるから、n 個の (x + y) を掛け合わせたときの単項式 xn–kyk の係数は (n k) である。 注 等式 ( X + Y ) n = ∑ k = 0 n ( n k ) X n − k Y k {\displaystyle (X+Y)^{n}=\sum _{k=0}^{n}{n \choose k}X^{n-k}Y^{k}} において n 個の Y を区別して Y1, Y2, …, Yn と考えた場合、対応する式は 基本対称式（英語版） σk を用いて ∏ i = 1 n ( X + Y i ) = ∑ k = 0 n σ k ( Y 1 , … , Y n ) X n − k {\displaystyle \prod _{i=1}^{n}(X+Y_{i})=\sum _{k=0}^{n}\sigma _{k}(Y_{1},\ldots ,Y_{n})X^{n-k}} と書ける。 1665年ごろアイザック・ニュートンは定理を一般化して非整数冪に対する公式（ニュートンの一般二項定理）を得た。この一般化において、有限和は無限級数で置き換えられなければならない。またこの一般化を行うために二項係数 (n k) の上の添字 n を任意の値としなければならないから、二項係数を階乗を用いて表すこともできない。一般化された二項係数を任意の数 r に対して ( r k ) = r ( r − 1 ) ⋯ ( r − k + 1 ) k ! = ( r ) k k ! {\displaystyle {r \choose k}={\frac {r\,(r-1)\cdots (r-k+1)}{k!}}={\frac {(r)_{k}}{k!}}} で定義する。右辺の (•)k はポッホハマー記号で、ここでは下方階乗を表す。このとき x, y が |x| > |y| なる実数のとき。r を任意の複素数として ( x + y ) r = ∑ k = 0 ∞ ( r k ) x r − k y k = x r + r x r − 1 y + r ( r − 1 ) 2 ! x r − 2 y 2 + r ( r − 1 ) ( r − 2 ) 3 ! x r − 3 y 3 + ⋯ {\displaystyle {\begin{aligned}(x+y)^{r}&=\sum _{k=0}^{\infty }{r \choose k}x^{r-k}y^{k}\\&=x^{r}+rx^{r-1}y+{\frac {r(r-1)}{2!}}x^{r-2}y^{2}+{\frac {r(r-1)(r-2)}{3!}}x^{r-3}y^{3}+\dotsb \end{aligned}}} (2) が成り立つ。r が非負整数のとき、k > r に対する二項係数は零であるから等式 (2) は等式 (1) に特殊化され、非零項は高々 r + 1 個である。r がそれ以外の値のときは級数 (2) は（少なくとも x, y が非零のとき）無数の非零項を持つ。 これは無限級数を扱っていてそれを一般化超幾何函数（英語版）で表そうとするときに重要である。 r = −s と置けば有用な等式 1 ( 1 − x ) s = ∑ k = 0 ∞ ( s + k − 1 k ) x k ≡ ∑ k = 0 ∞ ( s + k − 1 s − 1 ) x k {\displaystyle {\frac {1}{(1-x)^{s}}}=\sum _{k=0}^{\infty }{s+k-1 \choose k}x^{k}\equiv \sum _{k=0}^{\infty }{s+k-1 \choose s-1}x^{k}} を得る。これをさらに s = 1 と特殊化すれば幾何級数を得る。 注 式 (2) は x, y が複素数の場合にも一般化することができる。この場合、|x| > |y| に加えて、x を中心とする半径 |x| の開円板上で定義されたlogの正則な枝を用いて x + y および x の冪を定義しなければならない。 式 (2) は x および y がバナッハ代数の元であるときも、xy = yx かつ x が可逆で || y/x || < 1 である限り成り立つ。 二項定理を二項より多くの項の和の冪に対して一般化することができる。すなわち ( x 1 + x 2 + ⋯ + x m ) n = ∑ k 1 + k 2 + ⋯ + k m = n ( n k 1 , k 2 , … , k m ) x 1 k 1 x 2 k 2 ⋯ x m k m {\displaystyle (x_{1}+x_{2}+\cdots +x_{m})^{n}=\sum _{k_{1}+k_{2}+\cdots +k_{m}=n}{n \choose k_{1},k_{2},\ldots ,k_{m}}x_{1}^{k_{1}}x_{2}^{k_{2}}\cdots x_{m}^{k_{m}}} が成り立つ。ここで和は、非負整数列 k1, …, km でそれらの総和が n に等しいようなもの全体に亙って取る（つまり上記の展開の右辺の式は各項が全次数 n の斉次多項式である）。この展開の係数 ( n k 1 , ⋯ , k m ) {\displaystyle {\tbinom {n}{k_{1},\cdots ,k_{m}}}} は多項係数と呼ばれ。 ( n k 1 , k 2 , … , k m ) = n ! k 1 ! k 2 ! ⋯ k m ! {\displaystyle {n \choose k_{1},k_{2},\ldots ,k_{m}}={\frac {n!}{k_{1}!\,k_{2}!\cdots k_{m}!}}} なる値を持つ。組合せ論的には、多項係数 ( n k 1 , ⋯ , k m ) {\displaystyle {\tbinom {n}{k_{1},\cdots ,k_{m}}}} は n-元集合を各位数が k1, …, km となるような互いに素な部分集合へ分割する方法の総数を表す。 二項式の積を扱うために、より次元の高いところでも二項定理はしばしば有用である。二項定理により等式 ( x 1 + y 1 ) n 1 ⋯ ( x d + y d ) n d = ∑ k 1 = 0 n 1 ⋯ ∑ k d = 0 n d ( n 1 k 1 ) x 1 k 1 y 1 n 1 − k 1 … ( n d k d ) x d k d y d n d − k d {\displaystyle (x_{1}+y_{1})^{n_{1}}\dotsm (x_{d}+y_{d})^{n_{d}}=\sum _{k_{1}=0}^{n_{1}}\dotsm \sum _{k_{d}=0}^{n_{d}}{\binom {n_{1}}{k_{1}}}\,x_{1}^{k_{1}}y_{1}^{n_{1}-k_{1}}\;\dotsc \;{\binom {n_{d}}{k_{d}}}\,x_{d}^{k_{d}}y_{d}^{n_{d}-k_{d}}} が成り立つ。この式は多重添字記法を用いれば ( x + y ) α = ∑ ν ≤ α ( α ν ) x ν y α − ν {\displaystyle (x+y)^{\alpha }=\sum _{\nu \leq \alpha }{\binom {\alpha }{\nu }}\,x^{\nu }y^{\alpha -\nu }} とより簡潔に表される。 複素数に対する二項定理とド・モアブルの定理を合わせれば、正弦函数および余弦函数の多倍角公式が得られる。ド・モアブルの公式によれば cos ⁡ ( n x ) + i sin ⁡ ( n x ) = ( cos ⁡ x + i sin ⁡ x ) n {\displaystyle \cos(nx)+i\sin(nx)=(\cos x+i\sin x)^{n}} が成り立つから、二項定理を用いて右辺を展開して実部と虚部を比較すれば cos(nx) および sin(nx) に対する公式を得る。例えば ( cos ⁡ x + i sin ⁡ x ) 2 = cos 2 ⁡ x + 2 i cos ⁡ x sin ⁡ x − sin 2 ⁡ x {\displaystyle \left(\cos x+i\sin x\right)^{2}=\cos ^{2}x+2i\cos x\sin x-\sin ^{2}x} から倍角公式 cos ⁡ ( 2 x ) = cos 2 ⁡ x − sin 2 ⁡ x , sin ⁡ ( 2 x ) = 2 cos ⁡ x sin ⁡ x {\displaystyle \cos(2x)=\cos ^{2}x-\sin ^{2}x,\quad \sin(2x)=2\cos x\sin x} を得る。同様に ( cos ⁡ x + i sin ⁡ x ) 3 = cos 3 ⁡ x + 3 i cos 2 ⁡ x sin ⁡ x − 3 cos ⁡ x sin 2 ⁡ x − i sin 3 ⁡ x {\displaystyle \left(\cos x+i\sin x\right)^{3}=\cos ^{3}x+3i\cos ^{2}x\sin x-3\cos x\sin ^{2}x-i\sin ^{3}x} から三倍角公式 cos ⁡ ( 3 x ) = cos 3 ⁡ x − 3 cos ⁡ x sin 2 ⁡ x , sin ⁡ ( 3 x ) = 3 cos 2 ⁡ x sin ⁡ x − sin 3 ⁡ x {\displaystyle \cos(3x)=\cos ^{3}x-3\cos x\sin ^{2}x,\quad \sin(3x)=3\cos ^{2}x\sin x-\sin ^{3}x} を得る。一般に cos ⁡ ( n x ) = ∑ k : even ( − 1 ) k / 2 ( n k ) cos n − k ⁡ x sin k ⁡ x , sin ⁡ ( n x ) = ∑ k : odd ( − 1 ) ( k − 1 ) / 2 ( n k ) cos n − k ⁡ x sin k ⁡ x {\displaystyle {\begin{aligned}\cos(nx)&=\sum _{k{\text{: even}}}(-1)^{k/2}{n \choose k}\cos ^{n-k}x\sin ^{k}x,\\\sin(nx)&=\sum _{k{\text{: odd}}}(-1)^{(k-1)/2}{n \choose k}\cos ^{n-k}x\sin ^{k}x\end{aligned}}} となる。 ネイピア数 e を極限 e = lim n → ∞ ( 1 + 1 n ) n {\displaystyle e=\lim _{n\to \infty }\left(1+{\frac {1}{n}}\right)^{n}} で定義するとき、二項定理を用いれば e の級数表示を得る。特に ( 1 + 1 n ) n = 1 + ( n 1 ) 1 n + ( n 2 ) 1 n 2 + ( n 3 ) 1 n 3 + ⋯ + ( n n ) 1 n n {\displaystyle \textstyle (1+{\frac {1}{n}})^{n}=1+{n \choose 1}{\frac {1}{n}}+{n \choose 2}{\frac {1}{n^{2}}}+{n \choose 3}{\frac {1}{n^{3}}}+\cdots +{n \choose n}{\frac {1}{n^{n}}}} であり、この和の第 k-項 ( n k ) 1 n k = 1 k ! ⋅ n ( n − 1 ) ( n − 2 ) ⋯ ( n − k + 1 ) n k {\displaystyle \textstyle {n \choose k}{\frac {1}{n^{k}}}={\frac {1}{k!}}\cdot {\frac {n(n-1)(n-2)\cdots (n-k+1)}{n^{k}}}} は n → ∞ のとき後半の分数部分は 1 に収束するから lim n → ∞ ( n k ) 1 n k = 1 k ! . {\displaystyle \textstyle \lim _{n\to \infty }{n \choose k}{\frac {1}{n^{k}}}={\frac {1}{k!}}.} よって e は級数として e = 1 0 ! + 1 1 ! + 1 2 ! + 1 3 ! + ⋯ {\displaystyle e={\frac {1}{0!}}+{\frac {1}{1!}}+{\frac {1}{2!}}+{\frac {1}{3!}}+\dotsb } と書ける。 実際、上記の二項展開は n に関して単調増大だから、単調収束定理により上記の無限級数は実際に e に等しい。 整数 n に対する冪函数 f(x) = xn の導函数を定義に基づいて求めるとき、二項冪 (x + h)n を展開しなければならない。 二つの函数の積の高階導函数に対する公式を導くのに、二項定理が記号的に利用される。逆に t の函数 exp((x + y)t) に一般ライプニッツ則を適用すると二項定理が導かれる。実際 exp((x + y)t) = exp(xt)exp(yt) を両辺 t で n 回微分すれば、一般ライプニッツ則により ( x + y ) n exp ⁡ ( ( x + y ) t ) = d n ( exp ⁡ ( x t ) exp ⁡ ( y t ) ) d t n = ∑ k = 0 n ( n k ) x n − k exp ⁡ ( x t ) y k exp ⁡ ( y t ) {\displaystyle (x+y)^{n}\exp((x+y)t)={\frac {d^{n}(\exp(xt)\exp(yt))}{dt^{n}}}=\sum _{k=0}^{n}{\binom {n}{k}}x^{n-k}\exp(xt)\,y^{k}\exp(yt)} を得るから、両辺を exp(xt)exp(yt) で除して所期の式を得る。 ^ a b これは収束を保証する。r によっては、この級数が |x| = |y|のときも収束することがある。 ^ a b Weisstein, Eric W. "Binomial Theorem". MathWorld（英語）. CS1 maint: Multiple names: authors list ^ a b c d Coolidge, J. L. (1949年). “The Story of the Binomial Theorem”. The American Mathematical Monthly 56 (3). http://www.jstor.org/pss/2305028.  ^ a b c Jean-Claude Martzloff; S.S. Wilson; J. Gernet; J. Dhombres (1987). A history of Chinese mathematics. Springer.  ^ a b Biggs, N. L. (1979年). “The roots of combinatorics”. Historia Math. 6 (2). doi:10.1016/0315-0860(79)90074-0.  ^ a b O'Connor, John J.; Robertson, Edmund F., “Abu Bekr ibn Muhammad ibn al-Husayn Al-Karaji”, MacTutor History of Mathematics archive, University of St Andrews, http://www-history.mcs.st-andrews.ac.uk/Biographies/Al-Karaji.html . ^ Landau, James A. (1999年5月8日). “Historia Matematica Mailing List Archive: Re: [HM] Pascal's Triangle (mailing list email)”. Archives of Historia Matematica. 2007年4月13日閲覧。 ^ a b c Kline, Morris (1972). History of mathematical thought. Oxford University Press. p. 273.  ^ Bourbaki, N. (18 November 1998). Elements of the History of Mathematics Paperback. J. Meldrum (Translator). ISBN 978-3540647676.  ^ Démonstration par récurrence en vidéo. ^ Binôme de Newton : Démonstration par dénombrement en vidéo ^ https://books.google.co.jp/books?id=jPgQLOnnEbUC&pg=PA29 ^ Seely, Robert T. (1973). Calculus of One and Several Variables. Glenview: Scott, Foresman. ISBN 0-673-07779-9.  Bag, Amulya Kumar (1966年). “Binomial theorem in ancient India”. Indian J. History Sci 1 (1): 68–74.  Graham, Ronald; Knuth, Donald; Patashnik, Oren (1994). “(5) Binomial Coefficients”. Concrete Mathematics (2nd ed.). Addison Wesley. pp. 153–256. ISBN 0-201-55802-5. OCLC 17649857.  日本大百科全書(ニッポニカ)『二項定理』 - コトバンク Weisstein, Eric W. "Binomial Theorem". MathWorld（英語）. CS1 maint: Multiple names: authors list Weisstein, Eric W. "Binomial Series". MathWorld（英語）. CS1 maint: Multiple names: authors list Weisstein, Eric W. "Negative Binomial Series". MathWorld（英語）. CS1 maint: Multiple names: authors list Solomentsev, E. D. (2001), "Binomial series", in Hazewinkel, Michiel, Encyclopaedia of Mathematics, Springer, ISBN 978-1-55608-010-4 CS1 maint: Date and year Solomentsev, E.D. (2001), "Newton binomial", in Hazewinkel, Michiel, Encyclopaedia of Mathematics, Springer, ISBN 978-1-55608-010-4 CS1 maint: Date and year Binomial Theorem by Stephen Wolfram, and "Binomial Theorem (Step-by-Step)" by Bruce Colletti and Jeff Bryant, Wolfram Demonstrations Project, 2007.