YONAPO RESEARCH
研究記録
MedDSL(仮称)

RESEARCH / RECORD

MedDSL(仮称)P1P1-a

P1-a:能力照合・有限予測の実装記録

原文 docs/research/12-p1-a-results.md

6 KB

GitHubで見る

版 be280c0

この文書の目次 4項目

実施日:2026-10-18。状態:実装済み・作成者草案との照合済み、独立確認前。実行契約 に従い、P1 の H01〜H06・H20 を実行しました。P1 全20件のうち残る13件、臨床評価、永続性全体の証明は未完了です。

実装した範囲

p1-request-draft-1 / p1-result-draft-1 を追加し、p1-finite-forecast-draft-1 の native handler で query_forecast を実行します。仕様実体の生バイトハッシュを handler に固定し、consumer の profile・仕様ハッシュ・操作と、各 artifact の版・ハッシュを照合します。未知能力や read_only の自己申告は、解釈する根拠にしません。

設計例の planned profile に付けた Markdown 草案のハッシュと、今回採用した機械可読 native 仕様のハッシュは別です。前者をそのまま実行可能とは扱わず、実行用 request は後者へ明示的に束縛しました。設計例の原ハッシュは変更していません。

有限モデル内の事象集合の積と、有理数の厳密な加算を実装しました。重みを正規化して修正したり、周辺確率を独立と仮定して掛けたりしません。同じ対象者でもモデル・標本空間・期間・報告文脈を暗黙に統合しません。

報告専用 snapshot に P0 の採用・訂正・human review を再利用し、元の生成元・未確認候補・原主張は入力に保持します。結果は入力・snapshot・artifact のハッシュと、台帳・assertion・review 参照を返します。原履歴の参照には原入力も保存する必要があります。確率1も forecast_probability のままで、臨床主張へ変換する演算・規則は持ちません。

未知能力、未解消の文脈内衝突、未採用、否定報告、未対応仕様、計算上限を分けます。未知能力は可視な保留・訂正済みの主張も対象とし、衝突は肯定・否定双方の根拠を保持します。共有予算で停止した一問の部分値は返さず、既に完了した別の回答は保持します。

実行結果

対象 結果 分母の意味
開発テスト 147/147 既存116件+P1-a追加31件。有限集合の全256事象対、確認時点・型・上限等を含む
P1-a 作成者草案 7/7条件、31/31 JSON、141/141必須パス H01〜H06・H20。API/CLI各2回、一致・再実行・入力保持
P0 回帰 22/22条件、37/37 JSON、221/221必須パス 元の P0 manifest・例を変更せず、API/CLI各2回で照合
独立確認・臨床性能 未実施 上記の草案との一致から推定しない

相関の例では Pr(A)=Pr(B)=3/5、Pr(A∧B)=3/10 です。確率1の確認済み報告と、同じモデルの未確認AI報告を対にし、後者は undetermined/null。元の P0 臨床問い合わせが変化しないことも検査しました。

基本例の必要 steps は11で、0〜10の全打切り点で値が null、11で完了します。二問・複数 view での共通予算も検査しました。世界64・事象64・8事象連言の境界では646 stepsで確率1を返し、64 artifact/query/view と63 bit整数も受け付け、超過は停止します。

4096 bitの中間値制限は防護として実装しましたが、この入力上限ではそこへ到達する合法入力を作れません。高々64個の63 bit分母の積は4032 bit以内、正の部分和は高々64なので丸め前の分子も4038 bit以内です。従って4096 bit超過を実入力で再現して検証済みとはしません。上限を拡大するときにこの評価も改訂します。

再現と実体の固定

python3 -m unittest discover -s tests
python3 scripts/research/evaluate-p1-a.py --cli --output data/research/p1-a/development
python3 scripts/research/evaluate-p0.py --cli --output data/research/p1-a/p0-regression
git diff --check

Python 3.14.4、標準ライブラリのみ。対象は3.11以降ですが、3.11での実行は未確認です。package.json は初期メタデータで、別のビルド手順はありません。

固定した実体 SHA-256
native 仕様の生バイト a918397c96ba9f6035b81c1d20839a544058f12adfbcb41f27df4328b9ad2704
P1-a manifest の生バイト 1fd1dc22d2e54907dd4e7b1339101c677606b99bf2c8c21b655f14b537fc0475
P1-a 検証の source bundle cf17baa0300465c900dfe090ca4fee1f54bacffb93c215a25640d6427bb852ec

source bundle は runtime の Python/仕様JSON、テスト、P1-a 評価スクリプト、実行契約の各生バイトハッシュの canonical digest です。具体的なファイル一覧・結果・環境は data/research/p1-a/development/results.json、P0 回帰は data/research/p1-a/p0-regression/、テストログは data/research/p1-a/unit-tests.txt に記録しました。検証時は 281e1f3 からの作業差分がある状態で、上表の bundle が実行した実体を固定します。文書と検証実体の変更を混同しません。

残る範囲と次の段階

実装したのは有限予測を読む一つの意味能力です。原入力を永続保存するストレージ、医学的な校正・モデル妥当性、連続確率、任意の意味モジュール、臨床ライブラリ・操作負担の実証は含みません。snapshot の kind・用途・参照は検査しますが、別リクエストや外部の臨床台帳との大域的な名前の所有権は検査しません。ハッシュは固定の証拠で、意味の正しさの証明ではありません。

次は P1-b(H07〜H12)。四項関係を、同じ事象に四つの役割が結び付く表現へ引き継ぎ、結合・内部事象の射影・否定・確認・訂正・複数根拠を照合します。P1-c のモデル被覆・合成、P1-d の全20条件はその後です。既存の P1 設計例・契約・依存ハッシュは保持しました。

P1-a

同じ区分の文書