Skip to content

test: formalize the CHIP-8 self-prediction - Artin-Mazur zeta of the real VM step-map - #9165

Merged
AceHack merged 1 commit into
mainfrom
otto/chip8-dynamical-zeta-formal-predictor
Jul 2, 2026
Merged

test: formalize the CHIP-8 self-prediction - Artin-Mazur zeta of the real VM step-map#9165
AceHack merged 1 commit into
mainfrom
otto/chip8-dynamical-zeta-formal-predictor

Conversation

@AceHack

@AceHack AceHack commented Jul 2, 2026

Copy link
Copy Markdown
Member

Next-rung #1 (completing your 2 to 3 to 1). We already predict CHIP-8/IScheduler ad-hoc; this is the formal-math basis. The periodic orbits are the cheat-engine's memory-space orbits = character loops.

The REAL Chip8.step (deterministic without RND) is a map on the VM state; on a fixed ROM the reachable state set is FINITE, so a looping animation is literally a PERIODIC ORBIT, and the Artin-Mazur zeta of the reachable step-map ENUMERATES it.

2/2: a tiny real ROM - the period-4 counter V0 = (V0+1) AND 3 - has a full-state loop-map with one transient (V1 unset) feeding a 4-cycle (the character loop). zeta = exp(sum Fix(f^k)u^k/k) = 1/(1-u^4), self-verified (fixed-point counts of the iterated REAL-VM map vs. the single orbit - the #9151/#9163 discipline), and the orbit length IS the character period. Exactly the orbit the ad-hoc Chip8PredictionRoom look-ahead traverses; the zeta makes it visible/known.

Completes 2 to 3 to 1: #9161 (weighted catalog), #9163 (adinkra orbits), this (CHIP-8). RESUME updated; remaining = wire the zeta into the live soft IScheduler.

Anchors: Artin-Mazur 1965; Chip8.step; Chip8PredictionRoom.

Generated with Claude Code

…real VM step-map (shadow*)

Next-rung #1 (Aaron: 2→3→1; "we already have chip8/IScheduler predicting itself but
ad-hoc, not this formal math based; the periodic orbits are the cheat-engine's
memory-space orbits = character loops"). The confirming machinery came from #9151/#9163.

The REAL Chip8.step (src/Core/Chip8.fs; deterministic without RND) is a map on the VM
state; on a fixed ROM the reachable state set is FINITE, so a looping animation is
literally a PERIODIC ORBIT, and the Artin–Mazur zeta of the reachable step-map
ENUMERATES it — the formal, math-grounded version of the ad-hoc cheat-engine orbit
detection.

tests/Tests.FSharp/Chip8DynamicalZeta.Tests.fs (2/2): a tiny real ROM — the period-4
counter V0 ← (V0+1) AND 3 — has a full-state loop-map with one transient (V1 unset)
feeding a 4-cycle (the character loop). ζ = exp(Σ Fix(f^k)u^k/k) = 1/(1−u⁴),
self-verified (fixed-point counts of the iterated REAL-VM reachable map vs. the single
orbit — the #9151/#9163 discipline), and the orbit length IS the character period. This
is exactly the orbit the ad-hoc Chip8PredictionRoom look-ahead traverses; the zeta
makes it visible/known.

Completes Aaron's 2→3→1: #9161 (weighted catalog zeta), #9163 (adinkra orbits classify
members), and this (CHIP-8 dynamical zeta formalizing the predictor). RESUME updated;
remaining routed step = wire the zeta into the live soft IScheduler for run-ahead
self-prediction.

Anchors: Artin–Mazur 1965; Chip8.step; Chip8PredictionRoom / PredictionScheduler.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

AgencySignature-v1:
  persona: otto
  actor: zeta-otto
  surface: tests
  topology: shadow-clone
  intent: formalize-chip8-self-prediction-artin-mazur-zeta-of-real-vm-step-map-character-loop-orbit
  authorization: aaron-explicit-2-then-3-then-1-2026-07-02
  uncertainty: low
  measure: real-chip8-step-period-4-counter-rom-reachable-map-artin-mazur-zeta-1-over-1-u4-self-verified-orbit-is-character-loop-period-2-tests
  delta-u: ad-hoc-chip8-predictor-formalized-memory-character-loop-is-a-periodic-orbit-zeta-enumerates-it-2-3-1-complete
  seed: S4
@AceHack
AceHack enabled auto-merge (squash) July 2, 2026 17:13
@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.

@AceHack
AceHack merged commit 560ae39 into main Jul 2, 2026
29 of 31 checks passed
@AceHack
AceHack deleted the otto/chip8-dynamical-zeta-formal-predictor branch July 2, 2026 17:13
AceHack added a commit that referenced this pull request Jul 2, 2026
…eduler (self-prediction) (shadow*) (#9172)

The capstone (Aaron: "wire the zeta into the soft IScheduler"; RESUME step 4). A DoP=1,
seed-fixed soft-scheduler tick is a deterministic map on state (run(1)==run(N) —
CellScheduler's law). SchedulerZeta carries the Artin–Mazur zeta at the scheduler layer
so the loop can PREDICT ITS OWN RECURRENCE SPECTRUM before running the full budget.

src/Core/SchedulerZeta.fs:
  • predict key step start — RUN-AHEAD self-prediction: iterate the tick (through a
    finite projection `key`) only until a state repeats (never the caller's whole
    budget), report the orbit the run settles into (Transient, Period, Reachable). The
    loop modelling its own recurrence before it happens.
  • zetaOfRun / zetaOfOrbits — the Artin–Mazur zeta (1/(1−u^Period) for a run; Π over
    orbits for a spectrum), integer series.
  • spectrum / fixCount — the FULL recurrence spectrum over an enumerable config space,
    self-verifying (exp(Σ Fix f^k) = Π orbits).

tests/Tests.FSharp/SchedulerZeta.Tests.fs (3/3):
  • the soft scheduler predicts its own REAL CHIP-8 recurrence (period 4) by run-ahead,
    without a large budget, and its predicted zeta = 1/(1−u⁴);
  • the recurrence spectrum self-verifies (exp Σ Fix = Π orbits) on a config-map with
    known cycles (0 1 2)(3 4)(5)(6) ⇒ orbit lengths {3,2,1,1};
  • a deterministic cell-round map's period is recovered exactly.

This is the formal, math-grounded basis for the ad-hoc CHIP-8/IScheduler self-prediction
Aaron described — the zeta ENUMERATES the memory character-loops the ad-hoc scanner
finds. RESUME step 4 (capstone) landed; the ζ name-audition trajectory is complete.

Anchors: Artin–Mazur 1965; SoftScheduler/CellScheduler (the DoP=1 deterministic tick);
Chip8.step; #9151 (scheduler zeta), #9165 (CHIP-8 zeta), #9163 (orbit-classification).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

AgencySignature-v1:
  persona: otto
  actor: zeta-otto
  surface: src/core
  topology: shadow-clone
  intent: wire-dynamical-zeta-into-soft-scheduler-run-ahead-self-prediction-schedulerzeta-module
  authorization: aaron-explicit-wire-the-zeta-into-the-soft-ischeduler-2026-07-02
  uncertainty: low
  measure: schedulerzeta-predict-run-ahead-real-chip8-period-4-without-full-budget-spectrum-self-verifies-exp-fix-eq-orbit-product-deterministic-round-period-exact-3-tests
  delta-u: capstone-zeta-wired-into-soft-scheduler-loop-predicts-own-recurrence-before-running-name-audition-trajectory-complete
  seed: S4
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant