レベルごとの演算子
演繹システムのパート分類(モジュラー/レイヤード設計・実装のため):
- 分野固有パート
- 論理パート(分野によらない共通パート)
分野固有パートは:
- 個体レベル
- 型レベル
論理パート
- 命題レベル
- 推論レベル
システムが単ソート〈single{- | }sort{ed}?〉だとして、型レベルの議論は除く。また分野はN算術とする。
共通して:
用語法が乱れていて
- 個体レベル: 項←→構文解析木←→項の構成図(呼び名なし)
- 命題レベル: 論理式←→構文解析木←→論理式の構成図(呼び名なし)
- 推論レベル: 推論図(証明図)←→構文解析木←→リーズニング図(証明図)
推論レベルになると、テキストによる式では表現が難しいので、図になる。
演算子:
- 個体レベル: +, ×, 単項-, (-)2, sqrt
- 命題レベル: ∧, ∨, ¬, ⇒, ∀, ∃
- 推論レベル: ;, , , ◇, □, Λ
定数(定数という言葉は誤解されるかも):
- 個体レベル: 個体変数ではない数値定数
- 命題レベル: 命題変数ではない基本{アトミック | 原子}論理式、個体変数は含んでよい。
- 推論レベル: 推論変数ではない基本{組み込み | プリミティブ}推論式、命題変数、個体変数は含んでよい。
「プリミティブなナントカ式」「ナントカ式のプリミティブ」がいいかも。
- 算術式のプリミティブ + 算術式の{オペレーター|演算子|コンビネータ}
- 論理式のプリミティブ + 論理式の{オペレーター|演算子|コンビネータ}
- 推論式のプリミティブ + 推論式の{オペレーター|演算子|コンビネータ}
どのレベルでもオペレーターがあり、オペレーターには必ずプロファイルがある。
- 算術オペレーターのプロファイル Nから構成される
- 論理オペレーターのプロファイル Propと集合から構成される
- 推論オペレーターのプロファイル 推論のプロファイルから構成される
(1)プリミティブ、(2)オペレーター、(3)オペレーターのプロファイル、この3つの概念とその定義をシッカリ追う。
リストの記法
- プレーンリストは丸括弧
- 連言と選言のマークは左肩に付ける。マーク付きリスト。
- マークではなくて区切り記号で区別する場合はブラケットにする。
- 無限リスト=族 でも同じ記法を使う。区切り記号による区別は使えないので、プレーンな族にマークを付ける。
- ∧(A1, ..., An) = [A1, ..., An]
- ∨(A1, ..., An) = [A1| ...| An]
- ∧(x∈X | A[x])
- ∨(x∈X | A[x])
- ∧() = T
- ∨() = ⊥
- ∧(x∈∅ | A[x]) = ∧() = T
- ∨(x∈∅ | A[x]) = ∨() = ⊥