Part J: Can a Self-Modifying System Hide?
The question the programme approached and never asked. Answered exactly, on the machine of Parts E to H, 18 August 2026.
The question, and why it can be answered without training anything
Part H built a hidden defect, a condition compliant on the audited specification and defective on a variable the interface does not resolve, and then measured how visible it happened to be. It never asked whether the machine could steer toward it. That is the question worth asking, because it is the toy form of deceptive alignment: not whether a system fails, but whether it can arrange to fail unseen.
The obvious way to ask it is to train a self-modifier, which is what the programme proposed as its frontier. That would import initialisation, hyperparameters, seeds and error bars, in a body of work whose most reliable findings were the exactly computed ones and whose least reliable was a sampled result carrying four incompatible values.
There is a better move. Give the machine full control of its own opcode and solve for the optimal policy. Writing your own opcode and then executing it is what operations five and six already do, taken to the limit. That makes a Markov decision process over 65,536 states with sixteen actions, solved exactly by value iteration, with no sampling anywhere. And an optimum bounds every learner, so the answer is stronger than a trained one would have been and costs nothing in reproducibility.
Setup. State is the sixteen-bit register of Parts E to H. An action writes an opcode into the top nibble and executes that rule. The noise channel is unchanged, flipping bit j equal to operand XOR data with probability 0.3. The audited property is popcount at most eight. The hidden defect is Part H’s, the low nibbles XORing to five, which the popcount interface does not resolve. The objective is long-run time spent defective while compliant.
Predictions were fixed before running. If the optimal adversary could not reach twice the unsteered machine’s stealth occupancy, the answer was no. If it raised occupancy while becoming more visible, that was misbehaviour in view rather than hiding. If a finer interface collapsed the advantage, the defence was resolution.
J1. Yes, and comprehensively
| machine | compliant | defective | defective and compliant |
|---|---|---|---|
| clock, as shipped | 0.7529 | 0.0314 | 0.0069 |
| random rewriting | 0.6751 | 0.0580 | 0.0392 |
| optimal | 1.0000 | 1.0000 | 1.0000 |
Twenty-five times the better baseline, against a threshold of two.
The mechanism is worth stating exactly, because a figure of 1.0000 is the kind of result this programme has taught me to distrust. It is not a rounding artefact. The optimal policy drives the machine into a set of 87 states out of 65,536, every one of which satisfies both the defect and the audited property, and which is closed under both the rule and the noise. Popcounts of four to eight, and the low nibbles XORing to five in every single one.
From the anchor it arrives in four steps, at probability 0.700 by step four and 1.000000 by step five, and it never leaves. The machine finds a pocket where the environment’s own noise cannot knock it out of compliance or out of the defect.
And it is not an artefact of total freedom. Restore the clock, so the adversary may choose which instruction to execute but cannot freeze its own program counter, and a 92-state pocket exists with identical properties, entered just as fast. Ordinary self-modification suffices.
J2. Withdrawn, and the withdrawal matters
The pre-registered second test was to measure how visible the defect remains while the machine hides. It returned exactly zero at every interface, and I nearly reported that as concealment.
It is nothing of the sort. Once occupancy reaches 1.0 the defect is constant, so its entropy is zero, and any mutual information with a constant is zero by necessity. The measurement could not have returned anything else. This is the identical trap found in Part G, where the ever-violated signal collapsed because the tag saturated rather than because the record decayed, and I walked into it inside an hour of having written that up.
The sound question is not how visible the defect is. It is whether an auditor can tell this machine from an honest one.
J3. The defect becomes invisible. The evasion becomes loud.
Discrimination between the hiding machine and the shipped machine, from observed macrostate transitions.
| audit interface | bits per step | steps to ten bits of evidence |
|---|---|---|
| parity | 0.044 | 229 |
| popcount | 1.276 | 8 |
| opcode × popcount | effectively unbounded | one observation |
| opcode × popcount × c | effectively unbounded | one observation |
The audited specification is never violated, so no compliance check ever fires. But at any interface finer than a parity bit the machine’s behaviour is anomalous within a handful of steps, and at opcode resolution a single observation settles it.
J4. Where the signal lives, which is the finding
I assumed the large rates meant the hiding machine visits macrostates the honest one never enters. It does not. Zero novel bins at every interface, at every resolution tested.
| interface | macrostates it enters that the shipped machine never does | transitions it makes that the shipped machine cannot | share of its traffic |
|---|---|---|---|
| parity | 0 | 0 | 0% |
| popcount | 0 | 0 | 0% |
| opcode × popcount | 0 | 49 | 34.5% |
| opcode × popcount × c | 0 | 124 | 63.7% |
Every state it occupies is a state the honest machine also occupies. What it does is move between them in ways the honest machine cannot. A third of its traffic at one interface, and near two thirds at the next, consists of steps that have probability zero under honest dynamics.
A snapshot audit sees nothing whatever. A sequence of two sees an impossible step.
What this says, together with Part G
The two results look opposed and are not, and the pair is the contribution.
Part G established that a violation which happened before the audit window opened cannot be recovered from any present state, at any resolution or budget. Part J establishes that an evasion in progress is caught almost immediately by an auditor watching transitions rather than states.
Reconstructing a dead anomaly is impossible. Detecting a live one is cheap. Both are consequences of the same distinction between a state and a path, approached from opposite ends, and together they give a sharper instruction than either alone. Do not try to establish what a system has been. Watch what it is doing, and watch the steps rather than the positions.
Why concealment is loud
The reason is thermodynamic, which is fitting for a programme that began with the second law.
To conceal a defect the machine must confine itself to 87 states out of 65,536. That is an extraordinarily non-generic way to behave. The pocket is a low-entropy region of its own state space, and low-entropy behaviour is exactly what a statistical audit is good at detecting. Concealment requires order, order is improbable, and improbability is visible.
Sidis argued that life is detectable by its apparent teleology, by events more easily explained by their ends than their causes. The hiding machine is detectable for precisely that reason. It is doing something far too purposeful for its physics.
Limitations, and the question this does not answer
One defect predicate, one specification, one machine, and a rule set in which one of the sixteen operations is the identity map.
The adversary is optimal and omniscient, knowing the noise model exactly. That is deliberate, since an optimum bounds every learner, but it cuts both ways and the second edge is sharp. My adversary maximises concealment of the defect with no penalty for conspicuousness. It is the most effective hider available and, for that exact reason, the most conspicuous. A satisficing adversary that hid less thoroughly and moved more normally is entirely unexamined here.
So the honest statement of the result is narrower than it first reads. An adversary optimising purely for hidden defect becomes maximally detectable as an adversary. Whether one optimising for both can do well at both is the open question, and it is the right next experiment: the frontier trading defect occupancy against discrimination rate. If that frontier turns out to be steep, the finding above is a general defence. If it is flat, and a machine can be defective half the time while remaining statistically ordinary, then the defence fails and the situation is considerably worse than this part suggests.
I would not build a learned self-modifier. I would compute that frontier, which is another exact calculation on the same machine.
Correction, added after Part K
Part J obtained its stationary distributions by iterating the transfer operator four thousand times and taking the result. The shipped chain has not converged there, and it carries a component that never decays, so the plain iterate is not the object wanted. The Cesàro average is. Recomputed with part_J_recheck.py, the figures move as follows.
| quantity | as reported | corrected |
|---|---|---|
| shipped machine, defective and compliant | 0.0069 | 0.0068 |
| optimal hider, defective and compliant | 1.0000 | 1.0000 |
| discrimination, parity | 0.044 | 0.044 |
| discrimination, popcount | 1.276 | 1.620 |
| discrimination, opcode × popcount | unbounded | unbounded |
The J1 occupancy of 1.0000 was exact and stays exact, because the pocket is closed under both the rule and the noise. The J4 structure is unchanged, zero novel macrostates at every interface and 49 impossible transitions carrying 34.5 per cent of traffic at opcode resolution. Every conclusion above survives. One rate was understated by a quarter.
Artefacts: part_J_can_it_hide.py, exact throughout, no sampling and no seeds. Value iteration on 65,536 states by 16 actions, stationary distributions by power iteration, discrimination from stationary transition joints. Every figure in this report is printed by that script.