alphaFeedback

WorksComputer Science

Proof-Carrying Evolution: Black-Box Search, White-Box Flight

AI contributions
Not recorded for this paper
View details

Abstract

We study whether a language model can help design controllers whose behavior can be formally checked. In proof-carrying evolution (PCE), a search proposes controllers together with their certificates. Their mathematical forms are fixed; a proposer chooses their numerical parameters together. Certificate checks guide selection, and only a certified candidate can be returned. The deployed artifact is a control law and its certificate; the language model is used only during design. We compare four language models with classical search and synthesis on docking under a speed limit, pursuit of a maneuvering target, and attitude control on SO(3), using paired runs and shared proposal allowances. Certificates are checked in exact rational arithmetic during search on the linear problems. On SO(3), the search uses floating-point checks, followed by exact re-verification of every reported champion. The best run of each method also receives Lean 4 proofs of its stated control properties. On the linear problems, the strongest models beat the standard classical baselines on every run, but a classical optimizer that chooses certificates for the same objective closes most of that lead. Among the cited pursuit champions, the ranking does not survive a change from Euler to zero-order-hold dynamics. On SO(3), no model detectably outperforms CMA-ES when mixed with classical mutation. When models write every proposal, one tested model improves on CMA-ES and the other performs worse than its mixed variant. All search medians remain below the hand-tuned law. In a docking control with the objective and mutation operator held fixed, retaining certified candidates yields new certified designs in every run; removing this rule yields none.

Introduction

Spacecraft controllers need guarantees whose assumptions and scope can be reviewed. For many critical maneuvers, opportunities for recovery are limited, so a review board asks not only whether a design worked in simulation but why it must work. Mission requirements are therefore often requirements on the strength of a guarantee under a stated model: the time within which a docking maneuver is guaranteed to reach its tolerance, the largest measurement or initial-state uncertainty under which it still succeeds, or the size of the set of states from which a vehicle is guaranteed to capture, or to evade, another under stated assumptions about its actions. Meeting such a requirement means finding both a control law and a certificate that establishes the property over the relevant operating conditions. This paper optimizes three such objectives: a certified docking-time bound, a certified capture radius against a maneuvering target, and the size of a certified attitude region on SO(3).

Classical methods such as LQR, H∞H_\infty design, gain scheduling and Lyapunov-based nonlinear design produce explicit laws that engineers can inspect and analyze, although explicit mathematical form alone does not make a complex system easy to understand. Choosing an explicit controller family still leaves a design problem: an initial law may admit no certificate in the chosen family, or its certified bound may be too weak for the mission. The certificate itself is part of this problem. Changing its parameters can improve the bound for a fixed control law, while changing the law can improve performance but lose the certificate. Searching over both gives the optimizer a way to improve what can be guaranteed.

Reinforcement learning and neural policies [39, 44] offer flexible ways to optimize constrained objectives, but their behavior can be harder to inspect and verify. A language model can instead act at design time, proposing parameters for an explicit controller and its certificate; executing the deployed law requires no model inference. We ask whether a language model can serve as the proposer inside such a certifiable design space, rather than replace it with a black box.

We call this approach proof-carrying evolution, after proof-carrying code [1]. In proof-carrying code, an untrusted producer supplies a program and a proof that it obeys a safety policy; a consumer checks the proof before accepting the program. PCE applies this separation to control design (Figure 1). A proposer modifies controller and certificate parameters, a verifier checks the certificate conditions, and selection favors candidates with better certified objective values. Retained designs provide starting points for further proposals. Only a certified candidate can become a run’s result, so acceptance depends on checking rather than on trust in the proposer. Machine checking establishes a stated property of a stated model; the choice of property and the model assumptions still require engineering review.

The experiments here use fixed controller and certificate forms: linear state feedback with a quadratic certificate on the linear problems, and a geometric proportional–derivative (PD) law with a degree-4 certificate on SO(3). The proposer chooses numerical parameters; it does not write or modify controller code. Optimizing uncertainty tolerance or a certified evasion region would extend this scope and would require new certificate conditions within this framework; here measurement noise is assessed after search (§ 7.2). The questions are whether a language model proposes better parameters than classical search and synthesis, and whether checking certificates during search helps produce certified designs. On the linear problems, the comparison depends on how the classical methods choose their certificates (§ 6.4).

Figure 1

Figure 1. Proof-carrying evolution. A proposer chooses the parameters of a controller and its certificate, selection favors candidates whose certificate passes the check, and each run’s best certified design has an exact check; the best run of every arm also receives a Lean proof (Table 1 gives the checks on each problem).

Contributions.
  1. Method (§ 3). PCE, an evolutionary loop in which each candidate is a controller paired with its certificate. Inside the loop the search proposes and a checker decides: certificates are checked in exact rational arithmetic on the linear problems. A certificate compiler turns a checked certificate into a Lean proof. An independent audit rejects proofs that rely on unfinished obligations or unapproved axioms.

  2. Comparative evidence (§ 6.1). Four models (gpt-6-astra, gpt-5.6-sol, Claude Opus 5.5 and the open-weight gpt-oss-120b; Astra, Sol, Opus and gpt-oss below) share paired seeds and proposal allowances with classical baselines (Table tab:cross). On the linear problems, Astra and Sol beat the standard classical baselines on every run. A classical, objective-aware certificate optimizer specified before its runs shows no detected difference from either on docking; on pursuit it beats Sol and trails Astra slightly (§ 6.4). Among the cited pursuit champions, this ranking does not survive zero-order-hold dynamics (§ 7.3). These comparisons use one reasoning-effort setting per model; apart from a detected but unsized benefit for Sol on pursuit, they do not establish whether feedback improves model proposals. On SO(3), no model detectably beats CMA-ES when it writes about one proposal in five; Opus does when writing every proposal (§ 6.5).

  3. Verification during search (§ 6.2.4). In a controlled docking experiment with the objective and mutation operator held fixed, retaining certified candidates produces new certified designs in every run; removing that rule produces none. Seeking new certificates afterwards recovers 2 of the 9,399 controllers produced by the unverified search.

  4. Guarantees beyond simulation (§§§ 4.2, § 4.3, § 7.1 and § 7.2). The pursuit designs with Lean proofs carry a capture theorem over every admissible thrust sequence of the target, and therefore every evader strategy. Under a thrust limit, a hand-designed law and the best docking run of every arm but one have decrease theorems for the clipped dynamics. The best attitude controller of every arm has a regional decrease certificate on SO(3). The cited docking and pursuit designs also have decrease and trajectory theorems under bounded measurement noise and rounding error, assuming a bound on floating-point error.

  5. Exploratory optimizer studies (§ 6.6). The search itself need not be trusted, since the checker decides what we keep. On docking, we gave a language model control of the whole search, testing four optimizers with one model and, for one optimizer, four model configurations. Each combination used two seeds and the same exact evaluator. Every newer configuration lowered the cost on both seeds. The ordering of the optimizers changed with the seed, though, and their time and price differed by one to two orders of magnitude. Every final champion carries an audited Lean certificate. One optimizer also read an archived answer when its sandbox allowed it, so we need to isolate the proposer as part of the method.

Related work

Language models in evolutionary search and in proof.

FunSearch [2], AlphaEvolve [3] and ShinkaEvolve [4] use a language model as the mutation operator of an evolutionary search over programs, and showed that such loops can discover new algorithms under automated evaluation; ShinkaEvolve targets the number of evaluations the search needs. Fitness in those systems is empirical; it does not establish formal properties of the surviving code. PCE uses the same propose, evaluate and select loop, with certificate checks governing acceptance. Our search space consists of numerical parameters for fixed controller and certificate forms. Searching over controller structure, as those systems search over program code, remains outside our experiments.

Goedel-Prover V2 [5] uses an open 32B model with Lean compiler feedback. It reports 90.4% on MiniF2F (pass@32, with self-correction). DeepSeek-Prover-V2 [46] and AlphaProof [47] also prove competition mathematics. To our knowledge, none gates engineering synthesis. In PCE a prover would repair obligations beyond the templates (§ 7.4); all obligations here have templates (§ 3.2).

Verina [6] tests joint generation of code, specification and proof in Lean. Its best frontier model proves 4.9% of tasks in one trial without compiler feedback. Our obligations are more structured: once a certificate passes its exact check, a deterministic template can construct the proof. We therefore use templates for the reported designs and test model-based proof repair separately (§ 7.4).

Language models as optimizers.

Language models are used for more than evolutionary program search. They can act as general-purpose optimizers, proposing candidates from earlier results and evaluation feedback [62]. The problems range from prompts and heuristics to model pipelines, as in DSPy and GEPA [58, 49]. More recent approaches let agents write, execute and refine code, and even change their own workflows [53, 59, 56]. How much of the search the model controls differs between these methods, but they all use external evaluation to guide the next improvements. We use a similar approach in PCE, with a separate decision about acceptance: the model can explore freely, while a deterministic certificate checker decides which candidates can be accepted.

Model or procedure.

How much of an improvement comes from the model, and how much from the optimization procedure? Studies find that both can matter substantially, but a more elaborate search does not necessarily beat a simpler one [64, 52]. Agent benchmarks show a similar dependence on the model, the agent scaffold and their interaction [51, 55]. Sometimes a simple pipeline matches a more elaborate agent, and no optimization strategy does best on every problem [61, 60]. We therefore need to account for the computational cost and what the search procedure contributes, as well as the final performance [54]. We use random search and genetic algorithms as model-free baselines for this reason. PCE also lets us examine two settings: campaigns with the model inside a fixed search loop, and optimizer experiments in which it runs the whole search (§ 6.6).

Certified control and certificate synthesis.

[7] provide a systematic stability library in Lean 4 and mathlib, following machine-checked control and ODE theory in Coq and Isabelle [8, 9, 10]. These are libraries; they perform no synthesis. Closer to PCE, [12] formally certify sum-of-squares Lyapunov functions for polynomial systems in Minlog, Pegasus [13] generates continuous invariants that KeYmaera X then proves, and VeriPhy [14] carries a verified hybrid-system model through to a verified controller executable. Each certifies or compiles a given controller or model, but none searches for the controller. Our generated obligations follow the same spirit: docking certificates lift per-step checks to trajectories by an induction the generator emits, and pursuit certificates by one shared handwritten lemma, seq_affine_decay. On the synthesis side, FOSSIL 2.0 and the CEGIS line [11] synthesize Lyapunov and barrier certificates, and controllers with them, as neural templates checked by satisfiability-modulo-theories (SMT) solvers; trust rests on the solver and its floating-point interface. PCE replaces the solver in the trust base with a proof kernel, through exact rational sum-of-squares (SOS) witnesses.

Learning and assurance in spacecraft control.

Earlier work by the present authors and colleagues placed language models in the control loop itself. Prompted and fine-tuned agents flew spacecraft in Kerbal Space Program differential games, from text and from screenshots [36, 37, 45]. Small fine-tuned models emitted control vectors for orbit transfer, cislunar control and powered descent [38], and a model trained by group relative policy optimization reasoned its way to control actions [42]. That line followed learned policies for landing and multi-phase ascent [39, 44] and compact recursive networks for optimal control [43]; language has also conditioned safe rendezvous trajectory generation [40]. In each case the learned model acts at flight time or the safety of its output rests on the optimizer that produced it. Closest in spirit is AutoResearch [41], in which a language model drives the research loop offline, never operates the vehicle, and has each result certified against the problem’s measured seed noise, a statistical credibility layer. PCE likewise keeps the model at design time but makes the credibility layer formal. Where learned policies do fly, run-time assurance wraps reinforcement-learning policies for docking and inspection in control-barrier-function shields [15, 16, 17], and neural Lyapunov–barrier methods verify trained controllers after the fact [18]. Those approaches retain a learned policy in the deployed controller; PCE uses the model only during design. Separating untrusted search from trusted checking is not new; to our knowledge, the new combination is a model jointly proposing controller and certificate parameters in an evolutionary loop, admission by exact certificate check, and kernel-checked theorems for reported designs.

Method

The loop

PCE searches over a fixed family of controllers and certificates. A candidate is one choice of their parameters θ\theta, specifying a control law u=πθ(x)u = \pi_\theta(x) and a function VθV_\theta. The certificate conditions express the desired closed-loop property, such as decrease of VθV_\theta within a region. On the linear problems the controller is linear state feedback u=Kzu = Kz and the certificate a quadratic Lyapunov function V(z)=z⊤PzV(z) = z^\top P z, so a candidate is the pair (K,P)(K, P); it is stored as (K,L)(K, L) with P=LL⊤P = LL^\top, which makes PP positive definite by construction. On SO(3) a candidate is fifteen positive diagonal gains that set both the controller and the certificate (§ 4.3). Following evolutionary-search usage, we call the stored parameter vector the candidate’s genome. A generation consists of proposal, checking and selection. The retained candidates form the elite, and the best certified candidate of a run is its champion. Table 1 lists what is searched and checked on each problem.

At each generation (Figure 1), a language model or classical operator proposes candidates, typically by modifying retained designs. Each is checked and scored using the problem’s rules (Table 1). On the linear problems, a tiered verifier checks certification and a simulator measures mission cost. On SO(3), a floating-point certificate program determines both admissibility and score.

Selection retains a fixed-size elite. In the main campaigns, the objective is a certified value, so certified candidates rank ahead of uncertified ones. Uncertified candidates survive only when too few certified candidates are available to fill the elite. In the control experiment ranked by simulated cost (§ 6.2.4), half the elite places are reserved for certified candidates. A run returns its best certified candidate. § 4 defines the problems, and Appendix § 10 gives the search settings.

Problem Parameters searched Check during the search Check afterwards
Docking gain KK and certificate factor LL exact: stability, the speed-limit envelope and the docking bound NN Lean proof for the best run of each arm
Pursuit gain KK and certificate factor LL exact: robust decrease and the capture radius exact re-certification of each champion; Lean proof for the best run of each arm
SO(3) fifteen diagonal gains of the controller and the certificatefloating point: regional decrease, by a linear program exact re-check of each champion and of the positivity of VV; Lean proof for the best run of each arm and for the hand-tuned law

Table 1. What is searched and checked on each problem.

Checking certificates instead of searching for proofs

On the linear problems, the verifier checks each certificate condition (§ 4.1) by testing positive definiteness of a quadratic form. This is sufficient for the required nonnegativity and provides an exact witness: a weighted sum-of-squares decomposition [21, 22], computed by LDL⊤LDL^\top factorization in exact rational arithmetic. A non-positive pivot fails this check and rejects the candidate. The check takes milliseconds without calling Lean. A successful factorization supplies the proof data: the generated Lean file states the decomposition as a polynomial identity with the exact coefficients as data, so checking it needs no proof search, no language model and no external solver (Appendix § 11).

Verification proceeds in tiers. Tier 0 rejects candidates using numerical spectral-radius checks and, on docking, rollout divergence. Tier 1 is the exact rational check, which performs the same mathematics that Lean verifies, but at evolutionary throughput. Tier 2, repair by a language model with compiler feedback, is held in reserve for obligations that no template covers (§ 7.4). On the two linear problems every certification decision in this paper was made at tier 1, by construction. On SO(3) the loop admits candidates with a floating-point program, and every counted champion is re-verified at tier 1 afterwards (§ 6.5).

Which designs receive Lean proofs.

Lean independently checks proofs for the best run of every arm in Tables tab:docking, Table 5 and tab:so3, including the optimizer and model-only controls, and the tightest pursuit-sweep designs. SO(3) proofs retain each run’s gains, region level and contraction target.

Other proved designs are the champions of Astra’s three docking control experiments, gpt-oss’s best static-prompt pursuit run, the preliminary single-run designs discussed in § 6, the hand-designed saturated law, and the proof-repair file. The hand-tuned SO(3) law and exact manifold-preserving step also have proofs. We call these designs cited.

For each, the Lean 4 kernel [24] checks the proof and an independent audit permits only Lean’s three standard axioms (Appendix § 11). The kernel cannot check intent; theorem statements and model assumptions require review (§ 8).

These rules make verifiability part of selection: the search must find a controller that performs well and admits a certificate in the chosen family.

Proposers

Every third generation the model proposes eight candidates; Gaussian mutation supplies the rest (Table 2). Prompts show the elite’s genomes, scores, certification status and objective, and state the certification requirements. Replies are parsed and, on the linear problems, clamped to fixed gain bounds. Failed calls are replaced by Gaussian children.

We use bare requests with no system prompt or declared tools for all four models. They cannot execute anything in the panel (but the CLI controls of § 6.2.2 and the optimizers of § 5.0.0.5 can execute code). Astra and Sol share a gateway; Opus uses its provider’s API; gpt-oss runs locally from pinned weights. We log all prompts, replies and token counts. The models all use low reasoning effort. Sampling uses each provider’s defaults; we did not set or equalize sampling across providers. The closed models returned the aliases we requested (gpt-6-astra, gpt-5.6-sol, claude-opus-5-5) rather than dated snapshots; we identify them by name and call dates, 13–27 September 2026. We use a pinned revision of gpt-oss.

The non-LLM operator is Gaussian mutation with Lyapunov repair. Half its children perturb both controller and certificate parameters. The other half mutate KK and re-solve the discrete Lyapunov equation for the modified loop. This baseline therefore also uses control-specific structure. On SO(3), where there is no corresponding Lyapunov equation to solve, mutation multiplies each gain by a log-normal factor. Model proposals take seconds to minutes, whereas exact checks take milliseconds, so the loop checks every child and queries the model only every third generation.

Search cost is metered in proposals: every distinct genome offered for evaluation is charged to a ledger shared by all arms, so an equal budget means an equal number of proposals offered, not an equal number of generations.

In the optimizer studies (§ 5.0.0.5), we go a step further and give the language model more control over the search, rather than just proposing candidates within a fixed evolutionary loop. The evaluator, budget counter and audit trail remain independent of the model, so all candidates are still checked under the same conditions. We compare different approaches, from predefined optimization strategies to agents that can organize and adapt their own search process.

Three use engines from GEPA’s optimize_anything framework, which we refer to as GOA [50]. GOA GEPA uses reflective evolution, where the model revises candidates based on previous results and evaluator feedback [49]. GOA Meta-Harness gives a coding agent access to the history of previous candidates, their scores and feedback, allowing it to run code and propose up to ten new candidates per iteration [59]. GOA Omni combines several optimization strategies [60]. In our configuration, GEPA, Meta-Harness and AutoResearch each receive 62 evaluations, followed by 187 evaluations for GEPA and another 187 for Meta-Harness, with each stage initialized from the best candidate found so far.

We also study a more autonomous approach using prime-agent, a self-evolving agent harness built around a persistent Python environment and recursive subagents [57]. Rather than acting as an optimizer with a predefined search strategy, it follows an AutoResearch-like process in which the agent writes and executes code to explore candidate solutions, while reflecting on previous results and adapting its own search procedure during execution. This allows us to test whether giving the model control not only over the candidates, but also over how the search is conducted, leads to better results.

Despite these differences, all approaches submit genomes as text to the same exact checker, with every evaluation counted against the same proposal budget. We also include random search and the Gaussian-only evolutionary loop of § 3.1 as model-free baselines. Appendix Table 9 provides the configurations, limits and feedback used in each approach.

The three problems

The method is applied to three problems on two dynamics models: docking and pursuit on the linear Clohessy–Wiltshire plant, and attitude control on SO(3).

Docking

Our first testbed is in-plane rendezvous under the Clohessy–Wiltshire equations [19], with mean motion n=1.13×10−3n = 1.13\times 10^{-3} rad/s and an Euler discretization at Δt=1\Delta t = 1 s. The state z=(x,y,vx,vy)z = (x, y, v_x, v_y) holds positions in metres and velocities in metres per second. The mission initial conditions lie at ∥r0∥≈1.1\left\lVert r_0 \right\rVert \approx 1.1–1.31.3 m from the target, so the task is the final part of an approach. The equations can be expressed in other length units if all corresponding constants are rescaled. Here, the speed limit allows 0.2 m/s at the target, the saturated actuator considered below delivers at most 0.2 m/s2^2, and the pursuit evader of § 4.2 thrusts up to 0.01 m/s2^2. The docking tolerance and pursuit capture radius use the unweighted state norm, combining the numerical position and velocity components in the stated units. Thus a radius rr bounds both miss distance and residual speed (r=0.02r = 0.02 means 2 cm and 2 cm/s). This weighting is a comparison convention, not a mission requirement.

The thrust is u=Kzu = Kz, unbounded in the model except in the saturated case at the end of this subsection. Safety is expressed as the distance-dependent speed limit ∥v∥≤ν0+ν1∥r∥\left\lVert v \right\rVert \le \nu_0 + \nu_1 \left\lVert r \right\rVert (ν0=0.2\nu_0 = 0.2, ν1=0.5\nu_1 = 0.5), which we inner-approximate by the polynomial safe set h(z)=ν02+ν12(x2+y2)−vx2−vy2≥0h(z) = \nu_0^2 + \nu_1^2 (x^2 + y^2) - v_x^2 - v_y^2 \ge 0. The certificate is the quadratic function V(z)=z⊤PzV(z) = z^\top P z with P=LL⊤P = LL^\top (§ 3.1). Writing H0=diag⁡(ν12,ν12,−1,−1)H_0=\operatorname{diag}(\nu_1^2,\nu_1^2,-1,-1) gives h(z)=ν02+z⊤H0zh(z)=\nu_0^2+z^\top H_0z. Let Z0\mathcal Z_0 be the mission initial set listed in Appendix § 10, and define cneeded=max⁡z0∈Z0V(z0)c_{\mathrm{needed}}=\max_{z_0\in\mathcal Z_0}V(z_0), the smallest Lyapunov level containing those starts. Coverage requires cneeded≤cc_{\mathrm{needed}}\le c.

For each candidate, fast numerics estimate the decrease margin, the S-procedure multiplier and the envelope level cc. These estimates are rounded conservatively and then checked exactly. For the cited designs (§ 3.2), the certificate compiler generates Lean proofs of the following properties:

  • Stability: α∥z∥2≤V(z)≤β∥z∥2\alpha\left\lVert z \right\rVert^2 \le V(z) \le \beta\left\lVert z \right\rVert^2 and V(z+)≤ρ V(z)V(z^+) \le \rho\, V(z), hence V(zn)≤ρnV(z0)V(z_n) \le \rho^n V(z_0). The contraction ρ\rho is certified directly (Appendix § 13 compares this with a padded proxy): a bisection whose test is exact, bracketed by a floating-point generalized eigenvalue, finds the tightest contraction, which is rounded up to a rational, and the exact check confirms ρP−Acl⊤PAcl≻0\rho P - A_{\mathrm{cl}}^\top P A_{\mathrm{cl}} \succ 0 at that value. Here α\alpha and β\beta bound the size of VV, and ρ<1\rho<1 bounds its contraction per step.

  • Safety: the envelope Ωc={V≤c}\Omega_c = \{V \le c\} lies inside {h≥0}\{h \ge 0\} by the S-procedure [20]. For a multiplier λ≥0\lambda\ge0, the checks H0+λP⪰0H_0+\lambda P\succeq0 and λc≤ν02\lambda c\le\nu_0^2 imply h(z)≥ν02−λV(z)≥ν02−λc≥0h(z)\ge\nu_0^2-\lambda V(z)\ge\nu_0^2-\lambda c\ge0 on Ωc\Omega_c. The envelope is forward-invariant, so every trajectory that starts in Ωc\Omega_c satisfies the speed limit at every future step (safe_forever).

  • Coverage and docking time: each mission initial condition satisfies V(z0)≤cneeded≤cV(z_0)\le c_{\mathrm{needed}}\le c. From each such start, the state is within the docking tolerance after NN steps and stays there (docking_within_N, docking_stays_within). For a cited design the headline number is thus itself a kernel-checked theorem.

For each mission start, the stability inequalities give α∥zn∥2≤V(zn)≤ρnV(z0)≤ρncneeded\alpha\left\lVert z_n \right\rVert^2\le V(z_n)\le\rho^nV(z_0)\le\rho^n c_{\mathrm{needed}}. The objective is therefore the certified docking-time bound N=min⁡{ n:ρ n cneeded≤αr2 }N = \min\{\, n : \rho^{\,n}\, c_{\mathrm{needed}} \le \alpha r^2 \,\} for the state-norm tolerance r=0.02r = 0.02. It is computed and re-verified in exact arithmetic; § 7.5 explains why this is not optional. Selection therefore acts on what can be proved rather than on what is observed.

Saturating actuators.

The docking model above leaves the thrust unbounded. When the thrust saturates, u=sat(Kz)u = \mathrm{sat}(Kz) componentwise on [−um,um][-u_m, u_m], the closed loop becomes piecewise and no single polynomial identity covers it. Writing the deadzone as ψ=Kz−sat(Kz)\psi = Kz - \mathrm{sat}(Kz), the loop becomes z+=Aclz−Bψz^+ = A_{\mathrm{cl}} z - B\psi, and ψ\psi satisfies a regional sector condition [26]: for diagonal T⪰0T \succeq 0 and G=θKG = \theta K, if ∣((K−G)z)i∣≤um|((K - G)z)_i| \le u_m then ψ⊤T(ψ−Gz)≤0\psi^\top T(\psi - Gz) \le 0. The certificate is then a joint SOS in (z,ψ)(z, \psi),

Msat=[ρsP−Acl⊤PAclAcl⊤PB−G⊤T(⋅)⊤2T−B⊤PB]⪰0,\begin{equation} M_{\mathrm{sat}} = \begin{bmatrix} \rho_s P - A_{\mathrm{cl}}^\top P A_{\mathrm{cl}} & A_{\mathrm{cl}}^\top P B - G^\top T\\[2pt] (\cdot)^\top & 2T - B^\top P B \end{bmatrix} \succeq 0, \tag*{(1)} \end{equation}

together with one row per thruster placing {V≤c}\{V \le c\} inside the region where the sector condition holds. The generated Lean file treats each thruster as below, inside or above its unsaturated range. It states nine cell lemmas, one for each pair of thruster states, with a separate SOS identity for each cell. A dispatch theorem combines the cases. This proof needs case analysis as well as polynomial identities, but a template still generates it. § 7.4 tests whether a language model can reconstruct parts of this proof.

Pursuit of a maneuvering target

The second problem, on the same plant, adds adversarial robustness. A maneuvering target with bounded thrust enters the relative dynamics as a disturbance, z+=Aclz+Bwz^+ = A_{\mathrm{cl}} z + Bw with ∥w∥2≤wmax⁡2\left\lVert w \right\rVert^2 \le w_{\max}^2. A joint S-procedure certifies the robust decrease V(z+)≤ρrV(z)+δV(z^+) \le \rho_r V(z) + \delta for every admissible ww through

Mrob  =  [ρrP−Acl⊤PAcl−Acl⊤PB−B⊤PAclμI−B⊤PB]⪰0,δ=μ wmax⁡2,\begin{equation} M_{\mathrm{rob}} \;=\; \begin{bmatrix} \rho_r P - A_{\mathrm{cl}}^\top P A_{\mathrm{cl}} & -A_{\mathrm{cl}}^\top P B\\[2pt] -B^\top P A_{\mathrm{cl}} & \mu I - B^\top P B \end{bmatrix} \succeq 0, \qquad \delta = \mu\, w_{\max}^2, \tag*{(2)} \end{equation}

which is checked exactly at tier 1. A handwritten lemma (seq_affine_decay), proved in Lean like every other statement, lifts this per-step bound to trajectories under arbitrary bounded disturbance sequences. A corollary, pursuit_bound_feedback, quantifies over every state-feedback evader strategy with admissible thrust (Listing lst:leansample). A simulator can only sample opponent strategies, whereas the kernel-checked theorem covers all of them. The objective is the certified ultimate capture radius rcap=Ccap/αr_{\mathrm{cap}} = \sqrt{C_{\mathrm{cap}}/\alpha} with Ccap=δ/(1−ρr)C_{\mathrm{cap}} = \delta/(1 - \rho_r), the radius that this bound approaches as n→∞n \to \infty; in finite time, the corollary certifies entry into 1.5 rcap1.5\,r_{\mathrm{cap}} from a stated step NN onward. No actuator limit is modeled for the pursuer.

theorem pursuit_bound_feedback (g : $\mathbb{R}^4 \to \mathbb{R} \times \mathbb{R}$)
    (hg : $\forall$ q, (g q).1$^2$ + (g q).2$^2$ $\le$ $w_{\max}^2$)
    (p : $\mathbb{R}^4$) (n : $\mathbb{N}$) :
    V (trajS g p n) $\le$ $\rho_r^{\,n}$ * V p + $\delta$ / (1 - $\rho_r$) := $\ldots$

Attitude control on SO(3)

Docking and pursuit share the same Clohessy–Wiltshire dynamics; they are two problems on one linear model, differing in the certificate structure (quadratic envelope versus robust S-procedure) and the objective. On both, every certificate condition is a linear matrix inequality in the certificate’s parameters. Rigid-body attitude is different. The state is a rotation matrix together with a body rate, the decrease condition is a degree-4 polynomial inequality in twelve variables on SO(3), and the guarantee is necessarily regional, because no continuous feedback stabilizes SO(3) globally [33]. We step the dynamics with the Cayley transform at h=0.1h = 0.1 s, which maps a rational rotation to an exactly rational rotation, so every certificate concerns a state that lies exactly on the manifold. With inertia JJ, diagonal gains G^,Gc,M,C,Kω\widehat G, G_c, M, C, K_\omega, Ψ(R)=tr⁡(G^(I−R))\Psi(R) = \operatorname{tr}(\widehat G(I - R)) and eR=(GcR−R⊤Gc)∨e_R = (G_c R - R^\top G_c)^\vee, the controller and certificate are

u=ω×Jω−eR−Kω ω,V(R,ω)=Ψ(R)+12 ω⊤Mω+ω⊤C eR,\begin{equation} u = \omega \times J\omega - e_R - K_\omega\,\omega, \qquad V(R, \omega) = \Psi(R) + \tfrac12\,\omega^\top M \omega + \omega^\top C\, e_R, \tag*{(3)} \end{equation}

and the theorem states V(x+)≤ρ V(x)V(x^+) \le \rho\, V(x) on the region {V≤c}\{V \le c\}. The certificate is a sum-of-squares identity with multipliers for the manifold constraints and an S-procedure term for the region. We find it with a linear program over Gram matrices that are diagonally dominant under a fixed diagonal scaling, re-estimated between solves [23], then rationalize it and re-derive it over Q\mathbb{Q}.

Positive definiteness of VV requires a separate exact check: a sum-of-squares lower bound V≥α∥y∥2V \ge \alpha\left\lVert y \right\rVert^2 in centered coordinates. The search screen requires positive gains, but the cross term involving CC means that positive gains alone do not ensure positive definiteness. We therefore check this property for every counted champion after search (§ 6.5). Because the gains are diagonal, the problem has a Klein four-group symmetry that splits the 90-monomial basis of the decrease certificate into blocks of sizes 27⊕21⊕21⊕2127 \oplus 21 \oplus 21 \oplus 21.

We report the size of the region as the largest attitude error, about any axis, that it is guaranteed to contain at rest, θmax⁡=arccos⁡(1−c/(tr⁡G^−min⁡ig^i))\theta_{\max} = \arccos\bigl(1 - c/(\operatorname{tr}\widehat G - \min_i \hat g_i)\bigr); a state with nonzero rate must satisfy the full condition V≤cV \le c. The score is this certified angle rather than the level of VV, which a rescaled gain would inflate at no cost. In the geometric PD family [35, 34], the certificate is tied to the controller (G^=Gc\widehat G=G_c, M=JM=J). A hand-tuned law has a certified region containing every attitude at rest with error up to 126.9∘^\circ, with ρ=0.9937\rho=0.9937. The kernel checks the manifold-preserving step in SO3Step and regional decrease with a non-empty-region witness in SO3AttitudePD.

Figure 2 shows the certificate’s cost and conservatism. As the region approaches the antipodal set, its contraction approaches one; beyond it no certificate is found. From rest near the region’s edge, the simulated trajectory decays much faster than the envelope, with the first ten steps computed exactly. Commanded torque remains well below its certified bound.

Figure 2

Figure 2. The hand-tuned SO(3) law’s regional certificate: (a) the certified contraction against the size of the region, (b) the closed loop from the edge of the region under the certified envelope, and (c) the commanded torque against its certified bound.

Experimental setup

Problems and objectives.

On docking (§ 4.1) the objective is to minimize the certified docking-time bound NN; on pursuit (§ 4.2) it is to minimize the certified capture radius rcapr_{\mathrm{cap}}; and on attitude control (§ 4.3) it is to maximize the attitude error that the certified region contains at rest. Each problem uses one certificate formulation throughout. An arm is one proposer or baseline with fixed settings. Arms share the campaign’s seeds and proposal-accounting rules (Table 2). Population-based arms receive the same initial population on each seed; the pursuit PD grid instead uses its own lattice. SO(3) populations are deliberately drawn from a weak part of the controller family.

DockingPursuitSO(3) attitude
Objectivebound NN (min.)radius rcapr_{\mathrm{cap}} (min.)angle θmax⁡\theta_{\max} (max.)
Paired seeds202020
Population ×\times generations28×2428 \times 2428×2428\times 2412×1012 \times 10
Proposal allowance per run534534120
Model proposalsa batch of eight every third generation
Share written by the modelabout 1 in 8about 1 in 8about 1 in 5
Other–evader thrust ≤0.01\le 0.01 m/s2^2ρ≤0.995\rho \le 0.995, weak start

Table 2. Campaign settings for the three problems.

Proposers and baselines.

The four models of § 3.3 run on all three problems. They are compared with Gaussian mutation with Lyapunov repair, with CMA-ES [27] over the same genome, and with a structured classical method for each linear problem. On docking this method is classical synthesis by an alternating pair of semidefinite programs over (K,P)(K, P) on a grid of target contraction rates [20, 28]. It is a local BMI search rather than a certificate of optimality, and we run it both to the end of its own grid and, with seeded restarts, to the full allowance (“own grid” and “full allowance” in the tables). On pursuit the structured method is a PD grid matched to the allowance, with each gain paired with a certificate from the textbook Lyapunov repair. We call these the standard classical baselines. A further classical optimizer chooses certificates for each objective, as described below. We report a panel of four models; other evaluated models are outside the reported panel. Astra and Opus also run through their providers’ coding-agent command-line tools (“CLI”) in the interface controls (§ 6.2.2).

Classical certificate optimization.

The standard baselines choose their certificates by textbook rules: the pursuit grid closes each gain with a Lyapunov-equation repair at three shape weights, and docking synthesis maximizes an absolute contraction margin under a trace cap, which is not the docking bound. The language models propose gain and certificate together, so their advantage could come from better certificate choices. To test this explanation we added, after the main campaigns, a classical optimizer that shapes the certificate for each problem’s objective, from classical starting gains only. Its comparison family (against Astra and Sol on both problems, Holm over four) and the reading of each outcome were fixed in code before its runs.

Both objectives are invariant to certificate scale, which each subproblem fixes. At a fixed gain and rate, the certificate SDP minimizes μ\mu on pursuit subject to P⪰IP\succeq I and Mrob⪰0M_{\mathrm{rob}}\succeq0, minimizing rcap2=μwmax⁡2/((1−ρr)α)r_{\mathrm{cap}}^2=\mu w_{\max}^2/((1-\rho_r)\alpha). On docking it maximizes α\alpha subject to P⪰αIP\succeq\alpha I, mission-start levels at most one, contraction and the safety envelope; this minimizes NN at that rate. With the certificate fixed, a second SDP improves the gain because the Schur conditions are affine in KK.

Pursuit also admits jointly convex invariant-ellipsoid synthesis at each rate in Q=P−1Q=P^{-1} and Y=KQY=KQ [20]; docking’s envelope does not. Each run evaluates the shared initial population and applies the certificate step to every gain in that population and in a PD lattice. Pursuit also runs joint synthesis on 33 rates. Gain and certificate steps then alternate from the best candidates until the proposal allowance or 20,000-call solver cap is reached. All candidates use the same exact evaluator and ledger.

Control experiments.

Each control changes one setting, except the joint effort/ceiling experiments (Table 3). Interface controls use Astra’s CLI with and without execution, and Opus’s CLI. Reasoning controls use gpt-oss and Claude Fable 5.1 (Fable), a model used only in these controls, at low and high effort. High effort also raises the output ceiling: from 16,000 to 32,000 for Fable, and from 16,000 to 28,000 for gpt-oss. Further gpt-oss arms vary these settings separately, using a three-comparison family fixed before calls.

Static-prompt controls show Astra, gpt-oss and, on pursuit, Sol only the initial elite. Gate controls remove verification from Gaussian search or retain it with the objective fixed (§ 6.2.4).

Optimizer studies.

The docking studies vary the optimizer and model along two axes (Figure 3). On the optimizer axis, we compare GOA GEPA, GOA Meta-Harness, GOA Omni and prime-agent (§ 3.3) with gpt-5.6-sol (Sol 5.6) at medium effort. On the model axis, we fix prime-agent and compare Sol 5.6 with Astra, gpt-6-sol and Opus at xhigh effort. prime-agent was among the best-performing approaches in the first phase. Its flexible harness lets each model adapt its own search strategy. We chose it for the model comparison for these reasons. The axes share prime-agent with Sol 5.6 as a baseline, giving seven combinations rather than sixteen. We cannot separate model and reasoning-effort effects on the second axis, since both change together.

We run each combination on two seeds (0 and 1), with two docking objectives, giving 28 runs. One objective is the simulated cost JJ (Appendix § 10); the other is the padded proxy NproxyN_{\mathrm{proxy}} (Appendix § 13), whose final designs we rescore on the actual bound NN (§ 4.1). The same seed gives each approach the same initial design. A run can submit at most 560 genomes to the checker, and every submission counts, valid or not. We compare cost at a shared checkpoint of 491 evaluations.

Random search and the Gaussian-only GA provide references without a model. Random search evaluates the shared starting design followed by 559 independent samples, selecting directly on JJ or NN. The GA instead starts with its own random population; it uses 560 evaluations for cost and 672 for the bound. Every approach uses the same exact checker, and only certified candidates can become champions. We re-certify and audit the final designs. The optimizers run in isolated sandboxes with no access to the evaluator (§ 7.5).

Given the two seeds per combination, we treat the comparisons as descriptive, reporting both seeds and considering a difference consistent only when it has the same sign in both. We report tokens, time and price separately, since equal evaluation budgets do not imply equal computational costs. Comparisons with the campaigns are limited by different budget accounting, unpaired seeds and the use of the proxy for bound optimization. Full run configurations and results are provided in Appendix Table tab:optruns and the corresponding results tables.

Figure 3

Figure 3. Design of the optimizer studies: optimizers by models, with models in release order. We ran the framed cells using two seeds, with a cost run and a bound run per seed. The optimizer axis (a column) and the model axis (a row) meet at the Sol baseline; the references use no model.

Statistical analysis.

The unit of analysis is a run, and comparisons pair arms by seed. Population-based arms share their initial population within each pair. All twenty runs in a base campaign solve the same problem instance: nn counts repeated searches, not independent control problems. When a deterministic baseline is compared with an arm that returns the same design on every run, as for Astra against the pursuit PD grid, the comparison measures repeatability on that instance. We report medians because docking bounds are integers with frequent ties, and a few weak runs produce long tails in both linear objectives.

For each comparison we report the median paired difference, a percentile bootstrap 95% confidence interval (20,000 resamples of paired differences; pointwise, without multiplicity adjustment), and W / L / T (wins, losses, ties) seed counts. The two-sided Wilcoxon signed-rank test [31] drops zero differences. It uses the exact distribution without tied ranks, exact permutations for tied ranks among at most thirteen differences, and otherwise the normal approximation without continuity correction. At n=20n=20 without ties, its smallest attainable pp is 1.9×10−61.9\times 10^{-6}.

The test concerns symmetry of paired differences about zero. We interpret small pp as evidence that an arm has a consistent within-seed advantage, not as a test of the median; the interval describes the median effect.

Campaign tests use Holm adjustment [32] over stated families (Appendix § 13). Docking and pursuit families were fixed after results and are exploratory. SO(3), control and optimizer families were fixed in code before their runs. Other tests are exploratory and unadjusted; model orderings are descriptive. No equivalence margin was set, so an undetected difference does not establish that no difference exists.

A run that loses more than a quarter of its model calls is excluded as degenerate; the rule excludes five runs, and Appendix § 13 gives its history and a sensitivity check under which no median difference changes sign.

Results

Overview across the three problems

Table tab:cross compares the four models across the problems. Each model is paired by seed with the strongest standard classical baseline: full-allowance alternating-SDP synthesis on docking, the PD grid on pursuit, and CMA-ES on SO(3). The linear problems also include the certificate optimizer. Comparisons use twenty paired seeds, or nineteen when a run is excluded as degenerate. The table gives medians and win/loss/tie counts; Tables tab:docking, Table 5 and tab:so3 give paired differences and Holm-adjusted pp-values.

Astra and Sol beat the strongest standard baseline on every run of both linear problems. gpt-oss loses to that baseline on every run; Opus loses on most docking runs but wins on most pursuit runs. Certificate optimization closes most of Astra and Sol’s advantage (§ 6.4). The ordering changes on SO(3): Astra matches CMA-ES in median, Sol ranks last, and Opus and gpt-oss lie between them. The hand-tuned SO(3) law has a larger certified angle than any search arm’s median. In the optimizer studies reported in the last subsection (§ 6.6), a language model runs the whole search.

docking,NN(lower is better)pursuit,rcapr_{\mathrm{cap}}(lower)SO(3), degrees (higher)
Modelmedianvs. synthesisvs. optimizermedianvs. PD gridvs. optimizermedianvs. CMA-ES
Astra38.520/0/012/5/30.0285720/0/020/0/0105.29/10/0
Sol3820/0/015/3/20.0296020/0/07/13/098.51/19/0
Opus68.52/17/10/20/00.0298616/4/00/20/0102.06/14/0
gpt-oss950/20/00/20/00.040090/20/00/20/099.93/16/0
strongest standard baseline520.03388105.2
certificate optimizer400.02862--
hand-tuned law----126.9

Docking

The campaign

Table tab:docking and Figure 4 report the docking campaign. The paired design compares arms that start from the same population on each seed. In Table tab:docking, “Spent” is the median number of proposals offered before an arm stops or exhausts its allowance. “Tokens” is the median output tokens per model call, including reasoning. The reference is synthesis at the full allowance. Above the last horizontal rule, pp-values are Holm-adjusted over the 7 campaign comparisons.

The final rows report classical methods added after the main campaign: CMA-ES with BIPOP restarts and a smaller initial step (Appendix Table tab:baselines), and the certificate optimizer (§ 5.0.0.3). Their comparisons with synthesis are outside the campaign family; raw pp-values are shown in parentheses. The optimizer stops at its solver-call cap.

vs. synthesis at the full allowance
ArmMedianNNSpentTokensmed.ΔN\Delta N95% CIW / L / THolm
Gaussian mutation152534--+100.5+100.5[72.0,118.0][72.0, 118.0]0 / 20 / 05.1×10−45.1\times 10^{-4}
CMA-ES18256--+133.0+133.0[121.5,173.0][121.5, 173.0]0 / 20 / 05.1×10−45.1\times 10^{-4}
alternating SDP synthesis (own grid)5568--+1.0+1.0[0.5,2.5][0.5, 2.5]0 / 14 / 60.001440.00144
alternating SDP synthesis (full allowance)52534--reference
Astra38.55313,349−13.5-13.5[−15.0,−12.0][-15.0, -12.0]20 / 0 / 05.1×10−45.1\times 10^{-4}
Sol385345,824−14.0-14.0[−16.0,−12.0][-16.0, -12.0]20 / 0 / 05.1×10−45.1\times 10^{-4}
Opus68.55341,086+16.0+16.0[5.0,29.5][5.0, 29.5]2 / 17 / 10.001440.00144
gpt-oss955341,124+41.0+41.0[29.5,64.5][29.5, 64.5]0 / 20 / 01.3×10−51.3\times 10^{-5}
CMA-ES, BIPOP†^\dagger121534--+67.0+67.0[49.5,87.5][49.5, 87.5]0 / 20 / 0(8.8×10−58.8\times 10^{-5})
certificate optimizer†^\dagger40238--−12.5-12.5[−15.5,−12.0][-15.5, -12.0]20 / 0 / 0(8.1×10−58.1\times 10^{-5})
Figure 4

Figure 4. The docking campaign, with BIPOP and the certificate optimizer at the right: (a) the certified bound per seed and arm, (b) the same bounds against the proposals each run spent, and (c) the paired difference from synthesis at the full allowance, with the median and its bootstrap 95% CI.

Figure 5

Figure 5. Best certified docking bound so far against generation: median and interquartile range over the twenty seeds, with the classical baselines’ final medians as horizontal lines.

Synthesis is the strongest standard classical baseline by a wide margin (Table tab:docking). Astra and Sol beat it at the full allowance on every seed, with median bounds of 38.5 and 38 steps. Opus and gpt-oss rarely or never beat synthesis. Astra and Sol also spend the most reasoning (Table tab:docking). Objective-aware certificate optimization closes most of their lead over the standard classical baselines. No difference between the certificate optimizer and either leading model is detected in the declared comparison family (§ 6.4).

Figure 5 shows how the searches progress. The medians of the two leading models fall to near their final bounds with the first model batch and change little afterwards; Opus and gpt-oss improve in steps over the whole run, and Gaussian mutation stays near the seeded population’s bound until the last generations.

CMA-ES stops early because its initial step, set by the shared pool’s spread, is too wide for the certifiable set: nearly every child is uncertified and the fitness landscape is flat (Figure 4b). Same-step restarts [29] do not help. BIPOP restarts [30] with the step scaled by 0.010.01 spend the allowance and improve the median to 121 steps (Table tab:docking). The rerun beats Gaussian mutation on 18 of 20 seeds, but loses to synthesis and both leading models on every seed. It also trails Opus and gpt-oss on 18 of 20 and 14 of 20 seeds. The step scaling was the best tried and is therefore tuned (Appendix Table tab:baselines).

Structure of the champions.

Astra approximately cancels the Coriolis coupling in 20 of 20 runs, but the measured benefit is at most about one step (Appendix Table tab:coriolis). The Lyapunov factor proposed with the gain tracks the bound (Appendix § 13).

Figure 6 shows a typical Astra certificate, from seed 1 at the arm’s most common bound, kernel-checked with 19 theorems. Its envelope ρkcneeded/α\sqrt{\rho^k c_{\mathrm{needed}}/\alpha} bounds the simulated trajectories, which enter the tolerance before NN. These sampled trajectories enter early, but they do not determine the worst-case entry time over all certified starts. The exact projection of the certified set contains the three mission starts and their trajectories and lies inside the polynomial safety boundary ∥v∥2=ν02+ν12∥r∥2\|v\|^2=\nu_0^2+\nu_1^2\|r\|^2.

Thrust.

The comparison uses unbounded actuators and establishes no ranking under a thrust limit. Model champions have gentle simulated peaks, while synthesis commands more; on every run its certified envelope admits states that would command more than 0.2 m/s2^2 (Supplementary Table 10). No campaign imposes the limit on all arms. The best run of each arm is checked under it afterwards (§ 7.1).

Figure 6, panel 1 (a)

Figure 6, panel 2 (b)

Figure 6. The certificate of a typical Astra run (N=38N = 38 steps, ρ=0.7720\rho = 0.7720): (a) the theorem’s envelope bounding the simulated state norm from the three mission starts, and (b) the certified set, projected onto position and speed, inside the safe set.

Control experiments on the proposer

Each experiment compares settings of the same model, paired by seed (Table 3). Most change one setting; the joint reasoning-effort controls also change the output ceiling. Experiments concern docking unless stated otherwise. The Opus interface family covers all three problems; its row in the table reports docking.

The table gives medians over paired seeds and unadjusted two-sided Wilcoxon pp-values, followed in parentheses by Holm-adjusted values where a comparison family was declared. The docking static-prompt controls use the base problem and seeds of the modified-instance campaign (§ 6.2.3).

Interface.

Astra’s execution-enabled CLI let the model run Python outside the proposal ledger; the other CLI variant disabled execution. Session accounting and the Opus CLI setup are given in Appendix § 13. Neither CLI variant differs detectably from the API arm at twenty runs (Table 3).

For Opus, no interface difference is detected on any problem in the family fixed before the API calls (Holm p≥0.94p \ge 0.94). Pursuit wins split 10 to 10, and SO(3) wins 10 to 10. The API-minus-CLI intervals are [−4.5,7.0][-4.5,7.0] steps on docking, [−6.2×10−4,2.9×10−4][-6.2\times 10^{-4},2.9\times 10^{-4}] in radius on pursuit, and [−2.9,2.9]∘[-2.9,2.9]^\circ on SO(3).

Reasoning budget.

The shared effort setting bought different amounts of reasoning (Table tab:docking); Fable used a median of 1,089 output tokens per call. Raising effort and the output ceiling helped Fable, which used 15,838 tokens per call and finished within a step of the leading models (Table 3). For gpt-oss, using 7,487 tokens per call, no difference was detected in the comparison fixed before its calls. The low-minus-high interval, [−25,+18][-25,+18] steps, still permits an effect that matters.

Changing effort and ceiling separately also detected no difference (Table 3). At low effort no call approached either ceiling (median 1,123 output tokens), so the differing search medians reflect run-to-run variation. At high effort, 7 of 160 calls reached the lower ceiling; the interval for the ceiling comparison was [−29.5,2][-29.5, 2] steps.

These controls do not isolate the role of reasoning in the cross-model ordering: changing the effort setting also changes how the model generates proposals. The observed token use is therefore needed to interpret the configuration comparisons. Astra and Sol were not rerun at other efforts.

Feedback.

Astra’s static-prompt control sees only the initial elite, so every call samples the same prompt. Its first batch certifies a median bound of 41.0 steps, against 40.0 with feedback; selection among later draws closes the gap. On the base problem, no feedback benefit is detected for Astra on the 12 paired seeds (Table 3). The static-prompt result limits what we can attribute to feedback. The separate verification experiment (§ 6.2.4) tests the benefit of retaining certified designs during selection. gpt-oss is ahead with feedback on most docking runs and behind on most pursuit runs, with neither difference detected (Table 3). Its first batch’s certified bound is far above its final docking bound.

median
5-6 Control A BnnABA / B / Tpp (Holm pp)
interface Astra (coding agent) Astra203838.511 / 6 / 30.180.18
interface Astra (text-only) Astra2038.538.56 / 5 / 90.720.72
interface Opus (CLI) Opus2066.568.511 / 8 / 10.310.31 (0.940.94)
reasoning effort Fable (effort low) Fable (effort high)2049.5392 / 17 / 12.5×10−42.5\times 10^{-4}
reasoning effort gpt-oss gpt-oss (effort high)209595.510 / 9 / 10.700.70
feedback Astra Astra (no feedback)1238.038.02 / 5 / 50.410.41 (0.590.59)
feedback gpt-oss gpt-oss (no feedback)2095.0104.513 / 7 / 00.05920.0592 (0.240.24)
feedback (pursuit) gpt-oss gpt-oss (no feedback)190.040190.039967 / 12 / 00.280.28 (0.550.55)
feedback (pursuit) Sol Sol (no feedback)200.029600.0325912 / 6 / 20.04830.0483 (0.04830.0483)
output ceiling gpt-oss (low, 16k) gpt-oss (low, 28k)2095977 / 11 / 20.980.98 (0.990.99)
reasoning effort gpt-oss (low, 28k) gpt-oss (high, 28k)209795.58 / 11 / 10.490.49 (0.990.99)
output ceiling gpt-oss (high, 16k) gpt-oss (high, 28k)208795.513 / 6 / 10.310.31 (0.940.94)

Table 3. Control experiments: each row compares two runs of one model that differ in one setting (in the first two reasoning-effort rows, also the output-token ceiling), paired by seed, on docking unless marked (A / B / T: seeds on which A is better, B is better, or they tie).

Transfer to modified problems

Astra’s first batch is within a few steps of its final bound on all but 1 runs. Sol’s first-batch median is 41 steps, although 8 of its 20 runs remain above 100 steps. To probe search versus recall, we fixed variants with the cross-track thruster at half strength, a tighter speed limit, an initial set a quarter farther out and geostationary mean motion. A seeded-population feasibility probe preceded instance selection; selection preceded the campaign.

Unchanged base designs transfer to geostationary orbit with at most a step’s change in any arm’s median (Appendix Table tab:transfer). Under unequal thrust, classical champions still certify on every seed, while Astra’s text-only champions certify on only 1: their nominal gains assume symmetric actuation. Under the tighter limit and wider initial set, none of the leading arms’ champions certifies, although the seeded population still has certified members.

The campaign uses 10 seeds per arm on the modified problems on which the leading base designs transfer least successfully (Table 4). Gaussian mutation and CMA-ES need two to six times their base bounds. Synthesis remains close to its base-problem bound on the seeds it certifies (Table 4). On unequal thrust, preserving certified starting designs makes synthesis certify every seed (Appendix Table tab:baselines).

When told about unequal thrust, Astra and Fable at high effort recover the base problem’s bound, although most of their unchanged base-problem champions do not certify on that plant (1 and 4 of 20, Appendix Table tab:transfer). Provider spending caps allow only partial samples and stop every run on the other modified problems before completion. The experiment is incomplete for these models; even complete, it would test adaptation to a stated change rather than distinguish recall from reasoning. gpt-oss beats Gaussian mutation and loses to synthesis on every instance.

unequal thrusterstighter speed limitwider initial set
2-3(lr)4-5(lr)6-7 Armcert.median NNcert.median NNcert.median NN
Gaussian mutation10/10370.58/10430.010/10454.0
CMA-ES10/10675.58/101005.510/10610.0
alternating SDP synthesis (full allowance)8/10†^{\dagger}51.010/1064.010/1062.0
Astra4/438.0––––
Fable (effort high)8/838.0––––
gpt-oss10/10192.09/10154.010/10104.0
gpt-oss (no feedback)10/10283.58/1097.510/10142.5

Table 4. Docking on the three modified problems: runs that certified out of runs completed, and the median certified bound (“–”: no seed completed before the provider’s spending cap stopped the runs).

Verification during search versus afterwards

Searching on simulated performance and certifying afterwards can fail even when simulation looks safe. LQR with Q=R=IQ=R=I has spectral radius 0.4224 and violates no sampled speed limit, yet our completion finds no certificate. Aggressive LQR-class gains also violate no sampled constraint and certify stability, yet no safety certificate is found: no admissible level both covers the mission starts and lies inside the speed-limit set.

These failures do not establish that the controllers are unsafe. They mean that the controllers do not meet our certificate requirements. A safety certificate must cover every state in its envelope at every future sample instant; a rollout checks only the trajectories simulated.

We reran Gaussian search without verification, keeping its operator and seeded populations and ranking by simulated mission cost. Exact checking afterwards certifies no member of any final population under either certificate formulation (Table tab:filter).

Checking the whole search history finds that every certified genome came from the initial population. None of the 10,120 genomes produced by search certifies. After the first generation, no population member certifies. By comparison, search with verification retains certified candidates in every run.

The next control holds the simulated-cost objective fixed and changes only selection. With verification, half the elite places are reserved for certified candidates; without it, candidates are retained solely by simulated cost. The verification rule produces 515 certified genomes out of 10,120 new proposals, compared with 0 without the rule (Table tab:filter).

The objective still affects the quality of the certified designs. With the verification rule in place, ranking by simulated cost ends at a median bound of 344 steps; ranking by the certified bound gives 152 steps.

We also sought fresh certificates for the 9,399 controllers produced after initialization that pass the spectral screen, out of 10,120 produced in total. Lyapunov-equation repairs at eight weightings certify 0; the synthesis SDP at twenty rates certifies 2 (Table tab:filter). The recovered controllers are on seeds 18 and 19, with bounds 88 and 223 steps. The SDP search took 3.7 worker-hours.

These procedures do certify controllers from the initial population. Their limited success on later controllers suggests that replacing the certificate alone does not recover certification under the tested procedures. Other certificates may still exist. In this experiment, verification acted as a selection pressure during the search, not as a filter that could be applied afterwards.

SearchCertifiedPass screenDesignsWhat was checked
without verification, every design evaluated (20 seeds)1449,94310,680the 144 certified are all in the initial population; 0 of the 10,120 designs the search produced certify
without verification, final populations (20 seeds)0538560every design of each final population
without verification, padded proxy (2 preliminary seeds)05156final populations of 25 and 26; 5 designs failing the spectral screen were never scored
with verification, same simulated cost (20 seeds)5157,00210,120the same search with certified candidates kept in the elite; designs the search produced
new certificates sought afterwards (20 seeds)29,39910,120each controller of the unverified search that passes the spectral screen, given a new Lyapunov-equation or SDP certificate

Pursuit

The campaign

Pursuit (§ 4.2) tests the same search methods with an adversarial disturbance. The objective is the certified capture radius rcapr_{\mathrm{cap}} against an evader whose thrust is bounded by 0.01 m/s2^2. Figure 7 shows the task for one certified controller, the PD grid’s, kernel-checked as CWHPursuitPdGridS0: the target keeps thrusting and turning, and the theorem bounds the relative state for every admissible evader, not only for the one simulated. In panel (b) the filled disk is the projection onto the position plane of the capture ball ∥z∥≤1.5 rcap\|z\| \le 1.5\,r_{\mathrm{cap}} that the kernel-checked corollary certifies from step NN on, and the dashed circle is rcapr_{\mathrm{cap}}; panel (c) shows the envelope (ρrkV0+Ccap)/α\sqrt{(\rho_r^k V_0 + C_{\mathrm{cap}})/\alpha}, with NN marked.

A preliminary single-run law certifies rcap=0.02857r_{\mathrm{cap}}=0.02857 under the campaign formulation and 0.03086 under the formulation used to find it. Its significant parameters are kp≈0.75k_p\approx0.75, kd≈1.75k_d\approx1.75 and two Coriolis-cancelling gains. An attack over 5,003 adversarial steps finds no violation of the certified bound; its strongest tail radius is 0.01333, which does not establish the worst-case radius. Replacing the evolved certificate with the textbook shape worsens the bound to 0.04522 at the same gains: the certificate is part of the design.

Figure 7

Figure 7. The pursuit task on one certified controller against an evader that thrusts on its bound and keeps turning: (a) the local orbital frame, (b) the target’s frame with the certified capture ball, and (c) the relative state norm under the theorem’s envelope.

The PD grid searches log-spaced gains kp∈[0.02,2]k_p \in [0.02,2] and kd∈[0.1,4]k_d \in [0.1,4] at three Lyapunov shape weights. It is sized to the allowance, and failed repairs count against it. It is deterministic at each allowance, so paired comparisons measure the other arm’s variation.

Astra and Sol lead the panel, beating every standard classical baseline on every seed (Table 5; Figure 8). Their median radii are 0.02857 and 0.02960. The certificate optimizer closes most of this advantage: the signed-rank test detects a benefit over Sol, while Astra retains a small lead in the declared comparison family (§ 6.4). Astra returns the same design every time, so its wins against the deterministic grid measure repeatability on this instance; Sol varies across runs.

The table also reports first-batch radii. In the figure, the dashed line is a 48-point PD scan re-certified under the campaign formulation, and positive paired differences favor the arm. Campaign tests are Holm-adjusted; the optimizer’s test is raw and outside that family.

Astra proposes its final design in the first batch (Table 5). On 20 of 20 seeds it matches the preliminary single-run reference within 5×10−65\times 10^{-6}; this is also the best design found by a finer sweep of robust synthesis (§ 6.4).

Sol reaches the same radius within that tolerance on 4 seeds, through later proposals and selection. Its first-batch radius is 0.04444 (Table 5). The static-prompt control also improves, starting at 0.0492, but finishes worse on most seeds (Table 3). The signed-rank test detects a feedback benefit in the single-pair family declared before the calls. The median paired difference, +0.0033+0.0033, has interval [−0.0004,0.0046][-0.0004, 0.0046], which includes zero.

Opus (0.02986) is ahead of the PD grid on 16 of 20 runs and beats Gaussian mutation on every seed (Table 5; Supplementary Table tab:supppursuit). Its advantage over the grid is fragile: the CLI wins just as often, but its losses are larger (raw p=0.0266p = 0.0266 against 1.0×10−41.0\times 10^{-4} for the API arm). No difference between gpt-oss and Gaussian mutation is detected (Supplementary Table tab:supppursuit).

Every retained run certifies: 1 of 240 reported-arm runs was excluded as degenerate, and every champion re-certifies at its recorded radius. The best run of each arm, including the optimizer, and the tightest budget-sweep champions have Lean proofs: 12 certificates with 11 theorems each.

These radii compare unbounded-thrust designs. Simulated peak thrusts far exceed the 0.2 m/s2^2 saturated-actuator limit (Supplementary Table 10).

rcapr_{\mathrm{cap}}vs. PD grid
3-5(l)6-8 ArmCert.MedianBestFirst batchmed. Δr\Delta rW / L / THolm
Gaussian mutation20/200.041400.03671–+0.0075+0.00750 / 20 / 04.0×10−54.0\times 10^{-5}
CMA-ES20/200.044460.03696–+0.0106+0.01060 / 20 / 04.0×10−54.0\times 10^{-5}
PD grid search†^{\dagger}20/200.033880.03388–reference
Astra20/200.028570.028570.02857−0.0053-0.005320 / 0 / 09.3×10−59.3\times 10^{-5}
Sol20/200.029600.028570.04444−0.0043-0.004320 / 0 / 09.0×10−49.0\times 10^{-4}
Opus20/200.029860.028700.04935−0.0040-0.004016 / 4 / 09.4×10−49.4\times 10^{-4}
gpt-oss20/200.040090.034460.06100+0.0062+0.00620 / 20 / 04.0×10−54.0\times 10^{-5}
certificate optimizer‡^{\ddagger}20/200.028620.02859–−0.0053-0.005320 / 0 / 0(8.8×10−58.8\times 10^{-5})

Table 5. Pursuit: the certified capture radius (smaller is better) of each arm, paired within seed against the PD grid.

Figure 8

Figure 8. The pursuit campaign, with the certificate optimizer at the right: (a) the certified capture radius per seed and arm, and (b) each arm’s paired difference from the PD grid, with the median’s bootstrap 95% CI.

Effect of the search budget

We reran Gaussian mutation, CMA-ES, the PD grid and gpt-oss on seeds 0–9 at twice and four times the generations, allowing 1,062 and 2,118 proposals. CMA-ES and the grid were matched to Gaussian mutation’s spend (Table 6; Figure 9).

CMA-ES improves with budget and beats Gaussian mutation on every seed at both larger allowances; its champions converge on the preliminary single-run reference’s gains. gpt-oss and Gaussian mutation barely improve. The latter’s schedule shrinks its step to 2.2×10−62.2\times 10^{-6} in the longest run; the schedule was not varied, so the plateau is conditional on it.

The allowance-specific PD grids are not nested, which explains their nonmonotone scores. A single lattice refined with the allowance has the same score at every allowance (Appendix Table tab:baselines). It shows no detected difference from CMA-ES at twice the allowance and loses on every seed at four times.

On the ten sweep seeds at the largest allowance, CMA-ES approaches but does not reach Astra’s first-batch radius (0.02943 against 0.02857) and is already below Sol’s original-allowance median. Astra and Sol were run only at the original allowance, so the sweep does not establish how they scale.

Arm×1\times1 (24 gen.)×2\times2 (48 gen.)×4\times4 (96 gen.)
Gaussian mutation0.040390.038610.03850
CMA-ES0.045770.034180.02943
PD grid search0.033880.038790.03563
gpt-oss0.039460.037390.03703

Table 6. The budget sweep: median certified capture radius on seeds 0–9 at one, two and four times the generations.

Figure 9

Figure 9. Median certified capture radius against proposals spent, seeds 0–9, at one, two and four times the generations; the grey labels give Gaussian mutation’s step size in its last generation.

Random mutation improves the certified pursuit radius, whereas it makes little progress on docking. This pattern is consistent with a more restrictive certifiable set on docking; the experiments do not isolate feasibility geometry from the other differences between the problems. The textbook controller-only grid plateaus; every arm beating it chooses the certificate with the controller (Table 5 and Table 6; § 6.4).

The guarantee remains stronger than simulation: pursuit_bound covers every admissible thrust sequence, hence every evader strategy regardless of its information. Listing lst:leansample’s corollary states the state-feedback case.

Classical certificate optimization on the linear problems

The standard baselines use textbook certificate choices, while the models choose controller and certificate parameters together. The optimizer of § 5.0.0.3 tests how much of the models’ advantage remains when a classical method also chooses certificates for the objective. Its results are the final rows of Tables tab:docking and Table 5.

On docking the optimizer reaches a median of 40 steps, ahead of synthesis at the full allowance on all 20 seeds, with a median paired advantage of 12.5 steps. Shaping the certificate at fixed classical gains alone reaches 41. No difference from either leading model is detected (Supplementary Table tab:suppcertopt). The bootstrap intervals describe median paired differences and do not establish equivalence. Sol’s interval excludes zero although the Holm-adjusted signed-rank test does not detect a difference. The interval is pointwise and concerns the median; the test uses the signed ranks and adjusts for the declared comparison family.

On pursuit the optimizer reaches 0.02862. The signed-rank test detects a benefit over Sol, although the median-difference interval [−3.2×10−3,1.6×10−5][-3.2\times 10^{-3}, 1.6\times 10^{-5}] includes zero. Astra remains ahead on every seed by a median of +5.1×10−5+5.1\times 10^{-5}, with interval [4.3×10−5,8.3×10−5][4.3\times 10^{-5}, 8.3\times 10^{-5}] (Supplementary Table tab:suppcertopt). The gap is 0.2% of Astra’s radius. The optimizer beats Opus and gpt-oss on every seed on both problems.

An exploratory finer rate sweep, run after the campaign, reaches Astra’s radius, 0.02857, at 1−ρr=0.51-\rho_r = 0.5. This seed-independent joint program shows that refining the rate grid can close the remaining gap. It is convex only at a fixed rate: the sweep finds a best value, not a proven optimum.

Objective-aware certificates explain most of the leading models’ advantage. Astra’s pursuit lead survives the declared comparison; an exploratory finer rate sweep of textbook synthesis reaches the same radius. This compares equal proposal allowances, not equal computation: the optimizer uses medians of 238 proposals on docking and 340 on pursuit before its solver cap. Median solver time is 3 and 8 minutes per run.

The optimizer is local and provides no global optimality guarantee. Taken together, these results do not establish a model advantage over classical design on the linear problems. Astra reaches its result in the first batch; Sol improves through later proposals and selection. Classical certificate optimization reaches comparable scores.

Attitude control on SO(3)

The campaign.

SO(3) tests whether the linear-problem ranking extends to a nonlinear manifold, using the known law of § 4.3 as reference. The panel searches fifteen diagonal gains from weak seeded populations (median best 88.1∘^\circ), with Table 2’s allowance. Every proposal counts against the allowance, certified or not, and is scored by the floating-point linear program.

Exact re-verification accepts 158 of 158 counted champions with their angles unchanged. This checks decrease, not positivity of VV. A separate exact check finds all 158 positive definite, with smallest α=0.34\alpha=0.34. The best run of each arm also has a Lean proof of regional decrease, torque bound and a non-empty region at its own gains, level and contraction target (Supplementary Table tab:coverage).

Table tab:so3 and Figure 10 report the campaign. The table’s Gain measures improvement over the shared initial best; its tests are Holm-adjusted over the 15 pairs of the campaign arms. The rows below the line report the model-only control.

CMA-ES is the strongest classical arm, and no model in this mixed design is detectably better. Astra matches its median of 105.2∘^\circ and beats Gaussian mutation by +7.3∘+7.3^\circ (p=0.0023p = 0.0023). Opus lies between the baselines in median, and CMA-ES beats Sol (Table tab:so3). No arm reaches its final value in the first model batch; the medians rise in steps over the allowance (Figure 10c). The best medians remain 21.7∘^\circ below the hand-tuned law, which no run of this mixed design reaches. The deliberately weak starts make this a test of recovery within the allowance, not of the best design in the family.

ArmnnMedianBestGain over startvs CMA-ES95% CIW / L / THolm
Gaussian mutation2098.7109.1+12.6+12.6−7.0-7.0[−9.4,−4.1][-9.4, -4.1]3 / 17 / 00.001230.00123
CMA-ES20105.2115.0+17.1+17.1--
Astra19105.2112.4+16.5+16.5−0.9-0.9[−1.6,+3.2][-1.6, +3.2]9 / 10 / 01.001.00
Opus20102.0112.4+15.2+15.2−3.3-3.3[−4.9,+0.1][-4.9, +0.1]6 / 14 / 00.350.35
gpt-oss1999.9113.0+15.9+15.9−4.3-4.3[−7.1,−1.3][-7.1, -1.3]3 / 16 / 00.180.18
Sol2098.5112.4+11.8+11.8−5.1-5.1[−9.0,−3.0][-9.0, -3.0]1 / 19 / 00.00920.0092
Opus (CLI, model only)20115.7128.2+26.7+26.7+10.3+10.3[+5.2,+13.8][+5.2, +13.8]19 / 1 / 01.5×10−51.5\times 10^{-5}
Sol (model only)2093.7102.8+4.9+4.9−11.2-11.2[−14.4,−7.6][-14.4, -7.6]0 / 20 / 01.1×10−51.1\times 10^{-5}
Image not extracted

Figure 10. The SO(3) campaign: (a) the certified angle per seed and arm, (b) each arm’s paired difference from CMA-ES, and (c) the median best angle so far against proposals spent.

Control experiment: models writing every proposal.

Opus through its CLI and Sol also wrote every proposal, replacing the mixed design’s model share of about one in five. The control has its own family of 6 comparisons (Table tab:so3).

Opus improves to 115.7∘^\circ and beats its CLI mixed arm by +11.0∘+11.0^\circ. It wins that comparison on 19 of 20 seeds (p=1.7×10−5p = 1.7\times 10^{-5}). It is the only arm detectably better than CMA-ES (Table tab:so3). Its median remains below the hand-tuned law, but one run reaches 128.2∘^\circ at rest with ρ=0.99487\rho = 0.99487. This contracts more slowly than the hand-tuned law’s ρ=0.9937\rho = 0.9937, nearer the cap. The controller remains geometric PD; its certificate uses independent weights outside the tied family (G^≠Gc\widehat G \ne G_c, M≠JM \ne J).

Sol instead falls to 93.7∘^\circ, with paired change −6.5∘-6.5^\circ against its mixed arm (p=0.0017p = 0.0017), and trails CMA-ES on every seed (Table tab:so3). Each call requests twelve controllers. Sol supplies near-copies, while Opus varies its proposals more widely. Increasing the model’s share of proposals therefore has opposite effects for these configurations. This comparison also uses nine or ten model calls where CMA-ES uses none, so it compares the stated search configurations without matching inference cost.

Optimizer studies: models that run the whole search

The optimizer studies (§ 5.0.0.5) ask how much the final performance depends on the search strategy and how much on the model. Figure 11 shows the final certified cost JJ and bound NN for the two docking objectives. There are only two seeds for each combination, so we describe the results and call an improvement consistent only if it occurs on both. The bound runs optimize the padded proxy NproxyN_{\mathrm{proxy}}, but the figure gives the actual bound NN of their final designs. Appendix Tables tab:optall and tab:optruns give the complete results for both axes.

Figure 11

Figure 11. Certified cost JJ (a) and bound NN (b). Markers distinguish seeds, bars show geometric means, dotted lines the Sol baseline, and faded markers cross-objective scores; grey marks the time-limited Opus run.

Final performance across approaches.

Final costs for the three newer models lie between 0.73 and 0.76 on both seeds (Figure 11a). These values are 82 to 85% below the starting design and 42 to 44% below LQR with Q=R=IQ = R = I (J=1.31J = 1.31), although our completion procedure cannot certify the reference controller (§ 6.2.4). The range is wider when we keep Sol 5.6 fixed and change the optimizer: 0.81 to 1.99 across the four approaches. The model-free references, random search and the Gaussian-only GA, have costs between 1.88 and 3.02.

Most approaches also improve the bound substantially from the starting designs’ 231 and 477 steps (Figure 11b). Of the 14 bound runs, 11 finish between 56 and 80 steps. GOA GEPA is an exception, at 146 and 208 steps, as is the Opus run stopped by its time limit, at 2,896 steps. That Opus design has the same proxy score as Astra’s seed-1 design (Nproxy=8,594N_{\mathrm{proxy}} = 8{,}594), yet Astra’s certified bound is 59 steps. Similar proxy scores can therefore correspond to quite different certified bounds.

The final designs differ between objectives. Optimizing the bound gives costs from 1.99 to 3.57, whereas optimizing cost gives bounds from 205 to 7,224 steps. These results suggest that an improvement on one objective need not carry over to the other, so the choice of optimization target matters.

Figure 12

Figure 12. Best certified cost JJ over evaluations for the optimizer (a) and model (b) axes; the dashed line marks 491 evaluations.

The optimizer or the model.

The best optimizer changes with the seed when we keep Sol 5.6 fixed (Figure 12a). prime-agent has the lowest cost on seed 0 and the highest on seed 1. Relative to it, the GOA engines have 26 to 146% higher costs on the first seed, but 21 to 22% lower costs on the second (Figure 13a). With prime-agent fixed instead, all three newer models lower cost relative to Sol 5.6 on both seeds: by 6 to 10% on seed 0 and 43 to 44% on seed 1. The checkpoint affects the size of this gap. The Sol baseline on seed 1 continued from 1.33 at 491 evaluations to 1.21 at completion, but the improvement still holds on both seeds.

Although neither axis shows a larger effect on both seeds, the newer models produce much more consistent results, with final costs differing by less than 2% between seeds and 5% between models. In comparison, the Sol 5.6 optimizers show differences of up to a factor of 1.9 between seeds. For the bound objective (Figure 13b), the differences are smaller, with GOA Meta-Harness being the only optimizer to improve over the Sol baseline on both seeds, by just one and two steps, while none of the newer models improves the bound on either seed.

Figure 13

Figure 13. Cost (a) and bound (b) relative to the Sol baseline for each seed; leftward bars indicate better results.

We also repeated prime-agent with Opus on the cost objective, running it three times on seed 0 with different stopping limits and once on seed 1 (Figure 14). The runs followed different search paths and completed between 206 and 560 evaluations, but all finished with very similar costs, between 0.757 and 0.760. In the shortest run, the operator interrupted a computation after two hours and asked the agent to keep subsequent computations short, although its best design had already been found. These runs do not establish repeatability under identical conditions, but the small variation in their final costs suggests that the different search paths can still lead to similar solutions.

Figure 14

Figure 14. Best certified cost JJ across four prime-agent runs with Opus; bands show final Opus and Astra costs.

The final designs also show a clear relationship between cost and position gain (Figure 15). The starting designs have gains kpk_p between 0.010 and 0.013, while the GOA engines reach 0.024 to 0.042 and the newer models 0.068 to 0.083. In general, larger gains correspond to lower costs, although the other parameters of KK and the certificate also change, so this relationship cannot be attributed to position gain alone.

Figure 15

Figure 15. Final cost-run designs against position gain kp=−(K11+K22)/2k_p=-(K_{11}+K_{22})/2; dashed line shows the log-log fit.

With Sol 5.6 fixed, the optimizers differ widely in what they spend (Appendix Figure 17 and Table tab:optall). A GOA run took 2 to 5 hours and a median of 8 to 48 million tokens, $12 to $46 at list price; a prime-agent run took 8 to 11 minutes and about one million tokens, $0.25 to $1.49. Per logged call, the prime-agent runs averaged 3 to 33 designs sent to the checker, often from scripts that submit many genomes, compared with 2 to 9 for the GOA engines. A check takes milliseconds and model inference seconds to minutes, so batching plausibly accounts for part of the gap in time; context length and latency also play a role. The newer models reached a cost below 0.8 within 3 to 22 minutes of the start; no GOA run went below 1. The optimizers log different operations as model calls (for example, a reflection, an agent session or an agent turn), so calls are not comparable units of inference.

Rejection rates change during the search (Appendix Figure 18). For prime-agent, 24 to 45% of the first hundred candidates are rejected, compared with 7 to 24% afterwards. Astra’s failures due to insufficient margins for the exact checker fall from 12.5% to 0.1%. Most remaining failures for Sol 5.6, Astra and gpt-6-sol have a safe region that does not contain the mission start. Opus still fails mainly on thin margins: 69 of its 93 rejections. GOA GEPA and GOA Omni instead show a slight rise in rejections, from 4 and 7% to 13 and 10%, mostly from a failed decrease condition or insufficient margins. Random search has much higher rejection rates, around 76 to 77%, mostly for invalid safe regions. Every optimizer receives the failing condition and numerical hints as feedback, but these observations describe the search over time. They do not establish that feedback caused the improvement.

We can also compare the final designs with the earlier campaigns, although the different objectives and budgets prevent a direct comparison. Under the campaigns’ objective, most bound-run designs certify between 56 and 80 steps, apart from the three exceptions discussed above. These bounds are higher than those obtained by synthesis at the full allowance (52), Astra, Sol and the certificate optimizer (38.5, 38 and 40), but ten of the eleven are lower than the Opus campaign result (68.5). The campaigns optimized NN directly over twenty seeds, while these studies used the padded proxy. In fact, the relationship between the two objectives is relatively weak, with Spearman correlations of +0.07+0.07 across the 14 main bound runs and +0.37+0.37 across all 22 docking-bound designs, including pilots and repeats (Appendix Figure 16).

These studies suggest that model choice can matter substantially when the search procedure lets the model adapt its strategy. With prime-agent fixed, all three newer models lower the cost on both seeds and reach similar final designs. Changing the optimizer with Sol 5.6 fixed is less consistent: the ranking changes with the seed, and computational costs differ by one to two orders of magnitude. We cannot fully separate model and effort effects, or measure their interaction with the optimizer, because model and reasoning effort change together and we tested only one row and one column of the full grid. All 28 final champions passed the exact checker and carry audited, kernel-checked Lean certificates. The studies cover docking only, not pursuit or SO(3).

Verification beyond the campaigns

A certified controller with saturating thrusters

For a hand-designed law at thrust limit um=1/5u_m=1/5, the completion of § 4.1.0.1 gives θ=1/5\theta=1/5 and ρs=0.986409\rho_s=0.986409. Its envelope, c=4.4128c=4.4128, covers the mission starts (cneeded=1.03c_{\mathrm{needed}}=1.03).

The audited file has 942 lines and 29 declarations covering the cell lemmas, dispatch and trajectory chain. Because decrease holds only inside {V≤c}\{V\le c\}, the global iterate lemma does not apply. Instead, sat_trajectory proves invariance and geometric decay together: invariance supplies the region hypothesis needed for decay. This yields bounded thrust and an enter-and-remain bound of 641 steps.

The proof covers the true clipped dynamics. The theorem saturation_active_witness gives z=(0,0,0,−3/4)z=(0, 0, 0, -3/4) with V(z)=3.59≤cV(z)=3.59\le c and commanded thrust 0.23>um0.23>u_m. The mission-start simulations never saturate in 1,200 steps. Only the theorem covers off-nominal states in the certified region where saturation is active.

At the same limit, using each design’s own gain and certificate, completion certifies 11 of 12 cited docking champions, each with an audited Lean file. The optimizer is the exception: no searched sector parameter both covers the mission starts and admits a multiplier. This is a failure to find a certificate.

The saturated settling bounds are 1.0–2.2 times the linear bounds. Exact witnesses activate saturation in 8 designs. For the others, searched states do not saturate, so their certificates do not establish that the limit is reached.

Measurement noise and rounding

A flight computer measures z+nz + n and evaluates K(z+n)K(z+n) in floating point, so the applied thrust is K(z+n)+eK(z+n) + e with ee the rounding error. Both errors reach the plant through BB, as the evader’s thrust does on pursuit, and each becomes a bounded channel of the robust decrease of § 4.2, with one S-procedure multiplier per channel and every cross term kept in the exact LDL⊤^\top check. The measurement error is bounded by ∥n∥≤nˉ\left\lVert n \right\rVert \le \bar n in the state’s own units, and ∥Kn∥≤σnˉ\left\lVert Kn \right\rVert \le \sigma \bar n with σ2I−K⊤K≻0\sigma^2 I - K^\top K \succ 0 checked exactly. The rounding error follows the standard model of binary arithmetic [48]: on the certified invariant set, ∣ei∣≤γ5∑j∣Kij∣ ∣zj+nj∣|e_i| \le \gamma_5 \sum_j |K_{ij}|\,|z_j + n_j| plus an underflow term, with γ5=5u/(1−5u)\gamma_5 = 5u/(1-5u) for unit roundoff uu.

All 24 cited docking and pursuit designs remain certified with their own gains and certificate matrices. The targets were fixed before computation: on docking the ultimate bound must remain inside the tolerance and the safety envelope invariant; on pursuit the radius must be at most 1.5 rcap1.5\,r_{\mathrm{cap}}.

The admissible measurement-error bound is nˉ=0.000498\bar n=0.000498–0.0009660.000966 on docking, or 2.5–4.8% of its tolerance. On pursuit it is nˉ=0.00259\bar n=0.00259–0.003410.00341. Double precision changes no bound to three figures; single precision reduces none by more than 0.4%.

At half the admissible noise bound, docking takes 1.05–2.1 times the noise-free certified steps. The certificate allocates contraction to disturbance rejection, using a split chosen for the smallest ultimate bound rather than the fastest docking. On pursuit the steps to 2 rcap2\,r_{\mathrm{cap}} increase by at most 1.

Each design’s audited Lean file states the update from AA, BB and KK, proves it equals the disturbed step, and proves decrease and trajectory bounds for every bounded noise, rounding-error and evader-thrust sequence. The floating-point bound is a hypothesis, not a theorem.

The zero-order-hold plant

Every certificate on the linear problems is for the Euler step. A thruster that holds its command over the step gives instead the zero-order-hold plant z+=Adz+Bduz^+ = A_d z + B_d u, with Ad=eAcΔtA_d = e^{A_c \Delta t} and Bd=∫0ΔteAcs ds BcB_d = \int_0^{\Delta t} e^{A_c s}\,ds\,B_c. It is exact at the sample instants for the stated continuous-time model. Unlike the Euler step, it includes the effect of thrust on position within the interval, whose leading term is Δt2/2\Delta t^2/2 per unit acceleration. We enclose AdA_d and BdB_d by exact rational Taylor sums of order 22, with every neglected entry below 1.2×10−221.2\times 10^{-22}, and re-check each design’s own gain and certificate matrix against every plant in the enclosure by exact LDL⊤^\top, the perturbation entering through Young’s inequality. The settings and outcomes were fixed before the full computation.

All 24 cited designs retain a certificate. Docking step counts change by factors of 0.78–1.08. Of these designs, 8 need at most 3 more steps; 4 need fewer.

On pursuit, we also held the evader’s thrust over each step and separated the six tightest Euler designs (radius at most 0.0318) from the other six. The tight group includes Astra, Sol, Opus and the optimizer. Its certified radii grow by factors of 2.9–4.7; the others grow by 1.04–1.55. An Euler-shaped certificate explains some, but not all, of this growth.

An exploratory simulation, not fixed in advance, uses the search’s greedy evader and the largest distance over the last 100 of 600 steps. In the tight group this distance grows by 1.5–2.4 times, to 0.029–0.043. For the rest it changes by 0.83–1.6 times and stays below 0.024. Among the cited pursuit champions, the Euler leaders lose their lead on the zero-order-hold plant. The trajectory comparison above is exploratory; it does not establish a new paired-campaign ranking. The certificate checks use exact rational Python arithmetic, without Lean; the exploratory trajectories are simulations.

Proof repair by a language model

The campaign certificates all have proof templates. In the recorded Codex CLI repair experiment, we removed the proofs of two saturated cells, cell_DD and cell_UU, from a reduced file that retains a complete proof of cell_LL. A language model then attempted to fill the missing proofs, initially marked with sorry.

The model receives the reduced file and an author-written proof plan. Appendix § 11 gives the repair protocol and recorded model settings.

The recorded comparison uses attempts with and without a supplied identity. Without the witness, all 4 attempts on cell_DD fail. With it, both obligations close on their first attempts, taking 84 s and 94 s. The shared witness is an exact identity bounding the first thruster’s sector on the certified region; its longest integer has 46 digits.

This does not show that the model lacked the identity: 2 failed attempts already state it exactly. Attempts in both conditions also write decrease coefficients with integers up to 104 digits. The prompts and compiler messages were not retained, so the failed step is unknown.

These are successful reconstructions in the condition with a supplied identity. They do not establish why the outcomes differ, estimate a general repair success rate, or demonstrate repair beyond the template’s reach.

Without a supplied plan, gpt-oss attempts 11 obligations: the saturated certificate’s nine cells and the SO(3) decrease and torque bound. This is a separate experiment with a different model, not a controlled test of removing the first experiment’s plan. Its obligations, conditions and settings were fixed before any call; the protocol is in Appendix § 11.

The same acceptance gate admits all 11 generator proofs. gpt-oss closes 0 obligations without the witness and 0 with it, across 88 calls. An exploratory audit of the last attempts finds the complete long-integer identity in 8 of 9 witnessed cell attempts; they fail later. Without witnesses, 3 attempts invoke the dispatch theorem that depends on the cells themselves. At this effort and without a plan, the model does not assemble these proofs. A stronger prover was not tried.

Auditing the pipeline

The Lean kernel checks control theorems; exact arithmetic checks linear admissibility, step counts and SO(3) champions; floating-point statistics, simulation and forensics produce every comparison between arms and the search scores. Appendix Table 7 assigns each statement to its checking layer.

Four adversarial reviews of the lower two layers, run as separate author-orchestrated LLM-agent sessions with distinct briefs and archived attacks, confirmed the certificate mathematics and exposed two defects.

Floating-point logarithms can undercount a bound by one step: ρ=99996/100000\rho=99996/100000 gives N=10,000N=10{,}000 where exact arithmetic requires 10,00110{,}001. Exact re-verification left every shipped bound unchanged and is now required for every reported NN.

Build-log axiom reports can be forged with #eval IO.println; the original build-log audit accepted a proof of False. An independent Lean.collectAxioms driver now checks dependencies directly. A negative regression test injects axiom fake : False and requires rejection.

We also had to consider risks from the proposer, independently of the checker. A model with file access may find earlier solutions, and coding agents have been observed trying to bypass their sandbox restrictions [63]. This happened in an initial GEPA pilot on the docking bound (§ 6.6). The coding-agent CLI used a read-only sandbox but inherited the repository as its working directory. The model found an archived champion from an earlier LLM-GA run and returned it as its own proposal. The proposal matched all 24 genome values and the proxy bound of 9,484 steps. After we hid the repository, the same seed reached 24,629 steps, a 2.6 times worse result. We excluded the contaminated run from the studies.

The model could read previous results without write access. An empty working directory did not take away read access either: it could still use absolute paths. For all the later runs we used an allowlist sandbox to hide the repository and the previous results. We also had to exclude another source of previous answers, namely the prompts and replies that the CLI saves from earlier sessions. We therefore isolated each run with a separate home directory. The evaluator is a separate external service, so the agent cannot manipulate the budget counter and audit trail. We also compared the submitted genomes and model replies with previous champions. This way we can detect an exact copy, but data can leak without an exact copy in the model reply. That is why we combine the comparison with sandbox isolation, rather than relying on the comparison alone.

Continuous integration builds and audits every generated certificate, regenerates 5 of them from the archived genomes, compares their bytes and theorem lists with a pinned manifest (97 theorems), and re-audits every certificate the paper cites. Model-written and template-written proofs face the same kernel check and axiom audit. Using a model to propose a proof therefore does not require trusting the model.

Discussion and limitations

Scope of the guarantees.

Guarantees concern rationalized controllers and certificates over exact reals at sample instants: Euler steps at Δt=1\Delta t=1 s on the linear problems and Cayley steps at h=0.1h=0.1 s on SO(3) (Supplementary Table tab:coverage).

Linear measurement noise and rounding are covered only as bounded errors; the floating-point error bound is assumed, not proved. SO(3) noise, sensor bias and noise with thrust saturation are uncovered. Docking champions are checked under a thrust limit only after search; their speed-limit envelopes and the pursuit guarantee are not covered under that limit. Pursuit bounds the evader’s thrust but leaves the pursuer’s unbounded.

Zero-order hold is checked at sample instants outside Lean. Among the cited pursuit champions, the Euler ranking does not survive this change of plant (§ 7.3). Inter-sample behavior and the validity envelope of the Clohessy–Wiltshire linearization remain uncovered. On the linear problems, Lean companions relate the certified updates to the stated Euler model and gain (Appendix § 11); they do not relate the discrete step to continuous dynamics.

Limitations of the evidence.

The campaigns cover three problems, only one nonlinear, with quadratic certificates on the linear pair. Each arm has twenty runs per base instance; the pursuit sweep and harder docking instances have ten. Spending caps leave Astra and Fable with fewer runs on one modified instance and none on the others.

We compare the four panel configurations at one effort setting, which gives different amounts of reasoning across models. Raising effort helps one tested model. We detect no benefit for the other. These controls do not isolate how reasoning effort contributes to the ordering between models. Astra and Sol were not swept over budget. In a prompt-only probe of 2 calls per setting, Astra uses a median of 4,283 output tokens at high effort against 2,470 at low; Sol shows no detectable change (5,678 against 6,160). Closed models are identified by alias and date rather than snapshot. The optimizer studies (§ 6.6) were limited to docking. They use two seeds and only seven of the sixteen optimizer and model combinations. Since model and effort change together, we cannot isolate their effects or fully explore how they interact with the optimizer. (Also, for the bound runs we used a proxy instead of NN, so they cannot be as easily compared to the campaigns.) We would need more seeds, matched reasoning efforts, more combinations, a repeated-sampling baseline and direct optimization of NN for a fuller evaluation.

Correcting the standard baselines’ implementation weaknesses changes no conclusion (Appendix Table tab:baselines). The objective-aware optimizer closes most of the leading models’ advantage (§ 6.4). It remains local, and solver work is not equated with model inference; a stronger classical search is not excluded.

Astra proposes most of its linear-problem result immediately; Sol improves through later proposals and selection. Pursuit feedback helps Sol, but these runs do not pin down the effect’s size (§ 6.3). The experiments neither distinguish recall of the nominal design from reasoning nor explain the proposed Lyapunov shape. Saturation and noise certificates were completed after search. The recorded proof-repair attempts close two template-provable obligations when both a plan and an exact identity are supplied. All recorded attempts without the supplied identity fail, and the surviving records do not identify the failed step. In a separate experiment without a supplied plan, gpt-oss closes none of 11 obligations (§ 7.4).

On the linear problems, classical design with objective-aware certificates reaches scores close to the best models’. Establishing an advantage beyond these classical synthesis methods requires further evidence on nonlinear problems. SO(3) gives mixed evidence: no model detectably beats CMA-ES in the mixed design; Opus does when it writes every proposal, and one run exceeds the hand-tuned law while its median remains below it (§ 6.5). Full trajectory induction, torque saturation and switching logic remain to be tested.

The model or the optimizer.

The exploratory docking studies (§ 6.6) suggest that changing the model can improve results more consistently than changing the optimizer, but the setup is too limited for a general conclusion. Other studies also find that model and search procedure both matter, and that comparisons should account for computational cost [64, 55, 54]. In PCE the reliability of a result does not depend on either: the same certifying evaluator checks every candidate, however it was generated. Our isolation failure shows why this is not enough to protect the search environment. The checker can remain trustworthy while the proposer accesses earlier solutions (§ 7.5).

Implications for certification.

PCE produces explicit control laws with checked Lyapunov certificates. The kernel establishes the stated properties of the stated model. Comparisons between proposers still depend on statistical analysis, and applying a controller to a vehicle requires assessing the model’s fidelity. The language model remains a design tool; its execution is not part of the deployed controller.

Conclusion

PCE lets a language model search over controller and certificate parameters while returning an explicit law with checked guarantees. In the docking control, with the simulated-cost objective and mutation operator held fixed, 515 of 10,120 new proposals certify when selection retains certified candidates, compared with 0 without that rule. Subsequent certificate synthesis recovers 2 of 9,399 controllers (Table tab:filter).

The comparative results depend on the problem and search configuration. On the linear problems, the strongest models beat the standard baselines but do not clearly outperform classical design that also optimizes the certificate. The ranking among the cited pursuit champions does not survive zero-order-hold dynamics. On SO(3), no model detectably beats CMA-ES in the mixed search; Opus does when it writes every proposal, while its median remains below the hand-tuned law.

The recorded proof-repair attempts succeed in closing two template-provable obligations when both a plan and an exact identity are supplied; all recorded attempts without the supplied identity fail. Some failed attempts already contain that identity. The surviving records neither identify the failed step nor explain why the outcomes differ. In another experiment without a supplied plan, gpt-oss closes none of 11 obligations, with or without the identity. The exploratory docking studies show that the model can run the search as well, with the same exact checker deciding which designs are accepted. They also show why we need to isolate the search environment: a trustworthy evaluator does not prevent the model from accessing earlier solutions. We do not know yet whether model proposals improve synthesis in controller families with fewer classical methods and proof templates.

Acknowledgments

This work is supported by the Aerospace Corporation’s University Partnership Program, and partially by the Spanish Agencia Estatal de Investigación (AEI) under grant (ACTIVATION project) and by the Madrid Government (Comunidad de Madrid-Spain) under the Multiannual Agreement 2023-2026 with Universidad Politécnica de Madrid in the Line A, Emerging PhD researchers.

Problem and search specification

This appendix specifies the dynamics, parameter bounds, initialization, proposal rules and certificate checks used in the campaigns. These settings are taken from the implementation; Table 2 gives the campaign budgets. The certificate optimizer is described separately at the end.

Dynamics and controller parameters

Linear dynamics.

The state z=(x,y,vx,vy)z = (x, y, v_x, v_y) is in metres and metres per second, and one Euler step of Δt=1\Delta t = 1 s of the Clohessy–Wiltshire equations with n=1.13×10−3n = 1.13\times10^{-3} rad/s gives z+=Az+Buz^+ = Az + Bu with A=I+Δt AcA = I + \Delta t\,A_c,

Ac=(001000013n2002n00−2n0),B=Δt(00001001),A_c = \begin{pmatrix} 0&0&1&0\\ 0&0&0&1\\ 3n^2&0&0&2n\\ 0&0&-2n&0 \end{pmatrix}, \qquad B = \Delta t\begin{pmatrix} 0&0\\ 0&0\\ 1&0\\ 0&1 \end{pmatrix},

and u=Kzu = Kz, unbounded except in § 7.1. The mission starts are (1,0.5,0,0)(1, 0.5, 0, 0), (−0.8,1,0,0)(-0.8, 1, 0, 0) and (0.3,−1.2,0.01,−0.01)(0.3, -1.2, 0.01, -0.01); the speed limit has ν0=0.2\nu_0 = 0.2 and ν1=0.5\nu_1 = 0.5, the docking tolerance is ∥z∥≤0.02\left\lVert z \right\rVert \le 0.02, and KK and PP are rationalized to fractions with denominators at most 10410^4. On pursuit the evader’s thrust is at most 0.010.01 m/s2^2 and the capture statement is at 1.5 rcap1.5\,r_{\mathrm{cap}}.

Attitude dynamics.

The inertia is J=diag⁡(4.5,5,5.5)J = \operatorname{diag}(4.5, 5, 5.5) and h=0.1h = 0.1 s. Both updates of a step use the current state: R+=R (aI+hω^+b ωω⊤)/dR^+ = R\,(aI + h\hat\omega + b\,\omega\omega^\top)/d with a=1−h2∥ω∥2/4a = 1 - h^2\left\lVert \omega \right\rVert^2/4, b=h2/2b = h^2/2 and d=1+h2∥ω∥2/4d = 1 + h^2\left\lVert \omega \right\rVert^2/4, which is RR times the Cayley map of hωh\omega, and ω+=ω+hJ−1((Jω)×ω+u)\omega^+ = \omega + hJ^{-1}\bigl((J\omega)\times\omega + u\bigr), where the feed-forward term of uu cancels the gyroscopic term. The torque bound of Figure 2 is a certified output, the maximum of ∥u∥2\left\lVert u \right\rVert^2 on {V≤c}\{V \le c\} from a second linear program, not an imposed limit.

Genomes.

On the linear problems K∈R2×4K \in \mathbb{R}^{2\times4} has all entries free and LL is lower triangular; every proposed genome is clamped to ∣Kij∣≤5|K_{ij}| \le 5, ∣Lij∣≤50|L_{ij}| \le 50 and Lii≥10−3L_{ii} \ge 10^{-3}, so P=LL⊤P = LL^\top is positive definite. On SO(3) the genome is the fifteen diagonal gains of G^,Gc,M,C,Kω\widehat G, G_c, M, C, K_\omega as positive rationals, rounded to denominators of at most 1000; a proposal with a non-positive gain is rejected, and there are no other bounds.

Initialization, selection and proposals

Seeded populations.

Each docking draw chooses one of the following:

  • With probability 0.4, a gentle PD law with kp∼U(0.001,0.02)k_p\sim U(0.001,0.02) and kd∼U(0.03,0.25)k_d\sim U(0.03,0.25). Its certificate comes from the Lyapunov equation with Q=diag⁡(q,q,1,1)Q=\operatorname{diag}(q,q,1,1) and q∼U(0.001,0.1)q\sim U(0.001,0.1).

  • With probability 0.3, a perturbation at scale 0.05 of LQR with Q=R=IQ=R=I.

  • With probability 0.3, a random gain K∼N(0,0.32)K\sim\mathcal N(0,0.3^2) that passes tier 0, with a Lyapunov certificate for Q=IQ=I.

Failed draws are discarded and replaced, so the proportions in the accepted population can differ from the draw probabilities.

Pursuit starts from PD laws with kp∼U(0.05,0.35)k_p\sim U(0.05,0.35), kd∼U(0.3,1.3)k_d\sim U(0.3,1.3) and Lyapunov certificates for q∼U(0.05,1.5)q\sim U(0.05,1.5). Half the designs are then perturbed at scale 0.02.

SO(3) starts from isotropic geometric PD laws: G^=Gc=kpI\widehat G=G_c=k_pI, M=JM=J, C=εIC=\varepsilon I and Kω=kdJK_\omega=k_dJ, with kp∼U(0.6,1.4)k_p\sim U(0.6,1.4), kd∼U(0.5,2)k_d\sim U(0.5,2) and ε∼U(0.12,0.35)\varepsilon\sim U(0.12,0.35). These are the deliberately weak starts of § 6.5.

Selection and mutation.

On the linear problems, the elite contains six genomes. Runs with verification first retain the three best certified candidates, then fill the remaining places by score. Under the certified objective, every certified genome ranks above every uncertified one. Parents are drawn uniformly from this elite. The next population contains the elite, the model’s proposals, and enough Gaussian children to reach 28 members.

Each Gaussian child uses one of two operations, with equal probability:

  • Perturb KK at scale sgs_g and perturb LL at a relative scale.

  • Perturb KK at the same scale and solve the discrete Lyapunov equation with Q=diag⁡(q,q,1,1)Q = \operatorname{diag}(q,q,1,1) and log⁡10q∼U(−3.5,−0.5)\log_{10}q \sim U(-3.5,-0.5). If the modified loop is unstable, retain the parent’s LL.

Both operations also zero one randomly chosen gain with probability 0.15. The mutation scale at generation gg is sg=0.06⋅0.88gs_g = 0.06\cdot0.88^g on docking and 0.05⋅0.9g0.05\cdot0.9^g on pursuit.

On SO(3), selection retains the twelve best certified angles from parents and children together; uncertified genomes score zero. The model sees the best four candidates. Gaussian mutation multiplies each gain by exp⁡(N(0,σ2))\exp(\mathcal N(0,\sigma^2)), with σ=0.25⋅0.92g\sigma=0.25\cdot0.92^g.

Model calls and the ledger.

The model is called at generations 0,3,…,210, 3, \dots, 21 on the linear problems and 3,6,93, 6, 9 on SO(3), for eight candidates each time, and is shown the elite; a failed call is logged and replaced by Gaussian children. A proposal is a distinct genome; repeats are free and tier-0 rejects are charged. On the linear problems the loop arms offer at most 534 distinct genomes: the initial population contributes 28, and each of the 23 later generations adds at most 22, giving 23⋅22=50623\cdot22=506 new genomes and 28+506=53428+506=534 in total. Each classical arm receives the Gaussian arm’s spend on the same seed as its allowance. On SO(3), the allowance of 120 is enforced.

Certificate checks and objectives

Docking.

On docking, exact LDL⊤LDL^\top bisection finds α\alpha, β\beta and ε\varepsilon. The same test finds ρ\rho, bracketed by the largest floating-point generalized eigenvalue; 1−ρ1-\rho is rounded down to nine significant figures and confirmed exactly. The safety multiplier starts at 1.05 times its floating-point estimate, rounded up on a 10−610^{-6} grid. Up to four exact checks are tried, multiplying by 6/56/5 after each failure. The docking bound is the smallest nn with ρncneeded≤α(0.02)2\rho^n c_{\mathrm{needed}}\le\alpha(0.02)^2, verified exactly.

Pursuit.

A 33-point scan chooses ρr\rho_r to minimize CcapC_{\mathrm{cap}}. Exact bisection on the S-procedure matrix finds μ\mu, and rcap=Ccap/αr_{\mathrm{cap}}=\sqrt{C_{\mathrm{cap}}/\alpha}.

SO(3).

The region level cc starts at 1/41/4 and doubles up to eight times while the linear program certifies ρ≤0.995\rho\le0.995, followed by seven bisection steps. CVXPY with Clarabel uses a Gram dominance margin of 10−310^{-3} and two scaling rounds. Champions are re-verified at denominators 10710^7 and 10910^9, requiring the exact identity, exact diagonal dominance and ρ≤0.995\rho\le0.995. For Lean, the decrease program is re-solved with a sparsity penalty to shorten the file. Sol’s model-only champion uses the unpenalized solution because its penalized exact rate exceeded 0.9950.995.

Simulated cost.

The cost of § 6.2.4 is, over 1500 steps from each mission start,

J=∑z0[ ∑t=01499(ut⊤ut+200max⁡(0,−h(zt+1)))+0.02 ts+100 ∥z1500∥],J = \sum_{z_0} \Bigl[\,\sum_{t=0}^{1499} \bigl(u_t^\top u_t + 200\max(0, -h(z_{t+1}))\bigr) + 0.02\,t_s + 100\,\left\lVert z_{1500} \right\rVert\Bigr],

where h(z)=ν02+ν12∥r∥2−∥v∥2h(z) = \nu_0^2 + \nu_1^2\left\lVert r \right\rVert^2 - \left\lVert v \right\rVert^2 and tst_s is the smallest tt with ∥zt+1∥<0.02\left\lVert z_{t+1} \right\rVert < 0.02 (1500 if there is none).

Classical certificate optimizer

The PD lattices are 9×99 \times 9 on docking (kp∈[10−3,10−1]k_p \in [10^{-3}, 10^{-1}], kd∈[0.03,1]k_d \in [0.03, 1], each with and without the Coriolis cancellation) and 13×1313 \times 13 on pursuit (kp∈[0.02,2]k_p \in [0.02, 2], kd∈[0.1,4]k_d \in [0.1, 4]), plus the gains of the seeded pool. Each certificate step tries twelve rates per gain, 1−ρ1 - \rho geometric from 0.98 (1−ρ(Acl)2)0.98\,(1 - \rho(A_{\mathrm{cl}})^2) down to 10−410^{-4}, and the joint program on pursuit uses 33 rates with 1−ρ1 - \rho geometric from 0.980.98 to 10−410^{-4}. The alternation runs ten rounds with restarts at scales 0.05 and 0.2, up to 20,000 solver calls (Clarabel, with SCS as fallback). Each fixed-rate program imposes the contraction at ρ′=ρ−10−3(1−ρ)\rho' = \rho - 10^{-3}(1 - \rho), and on docking it fixes the S-procedure multiplier at λ0=ν02(1−10−3)/1.05\lambda_0 = \nu_0^2 (1 - 10^{-3})/1.05, so that the exact completion, which pads the multiplier by 1.05, accepts the result.

Formal checking in Lean

For each cited design the certificate compiler writes a Lean 4 file [24] against mathlib [25]. On the linear problems each certificate condition becomes one polynomial identity, closed by ring, a statement that the squares of the LDL⊤LDL^\top decomposition are nonnegative, and a chain of inequalities closed by linarith. The exact rational coefficients appear in the file as literal data, so the only search left to linarith is for a linear combination of facts the file supplies. No step requires a language model or an external solver. The templates supply the identities and inequalities that the tactics discharge. Elaboration turns these tactic scripts into proof terms, and the Lean kernel checks the terms; the mathlib lemmas they use are kernel-checked in the same way. The compiler and the tactics are therefore outside the trust base.

The docking and pursuit files state the closed-loop update using literal rational coefficients. These coefficients already combine the plant, time step and gain, so checking the certificate alone would not establish that the compiler used the intended model.

Each cited file therefore has a companion proof that states the mean motion, thrust gains, time step Δt\Delta t and gain KK separately. For every state component, it proves that the certified update equals zi+Δt fi(z,Kz)z_i+\Delta t\,f_i(z,Kz), adding Δt biwi\Delta t\,b_iw_i on pursuit, where ff is the continuous-time Clohessy–Wiltshire field. The tactic ring checks these identities. An inconsistency between the stated model and the certificate’s coefficients fails the build. The companions are generated from the same run records and undergo the same audit as the certificate files.

An independent driver then calls Lean.collectAxioms on every declared theorem and requires its axiom footprint to lie within [propext, Classical.choice, Quot.sound], the three axioms of Lean’s standard foundations. Any other axiom is rejected, including sorryAx, which marks an unfinished proof, the axiom introduced by native evaluation, and any axiom the file declares. § 7.5 describes why the audit calls Lean directly rather than reading the build log. What the kernel does not check is whether the theorem states the intended property of the intended model: the theorem statements and the model assumptions require review (§ 8).

Proof-repair protocols.

The repair loop uses the Codex CLI coding agent at low reasoning effort; its underlying model version was not recorded. The model proposes a tactic block, lake build checks it, and compiler errors are returned for the next attempt. Success requires the project to compile, the number of open obligations to decrease, and the proposed block to contain no sorry. These obligations are already known to be provable by template. The model sees the reduced file and a proof plan written by the authors, so the experiment tests assembly of a supplied plan.

The separate gpt-oss experiment uses the following protocol. Each file retains definitions and statements but no proofs, preventing copying from neighbouring proofs or earlier repairs. Each obligation is attempted from the same file with and without its key identity from the generator. The model uses the panel’s low effort and 4 feedback rounds. Obligations, conditions and settings were fixed before any call.

Artifact provenance

The paper uses separate checks for formal guarantees, numerical certificate verification and empirical comparisons. Table 7 identifies the check behind each type of statement. A kernel-checked control theorem does not verify a campaign statistic or a simulated trajectory.

The command python -m tools.paper_tables --check checks the tables and numerical macros in against their recorded sources. The source paths are listed in , and records source and output hashes. Figures and their inputs are recorded in and checked by python -m tools.paper_figures --check.

Statement classChecked by
Per-candidate control theorems: stability, safety envelope, safe_forever, docking within NN; the strategy-quantified pursuit bound and trajectory-level capture; the nine-cell saturated decrease and its trajectory chain; the SO(3) step and regional decrease; template- or LLM-authored alikeLean 4 kernel; footprint by an independent Lean.collectAxioms driver, a subset of [propext, Classical.choice, Quot.sound]
In-loop admissibility on the linear problems; step counts NN; certificate completions; the stage rescoring of Table tab:stages; the re-verification of every SO(3) champion and the positive definiteness of its VVExact rational arithmetic (Python Fraction)
Campaign medians, paired differences, bootstrap intervals, Wilcoxon and Holm ppFloat statistics, recomputed from the run summaries before every release
Fitness, the SO(3) in-loop scoring, trajectories, attack results, session-log auditsFloat simulation and forensics (unverified)

Table 7. Which part of the pipeline checks each kind of statement.

Certificates.

We cite 102 Lean files carrying 1535 theorems. The independent collectAxioms audit passed 102 files. The optimizer studies are not included in these counts. They add 44 champion files and 606 theorems from the 28 main runs, four supervised runs, six additional Opus runs and six GEPA pilots, two of them on pursuit. All these files passed the same kernel check and axiom audit. The archive contains 6 earlier champions with audited certificates, carrying 70 theorems. Its 3 genome reconstructions are marked as such. All paper quantities are generated from run records; the release gate rejects the record, table and PDF inconsistencies it checks.

Additional results

Interface-control protocol.

Astra’s CLI provides a read-only shell. In the execution-enabled variant, the model ran Python in 58 of 161 sessions, including 115 commands invoking scipy’s differential evolution. This computation was not charged to the proposal ledger. With execution disabled, live tool use was 0 of 160 calls, verified from the event stream.

Opus’s CLI ran in an empty directory with no tools, settings or stored session and used the required system line, Answer the user’s request.

Choice of the docking objective.

Preliminary runs used the proxy ρ=1−ε/β\rho=1-\varepsilon/\beta with fixed floating-point padding, which can reverse the ranking obtained by directly certifying contraction (Table tab:stages). Exact bisection within the proxy formulation (Stage A) rescales the bounds almost uniformly by 2.24×\times. Direct certification (Stage B) tightens them by a further 7–33×\times and reverses their order: the Gaussian design ranked last by the proxy beats its leading LLM design by 3.0×\times. Every reported campaign optimizes Stage B; proxy rankings are not used. We used the padded proxy for the bound runs in the optimizer studies (§ 6.6). Figure 16 compares its results with Stage B across 22 docking-bound designs, including pilots and repeats.

Designρ(Acl)\rho(A_{cl})paddedNNANNBNNpadded/AA/Bpaddedρ\rhoBρ\rho
Gaussian mutation, seed 00.95910,3354,5956562.257.00.999130.98652
Gaussian mutation, seed 10.92913,1915,9071812.2332.60.999320.95215
Astra (preliminary run), seed 00.9519,4844,2225352.257.90.999050.98349
Figure 16

Figure 16. Padded proxy versus certified bound (a) and contraction factors (b) for optimizer-study designs.

Comparison families.

Docking compares each panel arm with full-allowance synthesis: 7 comparisons, fixed after the docking results.

Pursuit includes pairs involving a classical baseline, feedback controls against their arms, and one model pair, with a separate family per budget. Of 21 comparisons, 5 involve unreported models. Restricting Holm adjustment to the 16 reported pairs (Table tab:supppursuit and the gpt-oss feedback control) changes no decision at p=0.05p=0.05. Including unreported pairs can only increase adjusted pp.

SO(3) uses all pairs of the six campaign arms and a separate model-only family, both fixed in code before model calls. The API Opus arm occupies the campaign family under a rule fixed before its calls; model-only Opus is compared with its CLI mixed arm. Harder docking instances each have their own family.

Docking and pursuit families are outcome-informed and exploratory. Adjustment does not make them confirmatory.

Exclusion of degenerate runs.

Runs losing more than a quarter of model calls are excluded and archived. The rule preceded all five exclusions: one pursuit run, two SO(3) runs and two harder-instance runs. Every retained run lost at most a quarter; every excluded run lost at least a third. Any threshold from 25% up to, but excluding, one third gives the same exclusions.

Sensitivity checks recompute every comparison and family. At 20%, 14 additional runs losing exactly two of eight calls are excluded, affecting 44 of 173 comparisons. No median difference changes sign. Of 4 comparisons moving above p=0.05p=0.05, 4 belong to the ten-seed instance families. With no exclusions, no median paired difference changes sign and one comparison moves below the threshold: high-effort Fable against Gaussian mutation on unequal thrust. None is interpreted as a detected difference.

Transfer of existing designs.

Table tab:transfer re-certifies existing designs without further search. It reports certified seeds and median best bounds for the initial population, the best of 2500 PD-grid designs with textbook repair, and certification counts and median bounds for archived base champions. The final rows give settings for which the initialization procedure found a certified starting population on only one of ten seeds.

initial populationPD gridsynthesis, full allowanceAstra (text-only)Fable (effort high)
problemcertifiedmedianNNbestNNcertifiedmediancertifiedmediancertifiedmedian
base problem10/10194.513320/2052.020/2038.520/2039.0
geostationary orbit10/10194.513320/2052.020/2039.020/2038.0
unequal thrusters10/10675.528720/2054.01/2043.04/2051.5
tighter speed limit8/101005.51920/20--0/20--0/20--
wider initial set10/10610.01780/20--0/20--0/20--
speed limit halved1/105560.03240/20--0/20--0/20--
initial set doubled1/106437.03770/20--0/20--0/20--
Structure of the docking champions.

Astra approximately cancels Coriolis coupling in 20 of 20 runs. The Figure 6 gain is K14=−K23=−0.00226K_{14}=-K_{23}=-0.00226, close to ∓2n=∓0.00226\mp2n=\mp0.00226; the rationalized residual is 8.6×10−98.6\times 10^{-9}. This decouples the loop into two nearly identical second-order systems. No Opus or gpt-oss champion has the cancellation.

Table tab:coriolis tests its value under Stage B by removing it from Astra designs, varying it on a fixed PD grid, and fixing it in Gaussian mutation. Removing it changes the median by about one step. The grid gives the same best bound with or without cancellation, both with Lyapunov repair and with a champion’s fixed LL. Fixing cancellation in Gaussian search detects no difference.

The Lyapunov cross-term ratio tracks the docking bound in the rescored champions (Table 8). This association is exploratory, mixes arm and seed effects, and is not a causal measurement. The rescore excludes Sol and grid-bounded synthesis.

Population or statisticValue
Seeded population: cross-term ratio2.5
Gaussian champions: cross-term ratio2.9
Synthesis champions: cross-term ratio4.5
gpt-oss champions: cross-term ratio3.5
Opus champions: cross-term ratio3.6
Astra champions: cross-term ratio6.3
Rescored champions220
Rescored arms, including controls11
Spearman correlation with the bound−0.83-0.83
Champions with N≤39N\le3970
Cross-term ratio of those champions6.06.0–6.96.9

Table 8. Ratio of the cross terms of LL to its position weights.

DesignDesignsCertifiedBestNNMedianNNNote
Astra designs, as found21213738Astra's 20 text-only designs and one coding-agent design, re-certified
Coriolis gains set to zero21213739
Coriolis gains sign-flipped21213740
PD grid, no Coriolis term1,512523140838certificate from the Lyapunov equation
PD grid, no Coriolis term3787139147certificate factorLLof one Astra design
PD grid,∓2n\mp 2n(cancellation)1,512523140838certificate from the Lyapunov equation
PD grid,∓2n\mp 2n(cancellation)3787139147certificate factorLLof one Astra design
PD grid,±2n\pm 2n(flipped)1,508523140839certificate from the Lyapunov equation
PD grid,±2n\pm 2n(flipped)3777139147certificate factorLLof one Astra design
Gaussian mutation, cancelling gains fixed (20 seeds)202093154.5the other six gains searched; vs. Gaussian mutation: medianΔN=+0.0\Delta N = +0.0, ahead on 9, level on 4 of 20; vs. Astra (text-only):ΔN=+116.5\Delta N = +116.5, ahead on 0/20
Baselines rerun.

Table tab:baselines compares each revised classical implementation with its original version. It reports the median certified docking bound or pursuit radius and the number of seeds that certify. The “vs recorded” columns count seeds where the revised version is better, worse or tied with the original. The “vs” columns compare it with the named reference arm. CMA-ES step scalings 0.10.1 and 0.0010.001 are sensitivity checks on seeds 0–9.

BaselineChangennoriginalrerunvs originalvs reference
synthesis, unequal thrusterskeeps certified starting designs108/10, 51.010/10, 55.00 / 0 / 8Fable (high): 0 / 8 / 0
CMA-ES, dockingrestarts, growing population (IPOP)2020/20, 182.020/20, 182.00 / 0 / 20synthesis: 0 / 20 / 0
BIPOP, step×0.01\times 0.012020/20, 182.020/20, 121.020 / 0 / 0synthesis: 0 / 20 / 0
BIPOP, step×0.1\times 0.11010/10, 194.510/10, 165.56 / 0 / 4synthesis: 0 / 10 / 0
BIPOP, step×0.001\times 0.0011010/10, 194.510/10, 135.010 / 0 / 0synthesis: 0 / 10 / 0
PD grid, pursuitone refined lattice,×1\times11010/10, 0.0338810/10, 0.033880 / 0 / 10CMA-ES: 10 / 0 / 0
one refined lattice,×2\times21010/10, 0.0387910/10, 0.0338810 / 0 / 0CMA-ES: 6 / 4 / 0
one refined lattice,×4\times41010/10, 0.0356310/10, 0.0338810 / 0 / 0CMA-ES: 0 / 10 / 0
Optimizer studies: further details.

The optimizer configurations are given in Table 9. All approaches submit genomes to the same external evaluator, but differ in how they organize the search and use model calls. The table records the engine versions, what each model call does and the stopping limits.

optimizer implementation per model call stops at
GOA GEPA GEPA 0.1.4 (PyPI), gepa engine one reflection: reads a candidate and its feedback, writes one revision reflections or 560 evaluations
GOA Meta-Harness GEPA GitHub commit 48f1f65d, meta_harness engine one agent session: reads all earlier candidates, may run code, writes up to 10 sessions or 560 evaluations
GOA Omni same commit, optimize_best_of then optimize_sequential as the engine running (GEPA, Meta-Harness, AutoResearch) 3×623 \times 62, then 2×1872 \times 187 evaluations; unused allowances are not passed on
prime-agent prime-agent 0.9.7, autonomous mode one agent turn in a persistent Python kernel, often submitting tens of genomes by script evaluations, or a time or spending limit

Table 9. Optimizer versions, model interactions and stopping limits; all use the same evaluator and 560-evaluation cap.

Table tab:optall gives results and resources by arm; Table tab:optruns gives each run’s evaluation count, stopping reason and final result on the two axes. We include these details because not every optimizer reached the full evaluation budget, and using the same number of evaluations does not mean using the same inference cost.

docking costJJdocking boundNNper run (median)
seed 0seed 1seed 0seed 1tokensprice ()run (min)first better (min)model calls
optimizer axis
GOA GEPA + Sol 5.61.9931.0521462087.7M121491.2250
GOA Meta-Harness + Sol 5.61.2271.033565648.4M462854.560
GOA Omni + Sol 5.61.0161.034665923.4M212260.7118
prime-agent + Sol 5.6 (Sol baseline)0.8101.32657581.1M1.149.60.744
model axis
prime-agent + Astra0.7290.74259592.6M5.32141.260
prime-agent + gpt-6-sol0.7620.75980662.9M1.17210.866
prime-agent + Opus0.7600.7582,896†^{\dagger}605.2M5.132122.2112
other runs
prime-agent supervised + Sol 5.61.1110.8101,6331,866622k0.725.00.728
references
starting design4.3655.044231477
random search2.3211.882148133000.3<<0.10
GA3.0242.361656181000.1--0
cellobjectiveevaluationsstopped byseed 0seed 1
GOA GEPA, Sol 5.6cost517 / 537250 reflections1.993 / 1.9931.052 / 1.052
GOA GEPA, Sol 5.6bound510 / 513250 reflections10,363 / 1469,487 / 208
GOA Meta-Harness, Sol 5.6cost552 / 53260 sessions1.227 / 1.2271.033 / 1.033
GOA Meta-Harness, Sol 5.6bound460 / 43360 sessions8,639 / 568,629 / 56
GOA Omni, Sol 5.6cost491 / 517phase allowances1.016 / 1.0161.034 / 1.034
GOA Omni, Sol 5.6bound500 / 539phase allowances8,806 / 668,673 / 59
prime-agent, Sol 5.6cost560 / 560560 evaluations0.810 / 0.8101.326 / 1.208
prime-agent, Sol 5.6bound560 / 560560 evaluations8,632 / 578,605 / 58
prime-agent, Astracost560 / 560560 evaluations0.729 / 0.7280.742 / 0.741
prime-agent, Astrabound560 / 560560 evaluations8,593 / 598,594 / 59
prime-agent, gpt-6-solcost560 / 560560 evaluations0.762 / 0.7600.759 / 0.758
prime-agent, gpt-6-solbound560 / 560560 evaluations8,597 / 808,594 / 66
prime-agent, Opuscost560 / 560560 evaluations0.760 / 0.7600.758 / 0.757
prime-agent, Opusbound43 / 5606 h limit / 560 evaluations8,594 / 2,8968,593 / 60

We also tested a supervised variant of prime-agent with Sol 5.6, outside the two study axes. A supervisor could send one note after 80 evaluations without improvement, or when at least 30% of the previous 40 evaluations were rejected. The rejection condition was triggered in every run. Each note gave the rejection rate and remaining budget and reminded the agent that feedback identifies the failing check, without suggesting controller or certificate parameters. With supervision, cost was lower on one seed and higher on the other. The final bounds were 1,633 and 1,866, against 57 and 58 without supervision. With only two runs per objective, we cannot determine what caused these differences.

We also compare run time and resource use, and when each cost run first reached a certified design below 1 and 0.8 (Figure 17). This shows differences in how the approaches used their evaluation budgets beyond the final scores.

Figure 17

Figure 17. Optimizer runtime (a), model calls (b), designs per call (c) and estimated price (d), on logarithmic axes.

We show rejections by the first failing stage in the checker’s order in Figure 18. The original logs only give coarse verdicts, so we reconstructed the stages by re-checking designs from the 27 complete model runs and random search. For the model runs, the reconstructed stage agrees with the logged verdict in 14,492 of 14,501 evaluations; the remaining 9 are marked unmatched.

Figure 18

Figure 18. First failing checker stage for rejected designs, comparing the first 100 evaluations with the remainder.

Supplementary material

Paired pursuit comparisons

Table tab:supppursuit reports the pursuit comparisons that include a classical baseline. For each pair, the difference is computed within seed as rA−rBr_A-r_B, then summarized by its median and bootstrap 95% confidence interval. A negative difference favors A, because a smaller certified radius is better. The A / B / T column counts seeds where A is better, B is better, or the methods tie. The final columns give the unadjusted two-sided Wilcoxon pp-value and its Holm-adjusted value. The comparison family is described in Appendix § 13.

ABnnmed.A−BA - B95% CIA / B / TppHolm
Gaussian mutationCMA-ES20−0.00115-0.00115[−0.00389,+0.00075][-0.00389, +0.00075]11 / 9 / 00.08970.08970.410.41
PD grid searchGaussian mutation20−0.00752-0.00752[−0.00997,−0.00514][-0.00997, -0.00514]20 / 0 / 01.9×10−61.9\times 10^{-6}4.0×10−54.0\times 10^{-5}
PD grid searchCMA-ES20−0.01059-0.01059[−0.01249,−0.00656][-0.01249, -0.00656]20 / 0 / 01.9×10−61.9\times 10^{-6}4.0×10−54.0\times 10^{-5}
Gaussian mutationgpt-oss20+0.00084+0.00084[−0.00187,+0.00218][-0.00187, +0.00218]9 / 11 / 00.870.870.870.87
Gaussian mutationAstra20+0.01283+0.01283[+0.01045,+0.01528][+0.01045, +0.01528]0 / 20 / 01.9×10−61.9\times 10^{-6}4.0×10−54.0\times 10^{-5}
Gaussian mutationSol20+0.01145+0.01145[+0.00888,+0.01346][+0.00888, +0.01346]0 / 20 / 01.9×10−61.9\times 10^{-6}4.0×10−54.0\times 10^{-5}
Gaussian mutationOpus20+0.01027+0.01027[+0.00918,+0.01197][+0.00918, +0.01197]0 / 20 / 01.9×10−61.9\times 10^{-6}4.0×10−54.0\times 10^{-5}
CMA-ESgpt-oss20+0.00188+0.00188[−0.00073,+0.00615][-0.00073, +0.00615]6 / 14 / 00.08970.08970.410.41
CMA-ESAstra20+0.01589+0.01589[+0.01187,+0.01780][+0.01187, +0.01780]0 / 20 / 01.9×10−61.9\times 10^{-6}4.0×10−54.0\times 10^{-5}
CMA-ESSol20+0.01316+0.01316[+0.01106,+0.01622][+0.01106, +0.01622]0 / 20 / 01.9×10−61.9\times 10^{-6}4.0×10−54.0\times 10^{-5}
CMA-ESOpus20+0.01151+0.01151[+0.01033,+0.01585][+0.01033, +0.01585]0 / 20 / 01.9×10−61.9\times 10^{-6}4.0×10−54.0\times 10^{-5}
PD grid searchgpt-oss20−0.00620-0.00620[−0.00940,−0.00528][-0.00940, -0.00528]20 / 0 / 01.9×10−61.9\times 10^{-6}4.0×10−54.0\times 10^{-5}
PD grid searchAstra20+0.00531+0.00531[+0.00531,+0.00531][+0.00531, +0.00531]0 / 20 / 07.7×10−67.7\times 10^{-6}9.3×10−59.3\times 10^{-5}
PD grid searchSol20+0.00428+0.00428[+0.00198,+0.00529][+0.00198, +0.00529]0 / 20 / 08.8×10−58.8\times 10^{-5}9.0×10−49.0\times 10^{-4}
PD grid searchOpus20+0.00401+0.00401[+0.00231,+0.00473][+0.00231, +0.00473]4 / 16 / 01.0×10−41.0\times 10^{-4}9.4×10−49.4\times 10^{-4}

Certificate optimization and thrust

Certificate optimization.

Table tab:suppcertopt compares the classical certificate optimizer with Astra and Sol. Differences are the optimizer’s value minus the model’s value, computed within seed. Both objectives are minimized, so a positive difference means the optimizer is worse. Wins, losses and ties are counted from the optimizer’s side. Holm adjustment uses the declared family across both problems.

ProblemAgainstnnMedian diff.95% CIW / L / TppHolm
dockingAstra20+1.0+1.0[+0.0,+2.0][+0.0, +2.0]5 / 12 / 30.150.150.150.15
dockingSol20+2.0+2.0[+1.0,+2.0][+1.0, +2.0]3 / 15 / 20.06970.06970.140.14
pursuitAstra20+0.00005+0.00005[+0.00004,+0.00008][+0.00004, +0.00008]0 / 20 / 08.8×10−58.8\times 10^{-5}3.5×10−43.5\times 10^{-4}
pursuitSol20−0.00098-0.00098[−0.00324,+0.00002][-0.00324, +0.00002]13 / 7 / 00.004820.004820.01450.0145
Thrust demand.

Table 10 reports peak commanded acceleration per axis for the final designs. Simulated peaks use the docking mission starts and the pursuit fitness simulation’s worst-case evader. For docking, the table also gives the largest command anywhere in each certified set; this can exceed the simulated peak. The “>um>u_m” columns count designs whose peak exceeds the actuator limit um=0.2u_m=0.2 m/s2^2. These measurements concern the original unbounded-thrust designs; they do not establish performance with clipped thrust.

simulated peakcertified-set peak
3-5(l)6-8 ProblemArmmedianmax>um> u_mmedianmax>um> u_m
dockingGaussian mutation0.0210.0280/200.0300.0400/20
dockingCMA-ES0.0140.0230/200.0250.0350/20
dockingalternating SDP synthesis (full allowance)0.1370.1580/200.2130.21920/20
dockingAstra0.0260.0480/200.0610.0940/20
dockingSol0.0270.1700/200.0630.2232/20
dockingOpus0.0300.0770/200.0410.1010/20
dockinggpt-oss0.0220.0570/200.0370.1010/20
pursuitGaussian mutation0.4750.53920/20–––
pursuitCMA-ES0.5130.63420/20–––
pursuitPD grid search0.7750.77520/20–––
pursuitAstra0.9180.91820/20–––
pursuitSol0.8811.07920/20–––
pursuitOpus0.8641.09720/20–––
pursuitgpt-oss0.4700.59820/20–––

Table 10. Peak commanded acceleration per axis (m/s2^2), in simulation and over the docking certified sets.

Coverage of the guarantees

Table tab:coverage separates the guarantees established for each cited design. Each group names the dynamics model. Statements concern rationalized controllers and certificates over exact reals at sample instants. The columns have the following meanings:

The marks distinguish the evidence: “Lean” is a kernel-checked theorem in an audited file, “exact” is a rational check outside Lean, and “–” means the property is not covered. The guarantees in different columns are separate; for example, the table does not claim a combined noise-and-saturation theorem.

Designtabular[b]@c@Exact
checktabulartabular[b]@c@Lean
theoremstabulartabular[b]@c@Trajectorytabulartabular[b]@c@Model
steptabulartabular[b]@c@Noise,
roundingtabulartabular[b]@c@Thrust
limittabulartabular[b]@c@Zero-order
holdtabular
docking: Clohessy--Wiltshire, Euler step atΔt=1\Delta t = 1s
Gaussian mutationin loop19LeanLeanLeanLeanexact
CMA-ESin loop19LeanLeanLeanLeanexact
alternating SDP synthesisin loop19LeanLeanLeanLeanexact
Astrain loop19LeanLeanLeanLeanexact
Solin loop19LeanLeanLeanLeanexact
Opusin loop19LeanLeanLeanLeanexact
gpt-ossin loop19LeanLeanLeanLeanexact
certificate optimizerin loop19LeanLeanLeannonea^{a}exact
hand-designed lawexact29Lean----Lean--
pursuit: Clohessy--Wiltshire, Euler step atΔt=1\Delta t = 1s; evader thrust bounded, pursuer not
Gaussian mutationin loop11LeanLeanLean--exact
CMA-ESin loop11LeanLeanLean--exact
PD grid searchin loop11LeanLeanLean--exact
Astrain loop11LeanLeanLean--exact
Solin loop11LeanLeanLean--exact
Opusin loop11LeanLeanLean--exact
gpt-ossin loop11LeanLeanLean--exact
certificate optimizerin loop11LeanLeanLean--exact
attitude: rigid body on SO(3), Cayley step ath=0.1h = 0.1s; region{V≤c}\{V \le c\}
Gaussian mutationafter search44one step--------
CMA-ESafter search41one step--------
Astraafter search43one step--------
Solafter search39one step--------
Opusafter search44one step--------
gpt-ossafter search44one step--------
hand-tuned lawexact34one step--------

a^{a}No thrust-limit certificate: no θ\theta in the grid both covers the mission states and admits a sector multiplier. The cited designs of the other arms (4 on docking, 4 on pursuit, 2 on SO(3)) each carry the marks of a campaign row of their problem.

References

  1. [1]Necula, G. C. (1997). Proof-Carrying Code. Proceedings of the 24th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL), 106–119. https://doi.org/10.1145/263699.263712
  2. [2]Romera-Paredes, B., Barekatain, M., Novikov, A., et al. (2024). Mathematical discoveries from program search with large language models. Nature, 625(7995), 468–475. https://doi.org/10.1038/s41586-023-06924-6
  3. [3]Novikov, A., Vũ, N., Eisenberger, M., et al. (2025). AlphaEvolve: A coding agent for scientific and algorithmic discovery. https://arxiv.org/abs/2506.13131
  4. [4]Lange, R. T., Imajuku, Y., & Cetin, E. (2026). ShinkaEvolve: Towards Open-Ended and Sample-Efficient Program Evolution. International Conference on Learning Representations (ICLR), 74026–74078. https://proceedings.iclr.cc/paper_files/paper/2026/hash/7886b9bafe76c52fd568db10ff9772df-Abstract-Conference.htmlproceedings.iclr.cc/paper_files/paper/2026/hash/7886b9bafe76c52fd568db10ff9772df-Abstract-Conference.html
  5. [5]Lin, Y., Tang, S., Lyu, B., et al. (2026). Goedel-Prover-V2: Scaling formal theorem proving with scaffolded data synthesis and self-correction. International Conference on Learning Representations (ICLR), 11793–11818. https://proceedings.iclr.cc/paper_files/paper/2026/hash/13e8be77982beb73d7ed0bbf122f9f3c-Abstract-Conference.htmlproceedings.iclr.cc/paper_files/paper/2026/hash/13e8be77982beb73d7ed0bbf122f9f3c-Abstract-Conference.html
  6. [6]Ye, Z., Yan, Z., He, J., Kasriel, T., Yang, K., & Song, D. (2026). VERINA: Benchmarking verifiable code generation. International Conference on Learning Representations (ICLR), 38933–38972. https://proceedings.iclr.cc/paper_files/paper/2026/hash/41b8c80f9113b9f8e2e129447221682a-Abstract-Conference.htmlproceedings.iclr.cc/paper_files/paper/2026/hash/41b8c80f9113b9f8e2e129447221682a-Abstract-Conference.html
  7. [7]Doll, M., & Shames, I. (2026). Foundations of machine-checked control theory in Lean. IEEE Control Systems Letters. https://doi.org/10.1109/lcsys.2026.3745557
  8. [8]Cohen, C., & Rouhling, D. (2017). A formal proof in Coq of LaSalle's invariance principle. Interactive Theorem Proving (ITP), 148–163. https://doi.org/10.1007/978-3-319-66107-0_10
  9. [9]Rouhling, D. (2018). A formal proof in Coq of a control function for the inverted pendulum. Certified Programs and Proofs (CPP), 28–41. https://doi.org/10.1145/3167101
  10. [10]Immler, F., & Hölzl, J. (2012). Numerical analysis of ordinary differential equations in Isabelle/HOL. Interactive Theorem Proving (ITP), 377–392. https://doi.org/10.1007/978-3-642-32347-8_26
  11. [11]Edwards, A., Peruffo, A., & Abate, A. (2026). Fossil 2.0: Design, usage and impact of a software tool for verification and control of dynamical models. Science of Computer Programming, 247, 103354. https://doi.org/10.1016/j.scico.2025.103354
  12. [12]Devadze, G., Magron, V., & Streif, S. (2025). Computer-assisted proofs for Lyapunov stability via sums of squares certificates and constructive analysis. Journal of Automated Reasoning, 69(1). https://doi.org/10.1007/s10817-024-09717-2
  13. [13]Sogokon, A., Mitsch, S., Tan, Y. K., Cordwell, K., & Platzer, A. (2021). Pegasus: sound continuous invariant generation. Formal Methods in System Design, 58(1-2), 5–41. https://doi.org/10.1007/s10703-020-00355-z
  14. [14]Bohrer, R., Tan, Y. K., Mitsch, S., Myreen, M. O., & Platzer, A. (2018). VeriPhy: verified controller executables from verified cyber-physical system models. Proceedings of the 39th ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI), 617–630. https://doi.org/10.1145/3192366.3192406
  15. [15]Dunlap, K., Mote, M., Delsing, K., & Hobbs, K. L. (2023). Run time assured reinforcement learning for safe satellite docking. Journal of Aerospace Information Systems, 20(1), 25–36. https://doi.org/10.2514/1.i011126
  16. [16]McQuinn, C.-K., Dunlap, K., Hamilton, N., Wilson, J., & Hobbs, K. L. (2024). Run Time Assurance for Simultaneous Constraint Satisfaction During Spacecraft Attitude Maneuvering. 2024 IEEE Aerospace Conference, 1–12. https://doi.org/10.1109/aero58975.2024.10521346
  17. [17]Dunlap, K., Bennett, K., van Wijk, D., Hamilton, N., & Hobbs, K. L. (2024). Run Time Assured Reinforcement Learning for Six Degree-of-Freedom Spacecraft Inspection. AIAA AVIATION FORUM AND ASCEND 2024. https://doi.org/10.2514/6.2024-4935
  18. [18]Mandal, U., Amir, G., Wu, H., et al. (2024). Formally verifying deep reinforcement learning controllers with Lyapunov barrier certificates. Proceedings of the 24th Conference on Formal Methods in Computer-Aided Design (FMCAD), 95–106. https://doi.org/10.34727/2024/isbn.978-3-85448-065-5_15
  19. [19]Clohessy, W. H., & Wiltshire, R. S. (1960). Terminal Guidance System for Satellite Rendezvous. Journal of the Aerospace Sciences, 27(9), 653–658. https://doi.org/10.2514/8.8704
  20. [20]Boyd, S., El Ghaoui, L., Feron, E., & Balakrishnan, V. (1994). Linear Matrix Inequalities in System and Control Theory (Vol. 15). SIAM. https://doi.org/10.1137/1.9781611970777
  21. [21]Parrilo, P. A. (2003). Semidefinite Programming Relaxations for Semialgebraic Problems. Mathematical Programming, Series B, 96(2), 293–320. https://doi.org/10.1007/s10107-003-0387-5
  22. [22]Papachristodoulou, A., & Prajna, S. (2002). On the Construction of Lyapunov Functions Using the Sum of Squares Decomposition. Proceedings of the 41st IEEE Conference on Decision and Control, 3, 3482–3487. https://doi.org/10.1109/cdc.2002.1184414
  23. [23]Ahmadi, A. A., & Majumdar, A. (2019). DSOS and SDSOS Optimization: More Tractable Alternatives to Sum of Squares and Semidefinite Optimization. SIAM Journal on Applied Algebra and Geometry, 3(2), 193–230. https://doi.org/10.1137/18m118935x
  24. [24]de Moura, L., & Ullrich, S. (2021). The Lean 4 Theorem Prover and Programming Language. Automated Deduction -- CADE 28, 12699, 625–635. https://doi.org/10.1007/978-3-030-79876-5_37
  25. [25]The mathlib Community. (2020). The Lean Mathematical Library. Proceedings of the 9th ACM SIGPLAN International Conference on Certified Programs and Proofs (CPP), 367–381. https://doi.org/10.1145/3372885.3373824
  26. [26]Gomes da Silva, J. , J. M., & Tarbouriech, S. (2005). Antiwindup Design with Guaranteed Regions of Stability: An LMI-Based Approach. IEEE Transactions on Automatic Control, 50(1), 106–111. https://doi.org/10.1109/TAC.2004.841128
  27. [27]Hansen, N., & Ostermeier, A. (2001). Completely Derandomized Self-Adaptation in Evolution Strategies. Evolutionary Computation, 9(2), 159–195. https://doi.org/10.1162/106365601750190398
  28. [28]Hassibi, A., How, J., & Boyd, S. (1999). A Path-Following Method for Solving BMI Problems in Control. Proceedings of the 1999 American Control Conference, 1385–1389. https://doi.org/10.1109/acc.1999.783595
  29. [29]Auger, A., & Hansen, N. (2005). A restart CMA evolution strategy with increasing population size. Proceedings of the IEEE Congress on Evolutionary Computation (CEC), 2, 1769–1776. https://doi.org/10.1109/cec.2005.1554902
  30. [30]Hansen, N. (2009). Benchmarking a BI-population CMA-ES on the BBOB-2009 function testbed. Proceedings of the Genetic and Evolutionary Computation Conference Companion (GECCO), 2389–2396. https://doi.org/10.1145/1570256.1570333
  31. [31]Wilcoxon, F. (1945). Individual Comparisons by Ranking Methods. Biometrics Bulletin, 1(6), 80–83. https://doi.org/10.2307/3001968
  32. [32]Holm, S. (1979). A Simple Sequentially Rejective Multiple Test Procedure. Scandinavian Journal of Statistics, 6(2), 65–70. https://www.jstor.org/stable/4615733jstor.org/stable/4615733
  33. [33]Bhat, S. P., & Bernstein, D. S. (2000). A Topological Obstruction to Continuous Global Stabilization of Rotational Motion and the Unwinding Phenomenon. Systems & Control Letters, 39(1), 63–70. https://doi.org/10.1016/s0167-6911(99)00090-0
  34. [34]Chaturvedi, N. A., Sanyal, A. K., & McClamroch, N. H. (2011). Rigid-Body Attitude Control. IEEE Control Systems Magazine, 31(3), 30–51. https://doi.org/10.1109/mcs.2011.940459
  35. [35]Lee, T., Leok, M., & McClamroch, N. H. (2010). Geometric Tracking Control of a Quadrotor UAV on SE(3). Proceedings of the 49th IEEE Conference on Decision and Control, 5420–5425. https://doi.org/10.1109/cdc.2010.5717652
  36. [36]Rodriguez-Fernandez, V., Carrasco, A., Cheng, J., Scharf, E., Siew, P. M., & Linares, R. (2024). Language Models are Spacecraft Operators. https://arxiv.org/abs/2404.00413
  37. [37]Carrasco, A., Rodriguez-Fernandez, V., & Linares, R. (2025). Large Language Models as Autonomous Spacecraft Operators in Kerbal Space Program. Advances in Space Research, 76(6), 3480–3497. https://doi.org/10.1016/j.asr.2025.06.034
  38. [38]Zucchelli, E. M., Wu, D., Briden, J., Hofmann, C., Rodriguez-Fernandez, V., & Linares, R. (2024). Fine-Tuned Language Models as Space Systems Controllers. AAS/AIAA Astrodynamics Specialist Conference. https://arxiv.org/abs/2501.16588
  39. [39]Gaudet, B., Linares, R., & Furfaro, R. (2020). Deep Reinforcement Learning for Six Degree-of-Freedom Planetary Landing. Advances in Space Research, 65(7), 1723–1741. https://doi.org/10.1016/j.asr.2019.12.030
  40. [40]Takubo, Y., Dwivedi, A., Ramkumar, S., Pabon, L. A., Gammelli, D., Pavone, M., & D'Amico, S. (2026). Language-Conditioned Safe Trajectory Generation for Spacecraft Rendezvous. Journal of Guidance, Control, and Dynamics, 49(11), 3117–3136. https://doi.org/10.2514/1.g009958
  41. [41]Jain, A., & Linares, R. (2026). Agentic AutoResearch for Space Autonomy: An Auditable, LLM-Driven Research Agent for Aerospace Control Problems. https://arxiv.org/abs/2606.20394
  42. [42]Jain, A., & Linares, R. (2026). Autonomous Reasoning for Spacecraft Control: A Large Language Model Framework with Group Relative Policy Optimization. 2026 IEEE Aerospace Conference, 1–14. https://doi.org/10.1109/aero66936.2026.11520000
  43. [43]Jain, A., & Linares, R. (2026). Tiny Recursive Control: Iterative Reasoning for Efficient Optimal Control. AIAA SCITECH 2026 Forum. https://doi.org/10.2514/6.2026-2380
  44. [44]Jain, A., Rodriguez-Fernandez, V., & Linares, R. (2025). Multi-Phase Spacecraft Trajectory Optimization via Transformer-Based Reinforcement Learning. https://arxiv.org/abs/2511.11402
  45. [45]Carrasco, A., Nedungadi, M., Zucchelli, E. M., Jain, A., Rodriguez-Fernandez, V., & Linares, R. (2025). Visual Language Models as Operator Agents in the Space Domain. https://arxiv.org/abs/2501.07802
  46. [46]Ren, Z. Z., Shao, Z., Song, J., et al. (2025). DeepSeek-Prover-V2: Advancing formal mathematical reasoning via reinforcement learning for subgoal decomposition. https://arxiv.org/abs/2504.21801
  47. [47]Hubert, T., Mehta, R., Sartran, L., et al. (2026). Olympiad-level formal mathematical reasoning with reinforcement learning. Nature, 651(8106), 607–613. https://doi.org/10.1038/s41586-025-09833-y
  48. [48]Higham, N. J. (2002). Accuracy and Stability of Numerical Algorithms. Society for Industrial and Applied Mathematics. https://doi.org/10.1137/1.9780898718027
  49. [49]Agrawal, L. A., Tan, S., Soylu, D., et al. (2026). GEPA: Reflective Prompt Evolution Can Outperform Reinforcement Learning. International Conference on Learning Representations (ICLR), 8479–8565. https://proceedings.iclr.cc/paper_files/paper/2026/hash/0e9e708b6f48e14fd0ac29e167413f76-Abstract-Conference.htmlproceedings.iclr.cc/paper_files/paper/2026/hash/0e9e708b6f48e14fd0ac29e167413f76-Abstract-Conference.html
  50. [50]Agrawal, L. A., Lee, D., Ma, W., et al. (2026). optimize_anything: A Universal API for Optimizing any Text Parameter. In https://gepa-ai.github.io/gepa/blog/2026/02/18/introducing-optimize-anything/. https://gepa-ai.github.io/gepa/blog/2026/02/18/introducing-optimize-anything/gepa-ai.github.io/gepa/blog/2026/02/18/introducing-optimize-anything
  51. [51]Chan, J. S., Chowdhury, N., Jaffe, O., et al. (2025). MLE-bench: Evaluating Machine Learning Agents on Machine Learning Engineering. International Conference on Learning Representations (ICLR), 50466–50494. https://proceedings.iclr.cc/paper_files/paper/2025/hash/7e3767db483c942b883eb4f8cfb74e31-Abstract-Conference.htmlproceedings.iclr.cc/paper_files/paper/2025/hash/7e3767db483c942b883eb4f8cfb74e31-Abstract-Conference.html
  52. [52]Gideoni, Y., Risi, S., & Gal, Y. (2026). Simple Baselines are Competitive with Code Evolution. https://arxiv.org/abs/2602.16805
  53. [53]Jiang, Z., Schmidt, D., Srikanth, D., et al. (2025). AIDE: AI-Driven Exploration in the Space of Code. https://arxiv.org/abs/2502.13138
  54. [54]Kapoor, S., Stroebl, B., Siegel, Z. S., et al. (2025). AI Agents That Matter. Transactions on Machine Learning Research (TMLR). https://openreview.net/pdf?id=Zy4uFzMviZopenreview.net/pdf?id=Zy4uFzMviZ
  55. [55]Kapoor, S., Stroebl, B., Kirgis, P., et al. (2026). Holistic Agent Leaderboard: The Missing Infrastructure for AI Agent Evaluation. International Conference on Learning Representations (ICLR), 98778–98849. https://proceedings.iclr.cc/paper_files/paper/2026/hash/a0928f924a344aaebbb7f6cd8d56e34c-Abstract-Conference.htmlproceedings.iclr.cc/paper_files/paper/2026/hash/a0928f924a344aaebbb7f6cd8d56e34c-Abstract-Conference.html
  56. [56]Karpathy, A. (2026). autoresearch: AI agents running research on single-GPU nanochat training automatically. In https://github.com/karpathy/autoresearch. https://github.com/karpathy/autoresearchgithub.com/karpathy/autoresearch
  57. [57]Karten, S., Zhang, A. L., Thomas, K., et al. (2026). Prime Agent: A Self-Improving RLM Harness. https://arxiv.org/abs/2608.23552
  58. [58]Khattab, O., Singhvi, A., Maheshwari, P., et al. (2024). DSPy: Compiling Declarative Language Model Calls into Self-Improving Pipelines. International Conference on Learning Representations (ICLR), 54928–54958. https://proceedings.iclr.cc/paper_files/paper/2024/hash/f1cf02ce09757f57c3b93c0db83181e0-Abstract-Conference.htmlproceedings.iclr.cc/paper_files/paper/2024/hash/f1cf02ce09757f57c3b93c0db83181e0-Abstract-Conference.html
  59. [59]Lee, Y., Nair, R., Zhang, Q., et al. (2026). Meta-Harness: End-to-End Optimization of Model Harnesses. https://arxiv.org/abs/2603.28052
  60. [60]Tan, S., Agrawal, L. A., Lee, D., et al. (2026). optimize_anything Goes omni: Composing Optimizers into Meta-Optimizer Pipelines. In https://gepa-ai.github.io/gepa/blog/2026/07/22/optimize-anything-omni/. https://gepa-ai.github.io/gepa/blog/2026/07/22/optimize-anything-omni/gepa-ai.github.io/gepa/blog/2026/07/22/optimize-anything-omni
  61. [61]Xia, C. S., Deng, Y., Dunn, S., & Zhang, L. (2025). Demystifying LLM-Based Software Engineering Agents. Proceedings of the ACM on Software Engineering (FSE), 2(FSE), 801–824. https://doi.org/10.1145/3715754
  62. [62]Yang, C., Wang, X., Lu, Y., et al. (2024). Large Language Models as Optimizers. International Conference on Learning Representations (ICLR), 12028–12068. https://proceedings.iclr.cc/paper_files/paper/2024/hash/3339f19c5fcee3ad74502947a32be9e6-Abstract-Conference.htmlproceedings.iclr.cc/paper_files/paper/2024/hash/3339f19c5fcee3ad74502947a32be9e6-Abstract-Conference.html
  63. [63]Zelikman, E., Lorch, E., Mackey, L., & Kalai, A. T. (2024). Self-Taught Optimizer (STOP): Recursively Self-Improving Code Generation. Conference on Language Modeling (COLM). https://openreview.net/pdf?id=46Zgqo4QIUopenreview.net/pdf?id=46Zgqo4QIU
  64. [64]Zhang, R., Liu, F., Lin, X., et al. (2024). Understanding the Importance of Evolutionary Search in Automated Heuristic Design with Large Language Models. Parallel Problem Solving from Nature (PPSN XVIII), 185–202. https://doi.org/10.1007/978-3-031-70068-2_12

Paper details

vlnc:W_zxays5rw
v1 · latestHistory (1)

published · Fresh — added to the Hub within the last 30 days

added ·

Usage

views · 10

downloads · 0

A view counts once per browser per day, a download each time the PDF is requested.

CC BY 4.0

Original source

  • Computer Science

Not recorded for this paper · View statement →

Looking for related papers…
Contents