発言の数理モデル

次の2つのタイプの発言を考える。

  1. ~ は成立するぞ。
  2. ~ は成立しないぞ。

「~」の部分は、等式・不等式などの命題。構文をキチンと約束すれば「~」の部分は論理式だとしてよい。$`\newcommand{\mrm}[1]{\mathrm{#1}}`$

発言の定式化〈数理モデリング〉として、次の3つの構成素を持つ構造を考える。

  1. 変数宣言(データベースなら、カラム名付きテーブルスキーマ)
  2. 論理式(変数宣言で宣言されてない変数は含まない)
  3. 判断(肯定または否定)

この構造を、三つ組 $`(D, \varphi, J)`$ で表す。混乱を避けるため、必要なら論理式を山形括弧で囲む。$`J \in \{\mrm{Holds}, \mrm{NotHold} \}`$ とする。

例 1

三つ組 $`(D, \varphi, J)`$ を次のように定義する。

  • $`D := (x:{\bf R}, y:{\bf R})`$
  • $`\varphi := \langle (x + y )^2 = x^2 + y^2 \rangle`$
  • $`J := \mrm{NotHold}`$

つまり、三つ組 $`(D, \varphi, J)`$ は、

$`\quad ( (x:{\bf R}, y:{\bf R}), \langle (x + y )^2 = x^2 + y^2 \rangle, \mrm{NotHold})`$

現実世界の実際の発言に翻訳すれば:

  $`x`$ を実数、$`y`$ を実数とするとき、
  $`(x + y )^2 = x^2 + y^2`$
  は成立しないぞ。

例 1 の解釈

解釈の手順:

  1. 変数宣言から直積集合 $`{\bf R}\times {\bf R}`$ を作る。
  2. 論理式から、次の関数 $`p`$ を作る。
    $`\quad p := \lambda\, (x, y)\in {\bf R}\times {\bf R}.(\, (x + y )^2 = x^2 + y^2 \,)`$
  3. (メタレベルの)不等式(むしろ非等式) $`p \ne \mrm{True}_{{\bf R}\times {\bf R}}`$ を設定する。

論理の用語では、集合 $`{\bf R}\times {\bf R}`$ を論域、関数 $`p`$ を述語と呼ぶ。$`\mrm{True}_{{\bf R}\times {\bf R}}`$ は、論域 $`{\bf R}\times {\bf R}`$ 上の定数値関数である。三番目のメタレベルの不等式とは、単に関数を比較しているだけで、なんら特殊なことではない。

もとの発言のなかに、命題(等式)と判断(成立しないぞ)が含まれるが、その発言の解釈・判断は、もう一段メタレベルが上がる(「メタレベル」という言葉にビビらないこと!)。態度としては:

  1. 情報・知識の受け手として $`p \ne \mrm{True}_{{\bf R}\times {\bf R}}`$ を信じる。
  2. 情報・知識の検証者として $`p \ne \mrm{True}_{{\bf R}\times {\bf R}}`$ を無条件には信じないで吟味する。
例 2

三つ組 $`(D, \varphi, J)`$ を次のように定義する。

  • $`D := (x:{\bf B}, y:{\bf B})`$
  • $`\varphi := \langle (x + y )^2 = x^2 + y^2 \rangle`$
  • $`J := \mrm{NotHold}`$

つまり、三つ組 $`(D, \varphi, J)`$ は、

$`\quad ( (x:{\bf B}, y:{\bf B}), \langle (x + y )^2 = x^2 + y^2 \rangle, \mrm{NotHold})`$

現実世界の実際の発言に翻訳すれば:

  $`x`$ をブール値、$`y`$ をブール値とするとき、
  $`(x + y )^2 = x^2 + y^2`$
  は成立しないぞ。

例 2 の解釈

解釈の手順:

  1. 変数宣言から直積集合 $`{\bf B}\times {\bf B}`$ を作る。
  2. 論理式から、次の関数 $`p`$ を作る。
    $`\quad p := \lambda\, (x, y)\in {\bf B}\times {\bf B}.(\, (x + y )^2 = x^2 + y^2 \,)`$
  3. (メタレベルの)不等式(むしろ非等式) $`p \ne \mrm{True}_{{\bf B}\times {\bf B}}`$ を設定する。

以下同様。

何を学ぶか

このような方法で発言と解釈の分析ができる。それだけでなく、自分が発言するとき、あるいは自分が発言を受け取る側のとき、このような数理的構造が背後にあることを意識すると、正確な発言や正確な解釈に役立つだろう。