9÷0=0という俺ルールは正しい

なんか9/0=0が話題になっている。多くの人の反応が「こんなの絶対おかしいよ」だった。
割り算1/aはかけ算に関する逆元を求める演算として定義されている。ここで実数aのかけ算に関する逆元とは何かというと
b×a=1
となるbのことである。

0には
b×0=1
となるbが存在しない。したがって、1/0を求めることができない。つまり0のかけ算に関する逆元は存在しない。

1/0は何かと言われたら、そんなものはないと答えれば良いのである。

算数を加減乗除を行って
x=なんちゃら
の形に”一意に”もっていく一連の演算と定義するのであれば、算数においては、1/0という計算は実行不可能であり、算数の演算の中に含まれないことになる。
つまり、算数では1/0はない。

まあ、しかしである。算数に1/0がないなら、勝手に作っても良いではないか。

そこで、疑似逆元(pseudoinverse)を以下のように定義する。(日本語訳がない。)
実数aのかけ算に関する疑似逆元は
a×b×a=a ☆
となるbのことである。

ゼロでないaに対して、
b=1/a
は☆を満たす。つまり、疑似逆元は逆元を含む。

さて、0のかけ算に関する疑似逆元bはなんであろう?

0×b×0=0 ★
を満たすbは任意の実数である。

したがって、0の疑似逆元は任意の実数になる。

さらにaの疑似逆元bの疑似逆元は元の数aになることを要請しよう。
b×a×b=b ☆☆

0の疑似逆元bは、
b×0×b=b
を満たす。

これによりb=0であることが分かる。

疑似逆元を1/0と書くのは何となく気が引けるので、
1※0=0
とでも書こう。いや、やっぱり、
1/0=0
と書いてしまえ。/の記号はかけ算の逆元を意味するのではなく、疑似逆元を意味するとすれば良い。
これは0以外の疑似逆元は、通常の意味での逆元になり、すなわち割り算になり、これは割り算の一般化と見なすことができる。

または、注意書きで、1/0の時は0を意味するとしても良い。

さて、この疑似逆元を導入して矛盾を起こしたりしないだろうか?

0×1=0×2=0

この両辺に1/0をかければ
1=2=1
となり、矛盾…

ではなく、1/0は★と☆を満たす実数であり、ここでは0である。
従って、0×1=0×2=0の両辺に1/0をかけても
0=0=0
が出てくるだけである。

算数のルールに1/0=0という俺流ルールをつけても、今まで算数が対象にしていた式には影響がない。
問題は、今で算数の対象でなかった9/0といった式に対して矛盾を生じないかである。

ここで定めた疑似逆元は、結局、
(a,0)→0
の二項演算を定めたに他ならず、これはa×0と同じものである。したがって、算数が無矛盾であるならば、疑似逆元1/0=0を定めたことにより矛盾を生じることはない。

なんで、この話に食いついてしまったかというと、物理でやる繰り込みって、体である実数の計算に俺流ルールをつけた話と違うんかと思っちゃったんですよ。

物理で使う計算に実数をつかわなければいけないって法則があるわけでもないしね。

それと、疑似逆元の話の元ネタは疑似逆行列の話です。逆行列がランク落ちしてでないときにエイヤーで計算するのが疑似逆行列。もちろん、一意には決まらないけど、いろいろルールをつけると一意にきまる。

この話はsatoさんとsakaiさんにインスパイアされました。

The Rational Numbers as an Abstract Data Type