情報数学 I
第八回 (2010年11月26日)
関係の応用
Martin J. Dürst
http://www.sw.it.aoyama.ac.jp/2010/Math1/lecture8.html
© 2005-10 Martin
J. Dürst 青山学院大学
今日の予定
- ミニテスト
- 前回の残りとまとめ
- 関係の種類、同値関係
- 推移的閉包
前回のまとめ
- 関係が直積集合の部分集合
- 関係の表現 (集合表現以外):
- 逆関係
- 関係の合成
A の中の関係 R
に対して次の性質がありうる:
- 反射的 (reflexive): xRx; x∈A ⇒
(x, x) ∈ R
- 対称的 (symmetric): xRy ⇒ yRx;
(x, y) ∈ R ⇒ (y,
x) ∈ R
- 推移的 (transitive): xRy ∧ yRz ⇒
xRz
- 反対称的 (antisymmetric): xRy ∧ yRx ⇒
x=y
反射的関係
(reflexive relation)
- 定義: 反射的関係 xRy において、全ての
x∈A の場合 (x, x) ∈
R である
- 確認の方法: 行列において、対角線は全て 1
- 例: =, ≤, 「割り切れる」、部分集合など
対称的関係
(symmetric relation)
- 定義: 対称的関係 xRy において、
全ての (x, y) ∈ R の場合
(y, x) ∈ R である
- 確認の方法: 行列が対角線に反射しても変更なし
- 例: =, 兄弟, 友達?? など
反対称的関係
(antisymmetric relation)
- 定義: 全ての x, y において xRy
∧ yRx ⇒ x=y であれば関係 R
は反対称的である
- 確認の方法:
行列において、対角線において反射的位置にある二つの真理値の内たかだか一つが真
- 例: <, ≤, 「割り切れる」など
- 対称的関係の反対ではない
- 対称的関係の反対は非対称的関係
(asymmetric relation)
推移的関係
(transitive relation)
- 定義: 全ての x, y, z において
xRy ∧ yRz ⇒ xRz であれば関係
R は推移的である
- 確認の方法: R を自分と合成させ、結果が
R であれば推移的
- 例: ≤, ≥, 子孫、先祖、「割り切れる」など
同値関係
- 反射的、対称的、かつ推移的な関係を同値関係
(equivalence relation) と言う
- 同値関係によってある元 a
の関係する全ての元の集合が定義できる
- この様な集合を同値類 (equivalence class)
と言い、[a] とも書く
- a は [a] の代表元と言う
- 同値関係によって A の分割 (partition)
ができる
- 直積集合も同値関係である
推移的閉包
- 関係 R
を結果が変わらなくなるまで自分と合成する結果を推移的閉包
(transitive closure) と言う。
R∘R∘R∘...
- 「変わらなくなるまで繰り返す」は情報テクノロジーにおいてよく使われる手法である
int change = 1;
while (change) {
change = 0;
/* process data */
if (/* data changed */)
change = 1;
}
まとめ
- 関係には様々な性質がありうる
(反射的、対称的、反対称的、推移的)
- 関係の性質の組み合わせによって、更に特殊な関係になる
(例: 同値関係)
宿題
(提出不要)
関係の性質 (反射的、対称的、推移的、反対称的)
の有無の組合せを一つ一つ調べ、できるだけ小さい具体例
(例えば {a, b, c} の中の関係とか
{a, b, c, d}
の中の関係として) を作りなさい。