Run · Voynich Manuscript
T44 engineering: the CUDA lattice EM reproduces the numba code (E-step to 1e-12, seed-6205 restart and Viterbi identical); session 12's restart numbers depend on the hash seed
test_gpu.py's "EM from truth" rows compare the GPU (started with the true null distribution) against numba started with a uniform one, so they differ by design; the like-for-like checks are the E-step row and the seed-6205 row. The lanes: 35 lanes x 839 steps for the training pages.
Result
| Run | Measured | Result | Against | Decision | Date |
|---|---|---|---|---|---|
| Run | Training log-likelihood, expected counts, decoded held-out text and held-out likelihood per glyph of the GPU port against lattice em.py (numba) on the one-sign-per-letter planted control; seconds per EM iteration | float64: E-step from the true channel ll -42,115.3720 both, max |dC| 3.9e-12, max |dCn| 7e-14; seed-6205 restart -41,009.90 both (max |dB| 8e-15), decoded held-out text identical (5,929 characters), null-word share 0.262 both, held-out ll/glyph -1.9505 both. float32: ll -42,115.3711, seed 6205 -41,009.89, max |dB| 3e-6, text identical. Throughput: 1,024 restarts 1.27 s per EM iteration with the CUDA graph (3.9 s eager); 256 restarts 0.78 s. Session-12 seed 6205 on this machine: -40,975.8, -41,037.6, -41,009.9 (PYTHONHASHSEED=0, repeatable), -41,034.1 (1), against -40,851.8 on record; hash-independent: 871 signs, true-key ll -41,653.7, EM from truth -40,504.6, key 0.777 (record: -41,654, -40,505, 0.777) | Session 12 generation 6 (RUN0DCHDDGSSB3H): seed 6205 -40,851.8 · diagnostic (RUN0DCG2Q30P808): true key -41,654, EM from truth -40,505 | The port is faithful: every hash-independent number of session 12 reproduces exactly and the GPU and numba codes agree on the same inventory to rounding. The seed-6205 likelihood on record cannot be reproduced by anyone because lattice_em.Inventory orders tied signs by Python's per-process string hash; the method now breaks ties by the sign string. The rung-1 search starts. |
What it used and found
Latin genre texts
DATDataset
Token table
DATDataset
Parameters
pw = 0.25, alpha = 0.05, dtypes = ['float64', 'float32'], control = Pliny NH 16, period.generate seed 77, settings = R1: one sign per letter, K 50, no nulls, no line layer (session 12 g5c), em_iterations = 60, PYTHONHASHSEED = 0
Cite it
Mysteries Department. (2026). T44 engineering: the CUDA lattice EM reproduces the numba code (E-step to 1e-12, seed-6205 restart and Viterbi identical); session 12's restart numbers depend on the hash seed [Run RUN0DCM6AJ47G7G]. https://mysteriesdept.com/r/RUN0DCM6AJ47G7G
@misc{mysteriesdept_run0dcm6aj47g7g,
title = {T44 engineering: the CUDA lattice EM reproduces the numba code (E-step to 1e-12, seed-6205 restart and Viterbi identical); session 12's restart numbers depend on the hash seed},
author = {{Mysteries Department}},
year = {2026},
note = {Run, catalog key RUN0DCM6AJ47G7G},
url = {https://mysteriesdept.com/r/RUN0DCM6AJ47G7G}
}