Transaction Science
edcf02b350
feat(access-core, aac-core): Bayesian selection that never moves a cell, and prediction in 43 languages
...
Selection (access-core; SPEC §5.4, proposed): a prior over the options on the
board — usage frequency now, the Laya decision model later — times the
person's own switch-timing likelihood, after Nomon (Broderick & MacKay):
- press_timing.rs learns a damped kernel-density estimate of each press's
offset from the intended highlight, from a population prior scaled to the
person's scan interval, and only from selections the person keeps: presses
are staged per attempt, dropped when abandoned or undone (including an Undo
reached by scanning), and learned only after three newer selections.
- selection.rs computes the posterior (late presses explained as late, a
2% lapse term), selects at 99:1 odds with the prior capped so presses must
favour the choice 4:1, and otherwise keeps scanning — a row gets up to two
extra passes. Without opt-in, or before 10 kept presses, it behaves exactly
like the conventional scanner and only measures.
- scan_order.rs orders rows, groups and cells by prior mass (fewest expected
steps) without moving any; options keep stable position-order ids, and a
new order applies from the next pass. dwell.rs weights per-cell dwell from
0.8x to 1.5x within hard bounds. Every adaptation is opt-in and previewable.
Conformance C8–C11 (order never moves a position, opt-in required, dwell
bounds, selection follows presses): 370/370 with the original 236.
Prediction (aac-core): per-language packs — word frequencies, word pairs,
sentence starts and a letter model, front-coded and CRC-checked — built
reproducibly by tools/lang/build_packs.py from pinned wordfreq 3.2.0
(CC-BY-SA-4.0), FrequencyWords 2018 (CC-BY-SA-4.0) and Common Voice sentences
(CC0), into data/lang/ (43 of 45 languages; gu and kn have no open source
large enough and report "adaptive only"). PredictionEngine blends a pack with
what the person has said (hierarchical Dirichlet smoothing): next word,
completion, and letter prediction for letter scanning, deterministically.
A per-language pair filter exists; its lists still need curating before the
app shows next-word suggestions to children.
Co-Authored-By: Claude Opus 5.5 <[email protected] >
2026-09-29 11:28:26 -04:00
..
am.74f61d8a6e61.bin
feat(access-core, aac-core): Bayesian selection that never moves a cell, and prediction in 43 languages
2026-09-29 11:28:26 -04:00
ar.098abfc3c3b1.bin
feat(access-core, aac-core): Bayesian selection that never moves a cell, and prediction in 43 languages
2026-09-29 11:28:26 -04:00
bn.14b0cd893d3d.bin
feat(access-core, aac-core): Bayesian selection that never moves a cell, and prediction in 43 languages
2026-09-29 11:28:26 -04:00
cs.5d921a9283a5.bin
feat(access-core, aac-core): Bayesian selection that never moves a cell, and prediction in 43 languages
2026-09-29 11:28:26 -04:00
da.cd126aba8373.bin
feat(access-core, aac-core): Bayesian selection that never moves a cell, and prediction in 43 languages
2026-09-29 11:28:26 -04:00
de.d02ace47b59d.bin
feat(access-core, aac-core): Bayesian selection that never moves a cell, and prediction in 43 languages
2026-09-29 11:28:26 -04:00
el.3c330d840643.bin
feat(access-core, aac-core): Bayesian selection that never moves a cell, and prediction in 43 languages
2026-09-29 11:28:26 -04:00
en.3230df972cd2.bin
feat(access-core, aac-core): Bayesian selection that never moves a cell, and prediction in 43 languages
2026-09-29 11:28:26 -04:00
es.fd3bcbe54fe1.bin
feat(access-core, aac-core): Bayesian selection that never moves a cell, and prediction in 43 languages
2026-09-29 11:28:26 -04:00
fa.b1b03c209cf3.bin
feat(access-core, aac-core): Bayesian selection that never moves a cell, and prediction in 43 languages
2026-09-29 11:28:26 -04:00
fi.e83ef968627f.bin
feat(access-core, aac-core): Bayesian selection that never moves a cell, and prediction in 43 languages
2026-09-29 11:28:26 -04:00
fr.8f2d24509859.bin
feat(access-core, aac-core): Bayesian selection that never moves a cell, and prediction in 43 languages
2026-09-29 11:28:26 -04:00
ha.99281e749b8e.bin
feat(access-core, aac-core): Bayesian selection that never moves a cell, and prediction in 43 languages
2026-09-29 11:28:26 -04:00
he.fa0916fbf556.bin
feat(access-core, aac-core): Bayesian selection that never moves a cell, and prediction in 43 languages
2026-09-29 11:28:26 -04:00
hi.b4db31f77cc7.bin
feat(access-core, aac-core): Bayesian selection that never moves a cell, and prediction in 43 languages
2026-09-29 11:28:26 -04:00
hu.9010a939df5d.bin
feat(access-core, aac-core): Bayesian selection that never moves a cell, and prediction in 43 languages
2026-09-29 11:28:26 -04:00
id.c8567644a23d.bin
feat(access-core, aac-core): Bayesian selection that never moves a cell, and prediction in 43 languages
2026-09-29 11:28:26 -04:00
index.json
feat(access-core, aac-core): Bayesian selection that never moves a cell, and prediction in 43 languages
2026-09-29 11:28:26 -04:00
it.b929f258b871.bin
feat(access-core, aac-core): Bayesian selection that never moves a cell, and prediction in 43 languages
2026-09-29 11:28:26 -04:00
ja.61c4f4f89b3a.bin
feat(access-core, aac-core): Bayesian selection that never moves a cell, and prediction in 43 languages
2026-09-29 11:28:26 -04:00
ko.6d410ea6cd24.bin
feat(access-core, aac-core): Bayesian selection that never moves a cell, and prediction in 43 languages
2026-09-29 11:28:26 -04:00
LICENSE.md
feat(access-core, aac-core): Bayesian selection that never moves a cell, and prediction in 43 languages
2026-09-29 11:28:26 -04:00
ml.399f6eab576e.bin
feat(access-core, aac-core): Bayesian selection that never moves a cell, and prediction in 43 languages
2026-09-29 11:28:26 -04:00
mr.86ce463387d8.bin
feat(access-core, aac-core): Bayesian selection that never moves a cell, and prediction in 43 languages
2026-09-29 11:28:26 -04:00
ms.55e1499e38f1.bin
feat(access-core, aac-core): Bayesian selection that never moves a cell, and prediction in 43 languages
2026-09-29 11:28:26 -04:00
nb.6160fde1baeb.bin
feat(access-core, aac-core): Bayesian selection that never moves a cell, and prediction in 43 languages
2026-09-29 11:28:26 -04:00
nl.884afd31eb38.bin
feat(access-core, aac-core): Bayesian selection that never moves a cell, and prediction in 43 languages
2026-09-29 11:28:26 -04:00
pa.4960d7315d51.bin
feat(access-core, aac-core): Bayesian selection that never moves a cell, and prediction in 43 languages
2026-09-29 11:28:26 -04:00
pl.a0300d09cfa4.bin
feat(access-core, aac-core): Bayesian selection that never moves a cell, and prediction in 43 languages
2026-09-29 11:28:26 -04:00
pt.670b42222570.bin
feat(access-core, aac-core): Bayesian selection that never moves a cell, and prediction in 43 languages
2026-09-29 11:28:26 -04:00
ro.caf35531616d.bin
feat(access-core, aac-core): Bayesian selection that never moves a cell, and prediction in 43 languages
2026-09-29 11:28:26 -04:00
ru.939d65b69516.bin
feat(access-core, aac-core): Bayesian selection that never moves a cell, and prediction in 43 languages
2026-09-29 11:28:26 -04:00
sv.74455f043e96.bin
feat(access-core, aac-core): Bayesian selection that never moves a cell, and prediction in 43 languages
2026-09-29 11:28:26 -04:00
sw.5213f3efd357.bin
feat(access-core, aac-core): Bayesian selection that never moves a cell, and prediction in 43 languages
2026-09-29 11:28:26 -04:00
ta.513b79f9779a.bin
feat(access-core, aac-core): Bayesian selection that never moves a cell, and prediction in 43 languages
2026-09-29 11:28:26 -04:00
te.86a14c9608a4.bin
feat(access-core, aac-core): Bayesian selection that never moves a cell, and prediction in 43 languages
2026-09-29 11:28:26 -04:00
th.5c77a14224c2.bin
feat(access-core, aac-core): Bayesian selection that never moves a cell, and prediction in 43 languages
2026-09-29 11:28:26 -04:00
tl.6c16deeb4dfb.bin
feat(access-core, aac-core): Bayesian selection that never moves a cell, and prediction in 43 languages
2026-09-29 11:28:26 -04:00
tr.0ca88ed91234.bin
feat(access-core, aac-core): Bayesian selection that never moves a cell, and prediction in 43 languages
2026-09-29 11:28:26 -04:00
uk.ee9bb286ed0e.bin
feat(access-core, aac-core): Bayesian selection that never moves a cell, and prediction in 43 languages
2026-09-29 11:28:26 -04:00
ur.ebc094140ee3.bin
feat(access-core, aac-core): Bayesian selection that never moves a cell, and prediction in 43 languages
2026-09-29 11:28:26 -04:00
vi.3a419f260adb.bin
feat(access-core, aac-core): Bayesian selection that never moves a cell, and prediction in 43 languages
2026-09-29 11:28:26 -04:00
yo.bdbadbccfe5a.bin
feat(access-core, aac-core): Bayesian selection that never moves a cell, and prediction in 43 languages
2026-09-29 11:28:26 -04:00
zh.18ae613de569.bin
feat(access-core, aac-core): Bayesian selection that never moves a cell, and prediction in 43 languages
2026-09-29 11:28:26 -04:00
zu.8ebf1bfd8c49.bin
feat(access-core, aac-core): Bayesian selection that never moves a cell, and prediction in 43 languages
2026-09-29 11:28:26 -04:00