判断のなかでもっとも基本的な判断は 肯定判断 (affirmative judgement / O 型判断) です。 すでに表明されている肯定判断を打ち消すときに、 否定判断 (negative judgement / X 型判断) が使われます。 判断集合を訂正するには、間違った判断を取り除き、 正しい判断を追加すればよいので、原理上、 肯定判断と否定判断で、どのような訂正でも表現できますが、 判断のなかの特定の項目だけを訂正するという 訂正判断 (corrective judgement / C 型判断) があると便利な場合があります。 訂正判断は 変更判断 (changing judgement) とよばれることもあります。
判断記号は、つぎのように要約できます。
- 肯定判断は単数のみで、無標の
|--
と書く。 - 否定判断は単数の
|-x
と複数の|-xx
がある。 - 訂正判断は単数の
|-c
と複数の|-cc
があり、 訂正後の項目の先頭に+
をつけて表示する。
甲州計算機バーラ実装のバージョン 0.92 には、 訂正判断は実装されていません。 このノートは、訂正判断の案を検討するためのものです。
項目 /x
/y
からなる判断種 P
の肯定判断として、
つぎの判断を考えましょう。
|-- P /x 1 /y 20
この判断の /y 20
が間違っており、/y 30
に訂正するとします。
そのためには、上の判断を否定して、正しい肯定判断を追加します。
|-x P /x 1 /y 20
|-- P /x 1 /y 30
この否定と肯定の組み合わせは、訂正判断という形で、ひとまとめにして書けます。
肯定判断は無標の |--
、否定判断は |-x
であったのに対して、
訂正判断は |-c
で表現し、訂正後の項目名の先頭に +
を付加します。
|-c P /x 1 /y 20 +/y 30
+/y
のような項目名は訂正判断のなかだけで使えます。
この訂正判断は、つぎの計算式を使って求めることもできます。
|=c P : source P /x /y
| eq /x 1 /y 20
| add +/y ( /y + 10 )
訂正判断に訂正前の項目がなければ、その値がなんであっても、
/y 30
に訂正するという意味になります。
|-c P /x 1 +/y 30
否定判断と訂正判断が、ちょうど、ひとつの組に作用するのか、 0 個以上の複数の組に作用するのかで分類できると、 安全にデータを変更することにつながります。 というのは、ひとつの組のみに作用することを明示することで、 間違って複数の組が変更されることを防げるからです。
ここでは、複数の組を対象とするときに
|-xx
のように記号を重ねて表現するとしましょう。
単数否定 |-x
の代わりに複数否定 |-xx
を使い、
単数訂正 |-c
の代わりに複数訂正 |-cc
を使います。
|-x P /x 1
は、/x 1
である組が複数あると、訂正時エラーになりますが、
|-xx P /x 1
は、/x 1
の判断が複数あっても否定 (削除) が成功します。
|-c
と |-cc
についても、同様の考え方とします。