Files
LithosAnanake/docs
rajamesandClaude Opus 5.5 9e03bdab19 feat(v4.0.0): Q./ under D-11, with (UQ/), D2*C and the (Q/) variable
D-11 (ruled 2026-10-02): Q./ rounds toward zero, saturates to Q max /
Q min on overflow, and on division by zero returns Q max / Q min by the
dividend's sign (0 for 0/0) and sets the new NODE-ERROR register (7),
which VM-ERROR? reads.

- (UQ/): unsigned floor(a * 2^16 / b) for b != 0 and no overflow.
  Restoring division, 2N+16 steps, on one shifting register (quotient
  above remainder). Quotient register and divisor live in a 5-cell
  variable (Q/), like BASE and the hold buffer, so the stacks carry only
  the remainder, the quotient bit and the loop count. A first version
  kept the divisor on the return stack and overflowed it when called
  from Q./ (it never returned).
- D2*C: double shift left with carry in and out.
- Q./: zero-divisor handling, signs (kept in (Q/)), an overflow test
  that needs no division (|a| * 2^16 >= |b| * 2^(2N-1), possible only
  for |b| < 2^17), then (UQ/) and the sign.

Checked at 32- and 64-bit cells, optimised and ASan+UBSan, against an
independent limb-by-limb long division (including NODE-ERROR): every
pair of 18 edge Q values, 13 width-native edge values (true Q max/min at
either width), the overflow boundary, divisors in [2^(2N-2), 2^(2N-1)),
and pseudo-random cases; and against v3's q48_div for non-negative
a < 2^48. Q.* now also runs on the width-native edge values.
Mutations of the compare paths, the take path, the error flag and the
overflow mask are all caught (the mask matters only for Q min / -1.0).

Headroom (data under args / return): Q./ 3/2.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-03 00:17:11 -04:00
..

StarForth / LithosAnanke Documentation

This is the lithosananke branch: the bare-metal StarKernel side of the project (contrast master, which is the hosted-VM-only side). Documentation follows the two-tier model described in docs/CLAUDE.md: formal/ is the polished, citable LaTeX tier; working/ is living design notes and drafts that feed it. Everything else in this directory is branch- or subsystem-specific material that doesn't fit either tier.

Layout

  • formal/ — Three-volume LaTeX documentation set (research volumes, practitioner books, standalone reports) plus the scraps/ fragment library it's assembled from. Audience: patent counsel, SSRN reviewers, licensees, hobbyists with hardware in hand. See formal/CLAUDE.md for authoring conventions.
  • working/ — Living documents: architecture design notes, DoE experiment logs, hardware/platform notes, draft specs, academic-paper source material, and an archive of superseded docs. Source material for formal/.
  • 03-architecture/ — Tripod VM architecture constraints (Hera/Hermes/Artemis) and the word-level ACL system design.
  • lithosananke/ — LithosAnanke kernel branch documentation: milestone roadmap, system architecture, HAL reference, kernel command-line argument design, and the amd64 APIC-timer ISR postmortem.
  • birthing/ — VM birthing plan and status for the Hera-spawns- Hermes/Artemis constellation, plus three-architecture QEMU acceptance logs.
  • patent/ — Provisional patent application source. Legal hold — ask Bob before touching anything in this directory.
  • api/ — Generated Doxygen tag file and warnings log (gitignored; not part of the tracked doc tree).
  • pptx/ — Elevator-pitch and deep-dive slide decks for different audiences (technical, non-technical, academic, PhD-level).

Current Active Work

  • LithosAnanke M7/M7.1 — VM parity validation and init capsule architecture. See lithosananke/README.md and lithosananke/M7.1.md.
  • Word-level ACL system — Phase 6 complete on master; Phase 7 (LithosAnanke parity) is the next step. See 03-architecture/word-acl/README.md.
  • Tripod VMs — Hera (governor), Hermes (messenger), Artemis (memory/block storage). See 03-architecture/tripod/README.md and birthing/.

Contributing

  • Place new material in working/ first; promote to formal/ only when it's ready to be cited (see formal/CLAUDE.md for promotion criteria).
  • Never touch patent/, formal/patent/, formal/scraps/legal/, or working/legal/ without Bob's explicit instruction.
  • Add a README.md to any new category-level subdirectory, following the format used throughout this tree: orientation paragraph + bullet list of real files with one-line descriptions.