Draft site. The lake below is a model running in your browser. Its tests ran once, on 30 September 2026.
Islands of Stability spec v3.0
Islands across the sciences · ecology · a model

The lake

A shallow lake can stay clear or turn murky under the same nutrient load. Where is the edge of the clear state, and how would you find it: by watching, or by pushing?

Sense of island: basin-island Model: Carpenter, Ludwig and Brock, 1999 Tests run once, 30 September 2026

Phosphorus washes into a lake from the land around it. Some settles into the mud, and the mud releases it again, faster when the water is already rich in it. That feedback gives a lake two ways to be: clear, with little phosphorus in the water, or murky, with a lot, and in a middle range of loadings both are possible. A clear lake in that range stays clear until something pushes it far enough, and then it turns murky and stays murky even after the push is gone. Ecologists have seen this in real lakes, and they model it with one equation. This page runs that equation.

A model, not a lake. Everything here happens in the standard lake model, run in your browser. The model is the object the site's propositions 2 and 3 are stated for, a basin-island: an attractor with a boundary. Tests of those propositions in this model were frozen with their decision rules, deposited with a date, and then run once. What a model test can show, and what it cannot, is at the end of the page.

Push the lake

The lake starts clear. Raise the loading and watch the clear state's valley grow shallow. Push the lake and see whether it comes back. The left panel is the phosphorus in the water over time. The right panel is the landscape the lake rolls on: each valley is a stable state, and the hill between them is the edge.

Clear water
The lake above, drawn from the model's phosphorus level. Clear water lets light reach the plants on the bottom. As phosphorus rises the water turns green with algae and hides them. The disk hanging from the boat is a Secchi disk, which limnologists lower into a lake until it vanishes. It is drawn at the depth where it would still be seen. An illustration: the colors and depths follow the phosphorus level but are not computed from optics.

Phosphorus over the last 60 time units. Blue: the clear state. Red dashes: the edge. Orange: the murky state.

The landscape at this loading. The dot is the lake.

The map of the lake

In this model the clear state exists only while the loading is below 0.660, and the murky state only above 0.389. Between those two loadings both exist, and which one a lake is in depends on its history. The two ends are called folds: at each, a stable state meets the edge and both vanish.

Where the lake can rest, for each loading. The blue line is the clear state and the orange line the murky one. In the shaded band both exist, and the dashed red line between them is the edge. The dot is the lake in the panel above. Raising the loading slowly carries a clear lake along the blue line until it ends, and then the lake falls to the orange line. To get it back, the loading has to come down to where the orange line ends, much lower. That gap is called hysteresis.

How the island shrinks

Two numbers describe the clear state's island at each loading. The recovery rate is how fast the lake pulls a small disturbance back. The depth is how high the hill is between the clear valley and the edge. Both come from the model's equation, and neither needs noise to compute.

LoadingClear stateEdgeRoom before the edgeRecovery rateDepth
0.4500.4521.0540.6030.970.077
0.5000.5041.0000.4960.930.050
0.5500.5600.9510.3920.870.028
0.6000.6220.8990.2770.720.011
0.6400.6880.8430.1550.470.0021
0.6550.7280.8050.0770.250.00026

The recovery rate stays high over most of the range and then collapses near the edge. That collapse is critical slowing down: just before a lake tips, it takes longer and longer to recover from anything. It is also why watching might work: a lake that recovers slowly also wanders further and remembers its recent past longer, and those passive signs are the early warnings ecologists look for. Whether they find the edge as well as a push does is the first question below.

What the tests asked

Three tests were frozen with their decision rules and the smallest effects that would count, then deposited with a date, as the Map's were, and run once. Their random seeds come from that deposit's identifier. The results follow the three questions.

restricted

E1. Watching or pushing: which finds the edge?

Six lakes approach the edge. One observer only watches each lake's natural fluctuations. Another pushes it ten times and times its recovery. Both take the same 101 measurements and use the same method to estimate where the edge is. Bears on proposition 2, which is killed if watching locates the edge as well as pushing does.

survives

E2. The ghost: a doomed lake that looks safe

One lake is just inside the edge and will stay clear. Another is just past it: its clear state has vanished, but it lingers where the state used to be and will tip in a few dozen time units. Over the observation window it drifts no more than its natural fluctuation. Can watching tell them apart? Can a push? Bears on proposition 2's central clause, that persistence is not evidence of an island.

E3a survives · E3b unresolved · E3c survives

E3. Exits: memory, depth and warning

With steady weather, clear lakes eventually tip by chance. Does the chance of tipping fall as a lake ages? Does the average stay grow in a straight line with the island's depth, or exponentially? And does every tip give a warning? Bears on proposition 3, which says exits are memoryless and some come without warning. Here theory predicts the answer, so this test checks that the proposition's structure carries over to lakes rather than discovering anything.

Results

The three tests ran once, on 30 September 2026, after the frozen document was deposited as 10.5281/zenodo.23065462. Their random seeds come from that identifier, and every verdict follows the deposited rules. An earlier draft of the deposit was abandoned unpublished before any run, and nothing was run with its number.

TestBears onVerdictWhat was found
E1. Watching or pushingP2restrictedWatching was as good as pushing in 3 of the 4 settings. In the setting that favored pushing most, a push of 0.03 at noise 0.005, pushing's error was 0.85 times watching's (0.75 to 0.99), where 0.8 or less was needed. Every setting is in the table below.
E2. The ghostP2survivesPushing told doomed lakes from safe ones better than watching by 14.7 points of balanced accuracy (12.3 to 17.0), where 10 were needed. Pushing called 96.8 percent of the doomed lakes doomed and 41.9 percent of the safe ones, watching 57.2 and 31.8 percent. No safe lake was tipped by a push.
E3a. MemoryP3survivesThe Weibull shape of 2,000 lakes' exit times was 1.014 (0.980 to 1.049), inside the band of 0.9 to 1.1 that counts as memoryless. Every lake had tipped before the run ended.
E3b. DepthP3unresolvedAt depth ratios 3, 4, 5, 6 and 7 the mean stays were 245, 575, 1,492, 3,623 and 9,579 time units. A straight line misses them by up to 607 percent and an exponential by up to 13 percent. The rules needed one of the two within 10 percent and the other outside it.
E3c. WarningP3survivesAt a false-alarm rate of 10 percent, the alarm caught 20.1 percent of 1,286 exits (18.0 to 22.3), where 50 percent or less was needed. Its positive control caught 88.6 percent (85.5 to 91.1), above the 80 percent it had to reach for the test to count.
NoisePushPushing's error over watching's, with its intervalSurveys where pushing found no edgeCall
0.0050.011.68 (1.42 to 2.04)24.2 percentwatching as good
0.0050.030.85 (0.75 to 0.99)0.6 percentunresolved
0.010.014.93 (3.28 to 7.28)39.2 percentwatching as good
0.010.031.23 (1.09 to 1.45)11.7 percentwatching as good

Each verdict is on a test in a model of a lake, narrower than the proposition it bears on. The tests say what propositions 2 and 3 imply in this model, and nothing on their own about real lakes, organizations or AI agents. The pre-registration read a restricted E1 as a refinement of proposition 2: pushing is evidence only when the push is large against the lake's own fluctuations. Proposition 2 took that refinement in v1.0.

Cost line and fragility line

Cost line. A clear lake in the bistable range stays clear for free only while the loading stays where it is. Keeping the loading low is continuous work in the catchment, such as buffer strips, fertilizer rules and sewage treatment, and the island's depth is bought by it. When the work stops and the loading creeps up, the island shrinks.

Fragility line. The clear state ends at the upper fold. Before that, a storm's worth of phosphorus larger than the distance to the edge tips it, and near the fold that distance goes to zero. Once murky, the lake does not come back until the loading falls below the lower fold.

How the propositions meet the lake

PropositionOn the lakeStatus
P1 SparsityNot tested here. Across loadings the clear state is common, not rare: it exists everywhere below the upper fold.not applied
P2 The evidence ruleTested by E1 and E2, in the sense it is stated in: an attractor whose existence is judged by watching or by pushing.E1 restricted, E2 survives
P3 Exit statisticsTested by E3. Theory predicted the outcome, so the test checked that the structure transfers.E3a survives, E3b unresolved, E3c survives
P4 CostIllustrated, not tested: the clear island's depth is set by a loading that someone has to keep low. The model takes the loading as given, so it cannot measure the cost.illustration
P5, P6Framing propositions, stated for organizations.not applied

What a model can and cannot show

A model test shows what the propositions imply in the system the model describes, under the model's assumptions: one variable, weather as white noise, pushes that act instantly. If a proposition fails in the standard model of a bistable lake, that is a real strike against its general form. If it holds, it has held in the easiest case, which is necessary but far from sufficient. The next step for this domain is real data, such as the whole-lake experiment in which Carpenter and colleagues pushed Peter Lake toward a regime shift and watched for early warnings (Science 332, 2011).

Source and method

Model: dx/dt = a − b x + r xq/(hq + xq), from Carpenter, Ludwig and Brock, Ecological Applications 9, 1999, with b = 1, r = 1, h = 1 and q = 8, where x is phosphorus in the water and a the loading, both in the model's units. The numbers on this page are computed from the model's equation, and the design numbers for the tests from its equations alone. The browser runs the same equation with Euler steps of 0.01 time units and Gaussian noise. The frozen pre-registration (r1) is deposited, with its code, as 10.5281/zenodo.23065462.