通常の数の体系では、0で割ることが禁止されています。

しかし、実は0で割ることを考えた数の体系があります。

その最先端が輪(Wheel)です。

輪の定義は、Wikipediaに載っています。

Wikipediaの輪のページは、理解が深まるとよくまとめられた記事になっているのですが、初心者にとっては抽象的でわかりにくいです。そこで、その手助けとなるよう、輪についてかみ砕いで説明します。

輪(wheel)の定義(りん(ホイール))

以下はWikipediaに掲載されている輪(wheel)の定義です。

輪 W とは二つの可換かつ結合的な二項演算(加法 “+” と乗法 “⋅”)とそれぞれの単位元となる定数 0, 1 および単項演算 “/” の組 (W, +, 0, ⋅, 1, /) であって以下の法則を満足するものを言う。

x, y, z は W の任意の元として

  • /(xy) = /x ⋅ /y かつ //x = x
  • xz + yz = (x + y)z + 0z
  • (x + yz)/y = x/y + z + 0y
  • 0 ⋅ 0 = 0
  • (x + 0y)z = xz + 0y
  • /(x + 0y) = /x + 0y
  • 0/0 + x = 0/0

さらに 1 + a = 0 を満たす元 a が存在する場合には、この a を用いて

符号反転 −• := a ⋅ •

減算 x − y := x + (−y)

を定義する。

定義の補足説明

この定義をもうすこしかみ砕いてみます。

まず、輪には加法乗法が定義されており、それらは結合的可換であることが条件になっています。

加法は、「+」記号を使って2項演算として表します。

乗法は、「・」を使った2項演算です。

減算、除算の定義はありません。

輪では、0で割ることが可能と言っておきながら、割り算は定義されておらず、代わりに「/」という単項演算子が定義されています。

この「/」とう記号は、輪では符号(単項演算子)として使われるのですが、通常の割り算(分数)を表すときに使う「/」の記号と同じように扱えます。

ちょうど、負の数をマイナス記号を使って表すのに似ています。マイナス記号は、負の数を表す符号としても使われますが、減算の記号としても使われます。マイナス記号は、符号の意味と、引き算の記号の意味をもちますが、混乱することがないのと同じように、スラッシュ記号「/」を符号のように使うことができるのです。これが輪の特徴です。

また、加法と乗法の単位元0と1は輪に含まれるものとします。

しつこくいいますが、輪には減算の定義は必須ではありません。ただし、輪に\(-1\)に相当する元が存在する場合、すなわち\(1+a=0\)を満たす元\(a\)が輪に存在する場合には、減算を次のように定義します。

\(x-y:=x+(-1)y\)

輪の割り算については、単項演算子\(/\)をつかって、

\(x÷y:=x・(/y)\)で割り算は定義されます。

通例にしたがって、乗算の記号「・」は省略して書いても特に混乱はなく、\(x・(/y))\)も\(x/y\)と書かれます。したがって割り算の記号\(÷\)は使いません。

輪での割り算は、逆数を掛けるという意味ではなく、\(/\)の単項演算を施して掛けるという意味です。

「\(/\)」単項演算子は、逆数をとるという演算子ではないというところがミソです。

引き算が符号を変える単項演算子「\(-\)」を施して(作用させて)足す演算であるように、割り算を単項演算子「\(/\)」を施して掛けるという演算とみなすのです。

この単項演算子「\(/\)」が輪の特徴になります。

輪の具体例

輪の定義から、具体的に輪の構造を持った数(集合)が存在するのかすぐにはわかりません。

ですので、ここでは輪の具体例(の概略)を示します。具体例のほうが、よくわかります。

もっともわかりやすい輪の例は、有理数の集合\(\mathcal{Q}\)に、\(∞と⊥\)の二つの元を追加した集合から構成できます。

もっともシンプルな輪の例は、\(0\)だけからなる自明な体そのものです。\(/0=0\)とすることで、\(\{0\}\)は輪になります。この場合、\(0=1\)です。この輪は、自明な輪と呼ばれています。

演算の定義

\(∞と⊥\) を除く元に対しての加法と乗法は通常の有理数の加法、乗法を使います。

一般的には下記の表で加法と乗法を定義します。

ここで、\(a,b\)を有理数の任意の元とします。

加法

\(+\)加法演算\(+b\)\(+∞\)\(+⊥\)
\(a\)\(a+b\)\(∞\)\(⊥\)
\(∞\)\(∞\) \(⊥\) \(⊥\)
\(⊥\)\(⊥\) \(⊥\) \(⊥\)

乗法

\(・\)乗法 演算 \(・b\)
\(b≠0\)
\(・0\) \(・∞\) \(・⊥\)
\(a≠0\)\(ab\)\(0\)\(∞\)\(⊥\)
\(0\)\(0\) \(0\) \(⊥\) \(⊥\)
\(∞\)\(∞\) \(⊥\) \(∞\) \(⊥\)
\(⊥\)\(⊥\) \(⊥\) \(⊥\) \(⊥\)

単項演算子

「\(-\)」演算「\(/\)」演算
\(a≠0\)\(-a\)\(\displaystyle \frac{1}{a}\)
\(0\)\(0\)\(∞\)
\(∞\)\(∞\)\(0\)
\(⊥\)\(⊥\)\(⊥\)

確認

この例が輪になっているのか、定義の式を検証してみると、輪のイメージが固まってくると思います。

輪の最初の練習問題として最適です。

結合法則、可換法則をまず検証する必要もありますから、

任意の輪の元\(x,y,z\)に対して、

\(x+y=y+x\)

\(x・y=y・z\)

\((x+y)+z=x+(y+z)\)

\((x ・ y) ・ z=x ・ (y ・ z)\)

\(x+0=x\)

\(x・1=x\)

の検証も必要です。

演算の検証するだけでも、結構面倒ですね。

0÷0や∞÷∞について

さて、この輪(wheel)で0÷0がどのようになるか計算してみましょう。

輪での\(÷0\)は、\(/0\)を掛けることでした。

したがって、表から\(/0\)は\(∞\)ですから、

\(0÷0=0・∞=⊥\)となります。

この例では、\(0÷0\)の答えは、\(⊥\)ということです。

\(0/0=⊥\)となりますから、\(⊥\)の事を\(0/0\)と書く場合もよく見受けられます。

同様に、\(∞÷∞\)も\(⊥\)、すなわち\(0/0\)になります。

\(/0=∞\)ですから、\(∞\)の代わりに、\(/0\)を使う場合もあります。

\(/0,0/0\)を導入することで、\(∞,⊥\)の記号を使わないようにすることができます。

\(x=0,x=∞\)は、\(x/x=1\)でない例になっています。

  • \(0/0=⊥\)
  • \(∞/∞=⊥\)
  • \(⊥/⊥=⊥\)
  • \(0・∞=⊥\)
  • \(0・⊥=⊥\)
  • \(1+⊥=⊥\)
  • \(1+00/0=⊥\)
  • \(1+0∞/∞=⊥\)
  • \(1+0⊥/⊥=⊥\)

となることもすぐに確認できます。

\(x=0,1,∞,⊥\)の場合に、\(x^2、0x^2\)を計算してみます。

  • \(0^2=0\)
  • \(1^2=1\)
  • \(∞^2=∞\)
  • \(⊥-2=⊥\)
  • \(00^2=0\)
  • \(01^2=0\)
  • \(0∞^2=⊥\)
  • \(0⊥^2=⊥\)

です。

所感

輪(wheel)は、0で割ることを許しますが、その代償がかなり大きいです。

\(/0\)を導入することで、より数の構造が複雑になってしまいます。

乗法が崩れるだけでなく、加法においても、\(∞+∞=∞\)のような通常あり得ない等式がでてくるなど、その崩れ具合は尋常ではありません。

\(/0\)を許し分配法則を一般化(くずした)ところで、数の構造がより見通しくなったとはいえません。

このことから、÷0を禁止するということは、演算のエッセンス(原理原則)であるということが、改めて深く認識されたということになります。

なお、ここでは有理数をベースに考えましたが、有理数である性質は四則演算ができる点を除いて使っていません。つまり、四則演算ができる体であれば、ここで拡張した方法で輪(wheel)が構築できるわけです。

参考資料

この記事は、この資料を基に作成しました。

http://www.cs.swan.ac.uk/~csetzer/articles/wheel.pdf