8

雑記:部分分数分解

791
0

はじめに

 この記事では部分分数分解についての基本事項についてまとめていきます。
 部分分数分解とは多項式f,g,hに対して
f(x)(xa1)(xa2)(xan)=α1xa1+α2xa2++αnxan

f(x)g(x)h(x)=f1(x)g(x)+f2(x)h(x)
のように高次の分数式を低次の分数式の和に分解することを言います。
 高校数学では分母を両辺に掛けて係数比較することでα1,α2,,αnf1,f2を決定するのが常套手段となっていますが、ここではより発展的な話をしていきましょう。

分解の存在性と一意性

 一般の分数式を考えていくにあたって、そもそもどのようなときにどのような部分分数分解が存在するのかということを確かめておく必要があります。そのことについては以下のような事実として記述することができます。

Ver. 1

 多項式f,g,hについて、g,hが互いに素つまり共通因子を持たず、また
degf<degg+degh
が成り立つとき
degf1<degg,degf2<degh
および
f(x)g(x)h(x)=f1(x)g(x)+f2(x)h(x)
を満たすような多項式f1,f2が一意に存在する。

 この命題を示すにあたって
f(x)=f2(x)g(x)+f1(x)h(x)
という恒等式を考える必要がありますが、これは不定方程式
c=ax+by
の整数解(x,y)を考えるのと同様の手法が使えます。
 それは整数同士の割り算と同様に多項式同士にも除法の原理が考えられることに起因しています(このことは専門的な用語を使うと、整数環Zと体係数多項式環K[x]は共にユークリッド整域である、と言い換えられます)。
 詳しいことについては以下の証明を見てみればわかると思います。

証明(冗長なので折り畳み)

 多項式同士の割り算により
g(x)=q1(x)h(x)+r1(x)(degr1<degh)h(x)=q2(x)r1(x)+r2(x)(degr2<degr1)r1(x)=q3(x)r2(x)+r3(x)(degr3<degr2)rn1(x)=qn+1rn(x)+rn+1(x)(degrn+1<degrn)
と計算していくとg,hは互いに素であったことからいずれdegrn+1=0、つまりrn+1(x)は定数となる。
 このときこの計算を遡っていくことで
1=q(x)g(x)+p(x)h(x)
なる多項式p,qが存在することがわかる。そしてこのp,qを用いることで恒等式
f(x)=s(x)g(x)+r(x)h(x)
を満たすような多項式は(g,hが互いに素であることから)
(r,s)=(gk+fp,hk+fq)(k=k(x) は任意)
で尽くされることもわかる。
 いまfpgで割ることで
fp=gk+f1(degf1<degg)
となるような多項式k,f1を取りf2g=ff1hとおくと
deg(f2g)max{degf,deg(f1h)}<degg+degh
つまり
degf1<degg,degf2<degh
とできることが示された。
 またその他の解(r,s)(f1,f2)に対しては
degr=deg(gk+f1)deggdegs=deg(hk+f2)degh
が成り立つのでそのようなf1,f2は一意であることも示された。

Ver. 2

 上の命題を使うことによってより一般に以下が成り立つことがわかります。

 それぞれ互いに素な多項式g1,g2,,gnに対し
degfk<deggk
かつ
f(x)g1(x)g2(x)gn(x)=f0(x)+f1(x)g1(x)+f2(x)g2(x)++fn(x)gn(x)
を満たすような多項式f0,f1,fnが一意に存在する。
 またこのとき
degf0=degf(degg1+degg2++deggn)
が成り立つ。

 f0は単にfをその分母で割ることで得られます。

Ver. 3

 またこれをgk(x)=(xak)ekとし
fk(x)=αk,1(xak)ek1+αk,2(xak)ek2++αk,ek
と展開することで以下の系が得られます。

 異なる複素数a1,a2,,anに対し
f(x)(xa1)e1(xa2)e2(xan)en=f0(x)+k=1nj=1ekαk,j(xak)j
を満たすような複素数αk,jが一意に存在する。

 ちなみにこの命題は数学的帰納法によっても示せます。

 分母の次数についての帰納法で示す(次数が0のときは明らか)。いま任意のfに対して
f(x)(xa)eg(x)(g(a)0)
が上のように分解できるとする。このとき
α=f(a)g(a),h(x)=1xa(f(x)f(a)g(x)g(a))
とおくと
f(x)(xa)e+1g(x)α(xa)e+1=f(x)g(a)f(a)g(x)(xa)e+1g(x)g(a)=h(x)(xa)eg(x)
が成り立ち、この右辺は仮定より部分分数展開できるため
f(x)(xa)e+1g(x)
も部分分数分解できることが示された。

ヘヴィサイドの展開公式

 上の証明から
f(x)(xa)eg(x)=h(x)(xa)e1g(x)+f(a)/g(a)(xa)e
のように展開係数が決定できることがわかりますが、これを繰り返すことで以下の公式が成り立つことがわかります。

 多項式f,g(g(a)0)に対し
αj=1j!djdxjf(x)g(x)|x=a
とおくとある多項式h(x)が存在して
f(x)(xa)eg(x)=h(x)g(x)+j=1eαej(xa)j
が成り立つ。

 一般的な導出法を知っておいた方が有益なのでそれも書いておきましょう。

f(x)(xa)eg(x)=h(x)g(x)+j=1eαej(xa)j
のような展開が存在することは先で示した通り。いまこの両辺に(xa)eを掛けると
f(x)g(x)=h(x)g(x)(xa)e+j=1eαj(xa)j
と表せるので、この両辺をj回微分してx=aとすることで
djdxjf(x)g(x)|x=a=j!aj
を得る。

 微分なども入っていて少しややこしいですが、高校数学程度なら指数がそれぞれ1の場合の次の形で覚えておけば十分でしょう。

 a1,a2,,anを異なる複素数としfdegf<nなる多項式とする。このとき
g(x)=(xa1)(xa2)(xan)
とおくと
f(x)g(x)=k=1n1xakf(ak)g(ak)
が成り立つ。

 この展開公式は係数比較や互除法などの面倒な手順を省略できるだけでなく、一般の抽象性の高い有理式の部分分数分解も与えることができるという点で非常に便利な公式となっています。

具体例

1x(x+1)(x+2)(x+n)
の部分分数分解を考える。これの1/(x+k)における展開係数は
1k(k+1)(1)12(nk)=(1)kk!(nk)!
と計算できるので
n!x(x+1)(x+2)(x+n)=k=0n(1)knCkx+k
と展開できることがわかる。

1(xα)n+1(xβ)n+1
の部分分数分解を考える。これの1/(xα)nk+1における展開係数は
(n+k)!k!n!(1)k(αβ)n+k+1
と計算できるので
1(xα)n+1(xβ)n+1=k=0n(1)kn+kCn(αβ)n+k+1(1(xα)nk+1+1(βx)nk+1)
と展開できることがわかる。

 ちなみに私は とある記事 のコメントにて
z4(4z5+z+1)(z5+z4+4)=13672(1060z4+76z3+4z220z194z5+z+1265z4+284z3+20z24z76z5+z4+4)
という展開を導出したことがありますが、こういう有理数の範囲で因数分解できず、しかも次数が高いような場合ばっかりは展開公式でゴリ押すのはおすすめできません(不可能ではないですが...)。こういうのをいい感じに処理できる方法とかないですかねぇ。

おまけ:留数定理による部分分数分解

 上では分数式が部分分数分解を持つことやその展開係数が留数のように計算できることを示しましたが、何か、こう、もう少し有理関数特有の性質を利用した証明というのが欲しくなります。
 ここで有理関数とはリーマン球面C^=C{}上の有理型関数であるという特徴付けがあります。そしてコンパクトリーマン面上の微分形式の留数の和は0であるという定理があります。ということで有理関数f(z)に対し
ω=f(w)zwdw
という微分形式を考えてみましょう。するとコンパクトリーマン面上の留数定理より
0=Resw=zω+f(α)=Resw=αω+Resw=ω
が成り立ちます。
 いま簡単のためf()=0、つまり分子より分母の次数の方が高いものとします。このときこのそれぞれの留数は以下のように計算できます。

Resw=zω=f(z)

 自明。

Rew=ω=0

 w=1/wとおくとωw=つまりw=0周りで
ω=f(1/w)z1/wdww2=f(1/w)w(1zw)dw
と表せるのでこのw=0における留数は
f()=0
と求まる。

 f(z)z=αにおける位数をeαとおくと、十分小さいr>0に対し
Resw=αω=k=1eα(12πi|wα|=r(wα)k1f(w)dw)1(zα)k
が成り立つ。

 十分小さいr>0に対し
Resw=zω=12πi|wα|=rf(w)wzdw=12πi|wα|=rf(w)zα11wαzαdw=k=0(12πi|wα|=r(wα)kf(w)dw)1(zα)k+1=k=0eα1(12πi|wα|=r(wα)kf(w)dw)1(zα)k+1
を得る。

 以上より
f(z)=f(α)=k=1eα(12πi|wα|=rα(wα)k1f(w)dw)1(zα)k
という部分分数展開が得られるわけです。ここで
12πi|wα|=rα(wα)eαk1f(w)dw=1k!dkdzk(zα)eαf(z)|z=α
が成り立つことは言うまでもないでしょう。
 ちなみに同様の積分を考えることで一般の有理型関数にも部分分数展開を与えることができます。そのことについては この記事 で解説しているので興味があればそちらも合わせてお読みください。

投稿日:2024119
OptHub AI Competition

この記事を高評価した人

高評価したユーザはいません

この記事に送られたバッジ

バッジはありません。
バッチを贈って投稿者を応援しよう

バッチを贈ると投稿者に現金やAmazonのギフトカードが還元されます。

投稿者

子葉
子葉
1065
259824
主に複素解析、代数学、数論を学んでおります。 私の経験上、その証明が簡単に探しても見つからない、英語の文献を漁らないと載ってない、なんて定理の解説を主にやっていきます。 同じ経験をしている人の助けになれば。最近は自分用のノートになっている節があります。

コメント

他の人のコメント

コメントはありません。
読み込み中...
読み込み中
  1. はじめに
  2. 分解の存在性と一意性
  3. Ver. 1
  4. Ver. 2
  5. Ver. 3
  6. ヘヴィサイドの展開公式
  7. 具体例
  8. おまけ:留数定理による部分分数分解