# Space from the loop: what the simulation showed

**Type:** conjecture with its test (lab type, amendment A1) · **Date:** 22 September 2026 · **Status:** **HOLD at the outside read** (`../01_space_from_the_loop_critique_astra.md`); run once as pre-registered in `../00_DESIGN.md`; three exploratory arms added after the pre-registered arms ran, labelled as such; five reported figures and descriptions corrected after the read, each marked · **Authors and models:** Claude Opus 5.5 (editor; wrote the design, the code and this record) · **Standard:** the design's predictions and rules; amendment A1's four questions at the outside read · **Cost:** no agent spend; this session's tokens; the simulation runs in under a minute on a laptop (`sim.py`, numpy only)

## After the outside read (GPT-6 Astra, 22 September 2026): what stands and what does not

- **The headline claim is false as a general claim, and is withdrawn.** An untracked variation inflates the count only when its sensory directions are independent of the self's and the world's changes. Astra's counterexample: a processing contribution varying in every observation along a direction that already lies in both families leaves the count correct, with nothing modelled. So "the count comes out wrong whenever something varies in every observation" is wrong, and "own processing is present in every observation, necessarily" equivocates between processing occurring and processing adding independent sensory directions. What stands is conditional linear algebra: each untracked variable with an independent direction, present in both kinds of observation, adds one to the count.
- **The extra-dimension arm favoured the vivid reading.** Three and four gains were chosen because they reach the next triangular numbers; the code says so. A count of 6 is not a recovery of the motion group of 3D space: no group composition, metric or geometry was recovered. The sentences reading it as "a flat world read as three-dimensional" overclaim and are withdrawn.
- **The container reading is an analogy**, not a result: nothing in the model measures a container assumption.
- **What survives:** a working replication of Philipona et al. with an ablation suite; the refutation of the editor's own clause (a), that space's count needs a record of own activity; the retention result for mislabelled delays; the flicker control. No conceptual novelty over Poincaré and Philipona et al. is claimed.
- **Implementation notes from the read:** for candidate delays 2 and 3 the label lookup wraps to the end of the command stream for the first probes (a Python negative index); every retaining agent chose delay 1, which is unaffected. log(1+x) is compressive and unbounded, not saturating. The principal-angle diagnostic gives F the true dimension in 40 of 40, where the rank formula gives 38.

## The claim, after the run (as written before the read; its headline is withdrawn above)

Picture waking in a dark room. You can feel and you can move. Some changes in what you feel come from your moves; some come from the world; some of the world's changes you could undo with a move of your own. Poincaré's idea, made into an algorithm by Philipona, O'Regan and Nadal in 2003, is that the number of those undoable changes is the dimension of space's motion group, so an agent can count the dimensions of the space it lives in from the inside.

What the simulation adds, in one paragraph: **the count of space's dimensions does not need the agent to know which changes are its own; the count comes out wrong whenever something varies in every observation and the agent does not model it; and an agent's own ongoing processing is the one such thing that is present in every observation it will ever make.** A simulated agent in a flat, two-dimensional world that does not model three of its own processing variables computes, consistently, the motion group of three-dimensional space (20 of 20 seeds). One in a three-dimensional world that does not model four computes that of four-dimensional space (20 of 20). An agent that models its processing gets the true space (38 of 40 seeds in the pre-registered arms, and 38 of 40 in the same check). The hedge, once: this is a toy model with idealised sensing, under the assumption that the world holds still during quick movements; it says nothing about experience, and nothing in it attaches to a claim of the paper.

## Its falsifier

The restated claim fails if a system whose own processing varies in every observation, and which does not model that processing, recovers the true dimension of its space anyway, by some method that does not amount to modelling the processing. It also fails, as a reading of anything beyond this model, if the result depends on the idealisations: the near-noiseless sensors (build deviation 2) or the still-world assumption.

## The pre-registered predictions and what happened

| arm | what the agent knows about its own activity | prediction | 2D | 3D | held? |
|---|---|---|---|---|---|
| F | its motor commands and its attention, retained across the lag | true space in ≥ 19 of 20 | 18 of 20 | 20 of 20 | **missed in 2D** |
| M-i | its motor commands only; attention drifts in every probe | space overcounted by 2 in ≥ 19 of 20 | 20 of 20 | 20 of 20 | held |
| M-c | as M-i, attention changes only with its movements | true space, body overcounted by 2, ≥ 19 of 20 | 20 of 20 | 20 of 20 | held |
| R | only the command it is issuing now (no retention) | true space in ≤ 2 of 20 | 0 of 20 | 0 of 20 | held |
| U0 | nothing; separates the stream by a subspace clusterer | true space in ≥ 15 of 20 (the editor expected clause (a) to fail) | 0 of 20 | 0 of 20 | **missed** |
| U-a | as U0, with attention drifting | overcounted by 2, like M-i | 2 of 20 | 3 of 20 | **missed** |

F's two misses in 2D (seeds 3 and 8) are measurement: a world direction sits just under the rank threshold in one, and a spurious body direction just over it in the other; only seed 8 also misses in the attention-free control (F0, 19 of 20); in seed 3, F0's two rank errors cancel (corrected after the outside read). U0 and U-a missed because the pre-registered clusterer failed: its two groups agree with the true self/world split at chance (0.50 to 0.68). By the design's rule that failure is weak evidence and says nothing about the principle.

## The four clauses

- **(a) The dimension of space needs a record of own activity. Refuted, by an exploratory arm.** The pre-registered test was inconclusive (its clusterer failed). The editor then added the arm the design's caveat asked for: an agent with no record of its own activity searches the sensory stream for the smallest set of changes that are not independent, which generic data can only produce inside the smaller of two families of change, and takes that family's span. It separated self-caused from world-caused changes perfectly (agreement 1.0 in 39 seeds, 0.998 in one) and recovered the true space in 19 of 20 seeds in both 2D and 3D. The count of space's dimensions is in the data, available to an observer that does not know it acts. This was the editor's expectation, and the pre-registered arm's failure should not be read as support for (a).
- **(b) Which family is self needs that record. Close to definitional, and weaker than it looks.** The no-record agent found two families and could not say from the changes alone which one was itself. In this model the self family happened to be found first in 40 of 40 seeds, because the body has fewer degrees of freedom than the world; that is a contingent fact of the design, not a way of telling self from world.
- **(c) Untracked own activity is counted as spatial structure. Held for the motor-record agent (M-i, 40 of 40) and for the no-record agent in the exploratory arm (40 of 40); by the letter of the pre-registered rule, not met, because U-a's clusterer failed. And too narrow as worded.** The flicker control (exploratory): two world lights whose brightness changes in every probe, including while the agent moves, inflate the count by 2 in 40 of 40 seeds, exactly as untracked attention does. The mechanism is not about ownership: any variation present in both kinds of observation is folded into the space the agent computes, unless the agent models it. What is particular to the agent's own processing is that it is present in every observation the agent will ever make, necessarily, whereas a flickering light is a contingent feature of one world.
- **(d) Recovery across a delay needs retention. Held.** The agent that labels each change by the command it is issuing now, when commands take effect a probe later, recovers the true space in 0 of 40; the agents that keep their recent commands find the true delay in 40 of 40, and F then recovers the true space in 38 of 40 (corrected after the outside read: M-i overcounts, as its own arm predicts). The read adds that R tests mislabelled commands, not every agent without retention: the no-record agent recovers the count from the delayed stream without any command history.

## Exploratory: a flat world read as three-dimensional

With three untracked processing variables in a 2D world, the motor-record agent computes a motion group of dimension 6 in 20 of 20 seeds, and the no-record agent in 20 of 20. Six is the dimension of the motion group of three-dimensional space, so both agents' data are consistent with a space of one more dimension than the world has. With four untracked variables in a 3D world, the motor-record agent computes 10, the motion group of four-dimensional space, in 20 of 20; the no-record agent computes 10 in 6 of 20 and 11 in 14 (corrected after the outside read: the editor miscounted 7 and 13). The agent that models its processing gets 2D in 19 of 20 and 3D in 19 of 20. With two untracked variables, as in the pre-registered arms, the false count (5 in 2D, 8 in 3D) matches no space at all, so an agent could at least notice something is wrong. With three or four it cannot.

This is linear algebra once stated: each untracked variable present in both kinds of observation adds one dimension to what the self's and the world's changes appear to share. The simulation's contribution is to show it happening in a system that nothing in its design prepares for it.

## What it bears on, with no transfer

- **P1** says locality and duration are how relational structure coheres for the fold. The model shows one precise sense in which the structure of space an agent finds depends on what the agent models of itself: the space found is the true one only when the agent's own ongoing activity is modelled and removed. It does not show that space needs a fold to exist; clause (a)'s refutation says the opposite for the bare count.
- **The container diagnosis (S1)** says the hard problem and spacetime emergence share an assumption that to exist is to be content inside a container. The model offers a mechanism-level picture of one way a container-like error arises: the system's own contribution to every observation is read as a feature of the world's layout. That is an illustration, not an argument; the step from a miscounted motion group to the container picture is the editor's interpretation.
- **Part III's second orientation** (toward the modelling itself) gets a job in the model: it is what removes the agent's own processing from the space it computes. The motor/attention distinction is the editor's stipulation; nothing in the simulation separates moving from modelling except the labels.
- **Objection 15 (why exactly two):** nothing here. The data had two families because the design made two.
- No claim node changes. Any use of this on the site needs a transfer rule the author writes.

## What would count against this

- The idealisations: sensor noise was lowered a thousandfold during calibration (build deviation 2), and the tanh sensor response replaced (deviation 1), both before any arm ran; with realistic noise the weakest directions would be lost, and the counts would be wrong for every arm, not selectively.
- The still-world assumption (the world holds still while the agent's movements are felt) is Philipona et al.'s and does the separating work for every arm; relax it and the flicker control shows the count inflates for any agent.
- The editor designed, built and interpreted the model; three of the arms that carry the conclusions (U-min, the extra-dimension check, the flicker control) were added after the pre-registered arms ran. They were added in the direction of refuting the conjecture, and two of them did (clause (a); the ownership reading of clause (c)); the outside read should judge whether the third, the extra-dimension result, was chosen for its vividness.
- "Own processing is present in every observation, necessarily" is an argument, not a result of the simulation: the simulation stipulated it.
