Repository navigation
Every u now says what would settle it, all the way through a computation, and many checkers make one answer only when they all agree.
- Reasons that travel (
u/why): a value is its face, the questions that could still change it, and who answered.not,andandorkeep every reason any answer could still need. - Is it settled? (
settled): asked of the knowing, not the value; never u. With it, U's operations build every two-input rule over 1, 0 and u (19,683 of 19,683; without it, 197). - Witnesses (
witnesses,settle): 1 or 0 only when every checker agrees, otherwise u naming who said what. Never a vote. - Python port (
why.py), andwhy-cli.mjsfor JSON on stdin.u.jsandwhy.jsnow import in a browser. - Also released from 9 and 10 October: u-bytes (
u/u-byte), U6 (u/u6), the Python classUinu.py, and the fix that a u-bit must be one of u's faces (U2'spack, U5's reader). - The README is rewritten in the standard order: what U is, install, usage with real output, API.
[W] 80 Node tests; u.js, u.py and a POSIX shell give the same 22-result tape (01u10u000u0u11110u1uu1, unchanged); why.js and why.py answer 4,068 formulas byte for byte; u.js and why.js import in Chromium; CI passes on Linux, Windows and macOS with Node 22 and 24.
[U] The checkers are assumed to fail independently; three that share a blind spot agree on it. The shell port carries no reasons.
Download Run-U.html below, or open https://chuumind.com/u/run. SHA256SUMS.txt covers the downloadable HTML and LICENSE. See CHANGELOG.md for the full list.