日本語 · English(未訳)

ADR-48: split の親受理の拡張——実効パーティション規則(F109)

判断: split の親と by: 単位の受理を、窓の出自(生成語の別)でなく性質で定める—— 規則マーカー由来の実効パーティション(I5 の網羅・無重複が立つ、覆域註釈のない segmentBy 製 窓列)をパーティション窓と同格に受ける(F109。40-examples/11 の実測で 4-4-5 会計暦の素直な表明 isoYear split (…) by: isoWeek が型で弾かれると判明——さらに標準 week 自体が segmentBy 製 のため標準窓への split すら書けなかった。候補設計 draft §1.29=4 視点並列検証済み・設計者裁定 2 件〈2026-08-17=総和検査のエラー昇格・規則マーカー限定の段階導入〉を経た ADR 化)。

  1. 受理の基礎=「split の親は within が受けるものと同じ」から出発し、序数依存の締めを課すwithin は既に実効パーティション(gregorian.md §4.5「パーティション性は生成語でなく検査で 立つ」)を受けており、split だけが生成語由来に限定されるのは非対称だった。ただし split の g(i)関数版 labels:(窓列序数で引く)なので、ADR-39 が labels: に立てた柵を同じ場所に 輸入する(判断 3・4)。ADR-08 の「窓の二種」の読みも精密化する——二種の別は保証性質 (I5)の別であり、受理の文脈では実効パーティションをパーティション型として扱う(ADR-08 追記参照)。

  2. データ由来(covering 付き)マーカーの窓列は受理しない(裁定=段階導入)。覆域の編集 (頭側マーカーの追加・データ版の更新)で窓列の通し序数が動き、g(i) の引き先が黙って変わる (敵対検証で実測)。labels: には同長性検査という防波堤があるが(ADR-39 判断 2)、関数 g には 長さが無く防波堤ゼロ——u 個数が偶々一致する年では総和検査も鳴らない。動機の実例(week・ isoYear・4-4-5)は全て規則マーカー親であり、データ親の需要は現時点で仮説のみ。需要が立てば 緩和を再裁定(受け皿の候補=ラベルキーで引く形)。

  3. empties: drop の親(非連続な窓列)は受理しない(keep/error のみ)。空窓の脱落は要素データ 依存で序数を詰める——ADR-39 判断 4 の drop 静的エラーと同根。cycle(並列ラベル束)も親に ならない(分割対象の区間列ではない・誘導文言つき)。edges: clip は規則マーカーでは合法—— 実体化端の擬似窓([紀元, 最初のマーカー))が通し序数 0 を占めることは較正として明文化する (読み側 epochOrdinal も同じ窓列を読むため生成側と読み側の座標一致=F108 の 1 ずれは生じない。 検証で確認済み)。

  4. 境界整合検査(新設): 親窓インスタンスの両端が by: 単位の窓境界に一致すること (per-instance・実体化の端は免除)。ADR-36 の G 同一検査は本件を覆わない(暦年×isoWeek は どちらも day グリッド=G 同一で通ってしまう)——非整列(暦年×週など)はこの検査が弾く。 検査の正本は split の受理規定側(spec §3.6)。

  5. per-instance I5 総和検査はエラーに昇格(裁定・従来は警告)。「53 週年に定数リストを当てて も黙って 53 週目を落とさない」が受理拡張の実利であり、警告(exit 0)では主張が立たない。 区間列型親では I5 が静的不変量から実行時データ依存の検査に降格し、発火は実体化時(評価が その親窓に触れるまで割れない)——この性格も明文化する。

  6. 守備範囲の較正: 可変長親(52/53 週年)で「余り週を最終期へ」は、split 形では g(i) が 53 週年を序数から計算する必要がある(実装テストは Zeller 系の値式で実証——ISO 年 y が 53 週 ⇔ p(y)=4 ∨ p(y−1)=3, p(y)=(y+⌊y/4⌋−⌊y/100⌋+⌊y/400⌋) mod 7)。コーパス上は segmentBy 正準形 (「期の頭は W48 まで」=繰上げが構造から出る・11 §(m))が引き続き有利で、本拡張は「素直な 表明を型で弾かない」ための整備——正準形の置き換えではない。実体化は紀元からなので、紀元〜 計算端の全親窓が検査対象(定数リストの 4-4-5 は ISO 1976 等の 53 週年で必ず割れる=評価 範囲に関係なく g(i) 分岐が強制される。これは仕様どおりの帰結)。交互帯(営業帯)の親への 序数パリティ g は反パターン(証人パターン・isOpen へ——reference/split.md の落とし穴)。

経緯: F109(11 §(m) の実測・2026-08-17)→ 裁定「受理拡張へ」→ 候補設計(draft §1.29)→ 4 視点 並列検証(ADR-36 引用の層違い・clip 擬似窓・データ親の序数可動・by: 側の検査・註釈の器を検出= 全反映)→ 裁定 2 件 → ADR 化・実装(親と by: の 2 箇所差し替え・境界整合検査・テスト 7 本。 4-4-5 の split 形が g(i) 分岐込みで segmentBy 正準形と外延一致を実測)。