Skip to content

Teaching-site reconciliation with the updated manuscript

Checked 2026-10-05 against ../omsh-paper/main.tex at e049b7c. The site at ~/Documents/omsh-website now has thirteen chapters. Its four appended pages explain the changed formal results while retaining the ten-state warehouse and the original intuition lessons. The earlier audit is a dated record; this note describes the subsequent theory reconciliation. No manuscript, production solver, controller or training path was modified.

Changed mathematical objects

The main difference is a distribution nu over action/allocation pairs, rather than only a pure focal action and a single successor allocation. For simultaneous moves the opponent chooses its level before the focal draw, giving max_level E_nu[P_level,a · W], rather than E_nu[max_level P_level,a · W]. The original-game theorem correspondingly uses predictable sets of complete action-row families F=(F_a)_a, which preserve constraints linking actions. Checking separate per-action worst cases can be more conservative.

randomised-theory follows def:fixed_floor_shield and the generalised def:anytime_runtime_certificate. A terminal crossing with opposing 0/0.4 rows illustrates why a balanced mixture costs 0.2 with simultaneous levels and 0.4 with a reactive level. This is a separate toy; the default warehouse remains the multi-step example. Sampled pairs need not individually fit the parent budget. Each sampled W must dominate an inductive certificate with unsafe coordinates one. The few-atoms result (prop:two_atoms) is explained as a decomposition into feasible components with at most |Lambda|+1 pairs; it does not compress an arbitrary distribution into a single such component.

permissiveness-theory distinguishes the pure robust least fixed point from beta_mix, the mixed robust least fixed point. The original warehouse engine still computes the pure operator; no mixed solver is substituted into it. An arbitrary mixed-inductive certificate need only lie above beta_mix; the additional inequality beta_pure <= beta applies to pure upper certificates, not to every certificate in the general theorem. For a fixed level set, thm:fixed_floor_permissive gives soundness and an existential path-law approximation guarantee. With d=||beta-beta_mix||_infinity, strict initial slack gives epsilon=d/(d+p-beta(s0)); exact d=0 permits zero slack. Below-certificate initial budgets and the approximate zero-slack boundary are rejected by the calculator. The guarantee is against history-adaptive, pre-draw level sequences, and does not assert that PPO finds the controller. An upper bound on d from mixed lower iteration gives a conservative epsilon bound. The manuscript's floor-zero Pursuit–Evasion numbers give about 0.63, which is not an empirical reward loss.

coverage-theory follows prop:tv_confidence_sequence, cor:row_union_bound, lem:tv_ball_bellman and cor:frozen_sets. Counts centre a time-uniform TV ball; the neural kernel remains a nominal model. The user chooses delta_cov, then row and visit schedules allocate it. Adaptive visits are permitted by stationary, state-sufficient dynamics with fresh transition draws and complete legal support. Singleton support needs no statistical radius; a multi-successor unvisited row uses radius one. The interactive count tables hold proportions fixed to isolate sample size, and do not pretend to simulate new observations. The exact one-row TV supremum greedily transports legal probability from low to high W, unlike the cheap range-based upper bound, which can be loose. Manual-radius mode explicitly makes no confidence-sequence coverage claim.

Neural re-centring requires inflating the radius by the empirical/neural TV distance. Joint-row coverage must be combined with a valid opponent-action envelope. The frozen-prefix result covers every later compliant episode conditionally on a good prefix; it is not a lifetime-across-resets guarantee. The one-run original-game accounting still reserves delta_cov from the initial threshold.

dominance-theory follows cor:risk_dominance and its finite-horizon stopped excess bound. For the pure wrapper, true-row containment is stronger than the true expectation of its committed W fitting q. The toy explicitly defines Entry, Inspection, Delivered and Collision. Entry starts at 0.3; Inspection carries 0.4; Delivered and Collision carry 0 and 1. Both active states use the same row. A TV ball of radius 0.02 around (0.5,0.4,0.1) has worst expected W 0.28, so the committed allocation fits both active budgets. Changing the true row can violate containment without introducing excess. The calculator computes stopped occupancy-weighted excess, not a horizon times an observed excess. With wait probability w and collision probability c, actual reach is c sum_{t<T} w^t; expected excess is eta_Entry + eta_Inspection sum_{1<=t<T} w^t for T>=1.

The risk-dominance corollary conditions after the realised action/allocation draw. An unrestricted safe randomised shield may have positive excess on some sampled pairs; pairwise zero excess is not a necessary condition for its distribution-level soundness. The site states this explicitly instead of treating pure-step dominance as equivalent to randomised coverage.

Reported audit and patience numbers are separately attributed to manuscript tables at the checked revision. They are empirical diagnostics of frozen evaluation, rather than validated coverage or certified excess expectations. The floor can violate coverage yet leave the true certificate expectation conservative; neither the heuristic nor sample-level zero excess proves it almost surely. The patience screen retains 64 as primary, despite 4096 delaying raises; the website does not change the runtime default.

Packaging and verification

reconciliation-section.html owns the four new chapters. reconciliation.js exports pure calculators for Node and attaches browser controls when a DOM is present. The builder embeds it as the fifth script, along with all styles and markup, in the self-contained index.html. It retains isolated desktop document-portal loading without sibling files. The older safety-assumptions chapter now labels its equations as the pure-step special case and links to the general family-set formulation. Navigation retains the old hashes and extends its chapter counter to thirteen.

reconciliation-check.cjs adds 1,704 assertions: independent joint-outcome enumeration, theorem backup-mixture algebra, substitution into the confidence tail bound, independent halfspace-vertex LP solutions of three-coordinate TV balls, and backwards finite-horizon reachability for the stopped-excess example. The combined suite passes 32,013 assertions. Ordinary floating-point arithmetic remains an educational limitation; this is not formal numerical verification or an original-game deployment certificate.

Run node build.mjs --check, node check.cjs, and the optional browser-check.cjs in the standalone directory. Browser checks exercise all thirteen chapters, the new controls and infeasible boundaries, isolated-file and HTTP loading, seven viewports, keyboard navigation and all-chapter no-JavaScript reading. For the OmSh snapshot, select tests with uv run python scripts/run_tests.py changed and build docs with uv run zensical build --strict. Documentation-only changes require no production trainer or graph test suite. Chromium and Firefox passed these browser checks, and desktop and phone screenshots were inspected. The changed selector used explicit documentation paths because an unrelated untracked scheduled-task lock would otherwise select the broad fast suite; the documentation selection needs no pytest, and the strict documentation build passed.

The standalone repo and teaching-site/ snapshot are synchronized explicitly. Do not copy its README.md into the snapshot: it collides with the generated HTML's docs route. Keep README.txt and update its explicit asset list.