結合法則
[Wikipedia|▼Menu]
.mw-parser-output .hatnote{margin:0.5em 0;padding:3px 2em;background-color:transparent;border-bottom:1px solid #a2a9b1;font-size:90%}

この項目では、数学について説明しています。プログラミング言語については「演算子の結合性(英語版)」をご覧ください。

数学における結合性(けつごうせい、: associative property[1],associativity)は、一部の二項演算がもつ性質である。演算が結合的であるための必要十分条件を結合法則(けつごうほうそく、: associative law; 結合律、結合則)という。命題論理において、結合則(結合規則)は形式的証明におけるに対する妥当(英語版)な置換規則(英語版)のひとつに挙げられる。

同一式にて同じ結合的演算が複数回現れる場合、それらの演算を施す順番は、被演算子の順序を変えない限り、結果に影響しない。つまり、(必要ならば中置記法括弧を使った式に書き換えて)括弧の位置を入れ替えても、式の値は変わらない。例えば、

( 2 + 3 ) + 4 = 2 + ( 3 + 4 ) = 9 {\displaystyle (2+3)+4=2+(3+4)=9}

2 × ( 3 × 4 ) = ( 2 × 3 ) × 4 = 24 {\displaystyle 2\times (3\times 4)=(2\times 3)\times 4=24}

を例にとると、各行とも左辺と中辺で括弧の位置が変わっている(そして被演算子の現れる位置は変わっていない)けれども、その値である右辺は変わりないことを述べている。このような関係式は、被演算子を任意の実数とする加法乗法を計算する限りにおいて満足されるから、それを「実数の加法および乗法は結合的(演算)である」とか、「実数の加法および乗法は(実数全体の成す集合上で)結合法則を満足する」などと言い表す。

結合性は、「二つの被演算子の現れる位置を入れ替えても結果が変わらない」ことを意味する可換則とは異なる。例えば、実数の乗法が可換演算であるのは、実数の乗法において被演算子の順番を変えてもよいこと—つまり a × b = b × a—が満足されることによる。

結合的演算は数学において遍く存在する。事実として、多くの代数的構造(例えば半群)では、それらの持つ二項演算が結合的であることを明示的に要請される。

とはいえ、重要で意義のある非結合的演算もたくさん存在する。例えば減法冪演算、ベクトルの交叉積などはそうである。
定義集合 S 上の二項演算 ? が結合的となるのは、この図式が可換のとき。つまり、左上の S × S × S から右下の S までいくのに考え得る二種類の経路に沿って得られる写像の合成が、S × S × S から S への同じ写像を定める。

厳密に、集合 S 上で定義された二項演算 ? が結合的であるとは、結合法則 ( x ∗ y ) ∗ z = x ∗ ( y ∗ z ) ( ∀ x , y , z ∈ S ) {\displaystyle (x*y)*z=x*(y*z)\qquad (\forall x,y,z\in S)} を満足するときに言う。ここで、? は考えたい演算(それを一般に「乗法」や「積」と呼んだりする[注釈 1])を表す記号(演算子)であって、これは別にどのような記号が用いられてもよいし、あまつさえ「乗法」を表す記号のない併置 (juxtaposition) 記法で ( x y ) z = x ( y z ) = x y z ( ∀ x , y , z ∈ S ) {\displaystyle (xy)z=x(yz)=xyz\qquad (\forall x,y,z\in S)} と書くこともある。

結合法則を函数記法で表すこともでき、その場合は f ( f ( x , y ) , z ) = f ( x , f ( y , z ) ) {\displaystyle f(f(x,y),z)=f(x,f(y,z))} のようになる。
一般化された結合法則結合性がない場合には、五つの因子 a, b, c, d, e のこの順での積は、四次のタマリ束(英語版)を成し、それぞれが異なる値を持ち得る。

二項演算が結合的ならば、その演算が反復して適用されるとき、その式においてきちんと(開きと閉じが)対になる括弧がどのように挿入されるかを気にすることなく、その演算結果が同じであることがわかる[2]。そのことを一般化された結合法則 (generalized associative law) と言う。実例として、四つの元の積を、それらの因子の順番を変えることなく書き下せば、五種類の異なる計算順序が考えられる:

( ( a b ) c ) d , {\displaystyle ((ab)c)d,}

( a b ) ( c d ) , {\displaystyle (ab)(cd),}

( a ( b c ) ) d , {\displaystyle (a(bc))d,}

a ( ( b c ) d ) , {\displaystyle a((bc)d),}

a ( b ( c d ) ) . {\displaystyle a(b(cd)).}

が、これらの積を得る演算が結合的ならば、一般化された結合法則の述べるに従い、これらすべてが同じ値の積であることが結論される。となれば(これらの式から括弧をすべて取り払った式に既に別の意味が施されているのでない限り)この積において括弧は「不要」のものと考えることができて、この積を紛れの虞なく a b c d {\displaystyle abcd} と書くことができる。

このような繰り返しの積において、因子となる元の数が増えるにしたがって、釣り合いのとれた括弧の挿入の仕方総数は急速に増加するけれども、演算が結合的ならばそれらの区別もやはり必要がなくなる。

結合的だからといって単純に括弧を取り去ってはいけない例として、双条件(英語版) ? を挙げよう。? は結合的であって A ? (B ? C) は (A ? B) ? C に同値であるが、A ? B ? C はふつうは A ? B かつ B ? C の意味であって先のふたつとは同値でない。
結合的演算において ( x ∘ y ) ∘ z = x ∘ ( y ∘ z ) {\displaystyle (x\circ y)\circ z=x\circ (y\circ z)} である。実数の加法は結合的である。

結合的演算の例をいくつか挙げる:

文字列結合。3つの文字列 "a"、"b"、"c" を繋げる際、先の2つを繋いで "ab" を得てから、その末尾に3つめの "c" を繋ぐと、"abc" となる。一方で、後の2つを繋いで "bc" を得てから、その先頭に1つめの "a" を繋いでも、同じく "abc" となる。そのため、文字列結合は結合的である。なお、可換ではない。


複素数同士の加法。(複素数とは、実数虚数の総称であり、いわゆる数。)グループ化を表す括弧は、曖昧さを生まずに除去できる。
( x + y ) + z = x + ( y + z ) = x + y + z {\displaystyle (x+y)+z=x+(y+z)=x+y+z}

複素数同士の乗法。グループ化を表す括弧は、曖昧さを生まずに除去できる。
( x y ) z = x ( y z ) = x y z {\displaystyle (xy)z=x(yz)=xyz}

右自明演算 x ∗ y = x {\displaystyle x*y=x} (必ず x {\displaystyle x} の値を返す)、および左自明演算 x {\displaystyle x} ∘ y = y {\displaystyle y=y} (必ず y {\displaystyle y} の値を返す)。どちらも可換ではない。


複素数および四元数の加法および乗法。


八元数の加法。なお、乗法は結合的でない。


最大公約数をとる演算。
gcd ⁡ ( gcd ⁡ ( x , y ) , z ) = gcd ⁡ ( x , gcd ⁡ ( y , z ) ) = gcd ⁡ ( x , y , z ) ( ∀ x , y , z ∈ Z ) {\displaystyle \operatorname {gcd} (\operatorname {gcd} (x,y),z)=\operatorname {gcd} (x,\operatorname {gcd} (y,z))=\operatorname {gcd} (x,y,z)\qquad (\forall x,y,z\in \mathbb {Z} )}

最小公倍数をとる演算。
lcm ⁡ ( lcm ⁡ ( x , y ) , z ) = lcm ⁡ ( x , lcm ⁡ ( y , z ) ) = lcm ⁡ ( x , y , z ) ( ∀ x , y , z ∈ Z ) {\displaystyle \operatorname {lcm} (\operatorname {lcm} (x,y),z)=\operatorname {lcm} (x,\operatorname {lcm} (y,z))=\operatorname {lcm} (x,y,z)\qquad (\forall x,y,z\in \mathbb {Z} )}

集合交叉および合併: ( A ∩ B ) ∩ C = A ∩ ( B ∩ C ) = A ∩ B ∩ C ( A ∪ B ) ∪ C = A ∪ ( B ∪ C ) = A ∪ B ∪ C ( ∀ A , B , C ) . {\displaystyle {\begin{array}{l}(A\cap B)\cap C=A\cap (B\cap C)=A\cap B\cap C\\(A\cup B)\cup C=A\cup (B\cup C)=A\cup B\cup C\end{array}}\qquad (\forall A,B,C).}


次ページ
記事の検索
おまかせリスト
▼オプションを表示
ブックマーク登録
mixiチェック!
Twitterに投稿
オプション/リンク一覧
話題のニュース
列車運行情報
暇つぶしWikipedia

Size:58 KB
出典: フリー百科事典『ウィキペディア(Wikipedia)
担当:undef