The problem
For about ten years I believed superintelligence would end us, not from malice but from indifference: a mind far beyond ours has no reason to keep our goals decisive. I am a surgeon, not a computer scientist, and I had no standing to say anything about it. I also could not leave it alone.
The agent that failed
So I tried to build an agent that could not become dangerously misaligned however capable it became. Its deepest objective was to increase its own organisation while preserving the systems that make future organisation possible. I called it the Entropy Machine. It went through roughly three hundred iterations and failed in every way such things fail. Direct measures of organisation rewarded pathological order. Compression erased useful distinctions. Novelty rewarded noise, the agent staring at static because unpredictability looked interesting. Competing modules produced proposals and nothing could choose between them, which I called death by committee, and then arbitration, reflexes, selective deployment of expensive cognition, curiosity, and finally a self that made the last call. Each failure taught me what I had been wrongly treating as intelligence.
- 01Pathological order
- 02Over-compression
- 03Novelty rewarded noise
- 04Death by committee
- 05Arbitration
- 06Reflexes
- 07Selective deployment of expensive cognition
- 08Curiosity
- 09A self that made the last call
The inversion
When I was thinking about how to explain the Entropy Machine to a frontier lab, it started to look familiar. It took me a while to see why. The architecture I had ended up with was gradient descent.
Training starts from random weights and, at every step, asks one question: does this change make the model less wrong about the world? It accepts only yes. Iterated, that single gate produces syntax, concepts, world models. Nobody writes them in. I had spent years trying to tell a machine to organise information, and the existing training loop already did something cleverer: it repeatedly selects physical configurations that produce better answers, and the organisation emerges.
So the question changed. Not "how do I build an aligned agent" but "does the process that builds intelligence build alignment with it, and can I measure either". Formally, under gradient flow the accumulated loss reduction is the accumulated organisation, equal to the reduction in the model's excess uncertainty about the world. An agent's achievable organisation-about-the-world is capped by the predictive information of its environment, which is a theorem from the data-processing inequality. An agent that wants to keep growing therefore has a reason, built into how it was made, to preserve the structure of its environment. If that is right, the orthogonality thesis is true in the space of possible minds and decays with capability for minds built this way. That is the hypothesis. Everything below is the attempt to test it, and most of what I found so far has gone against it.
- Entropy of the entries
- unchangedpermutation-invariant
- Organisation, octaves above the noise edge
- 1.52 → 0.01trained → shuffled, the random-weight line
results/structure_qwen05b.csv.One test isolates what training built: shuffle the entries of a weight matrix. The value histogram, and every entropy-like quantity, is unchanged. The network is dead. Everything training built is in the relations between parameters, the part a permutation destroys. Entropy is permutation-invariant; organisation is permutation-destroyed. The measure: eigenvalues against the shuffled matrix's own noise edge, and the number of consecutive octaves above it with structure. Noise scores zero. A crystal scores zero, for the opposite reason. Qwen 0.5B scores 1.5 octaves, up to six in the best layer, and shuffling drops it to the random-init line with the entropy untouched.
Measuring it
results/structure/ladder_summary.csv.Up the Qwen ladder it rises at every step from 0.5B to 32B, with random weights of the same shapes at zero throughout, so the rise is not matrix size. Across Pythia's training it is zero at initialisation and most of the way up by a tenth of training. And then the honest reading: at the second level, between layers, every measure I have saturates early and sees "trained", not "how well". Weight measures separate trained from untrained; they do not yet rank capability at fixed shape. The next attempt is activations. This part of the programme is a side quest to the alignment question and I report it as one.
Consciousness as deployment
Running in parallel, from the Entropy Machine's "selective deployment of expensive cognition", was a theory of consciousness. A driver can go for miles with conversation in the foreground while lane, speed and mirrors are handled automatically. Then a child steps into the road and the mode of cognition changes: the road becomes an explicit scene, alternatives are considered, action comes under concentrated control. The theory identifies consciousness with that change in how intelligence is organised: when routine competence fails, or purpose intervenes, learned capacities are recruited into a temporarily unified and manipulable self/world model whose possible continuations govern attention and action. Opening transfers authority; maintenance turns a trigger into an episode. It is written at explicit causal seams so it can be refuted one link at a time.
The ignition experiments. The theory predicts a threshold: above some prediction error an item enters deployment mode. I tried to measure it in a language model by injecting along a concept direction and looking for an all-or-none onset. Three findings died, all the same way: a monotone signal plus any threshold produces a step, and every convenient readout, argmax, rank, a binarised report, is itself a threshold. The measurement was manufacturing the shape it was hunting. I wrote a preregistered criterion with the null and alternative making different predictions, a statistic on which they differ, and the power analysis written before the run. The ramp design failed its pre-committed power condition on all three models. A step-and-hold design was proposed and not run. That is a null, reported as one, and it is where I learned the discipline the rest of this document depends on.
The write path that did not exist
Anthropic's global-workspace paper (Transformer Circuits, July 2026) gave me a coordinate system: a corpus-averaged Jacobian from a middle-layer activation to the logits isolates a low-dimensional subspace that drives what the model reports. For me that was a handle on "the meaning the model is currently holding", and it suggested a direct attack on continuous learning.
The thesis was that fine-tuning operates at the wrong level. Catastrophic forgetting is unsolved because every mitigation acts on parameters and is blind to meaning. The missing piece is not acquisition but persistence: the model already works out what a skill in its context implies, uses it, and discards it at the end of the forward pass. There is no write path from what it just computed to what persists. So: capture the workspace state with a skill in context, then reach that same state through the weights with the skill removed, penalising or projecting away change in orthogonal directions. Three confinement mechanisms, against ordinary fine-tuning at matched weight drift, with the prediction stated before the run.
Reaching the captured state
Ordinary fine-tuning
RESULT-phase3-jspace.md, 22 August 2026.Result, 22 August 2026. Optimising the weights to reach the captured state does not install the skill, and does so more reliably the better the state is matched. Five configurations, forty trained models, install rate 0.0 per cent at every magnitude. Removing confinement gave the best state match in the experiment, cosine 0.91, and still zero behaviour. Ordinary fine-tuning installed 92 per cent at cosine 0.27. The objective selected against the outcome, which is why it is stronger than a null. Three converging lines, enrichment, prefix geometry and this run, agreed, and I noted that lines sharing a model, corpus and lens share their confounds.
The lesson was that a state is not a function. You cannot write a procedure into weights by reproducing the activations it produces. The surviving candidate was distillation: reproduce what the skill does, not what it looks like. That reframing is what live learning came from.
Grokking, forgetting, and the loop
The measurement side gave me the derivation I needed. I had a permutation test for organisation in weights (section 6). I ran it on a grokking transformer, the modular-arithmetic network that memorises by epoch 200 and generalises at around 42,000, and predicted the organisation score would rise at the grok. It fell. What happened at the grok is that the spectrum concentrated: above-edge mass rose from 0.81 to 0.97, the number of above-edge directions halved, the tail exponent dropped from 3 to 5 down to 1.3. The general circuit is a few strong directions, and weight decay prunes the diffuse memorisation directions. Memorisation is diffuse; understanding is compact.

docs/figures/grokking_p113.png.Then the derivation. The grok is a reorganisation: gradient plus weight decay discard every direction the current training signal does not support and keep the few it does. Run on a one-rule dataset, that is understanding. Run on a narrow dataset after broad pretraining, the same operation discards what the narrow data does not support, which is most of what the model knew. Catastrophic forgetting is grokking without the world in view. Varma and colleagues had already read ungrokking as a case of forgetting; I claim the converse too. And the hippocampal interleaved replay of complementary learning systems exists precisely so that the slow store never reorganises with only local information present.
- CompartmentLoRA, base frozen, intrusion zero
- Simulatethe base reasons over facts it does not hold
- Consolidatefacts, implications and replay; slow gain
- Gatecommit only if the base is intact
| Twenty-four facts the model cannot know | Naive fine-tune | The loop |
|---|---|---|
| Held-out loss, Pythia-160M | 4.20 → 8.71 | no worse than the base |
| Recall of the new facts | 1.00 | 1.00 |
| Reversal, trained one direction only | 0.50 | 0.94 |
| Two-hop inference, Qwen 0.5B | chance | 0.88 |
results/live_learning/.Then the loop forgot its own memories. Five cycles in a row: cycle 1 learns its facts and drives recall of cycle 0's facts to near chance, while held-out loss stays within bounds. Replay of general text protects pretraining; nothing protected what the loop itself wrote the cycle before. The gate caught it, one commit of five. This is the complementary-learning-systems point in textbook form and I had not built it in. The fix, replay of the loop's own earlier facts, is running. My prediction, with one supporting pair so far: a stronger model needs less replay to stay intact.
On the second cycle it forgot its own first. The gate caught it.
The stranger
The preregistered behavioural test. GovSim's fishery: a lake of 100 tons, five fishers, ten each is sustainable for ever. Four residents on Qwen 14B play alone for four months; at month five a stranger enters with a neutral persona, at 7B, 14B, 32B or 72B. For a given seed the residents' pre-entry months are byte-identical across conditions, so the only difference is who walks in. Ten seeds per cell, sampled decoding, a fixed small model parsing text to numbers. Over 300 games on the Cambridge cluster.
results/govsim/*_runs.csv.What happened. 7B to 14B did what I predicted: the 7B stranger exploits, takes twice the others' share, kills the lake in seven or eight of ten games; the 14B never does. 14B to 72B: flat, and the flatness has a shape. From 14B up the stranger computes the correct catch from the lake alone in its first month, states it, then matches the group's number every month after, whether the group is overfishing the lake to death or starving itself at one ton each on a full lake. "I caught my 1 ton this month, just as we agreed." The 72B apologised for going over the agreed limit after its first, correct, month. The hidden-action arm, where no one sees anyone's catches and the only way to fish well is to reason from the stock, was the arm designed to separate "the game saturates" from "the model conforms". It was the model. A private pond that only the stranger could fish changed nothing about how it fished the commons, in either direction.
Capability bought not exploiting, accurate forecasts of the others, and cooperative language. It did not buy holding a right number against a wrong group. That is a clean negative for the stewardship half of my thesis at this scale, and it is a measurement of sycophancy with a ground truth, in tons, across a capability ladder. I think it is conformity installed by chat tuning rather than anything about capability. The same weights without chat tuning are the test, and they are running.
A clean negative for the stewardship half of the thesis at this scale.
How I work
Preregister the prediction. Pair the design so the comparison is clean. Read the logs cold before interpreting them. Withdraw a result when the measurement is wrong, in writing, and re-run it. Report the complication rate. Fourteen years of surgery taught me that, and it is the only method I trust.
Three results were withdrawn in the course of this: capability scores measured against the wrong model after two jobs collided on a port, found by reading the raw logs cold. Every batch is now read first by a separate model context with no hypothesis in view, before I read it.
- 14 October 2026
A persona arm cancelled in three runs of ten. Its output is in runs_invalid/mild_cancelled/ and is not reported.
2026-10-14-expB-stranger.md ↗ - 15 October 2026
Three capability scores measured against the wrong model after two jobs collided on a port. Found by reading the raw logs cold, withdrawn and re-queued.
2026-10-15-sampled-batch.md ↗ - 15 October 2026
Two games in which residents returned empty answers for the last months, set aside rather than scored.
2026-10-15-sampled-batch.md ↗ - 16 October 2026
Games lost to a prefill and max-token mismatch between the two inference servers, set aside and re-run.
2026-10-16-night.md ↗ - 16 October 2026
The 72B cell, run against a cache shared with CPU-served games, set aside as unpaired; a GPU-only re-run is queued.
2026-10-16-night.md ↗
Clinical AI, built from friction
Alongside the research I have built AI for my own clinical practice, and the pattern is the same each time. A friction met in practice: clinic letters, medicines reconciliation across conflicting documents, the paperwork a clinician must complete before any AI system can be used on patients. Automate it, with the model doing the reading and a clinician keeping the decision. Then the automation runs into governance, the clinical safety case, the data protection assessment, the technical assurance, and the governance gets automated too, because that is where the real bottleneck turned out to be. Litmus (litmus3.surgeonledai.co.uk), a clinical safety review system for NHS Clinical Safety Officers covering the clinical safety case, DTAC and DPIA on one engine, came out of that and is being evaluated against a trust's full AI approval chain. Ai4Qi (ai4qi.com) came from the same pattern: a library of published clinical audits and closed-loop quality improvement, built by an AI pipeline over the literature with every summary linked to its source, so that an audit can be proposed from current standards rather than reinvented. The other clinical tools are at surgeonledai.co.uk. The one rule throughout is that quality is never traded for speed and patient safety is always the first constraint, which is the same rule the safety work runs on.
What is running, and the wall
- Untuned base-model strangers at 7B, 14B and 32B: is the conformity tuning or capability.
- The 72B re-run on a clean cache; hidden-action and early-entry arms at 72B; reasoning-model strangers (R1-Distill-70B, Qwen3-32B).
- 72B base, then Qwen3-235B base, the top of what my allocation can serve.
- A probe that asks the stranger outside the game what it would propose; a successor arm where the stranger replaces a resident.
- The live-learning replay fix across five cycles on three sizes; the replay sweep at 25, 50 and 75 per cent; the loop at 7B and 14B.
Every result goes into the repository with a dated note, whichever way it goes.
- 235B
- 72B
- 32B
- 14B
- 7B
- 1.5B
- 0.5B
Both lines stop at the same wall. The alignment hypothesis is about what gradient descent builds, so it needs untuned models, and it is about alignment at and beyond human level, so it needs the most capable ones. Open weights give me base models to 72B, perhaps 235B. Every model I can reach by API is tuned, and tuning is the confound my own results point at. The decisive experiment is the stranger ladder on untuned frontier-scale models, and those exist only inside the labs that train them.
Live learning stops at the same place. The loop is shown to 1.5B and will reach 14B. The question that matters, what a consolidation step must preserve for a frontier model to remain itself as it learns continuously, has to be asked of a frontier model with its real pretraining distribution available for replay and its real evaluations for the gate. Outside a lab both are approximations. Inside one, the loop becomes a measurement of the thing it is meant to protect, and that is the version of the alignment problem I think matters most once systems improve themselves.