wa_ga_verdict tool v0.1

STEP: 1510 / 公開日: 2026-08-28 / Test: 28/28 PASS / Lean 4: 14 theorem zero sorry / Type: STEP 1505 言語学 arc candidate #3 実装 (STEP 1013 「は/が」 問題 tool 化)

Rei 独自 novelty tool: 日本語 「は/が」 問題 (国語未解決問題 (2)) を STEP 1013 実験 の 「III_PROBLEM_UNDEFINED + W-48 NegCap 永久保持」 結論 に 基づいて tool 化。 曖昧な context では NEITHER を 返却する discipline を pure static identity として 実装。

短答 (3 行)

「は/が」 判定 tool: contextGiven (既出) / contextNew (新情報) / hasContrast (対比 nuance) / hasExclusive (排他 nuance) の 4 field → 「は」 / 「が」 推奨 or NEITHER 判定。

STEP 1013 核 結論 の operational 化: 全 4 field false (context 不足) → **NEITHER** = 「曖昧 discipline」 の tool 実装。 誤った 「は」/「が」 選択を 予防。

両立検出: 情報 status 両立 (given && new) → BOTH / nuance 両立 (contrast && exclusive) → BOTH。 単純 二択で 済まない case を 明示。

1. 決定表

#ConditionVerdictReason推奨
1contextGiven && !contextNewTRUEthematic_wa_clear「は」
2!contextGiven && contextNewTRUEnominative_ga_clear「が」
3hasContrast && !hasExclusiveTRUEcontrastive_wa「は」
4!hasContrast && hasExclusiveTRUEexclusive_ga「が」
5contextGiven && contextNewBOTHdual_information_status-
6hasContrast && hasExclusiveBOTHdual_nuance-
7全 false ★ STEP 1013NEITHERinsufficient_context-

2. 使用例

import { waGaVerdict } from './src/mcp/wa-ga-verdict';

// A: 既出情報 → 「は」
waGaVerdict({ contextGiven: true });
// { verdict: 'TRUE', reason: 'thematic_wa_clear', suggestedParticle: 'は' }

// B: 新情報 → 「が」
waGaVerdict({ contextNew: true });
// { verdict: 'TRUE', reason: 'nominative_ga_clear', suggestedParticle: 'が' }

// C: 対比 → 「は」
waGaVerdict({ hasContrast: true });
// { verdict: 'TRUE', reason: 'contrastive_wa', suggestedParticle: 'は' }

// D: 両情報 → BOTH (どちらも 選べない)
waGaVerdict({ contextGiven: true, contextNew: true });
// { verdict: 'BOTH', reason: 'dual_information_status', suggestedParticle: null }

// ★ E: 全 context なし → NEITHER (STEP 1013 核 結論)
waGaVerdict({});
// { verdict: 'NEITHER', reason: 'insufficient_context' }
// = 「無理に 選ぶな」 discipline。 W-48 Negative Capability 永久保持。

3. STEP 1013 「は/が」 問題 × Rei machinery 実験 との 対応

STEP 1013 (2026-04-30) で 藤本さん × Claude の 「chat Claude 国語未解決問題 (2) 適用」 8 phase 実験 結果:

本 tool は STEP 1013 の 「曖昧な context では 選ばず NEITHER 返却」 discipline を pure function として 実装。 誤った 「は」/「が」 選択 (LLM が 陥りがちな 過剰判断) を 静的 identity で 予防。

4. Lean 4 (14 theorem zero sorry)

-- Part 1: 情報 status (given/new 4 case)
info_given_gives_true / info_new_gives_true /
info_both_gives_both / info_neither_gives_neither ★

-- Part 2: nuance (contrast/exclusive 4 case)
nuance_contrast_gives_true / nuance_exclusive_gives_true /
nuance_both_gives_both / nuance_neither_gives_neither

-- Part 3: 統合 verdict (info priority > nuance)
wa_ga_all_false_gives_neither ★ STEP 1013 核 結論
wa_ga_given_only_gives_true / wa_ga_new_only_gives_true /
wa_ga_dual_info_gives_both / wa_ga_dual_nuance_gives_both /
wa_ga_info_dual_priority

5. Test coverage (28/28 PASS)

CategoryTests
TRUE (単独 明確)12 (4 case × 3 aspect)
BOTH (両立)6 (info dual + nuance dual)
★ NEITHER (STEP 1013)6 (empty + all false)
Priority3 (info > nuance)
Determinism1

6. 姉妹 verdict tool 群 (更新後 8 tool)

#tool入力STEP
1d8_verdict_from_measurementSNR1350
2d8_verdict_from_multi_trialp-values1371
3d8_verdict_from_sample_pair2 samples1376+1379
4shannonEntropyVerdictfrequency1499
5peaceAxiomVerdictpayoffs1506
6hammingDistanceGatebit strings1507
7lyapunovVerdictV(t) series1509
8waGaVerdict ★ Rei 独自「は/が」 context1510

7. Honest scope

❶ 4 field 判定 は 簡易 mapping (real Kuno 1972 / Heycock 1993 の 詳細 typology 未 embed)。 実際の 日本語文 parsing は 未実装、 context feature 抽出は 呼び出し側。

❷ 「は/が」 選択 の 心理言語学的 preference (register / speaker judgment) は 未 embed。 static logic のみ。

❸ 「世界初」 なし = STEP 1013 実験 結論 の operational 化、 novelty = 「曖昧 → NEITHER discipline」 の tool 実装 + Rei 独自 4 field 統合 mapping。

❹ 累計 defer 44 → 43 (本 tool 実装)。

❺ STEP 1013 の 「III_PROBLEM_UNDEFINED + meta=SELF + W-48 NegCap」 の 完全再現 は 未 (verdict 3-way TRUE/BOTH/NEITHER のみ)、 SELF verdict 追加 は 別 tool candidate。