トロピカルな計算練習(2)

前回わかったように、当たり前のことなんですが、結局トロピカル演算は通常演算を完璧にトレスできるわけではないので、通常演算のどこを取るのか(生き残らせるか)の取捨選択が時々起こるということになります。

なんで当たり前なんていったかというと、もし全くトレスできるんだったら、わざわざ数学者が別々の名前をつけているとは思えないんですよね。
私は専門が物理なので、数学者には勝手に「俯瞰して同じ構造のものは同じと言い切る人たち」という憧れと期待を持ってます。

え、なんで物理専門なのに数学の話ししてるのかって?
そういうブログとかYouTuberとかごまんとあるんだから許して or そういうことしてる有名な人に訊いてください(そういう説明動画も作れて一石二鳥でしょう)

能書き垂れはここいらまでにして、さて、前回の補足的なお話。

前回は
「通常演算の$${0}$$や$${1}$$って色々機能があってすげぇや」
というのと
「トロピカル、色々演算似てるけど、単位元や零元の性質は時々死ぬんだね」
というのを見ました。
で、今まで零元や単位元という言い方をしてましたけど、こいつらそもそもなんなんでしょうね。そういえば深く定義してなかったです。

数学というと、こういう未定義語を使った場合、聴講者から七代先まで祟られるイメージがありますが、あんまり気にしないことにします。

通常演算から旅立って、零元とか単位元とか考えるとそもそも僕らが零元や単位元に期待することはなんだったんだろう、と振り返る良い機会になります。

単位元というのは一般的に、何かしかの演算をすると、演算された側が何も変わらず返される、そんなやつです。
別の呼び名で中立元なんて言い方もします。英語としてもちゃんと違って、identity element に対して neutlal element といいます。単位元というと確かに$${1}$$をイメージしちゃうかなと、私も思います。

一方零元は、こいつこそ$${0}$$以外イメージしにくいネーミングですが、ちゃんと別の呼び名があります。
零元に期待されてるのは、加法単位元的な性質というより、積での変な振る舞いにあるはずです。
だって、そうじゃなかったら普通に「和の単位元」と読んでいればよさそうな気がします。
普通の単位元になくて、$${0}$$サマにしかない性質といえば、

$$
a \times 0=0
$$

という、演算される側のやつを無かったことにできるチート能力です。
このチート能力に注目して呼ぶときは、吸収元といいます。英語ではabsorbing element, 直訳だね。
しかしなるほどいいネーミング。相手の能力を吸収して無効化する。

中立元、吸収元という言い方をすれば、なるほど「通常演算での$${1}$$の役割」みたいに$${1}$$の性質に固執する必要はないのかなって思えてきます。不思議ですね。


さて、前回トロピカル幾何学での計算のさわりを話しました。念のため復習として書いておくと、

・足し算はmaxにしちゃえ
・掛け算は(普通の)足し算にしちゃえ
・一番小さい$${-\infty}$$をみとめちゃえ

というものでした。
うまく零元を入れるために$${-\infty}$$を導入して、数学の先生に叱られそうな$${-\infty+1}$$なんて計算をしました。

今日のアタマは前回の話から少し脱線してますが、脱線ついでにminで和を定義する人が案外多そう、というはなし。
基本は一緒です。積は通常の足し算のままとします。

$$
\begin{array}{}
1\oplus 2 &=&min(1,2)&=&1\\\
1\otimes 2 &=&1+2&=&3
\end{array}
$$

というわけです。
この場合零元は$${\infty}$$にします。

$$
\begin{array}{}
1\oplus \infty &=&min(1,\infty)&=&1\\\
1\otimes \infty &=&1+\infty&=&\infty
\end{array}
$$

このとおり$${0}$$の役を演じてくれます。
minを使うと$${-\infty}$$なんて負の方の無限大を定義しなくていいので、気分はよさそうです。
minを使ったこの規則も分類としてはトロピカル代数に含まれます。
なので和がminなのかmaxなのかはちゃんと確認する必要があります。
そこを明示するために、min-plus代数とか、max-plus代数と呼ぶこともあります。

両者は互いに全ての元へ$${-1}$$をかけることで移り合えるので、どちらかじゃなきゃダメとか、そういう話では無さそうです。

じゃあなんで私がこのブログでmax-plus表記をしているかというと、積分のためなんですね。
トロピカルでの積分がどうなるかは自分で調べるか、投稿されるまでお楽しみにしておいてください。


さて、今回のメインテーマは問題の「引き算割り算」です。こいつが困った。特に引き算。

簡単な方から倒しましょう。
割り算は$${\otimes}$$が$${+}$$なんですから、その逆算、つまり引き算をすることに決めるか、あるいは負の数の足し算としてやればよさそうです。
ただし、負の数の足し算として考えるなら、前回の終わりで「$${\mathbb{R} }$$の正部分だけを考える譲歩」は難しくなります。

というのもトロピカル積中立元(つまり単位元) $${0}$$ にトロピカル和で特別な役割を持たせたいというワガママを通すなら積の逆演算が難しくなるわけです。
彼方が立たねば此方が立たぬ。
積の逆演算ができないと、後述するようにトロピカルでは逆演算が全くできなくなってしまいますから、やっぱりトロピカル積中立元君にはトロピカル和での特別な地位をあきらめてもらうことにしましょう。


さて、じゃあ引き算です。
しかしトロピカル代数では引き算ができないようなのです。

案外割り算みたく譲歩したら上手くできるんじゃない?
って思うかもしれないんですけど、私たちはすでに「和が、とくに$${ 1 }$$にあたる元がちょっと変なことになってるけどまあいいか」なんて状況になってるわけです。
気持ちで言うと、和がそこまで満足いく状態じゃないなら、引き算はなおのこと、できたとしてもそれなりの不満が残りそうです。

肌感覚として、大概の計算は積む方と崩す方なら崩す方が難しいと思います。和と差、乗除、累乗累乗根など。5乗の計算はエンヤコラ手でできても5乗根はちょっとやりたくないですよね。
そう考えると崩す方が楽で積む方が難しいなんてのは、微積ぐらいなのかもしれません。

で、以下今回は「結局引き算はうまくいかないよ」って話しかしませんから、そういう失敗譚は不要という方は読まなくていいです。
最後の方では「引き算ってなんだ……」と絶望に暮れます

人間、あんまりトロピカると、引き算もできなくなるんです。


引き算ってなにかというと、上でも言ったように和の逆計算と考えることが多いかとおもいます。
しばらく通常演算で引き算の復習です。
たとえば、

$$
\begin{array}{}
1+3&=&4\\\
1&=&4-3
\end{array}
$$

ということです。
これはいわば、

$$
\begin{array}{}
(1+3)-3&=&4-3&=&1
\end{array}
$$

というふうになります。
つまり、和をしたことを打ち消す操作(ctrl+z)といえます。
3を足すと3を引くが対になっているということです。
あるいは、

$$
\begin{array}{}
(1+3)-3&=&1+(3-3)&=&1+0&=&1
\end{array}
$$

ここ、$${ 3-3=0 }$$のように同一のものどうし差を取るとかならず$${ 0 }$$に飛ぶ操作ということもできます。

一方で、こちらも上で触れたことですが、負の数を認めてしまえば、差は負の数の足し算として定義できます。

$$
\begin{array}{}
(1+3)-3&=&(1+3)+(-3)\\\
&=&1+3+(-3)\\\
&=& 1+0&=&1
\end{array}
$$

この場合は演算そのものは足し算だけですが、負の数の足し算と考えることで引き算を表現しています。

数学の「環(ring)」というあつまりはこの解釈をとっていて、特に実数などの環において引き算は負の数の足し算、割り算は分数の掛け算として考えます。

つまり差は「差という演算(写像、射)がある見方」「演算は足し算だけど量(元、要素、対象)に負の数がある見方」ができるわけです。


さて、じゃあトロピカルに引き算を入れるにはどう見るべきなのでしょう。(何度も言いますが失敗します)

「環」で使われてる負の数的な考えを持ち込むにも、負の数はすでに$${\otimes }$$の逆元で使われてますし、それを$${\oplus }$$に作用させてもただ大小判定がされるのみです。ひとまずどんなものかは不明ですが、負の数的なことができる何かを探す方針でいきましょう。
それを無理に$${\bar{3} }$$のように書くとします。
例えば

$$
\begin{array}{}
2\oplus 3&=&3
\end{array}
$$

では、$${\bar{3} }$$を$${\oplus }$$とすると

$$
\begin{array}{}
(2\oplus 3) \oplus \bar{3}&=&3 \oplus \bar{3}
\end{array}
$$

これがもとの$${ 2 }$$になるということなので、

$$
\begin{array}{}
3 \oplus \bar{3}&=&2\\\
\max(3,\bar{3} )&=&2
\end{array}
$$

$${ 3\neq 2 }$$なので、$${\bar{3}=2 }$$になります。
ところが作ったそばからで恐縮ですがこれは再度代入すると矛盾します。

$$
\begin{array}{}
3 \oplus \bar{3}&=& 3 \oplus 2 \\\
&=& \max(3,2)&=&3
\end{array}
$$

さらにそもそも$${ 2 }$$でなくても$${ 1 }$$なんかでも同じ結果が出るため、$${\bar{3} }$$をいきなり提示されて、これを足しなさいと言われても結果の行先が一通りに決まらない、困った状態になります。
$${ 1\oplus\bar{3} }$$がいくつになるかも不明です。

そういうわけでmax-plus代数は和の逆元を諦めます。
こういう数学は「環」ではなく「半環(semiring)」と呼ばれています。俗称でrigなんとも書きます。なんでnがない?
これ日本語訳が、なぜか「半」なんですよね。「準」ではないんですよ。半分しか上手くいかないから?


では逆元はもう諦めて、逆演算を定義する立場ならどうなんでしょう。

$$
\begin{array}{}
a \oplus b \ominus b&=&a
\end{array}
$$

こうなって欲しいわけです。
しかしこれはどこから計算するかで変わります。

$$
\begin{array}{}
(a \oplus b) \ominus b=a
\end{array}
$$

$a>b$では

$$
\begin{array}{}
a \ominus b=a
\end{array}
$$

つまり大きい方を答える演算になります。これじゃあ$${\oplus }$$とおんなじ演算ですから分けた意味がありません。

一方$${ a < b }$$では

$$
\begin{array}{}
b \ominus b=a
\end{array}
$$

となるわけですが、これは$${ a < b }$$ なる$${ a }$$全てでこの結果になるということで、前提なしに$${ b \ominus b }$$をやれと言われると詰むという、逆元を考えた時と同じ問題にぶち当たります。
それじゃあ

$$
\begin{array}{}
a \oplus (b \ominus b)=a
\end{array}
$$

この順の計算は? というと、$${ b \ominus b }$$が$${ a }$$以下$0$以上ということになります。
それなら$${ b \ominus b=0 }$$でいいや、といえそうです。
ただこれは引き算の性質の中の「同一元での演算はかならず0」をやっただけです。
まだ一般に$${\ominus }$$がどんなものかは不明です。
とはいえひとまず少し前進、引き算は足し算より先って決めてしまいましょうか?
でも、

$$
\begin{array}{}
a \oplus (b \ominus a)=b
\end{array}
$$

で詰みます。
$${ b \ominus a }$$の正体が不明ですが、$${ a \oplus (?)=b }$$ですから、$${ b > a }$$で$${(?)=b \ominus a=b }$$となってほしいわけです。
しかしこれだと$${\ominus }$$はmaxになってしまうので、$${\oplus }$$と同じ演算になってしまいます。
それなら$${\ominus }$$なんて不要だよね、となりそうです。


袋小路感があるので、じゃあもうこのアプローチはやめて、もっと単純に$${\oplus }$$がmaxなら$${\ominus }$$はminでどうだ! としてみましょうか。
つまりmax-min-plusという代数です。

$$
\begin{array}{}
(1 \oplus 2)\ominus 2&=& \min( \max(1,2),2)&=&2\\\
1 \oplus (2\ominus 2)&=& \max(1,2)&=&2\\\
(3 \oplus 2)\ominus 2&=& \min( \max(3,2),2)&=&2\\\
3 \oplus (2\ominus 2)&=& \max(3,2)&=&3
\end{array}
$$

このように時と場合によって満足のいく結果と満足のいかない結果が混在してしまいます。
どちらかというと満足いかない結果が多く、こうなってくると「我々は一体引き算に何を求めてるんだ?」と混乱してきます。


そうです、そもそも引き算という演算のアイデンティティはなんなんでしょうね?
ひとまず和の逆算というアイデンティティはmax-plus代数上では使えなさそうなので、ほかの性質を満たせばもう引き算でいいかって気持ちになってきます。
引き算を演算としてみると

$$
\begin{array}{}
a-a&=&0\\\
(a-b)-c&\neq&a-(b-c)\\\
a-b &\neq& b-a&=&-(a-b)
\end{array}
$$

べき零、非結合、非可換ですから、このうちいくつかを満たせば引き算と言い張っていいのかもしれません。
しかし、この中のどこまで捨てても良いのか、どこまでを引き算と名乗って良いか……。このあたり共通認識がどこまでできているのか、私は知りません。

それともそれならはなから引き算を捨てて、<b>もう半環でいいや</b>ってことなんでしょうか。


さて、どうしてこんなに引き算にこだわって、袋小路をうろうろして見せたかというと、引き算ができないとちょっと困るんです。物理の立場では。

微分、おまえどう定義するの?

いいなと思ったら応援しよう!