数学演算
二項関係 の 数学において 、 関係の合成とは 、 与えられた2つの二項関係 R と Sから新しい二項関係 R ; S を形成することである 。 関係の計算 では、関係の合成は 相対乗算 と呼ばれ、 [1] その結果は 相対積 と呼ばれる。 [2] : 40 関数合成は 、関係の合成の特殊なケースであり、関係するすべての関係が 関数 である。
叔父 という言葉は 複合関係を示します。つまり、ある人が叔父であるためには、その人は親の兄弟でなければなりません。 代数論理学 では、叔父 ( ) の関係は、「兄弟である」( ) と「親である」( )
の関係の合成である と言われています。
x
あなた
ず
{\displaystyle xUz}
x
B
ええ
{\displaystyle xBy}
ええ
ポ
ず
{\displaystyle yPz}
あなた
=
B
ポ
は以下と同等です:
x
あなた
ず
もし、もし、
∃
ええ
x
B
ええ
ポ
ず
。
{\displaystyle U=BP\quad {\text{ は次と同等: }}\quad xUz{\text{ }}\exists y\ xByPz の場合のみ。}
オーガスタス・ド・モルガン [3] に始まり、 三段論法 による 伝統的な推論形式は 関係論理式とその構成に吸収されてきた。 [4]
意味
とが2つの二項関係である 場合 、それらの合成 は関係
R
⊆
バツ
×
はい
{\displaystyle R\subseteq X\times Y}
ス
⊆
はい
×
ず
{\displaystyle S\subseteq Y\times Z}
R
;
ス
{\displaystyle R\mathbin {;} S}
R
;
ス
=
{
(
x
、
ず
)
∈
バツ
×
ず
:
存在する
ええ
∈
はい
そのような
(
x
、
ええ
)
∈
R
そして
(
ええ
、
ず
)
∈
ス
}
。
{\displaystyle R\mathbin {;} S=\{(x,z)\in X\times Z:{\text{ }}y\in Y{\text{ が存在し、}}(x,y)\in R{\text{ かつ }}(y,z)\in S\} となる。}
言い換えれば、は、 (つまり、 かつ) となる 要素が存在する場合にのみ存在する という規則によって定義される 。 [5] : 13
R
;
ス
⊆
バツ
×
ず
{\displaystyle R\mathbin {;} S\subseteq X\times Z}
(
x
、
ず
)
∈
R
;
ス
{\displaystyle (x,z)\in R\mathbin {;} S}
ええ
∈
はい
{\displaystyle y\in Y}
x
R
ええ
ス
ず
{\displaystyle x\,R\,y\,S\,z}
(
x
、
ええ
)
∈
R
{\displaystyle (x,y)\in R}
(
ええ
、
ず
)
∈
ス
{\displaystyle (y,z)\in S}
表記上のバリエーション
関係の合成のための挿入記法 としての セミコロン は、1895年の エルンスト・シュレーダー の教科書 にまで遡ります。 [6] ギュンター・シュミットは、特に リレーショナル数学 (2011年) でセミコロンの使用を再開しました。 [2] : 40 [7] セミコロンの使用は、 カテゴリー理論 で使用される(主にコンピュータ科学者による)関数合成の記法と 一致しています 。 [8]また、言語の 動的意味論 における動的接続詞の記法とも一致しています 。 [9]
ジョン・M・ハウィーは、関係の 半群 を考慮した著書の中で、 関係の合成の挿入記法に 小円を使用してきました 。 [10]しかし、小円は 関数の合成を 表すために広く使用されており 、テキストシーケンスと演算シーケンスが 逆になっています。小円は、 Graphs and Relations [5] : 18 の導入ページで使用されてい ましたが、その後、並置(挿入記法なし)が採用されました。 並置は 代数では乗算を表すためによく使用されますが、相対的な乗算を表すこともできます。
(
R
∘
ス
)
{\displaystyle (R\circ S)}
グ
(
ふ
(
x
)
)
=
(
グ
∘
ふ
)
(
x
)
{\displaystyle g(f(x))=(g\circ f)(x)}
(
R
ス
)
{\displaystyle (RS)}
さらに、円記号表記では下付き文字が使用されることがあります。一部の著者 [11] は、左関係と右関係のどちらが最初に適用されるかに応じて、必要に応じて明示的に と を記述する ことを好みます。コンピュータサイエンスで遭遇するさらなるバリエーションは、 Z 表記法 です。 : は従来の (右) 構成を表すために使用され、左構成は太いセミコロンで表されます。Unicode のシンボルは ⨾ と ⨟ です。 [12] [13]
∘
l
{\displaystyle \circ_{l}}
∘
r
{\displaystyle \circ_{r}}
∘
{\displaystyle \circ}
数学的一般化
二項関係は、 カテゴリ における 射です 。Rel では 、 オブジェクトは 集合 、射は二項関係、射の合成は上で定義した関係の合成とまったく同じです。集合と関数のカテゴリ Set は、写像
が関数である の サブカテゴリ です 。
R
⊆
バツ
×
はい
{\displaystyle R\subseteq X\times Y}
R
:
バツ
→
はい
{\displaystyle R:X\to Y}
R
e
l
{\displaystyle {\mathsf {Rel}}}
R
e
l
{\displaystyle {\mathsf {Rel}}}
バツ
→
はい
{\displaystyle X\to Y}
ふ
:
バツ
→
はい
{\displaystyle f:X\to Y}
正則カテゴリ が与えられた場合 、その内部関係のカテゴリは と同じオブジェクトを持ちます が、今度は射が 内の 部分オブジェクトによって与えられます 。 [14] 正式には、これらはと の 間の 共同モニック 範囲 です。内部関係のカテゴリは 寓話 です。特に です 。 体 (またはより一般的には 主イデアル領域 ) が与えられた場合、上の 行列 の内部関係のカテゴリは 、 線型 部分空間 の 射を持ちます。 有限体 上の線型関係のカテゴリは、 スカラーを法とする位相フリー量子ビット ZX 計算 と同型です。
バツ
{\displaystyle \mathbb {X} }
R
e
l
(
バツ
)
{\displaystyle {\mathsf {Rel}}(\mathbb {X} )}
バツ
{\displaystyle \mathbb {X} }
バツ
→
はい
{\displaystyle X\to Y}
R
⊆
バツ
×
はい
{\displaystyle R\subseteq X\times Y}
バツ
{\displaystyle \mathbb {X} }
バツ
{\displaystyle X}
はい
{\displaystyle Y}
R
e
l
(
ス
e
t
)
≅
R
e
l
{\displaystyle {\mathsf {Rel}}({\mathsf {Set}})\cong {\mathsf {Rel}}}
け
{\displaystyle k}
け
{\displaystyle k}
R
e
l
(
ま
1つの
t
(
け
)
)
、
{\displaystyle {\mathsf {Rel}}({\mathsf {Mat}}(k)),}
ん
→
メートル
{\displaystyle n\to m}
R
⊆
け
ん
⊕
け
メートル
{\displaystyle R\subseteq k^{n}\oplus k^{m}}
ふ
2
{\displaystyle \mathbb {F} _{2}}
プロパティ
関係の合成は 結合的で ある:
R
;
(
ス
;
T
)
=
(
R
;
ス
)
;
T
。
{\displaystyle R\mathbin {;} (S\mathbin {;} T)=(R\mathbin {;} S)\mathbin {;} T.}
の 逆関係 は です。 この特性により、集合 上のすべての二項関係の集合は 反転 を持つ半群に なります。
R
;
ス
{\displaystyle R\mathbin {;} S}
(
R
;
ス
)
T
=
ス
T
;
R
T
。
{\displaystyle (R\mathbin {;} S)^{\textsf {T}}=S^{\textsf {T}}\mathbin {;} R^{\textsf {T}}.}
(部分)関数 (つまり関数関係) の合成もまた、(部分)関数です。
と が 単射 なら ば は 単射であり、逆に の単射性のみが示される。
R
{\displaystyle R}
S
{\displaystyle S}
R
;
S
{\displaystyle R\mathbin {;} S}
R
.
{\displaystyle R.}
と が 射影 的であれ ば は 射影的であり、逆に の射影性のみが示される。
R
{\displaystyle R}
S
{\displaystyle S}
R
;
S
{\displaystyle R\mathbin {;} S}
S
.
{\displaystyle S.}
集合 上の二項関係の集合 (つまり、 から への関係 )は、(左または右の)関係合成とともに、ゼロを持つ モノイドを 形成します。ここで、 上の恒等写像は 中立元 であり 、空集合は ゼロ元 です。
X
{\displaystyle X}
X
{\displaystyle X}
X
{\displaystyle X}
X
{\displaystyle X}
行列による構成
有限二項関係は論理行列 で表現される 。これらの行列のエントリは、比較対象に対応する行と列に対して表現される関係が偽か真かによって、0 または 1 になる。このような行列の操作には、およびを使用したブール演算が含まれる。2 つの論理行列の 行列積 のエントリが 1 になるのは、乗算された行と列が対応する 1 を持つ場合のみである。したがって、関係の合成の論理行列は、合成の要素を表す行列の行列積を計算することによって見つけることができる。「行列は、仮説的三段論法と ソリテス によって伝統的に導き出された結論 を計算する 方法である。」 [15]
1
+
1
=
1
{\displaystyle 1+1=1}
1
×
1
=
1.
{\displaystyle 1\times 1=1.}
異質な関係
異種関係 、つまり と が 異なる集合であるとします。関係 とその 逆の関係 の合成を使用すると、 ( 上 ) と ( 上) の同種関係が存在します 。
R
⊆
A
×
B
;
{\displaystyle R\subseteq A\times B;}
A
{\displaystyle A}
B
{\displaystyle B}
R
{\displaystyle R}
R
T
,
{\displaystyle R^{\textsf {T}},}
R
R
T
{\displaystyle RR^{\textsf {T}}}
A
{\displaystyle A}
R
T
R
{\displaystyle R^{\textsf {T}}R}
B
{\displaystyle B}
すべての に対してとなる ものが存在する 場合 (つまり、 は (左) 全関係 )、すべての に対して となるので は 反射関係 、またはとなり ます。ここで I は恒等関係です 。同様に、 が射影関係 である場合 、
この場合 二 機能性 関係に対しては、逆の包含が発生します 。
x
∈
A
{\displaystyle x\in A}
y
∈
B
,
{\displaystyle y\in B,}
x
R
y
{\displaystyle xRy}
R
{\displaystyle R}
x
,
x
R
R
T
x
{\displaystyle x,xRR^{\textsf {T}}x}
R
R
T
{\displaystyle RR^{\textsf {T}}}
I
⊆
R
R
T
{\displaystyle \mathrm {I} \subseteq RR^{\textsf {T}}}
{
(
x
,
x
)
:
x
∈
A
}
.
{\displaystyle \{(x,x):x\in A\}.}
R
{\displaystyle R}
R
T
R
⊇
I
=
{
(
x
,
x
)
:
x
∈
B
}
.
{\displaystyle R^{\textsf {T}}R\supseteq \mathrm {I} =\{(x,x):x\in B\}.}
R
⊆
R
R
T
R
.
{\displaystyle R\subseteq RR^{\textsf {T}}R.}
この合成は 、フェラー型の関係を区別するために使用され、
R
¯
T
R
{\displaystyle {\bar {R}}^{\textsf {T}}R}
R
R
¯
T
R
=
R
.
{\displaystyle R{\bar {R}}^{\textsf {T}}R=R.}
例
が の 国語 である 場合、 {フランス、ドイツ、イタリア、スイス} と {フランス語、ドイツ語、イタリア語} の関係が で 与えられる とします。
と は両方とも 有限 なので、行 (上から下) と列 (左から右) がアルファベット順に並んでいると仮定すると、 は 論理行列 で表すことが できます。
A
=
{\displaystyle A=}
B
=
{\displaystyle B=}
R
{\displaystyle R}
a
R
b
{\displaystyle aRb}
b
{\displaystyle b}
a
.
{\displaystyle a.}
A
{\displaystyle A}
B
{\displaystyle B}
R
{\displaystyle R}
(
1
0
0
0
1
0
0
0
1
1
1
1
)
.
{\displaystyle {\begin{pmatrix}1&0&0\\0&1&0\\0&0&1\\1&1&1\end{pmatrix}}.}
逆の関係は 転置 行列 に対応し 、関係合成は、和が 論理和 によって実装されている場合の 行列 積に対応します 。 行列には すべての位置に1が含まれますが、逆行列積は次のように計算されます。
この行列は対称であり、上の同次関係を表します。
R
T
{\displaystyle R^{\textsf {T}}}
R
T
;
R
{\displaystyle R^{\textsf {T}};R}
R
T
R
{\displaystyle R^{\textsf {T}}R}
3
×
3
{\displaystyle 3\times 3}
R
T
R
{\displaystyle R^{\textsf {T}}R}
R
R
T
=
(
1
0
0
1
0
1
0
1
0
0
1
1
1
1
1
1
)
.
{\displaystyle RR^{\textsf {T}}={\begin{pmatrix}1&0&0&1\\0&1&0&1\\0&0&1&1\\1&1&1&1\end{pmatrix}}.}
A
.
{\displaystyle A.}
同様に、 は の 普遍的な関係 であり 、したがって任意の2つの言語は、それらが話されている国(実際にはスイス)を共有しています。逆に、2つの特定の国が言語を共有しているかどうかという質問は、次のように答えることができます。
R
T
;
R
{\displaystyle R^{\textsf {T}}\,;R}
B
,
{\displaystyle B,}
R
;
R
T
.
{\displaystyle R\,;R^{\textsf {T}}.}
シュレーダールール
与えられた集合に対して、上のすべての 二項関係 の集合は 包含 関係によって順序付けられた ブール格子 を形成 する 。
補 集合 は包含関係を逆にすることを思い出すとよい。 関係の計算 [16]
では 、集合の補集合をオーバーバーで表すのが一般的である。
V
,
{\displaystyle V,}
V
{\displaystyle V}
(
⊆
)
.
{\displaystyle (\subseteq ).}
A
⊆
B
implies
B
∁
⊆
A
∁
.
{\displaystyle A\subseteq B{\text{ implies }}B^{\complement }\subseteq A^{\complement }.}
A
¯
=
A
∁
.
{\displaystyle {\bar {A}}=A^{\complement }.}
が二項関係である 場合、 は 逆関係( 転置 とも呼ばれる) を表すものとします 。このとき、シュレーダーの規則は
次のようになります。言葉で言えば、1つの同値関係は別の同値関係から得られます。つまり、第1または第2の因子を選択して転置します。次に、他の2つの関係を補完して並べ替えます。 [5] : 15–19
S
{\displaystyle S}
S
T
{\displaystyle S^{\textsf {T}}}
Q
R
⊆
S
is equivalent to
Q
T
S
¯
⊆
R
¯
is equivalent to
S
¯
R
T
⊆
Q
¯
.
{\displaystyle QR\subseteq S\quad {\text{ is equivalent to }}\quad Q^{\textsf {T}}{\bar {S}}\subseteq {\bar {R}}\quad {\text{ is equivalent to }}\quad {\bar {S}}R^{\textsf {T}}\subseteq {\bar {Q}}.}
この関係の合成の包含の変換は エルンスト・シュレーダー によって詳細に説明されたが、実際には オーガスタス・ド・モルガンが 1860年に初めてこの変換を定理Kとして明確に表現した。 [4] 彼は次のように書いている [17]
L
M
⊆
N
implies
N
¯
M
T
⊆
L
¯
.
{\displaystyle LM\subseteq N{\text{ implies }}{\bar {N}}M^{\textsf {T}}\subseteq {\bar {L}}.}
シュレーダーの規則と相補性を用いると、次のような関係包含における
未知の関係を解くことができます。
たとえば、シュレーダーの規則 と相補性により、 が得られ 、これは に よる の左残差 と呼ばれます。
X
{\displaystyle X}
R
X
⊆
S
and
X
R
⊆
S
.
{\displaystyle RX\subseteq S\quad {\text{and}}\quad XR\subseteq S.}
R
X
⊆
S
implies
R
T
S
¯
⊆
X
¯
,
{\displaystyle RX\subseteq S{\text{ implies }}R^{\textsf {T}}{\bar {S}}\subseteq {\bar {X}},}
X
⊆
R
T
S
¯
¯
,
{\displaystyle X\subseteq {\overline {R^{\textsf {T}}{\bar {S}}}},}
S
{\displaystyle S}
R
{\displaystyle R}
商
関係の合成が乗算の一種で積になるのと同様に、一部の 演算は 除算に相当し、商を生成します。ここでは、左残差、右残差、対称商の 3 つの商を示します。2 つの関係の左残差は、同じドメイン (ソース) を持つことを前提として定義され、右残差は同じコドメイン (範囲、ターゲット) を持つことを前提としています。対称商は、2 つの関係がドメインとコドメインを共有していることを前提としています。
定義:
残余:
A
∖
B
:=
A
T
B
¯
¯
{\displaystyle A\backslash B\mathrel {:=} {\overline {A^{\textsf {T}}{\bar {B}}}}}
右残差:
D
/
C
:=
D
¯
C
T
¯
{\displaystyle D/C\mathrel {:=} {\overline {{\bar {D}}C^{\textsf {T}}}}}
対称商:
syq
(
E
,
F
)
:=
E
T
F
¯
¯
∩
E
¯
T
F
¯
{\displaystyle \operatorname {syq} (E,F)\mathrel {:=} {\overline {E^{\textsf {T}}{\bar {F}}}}\cap {\overline {{\bar {E}}^{\textsf {T}}F}}}
シュレーダーの規則を用いると、は と等価である。 したがって、左残差は を満たす最大の関係である。 同様に、包含は と等価であり 、右残差は を満たす最大の関係である。 [2] : 43–6
A
X
⊆
B
{\displaystyle AX\subseteq B}
X
⊆
A
∖
B
.
{\displaystyle X\subseteq A\backslash B.}
A
X
⊆
B
.
{\displaystyle AX\subseteq B.}
Y
C
⊆
D
{\displaystyle YC\subseteq D}
Y
⊆
D
/
C
,
{\displaystyle Y\subseteq D/C,}
Y
C
⊆
D
.
{\displaystyle YC\subseteq D.}
数独 で残差の論理を練習することができます 。 [ さらに説明が必要 ]
フォーク演算子は、2つの関係 とを 融合するために導入されました 。 構築は投影に依存し 、 関係として理解されます。つまり、逆の関係があり 、 次に
(
<
)
{\displaystyle (<)}
c
:
H
→
A
{\displaystyle c:H\to A}
d
:
H
→
B
{\displaystyle d:H\to B}
c
(
<
)
d
:
H
→
A
×
B
.
{\displaystyle c\,(<)\,d:H\to A\times B.}
a
:
A
×
B
→
A
{\displaystyle a:A\times B\to A}
b
:
A
×
B
→
B
,
{\displaystyle b:A\times B\to B,}
a
T
{\displaystyle a^{\textsf {T}}}
b
T
.
{\displaystyle b^{\textsf {T}}.}
の フォーク は [18] で与えられる
c
{\displaystyle c}
d
{\displaystyle d}
c
(
<
)
d
:=
c
;
a
T
∩
d
;
b
T
.
{\displaystyle c\,(<)\,d~\mathrel {:=} ~c\mathbin {;} a^{\textsf {T}}\cap \ d\mathbin {;} b^{\textsf {T}}.}
関係の合成の別の形式は、一般的な - 項関係に適用される 関係代数 の 結合 演算です 。ここで定義される 2 つの 2 項関係の通常の合成は、それらの結合を取って 3 項関係にし、その後に中間の要素を削除する射影を実行することで得られます。たとえば、 クエリ言語 SQLには、 結合 (SQL) という演算があります 。
n
{\displaystyle n}
n
≥
2
,
{\displaystyle n\geq 2,}
参照
注記
参考文献
M. Kilp、U. Knauer、AV Mikhalev (2000) リース積およびグラフへの応用を伴うモノイド、アクトおよびカテゴリー 、De Gruyter Expositions in Mathematics vol. 29、 Walter de Gruyter 、 ISBN 3-11-015248-7 。