コンピューターは「高校生にとっての難問(それどころか無理)」となる三次式方程式(Cubic Equation)の因数分解だってえげつないほどあっという間に解いてしまいます。
三次方程式の解き方と例題3問 | 高校数学の美しい物語
統計言語R(with YACAS)による実行例
library(Ryacas)
yacas("Solve(x^3-2*x^2-x+2==0,x)")
Yacas vector:
[1] x == 1 x == -1 x == 2
yacas("Solve(4*x^3-2*x^2-6*x+3==0,x)")
Yacas vector:
[1] x == 1/2 x == root(3/2, 2) x == -root(3/2, 2)
yacas("Solve(3*x^3+3*x^2+x+1==0,x)")
[1] x == -1 x == complex_cartesian(0, root(1/3, 2)) x == complex_cartesian(0, -root(1/3, 2))
pythonの場合
import sympy
sympy.var('x')
Sol1=sympy.solve (4*x**3-2*x**2-6*x+3, x)
sympy.init_printing()
if Sol1==[]:
print("Can't solve!!")
else:
for i in Sol1:
display(i)
print(sympy.latex(i))
\frac{1}{2}\\
- \frac{\sqrt{6}}{2}\\
\frac{\sqrt{6}}{2}
ある三次式の因数分解
根と解
根の公式とは
三次方程式を解く(その1)
三次方程式を解く(その2)
三次方程式の判別式
虚数の意義
カルダノの解法によるまとめ
統計言語R(with YACAS)による実行例
library(Ryacas)
yacas("Solve(x^3+6*x+4==0,x)")
Yacas vector:
[1] x == (root(12, 2) - 2)^(1/3) - (root(12, 2) + 2)^(1/3)
[2] x == complex_cartesian(-(((root(12, 2) - 2)^(1/3) - (root(12, 2) + 2)^(1/3))/2), root(3/4, 2) * ((root(12, 2) - 2)^(1/3) + (root(12, 2) + 2)^(1/3)))
[3] x == complex_cartesian(-(((root(12, 2) - 2)^(1/3) - (root(12, 2) + 2)^(1/3))/2), -(root(3/4, 2) * ((root(12, 2) - 2)^(1/3) + (root(12, 2) + 2)^(1/3))))
pythonの場合
import sympy
sympy.var('x')
Sol1=sympy.solve (x**3+6*x+4, x)
sympy.init_printing()
if Sol1==[]:
print("Can't solve!!")
else:
for i in Sol1:
display(i)
print(sympy.latex(i))
\frac{6}{\left(- \frac{1}{2} - \frac{\sqrt{3} i}{2}\right) \sqrt[3]{54 + 54 \sqrt{3}}} - \frac{\left(- \frac{1}{2} - \frac{\sqrt{3} i}{2}\right) \sqrt[3]{54 + 54 \sqrt{3}}}{3}\\
- \frac{\left(- \frac{1}{2} + \frac{\sqrt{3} i}{2}\right) \sqrt[3]{54 + 54 \sqrt{3}}}{3} + \frac{6}{\left(- \frac{1}{2} + \frac{\sqrt{3} i}{2}\right) \sqrt[3]{54 + 54 \sqrt{3}}}\\
- \frac{\sqrt[3]{54 + 54 \sqrt{3}}}{3} + \frac{6}{\sqrt[3]{54 + 54 \sqrt{3}}}
この様に三次方程式が解けるようになったのは16世紀イタリアのカルダノ(Girolamo Cardano 1501.9.24 - 1576.9.21)以降。その計算途中(最後までに消えてしまう)に数学史上初めて虚数(Imaginary Number)が現れます。i^2=-1と定めたのは後続のボンベリ(Rafael Bombelli、1526年~1572年)でした。
ジェロラモ・カルダーノ - Wikipedia
ラファエル・ボンベリ
竹内淳「高校数学でわかる複素関数」
虚数の発見(発明と呼ぶべきでしょうか)は三次方程式の解と関係があります。三次方程式を解く公式として「カルダーノの解法」と呼ばれるものがあります。カルダーノ(1501年~1576年, イタリア)の時代には幾つもの数学の学派があり、難易度の高い解法は門外不出でした。カルダーノの解法も秘密でした。この解法にカルダーノの名前がついているには、カルダーノがその解法を考えついたからではありません。実はその解法を編み出した数学者タルターリヤ(1500年~1557年)から強引に聞いて勝手に発表したからです。
ニコロ・フォンタナ・タルタリア - Wikipedia
S.G.ギンディキン著,三浦伸夫訳「ガウスが切り開いた道」書評
まさにカルダーノーノこそが個々の3次方程式の特別な解法を見い出す職人芸にとどまらず,方程式の根と係数の関係などをとらえる現代風の考え方をし始めた最初の人、すなわち代数学の最初の先達だったという訳です。
- まだ占星術(Astrology)と天文学(Astronomy)、数秘術(Numerology)と数理(Mathematical Things)の分化が十分でなかった時代の出来事。それが今日に伝わったのは(オスマン帝国からレパント商圏処理より締め出され、代替産業を探していた)ルネサンス末期ヴェネツィアにおける「文庫本全集出版事業(一冊一冊は携帯可能なサイズで安価。サイズを揃えたシリーズ化によって売り上げを確保)」振興の恩恵の一環。「おそらく既に地中海商人の間に私的に広まりながら研鑽が重ねられてきた内容が、こうした出版ブームを背景に刊行されて欧州にも広まった」複式簿記系(Double-entry Bookkeeping System)記法(Expression)の普及開始も同種の歴史的背景を有する。こちらはある意味群論概念(Group Theory Concept)の大源流となった。
【初心者向け】群論概念(Group Theory Concept)①基本定義
【初心者向け】添字化(Indexing)と単位化(Unitization)
そしてこうした計算の延長線上に1の冪根(Root of Unity)理論が打ち立てられ、ガウスがそれが全て複素平面上の単位円の弧上に現れる事を証明したのです。
【初心者向け】挟み撃ち定理(Squeeze Theorem)による円周率πの近似
とりあえず、以下続報…