モノイドとは何ですか?定義、例、および応用
モノイドは、要素のセットと、特定の特性を満たす方法でそれらの要素を組み合わせる演算で構成される数学的構造です。より具体的には、モノイドは次のように定義されます。
* 要素の集合「M」、任意の値 (数字、記号など) を指定できます。
* `M` から 2 つの要素 `a` と `b` を取得し、同じく `M` 内の別の要素 `a * b` を返す演算 `*`。
演算が満たさなければならないプロパティは次のとおりです:
* 結合性: `M` 内のすべての `a`、`b`、および `c` に対する `(a * b) * c = a * (b * c)`。これは、操作を実行する順序は重要ではないことを意味します。
* 恒等性: ` 内のすべての `a` に対して `a * e = e * a = a` となるような `M` 内に要素 `e` が存在します。む。この要素は恒等要素と呼ばれ、操作の「中立」要素として機能します。 * 逆: `M` の各要素 `a` に対して、`M` には別の要素 `b` が存在します。 a * b = b * a = e`。この要素 'b' は 'a' の逆要素と呼ばれ、'a' と組み合わせると 'a' の効果が元に戻ります。たとえば、加算演算を行う整数の集合はモノイドを形成します:
* 集合 `M ` はすべての整数の集合です。
* 演算 `*` は加算です。
* 任意の整数 `a` に対して `a + 0 = a` であるため、恒等要素は 0 です。
* 要素 `a の逆関数` は `-a` です。なぜなら、 `a + (-a) = 0` だからです。文字列。
* 操作 `*` は連結です。
* 任意の文字列 `a` に対して `a + "" = a` であるため、単位要素は空の文字列です。
* 要素 `a` の逆です。 `a` を反転することで得られる文字列です。`a + ("" + a) = a + a = e` です。
モノイドは、抽象代数、群論、関数など、数学やコンピューター サイエンスの多くの分野で使用されます。プログラミング。これらは、さまざまな数学的オブジェクトやシステムの対称性と構造を記述する方法を提供し、暗号化、コーディング理論、およびコンピューター サイエンスのその他の分野で多くの用途があります。