The Model
A 1-D flow dx/dt = f(x; r). Fixed points solve f(x)=0. Their stability is the sign of the derivative there — the 1-D Jacobian is the scalar f'(x*), and its single eigenvalue λ=f'(x*):
The three normal forms:
transcritical dx/dt = rx − x²
pitchfork dx/dt = rx − x³
Assumption (AMBER): autonomous, smooth 1-D flow; the local picture near r=0 is the whole story only up to higher-order terms — the normal form. Not a claim about any real population; a model with named terms.
The Lineage
A bifurcation is where behaviour changes suddenly — fixed points appear, vanish, or swap stability as the knob turns. Keep turning the knob on a map and these single events stack into a cascade: period-doubling after period-doubling, the road the-feigenbaum paves into chaos.
the-bifurcation → the-feigenbaum
One qualitative change here; an infinite accelerating sequence of them there, converging at δ ≈ 4.669.
The Witness
Re-checks the load-bearing claim live: the origin of the pitchfork at r=1 is unstable (f'(0)=r=1>0). If the Tamper (window 6) makes the engine judge stability without the derivative, this flips red.
in ↓Data In
Pick a bifurcation and turn the knob r. The engine solves f(x)=0 in closed form and classifies each root by f'(x*).
litThe Panel
left: f(x) & its fixed points · right: the bifurcation diagram x*(r)
out ↓Data Out
Proven result. Saddle-node r+x²: two fixed points for r<0, they collide and annihilate exactly at r=0, none for r>0. Pitchfork rx−x³: one stable point for r<0, three for r>0 (origin turns unstable, two stable branches split off ±√r). Transcritical rx−x²: the two points 0 and r pass through each other and swap stability at r=0.
The Adversary
"Counting f=0 roots tells you the dynamics." It tells you where the fixed points are, never whether they attract or repel. Stability lives in f', not in f. Drop the derivative and the diagram is a lie in the right places.
"Every parameter crossing is a bifurcation." Only crossings where the qualitative phase portrait changes count. A root that merely moves is not a bifurcation.
The Graveyard
"Saddle-node: the two fixed points survive at r=0, just very close."
→ They coincide into one degenerate point at r=0 and are gone for r>0. Count drops 2→1→0.
"Pitchfork: the origin stays stable for all r."
→ At r>0 the origin has f'(0)=r>0, so it goes unstable; stability is handed to ±√r.
"Transcritical: one point is always the stable one."
→ The roles swap at r=0. Whoever was stable for r<0 is unstable for r>0.
"Stability = sign of f(x)."
→ Stability = sign of f'(x*). This exact error is the planted void in window 6.
The Tamper
Planted void, disclosed: make the engine judge stability from f(x)=0 alone, ignoring f'(x). It then declares every fixed point "stable" — an unstable branch is mislabeled, the diagram's colours are wrong, and the Witness (7) catches it live.