はじめに
みなさんこんにちは。
VIPPOOL でエンジニアをやっています、星月です。
今回は、暗号通貨で電子署名に使われている、楕円曲線暗号について語ろう...
と思ったのですが、楕円曲線暗号の実装方法や簡単な説明は、イマドキありふれているので、
ここはもう少し踏み込んで、楕円曲線論について語ろうと思います。
このあたりの話になってくると、難しい言葉や難しそうな数式がたくさん出てくる説明なら
Wikipedia や Google で探せば見当たりますが、数学に造詣がないと読み解くのは困難だと思います。
なので、証明や厳密な定義などはそちらにおまかせする方向で、
概念の生まれた背景や考え方のような、ストーリー性に重点を置いて語っていければと思います。
すべてのはじまり、1+1 は?
初っ端から「バカにしてるのか?」と思われそうなタイトルですが、
いたって大真面目です。もちろん、小学一年生でもわかるような 2 という話でも
ないですし、「田んぼの田」みたいななぞなぞでもありません。
注目したいのは以下の点です。
- そもそも 1 ってなに?
- + ってどういう意味?
どうでしょう?小学校で天下り式に教わった数式ですが、
実はちゃんと説明できる人は多くないのではないでしょうか?
小学校ではどう教わった?
イマドキの学習指導要領でどうなってるかは知りませんが、
私のころは、りんごやおはじきで習いました。
りんご1個とりんご1個、あわせるとりんごが2個。
ここで重要な事実が1つ、みんな当たり前に受け入れてきたことですが、
「実はりんごじゃなくてバナナでも同様なことが言える」のです。
つまり、りんごにこだわる必要は特になくて、
りんごとかバナナとか、梨とかみかんが、1個あることを
数式の中では「1」と表記しているのです。
言い方を変えれば、「1」というのは「何か」を示す「ただの記号」でしかなくて、
実は「#」とか好きな文字であっても良かったんです。
ここが混乱の元となるのですが、本文中で「1個」というときの1と、
数式の中で出てくる「1」は意味が違うのです。
本文中で「りんごが1個」と言っているの「1」は「具体例の世界」の話、
「1+1」と数式で書いているときの「1」は「記号の世界」の話。
こんな風に、具体例から一旦記号に置き換えて、「計算」と呼ばれる作業をしてから
元の具体例の世界に戻ってくる。
...ということをやっていたのが、小学一年生で習った算数なのです。
どうでしょう?実は意外に複雑なことをやっていましたね?
どうしてそんな面倒な手順を踏むのか?
「記号の世界」つまり「数式の世界」であれば、これまで発明された
いろいろな公式がそのまま使えて便利だから、に他なりません。
言い方を変えれば、記号の世界で考案された公式の方が、より「汎用的」であるわけです。
また、記号の世界には具体的な概念がほとんど登場しなくなります。
これは具体例の要素を可能な限りそぎ落として、本質だけを捉えて扱うということです。
このように、記号の世界に一旦変換して物事を考えることを「抽象化」と呼び、
抽象化して「本質について」だけを考えることこそ、
「数学」という学問の真髄とも言えると思います。
まとめ
今回は 1+1 の数式から始まり、1 とは何か?抽象化とか何か?
というあたりについて語りました。
今回はここまで。
ご質問、ご意見等ありましたらお気軽にリプライください。