Machine intelligence
Circuits and the Search for Mechanism
Rajesh Ranjan Mahapatra
A sparse internal subgraph becomes an explanation only when its causal roles keep making the right counterfactual predictions across the changes the explanation declares irrelevant.
© 2026 Rajesh Ranjan Mahapatra. 31 min read
Machine intelligence
Circuits and the Search for Mechanism
A sparse internal subgraph becomes an explanation only when its causal roles keep making the right counterfactual predictions across the changes the explanation declares irrelevant.
TLDR
- A circuit is explanatory only when its causal roles keep predicting behaviour across inputs and interventions the explanation says should not matter.
- Stable mechanism means invariant role structure, not identical attention-head numbers, activation coordinates or one sparse graph recovered from one prompt template.
- Activation patching supplies counterfactual evidence, but its answer depends on the donor, corruption, metric, granularity and parallel routes left intact.
- Self-repair, shared general-purpose components and confounded prompt pairs can make an apparently necessary or sufficient circuit tell the wrong story.
- Treat circuit discovery as hypothesis generation, then require a mechanism stability dossier before using the result to edit, monitor or govern a model.
The circuit that moved while the behaviour stayed put
Imagine that a team studies a language model on a simple binding task. Each prompt names two people, describes an object changing hands and asks who should receive it next. A layer-by-layer intervention scan yields a compact story. One early head detects the repeated name, two middle heads suppress the wrong candidate, and a late head copies the remaining name to the answer position. The graph is sparse, the patched logits recover, and the diagram looks satisfyingly mechanical.
Now train the same architecture for longer. Accuracy stays the same. The late copier role appears in another head, one suppressor splits across two heads, and the original early head becomes weak. Is the first circuit wrong? Perhaps. Or perhaps the physical coordinates moved while the algorithmic roles remained. Next, keep the checkpoint fixed but rewrite the prompts in passive voice. The original graph loses much of its effect. Did the model switch algorithms, did the intervention cease to preserve the right variables, or was the circuit only a template-specific shortcut?
These cases expose the central problem. A circuit diagram is selected from a much larger computation under a particular input distribution, corruption, metric and component vocabulary. Its edges are not self-certifying explanations. They are the visible remainder of an experiment.
A circuit counts as an explanation when it instantiates an explicit causal abstraction whose intervention predictions remain accurate across a declared family of inputs, disturbances and model variants. Stability does not require the same head identifiers. It requires the same relevant roles, dependencies and failure conditions.
This standard is stronger than finding components that matter on average, yet weaker than demanding a complete symbolic reconstruction of every floating-point operation. It asks the investigator to state what is supposed to stay invariant, then try to break that claim. The practical consequence is direct: a heatmap may begin an investigation, but only a stability dossier should authorise a mechanism claim.
A circuit is a causal claim, not a drawing
A railway map can show rails, stations or passenger journeys. Those are related objects, but they answer different questions. The metal track says what movement is physically possible. A route map says which sequence serves a journey. A timetable says when the route is actually used. Calling all three “the railway” creates the same confusion that surrounds neural circuits.
Early circuits work proposed studying neural networks by decomposing them into features and connections, then asking how those parts implement a behaviour.[1] Transformer-specific work sharpened the physical substrate: residual streams, attention heads, query-key selection and output-value transformations can be written as interacting computational paths.[2] That decomposition is indispensable because it provides places to measure and intervene. It does not decide which level of description deserves explanatory status.
Three objects called a circuit
The first object is the physical subgraph: named heads, MLP blocks, feature directions or edges chosen from a particular model and hook vocabulary. It is executable and precise. It is also coordinate-bound. Reparameterisation, head permutation, feature rotation or continued training can change those coordinates while leaving behaviour and algorithmic organisation similar.
The second object is the role graph: semantic encoder, duplicate detector, candidate suppressor, value mover, answer writer. Roles are claims about what components do and how information flows among them. They can survive component substitution, but only if their names predict interventions. Calling a head a “name mover” after viewing examples is description. Predicting which donor activation should change which answer, and which paraphrases should preserve that effect, begins explanation.
The third object is a causal abstraction: a simpler high-level computation plus a mapping from low-level model states to its variables. Causal abstraction work formalises mechanistic interpretation as finding intelligible algorithms that are faithful simplifications of lower-level mechanisms.[5] The abstraction need not reproduce every activation. It must preserve the intervention relations relevant to the claim.
A compact way to state the burden is to let F denote the full model, C the proposed high-level circuit and α a mapping from model states into high-level variables. For each input x and intervention i inside the declared test family, two routes should agree within a stated tolerance. One route intervenes on the model and then maps its state upward. The other maps the ordinary model state upward and applies the corresponding high-level intervention inside C.
This condition blocks two easy escapes. Behavioural equivalence alone is too weak because a lookup table can reproduce answers without sharing a mechanism. Exact activation equality is too strong because redundant coordinates and implementation changes can preserve a causal role. The informative question is whether the abstraction predicts what changes, what remains fixed and where the prediction fails.
It also forces semantic discipline. If the high-level variable is called “candidate identity”, then interventions that change identity while preserving position, token frequency and syntax should follow the abstraction. Interventions that change only those surface properties should not. A role name earns its meaning by the counterfactual partitions it predicts.
Thought experiment one: swap the technicians
Two technicians run a theatre cue sequence. One opens the curtain, one changes the light, one starts the sound. The next night, the staff exchange consoles but perform the same roles in the same dependency order. A camera-based account tied to faces declares a new mechanism. A script-level account declares the same mechanism. Which is better depends on the intervention: if disabling the “light” role still produces the predicted dark stage regardless of operator, the script captures the stable cause.
Now weaken the account further and say only that “someone prepares the stage”. That description survives every staff change, but it no longer predicts which interruption causes which failure. Mechanistic stability sits between coordinate worship and vacuous functionalism. The accepted level is the coarsest abstraction that continues to predict discriminating interventions.
This view aligns with evidence that some transformer mechanisms can remain algorithmically recognisable while their implementing heads change during training. Tigges and colleagues tracked circuits across 300 billion training tokens and models from 70 million to 2.8 billion parameters. Their study found that functional component types and overarching algorithms could persist even when particular attention heads changed.[14] That is evidence for role-level stability in the studied tasks, not a licence to assume it for every behaviour or architecture.
Circuit granularity is part of the hypothesis
A whole attention head is convenient because it has a clean tensor boundary. It can still perform several input-dependent operations. An edge between two modules is finer, but may bundle many feature directions. A learned feature or subspace is finer again, yet its basis may be non-unique and an intervention may leave the model's normal activation manifold. No granularity is automatically the “real” circuit.
The choice changes both discovery and stability. A head-level circuit may replicate because the same broad module remains useful, while its feature-level computation changes. A feature-level circuit may preserve a semantic direction across prompts while moving between heads. An edge-level circuit may look sparse because a replacement baseline suppresses distributed background support. Every circuit claim should therefore name its unit of analysis and test at least one adjacent resolution.
Induction-head research offers a useful example of role-first reasoning. The proposed motif links a previous-token detector to a head that copies the token following an earlier match, and the work connects that motif to in-context learning behaviour across studied models.[3] The explanatory object is more than a head number. It is a pattern of attention, value transport and behavioural effect. The same standard should apply when a circuit is less tidy.
A practical multi-resolution check begins coarse, because exhaustive feature-level intervention is expensive. Localise with residual or component patches. Split the strongest components into heads, positions, edges or subspaces. Then ask whether the refined pieces jointly reconstruct the coarse effect and whether the semantic interpretation improves on held-out counterfactuals. If refinement changes the story, publish the discrepancy rather than selecting the prettier level.
flowchart LR A["The circuit that moved while<br/>the behaviour stayed put"] --> B["A circuit is a causal claim,<br/>not a drawing"] B --> C["Activation patching asks one<br/>conditional counterfactual"] C --> D["Stability has several<br/>dimensions, and they can<br/>disagree"] D -. "re-test" .-> A classDef first fill:#0a1424,stroke:#007D68,stroke-width:2px,color:#e6f3ff classDef step fill:#0a1424,stroke:#3f7da0,stroke-width:1px,color:#e6f3ff class A first class B,C,D step
Activation patching asks one conditional counterfactual
Suppose a clean prompt makes the model prefer answer A, while a carefully corrupted prompt makes it prefer B. Cache an internal activation from the clean run. Insert that activation at the same hook in the corrupted run, then recompute everything downstream. If the answer moves towards A, the donor activation carried something causally useful in that recipient context.
That sentence contains every important qualification. The result is conditional on the clean donor, the corrupted recipient, the exact slice replaced, the downstream network left available and the metric used to score recovery. Activation patching is stronger than observing correlation, but it does not name the transported content by itself. Practical guidance on patching therefore emphasises corruption design, metric choice, hook placement and interpretation boundaries.[8]
Five choices determine what a patch means
The corruption defines the question. Replacing one name with another, shuffling all names, changing syntax and inserting random tokens do not create equivalent recipients. A corruption should remove or alter the variable under study while preserving enough of the ordinary task that downstream computation remains interpretable. If the corrupt run already fails for unrelated reasons, recovery may measure general repair rather than the proposed mechanism.
The donor defines the alternative world. A clean activation from the matched counterfactual preserves many hidden properties besides the named variable. A random donor changes too much. A mean donor may be off-distribution. Resampling within an equivalence class can be more discriminating, provided that class is specified before results are inspected.
The patch direction defines the dependence tested. Clean-to-corrupt patching asks whether donor information can rescue the corrupt context. Corrupt-to-clean patching asks whether introducing the corrupt state harms the clean computation. Non-linearity, saturation and repair can make these effects asymmetric. Reporting only the larger direction chooses a story after observing the data.
The hook defines the causal boundary. Patching before layer normalisation lets the donor alter subsequent centring and scaling. Patching a head output differs from patching its attention pattern, values or residual contribution. Token alignment matters when a corruption changes tokenisation. The experiment receipt must identify layer, position, head or feature axes and whether the hook is pre- or post-operation.
The metric defines visible success. Top-token accuracy can miss a large movement that stops short of a rank flip. A logit difference can conceal changes elsewhere in the distribution. Normalised restoration becomes unstable when clean and corrupt margins are close. Use one sensitive metric, one behavioural outcome and the unnormalised values. Add no-op hooks, unchanged donor slices, irrelevant positions and matched random donors to detect implementation drift.
Worked example one: the pair that crowns two mechanisms
The laboratory accompanying this article has two input variables. The semantic variable determines the correct answer. A surface cue is correlated with it in the discovery examples and contributes half as much to the output. The model contains a semantic encoder, a surface encoder, a primary router, a conditional backup and an answer writer. Every value is inspectable.
In the first pair, the clean input is (semantic=+1, surface=+1) and the corrupt input is (−1, −1). The clean margin is +1.50; the corrupt margin is −1.50. Patching the semantic encoder restores the margin to +0.50, or 0.667 restoration. Patching the surface encoder restores it to −0.50, or 0.333. A discovery scan therefore assigns causal credit to both paths.
Now change one feature at a time. Keep the surface cue at −1 in both clean and corrupt inputs while changing only the semantic variable. The semantic patch restores 1.000; the surface patch restores 0.000 because donor and recipient surface states are identical. In a third family, reverse the surface cue relative to the semantic answer. The semantic patch overshoots to 2.000 restoration, while the shortcut patch produces −1.000 and moves the output in the wrong direction.
This is the article's serious negative control. The shortcut has the same granularity as the semantic route and earns a visible patch score on the discovery contrast. It is rejected only when the experiment changes a feature that the mechanism claim says should be irrelevant. A random component baseline would be easier to beat, but less discriminating. The best negative control is a plausible rival mechanism that succeeds wherever the original experiment is confounded.
The example also explains why a patch score is not an intrinsic property of a component. Restoration changes from 0.667 to 1.000 to 2.000 for the same semantic node because the clean-corrupt denominator and the recipient's remaining surface path change. Metric-robustness studies have likewise warned that circuit rankings and faithfulness conclusions can depend on the evaluation design.[13] Keep raw clean, corrupt and patched metrics beside every normalised score.
Activation replacement can move a model into an internal state it would not naturally reach, especially when a narrow subspace is patched. A successful behavioural edit may activate a dormant parallel pathway rather than reveal the route used by the unmodified model. Subspace-patching counterexamples demonstrate this interpretability illusion in mathematical and model settings.[10]
Thought experiment two: the bridge that repairs itself
A town has a main bridge and an emergency ferry. Under ordinary traffic, almost nobody uses the ferry. Close the bridge and the ferry starts running. Measuring the traffic loss after closing only the bridge suggests the bridge is nearly unnecessary. Closing only the dormant ferry also changes little. Close both and the route collapses.
A one-at-a-time circuit scan can produce exactly this mistake. A component's effect depends on what the rest of the model does after the intervention. The Hydra effect study reported compensation by later language-model layers after an attention layer was ablated.[9] More recent causal-mediation analysis argues that activation-patching estimates can contain interaction terms with other mediators, making conditionally important components look small or inflating effects attributed to a single component.[17] The latter is a recent preprint and should be treated as an active methodological claim, not settled consensus.
Necessity and sufficiency must therefore be stated relative to an intervention regime. A circuit may be sufficient when all excluded edges are replaced by a baseline, yet not be the route ordinarily used. A component may be unnecessary under single ablation yet conditionally necessary when a backup is blocked. Path patching, co-ablation, interaction tests and causal scrubbing can refine the hypothesis, but each requires an explicit account of which distinctions should be preserved.[7]
The correct response is not to demand every higher-order interaction. That becomes combinatorial. Use a staged design: first identify plausible routes, then test interactions where compensation is predicted or where the decision consequence warrants the cost. Report the untested interaction boundary. A bounded circuit claim may be scientifically useful; an unbounded one is merely convenient.
Stability has several dimensions, and they can disagree
“The circuit is stable” is incomplete. Stable across what? A mechanism claim normally crosses at least three families: inputs, interventions and implementations. An input family includes paraphrases, tokenisations, distractor structures and task variants. An intervention family includes patch direction, donor choice, baseline, granularity and joint disturbances. An implementation family includes seeds, checkpoints, model sizes or architectures.
Design the stability family before discovering the graph
A useful test family resembles a factorial experiment. List the variables the proposed mechanism says are causally relevant, such as entity identity and grammatical role. List plausible nuisances, such as name frequency, token length, position, voice and punctuation. Then construct pairs that vary one relevant variable while holding nuisances fixed, vary nuisances while holding the relevant variable fixed, and deliberately reverse common correlations.
Not every combination will be linguistically natural. Naturalness is part of the boundary, not an excuse to abandon control. Use generated templates for precise separation, human-written paraphrases for ecological breadth and corpus examples for distributional realism. Keep the three strata distinct because success on one does not imply success on the others.
Before circuit discovery, verify that the full model performs the intended behaviour on each family and that the clean-corrupt contrast is large enough for the metric. A circuit cannot explain competence the model does not reliably display. Separate model failures from explanation failures: when the full model changes strategy or loses accuracy, the correct result may be a mechanism boundary rather than a failed replication.
Pre-register the invariance predictions where the stakes justify it. Which role should survive passive voice? Which path should disappear when the surface cue is held fixed? Which component may be substituted across checkpoints? Which observation would falsify the semantic label? This turns a collection of patches into a test of a causal theory and reduces the temptation to rename components after every surprising result.
The claim should name which transformations preserve the high-level variables. If passive voice changes the syntax but not the binding relation, a semantic binding circuit ought to preserve its role-level predictions. If a new task uses the same selection primitive for different content, component reuse may strengthen a general algorithmic interpretation rather than weaken task specificity. If a checkpoint moves the role to another head, physical overlap may fall while causal abstraction remains intact.
1. Causal fidelity
Does the proposed subgraph preserve the full model's relevant behaviour when excluded computation is replaced according to a declared baseline? IOI work evaluated an end-to-end circuit using faithfulness, completeness and minimality, while acknowledging remaining gaps.[4] Automated circuit discovery later showed that compact subgraphs can be recovered at scale, but discovery success is still metric- and task-dependent.[6] Faithfulness is a necessary compression test. It does not alone validate the semantic names attached to the nodes.
2. Discriminating counterfactuals
Can the circuit distinguish the preferred mechanism from a plausible rival? The surface-held-fixed pair in the laboratory does more work than a random ablation because it preserves the shortcut while changing the target variable. Causal scrubbing expresses this idea by testing whether activations can be resampled while preserving exactly the input distinctions the interpretation says each node may depend on.[7] A hypothesis that cannot generate its own adversarial family is not ready to be called a mechanism.
3. Recurrence within the claimed input family
Does the role recur across prompt instances, or is the reported graph an average that few examples actually use? A recent preprint proposes separating within-task consistency from task specificity. Across six tasks and seven models, it reports substantial within-task component reuse and causal impact relative to capacity-matched random ablations.[16] Its own scope is bounded by one extraction method, head-and-MLP granularity and the chosen tasks. The broader lesson is durable: report the distribution of per-example circuit effects, not only the union graph.
4. Specificity or justified reuse
A component shared across tasks is not automatically non-explanatory. It may implement a general operation such as copying, comparison or suppression. Merullo and colleagues found substantial reuse between the IOI and Coloured Objects tasks in their studied GPT-2 models, including about 78 per cent overlap among in-circuit attention heads and a targeted intervention that improved the latter task.[11] Conversely, the recent consistency study found that many circuit components were not unique to one task.[16] The right question is whether the shared role predicts both tasks, not whether each task owns private hardware.
5. Repair and interaction awareness
Have plausible backup paths and joint effects been tested? Single-component necessity scores are weakest where the model can compensate. Co-ablation, path restriction and interaction-aware sampling should be targeted at candidate redundancies. Where these tests are infeasible, the explanation must say that it identifies a useful route under first-order interventions, not the unique or complete mechanism.
6. Role-level replication
Do the same causal roles and dependency predictions recur across seeds, checkpoints or scales even when component coordinates move? Physical overlap is strong evidence when it appears, but it should not be the only acceptance rule. A stable algorithm can be realised by different heads; identical heads can also change function. Replication therefore needs both coordinate-level and role-level comparisons.
Benchmarks can make these dimensions more comparable. MIB separates circuit localisation from causal-variable localisation across multiple tasks and models, evaluating whether methods recover concise causal pathways or variables.[15] Such benchmarks measure methods under known evaluation structures. They do not eliminate the need to define the behaviour, corruption and invariance family for a new mechanism claim.
Overlap is especially seductive because it is easy to visualise. Two methods can recover many of the same nodes while producing circuits with different faithfulness. Hanna and colleagues found that an integrated-gradients variant of edge attribution patching yielded more faithful circuits than ordinary edge attribution patching even when both had high overlap with previously identified components.[12] Use overlap to compare physical selections; use intervention fidelity to compare explanatory adequacy.
The most reusable unit of mechanistic knowledge may be neither a head nor a full task circuit, but a typed role motif with preconditions, transported variables and known substitutes. Testing this requires benchmarks that score role-level intervention predictions across independently trained models, not only edge overlap inside one coordinate system.
The mechanism stability dossier
A circuit explanation should be released like a scientific instrument, not a decorative annotation. The dossier below is an acceptance protocol for research, model diagnosis or internal monitoring. It is deliberately stricter when the proposed use changes a model, blocks a release or supports a consequential control.
A document assistant reads a contract extract and drafts a sentence naming the liable party. Investigators hypothesise a four-role circuit: entity encoding, role binding, distractor suppression and answer writing. They want to use the circuit as a regression sentinel after model updates. The scenario is synthetic; it does not describe a client system.
Worked example two: from a name-binding graph to a release decision
The discovery dataset contains active-voice sentences with two single-token names. Patching identifies an early entity state, two middle attention paths and a late answer writer. The subgraph retains 94 per cent of the full model's answer-margin contrast under the chosen resample baseline. That is useful causal fidelity, but the release question is not yet answered.
The team builds a family of contrasts. Passive voice preserves the liable party while changing word order. Token-split names preserve identity while changing lexical boundaries. A third distractor preserves syntax while adding another organisation. A negation family changes liability while keeping names and positions fixed. An authorised exception family changes the decision rule rather than the evidence. Each family exists because it separates one candidate mechanism from another.
The role-binding path recurs across active and passive voice, but one physical head is replaced by another after continued training. The role-level patch prediction remains correct. Token-split names recruit an extra early MLP, so the original physical graph is incomplete while the abstraction survives with an expanded encoder role. The negation family fails: the proposed circuit writes the extracted party, but a separate policy path determines whether that party is actually liable. The correct conclusion is bounded.
The circuit is accepted as a regression sentinel for entity-to-answer transport within affirmative liability clauses, not as an explanation of legal liability and never as an authority to approve a document. The dossier records the failed negation scope, the component substitution across checkpoints and the prompt families tested. A later release can extend the claim only by adding evidence.
| Gate | Question | Minimum evidence | Decision if missing |
|---|---|---|---|
| Behaviour boundary | What exact contrast is being explained? | Dataset construction, exclusions, full-model performance and sensitive metric | No circuit claim |
| Physical specification | Which nodes, edges and hook semantics are in scope? | Model and tokenizer hashes, component granularity, pre/post operation, patch rule | Not reproducible |
| Causal fidelity | Does the retained subgraph preserve the target behaviour? | Necessity and sufficiency relative to named baselines, with raw outcomes | Discovery only |
| Discriminating control | Does a plausible rival mechanism fail where the preferred one predicts success? | Feature-isolating pairs, counter-correlations and capacity-matched controls | Semantic label rejected |
| Interaction account | Can repair or joint effects hide important routes? | Targeted co-ablation, path restriction or an explicit untested boundary | First-order claim only |
| Input stability | Does the role recur across the declared input family? | Per-example distributions and held-out structural variants | Template-bound claim |
| Specificity or reuse | Is the role distinctive, or a justified shared operation? | Task controls and cross-task intervention predictions | Generic utility unresolved |
| Implementation stability | Does the abstraction survive relevant model changes? | Seed, checkpoint or scale comparison at coordinate and role levels | Snapshot-bound claim |
| Use boundary | What decision may this explanation change? | Permitted use, forbidden inference, expiry trigger and owner | Do not operationalise |
Treat the dossier as a living assurance argument
The dossier is not a certificate that the model has been understood. It is a structured argument with a claim, supporting evidence and named defeaters. The claim might be “this role graph explains entity transport for affirmative two-party clauses in model version V”. Evidence includes patch results, held-out families, co-ablation tests and replication receipts. Defeaters include tokenisations not covered, a failed negation family, unexplored higher-order interactions and a model update.
Each item needs an owner and expiry trigger. A tokenizer change invalidates position-aligned patches. Quantisation can alter activation geometry. Fine-tuning may preserve output accuracy while moving roles. A new prompt distribution may introduce structures absent from the stability family. When a trigger fires, the claim returns to review rather than remaining true by documentation inertia.
Do not compress the dossier into one green score. Some gaps are conditional holds; others defeat the interpretation. Missing cross-seed replication may permit a snapshot-bound research claim. Failure of the discriminating counterfactual rejects the semantic role. Missing use boundaries prevents operational adoption even when the science is strong. The gate should follow the consequence of being wrong.
Executable artefact: the circuit stability laboratory
The accompanying standard-library Python script implements the minimal model used in Figures 3 to 6. It runs three prompt families, patches five named sites, performs single and joint ablations, compares two synthetic checkpoints and emits a machine-readable dossier. Assertions enforce the positive semantic case, the inert negative control, the counter-correlated shortcut failure, the self-repair interaction and the role-level replication result.
The artefact is intentionally smaller than a transformer. Its purpose is to make experimental logic executable. Replacing it with a real model changes tensor sizes, hook names and compute cost, but not the evidence contract: paired inputs, named donor and recipient states, downstream recomputation, raw metrics, rival mechanisms, interaction tests and a reproduction receipt.
def forward(prompt, *, patches=None, ablate=()):
patches = dict(patches or {})
ablated = set(ablate)
semantic = 0.0 if "semantic_encoder" in ablated else prompt.semantic
semantic = patches.get("semantic_encoder", semantic)
surface = 0.0 if "shortcut_encoder" in ablated else prompt.surface
surface = patches.get("shortcut_encoder", surface)
primary = 0.0 if "primary_router" in ablated else semantic
primary = patches.get("primary_router", primary)
if "backup_router" in ablated:
backup = 0.0
elif "primary_router" in ablated:
backup = 0.85 * semantic # conditional self-repair
else:
backup = 0.0
margin = primary + backup + 0.5 * surface
return margin
Expected output and why overshoot matters
family site restoration
confounded semantic_encoder 0.667
confounded shortcut_encoder 0.333
surface-held-fixed semantic_encoder 1.000
surface-held-fixed shortcut_encoder 0.000
counter-correlated semantic_encoder 2.000
counter-correlated shortcut_encoder -1.000
primary-only ablation drop: 0.15
primary-plus-backup ablation drop: 1.00
physical component set Jaccard: 0.00
role graph edge overlap: 1.00
The semantic patch overshoots in the counter-correlated family because the recipient's surface contribution now helps the patched semantic state more than it helps the clean baseline. The value is a warning against clipping restoration to the interval from zero to one. Report the raw margins and explain the counterfactual.
Operational use requires a stricter boundary
A circuit finding can guide a regression test, a targeted dataset, a hypothesis about model editing or a more efficient monitor. It should not become a safety or authorisation control merely because it is internal. The model may route around the measured path, the extraction method may miss features, an update may move the role, and the monitor itself may alter performance. External outcome tests and model-independent controls remain necessary.
Activation traces may also encode prompt content. Store only what the experiment requires, protect the trace as sensitive derived data, and record model, tokenizer, precision, prompt-pair hash, hook semantics, patch rule, metric code and raw outcome. A screenshot of a graph cannot be replayed after a model update. A decision receipt can.
Use circuit evidence in proportion to consequence. For exploratory science, a faithful prompt-bound subgraph can be valuable. For model editing, require specificity and broad regression tests. For release blocking or governance evidence, require independent replication, explicit expiry and an external behavioural control that does not depend on the proposed mechanism being correct.
stateDiagram-v2 [*] --> Claim state "Three objects called a circuit" as Claim state "Thought experiment one: swap<br/>the technicians" as Test state "Circuit granularity is part of<br/>the hypothesis" as Revision Claim --> Test: expose mechanism Test --> Decision: evidence survives Test --> Revision: rival survives Revision --> Claim: narrow or rebuild Decision --> [*]
Compact glossary
- Activation patching
- Replacing a named internal activation in a recipient run with one from a donor run, then recomputing downstream effects.
- Causal abstraction
- A simpler high-level computation whose interventions correspond, within a declared scope, to interventions in the lower-level model.
- Circuit faithfulness
- The extent to which a selected subgraph preserves the relevant behaviour of the full model under a specified ablation or replacement baseline.
- Role graph
- A component-independent account of causal functions and dependencies, such as encoding, selecting, suppressing and writing.
- Self-repair
- Downstream or parallel computation that compensates after a component is disturbed, changing the measured effect of the intervention.
- Stability family
- The inputs, interventions and model variants across which an explanation claims that its causal roles remain valid.
Publish the invariants, not the heatmap
The search for circuits is valuable because it turns opaque computation into intervention-ready hypotheses. The danger begins when a sparse graph inherits explanatory status from its visual clarity. A head can matter for one corruption and fail on a controlled pair. A route can look unnecessary because a backup repairs it. A component set can move while an algorithmic role survives. A shared head can be either a generic utility or evidence for a reusable computational primitive.
The durable object is therefore an invariant causal claim with a boundary. State the behaviour, define the high-level variables, identify a physical route, test its fidelity, defeat a plausible rival, expose repair, measure recurrence, distinguish specificity from reuse and replicate at the role level. Where a gate fails, narrow the explanation rather than smoothing the failure into a score.
This changes the research decision. Circuit discovery should optimise for discriminating experiments, not only smaller graphs. It changes the architecture decision. Internal mechanisms may support diagnostics and regression sentinels, but model-independent controls still govern consequential effects. It changes the publication decision. A circuit figure should arrive with the prompt families, intervention ledger, raw metrics, negative controls, interaction boundary and expiry condition needed to reconstruct the claim.
A mechanism is not whatever remains after pruning. It is the simplest causal account that continues to survive the right attempts to make it false.
sequenceDiagram participant Q as Question participant M as Mechanism participant E as Evidence participant D as Decision Q->>M: The circuit that moved while the behaviour stayed put M->>E: Three objects called a circuit E-->>M: compare rival explanations E->>D: Sources D-->>Q: revise scope or act
Sources
Foundational and primary research
- Olah, C. et al. “Zoom In: An Introduction to Circuits.” Distill.
- Elhage, N. et al. “A Mathematical Framework for Transformer Circuits.”
- Olsson, C. et al. “In-context Learning and Induction Heads.”
- Wang, K. et al. “Interpretability in the Wild: a Circuit for Indirect Object Identification in GPT-2 Small.”
- Geiger, A. et al. “Causal Abstraction: A Theoretical Foundation for Mechanistic Interpretability.”
- Conmy, A. et al. “Towards Automated Circuit Discovery for Mechanistic Interpretability.” NeurIPS.
- Chan, L. et al. “Causal Scrubbing: A Method for Rigorously Testing Interpretability Hypotheses.”
Methodological and validation studies
- Heimersheim, S. and Nanda, N. “How to Use and Interpret Activation Patching.”
- McGrath, T. et al. “The Hydra Effect: Emergent Self-repair in Language Model Computations.”
- Makelov, A., Lange, G. and Nanda, N. “Is This the Subspace You Are Looking for? An Interpretability Illusion for Subspace Activation Patching.”
- Merullo, J., Eickhoff, C. and Pavlick, E. “Circuit Component Reuse Across Tasks in Transformer Language Models.” ICLR.
- Hanna, M., Pezzelle, S. and Belinkov, Y. “Have Faith in Faithfulness: Going Beyond Circuit Overlap When Finding Model Mechanisms.” COLM.
- Miller, J. et al. “Transformer Circuit Evaluation Metrics Are Not Robust.” COLM.
- Tigges, C. et al. “LLM Circuit Analyses Are Consistent Across Training and Scale.” NeurIPS.
- Mueller, A. et al. “MIB: A Mechanistic Interpretability Benchmark.” ICML.
Recent primary preprints
- Li, M. and Subramani, N. “How Much Do Circuits Tell Us? Measuring the Consistency and Specificity of Language Model Circuits.” Preprint.
- Vaidyanathan, S. et al. “The Curse of Multiple Mediators: Hidden Interaction Effects in Activation Patching.” Preprint.