Skip to content
Sprint projectMay 25, 2026Tel Aviv

Adversarial Iteration for Underspecified Program Synthesis

Amir Sarid, Uri Ariel Chen, Amit Saroussi, Nitzan Pomerantz · Team The Herons

Submitted to The Secure Program Synthesis Hackathon. Sprint projects are early-stage work by participants, not Apart Research publications.

Read the report

Report: Adversarial Iteration for Underspecified Program Synthesis

Code (opens in new tab)
Share

We introduce IDCS (Iterative Distinguishing of Code and Specs), a spec-guided pipeline that outperforms direct code generation on underspecified program-synthesis tasks. This pipeline, composed of a generator, a distinguisher, a user-proxy, and finally a coder, gets significantly better results than either using the coder directly or using the spec generator and coder alone, especially on prompts that are underspecified, unclear, or shorter than the behavior they imply. We also show that the generator and distinguisher prompts themselves can be generated through adversarial coevolution. We evaluate on three MBPP+ slices selected for hidden-edge semantics rather than algorithmic difficulty: an original five-task hard slice, a held-out hard-test split, and a nine-task fresh-failures slice. The hand-written spec-guided pipeline increases hidden-test pass rate 73.3% to 96.2% on held-out test data.

Reviews

Judging this Sprint?

Review this project

Your public critique appears on this page without your name. Your private critique is not published; only the Apart team reads it. If you agree below, we share your review with grantmaking.ai (opens in new tab) and the Transformative AI Fund so strong projects can be funded.

Not shown on this page.

Shown on this page, without your name.

Only the Apart team reads this, and funders if you agree below.

Share my name publicly on grantmaking.ai *
Share my private critique with funders *

How much would this matter for AI safety if it worked? How innovative is it? For scores of 4-5: is this actually new to the field, or replicating recent work?

Scoring guide
  1. 1Negligible. No clear problem addressed, or no meaningful novelty.
  2. 2Limited. Addresses a real problem but with a generic or well-trodden approach. Incremental at best.
  3. 3Moderate. Clear problem with a reasonable approach; some novelty in framing or method beyond routine application of existing tools.
  4. 4Significant. Important problem with an original approach, or identifies a neglected problem area. A valuable contribution others could build on.
  5. 5Exceptional. Tackles a critical AI safety problem with a genuinely novel approach, or opens a new research direction. Clear theory of change. You'd be excited to share this with researchers in the area.

How sound are methodology, implementation, and findings?

Scoring guide
  1. 1Seriously flawed. Methodology broken, results uninterpretable, or implementation doesn't work.
  2. 2Weak. Approach has significant gaps: missing validation, flawed experimental design, or incomplete implementation.
  3. 3Competent. Technically solid given the short duration. Methodology makes sense, results are interpretable, limitations acknowledged, work builds toward clear conclusions.
  4. 4Strong. Thorough methodology with convincing validation. Results clearly support conclusions. Immediately useful for future work.
  5. 5Exceptional. Ambitious scope executed rigorously. Surprising findings, novel methods, or unusually robust validation.

How clearly are work, findings, and impact potential communicated?

Scoring guide
  1. 1Incomprehensible. Cannot determine what the project is actually claiming or doing.
  2. 2Hard to follow. Key information buried, missing, or diluted by excessive length. Significant effort to extract main points.
  3. 3Clear enough. Can understand the problem, approach, and results without undue effort. Core content clearly present: problem, method, findings, limitations.
  4. 4Well presented. Easy to follow, well-structured, appropriate level of detail. Target audience would get it quickly.
  5. 5Exceptionally clear. A pleasure to read. Complex ideas made accessible. Could serve as a model for how to present this type of work.

  1. The methodological instinct is sound: score the generated code against hidden tests so "does a spec layer help" becomes a number, and curate slices for hidden-edge semantics rather than difficulty. The ceiling prompt and the gold-spec POC do real work in bounding where the headroom actually sits. The framing undersells itself, though. The abstract leads with 73→96%, the hand-written pipeline on a single five-task split and the least load-bearing number in the paper. The genuine contribution, though, is the negative result: coevolved prompts win on training and lose to the seed on held-out. Opening with that would be both more interesting and more defensible. Beyond the framing, every delta rides on five-to-nine tasks, so none survives statistically, and the validation gate that would address the overfitting is proposed but never run. The work stops one experiment short of its own thesis, a point it nearly makes outright.

    Read full reviewShow less
  2. Fun and interesting work—you identified a good problem and tried some nice approaches including coevolution/GEPA, even though you got mostly a null result. Presentation could have been better: it's clearly slop writing, citations are broken, etc. Could warrant some further work, though it remains a possibility that with an underspecified spec, the information may not exist for the LLM to meaningfully improve on a "first-pass" implementation.

Cite this project

@misc{sarid2026adversarial,
  title = {{Adversarial Iteration for Underspecified Program Synthesis}},
  author = {Amir Sarid and Uri Ariel Chen and Amit Saroussi and Nitzan Pomerantz},
  year = {2026},
  month = may,
  note = {Submitted to The Secure Program Synthesis Hackathon, an Apart Research Sprint},
  howpublished = {\url{https://apartresearch.com/sprints/projects/adversarial-iteration-for-underspecified-program-synthesis-i82n}},
  url = {https://apartresearch.com/sprints/projects/adversarial-iteration-for-underspecified-program-synthesis-i82n}
}

Build something like this at the next Sprint

AI Collusion Research Sprint · Oct 23 - 25, 2026