2019-09-05

1+1が2にも3にも4にもなるってよく言うけど

1+1が2にも3にも4にもなるって脳筋陽キャがよく言うけど、

ここで謎の演算子「+」を持つモノイドを考えてみたい。

まず、前提として、1,2,3,...はモノイドの元 α1,α2,α3,...の簡易記法とする。

モノイドの単位元はα0とする。

モノイドの次の元を得る関数SUCCが存在し、

α_n+1 = SUCC(α_n)と表すことができることとする。

まり

α2 = SUCC(α1)
α3 = SUCC(α2) = SUCC(SUCC(α1))
...

である

α0 は単位元であるので、単位元定義より、

α0 = α0 + α0
α1 = α1 + α0
α2 = α2 + α0
...

である

ここで、1+1が2にも3にも4 という定義より、

α1 + α1 = α2 = SUCC(α1)
   = α3 = SUCC(SUCC(α1))
   = α4 = SUCC(SUCC(SUCC(α1)))
...

となる。

これを満たすことができる関数SUCCは幾つか考えられるが

その1:

defun SUCC(x) = α0

その2:

defun SUCC(x) =
        if (x equals to α0) then α0
        else x

等とすることができる。

その1は 1bit の排他的論理和

α0 + α0 = α0
α0 + α1 = α1
α1 + α0 = α1
α1 + α1 = α2 = SUCC(α1) = α0

その2は 1bit の論理和

α0 + α0 = α0
α0 + α1 = α1
α1 + α0 = α1
α1 + α1 = α2 = SUCC(α1) = α1

である

脳筋って頭いいんだね

記事への反応(ブックマークコメント)

アーカイブ ヘルプ
ログイン ユーザー登録
ようこそ ゲスト さん