2007年12月 1日 「理論編-6 意味と真理値」 を読む >> 目次に もどる
2012年12月16日 補遺  


 「理論編-6」 では、TM (T字形 ER手法) の生成規則・指示規則の前提になっている「『真理関数』 と 『2値 ロジック (真偽の二値のみを扱う ロジック)』」 を まとめました。

 「真理関数」 とは、真や偽といった値 (真理値) を入出力にした関数のことを云います。「真理値表」 とは、合成命題の真偽と、それを構成している単一命題の真偽を まとめた 「表」 です。「理論編-3」 で、「経験論的な言語 L」 の語彙として、「論理学の語句」 と 「観察術語」 を示したました。「論理学の語句」 のなかで、以下の否定語・接続語が、ふつう、「論理定項」 とよばれています。

  (1) 「〜 でない」 (論理的否定、『¬』 という記号を使う)。
  (2) 「および」 (連言とか論理積ともいい、『∧』 という記号を使う)。
  (3) 「または」 (選言とか論理和ともいい、『∨』 という記号を使う)。
  (4) 「〜 ならば」 (仮言ともいい、『⇒』 という記号を使う)。

 いま、「真」 を 「T」 として、「偽」 を 「F」 として表せば、次の真理値表が得られます。

   ┌─┬─┬───┐  ┌─┬─┬───┐  ┌─┬──┐
   │p│q│p∧q│  │p│q│p∨q│  │p│¬p│
   ├─┼─┼───┤  ├─┼─┼───┤  ├─┼──┤
   |T│T│ T │  │T|T│ T │  |T| F|
   ├─┼─┼───┤  ├─┼─┼───┤  ├─┼──┤
   │T│F│ F │  │T│F│ T │  │F│ T│
   ├─┼─┼───┤  ├─┼─┼───┤  └─┴──┘
   │F│T│ F │  │F│T│ T │
   ├─┼─┼───┤  ├─┼─┼───┤
   │F│F│ F │  │F│F│ F │                 
   └─┴─┴───┘  └─┴─┴───┘

 ちなみに、「⇒ (ならば)」 は、「¬」 と 「∨」 を使って記述できます。つまり、「p⇒q」 は 「¬p∨q」 と同値です。

 「論理的に 『真』 な命題」 とは、合成命題を作っている・すべての単一命題の論理的可能性に対して、「つねに」、「真」 である命題を云います。たとえば、「p⇒(p∨q)」 という合成命題は、以下の真理値表から判断できるように、「真」 です。そういう命題のことを 「恒真命題 (あるいは、トートロジー)」 と云います。

   ┌─┬─┬───────┐
   │p│q│p⇒(p∨q)│
   ├─┼─┼───────┤
   |T│T│   T   │
   ├─┼─┼───────┤
   |T│F│   T   │
   ├─┼─┼───────┤
   |F│T│   T   │
   ├─┼─┼───────┤
   |F│F│   T   │
   └─┴─┴───────┘

 ロジック (論理学) ──あるいは、「科学」 と云ってもいいのかもしれないのですが──は、そういう トートロジー を 「定理」 として作ることでしょうね。

 さて、事業過程を対象にすれば、こういう ロジック は、トートロジー を作るのではなくて、たとえば、真理値表を使って、「事態の成立・不成立」 を調べることになるでしょう。たとえば、p と q を、それぞれ、「従業員」 と 「部門」 だとすれば、「従業員と部門の対照表 (真理値表)」 は、その真理値表が構成する 「意味」 (ここでは、「配属」 という事態) のなかで、関与・非関与を示します。p が 「T」 で、q が 「F」 ならば、「従業員」 が成立しても、「部門」 が成立しないということを示します。すなわち、「配属されていない従業員」 がいることを示しています。
 2項関係では、4つの場合分け{(T, T), (T, F), (F, T), (F, F)} を考えることができますね。

 TM は、「情報 (帳票、画面、レポート などの『語-言語』)」 を対象にして、こういう命題の 「論理演算」 をやる テクニック です。言い換えれば、「情報」 を合成命題として考えて、合成命題を単一命題にばらして、合成命題の 「構成」 を調べる、という テクニック です。

 「論理演算」 では、事前にきめられた語彙を前提にして、文を作りますから、当然ながら、以下の 2つの規則を守らなければならないでしょう。

  (1) 事前に定義された語彙のほかの ことば を、演算の途中で持ち込んではいけない。

  (2) 文の生成規則に従って構成された命題が、どのような現実的事態を指示しているのかを験証しなければならない。

 この規則を、「経験論的な言語 L」 のなかで、「真理関数 (論理演算)」 の規則として、本編で確認した次第です。 □

 



[ 補遺 ] (2012年12月16日)

 TM は、2値論理を前提にしています──言い替えれば、入力されない値を演算対象としない、という前提です。
 代数言語 L では、「項 (term)」 は次の様に定義されます。

 (1) 変数 x, y, z,・・・ は項である。

 (2) 変数 x, y, z, ・・・ を項として、関数 f を変数とするとき、f (x), f (y), f (z),・・・ は項である。

 (3) 定数は項である。

 TM では、一つの主題 (entity) は (2) の多項式として立てられます。例えば、「従業員」 という主題に関して、次のような構成条件の多項式が定立されます [ すなわち、f (x, y, z,・・・). ]。

  { 従業員番号、従業員名称、住所、・・・}.

 それぞれの項の値がすべて充足されるとは限らない、値が任意入力の項も存するでしょう。値が充足されていない状態として null を使うのが普通です。そういう充足されない値は、TM では、演算対象にしない。というのは、null に関して 「F-真 (事実的真)」 を験証するのが困難だから。勿論、4値論理を使って、null を演算対象にしてもいいのですが──たとえば、「yes, no, applicable, unapplicable」 というふうな 4値を考えてもいいのですが──、値を入力されなかった項を演算対象にする事が effective であるとは私には思えない。したがって、モデル(形式的構成)上、TM では、null を排除します── null を排除するためには、TM 上、セット (形式的サブセット) と クラス (みなし entity) の 2つのやりかたが用意されています。

 モデル 技術では、「構文論が先で、意味論は後」 というやりかたが正当な手続きです。ここで云う 「意味論」 とは、充足された値の真・偽を判断する手続きです。構文論上、(null として) 空集合を認めてもいいのですが──なぜなら、空集合は、すべての集合の部分集合だから──、意味論上、undefined (部分集合) と unknown (未知数) という 2つの状態 (のいずれか) を指すので、値ではない事を覚えておいて下さい。そして、3値論理では、null の論理否定は null である事も覚えておいて下さい。市販されている リレーショナル・データベース は 3値論理を前提にしています [ ただし、null を認めないで 2値論理を使う事もできます ]。したがって、3値論理を使うのであれば、null に対して論理否定を使う事は注意しなければならない。

 聞くところによれば──又聞きですが──、WWW 上で、「佐藤正美さんは null 撲滅主義の旗手」 だとか 「佐藤正美さんは null にこだわりすぎる」 という流言があるそうですが、私は、「2値論理を前提にした形式的構造を使うので、null を形式上使わない」 と言っているだけであって、かつ、「3値論理を前提にして null を使うなら、論理否定には注意しなさい」 と警告しているだけであって、こんな事は ロジック では当然の事でしょう。そういう流言を駄弁る人たちの 「論理の常識」 を私は疑わざるを得ない。





  << もどる HOME すすむ >>
  目次にもどる