数と式・方程式

カルダノの公式とは?|
3次方程式の解の公式をわかりやすく導出

カルダノの公式とは、3次方程式の解を求めるための公式です。

2次方程式には有名な「解の公式」がありますが、実は3次方程式にも一般的な解を求める方法が存在します。

それがカルダノの公式です。

しかし、カルダノの公式の導出を初めて見ると、

『なぜ突然 \(\displaystyle x=y-\frac{b}{3a}\) と置くの?』

『なぜ \(\displaystyle y=u+v\) と置くの?』

『途中で出てくる \(\displaystyle \omega\) は何?』

など、「どうしてその変形を思いつくの?」と疑問に感じる部分がいくつも出てきます。

そこで本記事では、一般の3次方程式

\begin{eqnarray}
\displaystyle ax^3+bx^2+cx+d=0 \quad (a \neq 0)
\end{eqnarray}

からカルダノの公式を導出しながら、途中式だけでなく「なぜその変形をするのか」までできるだけ丁寧に解説します。

カルダノの公式そのものを知りたい方はもちろん、「公式の導出まで納得して理解したい」という方も、ぜひ最後まで読んでみてください。

1. カルダノの公式とは?

カルダノの公式とは、3次方程式の解を求めるための公式です。

2次方程式

\begin{eqnarray}
\displaystyle ax^2+bx+c=0
\end{eqnarray}

には、

\begin{eqnarray}
\displaystyle x=\frac{-b \pm \sqrt{b^2-4ac}}{2a}
\end{eqnarray}

という有名な解の公式があります。

同じように、一般の3次方程式

\begin{eqnarray}
\displaystyle ax^3+bx^2+cx+d=0
\end{eqnarray}

についても、係数 \(a, b, c, d\) を使って解を表すことができます。

ただし、3次方程式の場合は2次方程式よりもかなり複雑です。

そこで、いきなり一般の3次方程式を解こうとするのではなく、まず変数変換によって式を簡単にします。

\begin{eqnarray}
\displaystyle x=y-\frac{b}{3a}
\end{eqnarray}

とおくと、元の3次方程式から2次の項を消去でき、

\begin{eqnarray}
\displaystyle y^3+3py+2q=0
\end{eqnarray}

という形に変形できます。

このような \(y^2\) の項を持たない3次方程式を減次3次方程式と呼びます。

ここで、

\begin{eqnarray}
\displaystyle p&=&-\frac{b^2}{9a^2}+\frac{c}{3a} \\
\displaystyle q&=&\frac{b^3}{27a^3}-\frac{bc}{6a^2}+\frac{d}{2a}
\end{eqnarray}

です。

この減次3次方程式を解くために、

\begin{eqnarray}
\displaystyle y=u+v
\end{eqnarray}

とおくのがカルダノの方法の重要なアイデアです。

この先、

\begin{eqnarray}
\displaystyle u^3 &=& -q + \sqrt{q^2+p^3} \\
\displaystyle v^3 &=& -q - \sqrt{q^2+p^3}
\end{eqnarray}

なるように \(u, v\) を選ぶことで、3次方程式の解を求めることができます。

一見すると、

「どうしてこんな置き換えを思いつくの?」

と思うかもしれません。

本記事では、ここから実際にカルダノの公式を導出したあと、なぜこのような変形をするのかについても順番に説明していきます。


2. カルダノの公式を使って3次方程式の解を表す

第1章では、一般の3次方程式を

\begin{eqnarray}
\displaystyle y^3+3py+2q=0
\end{eqnarray}

という、\(y^2\) の項を持たない形に変形できることを説明しました。

では、この方程式はどのように解けばよいのでしょうか?

カルダノの方法では、ここから

\begin{eqnarray}
\displaystyle y=u+v
\end{eqnarray}

とおくことを考えます。

詳しい理由や導出は次章以降で説明しますが、このようにおくことで最終的に

\begin{eqnarray}
\displaystyle u^3 &=& -q + \sqrt{q^2+p^3} \\
\displaystyle v^3 &=& -q - \sqrt{q^2+p^3}
\end{eqnarray}

という関係を得ることができます。

上の関係式より、たとえば1つの解は

\begin{eqnarray}
\displaystyle y=\sqrt[3]{-q + \sqrt{q^2+p^3}}+\sqrt[3]{-q - \sqrt{q^2+p^3}}
\end{eqnarray}

という形で表すことができます。

さらに、第1章で行った変数変換

\begin{eqnarray}
\displaystyle x=y-\frac{b}{3a}
\end{eqnarray}

に戻せば、

\begin{eqnarray}
\displaystyle \color{red}{x=-\frac{b}{3a}+\sqrt[3]{-q + \sqrt{q^2+p^3}}+\sqrt[3]{-q - \sqrt{q^2+p^3}}}
\end{eqnarray}

となります。

これが、カルダノの方法によって得られる3次方程式の解の1つです。

おろち
おろち

3次方程式のため、一般的に解は3つ存在します。

上で求めたものは、その解のうちの1つに過ぎません。

他2つの解については、次章以降で詳しく解説します。


3. カルダノの公式を導出しよう

第2章では、カルダノの公式によって3次方程式の解がどのような形で表されるのかを確認しました。

ここからは、

なぜそのような式が得られるのか?

を実際に途中式を追いながら確認していきます。

まず、一般の3次方程式

\begin{eqnarray}
\displaystyle ax^3+bx^2+cx+d=0 \quad (\text{ただし、}a \neq 0)
\end{eqnarray}

を考えます。

両辺を \(a\) で割ると、

\begin{eqnarray}
\displaystyle x^3+\frac{b}{a}x^2+\frac{c}{a}x+\frac{d}{a}=0
\end{eqnarray}

となります。

ここで、

\begin{eqnarray}
\displaystyle x=y-\frac{b}{3a}
\end{eqnarray}

と変数変換します。

すると、

\begin{eqnarray}
\displaystyle \biggl(y-\frac{b}{3a}\biggr)^3+\frac{b}{a}\biggl(y-\frac{b}{3a}\biggr)^2+\frac{c}{a}\biggl(y-\frac{b}{3a}\biggr)+\frac{d}{a}=0 \tag{3}
\end{eqnarray}

となります。

これを \(y\) について整理すると、

\begin{eqnarray}
\displaystyle y^3+\biggl(-\frac{b^2}{3a^2}+\frac{c}{a}\biggr)y+\biggl(\frac{2b^3}{27a^3}-\frac{bc}{3a^2}+\frac{d}{a}\biggr)=0 \tag{4}
\end{eqnarray}

となり、\(y^2\) の項が消えます。

ここで、

\begin{eqnarray}
\displaystyle 3p&=&-\frac{b^2}{3a^2}+\frac{c}{a} \\
\displaystyle 2q&=&\frac{2b^3}{27a^3}-\frac{bc}{3a^2}+\frac{d}{a}
\end{eqnarray}

とおけば、

\begin{eqnarray}
\displaystyle y^3+3py+2q=0
\end{eqnarray}

というシンプルな形になります。

ここまでは第1章でも触れましたが、ここからがカルダノの方法の核心部分です。

\(y\) を2つの数の和として、

\begin{eqnarray}
\displaystyle y = u+v
\end{eqnarray}

とおきます。

これを

\begin{eqnarray}
\displaystyle y^3+3py+2q=0
\end{eqnarray}

へ代入すると、

\begin{eqnarray}
\displaystyle (u+v)^3+3p(u+v)+2q=0
\end{eqnarray}

です。左辺を整理すると、

\begin{eqnarray}
\displaystyle (u+v)^3+3p(u+v)+2q&=&u^3+3u^2 v+3u v^2+v^3+3p(u+v)+2q \\
\displaystyle &=&u^3+3uv(u+v)+v^3+3p(u+v)+2q \\
\displaystyle &=&u^3+v^3+2q+3(u+v)(uv+p)
\end{eqnarray}

となるため、

\begin{eqnarray}
\displaystyle u^3+v^3+2q+3(u+v)(uv+p)=0
\end{eqnarray}

となります。

この式をよく見ると、

\begin{eqnarray}
\displaystyle uv+p=0
\end{eqnarray}

となるように \(u, v\) を選べば、後半部分は丸ごと0になり、

\begin{eqnarray}
\displaystyle u^3+v^3+2q=0
\end{eqnarray}

だけが残ります。

したがって、

\begin{eqnarray}
\left\{
\begin{array}{l}
u^3 + v^3 + 2q = 0 \\
uv + p = 0
\end{array}
\right.
\end{eqnarray}

を満たす \(u, v\) を探せばよいことになります。

さらに下の式を3乗すると、

\begin{eqnarray}
\displaystyle u^3v^3=-p^3
\end{eqnarray}

です。

したがって、

\begin{eqnarray}
\left\{
\begin{array}{l}
u^3 + v^3 = -2q \\
u^3v^3 = -p^3
\end{array}
\right.
\end{eqnarray}

となります。

ここで \(u^3,v^3\) を2つの解にもつ2次方程式を考えると、解と係数の関係より、

\begin{eqnarray}
\displaystyle t^2+2qt-p^3=0
\end{eqnarray}

となります。

これを解の公式で解けば、

\begin{eqnarray}
\displaystyle t=-q\pm\sqrt{q^2+p^3}
\end{eqnarray}

です。

したがって、

\begin{eqnarray}
\displaystyle u^3&=&-q+\sqrt{q^2+p^3} \\
\displaystyle v^3&=&-q-\sqrt{q^2+p^3}
\end{eqnarray}

とすることができます。

おろち
おろち

上では \(u,v\) の対称性より、2つ求まった \(t\) の値はどちらを\(u^3,v^3\)と決めても問題ありません。

上式より、\(u\) と \(v\) の値は以下の通りそれぞれ3つ求まります。

\begin{eqnarray}
u
=
\left\{
\begin{array}{l}
\sqrt[3]{-q+\sqrt{q^2+p^3}} \\
\omega \sqrt[3]{-q+\sqrt{q^2+p^3}} \\
\omega^2 \sqrt[3]{-q+\sqrt{q^2+p^3}}
\end{array}
\right.
\end{eqnarray}

\begin{eqnarray}
v
=
\left\{
\begin{array}{l}
\sqrt[3]{-q-\sqrt{q^2+p^3}} \\
\omega \sqrt[3]{-q-\sqrt{q^2+p^3}} \\
\omega^2 \sqrt[3]{-q-\sqrt{q^2+p^3}}
\end{array}
\right.
\end{eqnarray}

 ※ただし、\(\omega\) は1の3乗根の虚数解であり、\(\omega^3=1\) (ただし、\(\omega\neq1\))を満たします。

\(u,v\) はそれぞれ3つの値を持つため、単純に組み合わせると\[ 3\times3=9 \]

通りの組み合わせが考えられます。

しかし、これら9通りを自由に組み合わせてよいわけではありません。

カルダノの公式の導出では、途中で\[ uv=-p \]

という条件を課していたためです。

したがって、9通りの組み合わせの中から、\(uv=-p\) を満たす組み合わせを選ぶ必要があります。

この条件を満たす組み合わせは3通りあり、それぞれについて\[ y=u+v \]

とすることで、3つの \(y\) の値を求めることができます。

なぜ9通りのうち3通りだけが \(uv=-p\) を満たすのか、また \(\omega\) とは何なのかについては、第7章で詳しく解説します。

以下では、それぞれの3乗根について \(uv=-p\) を満たす組み合わせを選ぶものとします。

このとき、\(y\) の値は

\begin{eqnarray}
y
=
\left\{
\begin{array}{l}
\sqrt[3]{-q+\sqrt{q^2+p^3}}+\sqrt[3]{-q-\sqrt{q^2+p^3}} \\
\omega \sqrt[3]{-q+\sqrt{q^2+p^3}}+\omega^2 \sqrt[3]{-q-\sqrt{q^2+p^3}} \\
\omega^2 \sqrt[3]{-q+\sqrt{q^2+p^3}}+\omega \sqrt[3]{-q-\sqrt{q^2+p^3}}
\end{array}
\right.
\end{eqnarray}

となるため、\(x\) の値は

\begin{eqnarray}
\color{red}{x
=
\left\{
\begin{array}{l}
\displaystyle -\frac{b}{3a}+\sqrt[3]{-q+\sqrt{q^2+p^3}}+\sqrt[3]{-q-\sqrt{q^2+p^3}} \\
\displaystyle -\frac{b}{3a}+\omega \sqrt[3]{-q+\sqrt{q^2+p^3}}+\omega^2 \sqrt[3]{-q-\sqrt{q^2+p^3}} \\
\displaystyle -\frac{b}{3a}+\omega^2 \sqrt[3]{-q+\sqrt{q^2+p^3}}+\omega \sqrt[3]{-q-\sqrt{q^2+p^3}}
\end{array}
\right.}
\end{eqnarray}

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

この式の \(p, q\) を \(a, b, c, d\) で表したものが、3次方程式の解の公式(カルダノの公式)となります。


4. なぜ \(x=y-\frac{b}{3a}\) と変換するの?

カルダノの公式の導出では、

\begin{eqnarray}
\displaystyle x=y-\frac{b}{3a}
\end{eqnarray}

という変数変換を行いました。

初めて見ると、

「どうしてこんな変換を思いつくの?」

と思うかもしれません。

実は、最初から

\begin{eqnarray}
\displaystyle -\frac{b}{3a}
\end{eqnarray}

を思いついているわけではありません。

まず、より一般的に

\begin{eqnarray}
\displaystyle x=y+A
\end{eqnarray}

とおいてみます。

これを

\begin{eqnarray}
\displaystyle x^3+\frac{b}{a}x^2+\frac{c}{a}x+\frac{d}{a}=0
\end{eqnarray}

へ代入すると、

\begin{eqnarray}
\displaystyle (y+A)^3+\frac{b}{a}(y+A)^2+\frac{c}{a}(y+A)+\frac{d}{a}=0
\end{eqnarray}

です。

展開して \(y\) について整理すると、

\begin{eqnarray}
\displaystyle y^3+\biggl(3A+\frac{b}{a} \biggr)y^2+\biggl(3A^2+\frac{2b}{a}A+\frac{c}{a} \biggr)y+A^3+\frac{b}{a}A^2+\frac{c}{a}A+\frac{d}{a}=0
\end{eqnarray}

となります。

ここで注目したいのが、\(y^2\) の係数

\begin{eqnarray}
\displaystyle 3A+\frac{b}{a}
\end{eqnarray}

です。

これを0にしたければ、

\begin{eqnarray}
\displaystyle 3A+\frac{b}{a}=0
\end{eqnarray}

とすればよいので、

\begin{eqnarray}
\displaystyle A=-\frac{b}{3a}
\end{eqnarray}

となります。

つまり、

\begin{eqnarray}
\displaystyle x=y-\frac{b}{3a}
\end{eqnarray}

という変換は突然思いついたものではなく、

「3次方程式の2次の項を消したい」

という目的から逆算して得られたものなのです。


5. なぜ \(y=u+v\) と置くの?

2次の項を消去したことで、

\begin{eqnarray}
\displaystyle y^3+3py+2q=0
\end{eqnarray}

という形になりました。

しかし、このままではまだ \(y\) を簡単に求めることはできません。

そこで注目するのが、和の3乗

\begin{eqnarray}
\displaystyle (u+v)^3
\end{eqnarray}

です。

展開すると、

\begin{eqnarray}
\displaystyle (u+v)^3=u^3+v^3+3uv(u+v)
\end{eqnarray}

となります。

ここで、

\begin{eqnarray}
\displaystyle y=u+v
\end{eqnarray}

とおけば、

\begin{eqnarray}
\displaystyle y^3=u^3+v^3+\color{blue}{3uvy}
\end{eqnarray}

と書けます。

この式を、元の式

\begin{eqnarray}
\displaystyle y^3+\color{green}{3py}+2q=0
\end{eqnarray}

と比べてみると、

\begin{eqnarray}
\displaystyle \color{blue}{3uvy}
\end{eqnarray}

と

\begin{eqnarray}
\displaystyle \color{green}{3py}
\end{eqnarray}

が非常によく似た形になっています。

そこで、

\begin{eqnarray}
\displaystyle uv=-p
\end{eqnarray}

となるように \(u, v\) を選べば、

\begin{eqnarray}
\displaystyle 3uvy=-3py
\end{eqnarray}

となり、\(y\) を含む項を打ち消すことができます。

つまり、

\begin{eqnarray}
\displaystyle y=u+v
\end{eqnarray}

という置き換えは適当に思いついたものではなく、和の3乗の展開公式を利用して、\(3py\) の項を消すためのアイデアなのです。


6. なぜ2つの条件を課していいの?

第3章では、\[ y=u+v \]

とおくことで、\[ u^3+v^3+2q+3(u+v)(uv+p)=0 \]

という式を得ました。

そして、この式を簡単にするために、\[ \begin{cases} u^3+v^3+2q=0\\ uv+p=0 \end{cases} \]

という2つの条件を考えました。

ここで、

「この2つの条件を満たせば元の式が成立するのはわかるけど、元の式を成立させる方法はほかにもあるんじゃないの?」

と疑問に思う方もいるかもしれません。

実は、その疑問はその通りです。

■この2つの条件は「必要条件」ではない

まず、\[ \begin{cases} u^3+v^3+2q=0\\ uv+p=0 \end{cases} \]

を満たせば、\[ u^3+v^3+2q=0 \]

となるだけでなく、\[ 3(u+v)(uv+p)=0 \]

にもなるため、\[ u^3+v^3+2q+3(u+v)(uv+p)=0 \]

は確実に成立します。

そのため、この2つの条件は元の式を成立させるための十分条件になっています。

しかし逆に、\[ u^3+v^3+2q+3(u+v)(uv+p)=0 \]

が成立したからといって、必ず\[ u^3+v^3+2q=0 \]

かつ\[ uv+p=0 \]

になるとは限りません。

たとえば、\[ u^3+v^3+2q \]

と\[ 3(u+v)(uv+p) \]

がどちらも0ではなくても、互いに打ち消し合えば元の式は成立します。

つまり、この2条件は元の式が成立するための必要条件ではありません。

したがって、

元の式と2つの条件は「必要十分条件」の関係ではない

ということになります。

■必要十分条件でなくても問題ないの?

すると、今度は次の疑問が出てきます。

「必要条件ではないのなら、この2条件だけを考えてしまって本当にいいの?」

ここが重要なポイントです。

今回の目的は、元の式を満たす \(u,v\) の組み合わせをすべて求めることではありません。

そもそも \(u,v\) は、\[ y=u+v \]

と表すために、こちらで新しく導入した補助的な変数です。

私たちが本当に求めたいのは \(u,v\) そのものではなく、\[ y^3+3py+2q=0 \]

を満たす \(y\) の値です。

そのため、\(u,v\) の候補をある条件によって絞ったとしても、そこから元の3次方程式の解をすべて得ることができれば問題ありません。

今回、\[ \begin{cases} u^3+v^3+2q=0\\ uv+p=0 \end{cases} \]

という条件を課すと、\[ u^3+v^3=-2q \]\[ u^3v^3=-p^3 \]

となります。

すると、\(u^3,v^3\) を2つの解とする2次方程式\[ t^2+2qt-p^3=0 \]

を作ることができ、\(u,v\) を具体的に求められるようになります。

つまり、この2条件を課す大きな理由は、

3次方程式の問題を、解き方を知っている2次方程式の問題へと変換できるから

なのです。

■ただし「十分条件なら何でもよい」わけではない

ここでもう1つ注意しておきましょう。

「必要条件でなくてもよい」ということは、好きな十分条件を勝手に追加してよいという意味ではありません。

条件を厳しくしすぎると、元の3次方程式が持っている解の一部を取りこぼしてしまう可能性があるからです。

そのため、

  1. 元の式が確実に成立する条件を設定する
  2. その条件から \(u,v\) を求める
  3. \(y=u+v\) によって \(y\) を求める
  4. 元の3次方程式の解をすべて得られていることを確認する

というところまで確認する必要があります。

カルダノの方法では、この2条件から最終的に\[ y_1,\quad y_2,\quad y_3 \]

という3つの解を得ることができます。

3次方程式は、複素数の範囲では重複度を含めて3つの解を持つため、この方法によって元の3次方程式の解をすべて得ることができます。

したがって、この2条件を満たさない \(u,v\) の組み合わせまで、さらに探し続ける必要はないのです。


7. \(\omega\) とは?なぜ3つの解が出てくるの?

第3章では、

\begin{eqnarray}
\displaystyle u^3 = -q + \sqrt{q^2+p^3}
\end{eqnarray}

という式を得ました。

しかし、ここで注意があります。

複素数の範囲では、3乗して同じ値になる数は3つ存在します。

そこで、まず

\begin{eqnarray}
\displaystyle z^3 = 1
\end{eqnarray}

を考えてみましょう。

左辺にまとめると、\[ z^3-1=0 \]

なので、\[ (z-1)(z^2+z+1)=0 \]

です。

したがって、\[ z=1,\qquad z=\frac{-1+\sqrt3i}{2},\qquad z=\frac{-1-\sqrt3i}{2} \]

となります。

ここで、\[ \omega=\frac{-1+\sqrt3i}{2} \]

と定義すると、\[ \omega^2=\frac{-1-\sqrt3i}{2} \]

となり、\[ 1,\omega,\omega^2 \]

が1の3乗根になります。

また、\(\omega\) は\[ \omega^3=1 \]\[ 1+\omega+\omega^2=0 \]

という重要な性質を持っています。

そこで、\[ u^3=-q+\sqrt{q^2+p^3} \]

を満たす1つの \(u\) を選べば、\[ u,\quad \omega u,\quad \omega^2u \]

はいずれも同じ値を3乗根として持ちます。

\(v\) についても同様です。

ただし、\(u\) と \(v\) は好き勝手に組み合わせてよいわけではありません。

カルダノの導出では、\[ uv=-p \]

という条件を課していたからです。

したがって、この条件を満たすように対応させると、\[ (u,v) \]\[ (\omega u,\omega^2v) \]\[ (\omega^2u,\omega v) \]

の3組が得られます。

したがって、\[ y_1=u+v \]\[ y_2=\omega u+\omega^2v \]\[ y_3=\omega^2u+\omega v \]

となります。

最後に\[ x=y-\frac{b}{3a} \]

へ戻せば、\[ x_1=u+v-\frac{b}{3a} \]\[ x_2=\omega u+\omega^2v-\frac{b}{3a} \]\[ x_3=\omega^2u+\omega v-\frac{b}{3a} \]

となり、3次方程式の3つの解が得られます。
 ※重解がある場合には、これらの値の一部が一致することがあります。


8. カルダノの公式の導出手順まとめ

ここまでの流れを整理すると、カルダノの公式によって3次方程式を解く手順は次のようになります。

STEP1:2次の項を消す

\[ x=y-\frac{b}{3a} \]

とおき、\[ y^3+3py+2q=0 \]

の形へ変形します。

STEP2:\(y=u+v\) とおき、代入する

和の3乗の展開公式を利用するため、\[ y=u+v \]

として代入すると、

\begin{eqnarray}
\displaystyle u^3+v^3+2q+3(u+v)(uv+p)=0
\end{eqnarray}

となります。

STEP3:\(uv=-p\) となるように選ぶ

これによって \(y\) を含む項を消し、\[ u^3+v^3=-2q \]

を得ます。

STEP4:\(u^3,v^3\) を求める

\[ u^3v^3=-p^3 \]

であるため、解と係数の関係から2次方程式\[ t^2+2qt-p^3=0 \]

を作り、\[ u^3=-q+\sqrt{q^2+p^3} \]\[ v^3=-q-\sqrt{q^2+p^3} \]

を得ます。

STEP5:3つの解を作る

1の3乗根 \(1,\omega,\omega^2\) を使い、\(uv=-p\) を満たす (\(u, v\)) の組を3つ求めます。

その3つの組から、\(y\) の値を求めます。

STEP6:最後に \(x\) へ戻す

\[ x=y-\frac{b}{3a} \]

によって、元の3次方程式の解を得ます。


まとめ

本記事では、3次方程式の解を求めるカルダノの公式について、公式の形だけでなく「なぜその変形をするのか」まで含めて導出しました。

カルダノの公式では、まず\[ x=y-\frac{b}{3a} \]

と変数変換して2次の項を消し、\[ y^3+3py+2q=0 \]

の形にします。

さらに、\[ y=u+v \]

とおくことで和の3乗の展開公式を利用し、\[ uv=-p \]

という条件を課すことで問題を \(u^3,v^3\) を求める2次方程式へと帰着させることができます。

一見すると不思議な置き換えが次々に登場するカルダノの公式ですが、それぞれの変形には「方程式を少しずつ解きやすい形へ変える」という目的があります。

公式をそのまま覚えるのではなく、「なぜこの変形をするのか?」まで理解しておくと、カルダノの公式の導出もかなり見通しやすくなると思います。

本記事が、3次方程式やカルダノの公式を理解する助けになれば幸いです。

-数と式・方程式