半環について考える前に、半群についてもう少し考えてみます。
集合 によって自由生成された自由半群 は の元からなる1個以上有限個の文字列の全体として定義することができます。
集合 によって自由生成された自由モノイド は の元からなる0個以上有限個の文字列の全体として定義することができます。
単位元を持たない半群 に対して、集合の直和 に以下のように積を定義します。 に対して として、それ以外の積は の積とします。このように定義すると はモノイドとなります。
半群 上の同値関係 が任意の に対して 、 ならば となるとき、同値類の全体は( の同値類を と書くと) と積を定義すると半群になります。
半群 と半群 に対して、その元からなる1個以上有限個の列 または または または の全体からなる集合を とおきます(、)。これに以下のように積( のように書くことにします)を定義します。 という形の元と という形の元の積の場合(、 と は列)、 とすると積は と定義します。また という形の元と という形の元の積の場合(、 と は列)、 とすると積は と定義します。それ以外の場合は、ある集合によって自由生成された自由半群の場合と同様に文字列の連結として定義します。このように定義すると は半群となります。
を半群、 を集合とします。 に対して上記の を考えます。写像 を拡張して半群の準同型 とすることができます。
を半群の同型とします。 は の逆元を表すので が成り立つとします。 上の同値関係を考えます。 が単位元を持たないときは を考えます。、、、 の推移閉包から同値関係 を作ります。同値類の全体 は群となります。
半群 の台集合 によって自由生成された自由半群 を考えます(演算を とし、 を と書くことにします)。 を と定義すると は半群の準同型となります。
集合 によって自由生成された自由可換半群 は の元からなる1個以上有限個の多重集合(重複を許す集合)の全体として定義することができます。
集合 によって自由生成された自由可換モノイドは の元からなる0個以上有限個の多重集合の全体として定義することができます。
集合 によって自由生成された自由半群 (演算を のように書くことにします)によって自由生成された自由可換半群 (演算を とします)を考えます。 に積を によって定義することができ、 は半環になります。これを集合 によって自由生成された自由半環と呼びます。