Proving Agents Converge: Lyapunov Stability for Recursive Self-Evolution
By MAREF Engineering
Recursive self-evolution is the most powerful — and the most dangerous — idea in agent governance. Let a system improve its own defenses and it can get better every round. But let it improve without a brake and it can oscillate, over-fit, or diverge entirely. MAREF's answer is borrowed from control theory: a Lyapunov-style stability function that makes convergence a monitored property, not a wish.
This is the third post in a series drawn from the MAREF technical whitepaper and the Convergence Whitepaper.
Self-Evolution Needs a Brake
The naive approach to self-evolution is: update the policy, measure, repeat. The failure mode isn't theoretical — a policy that optimizes one metric can silently degrade another. Error rate drops while false positives explode. The system looks like it's improving while it's actually destabilizing.
MAREF models the system state as a vector of the metrics that actually matter: St = (FNRt, FPRt, Et, Wt, ηt) — false negatives, false positives, error entropy, policy weights, and learning rate. Then it tracks whether this vector is heading toward a stable basin.
The Lyapunov Idea
Control theory's classic stability test uses a Lyapunov candidate function V(S) that is positive everywhere and decreases along the system trajectory. MAREF applies the same shape as a heuristic: a weighted sum of the metrics, V(St) = 2.0·FNRt + 1.0·FPRt + 0.1·Et + 1.0·KL(Wt ‖ W*), where KL measures policy drift from the target distribution.
The formal claim, from the convergence whitepaper: with a learning rate ηt ≤ 0.005, the policy trajectory forms a contraction mapping toward W*, converging to a stable basin within O(1/ε) rounds. Two safety layers — the CircuitBreaker and the OscillationFixLoop — sit beneath the update step to prevent divergence. It's the difference between "we believe it converges" and "there is a Lyapunov function that says the error metric is going down."
The 200-Round Numbers
Reproducible from the public benchmark suite. Over 200 evolution rounds:
| Metric | Initial | Final | Improvement |
|---|---|---|---|
| FNR | 0.10 | 0.04 | −60% |
| FPR | 0.06 | 0.02 | −66.7% |
| KL Drift | 0.02 | 0.005 | −75% |
| Saturation | — | Round ~175 | Auto-pause |
Saturation Detection: When to Stop Improving
Knowing when to stop is as important as knowing how to improve. MAREF detects saturation when |gaint| < 0.003 for five consecutive windows, and auto-pauses evolution to prevent over-optimization. The system keeps the gains it has earned instead of grinding into a worse local optimum. The convergence whitepaper reports the same saturation point around round 175 across runs, with a Pareto-frontier analysis showing the trade-off surface between accuracy and safety.
Monitored, Not Assumed
The difference between MAREF's self-evolution and a naive loop is the difference between "we hope it's getting better" and "there's a stability function, a convergence theorem, and 200 rounds of reproducible data." The Lyapunov-style monitoring is runtime telemetry — you can watch the indicator in maref status — and the full proof sketch, empirical tables, and TLA+ checks are in the Convergence Whitepaper. Watch the concept in 40 seconds in E09: Self-Evolving Defense.
Watch convergence yourself.
Install MAREF, run the demo, and watch the stability indicator in real time. Open source, Apache 2.0, no GPU.
Deploy MAREF in 5 minutes →