個人的には、シンボリック計算といえば二重根号が重要だと思っている。\(\sqrt{8+2\sqrt{15}}=\sqrt{3}+\sqrt{5}\)とかというやつだ。二重根号外しを二重にやらなければいけないケースにどのくらい対応できているか試してみた。
今回のコードはすべてここにおいてある。
まず、
\[
\sqrt{2}+\sqrt{3}=\sqrt{\left(\sqrt{2}+\sqrt{3}\right)^2}=\sqrt{2\sqrt{6}+5}
=\sqrt{\sqrt{\left(2\sqrt{6}+5\right)^2}} = \sqrt{\sqrt{20\sqrt{6}+49}}
\]
を正しく計算できるか試してみる。
\(\sqrt{\sqrt{}}\)が勝手に\(\sqrt[4]{}\)にまとめられてて、ここがネックになってここから動かないようだ。
次に
$$
\sqrt{2}+\sqrt{3}=\sqrt{2\sqrt{6}+5}=\sqrt{1+(2\sqrt{6}+4)}
=\sqrt{1+\sqrt{\left(2\sqrt{6}+4\right)^2}} = \sqrt{1+\sqrt{16\sqrt{6}+40}}
$$
を計算できるか試してみる。
今度はうまくいった。
つまり2つのルートが勝手に結合されてしまうケースではうまくいかないが、そうでない場合はうまくいくようだ。勝手に結合されるケースでももしかしたらヒントかなにかを与えたらうまくいくのかもしれないが、よくわからない。
最後に高校数学の公式の復習。
定理:
$$\sqrt{(a+b)+2\sqrt{ab}}=\sqrt{a}+\sqrt{b}$$
$$\sqrt{(a+b)-2\sqrt{ab}}=\sqrt{a}-\sqrt{b}$$
(ただし\(a>b\)とする)
証明:(上の式だけ)
$$\sqrt{(a+b)+2\sqrt{ab}}=\sqrt{(\sqrt{a})^2+2\sqrt{a}\sqrt{b}+(\sqrt{b})^2}
=\sqrt{ \left(\sqrt{a}+\sqrt{b}\right)^2}=\sqrt{a}+\sqrt{b}
$$