LoginSignup
0
0

More than 3 years have passed since last update.

【数理考古学】三次方程式(cubic equation)から虚数(Imaginary Number)へ。

Last updated at Posted at 2021-01-01

コンピューターは「高校生にとっての難問それどころか無理)」となる三次式方程式(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)による円周率πの近似
とりあえず、以下続報…

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0