2002年 4月14日 作成 | 反射性・対称性・移行性 | >> 目次 (作成日順) |
2007年 6月16日 補遺 |
まず、「真理集合」 という考えかたを理解してください。
(1) 従業員の集合 A = {x1, x2, x3 }
そして、命題関数 [ 関係の論理 ] として、R (x, y) を考えてみます。
直積 (A × B) のなかで、「真」 ならしめる順序対の集合を以下とします。 この集合 α のことを R (x, y) の 「真理集合 (true set)」 あるいは 「解 (solution)」 といいます。
直積の任意の エレメント (x, y) について、以下の 2つの 「関係」 を考えてみます。
R (x, y) と S (x, y) のそれぞれの真理集合を α と β とすれば、「関係の論理法則」 として以下が成立します。
もう、以上の記号列を読むことができるでしょう (記号列を観ても、拒否反応は起こらないでしょう)。
さて、関係の論理を扱うときに、以下の関係を覚えておけばよいでしょう。
汎関係・零関係・逆関係・連鎖・遺伝的は、次回、解説します。
反射性は R (x, x) ですから、2項 (x, y) として考えれば、x = y のことです。
さて、反射性・対称性・移行性の論理否定を作ってみましょう。
ここで注意しなければならない点は、「¬」 記号の位置です。 ¬{ ∀x ∀y [ R (x, y) ⇒ R (y, x) ] } ≡ ∃x ∃y ¬[ ¬R (x, y) ∨ R (y, x) ] ≡ ∃x ∃y [ R (x, y) ∧ ¬R (y, x) ].
さて、「順序対」 は、どのような関係として記述できるでしょうか。「順序対」 というのは、以下の 2つの関係を両立している関係です--具体的に (1, 2) という順序対を想像して考えてみてください。 ちなみに、直積集合を使って データ 構造を扱おうとした セット・アット・ア・タイム (RDB が実現している データ 演算) は、移行性を厳密には導入できなかったので、( RDB の生みの親である)コッド 博士 (Codd E.F.) は、-- R (x, y) のなかの R は Relation ですが-- R を Relation (関数、あるいは関係の論理) として厳密に扱わないで、Relationship と言ってよい、としました。 ところが、「Relation ≒ Relationship」 という扱いが、後々、世間では、大混乱を起こす原因になったのです。というのは、「RDB の テーブル 構造を ER図 (Entity-Relationship 図) を使って表現すれば、visibility を実現した図式になる」 というふうな間違いが起こってしまったのです。そのために、ER図として、「従業員の データ 集合のなかに部門 コード を挿入する」 という間違いが罷り通るようになってしまいました-- ER という概念では、従業員の entity のなかに部門 コード を挿入してはいけない [ ただし、R (x, y) を関数として扱うなら、「従業員の データ 集合のなかに部門 コード を挿入する」 ことは正当ですが、ただ、べつの大きな問題点が起こります--これについては、後日、説明します。] 次回は、汎関係・零関係・逆関係・連鎖・遺伝的を説明します。 □ |
[ 補遺 ] (2007年 6月16日)
この エッセー で確認したかった点は、以下の 2点です。
(1) Relation (関係) と Relationship (関連) 「関係の論理 (aRb)」 は、シュレーダー や ド・モルガン や パース が研究してきて、現代では、述語論理のなかに組み入れられています。「aRb」 は 「a は、b に対して、関係 R にある」 と読み、数学では、R (a, b) として考えて、関数 f (x, y) と同値です。つまり、「関係」 は、関数として考えるということです。言い換えれば、個体 a も個体 b も変項として、関係 R を一次的とみなす関係主義の考えかたです。いっぽう、「関連」 は、個体を一次的として、関係は二次的とする実体主義の考えかたで、どちらかといえば、日常言語の用語です。そして、ふだんの生活のなかでは、まず、個体を 「認知 (直知)」 するほうが自然でしょうね。しかし、いざ、個体を定義しようとすれば、なかなか、難しい。たとえば、「時計」 を例にすれば、「時計」 を ひとつの個体として認知するのか、それとも、「時計」 は最終組立物であって、文字盤や針などを個体として認知するのか、さらに、文字盤や針などは加工品であって、(それらの材料たる) 鉄・真鍮を個体として考えるのかは、文脈次第でしょうね。言い換えれば、「物は高次の構成物」 であって、定義できないので、「無定義語 (変項)」 として扱い、それらの変項を一義に定立できる関数があるとするのが数学的な考えかたです。 関係を関数として扱えば、変項のあいだで、「並び」 が問われます。言い換えれば、変項を並べるために関数を使いますが、関係には、「並び」 が問われない事態--すなわち、対称性--も起こります。たとえば、2項関係 R (a, b) として、以下の 2つの関係を考えてみて下さい。
(1) 父親である
(1) では、もし、「父親である (a, b) -- a は、b に対して、父親である」 を 「真」 とすれば、R (b, a) -- b は、a に対して、父親である--は 「偽」 となります。たとえば、「佐藤正美は佐藤敦の父親である」 が 「真」 であれば、「佐藤敦は佐藤正美の父親である」 は 「偽」 です。この関係の性質が非対称性 [ R (a, b) ≠ R (b, a) ] です。 |
<< もどる | HOME | すすむ >> | |
ベーシックス |