2017年11月03日(金)

■絶対値の定義

数学で「\(-3\)の絶対値は?」と訊かれたら「\(3\)」と答えます。 \[ |-3| = 3 \] また「\(3\)の絶対値は?」と訊かれたら「\(3\)」と答えます。 \[ |3| = 3 \] \(-3\)の絶対値も、\(3\)の絶対値も、どちらも\(3\)です。

そうすると、絶対値というのは「符号を取った数」と定義したくなります。\(-3\)のマイナスを取れば\(3\)になるからというのです。

でも「絶対値は符号を取った数」という考え方は筋が悪いと思います。筋が悪いというのは「あてはまる場合もあるけれど、あてはまらない場合もあるから、絶対値の正しい理解に至るのが難しくなる」という意味です。

確かに\(-3\)の符号を取ったら\(3\)になりますが、\(+3\)の符号を取っても\(3\)ですね。では、\(+3\)の絶対値は\(3\)でしょうか。\(+3\)の絶対値を\(+3\)と答えたらまちがいでしょうか。等式\(|+3| = 3\)は正しくて\(|+3| = +3\)はまちがいでしょうか。そんなことはありません。\(|+3| = 3\)でも\(|+3| = +3\)でも正しい等式です。 \[ |+3| = 3,\, |+3| = +3 \]

それなら「絶対値はマイナスの符号を取った数」とすればいいでしょうか。いいえ、そういう考え方も筋が悪いです。

もしも「絶対値は符号を取った数」や「絶対値はマイナスの符号を取った数」だとするならば、文字が出てくると話はたいへんややこしくなります。 \(-a\)の絶対値はどうなりますか。\(|-a| = a\)といいたくなりますよね。でもこれはいつも正しいとは限りません。\(|-a| = a\)が成り立つのは\(a\)\(0\)以上のときだけです。\(a\)\(0\)以下のときには、\(|-a| = -a\)が正しくなります。\(a\)\(0\)に等しいときには\(|-a| = a\)\(|-a| = -a\)の両方が成り立ちます。

\(a > 0\)のとき、\(|-a| = a\)は正しい。 \(a = 0\)のとき、\(|-a| = a\)\(|-a| = -a\)も正しい。 \(a < 0\)のとき、\(|-a| = a\)はまちがい(!)。 \(a < 0\)のとき、\(|-a| = -a\)が正しい。

ですから、実数\(x\)の絶対値\(|x|\)は、符号を取るという表現は使わずに、こう定義するのがいいのです。 \[ |x| = \begin{cases} x && \text{if $x > 0$} \\ 0 && \text{if $x = 0$} \\ -x && \text{if $x < 0$} \\ \end{cases} \] もちろん、これでもかまいません。 \[ |x| = \begin{cases} x && \text{if $x \geqq 0$} \\ -x && \text{if $x < 0$} \\ \end{cases} \] これでもいいです。 \[ |x| = \begin{cases} x && \text{if $x > 0$} \\ -x && \text{if $x \leqq 0$} \\ \end{cases} \] なんだったら、これでもいいです。 \[ |x| = \begin{cases} x && \text{if $x \geqq 0$} \\ -x && \text{if $x \leqq 0$} \\ \end{cases} \]

■値と表記

どうして「絶対値は符号を取った数」という考え方が筋が悪いかというと、「絶対値」というのは数の《値》についての概念なのに対して、「符号を取る」というのは数の《表記》についての概念だからです。

数学のイコール(\(=\))は両辺の数の《値》が等しいことを表しています。ですから数の《表記》が異なっていても等式が成り立つということを私たちはよく知っています。

普通の式の計算からしてそうですよね。 \[ 1+2 = 3 \] というとき、両辺の値は等しいですが、左辺の\(1+2\)という表記と、右辺の\(3\)という表記は違います。値と表記を分けて考えていますね。

分数の約分を思い出すと、数の《値》は等しいままに数の《表記》を変化させていることがよくわかります。たとえば、次の式を見て下さい。 \[ \frac{12}{24} = \frac{6}{12} = \frac{3}{6} = \frac{1}{2} \] この式は数の《値》は変えずに数の《表記》を次々に変えています。数の《値》は変化していませんよという主張のために等号(\(=\))が使われています。

分数の通分でも数の《値》と《表記》の関係をうまく使いましたね。たとえば、次の計算を見て下さい。 \[ \frac{1}{2} + \frac{1}{3} = \frac{3}{6} + \frac{2}{6} = \frac{3+2}{6} = \frac{5}{6} \] ここでは、足し算するのに便利な表記として分母が等しい分数に変化させています。それが通分です。数の《値》を変えずに、計算に都合がいい数の《表記》に変える操作をしていたわけですね。

数の《値》と《表記》を混同するのは、\(0.999\cdots\)\(1\)が等しいことが納得できない要因にもなります。この二つは《表記》は異なるけれど《値》は等しい実数を表しています。

プログラミング言語を学ぶと、値と表記の関係を頻繁に意識することになります。表記から値を得ることは、しばしば「評価する(evaluate)」と言いますね。REPL(read-eval-print loop)のEです。表記→値です。

REPLのPはその逆で、内部的に保持されている値を、標準的な表記に変換していることになります。値→表記です。

はじめの話に戻りましょう。「絶対値は符号を取った数」という考え方がどうして筋が悪いかもわかるでしょう。絶対値はどんな《値》なのかを説明するときに符号を取るという《表記》のことを言っているからです。

絶対値の定義の話題は『数学ガール』でテトラちゃんと「僕」とのやりとりにも出てきました。階段教室のなつかしい思い出です。

https://www.amazon.co.jp/exec/obidos/ASIN/4797341378/hyuki-22/

■数直線と絶対値

数直線を思い浮かべることができるなら、実数\(x\)の位置と\(0\)の位置との距離が絶対値になります。もちろんそれも正しいです(「距離」という言葉が何を意味しているのかわかっているならば)。


 このお話をTwitterでシェアする  このお話についてnoteで書く

結城浩(ゆうき・ひろし) @hyuki

『数学ガール』作者。 結城メルマガWeb連載を毎週書いてます。 文章書きとプログラミングが好きなクリスチャン。2014年日本数学会出版賞受賞。

Home Twitter 結城メルマガ note