アメリカの大学で奮闘中

アメリカの大学でプログラミングを学ぶべくコンピューターサイエンス学部に留学したものの挫折し数学科に転部した著者が、自分の挫折ポイントを踏まえて数学、プログラミング、アルゴリズムついてできる限り分かりやすく解説してみるブログ。*できる限り記事の内容は技術的な間違いをしないように気をつけていますが、もし間違いがあれば教えていただけると助かります。

<高校数学>高次方程式(3次以上)の解の探し方

今回は数2の内容です。

 

高次方程式を解く時に必要なマインドセットは”とりあえず解を一つ見つける"です。

 

解 α一つでも見つかると因数定理より x-α が因数であることが分かります。そこで元の関数 f(x) をその因数で割ることで、少し簡単な式を得れます。これ以上解が出ないところまで繰り返してαを探してっは分解していきます。

 

この解αは僕が高校生の頃はあてずっぽで探していました。ですがこの解ある程度までは絞れるので、その方法及び証明の解説です。

 

こんな関数を考えてみてください

f(x) = ax^3 + bx^2 + cx + d

 

この時のaの値とdの値を因数分解してみてください。

例えば、a = 2, d = 5だとします。

そうすると因数分解の結果は s=1,2  r=1,5 になります。

 

この場合、解は ±r/s、すなわち ±{1,5,1/2,5/2}のいずれかになります。

 

ではなぜ上記のようなことが可能なのか、ここで証明していきたいと思います。

 

 

(証明)

r/sがf(x) = a_n x^n + a_n-1 x^n-1 + ... + a_1 x + a_0の解だと仮定する。

 

f(r/s) = a_n(r/s)^n + ... + a_1(r/s) + a_o = 0

両辺にs^nをかける

 

* a_n r^n + a_n-1 s r^n-1 + ... + a_0 s^n = 0 

 

a_0 s^n = - a_n r^n - a_n-1 s r^n-1 - ... a_1 s^n-1 r

             = r (- a_n r^n-1 - a_n-1 s r^n-2 - ... a_1 s^n-1 )

 

なので、r|a_0 s^n    (補足 a|b bはaで割れる)

rとsっは互いに素なため、 r|a_0

 

同じように*をa_n r^nで解くと

a_n r^n = - a_n-1 s r^n-1 - ... - a_0 s^n 

             = s(- a_n-1 r^n-1 - ... - a_0 s^n-1 )

 

なので、s|a_n r^n   

rとsっは互いに素なため、 s|a_n

 

証明の要約

r/sが仮に書いであると仮定した時、そのrとsはそれぞれ何なのかを式変形でも止めた結果 r|a_0 s|a_n これを得ましたって感じです。