演繹システムからリーズニングシステムへ

演繹システムの議論で、知識ベースの管理やダイナミズムの考慮が決定的に欠けていたと思う。知識ベースを $`\mathscr{K}, \mathscr{L}`$ などで表し、常に考慮する。知識ベースは、ハイパードクトリンやインスティチューションの生成系だと考える。生成される構造は $`\mathscr{K}^*`$ と書く。

知識ベースは、ライブラリや組織化・配布形態であるパッケージ/モジュールと考える。知識ベースに対する操作は:

  1. 合併する。
  2. 分割する。
  3. キーとなる名前をリネームする。
  4. 知識ベース自体の名前をリネームする。
  5. 知識ベースにアイテムを追加する。
  6. 知識ベースからアイテムを削除する。
  7. その一部をまとめて指標やデビジョンを作る。
  8. 組織構造を変更する。
  9. アイテムを検索する。

これに関して次の疑問が出てくる。

  • アイテムとは何か?
  • 名付けられる対象と名付け方式は?
  • 組織構造とは何か?

文法も問題になる。

  • 構文木は、リーフをアトムと呼ぶ。例えば、論理式のアトム=原子論理式=述語呼び出し、算術式のアトム=原子算術式=数値リテラル、バンチのアトム=原子バンチ=論理式。
  • 構文木のリーフ以外のノードの付けられた“値”がコネクティブ。論理式のコネクティブ=命題コネクティブ。算術式のコネクティブ=算術演算子=数値コネクティブ。バンチのコネクティブ=論理式コネクティブ ←アリャリャ!

文法は、アトム変数とコネクティブを提供する。アトム変数への代入で“構文的に定数な”構文木が得られる。バインダーでバインドすることによって“構文的に閉じた”構文木が得られる。自由変数/束縛変数という概念は普遍的で、どの文法でも使える。

  • 型項文法: アトム変数は型変数。リテラルは型固有名。
  • 関数項文法: アトム変数は個体変数〈{object | individual} variable〉。リテラルは個体リテラル。
  • 命題文法: アトム変数は述語変数。(「命題変数」は真偽値変数)リテラルは固有述語記号。
  • 論理バンチ文法: アトム変数は論理式変数。リテラルは固有論理式記号(例、T、⊥)。コネクティブは区切り記号。区切り記号は $`{^\lor,}`$ など。
  • 導出項文法: アトム変数は導出変数〈ラベル〉。リテラルは固有導出記号(例:!_P)コネクティブは結合、ペアリングなど。
  • リーズニング項文法: アトム変数はリーズニング変数〈ラベル〉。リテラルは固有リーズニング{記号 | 名}。コネクティブは結合、積、ペアリングなど。