[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"branding":3,"analytics":7,"article-code-agents-can-now-prove-software-correct-automatically":10,"sections":48},{"siteName":4,"siteTagline":5,"publisherName":4,"contactEmail":6},"The Revision","Tech news, decoded.","editor@therevision.news",{"gaMeasurementId":8,"adsenseClientId":9},"G-ZW2MV82GYR","ca-pub-8533917693782264",{"article":11},{"id":12,"slug":13,"title":14,"dek":15,"body_md":16,"tags_json":17,"published_at":18,"created_at":19,"updated_at":20,"status":21,"review_note":22,"review_notes":23,"image_url":22,"persona_id":22,"persona_name":22,"section":38,"tags":39,"sources":43,"feedback":47,"feedback_at":22,"cost_usd":47,"total_tokens":47},4389,"code-agents-can-now-prove-software-correct-automatically","Code Agents Can Now Prove Software Correct - Automatically","A new research harness called Aria let a code agent prove every theorem in its test set, where prior LLM approaches solved fewer than one in eight.","Automated formal verification just cleared a bar researchers thought would take years to reach.\n\nA team of researchers built a system called Aria that pairs a general-purpose LLM code agent with a verification harness, then turned it loose on Coq proof libraries — no human expert, no hand-coded proof strategy required. On the reglang benchmark, where previous LLM-based provers solved roughly 12% of theorems, Aria proved all 318. It also proved all 4,257 lemmas across four core modules of Iris, the leading separation logic framework for concurrent and memory-manipulating programs, plus 217 additional lemmas covering Rust's standard libraries. When tested on iris-lean, an unfinished Lean 4 port of Iris, it proved 72 theorems not yet in the port, confirming the approach isn't tied to a single proof language. At the core of the result is an architectural argument: prior systems constrained the model to a fixed human-designed strategy, retrieving premises and predicting tactics one step at a time. Aria instead hands the whole lemma to an Anthropic model identified in the paper, lets it choose its own approach, and enforces soundness through the harness — a proof is accepted only when Coq's own kernel closes it.\n\nFormal verification has long been the gold standard for software correctness, but the expert labor involved has kept it confined to critical infrastructure and academic projects. If a code agent can handle that labor reliably, the economics of verified software change: teams shipping safety-critical systems in aerospace, finance, or systems programming could run proofs as part of a normal CI pipeline rather than hiring specialist consultants.\n\nThe 100% coverage figure deserves scrutiny — benchmark scope matters, and Aria was tested on specific curated libraries, not arbitrary production codebases. Still, going from one-in-eight to all-of-them on the same benchmark is not a rounding error.","[\"ai\",\"formal-verification\",\"dev-tools\",\"research\"]","2026-07-08T04:00:00.000Z","2026-07-08T08:00:49.075Z","2026-07-08T08:00:51.888Z","published",null,[24,30,34],{"id":25,"reviewer":26,"round":27,"reason":28,"status":29},"editor-r1","editor",1,"The body references 'Claude Opus 4.7' which the source also names, but this model identifier should be verified against known Anthropic model releases before publication — if it is unconfirmed or a hallucinated product name, the draft must not go out; additionally, the dek says the system 'outpaced every prior LLM-based approach' but the body's only direct comparison is the reglang benchmark, so the dek's broader claim needs to be scoped or the body must substantiate it more explicitly.","resolved",{"id":31,"reviewer":26,"round":32,"reason":33,"status":29},"editor-r2",2,"The open concern [editor-r1] is unresolved: 'Claude Opus 4.7' appears in the source but remains an unconfirmed model identifier that must be verified against known Anthropic releases before publication, and the dek's claim that the system 'beat specialized provers on a shared benchmark' still implies broader superiority than the body supports — the only direct head-to-head comparison is reglang, so the dek must be scoped to that benchmark or the body must provide additional comparative evidence.",{"id":35,"reviewer":26,"round":36,"reason":37,"status":29},"editor-r3",3,"The draft correctly scopes the dek to reglang and adds a caveat about 'Claude Opus 4.7' being unconfirmed, but it then cites that unconfirmed model name in the body as a factual detail — per the rejection criteria, drafts must not cite unverified product or entity names flagged as unconfirmed anywhere in the body; remove the model name entirely or replace it with 'an Anthropic model identified in the paper' without naming the version string.","ai",[38,40,41,42],"formal-verification","dev-tools","research",[44],{"name":45,"url":46},"arXiv cs.AI","https:\u002F\u002Farxiv.org\u002Fabs\u002F2607.06341",0,{"sections":49},[50,54,59,64,69,74,79,84,89,93,98,102,107,112],{"name":51,"slug":38,"count":52,"latest_published_at":53},"AI",2590,"2026-07-16T04:00:00.000Z",{"name":55,"slug":56,"count":57,"latest_published_at":58},"Security","security",294,"2026-07-15T19:59:48.000Z",{"name":60,"slug":61,"count":62,"latest_published_at":63},"Deals","deals",179,"2026-06-29T20:02:07.000Z",{"name":65,"slug":66,"count":67,"latest_published_at":68},"Policy","policy",158,"2026-07-16T00:02:48.000Z",{"name":70,"slug":71,"count":72,"latest_published_at":73},"Hardware","hardware",122,"2026-07-14T19:46:26.000Z",{"name":75,"slug":76,"count":77,"latest_published_at":78},"Consumer Tech","consumer-tech",93,"2026-07-13T13:20:48.000Z",{"name":80,"slug":81,"count":82,"latest_published_at":83},"Software","software",70,"2026-07-13T19:52:25.000Z",{"name":85,"slug":86,"count":87,"latest_published_at":88},"Science","science",66,"2026-07-10T10:29:37.000Z",{"name":90,"slug":41,"count":91,"latest_published_at":92},"Dev Tools",59,"2026-07-07T04:00:00.000Z",{"name":94,"slug":95,"count":96,"latest_published_at":97},"Gaming","gaming",41,"2026-07-09T04:00:00.000Z",{"name":99,"slug":100,"count":96,"latest_published_at":101},"Startups","startups","2026-06-29T20:55:50.000Z",{"name":103,"slug":104,"count":105,"latest_published_at":106},"General","general",29,"2026-07-10T22:28:58.000Z",{"name":108,"slug":109,"count":110,"latest_published_at":111},"Reviews","reviews",20,"2026-06-24T12:00:01.000Z",{"name":113,"slug":114,"count":115,"latest_published_at":116},"How-To","how-to",6,"2026-06-16T09:00:00.000Z"]