半環の定義

半環(semiring)とは環の一般化にあたる代数的構造で、よく見るといろいろな所に存在しています。

半環(semiring)の定義

空でない集合 \(S\) と,その上の二つの二項演算 \(+, \cdot\) (和と積)の組 \((S, +, \cdot\ )\) が半環(semiring)であるとは,

  • \((S, +)\)は \(0\) を単位元とする可換モノイド
    • \((a+b)+c=a+(b+c)\)
    • \(a+0=0+a=0\)
    • \(a+b=b+a\)
  • \((S, \cdot\ )\)は \(1\) を単位元とするモノイド
    • \((a\cdot b)\cdot c=a\cdot (b\cdot c)\)
    • \(a\cdot 1=1\cdot a=a\)
  • 分配法則
    • \(a\cdot (b+c)=a\cdot b+a\cdot c\)
    • \((a+b)\cdot c=a\cdot c+b\cdot c\)
  • \(0\) 倍
    • \(a\cdot 0 = 0\cdot a = 0\)

を満たすことをいう.

乗法が可換のとき、可換半環(commutative semiring)という.

\(0\) を \(S\) の零元(zero element)といい, \(1\) を \(S\) の単位元(identity element)という.

定義によっては 0 や 1 の存在を仮定しないものもあります。
また、環(ring)に負の元(negative)が無いという捉え方から, rigと表記する場合もあります。

\(0\) 倍の条件はいらないと思う方もいるかもしれませんが、他の3つの条件から導くことは出来ません。環の定義の場合は、加法の逆元の存在が保証されているので、\(0\) 倍の条件を導くことが出来ます。

例1(自然数)

自然数全体 \(\mathbf{N}=\left\{0, 1, 2, 3, \ldots \right\}\) で通常の和と積を考えたものは可換半環をなします。

例2(トロピカル半環 Tropical semiring)

実数全体 \(\mathbf{R}\) と無限大の集合 \(\mathbf{R}\cup \left\{\infty\right\}\) に以下のように和 \(\oplus\) と積 \(\otimes\) を入れます。

  • \(a\oplus b=\min\{a,b\}\)
  • \(a\otimes b=a+b\)

すると \(\mathbf{R}\cup \left\{\infty\right\}\) は半環になります。これをトロピカル半環 (Tropical semiring)と呼び、\(\mathbf{T}\) と書いたりします。

このとき和の単位元は \(\infty\) で積の単位元は \(0\) になっています。

演算の計算例としては

  • \((3\oplus \infty)\otimes 5 = 3\otimes 5 = 8\)
  • \(-2\oplus(0\otimes \infty)=-2\oplus \infty=\infty\)

のような感じです。

また、\(\mathbf{R}\cup \left\{-\infty\right\}\) に演算

  • \(a\oplus b=\max\{a,b\}\)
  • \(a\otimes b=a+b\)

を入れてトロピカル半環を定義することもあります。

これら2つは \(x\mapsto -x\) という写像で半環同型となります。

例3(ブール半環)

集合 \(\mathbf{B}=\left\{0, 1\right\}\) に演算を

  • \(0+0=0, 1+0=1, 0+1=1, 1+1=1\)
  • \(0\cdot0=0, 1\cdot0=0, 0\cdot1=0, 1\cdot1=1\)

で定めると \(\mathbf{B}\) は可換半環をなします。
これをブール半環(Boolean semiring)と言います。

例4(環)

環は半環です。半環の定義の「和が可換モノイド」を「和がアーベル群」にすると環になります。

コメント

タイトルとURLをコピーしました