---
title: "FELRA 計算正確性優先 M2：TCGCT P20 精確來源、Merkle–DAG 與快取獨立核驗介接"
english_title: "FELRA Compute-First M2: TCGCT P20 Exact Source, Merkle–DAG, and Independent Cache Verification"
series: "FELRA Compute-First / Finite Exhaustion Integration"
short_title: "FELRA-CF-M2"
version: "v0.1"
date: "2026-11-05"
author: "Neo.K（計算正確性優先與 TCGCT／TCGQT 介接方向）／GPT-6（形式設計、隔離實作、有限驗證與研究原稿）"
affiliation: "EveMissLab／一言諾科技有限公司"
status: "ENGINEERING RESEARCH DRAFT — ISOLATED IMPLEMENTATION; NOT MERGED INTO FELRA; NATIVE INTEROP NOT EXECUTED"
canonical_source: "UTF-8; LF; no BOM"
canonical_math_delimiters: " $...$ and $$...$$ only"
formal_assistant_validation: "NOT LEAN VERIFIED"
independent_implementation: "Python 3.10+ standard library Fraction + hashlib"
---

# FELRA 計算正確性優先 M2

## TCGCT P20 精確來源、Merkle–DAG 與快取獨立核驗介接

**版本**：v0.1，2026-11-05  
**前置**：FELRA-CF-M1 v0.1；RT-FBE-03／FELRA-FBC-01；FELRA v1.15.2（GitHub `main` 參考快照）；TCGCT P16–P20。  
**定位**：可獨立執行的外掛式原型與本地端合併規格；**沒有**修改正式 FELRA 主分支或公開一個已部署的新版本。

> **核心研究決策**：先核對計算來源、精確運算與聲稱要發布的數值；命題驗證與自然語言語義對齊保持獨立。AI 可以保留未證猜想，但不能把沒有相應計算證據的數字冒充經核對的答案。

**作者：** Neo.K（計算正確性優先與 TCGCT／TCGQT 介接方向）／GPT-6（形式設計、隔離實作、有限驗證與研究原稿）  
**機構：** EveMissLab／一言諾科技有限公司  
**日期：** 2026-11-05  
**原稿狀態：** ENGINEERING RESEARCH DRAFT — ISOLATED IMPLEMENTATION; NOT MERGED INTO FELRA; NATIVE INTEROP NOT EXECUTED  

## 摘要

M1 已使精確整數／有理數 DAG 與 Paper XII 的八重運算交會覆蓋證書形成雙證據發布閘門。M2 處理**不同的生產者與運算語法**：TCGCT P20 在固定 `A×B+C` 矩陣圖上，持久化三份原生混合進位有理數稀疏深度來源、P16 Merkle 來源承諾、P18 DAG、P19 支援索引及快取。FELRA 必須能在不信任其快取數值的情況下，以獨立的精確有理數演算重建來源、數學值和有界 DAG，並根據外部提供的三類釘選拒絕不符資料。

本稿實作 `felra_cf_m2.p20_exact`，其功能分別為：（一）對整份 P20 原始 UTF-8 封裝進行位元組 SHA-256 與規範 JSON 檢查；（二）嚴格解碼混合進位數位陣列和已約分來源有理數；（三）獨立重建全部來源的 P16 Merkle 承諾及固定的 P17/P18 DAG 根摘要；（四）從來源值與深度權重精確計算 `A×B+C`；（五）重建 P19 有向圖支援索引，逐項以 `fractions.Fraction` 核對所有已提交快取格點；（六）依請求重新算出矩陣特定輸出格點並發出**獨立於 PPV** 的計算收據。

本輪採用**上游 TCGCT P19 官方示例的 15 筆來源係數**重建 P20 格式的離線測試包，三筆來源承諾及一筆 DAG 根摘要與 GitHub P20 實際示例相同。為便於對抗測試，重建包保存 **24 筆**可再計算的快取格，而上游展示的 P20 檔案保存 **19 筆**；因此本包**不是**上游 P20 範例的位元組副本。本輪未在此容器執行原版 TCGCT P20 producer 或 TCGQT Node.js verifier，另提供本地端可重跑的原生互操作腳本。

**證據標記**：`[DEF]` 工作定義；`[PROP]` 指定模型中的條件命題；`[TEST]` 有限實作核對；`[COUNTER]` 拒絕測例；`[OPEN]` 仍未完成之驗證義務。SHA-256 完整性並不是資料真實性、作者身分、ACL、反回滾或數學普適性證明。

---

## 1. 為何不把 P20 誤認成 Paper XII 八重運算

M1 的 `finite_coverage` 證書只涵蓋 Radix Tower 第十二篇特定四算子三階段語法、輸入上界 K、觀察上界 N 與完整中間狀態約束。TCGCT P20 則是三個有限稀疏矩陣上的 `A×B+C`，其完整性義務是另一套來源、形狀、位值配置、深度權重與 DAG 規則。因此即使 M2 所有矩陣結果正確，也必須回報：

- `computation = EXACT_VERIFIED_FOR_DECLARED_P20_A_B_PLUS_C`；
- `structure = INDEPENDENT_P17_DAG_AND_P19_SUPPORT_VERIFIED`；
- `finite_coverage = NOT_APPLICABLE_TO_P20_MATRIX_FORMAT`；
- `claim = NOT_EVALUATED_BY_M2`。

沒有一個狀態可直接被提升成「所有矩陣定理成立」「所有可能 A,B,C 已窮盡」或 `ORIGINAL_GOAL_VERIFIED`。新計算證據日後若要支持 PPV 命題，仍須經現有的五項方法義務、作用域對齊與可信證書流程。

## 2. P20 的允許輸入及外部釘選

### 2.1 固定格式

本版只接受：

- P20 schema：`TCGCT-P20-Native-Cold-Source-Bundle-v1`；
- 唯一運算構造器：`A-matmul-B-plus-C/P18-v1`；
- 有且只有 A、B、C 三個來源，按 A、B、C 排列；
- 來源為原生混合進位、有限項數的有理數深度矩陣；
- P19 格式完整支援索引與已快取值；
- 整份 JSON 以 UTF-8、鍵名排序、緊湊格式與單一 LF 結尾保存。

每個來源矩陣在此版本最多 4096 格，整個 P20 檔案不超過 12,000,000 bytes；另有來源深度、項數、位值長度與快取數量上限。獨立稽核器對可接受的位值陣列採比原始 P20 更保守的 512 位顯式預算；超出時拒絕，並不將其視作計算錯誤。

### 2.2 外部可信釘選

三類釘選必須從 P20 檔案**以外**取得：

$$
A_{20}=(h_B,h_A,h_B',h_C,h_D).
$$

這裡為避免兩種 B 記號混淆， $h_B$ 是整個 bundle 的 SHA-256， $h_B'$ 是來源矩陣 B 的 Merkle 承諾， $h_A,h_C$ 是其餘來源承諾， $h_D$ 是有界 DAG 根摘要。實際程式使用不含歧義的 `expected_bundle_sha256`、`trusted_source_commits`（A/B/C）與 `expected_root_digest` 三個欄位群。

*必要限制*：無論釘選擺在 JSON、文字檔、CLI 或資料庫，若攻擊者能同時控制內容與全部釘選，它們就不足以提供外部來源認證。本實驗 `examples/DEMO_PINS.json` 刻意標示 `DEMO_ONLY_NOT_AUTHORITY`。

## 3. TCGCT 原生位值與精確計算

### 3.1 混合進位解碼

令 $R=(r_0,r_1,\ldots)$ 為由有限配置周期重複或末項延伸的整數序列，且每個 $r_i\ge 2$。定義：

$$
W_R(0)=1,\qquad W_R(k+1)=r_k W_R(k).
$$

低位到高位的有限數位 $d_k$ 所代表的非負整數是：

$$
V_R(d)=\sum_{k=0}^{n}d_kW_R(k),\qquad 0\le d_k<r_k.
$$

P20 wire 對數位使用**高位到低位**的 `numerator_msd`、`denominator_msd`；解析器不得錯把十進位字串相似性當成數值相等，也不得容許超基底數位與非規範前導零。

有理數來源係數經精確整數解碼後，採用已約分的分數 $q=n/d$，其中 $d>0$。P19 快取另允許數學上等價的**未約分分數**，但仍要求其原生 wire 與零值形式合法。

### 3.2 深度權重

固定來源配置 $R$ 時，矩陣的一個格點定義為：

$$
S_{ij}=\sum_{k\in K_{ij}}q_{ijk}W_R(k).
$$

對來源 A、B、C，輸出為：

$$
Y_{ij}=\sum_{k=0}^{A_{cols}-1}A_{ik}B_{kj}+C_{ij}.
$$

所有運算以 `Fraction` 執行，無浮點捨入；本版沒有聲稱能以此 Python 實作替代原生 TCGCT 效能目標。

### 3.3 值保持換基，不能只搬數字

若 $R\to R'$ 且仍保留深度 $k$，係數必須依權重改寫：

$$
q'_{ijk}=q_{ijk}\frac{W_R(k)}{W_{R'}(k)}.
$$

如此才保證對應有限來源格點的數值一致。未同步改寫係數時，跨進位換基可能改變來源及 `A×B+C` 結果。M2 以正反對照測試了這兩種情況：正確換基結果保持，錯誤換基不保持；兩者的新 P16 / P18 釘選均需重新建立，不可沿用原釘選。

## 4. 來源 Merkle、DAG 與支援索引

### 4.1 P16 來源承諾

重建器按矩陣自然位置填補所有空格與必要 padding，每個源格點由 `source`、`rows`、`cols`、`profile`、`index` 及完整深度 wire 決定葉節點摘要。內部樹節點由左右摘要計算，最後以來源 meta 與樹根得到來源承諾。規範 JSON 哈希取：

$$
h(x)=\mathrm{SHA256}(\mathrm{CanonicalJSON}(x)).
$$

本版採用與 TCGCT P16 檔案相同的有限樹定義與 domain tag。其實現與 TCGCT Python 程式**沒有 import 依賴**，但數學規格相同；因此「獨立」意指不同程式重算，不意指已排除共同規格本身的設計錯誤。

### 4.2 P17/P18 固定 DAG

此處只有五類結構節點：三個 source leaf、一個 `matmul(A,B)`、一個 `add(matmul(A,B),C)`，以公開的 P17 DAG 格式計算摘要。每個節點保存有型別的矩陣形狀、來源承諾、位值配置與左右子摘要。M2 以原始來源支援集構造有界 DAG 的 structural support；不把數值運算恰巧抵銷為零的情況誤判成語法上從未存在過該節點。

### 4.3 P19 快取

P19 `indexes` 必須與重建後五個結構節點的支援集合精確相等。所有 `memo_entries` 的 `(digest,i,j)` 需存在於可達節點與其結構支援域、依字典序排列且唯一。每筆 native ratio wire 獨立解碼成有理數，與由完全不同的 `Fraction` 程序所得值比較；沒有任何快取資料直接進入新計算作為前提。

若一個 P20 包沒有快取，仍可獨立重建來源與整個 `A×B+C` 圖，但尚不能在無請求格點的情況下發出具體「數值結果已確認」的發布收據。CLI 因此區分 `SCOPED_EXACT_ARITHMETIC_ALLOWED` 與 `NO_OUTPUT_CELL_SUBMITTED`。

## 5. 實際來源案例的交叉核對

上游來源：`TCGCT/examples/p20_cold_input.json`，其輸入帶有超過 IEEE-754 精確整數上限的數值，也含非零深度的來源係數。此測試重建來源所得到的承諾如下：

| 物件 | 與官方 P20 示範對照所得摘要 | 交叉核對 |
|---|---|---|
| 來源 A | `abe6bbf42490069a94007d47c6e37caa42c366e16a9d7749e848adca2a5c6e05` | MATCH |
| 來源 B | `369926e0fc3542e0a85e48854e507c0c8cabc05688cab59adc42070fc63bb05c` | MATCH |
| 來源 C | `d93e5ac0ab3c5959f1327246973f6a2f0e41b80ca0719dbe7d9cb47c086e573e` | MATCH |
| 根 DAG | `88c7a6852d989fd6d78e9b70c52ec9d5642b8227c797c97a8262ece0d386c461` | MATCH |

這證明我們重新實作的**指定來源編碼及 P16/P18 結構**與該案例相容；它並不單獨證明 TCGCT 數值運算實作在所有情況都正確，也不表示此包已經讀入並驗證 GitHub 那份原始 10,639-byte P20 檔案。對於真正的原版 P20 檔案，須使用本包提供的 CLI 在持有該檔案及其外部釘選的本地端再次執行。

## 6. 保守證據發布契約

| 軸 | 可發布狀態 | 不可做的升級 |
|---|---|---|
| Source | `EXTERNAL_PINS_AND_P16_RECONSTRUCTION_MATCH` | 作者身份已認證、來源一定真實 |
| Structure | `INDEPENDENT_P17_DAG_AND_P19_SUPPORT_VERIFIED` | 任意 DAG / 演算法皆正確 |
| Computation | `EXACT_VERIFIED_FOR_DECLARED_P20_A_B_PLUS_C` | 任意範圍的普適算術證明 |
| Cache | `ALL_SUBMITTED_P19_MEMO_VALUES_RECOMPUTED` | 所有未提交格點均被取樣過 |
| Finite coverage | `NOT_APPLICABLE_TO_P20_MATRIX_FORMAT` | 八重交會的覆蓋證書可套用在矩陣 |
| PPV claim | `NOT_EVALUATED_BY_M2` | `ORIGINAL_GOAL_VERIFIED` |

已讀取的單一快取格點，可作為**在該來源與來源外釘選下**的精確計算證據；對未存在於快取中的要求格點，M2 必須重新做分數矩陣計算才可出具該格點數值。

## 7. 單元測試、拒絕模型與回歸

**本版實際完成**：M2 新增 46 項隔離式單元測試；M1 原型 152 項原樣回歸。新增測試涵蓋合法 P20 格點、超出矩陣邊界、零支援格、錯誤 A/B/C 雜湊、錯誤 DAG、改動來源後重新製作整包 SHA、錯誤快取後重新製作所有內部 SHA、刪改支援索引、非法原生數位、錯誤 denominator、來源重複項、快取重複或錯序、模擬 PPV 狀態注入、跨進位深度權重未對齊、真正保值換基、CLI 收據獨立重播及竄改拒絕。詳細結果見 `results/M2_tests.txt`、`results/M1_regression.txt`。

其餘尚未完成：

- 未在此環境執行 TCGCT Python 原始生產者的 save/restore 與 FELRA M2 對照；
- 未在此環境執行 TCGQT P20 的 Node.js 原始驗證程式；
- 未跑正式 FELRA v1.15.2 倉庫的完整 `pytest`、`ruff`、drill_v115、Z3、Lean 4 回歸；
- 未進行獨立供應鏈簽章、ACL／RBAC／反回滾驗證；
- 未宣稱對任意大小 DAG、任意高維矩陣及任意數學命題具有完整性證書。

此處的 `PASS` 代表有限實作在已定義測試中的結果，不代表開放的普適資訊不變量問題已獲證明。

## 8. 本地端驗收路徑

先在本包根目錄（Python 3.10+）執行：

```bash
python scripts/build_examples.py
python -m unittest discover -s tests -v
python -m felra_cf_m2 verify --bundle examples/P20_upstream_input_reconstructed_fixture.json \
  --expected-bundle-sha256 YOUR_PIN \
  --source-A A_COMMIT --source-B B_COMMIT --source-C C_COMMIT \
  --expected-dag-root DAG_ROOT --query 0,0 --query 0,1 \
  --output results/your_receipt.json
```

示範釘選在 `examples/DEMO_PINS.json`，正式用途應由外部可信系統提供。對真正的 TCGCT 原始 P20 bundle，直接指定真實來源包位址與可信釘選，不需要先重建示範資料。原始 CLI 的 `--query` 只作用於本版固定矩陣根節點。

若本地端具有 TCGCT 真正的原始碼倉庫，可選擇執行：

```bash
python scripts/live_tcgct_p20_interop.py \
  --tcgct-root PATH_TO_TCGCT \
  --input PATH_TO_TCGCT/examples/p20_cold_input.json \
  --output results/local_native_interop.json
```

腳本使用一個新的臨時目錄呼叫**原生** TCGCT P20 save/restore，再讓 FELRA M2 以 `Fraction` 檢查精確結果。這是本地端功能互操作測試，因釘選由同一個本地生產者產出，**不能作為真正的外部來源認證**。

本包另外提供釘選於 FELRA v1.15.2 `pyproject.toml` Git blob `3374ca464c3d28e417de90b12bf8c0af184f8bd9` 的最小 `git apply` 補丁，以及本地安全分支、測試門檻與回退程序。只有全部正式倉庫回歸通過後才考慮提交；目前本輪沒有推送 GitHub。

## 9. 下一階段 M3：TCGQT P20 獨立觀察及正式收據治理

M2 的輸出應先作為**有型別、可重播的計算收據**；M3 才把 TCGQT P20 JS BigInt / SHA-256 獨立觀察連上，驗證其來源恢復、投影正確性與快照一致性。此時仍不允許由 TCGQT 的幾何或觀察結果直接回寫 FELRA 的 canonical 數值，更不能讓觀察層證書自行提升 PPV 的命題狀態。

## 10. 前置資料與來源

1. FELRA v1.15.2，`README.md`、`docs/PPV.md`、`docs/FORMAL_BACKENDS.md`，GitHub（私人倉庫）：https://github.com/kakon77777-commits/FELRA 。
2. TCGCT P20 原始來源與運算器：`tcgct_core/cold_source_p20.py`、`tcgct_core/merkle_journal_p16.py`、`tcgct_core/indexed_dag_p18.py`、`tcgct_core/lifecycle_checkpoint_p19.py`：https://github.com/kakon77777-commits/TCGCT 。
3. TCGCT P20 限定型資料及 CLI：`examples/p20_cold_input.json`、`examples/p20_cold_bundle.json`、`scripts/p20_cold_cli.py`，同上。
4. TCGQT P20：`README_P20.md`、`scripts/p20_verify_cold_bundle.js`，GitHub（私人倉庫）：https://github.com/kakon77777-commits/TCGQT 。
5. RT-FBE-03/FELRA-FBC-01 v0.1、FELRA Compute-First M1 v0.1（本包的上游唯讀快照）。
6. 標準 Python：`fractions.Fraction`、`hashlib.sha256`、`json`；本稿不將經典整數算術及 Merkle 樹技術宣稱為新數學發現。

**結語**：FELRA M2 將來源、精確數值、有限結構與命題地位再分開一層；計算成果可以先成為帶明確作用域的可重用資產，但沒有證書的命題仍保持未證狀態。

**End of FELRA-CF-M2 v0.1 — isolated, bounded, independently recomputable P20 adapter.**
