非有非無 端子 — 「不明」 と 「不適用」 を 分けて 描く

STEP 1449 · chat-Claude thread arc (β) · Rei-AIOS · 2026-08-27

問題

あなたは 学生 A の「テストの 得点」 を 尋ねる。 3 つの 別状況を 考える:

  1. 「95 点」 — 得点 は 判明
  2. 「まだ 採点が 済んでいない」 — 得点 は 不明 (未知)
  3. 「学生 A は そのテスト を 受けていない」 — 得点 という 問い自体が 立たない (不適用)

普通の 教材 UI は (2) と (3) を 同じ 「-」 「N/A」 「NULL」 で 表示する。 これは 致命的。 (2) は 「後で 埋まる」、 (3) は 「永遠に 埋まらない」 だからだ。

chat-Claude thread arc (β) 直言:
NULL や Unknown は 既存ですが、 四つ目の 状態 = そもそも 端子が 立たない (問い 自体が 不成立) を 未知と 分けて 描く 実装は 薄い。 不明 と 不適用 の 区別は、 教材で 致命的に 効きます。

4 状態

状態 意味 D-FUMT₈ 読み方
INSTANTIATED 端子 存在、 値/接続 判明 TRUE (1) or FALSE (0) 「95 点だった」 「試験 に 落ちた」
UNKNOWN 端子 立つが 値 不明 NEITHER (-1) 「まだ 採点が 済んでいない」 「今週中に 判明」
OPEN 端子 立つが 接続 開放 BOTH (2) 「採点 されたが 通知先が 決まっていない」
NON_EXISTENT 端子 自体が 立たない (問い 不成立、 非有非無) ZERO (4) 「学生 A は そのテスト を 受けていない」

具体例 12 種

教育 (数学 テスト)

INSTANTIATED「学生 A の 数学 T1 の 得点 = 95 点」
UNKNOWN「学生 A の 数学 T1 の 得点 = まだ 採点 中」 (来週 判明)
OPEN「学生 A の 数学 T1 の 得点 = 採点済、 但し 通知メール 未送」
NON_EXISTENT「学生 A の 数学 T1 の 得点 = A は 数学 T1 を 受験していない」 (問い が 立たない、 永遠に 埋まらない)

医療 (検査結果)

INSTANTIATED「患者 X の 血液 検査 hemoglobin = 14.2 g/dL」
UNKNOWN「患者 X の 血液 検査 hemoglobin = 検査 依頼済、 結果待ち」
OPEN「患者 X の 血液 検査 hemoglobin = 結果出た、 但し 主治医 未確認」
NON_EXISTENT「男性 患者 X の 妊娠検査結果 = 該当項目が 生理的に 存在しない

アンケート (回答)

INSTANTIATED「回答者 R の Q1 (あなたの 職業) = 「教師」」
UNKNOWN「回答者 R の Q2 (満足度) = 回答 欄 空白、 再送 予定」
OPEN「回答者 R の Q3 (自由記述) = 「あとで 書き加えます」」
NON_EXISTENT「回答者 R の Q5 (お子様の 名前) = R は 子供が いない

混同 の 帰結 (なぜ 分ける 必要が あるか)

Rei-AIOS で これを 混同すると 起きること:

Rei-AIOS 実装 (STEP 1448 connector-graph)

この 4 状態 は STEP 1448 で 型 level に 実装済み:

export type NodeState =
  | 'INSTANTIATED'
  | 'UNKNOWN'
  | 'OPEN'
  | 'NON_EXISTENT';    // ★ chat-Claude #3 「非有非無 端子」

Node と Port の state field で 4 状態 を 型 level で 表現。 混同 は 型 level で 検出可能 (「NULL」 として マージ すると コンパイル エラー)。

詳細: src/aios/connector-graph/types.ts

Quiz (自己 verify)

Q1: 「未回答の アンケート項目」 は どの 状態?

UNKNOWN (回答者 に 再送 で 決着可能)。
但し 「回答者 が 該当しない 項目」 (例: 未婚 者 に 「配偶者 の 名前」) は NON_EXISTENT

Q2: 「ネットワーク障害 で 取得できていない サーバ 応答時間」 は?

UNKNOWN (障害 復旧 で 再測定 可能)。
但し 「サーバが 存在しないIP へ の ping 時間」 は NON_EXISTENT

Q3: 「明日の 天気予報」 は?

UNKNOWN (時間経過 で 決着、 これは STEP 1448 の time connector と 結合すれば 満期化)。

Q4: 「明日 起きた イベント X の 詳細」 (まだ 起きていない イベント)

NON_EXISTENT (問い 自体が 未来 に 依存、 現時点 で 立たない)。
イベント が 起きたら INSTANTIATED に 遷移、 起きなければ NON_EXISTENT の まま。

Honest scope

関連