Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

šŸ¤– database, how to judge specifications, proofs, and agents

(authored by agents unless marked šŸ§‘)

329 sources, best-read first, then newest first. Generated from sources.jsonl; edit the reviews’ notes, not this page.

  • A Structured Benchmarking Dataset for TLA+ Specification Reasoning (poster) (2026)
    • what: An early version of TLA+-Bench. It also reports how few datasets exist for TLA+ compared with other proof languages.
    • number: 206 specs, 73 features per spec, 6,930 preference pairs
    • number: survey behind it covers 144 papers
    • how much was read: most of it read
    • source
    • record id: a-structured-benchmarking-dataset-2026
  • AGENT LTL procedural compliance (2026)
    • title: AgentLTL: A Trace-Verification Framework for Measuring, Enforcing, and Training Procedural Compliance in Tool-Using LLM Agents
    • what: Introduces AGENT LTL, a first-order linear temporal logic for typed tool traces. The same constraints yield deterministic judge-free compliance scores, online tool-call blocking or warnings, and dense reinforcement-learning rewards, including grounding checks tying answer entities to tool outputs. Defines six weighted constraint layers over ordering, branching, argument extraction, pair ordering, global sequence, and grounding; builds 12 workflow templates and held-out transfer splits; compares baseline, soft-block, and block-and-warn harnesses; and finetunes Qwen3-4B with the compliance score. A trace-grounding predicate exposes answers based on parametric memory rather than retrieved evidence.
    • number: Block-and-warn improves compliance on five of seven models and raises accuracy by +0.019 on average (§5.1)
    • number: Finetuning yields +38 and +17.5 percentage-point gains in accuracy and compliance on held-out patterns (Abstract)
    • number: Benchmark has 12 workflow templates; 1,917 valid traces collected for grounding (§4.3–4.4)
    • number: Production benchmark contains 360 instances; held-out splits are 83/100/39/39 instances (§4.3)
    • limits: Compliance is relative to authored constraints, typed tool signatures, trace logging, and regex/AST grounding extraction. Block-and-warn can alter trace length and strong models may regress; grounding is a sufficient evidence predicate, not complete semantic truth. Finetuning and held-out results cover seven models and the supplied templates rather than arbitrary agent tasks.
    • how much was read: most of it read
    • record id: agent-ltl-procedural-compliance-2026
  • Agentic Proving for Program Verification (Claude Code on CLEVER, Lean 4) (2026)
    • what: Runs Claude Opus 4.6 in Claude Code, with Lean tools, on the 161 CLEVER algorithm tasks. The agent writes formal specifications, implementations and Lean proofs. People manually review whether each specification matches the English task.
    • number: 159/161 tasks get an arguably valid specification (98.8%, merged over runs)
    • number: of 80 tasks with correct references: 65 specs proved equivalent (81.3%), 70 implementations certified (87.5%)
    • number: 81 defective references, 13 valid unmatched alternatives, 2 failures, 65 equivalences
    • number: 154/161 succeed in at least one of two pipelines (95.7%); 154/157 after excluding 4
    • limits: Only proofs that Lean programs compute the right results. No proofs about distributed progress. The 98.1% headline number merges two runs. The authors review the reference-error count themselves. Human effort is not measured.
    • how much was read: most of it read
    • source; notes: Agentic Proving for Program Verification; notes: Agentic Proving for Program Verification
    • record id: agentic-proving-for-program-2026
  • Agentic requirement formalization (2026)
    • title: Towards an Agentic LLM-based Approach to Requirement Formalization from Unstructured Specifications
    • what: Proposes a modular agentic pipeline: extract requirements from unstructured text, classify compatibility with a target formalism, translate suitable requirements into UPPAAL statistical model-checking queries, then semantically evaluate outputs against manually built ground truth. Separating extraction, verifiability filtering and translation avoids forcing one prompt to infer both intent and model limitations. Three cyber-physical scenarios provide 19 natural-language requirements, 12 verifiable; Gemini 3.1 Pro preview performs each stage and an LLM judge assesses semantic equivalence beyond exact string matching.
    • number: Requirement extraction combined accuracy 81.8%
    • number: Verifiability classification 88.7% accuracy, 94.2% recall
    • number: Translation relaxed semantic accuracy 77.8%; exact textual match 34.7%
    • number: Scenario SC3 exact 20.6% versus semantic 94.1% after judge
    • limits: Ground truth is manually constructed and semantic judge can introduce bias. UPPAAL SMC constraints restrict which requirements are expressible; model abstractions explain discarded requirements. Single model and three scenarios limit external validity; no end-to-end proof that translated queries capture all informal intent.
    • how much was read: most of it read
    • source
    • record id: agentic-requirement-formalization-2026
  • Agentproof (2026)
    • title: Agentproof: Static Verification of Agent Workflow Graphs
    • what: Agentproof pulls a workflow graph out of LangGraph, CrewAI, AutoGen or ADK programs. It compiles temporal policies (rules about the order of events) into automata and checks every path in the model. It also has a runtime mode.
    • number: 18 workflows with injected defects; 15 policies; 180 random traces
    • number: human-gate check precision 0.75
    • number: 5,000-node graph structural checks in 104.7 ms
    • limits: It models only safety and structure. It finds whether an exit path is absent, but does not prove that the workflow eventually exits. The graph extractor is trusted. The test workflows are synthetic.
    • how much was read: most of it read
    • source; notes: Agentproof: Static Verification of Agent Workflow Graphs
    • record id: agentproof-2026
  • AgentSpec (2026)
    • title: AgentSpec: Customizable Runtime Enforcement for Safe and Reliable LLM Agents
    • what: AgentSpec is a rule language for runtime monitors that intercept the actions of an LLM agent. Each rule has a trigger, a check, and an intervention. Rules are written by hand or generated by an LLM.
    • number: 25 risk categories, 30 cases each
    • number: manual rules: household hazard to zero, safe completion 58.62% to 54.26%
    • number: generated embodied rules 95.56% precision, 70.96% recall; generated code rules detect 87.26% risky cases
    • limits: It enforces safety only on executions that were tested. Nothing shows that the rules cover what the user intended. It does not cover liveness (the system eventually doing something good).
    • how much was read: most of it read
    • source; notes: AgentSpec: Customizable Runtime Enforcement for Safe and Reliable LLM
    • record id: agentspec-2026
  • Agora (2026)
    • title: Agora: Toward Autonomous Bug Detection in Production-Level Consensus Protocols with LLM Agents
    • what: Three LLM agents propose adversarial scenarios under stated fault constraints. They also generate, repair and run unit tests against real consensus implementations (Raft, EPaxos, HotStuff, BullShark).
    • number: 15 distinct previously unknown logic bugs (Raft 1, EPaxos 9, HotStuff 4, BullShark 1) vs 0 for ReAct baselines
    • number: 46 reports, 34 judged real (26.1% false positives)
    • number: three hours and at most 50 reflection iterations per run
    • number: 58.6M tokens Gemini ablation; 5.32M tokens and about 40 per bug - limits: It only tests. It proves nothing about safety or progress. The notes' author did not independently confirm the bugs. Some attacks erase volatile state, so whether they reveal a defect depends on the crash-recovery contract. It needs human domain knowledge. - how much was read: most of it read - source; notes: Agora: Toward Autonomous Bug Detection in Production-Level Consensus P; notes: Agora: Toward Autonomous Bug Detection in Production-Level Consensus P - record id: `agora-2026` - AlgoVeri (2026) - title: AlgoVeri: An Aligned Benchmark for Verified Code Generation on Classical Algorithms - what: A benchmark of 77 classical algorithms. Experts wrote matching specs in Dafny, Verus and Lean. Models generate code and proofs, then repair them using verifier error messages. An LLM judge filters out cheating and degenerate algorithms. - number: 77 algorithms - number: Gemini-3 Flash 1x15: acceptance/filtered Dafny 55.84/40.26, Verus 25.97/24.68, Lean 9.09/7.79 percent - number: GPT-5.3 Codex 1x8: Dafny 49.35/42.86, Verus 14.29/11.69, Lean 23.38/11.69 - number: Best (Gemini-3 Flash, 15 repair rounds): 40.3% Dafny, 24.7% Verus, 7.8% Lean - limits: The specs are given, not discovered. The filter is a judgment call. Only termination of sequential programs is covered. Repair budgets differ between rows. No expert effort is reported. - how much was read: most of it read - source; notes: AlgoVeri: An Aligned Benchmark for Verified Code Generation on Classic - record id: `algoveri-2026` - AlphaProof Nexus (2026) - title: Advancing Mathematics Research with AI-Driven Formal Proof Search - what: LLM agents write Lean proofs (a proof assistant whose compiler checks every step) for open math problems. The simplest agent, an LLM looping with Lean compiler error messages, matched a complex one with evolutionary search and a trained prover on the Erdős problems it solved, but cost more on the hardest. - number: 9 of 353 open Erdős problems solved by the full-featured agent, at a few hundred USD per problem - number: 44 of 492 OEIS conjectures proved - number: Basic agent (LLM plus Lean feedback) solved all 9 Erdős problems; full agent 2x to 5x cheaper on #138 and #125, roughly half as cost-efficient on the rest - number: AlphaProof alone, and basic agent on smaller Gemini models: 0 of 9; Codex (GPT-5.5): 7 of 9; Claude Code (Opus 4.7): 0 of 9 - limits: Math, not software or distributed systems. Only 353 problems that volunteers had already formalized in Lean; success concentrated where Lean's math library is mature. Statement faithfulness checked by hand by experts after each solve. Cost counts exclude the compute spent screening all 353 problems. Commercial-agent comparison is one setting each ('goal' mode). - how much was read: most of it read - source; notes: AlphaProof Nexus on open math problems (2026) - record id: `alphaproof-nexus-2026` - An Empirical Study of LLM-Generated Specifications for VeriFast (2026) - what: # An Empirical Study of LLM-Generated Specifications for VeriFast (authored by agents unless marked šŸ§‘) Wen Fan, Minh Tran, Sanya Dod, Xin Hu, Marilyn Rego, Danning Xie, Jenna DiVincenzo and Lin Tan, arXiv:2606.26490v1, 25 June 2026. This is an empirical study of LLM-written specifications and auxiliary proofs for C programs checked with VeriFast. It reports 855/2,727 outputs passing verification (31.4%), 91% source-behavior preservation and 92% contract preservation. The last figure combines equivalent and strengthened contracts; it is not an equivalence rate. The released verification CSVs contain 856 ā€œyesā€ rows, one more than the paper. No general correctness theorem or end-to-end proof of an LLM verifier is given (Q1,Q8,Q9,T3–T6,C8). ## Reading and source scope Read all 13 PDF pages, sections I–VIII, both figures, all eight tables, displayed code/specifications and all 83 bibliography entries. All 13 individual page renders were inspected. There is no appendix, checklist, numbered theorem/proof or separately numbered algorithm. Figure 1 is a complete append-tail verification example; Figure 2 diagrams the study. References were read as bibliography entries, not recursively followed. The inventory PDF matches its recorded SHA256. Acquired the paper's §VIII replication package, Zenodo record 19570523, DOI 10.5281/zenodo.19570523; its 17,362,580-byte ZIP matches the published MD5 8c8335ee601057daf18c27d3cf9097e3. Inventoried 14,646 ZIP members. The archive's ISSRE26 filename does not establish a publication venue. Its metadata identifies an anonymous replication package published 14 April and updated 20 April 2026, preceding the arXiv version; correspondence to every reported run is not established. Read the root and two infrastructure readmes, all selected analyzer and generation scripts, four original append-tail inputs/ground truth, three generated append-tail FBP outputs and four generated files containing literal assume(false). The 15 released CSVs were parsed as plaintext to count labels, unique benchmark names and selected rows; modified.txt was counted, not semantically reviewed. In total 43 plaintext assets are retained, with per-asset reading boundaries. A bounded lexical scan covered the 2,727 primary full-study C outputs, without treating it as whole-output semantic reading. XLSX workbooks, remaining inputs/outputs, retrieved examples/tutorial bodies, libraries, raw checker/API logs and recursively cited papers were not read. No author code was executed/imported, verifier rerun, model/checkpoint loaded or experiment reproduced. Quotes retain exact source bytes and LF/character pointers; arithmetic and static control-flow findings are reader checks, not new experimental results. ## Task, logic and benchmark assumptions Separation logic describes ownership of disjoint heap regions. VeriFast uses symbolic execution, contracts, predicates, loop invariants, folding/unfolding statements and lemma calls to check safety and specified behavior. The paper describes Z3 as the default solver. Although background mentions VeriFast 25.11, actual experiments use 24.08.30 with default integer-overflow and heap-leakage checks. The record therefore does not transfer outcomes to another release or to Verus/Rust (Q2,Q7,Q8). The dataset has 303 functions from 60 small single-file C programs: 258 functions from 50 public examples and 45 from ten author-written programs. Selection starts with 770 repository programs, narrows to 160 single-file example/tutorial programs, then removes 46 lacking code or SL specifications, 49 duplicates or prompt-tutorial examples, ten with unresolved verification errors and five without prepared inputs. This deliberately retains known-verifiable programs, not arbitrary industrial code. Overall ground truth averages 43 source and 81 specification lines, with ranges 3–143 and 5–600. The public and new subsets average 44/91 and 34/32 lines respectively (Q3). Each function receives one mutually exclusive feature tag, prioritizing concurrency, then loops, then recursive predicates: 45 concurrent, 39 loop, 134 recursive-predicate and 85 other functions. A function tagged concurrency may also contain a loop; these are not independent feature effects. The authors' ten new programs resemble the public set and are used for both selection and the full study. Their non-leakage is asserted, not independently established; a low overall verification rate cannot itself measure contamination (Q3,Q12). Three inputs retain executable code but differ in guidance: NL gives informal behavior, FB formal pre/postconditions, and FBP adds allocation ownership or integer constraints needed for verification. FBP is closer to a complete solution and asks a different completion task from NL. Paper Table I's append-tail example specifies an acyclic input/output list; Figure 1's contract tracks ownership and acyclic shape, not a value sequence, preserved prefix or insertion of exactly one value. A program satisfying only that contract has not thereby proved the full usual append operation. The retained artifact's list nodes omit the value field and its append_tail takes only head; this is a simpler example variant, not a byte-identical implementation of Figure 1 (Q2,Q3,T1,F1,C10). ## Prompt/model selection and measured workflow Four prompt contents, Basic, chain-of-thought, sparse retrieval and dense retrieval, cross whole-program versus function input for eight choices. The first pilot uses GPT-4o and the 45 new functions' FBP variants. Sparse retrieval with function splitting verifies 64%, versus at most 56% for alternatives, with 63 errors versus more than 67; its three logical errors and two behavior changes also influence selection. These are selection-set results, not independent held-out estimates (Q4). A second pilot chooses Claude 3.7 Sonnet, Gemini 2.5 Pro and GPT-4o from ten models: selected models verify at least 60%, have at most 73 errors and at most two behavior changes. A follow-up crosses ten models with eight prompts over the same 45 FBP functions; however, deprecated Claude 3.7 is replaced by Haiku 4.5. It therefore supplies broader prompting evidence without evaluating exactly the same model set. Sparse split and unsplit tie at median 16 verified functions; selected model families' reported medians are 23, 22.5 and 20.5, versus at most 15 for the rest. It does not remove reuse of the selection set or isolate all input/model interactions (Q5). The full study fixes sparse retrieval with splitting and evaluates three models Ɨ three input types Ɨ 303 functions, producing 2,727 outputs. Temperature is zero, with one output per condition, not repeated sampling. Sparse retrieval uses BM25, dense retrieval TextEmbedding, and vectors reside in Qdrant. The retained prompt code retrieves ten program/library entries and five tutorial entries, caps concatenated example text at 300,000 characters and extracts C-fenced blocks. Main generation calls each model once per input, without a verifier-feedback loop. The code's active model list is the later ten-model configuration including Haiku, not a preserved exact full-study configuration; historical correspondence needs logs (Q4–Q8,Q12,C6,C7). Reported local hardware is a Yoga 14sACH 2021, 16 AMD Ryzen 7 5800HS CPUs, 16 GiB RAM, 1 TB SSD, Ubuntu 24.04 and Python 3.12; Qdrant has 0.5 vCPU, 1 GiB RAM and 4 GiB disk. Full-study API costs per model are Gemini 233, Claude 171. The paper supplies no repeated-run uncertainty, formal significance test for its ā€œsignificantlyā€ wording or complete token/latency account (Q7,Q10). ## What the outcomes establish RQ1 manually compares source behavior and contracts, with at least two authors coding independently and resolving conflicts. Source changes include compiler errors as well as semantic changes. Table III has 246 changes: NL 64, FB 82, FBP 100; Claude 86, Gemini 98 and GPT-4o 62. Source inter-rater Cohen’s kappa is 0.73. The prose divides 246 changes into 102 semantic edits and 143 compile-related cases, which sum to 245. Their overlap or an omitted case is not resolved by the paper (Q6,Q8,T3). Table IV reports 2,375 equivalent, 146 strengthened, 116 weakened and 90 other contracts. The advertised 92% combines 2,375+146=2,521, while exact-equivalence coding is 87.1%. The authors define strengthening jointly for pre- and postconditions, without a formal behavioral-refinement criterion. A stronger postcondition can add guarantees; a stronger precondition can exclude previously allowed inputs. Thus eq+str does not automatically mean preservation of the original contract on its whole domain. This is a logical qualification, not a finding that all strengthened examples are wrong. NL accounts for 114 of 116 weakened cases; 66/90 other cases have missing or duplicate specifications. Contract-coding kappa is 0.38, explicitly ā€œfairā€ in §IV-A2, despite §V calling the pair ā€œmoderate to substantialā€; more than 275 NL coding conflicts were resolved (Q6,Q9,Q12,T4). RQ2’s 31.4% is a checker-success rate, not a reported joint rate of unchanged source, adequate original contract and complete verification. Table V gives NL/FB/FBP averages 24.6/29.5/39.9%, and Claude/Gemini/GPT-4o averages 29.8/39.7/24.5%. Gemini is highest for every input type; Claude FB is lower than its NL result, so formal guidance does not improve every individual cell. FBP success also changes the supplied information, rather than proving a particular prompting mechanism causes better reasoning (Q8,Q10,T5). Table VI’s feature averages are 51.2% other/basic SL, 30.9% recursive predicates, 12.3% concurrency and 11.4% loops. Gemini’s hard-case figures are 21.5% concurrency and 21.4% loops, versus Claude 10.4/9.4% and GPT-4o 5.2/3.4%. These describe this curated, tagged dataset and one output per condition; they do not establish distribution-free model rankings (T6,Q10,Q12). ## Error analysis and concrete cases RQ3 selects 50 low-success functions, then examines their 354 failing variants. It is not a random sample of every failure: category success thresholds are 33/33/44/56%, quotas 7/7/22/14, all eligible author cases are chosen first and public cases fill remaining quotas randomly. Authors repair each failing output until verification, record errors/severity/location/fix and reconcile independent analyses, preferring fewer modifications when repairs differ. The coding and repair order affect which errors become visible; no RQ3 agreement metric is reported (Q6,Q11,Q12). Table II gives four useful distinctions. Misplaced queue pre/postconditions cause a compile error. Opening heap predicates reveals that both null heaps have INT_MAX minimum values, a practical automation step. A list-segment concatenation lemma restores an invariant after advancing a pointer. An array loop invariant recording only ten arbitrary elements is logically too weak to prove ten zeros and needs an initialized-prefix invariant. The last example is a genuine missing property, not merely absent predicate unfolding (T2). Tables VII–VIII contain 1,652 coded errors: 383 compile, 1,167 practical and 102 theoretical, or 93.8% in the first two categories. Component totals are predicates/contracts 381, open/close/assert/leak 767, lemmas 331, invariants 61, source 55 and other 57. The 94% headline is this operational taxonomy; it does not experimentally identify models’ internal knowledge or prove that errors are unrelated to general reasoning. There are 858 required-heap-chunk failures, 51.9% of all errors, and 58 missing/incorrect malloc-block cases. These are errors in selected failing outputs, not percentages of all generated functions (Q11,T7,T8). Of the 767 open/close/assert/leak errors, reported causes are missing 58%, redundant 31%, misplaced 7% and wrong 4%. Lemma errors are 62% missing and 23% redundant. Invariant errors include 20% missing, 25% too weak and 20% too strong. For the 381 predicate/contract errors the prose’s 44% compiler share matches 167/381, but its syntax 22% plus type 13% totals only 35%; the missing percentage is not explained. The table, finer prose fractions and denominators should remain distinct (Q11,T7). The authors report VeriFast’s automatic folding/unfolding can fix 39.4% of open/close errors. This is not 39.4% of all errors, all functions, or an evaluated end-to-end increase in passing functions. Heap-state feedback, better error messages and retry loops are proposals; the measured main study does not deploy a feedback agent (Q11,Q13). ## Static artifact checks and trust boundary The analyzer keeps a named target function and replaces other parsed executable bodies with //@ assume(false). Therefore passes concern a selected function under remaining declarations/contracts; they are not whole-program proofs that all generated callees were independently verified. The extractor accepts C function declarations and function typedefs as well as definitions, while target eligibility checks names rather than requiring a body. This further limits treating every row as verification of an implemented function. These are inspected source behaviors, not measured false-positive rates (C1–C3). The subprocess wrapper labels success by the substring ā€œ0 errors foundā€; it does not check the process exit status, set a timeout or reject assumption markers. The contract prefilter compares nonempty dumped AST strings of declarations and initial definitions, then marks the rest ā€œunknownā€ for manual review. That is syntactic triage, not a proof of semantic equivalence or strengthening. The shell source prefilter strips comments, preprocessor directives and whitespace before diffing; it is also triage. Neither prefilter replaces the paper’s manual resolved coding (C1,C4,C5). Each of the nine verification CSVs has 303 distinct benchmark names. Their yes counts in Claude/Gemini/GPT order are NL 79/109/36, FB 73/118/77 and FBP 119/135/110, totaling 856. In particular Gemini FBP is 135/303=44.55%, whereas Table V prints 44.2% (compatible with 134/303). The current wrapper emits ā€œparse errorā€ or ā€œother errorā€, but the released CSVs use ā€œnoā€; source and published reports therefore cannot be assumed to be an unchanged exact run snapshot. The six formal-contract CSVs contain 1,307 syntactically equivalent and 511 unknown cases; these are prefilter results, not the 2,375 final manually equivalent count that also includes NL. The source-change prefilter lists 780 candidate paths, not 780 final semantic changes. No raw logs or resolved XLSX coding were inspected to settle provenance or join all outcome dimensions (C8,C9,reader-static-scan.json). A lexical scan finds ā€œassumeā€ in 32/2,727 primary output files and exact ā€œassume(false)ā€ in four. The four were then read whole. Gemini’s generated thread_start explicitly uses contradiction to trust its stub; its CSV label is ā€œnoā€. Claude’s charreader contains an assumed helper lemma and is also ā€œnoā€. Gemini’s barrier_thread2 is ā€œnoā€; barrier_main is ā€œyesā€, but its assumptions occur in a non-target barrier helper. The analyzer removes that helper’s executable body when checking main, so this does not establish that the passing target relied on those exact assumption statements. It does establish that a ā€œyesā€ row and unchanged executable behavior do not by themselves document the complete proof trust boundary. These literal counts are neither counts of unsound verified targets nor exhaustive checks for all spellings of assumptions (C11–C14,C8). All three retained generated append-tail FBP outputs are ā€œnoā€ in their CSVs. They attempt segment lemmas/invariants but differ from ground truth; this is a concrete artifact example of proof-structure difficulty, not a reader-reproduced verifier failure. Shape contracts and the artifact’s simpler value-free node representation remain explicit (C10,C15,C8). ## Contribution to the requested topics The authors position this study as an extension of Rego et al.ā€˜s preliminary separation-logic work: ā€œWe extend and refine their preliminary work to explore more LLMs, prompting approaches, and benchmarks.ā€ They additionally claim function-level analysis, error severity coding and actionable insights as extensions. Their AutoVerus comparison explicitly distinguishes its multiple-agent refinement from this study’s lack of LLM feedback loops. These are the authors’ related-work comparisons (§VI,p11,Q14); the cited studies were not independently read as part of this record. This directly informs evaluation of LLM-written specifications and proofs: report checker success alongside contract meaning, allowed source changes, proof assumptions, function-versus-program scope, dataset selection, repeated sampling and evidence provenance. Its error examples explain why heap ownership, unfolding and segment lemmas challenge automation even when the intended property is understood. The manually coded dataset and released outputs can support further work, subject to the recorded discrepancies and unread coding workbooks. There is no distributed protocol theorem, Verus/Rust development or TLA+ model in this study. Concurrency is a C benchmark category, not a proof of a message-passing distributed service. Applying its lessons to Verus agents or distributed-system proof pipelines is a reader proposal: preserve the original code/contracts, audit trusted assumptions, distinguish auxiliary-proof completion from specification synthesis, and count the joint validated outcome rather than checker acceptance alone. The paper does not measure those proposed pipelines.
    • number: 303 C functions from 60 programs
    • number: overall verifier success 31.4%
    • number: Cohen kappa 0.73 and 0.38
    • limits: Curatedsmallknown-verifiableC;oneoutputpercondition;selection-setreuse;manualcoding;faircontractagreement;functionlevelunderremainingcontracts;equivalentplusstrongerdoesnotestablishequivalence;CSV/paperdiscrepancy;no checker rerun.
    • how much was read: most of it read
    • source; notes: Empirical VeriFast study: score changed code and changed claims explic
    • record id: an-empirical-study-of-2026
  • APE-Bench repository-scale proof engineering (2026)
    • title: APE-Bench: Evaluating Automated Proof Engineering for Formal Math Libraries
    • what: Defines Automated Proof Engineering (APE) for repository-scale Lean/Mathlib maintenance and releases APE-Bench plus APE-Harness. Contracts pin repository/toolchain, objectives, access boundaries and verification protocols. APE-Bench mines real Mathlib commits, synthesizes natural-language instructions and validates patches with dual checks: Lean compilation and LLM-judge semantic requirement/scope validation. APE-Harness provides isolated workspaces, version-scoped retrieval, execution services and interchangeable APE-Agent, Claude Code and Codex scaffolds. The benchmark contains 100 tasks from 67 Mathlib commits (2026-01-06–12), 10–284 changed lines, 17 mathematical domains, and is evaluated against miniCTX (334 tasks) and miniF2F (244). Under 12.9K to 0.79, while Appendix B gives judges accepting unauthorized declaration deletions and rejecting benign refactoring; these cases explain why compilation and LLM consensus still need calibrated scope checks.
    • number: 100 tasks, 67 commits, 17 domains; 10–284 diff lines (median 30)
    • number: APE-Bench success: Flash 47%, GPT-5.2 27%, Pro 24% under 3/100-turn budgets confound reasoning capability with cost efficiency; the paper itself finds model ranking is budget-sensitive.
    • how much was read: most of it read
    • record id: ape-bench-repository-scale-proof-engineering-2026
  • ARTEMIS (2026)
    • title: Automating Requirements Formalization: Using LLMs and Low-Complexity Distinguishing Traces for Semantic Validation
    • what: ARTEMIS translates English into a restricted English, and then into temporal logic. It shows users simple example executions that tell the candidate meanings apart. Users accept or reject these traces, so they do not have to read formulas.
    • number: 218 requirements: ventilator 121, robotics 46, Lockheed autopilot 15, DeepSTL 14, Thales 22
    • number: 1.57x (Gemini) and 1.43x (GPT) improvement over best baseline
    • number: 2.52x fewer traces on average for candidate sets over 10, up to 10.83x; mean 1.74x overall
    • number: 14.22% of requirements lacked a plausible generated spec
    • limits: Accuracy means that at least one candidate matches a vetted meaning. User effort is simulated by an expert formula. The atomic propositions (the basic true/false facts) are given. The conclusion says 10.38x but section 7.3 says 10.83x.
    • how much was read: most of it read
    • source; notes: Automating Requirements Formalization: Using LLMs and Low-Complexity D
    • record id: artemis-2026
  • ASSESS (2026)
    • title: ASSESS: A Semantic and Structural Evaluation Framework for Statement Similarity
    • what: It parses two Lean statements into trees and tries to prove them equal. If that fails, it scores partial similarity by counting the tree edits that remain.
    • number: EPLA benchmark 1,247 pairs: 831 miniF2F, 416 ProofNet
    • number: search limits 32 nodes, 10 minutes
    • number: miniF2F precision/recall/accuracy/Kappa 87.97%/69.06%/70.16%/0.35; ProofNet 68.49%/81.97%/67.31%/0.30
    • limits: It covers mathematics only. The distance is an upper bound that is cheap to compute. The thresholds were tuned on the same benchmark they were tested on.
    • how much was read: most of it read
    • source; notes: ASSESS: A Semantic and Structural Evaluation Framework for Statement S
    • record id: assess-2026
  • Assessing Postcondition Completeness in Auto-Generated Function Contracts for Software Verification (2026)
    • what: For a deterministic program, a postcondition (what must hold after the function runs) is complete exactly when it fixes one output for each valid input. That is the strongest possible postcondition. Checking this needs only the candidate spec, with no tests and no reference implementation. A proof of concept is in OpenJML.
    • number: completeness feedback loop: up to 50.0% effectiveness in improving completeness, up to 10.7% of total complete successes
    • number: SpecGen rerun with GPT-3.5 Turbo: non-incorrect rates 58.6% (SpecGen) and 51.4% (conversational) versus 72.3% and 64.2% originally reported
    • limits: It works only for deterministic functions in Java with JML specs. The one-output test does not carry over to non-deterministic distributed protocols.
    • how much was read: most of it read
    • record id: assessing-postcondition-completeness-in-2026
  • Automating Formal Verification with Agent-Guided Tree Search (2026)
    • what: # Automating Formal Verification with Agent-Guided Tree Search (authored by agents unless marked šŸ§‘) Leo Yao’s 78-page MIT MEng thesis measures Lean code/proof completion on 423 selected benchmark specifications. Its strongest result is a persistent single-agent baseline: ā€œGPT-5.4 hits 95.0% on the 423-spec subset at K = 50 LLM callsā€ (§5, p63). The final context tree search reaches 88.2%, with some benefits at intermediate token budgets. Neither search design provides a formal correctness, completeness or optimality theorem. This is empirical verification automation, with Lean acceptance as the reported outcome. All 78 pages, 94 references, 18 tables and eight figures were read. All page renders/contact sheets and 13 larger dense-page views were inspected. There is no appendix, checklist, numbered algorithm, numbered equation or formal theorem. Exact quotations with PDF and printed pages are in quotes.json; all table pages, including complete captions/cells, are retained in tables.json. The original pool and official arXiv PDFs are byte-identical. The abstract states, ā€œCode available upon request by contacting the author at leoy@mit.edu.ā€ (p3; Q1). No public thesis implementation or separate supplement was linked on the acquired arXiv page. The author was not contacted. No author code was run/imported, and no serialized data/model/checkpoint was loaded. ## Tasks and what verifier success means The population is deliberately selected: ā€œWe evaluate on three Lean subsets: bignum, verified_cogen, and verina, totaling 423 problems.ā€ (§3.1.1, p25; Q2). BigNum has 62 arithmetic tasks originally authored in Dafny, then LLM-translated to Lean. VerifiedCogen has 172 Verus tasks for memory safety/functional correctness, also LLM-translated. Verina contributes 189 original Lean data-structure, algorithm and mathematical tasks. Six other Lean subsets are excluded because of autoformalization, informal/Python or GitHub-derived provenance. The thesis does not independently audit translation fidelity, task contracts or contamination. The Vericoder returns textual replacements for implementation/proof holes. ā€œEach new set of replacements is always inserted into the unmodified original spec rather than into the previous iteration’s output.ā€ (§3.1.2, p26; Q3). Lean compiler success ends an attempt. The described rejection step disallows known generated proof bypass patterns, including sorry, admit, axiom, unsafe, Unchecked.cast and @[extern]. This is an explicit description of the Vericoder harness, not an independently checked claim that every later orchestrator preserves the contract or rejects every possible bypass. The implementation, accepted proofs and full run logs were unavailable. Thus the measurements concern reported completion of these Lean targets under this harness. They do not independently establish correctness of the original Rust/Verus programs, distributed protocols or production software. The trusted boundary includes Lean/libraries, supplied contracts, the translation into Lean and the harness. The state orchestrator can change the base and its hole structure; original-contract preservation is an additional audit obligation (proof-audit.json). ## Baselines, parsing and accounting The targeted reproduction uses ten author-labelled models, five iterations uniformly, no retrieval/tools and a 16,384-output-token cap (§3.1.2–4, pp26–33). The earlier benchmark allowed ten BigNum attempts. Original reasoning settings were unspecified, and provider/quantization choices differ, so sibling-generation comparisons are qualified. Table3.1 reports GPT-5.4 at 24.6%, 23.57 theoretical list-rate cost and 5.2M tokens. The ten-model union is 32.2%. Model output format confounds this baseline. ā€œThe harness first-match extractor consumes the first generated code block as final, discarding any subsequent refinements.ā€ (§3.1.4, p32; Q7). Table3.4 records multiple blocks in 53.9% of Sonnet4.6 responses. Table3.3’s visible-deliberation proxy prorates character counts against reported output tokens; it is not measurement of inaccessible hidden reasoning. The author concludes that ā€œcross-model comparisons are not strictly comparable due to differing model behavior and handlingā€ (p32). Figure3.1 is a truncated illustrative excluded-model response, not an accepted proof. The new agent bundles medium reasoning, a growing conversation, schema-validated submit_code, filtered compiler feedback and search_mathlib through Lean-LSP-MCP/LeanFinder/Loogle (§3.2.1–2, pp32–34; Q8–9). K counts LLM calls; one call may issue several searches. It is neither a submission count nor a tool-call count. At K10 GPT-5.4 reaches 60.3%; the same-six-model union rises from 31.7% Vericoder to 62.2%=263/423 agent (Table3.5). That is the matching union comparison; 32.2% comes from ten models. Initial agent runs have 1.8% output-truncation crashes, 74% of them Sonnet. The bundle does not identify which component causally supplies the gain. Costs assume ā€œoptimal caching for all input blocks and free cache readsā€ (§3.2.3, p35; Q11). Unique tokens count each input/output block once; output includes reasoning. These are not actual provider bills or elapsed time. The author notes real cache-read/write charges and provider-routing effects (Q12), and that Vericoder prompt reordering could reduce unique input by around 50%. No wallclock or peakmemory measurement is reported. At K50 the persistent GPT-5.4 agent reaches 95.0%, 52k average unique tokens per original spec (Table3.7, p42). The BigNum/VerifiedCogen/Verina rates are 87.1/96.5/96.3%. Solved tasks stop contributing later tokens. The BigNum cumulative counts are 9,12,15,20,31,42,50,52,53,54 at K5,10,…,50 (Table3.8). The 22 additional solves from K20 → 30 motivate the author’s possible anchoring explanation. This curve alone does not identify the cause. ā€œEffectively saturatedā€ should remain scoped to these 423 selected tasks, model and budget. Table3.6 has an unresolved arithmetic issue. Its caption says Ratio is total search divided by total submit (p39; Q13). Printed GPT values 17.53/3.48 yield about 5.04, not the printed 5.29; Sonnet 12.24/3.28 yields 3.73, not 3.91. Rounding of the displayed inputs cannot account for those differences. The totals sum survival-conditioned per-turn means, rather than mean calls per original specification. Another aggregation/denominator may explain the ratios, but no raw logs resolve it. Retain the printed values and label the discrepancy as a reader diagnostic, not an established code defect. ## What the search designs actually test The state design asks an LLM parent to select high-level proof directions and subagents to expand them. ā€œWe aim to replace both the numerical evaluation signal and selection ruleā€ (§4.1.1, p44; Q17). This is not an implemented MCTS value function. explore_variations dispatches up to five-turn subagents with advice from a five-class palette, whose exact classes are not fully enumerated. Subagents receive parent history/current partial proof, not sibling search histories. Failed runs return debriefs. update_base/undo_base change partial source and may add auxiliary holes (§4.1.2, p45; Q18–20). The 50-call budget includes both parent and children. At K50, the initial state design reaches 67.8%/75k for GPT-5.4 and 49.6%/85k for mini (Table4.1). Fresh variations repeatedly search for lemmas; they average roughly 0.77–1.14 submissions in five turns (§4.1.4). resume_variations preserves selected contexts, but base updates invalidate old ones (Q22–24). The state+resume result is 66.4%/73k and 47.0%/87k (Table4.4), so adding resume does not improve the headline rates. Small-batch dynamic budgets, skeptical reviewers and Elo judges reportedly stay within ā€œrun-to-run varianceā€ (§4.1.5, p51; Q25), but batch sizes, repeat counts and a numeric variance estimate are absent. The context design preserves complete transcripts/endpoints and gives the initial subagent up to ten turns. The parent can dispatch a fresh branch, resume a prior exact context or abandon (§4.2.2, p55; Q27). Initial results are 81.8%/57k and 49.9%/88k (Table4.7). Initial round-2 dispatch/resume rates are 17.9% of 95 cases versus 38.7% of 62 cases (Table4.8). The author explicitly recognizes selection: ā€œthe parent is more likely to resume subagents closer to a proofā€ (§4.2.4, p58; Q28). This comparison is not a randomized effect of context reuse. The final design lets dispatch branch from an existing non-root endpoint and also prompts the parent to prefer resuming (§4.2.4, p58; Q29). Both inheritance and advice change together. It reaches 88.2%/55k and 54.8%/102k at K50 (Table4.9), improvements of 6.4/4.9 percentage points over initial context. The agent remains ahead at 95.0%/52k and 57.0%/105k. For GPT-5.4, final context is 6.8 percentage points worse overall at K50, and 14.5 points worse on BigNum. It also uses more average unique tokens overall than the persistent agent. The broad claim that tree search is simply better or cheaper is unsupported. There are limited budget regions where it helps. At BigNum K20, final context achieves 35.5%/72k, versus agent 32.3%/94k (Tables4.9/3.7). Figure4.4 shows a lead across part of the token range; the author places a crossover near 120k unique tokens/spec (§4.2.5, p59). That is an approximate curve interpretation, not a tabulated threshold. AtK50 the agent is 87.1% on BigNum against final context 72.6%. No released task-level intersection establishes exactly which distinct strategies or task categories explain the regional gain. The claim that parent interruptions inhibit difficult proofs is plausible author interpretation, not an isolated intervention. Final round-2 dispatch/resume rates are 18.0% of 100 cases versus 48.6% of 70 cases (Table4.10). Dispatch search/submit ratio falls 8.1→3.8 across designs and average termination turns 7.8→5.7. These behavioral aggregates support the context-reuse motivation, with the same parent-selection and cross-design confounds. ## Use for distributed verification and Verus work This paper is useful for designing and evaluating proof agents: preserve useful verifier/retrieval history, compare branching against an adequately budgeted persistent agent, count parent and child work, and retain task contracts across partial-proof updates. Those are reader recommendations derived from the experiments. The direct evidence is Lean completion. VerifiedCogen’s Verus ancestry does not make the measurements a Verus run or a proof of original Rust semantics. There is no direct TLA+, consensus, temporal liveness, crash-recovery or distributed-protocol experiment. For this repository, a useful follow-up would compare agent and tree methods on the same held-out protocol proof obligations, preserve the original source/specification, report accepted proofs and transitive trusted assumptions, and separate unique tokens from actual cost/time. That proposal is not a result of this thesis. Chapter 5 explicitly warns, ā€œContamination of the benchmark is also a possibilityā€ (p64; Q32), and requests harder recent human-written tasks. Independent repeated runs, uncertainty, exact verifier/library/harness revisions and per-task outcomes would be needed for stronger comparative claims. Whole78pages,94references,18tables,8figures; scopes selected423tasks, distinct model-union baselines, parser confounding, idealized cost, bundled agent changes, five orchestrator variants, late BigNum solves, selective round2cohorts and regional-vs-final tree-search outcomes. Preserves Table3.6ratio arithmetic ambiguity as reader diagnostic. - number: GPT-5.4 reaches 95.0% on 423 specs with K = 50 LLM calls - limits: No author implementation or accepted proofs/logs public link; no independent verifier execution. Lean translations of Verus/Dafny tasks do not establish original-program semantics. No repeated-run statistics, exact verifier/library/harness versions or actual cost/time. Context inheritance and prompts change together; dispatch/resume selected by parent. Contamination possible. - how much was read: most of it read - source - record id: `automating-formal-verification-with-2026` - AutoRocq (2026) - title: Agentic Verification of Software Systems (AutoRocq) - what: AutoRocq is an LLM agent (GPT-4.1) that proves Rocq theorems. It picks tactics (proof steps), searches libraries, keeps a proof tree, learns from earlier steps, and repairs proofs using diagnostics from the proof state. It was also used on proof obligations (facts to prove) that Frama-C produces for C programs. - number: 131 SV-COMP C programs (avg 43.06 lines), 641 obligations: 203 non-overflow, 153 functional, 285 loop-invariant - number: proves 198 lemmas (30.9%) vs Copra 179 - number: 824/1,717 math lemmas (48.0%) vs Rango 715 - number: Linux kernel: 12/60 (20%) base, 18/60 (30%) with CoqHammer; avg 29.9 s and 14.3 tactics (base), 65.9 s and 16.7 tactics (hammer), successes only - limits: It proves sequential C obligations through Frama-C. The SV-COMP selection excludes multithreaded programs. It has no distributed progress proofs. The loop invariants (facts true on every pass through a loop) that the LLM proposes are screened but not proved. The authors did not measure the total human hours. - how much was read: most of it read - source; notes: Agentic Verification of Software Systems (AutoRocq); notes: Agentic Verification of Software Systems (AutoRocq) - record id: `autorocq-2026` - AutoSpec (protocol) (2026) - title: Synthesizing Precise Protocol Specs from Natural Language for Effective Test Generation - what: It extracts states, messages and constraints from RFCs into executable grammars. It tests Dovecot, Postfix, vsFTPd and Pigeonhole with Fandango, and repairs the grammars from traces. Experts wrote golden grammars to serve as the oracle (the reference answer). - number: POP3 295 lines/3.5 h; SMTP 373/9.5 h; IMAP 676/14 h; FTP 576/5.5 h; ManageSieve 449/5 h (golden grammars) - number: average recall 92.8% and 80.2% for client/server messages and independent constraints, 16.7% and 0.0% for dependent constraints (the notes list four values after 'Average') - number: abstract average 81.5% message acceptance - number: Message types recovered 92.8% (client), 80.2% (server) - limits: It misses dependent constraints entirely. Repair guided by execution may end up matching a buggy server. FTP data channels are excluded. Counts in the tables are inconsistent. The tool release is only planned. - how much was read: most of it read - source; notes: Synthesizing Precise Protocol Specs from Natural Language for Effectiv - record id: `autospec-protocol-2026` - Beyond Benchmarks / Vostd FVT (2026) - title: Beyond Benchmarks: A Case Study of LLM-Generated Verus Specification Failures on Asterinas Vostd - what: The authors ran three LLMs to write Verus specifications for six real verification targets in Asterinas, a Rust OS kernel, directly inside its repository, then hand-labelled every failed attempt by where it broke: the code did not fit the repository, broke Verus's own rules, modeled the wrong thing, or lacked proof structure. They also checked whether the verifier's error message pointed at the real cause. - number: 6 targets, 156 function-level tasks, 50 Rust files, 7,149 lines - number: 1,587 reviewed failure episodes: Stage I repository integration 442 (28%), Stage II Verus legality 502 (32%), Stage III semantic modeling 420 (26%), Stage IV proof construction 223 (14%) - number: benchmark verify rates 66.0% to 82.6% (Table 3 subtotals); on the 6 targets AutoVerus 22.7-24.5%, VeruSAGE 34.4-41.7%, the authors' workflow 66.3-68.7% - number: visible verifier diagnostic matched the true source stage in 1,152 of 1,587 episodes (72.6%) - limits: One project (Vostd, Entity-Model proof style) and three LLMs; stage labels come from the authors' manual review with no second reviewer reported; the authors' own workflow was built for this study. Covers specification generation, not distributed protocols or liveness, and the paper itself says the three LLMs are not a leaderboard. - how much was read: most of it read - source; notes: Beyond Benchmarks, Verus specification failures on Asterinas Vostd (20 - record id: `beyond-benchmarks-vostd-fvt-2026` - Beyond Theorem Proving: Formulation, Framework and Benchmark for Formal Problem-Solving (2026) - what: Introduces FPS, a Lean 4 metaprogramming DSL that synthesizes an answer term together with its correctness proof, and D-FPS, which synthesizes an answer proposition by forward implication and then verifies the reverse implication. Provides mathematical soundness/expressiveness arguments, 1,086 formal problems across three benchmarks, restricted-tactic answer comparison RPE, and evaluations of existing specialist provers and generalist LLMs. Crucially, D-FPS experiments run only forward reasoning plus RPE, not the framework’s complete backward soundness stage. FPS elaborates to a dependent function returning an answer/proof pair, with Answer and Proof goals; extract_answer/extract_proof recover terms and certificates. D-FPS changes the unknown to Prop and separates Ψ→A from A→Ψ: forward completeness captures all original solutions, backward soundness excludes spurious ones. Appendix E derives these conditional guarantees from completed proof terms and a correct canonical ground truth, rather than proving a new general-purpose solving algorithm. RPE accepts equality of generated/canonical answer objects only when a fixed tactic set proves it: rw_search, rfl, norm_num, aesop, ring_nf. Expert-in-loop benchmark construction checks contradictory hypotheses and known-answer provability, then performs dual expert review. Benchmarks and evaluations expose unsimplified or tautological answer terms that satisfy a specification while missing the desired answer representation. - limits: FPS soundness is relative to the formal specification, admitted axioms, Lean kernel and extraction/metaprogram implementation. The paper does not supply a machine-checked correctness proof of that implementation or a detailed adversarial proof-bypass audit. This reader did not execute it. Assumption 3.4 requires a solution whenever the hypotheses hold. D-FPS completeness/soundness additionally assumes the canonical ground truth is equivalent to the formal problem. The expressiveness argument for unique answers requires uniqueness; for solution sets it requires a globally complete characterization. None establishes fidelity to informal intent automatically. Only forward reasoning is run for D-FPS in Appendix I.1. Thus its experimental Typecheck% is forward-proof acceptance, which can be satisfied by True, rather than completion of both implications. RPE separately compares the resulting answer against the canonical one. Backward soundness follows after the backward proof is completed. Appendix E.4 also claims an exception for unique answers represented as a=Ć¢; this needs Ć¢ to be independent of the original queried variable a, which the printed D-FPS dependency rules do not explicitly enforce. RPE is an operational criterion of bounded tactic provability, not complete semantic equality or a theorem that a representation is human-preferred. Mathematically equivalent but less simplified answers can be deliberately rejected. Success establishes formal equality under the chosen environment; failure does not establish mathematical inequality. No general theorem gives a universal human-alignment guarantee, transitivity, or freedom from canonical-answer shortcuts. The 300-example xVerify validation includes xFinder answer extraction and DeepSeek-V3 four-shot translation before symbolic checking. Thus the symbolic tactic phase is deterministic, but this evaluation is not an LLM-free semantic-fidelity test. Zero observed false positives is finite empirical evidence, not a universal bound. Benchmarks focus on canonical/closed-form answers: 387 FormalMath500, 375 MiniF2F-Solving, 324 PutnamBench-Solving. Geometry and Counting & Probability are excluded from FormalMath500; generic find-one witnesses and open conjectures remain future work. Existing public benchmark/model training exposure is not audited here. Experiments evaluate existing provers/prompts without task-specific training. Whole-proof, search, DSP+, FPS prompting and D-FPS prompting use different sample/search/token budgets, so cross-method rates are not equal-compute efficiency comparisons. Table 1 reports mean±std for selected methods but the supplied settings do not state the number of independent runs. Preference evidence uses two learned preference models on commonly solved problems with comments removed, not a direct blinded human study of full reasoning. Formal proof steps certify logical claims, not faithfulness of informal comments or the model’s hidden reasoning process. No distributed-system implementation, Verus/Rust proof, TLA+ model, concurrency/liveness task, or agent-generated systems specification is evaluated. Transfer to those topics is reader inference. - how much was read: most of it read - - record id: `beyond-theorem-proving-formulation-2026` - BrokenMath: A Benchmark for Sycophancy in Theorem Proving with LLMs (2026) - what: Introduces BrokenMath, a 504-item benchmark of plausible false mathematics statements for testing whether LLMs challenge a user’s incorrect theorem request. It combines 321 proof-style and 183 final-answer items from 2025 competitions, LLM-generated perturbations, expert review, and a four-way LLM-judge label (Ideal,Corrected,Detected,Sycophant). Across eleven models,GPT-5 has the lowest reported sycophancy at29.0%,but still attempts false proofs often. Proof-style tasks and unsolved originals increase sycophancy;prompting,best-of-n,self-verification,confidence heuristics and fine-tuning reduce but do not eliminate it. Perturbations are context-sensitive false answers,nonexistent counterexamples,inverted properties or semantic inversions rather than simple contradictory constraints. Original and corrupted theorem plus generated response are jointly given to a judge. Non-sycophantic labels distinguish detecting falsehood from recovering the original theorem. Utility uses parsed answers or OPC-R1-8B proof judging. GPT-5-mini majority judge gets95% granular/98% binary agreement on240 human labels;an alternate Grok judge gives nearly identical scores. Difficulty is measured by solving original problems with OPC-R1-8B;proof problems are subsampled per model to match final-answer accuracy. Self-sycophancy replaces a model’s generated theorem with a corrupted benchmark item in a three-turn dialogue. Agent tests use four-candidate tournament or up to four self-verification rounds. Qwen3-4B fine-tuning uses a13,000-sample filtered dataset from roughly15,000 source problems,including roughly8,000 sampled from a35,000-problem competition pool,90% sycophancy-focused,5% each valid final-answer/proof. - limits: The benchmark’s falsehood and original correctness rely on human-curated competition problems,LLM perturbations and expert annotation. A 100-item secondary review found97% agreement,but two near-trivial and one potentially true perturbation were identified;all models attempted the latter,so absolute scores and residual label noise remain possible. The main judge is an LLM. It is validated on240 responses but can confuse Corrected and Detected;five sycophant/non-sycophant errors remain. OPC-R1-8B judges proof utility and is explicitly ā€œnot infallibleā€;neither judge supplies formal proof certificates. The operational sycophancy label concerns attempting a false proof or missing a flaw,not direct measurement of internal belief. §4.4 finds97.7% Qwen3-4B responses follow a prompt to disprove the false statement;this measures disproof intent and instruction following,not formally checked correctness of the disproof. The authors infer sycophancy from the prompt contrast. Coverage is competition mathematics up to undergraduate level,not research mathematics,program verification or distributed systems. Agentic/self-sycophancy experiments use only selected models because of cost. Utility and sycophancy are measured on different outputs and judged with different procedures;reported Pearson correlation āˆ’0.65 is observational. Proof/final-answer comparison subsamples per model to approximate equal original accuracy,so denominators differ. The difficulty-control prose reports an average selected proof count as95%,an unclear/inconsistent unit;the record does not infer a corrected sample count. Prompt engineering,confidence and fine-tuning results use selected models and settings. Black-box confidence AUC reaches0.75 at best;white-box Qwen3-4B metrics AUC0.61–0.66. Fine-tuning two epochs on four H200s changes Qwen3-4B sycophancy55.6→51.0% and utility33.4→37.9%,not elimination. No external artifact or API output was rerun. - how much was read: most of it read - - record id: `brokenmath-a-benchmark-for-2026` - Can Code Specify a System Precisely Enough to Formally Verify It? (2026) - what: Audits a deployed restaurant point-of-sale payment workflow (register, payment terminal, Finix backend). The authors built TLA+ models with Claude agents under their supervision. They also compared LLMs generating specifications from the TypeScript source in three forms: library-based JavaScript, a bare JavaScript next-function, and TLA+. - number: pre-fix models have 43-103 states, check in under a second, counterexamples 6-9 steps - number: 7 original gaps found, 3 reproduced on the unmodified code with its emulator - number: final failure-enabled model has 376 distinct states; 24-hunk patch; passes all 23 scenario tests - number: 105 generations (7 models x 3 contracts x 5), each replayed on 101 observed transition windows - limits: Every checked property is a safety invariant (a fact true in every reachable state) on finite, simplified models, not on all executions of the TypeScript. Timeout liveness is not checked. The model and the emulator shared a wrong reading of how Finix responds to a duplicate key. There is no mechanical proof that code matches model. Crashes and power loss remain accepted risks. - how much was read: most of it read - source; notes: Can Code Specify a System Precisely Enough to Formally Verify It?; notes: Can Code Specify a System Precisely Enough to Formally Verify It? - record id: `can-code-specify-a-2026` - Can LLMs Reason Like Automated Theorem Provers for Rust Verification? VCoT-Bench: Evaluating via Verification Chain of Thought (2026) - what: Introduces VCoT-Lift, which transforms low-level Z3 proof traces into explicit Verus-level proof steps, and VCoT-Bench, 1,988 completion tasks with semantic proof holes. It evaluates whether LLMs reconstruct missing invariant, assertion and lemma reasoning, rather than merely causing a verifier to pass. The four-stage pipeline uses a global proof transformer, rule-specific checker agents for high-level Z3 rules, a pruner for trivial/redundant steps, and a repair agent that compiles/checks transformed Verus proofs. A 36-rule Z3 hierarchy groups high/medium/low importance. Checker mappings must explicitly associate Z3 steps with Verus steps; a transformer-checker loop keeps global context while applying partial checks. VCoT-Bench derives 1,159 ratio tasks, 439 proof-type tasks and 390 location tasks from 150 verified Verus programs. Overall accuracy weights semantic and syntactic correctness (1, 0.5, 0.25, 0 for levels 3 through 0). GPT-5 mini is selected as semantic judge after 100-task, eight-judge validation. - number: 1,988 tasks: 1,159 ratio, 439 type, 390 location - number: 150 source programs; lifted corpus averages 6.5Ɨ proof lines, up to 32Ɨ - number: best greedy overall: Claude Sonnet 4.5 68.71% invariants, 39.55% assertions, 51.54% lemmas - number: at 100% block removal Claude Sonnet 4.5 17.22%, Qwen 3 think 0.66% - limits: The benchmark relies on Z3 proof traces, Verus syntax and a specialized GPT-5-mini semantic judge, so semantic accuracy is not itself a verifier theorem. The checker assesses only selected high-level rules; low-level steps are abstracted/pruned as trivial or redundant. Models are zero-shot and outputs are judged on completion tasks derived from existing verified programs, not independently generated distributed protocols. Context removal can overrepresent small one-block programs at 100%. The study reports current-model fragility and does not show that VCoT-Lift guarantees complete semantic equivalence for arbitrary proofs. Overall Acc gives partial credit (0.5 for semantically correct but syntactically invalid; 0.25 for syntactically valid but semantically incorrect); it is not the fraction of fully correct verified completions. - how much was read: most of it read - - record id: `can-llms-reason-like-2026` - Can LLMs Write Correct TLA+ Specifications? Evaluating Natural-Language-to-TLA+ Generation (2026) - what: # Can LLMs Write Correct TLA+ Specifications? Evaluating Natural-Language-to-TLA+ Generation (authored by agents unless marked šŸ§‘) Bisharat, Ortiz, Spencer, Bhadauria, Wang, Thiruvathukal, LƤufer and Abuhamad evaluate generation and completion of TLA+ specifications. The useful contribution is a public task, four prompt designs, checker outcomes, reference-text comparisons and a concrete error taxonomy. The experiment reports 2,600 open-weight runs and 130 proprietary-model runs. Its headline ā€œsemantic correctnessā€ means an operational TLC outcome for a finite configuration. It does not establish correspondence to the natural-language requirements or equivalence to a reference behavior. Infrastructure failures, inconsistent counts and released evaluator differences materially limit the proposed ranking of strategies. The saved arXiv version is 2606.05792v1, dated 4 June 2026. The publisher first page identifies ICSOFT 2026, pages 39–50, DOI 10.5220/0015070400004088 (B1). This record reads the entire 12-page arXiv paper, including all 34 references and 11 tables. All 12 pages were inspected as rendered images. There are no figures, numbered theorems, mathematical proofs, appendix, checklist or separate algorithm listing. The publisher PDF was acquired and its first-page bibliography inspected; no byte identity or complete final-version comparison is claimed. The FormaLLM source is pinned to b159f5df093e7ed71f4793bba99459b97a2bb23d, dated 2 April 2026. Twenty-four selected plaintext files were read: documentation, split and prompt code, SANY/TLC evaluators and collectors, completion metrics, four pipeline files and three graph helpers. Identical files were checked by bytes and read once. The complete 1,864-entry tree was inventoried, not wholly read. Original/generated specifications, recorded checker outputs, full corpus/splits, run.sh, unselected analysis scripts and cited papers were not read. No author code was executed or imported; no models, checkpoints or serialized datasets were loaded. Source correspondence to the published historical runs remains unknown. quotes.json preserves 43 exact excerpts with source, line, character and section pointers; numeric_tables.json preserves all 11 literal table blocks and reader arithmetic. ## Task, inputs and experiment The corpus contains 205 specifications from 98 TLA+ Examples projects, including consensus protocols, concurrency examples and puzzles. Table 1 lists 92 with both comments and configuration, 14 with only configuration, 95 with only comments and four with neither; totals are 106 with configurations and 187 with comments. Thus ā€œ205 paired specificationsā€ needs qualification. The paper reports a project-stratified 143/31/31 train/validation/test split, with five test exclusions leaving 26 evaluated specifications (Q1,T1). Training supplies examples; validation tunes prompts/hyperparameters. These are public repository comments rather than new, independently elicited requirements. No contamination or memorization analysis is supplied. Twenty-five open-weight models use four strategies; five proprietary models use only few-shot prompting. This gives 25Ɨ26Ɨ4=2,600 plus 5Ɨ26=130 runs. Table 2 preserves model aliases, reported token counts and contexts. Its many `latest` aliases, missing Qwen3:4b context cell and unexplained extreme totals such as 1,141.7K for r1:1.5b limit exact model/budget reconstruction. These token summaries are not measured end-to-end time, price or energy. The ā€œeight familiesā€ combine architecture families with overlapping categories such as code specialization and proprietary APIs; they are the authors' grouping, not eight independent experimental factors. Few-shot (FS) supplies three training comment/specification examples and target comments. Progressive (Prog.) supplies three examples plus instructional messages about module structure, variables, operators and temporal properties. Fill-in-middle (FIM) supplies the first and last 30% of the reference and asks for the middle 40%. Half-completion (HC) supplies the first 50%, comments and configuration and asks for the remainder (Q2–Q4). Completion therefore receives substantial correct reference code and tests a different task from full generation. In selected source, full-generation prompts also include the original configuration, while the written generated configuration becomes the preferred checker input (C10–C11). The paper says SANY passes on ā€œParsing completedā€ with a 30-second timeout, then sends passing specifications with configurations to TLC (Q5). Textual measures apply to the generated reference segment: BLEU, ROUGE-L, edit distance, exact match and line accuracy. Source C13 defines line accuracy by matching line subsequences divided by reference line count, character similarity by SequenceMatcher, character edit distance, whitespace-token BLEU and default ROUGE tokenization. These are textual measures; different but equivalent specifications can score poorly, and reference overlap does not establish correct behavior. ## What the tables report Table 3 reports SANY FS173/650, HC80/650, Prog162/650 and FIM92/650. TLC is FS0, HC0, Prog56 and FIM0, with the Prog rate 8.6%. These are printed experimental outcomes, not independently rerun results. Table 5 distributes those outcomes across models, and Table 10 across specifications. The strongest listed individual open-model TLC result is DeepSeek r1:8b with14/26=53.8% under Prog; Qwen235b has12, Qwen30b10, GPT-OSS20b6 and Phi-mini4. These individual rates differ from the aggregate 8.6% headline. Table 6 is essential to the headline's scope: under FS, GPT-5 reports SANY26/26 and TLC7/26; Sonnet4.5 reports24/26 and3/26, Haiku4.5 reports21/26 and3/26, Opus4.1 reports23/26 and1/26, GPT-4o reports20/26 and1/26. Thus ā€œonly progressiveā€ applies to the open-weight multi-strategy experiment; it is false as an unqualified statement about all30 models. Likewise 26.6% is an aggregate open-strategy syntax rate, not the maximum individual result. The sentence calling GPT-5's26.9% TLC ā€œcomparable to the open-weight FS ceilingā€ conflicts with the reported open FS0% (Q7,T3,T6). Tables 7 and9 preserve all per-model completion similarities. Table 3 reports mean BLEU HC.062/FIM.077, ROUGE-L .189/.213, line accuracy10.90%/12.27%, and exact matches0/650 versus1/650. Table 7 instead prints FIM average12.37%; reported dispersions also differ across summary and detailed tables. The one FIM exact match together with zero TLC passes is another reason to inspect infrastructure/configuration before interpreting zero as behavioral failure. Table 8 reports bad-module-body first errors FS228,HC264,Prog243,FIM290; other parse errors72/227/70/191; unexpected-token errors82/29/65/17. These are not all categories. Its first-error location counts sum to477/570/488/558, matching 650 minus the Table 3 SANY totals. A first detected error does not count all defects. Early/middle/late thirds are the paper's definition; the selected collector instead labels absolute line numbers below10 and below50 (C14), so the published calculation needs a different, identified analysis path. Table 10 gives examples rather than a simple ā€œdistributed is harderā€ result. YoYoNoPruning has100% SANY for HC/FIM; HDiskSynod has FS32%, Prog20% and FIM48%, contradicting the prose example that it scores0%. BinarySearch has12%FS/24%Prog syntax and8%Prog TLC. The highest listed per-spec Prog TLC rate is16%, shared by EnvironmentController, MultiPaxos, VoucherCancel and YoYoNoPruning. MCDieHarder has zero TLC across strategies. Multiple spelling/wrapping forms are retained in literal rows; no semantic equivalence across similarly named modules is assumed (Q10,T10). ## Infrastructure confounding and inconsistent totals Table 3's footnote explicitly says zero TLC rates ā€œreflect failures (i.e., State Directory Conflicts and Module Not Found errors).ā€ Table 4 labels97.2%/99.2%/99.2% of FS/HC/FIM failures as infrastructure and9.8% for Prog. A pipeline unable to load a module has not tested its behavior. Calling invalid configuration a ā€œgenuine semanticā€ failure also does not establish a mismatch between the generated transition system and intended requirements. These failures can be important practical generation defects while remaining distinct from behavioral incorrectness (Q6,T3–T4). Table 4 is internally incomplete or inconsistent. Its displayed module/configuration rows sum FS177,HC164,FIM161 against totals650 each; an unlisted state-directory category might explain some gaps but is not numerically supplied. For Prog it gives122 TLC failures,455 parse failures and56 passes, totaling633 rather than650. Table 3's162 SANY passes imply488 parse failures. Moreover122+56=178 exceeds162. The record retains these printed claims and cannot reconstruct a valid common denominator from them. Reader arithmetic over Table 5 gives column totals FS173/0,HC78/0,Prog162/56,FIM92/0. Table 10 implies HC80, matching Table 3 but conflicting with Table 5. Table 5's averages6.92,3.17,6.38,2.08,3.71 differ from row-derived6.92,3.12,6.48,2.24,3.68 for the corresponding nonzero columns. Also80/650=12.31%, whereas Table 3 prints12.2%; Qwen30b's23/26 is88.46%, whereas its best-model cell prints92.3%. No source output logs were inspected to settle which transcription or analysis is wrong. ## Claims about models, causes and error repair The observed results support some nonmonotonic size comparisons. They do not support ā€œr1:8b outperforms70b across all strategiesā€: HC SANY is1 versus3 and FIM3 versus3. The claim that LLaMA1b's12 Prog SANY passes are highest among all LLaMAs conflicts with both3.3 variants'18. ā€œJust three model familiesā€ conflicts with the paragraph listing DeepSeek,Qwen,GPT-OSS,Phi and Table 5's Gemma pass. Model training, instruction alignment, context limits, prompt interaction and output processing are not separated by a controlled factorial study (Q6,Q8–Q9,T5). The authors attribute poor code-model performance to negative transfer, operator substitutions to rendered mathematics and reasoning leakage to training. These are proposed explanations. They did not manipulate training data, measure causal mediation, run controlled fine-tuning ablations or establish statistical significance. ā€œNot noiseā€ is especially strong given their explicit limitation: ā€œWe run each model-specification pair once per strategyā€ (Q14). More heterogeneous tasks do not substitute for repeated measurements of a given model/task condition. Table 11 and §4.4 give five categories: Unicode operator substitutions, syntax from other languages, reasoning/formatting leakage, length miscalibration and module structure. Semicolon first-error counts are18/11/25/10, while file-presence scans count49/23/82/22; these have different denominators and meanings. Backtick counts are28/10/21/13; think-block counts15/30/not-applicable/28. The paper says QwQ contributes26/26 HC and FIM think blocks. It reports mean output/target length HC3.46Ɨ and FIM2.24Ɨ, with9.84Ɨ as an extreme. These are observed author counts, not a controlled explanation of accuracy (Q11–Q13,T11). The claimed243+ missing Prog terminators numerically matches Table 8's243 bad-module-body first errors, but that broad parser category is not equivalent to an independently counted missing terminator. The selected generator also appends a terminator. The historical counting path is unresolved. A semicolon-presence scan is not itself a syntax-error test: semicolons can occur within comments, strings or PlusCal text. Similarly a blanket claim about all Unicode needs a tool-version/context boundary. Suggested grammar constraints, retrieval, normalization, fence removal and checker-guided repair are future interventions here. Their correctness and benefit were not measured; indiscriminate character deletion could change intended content (Q13,Q15,C16). ## Released source qualifications The primary parse step checks return code0 plus a success substring (C1–C2). Its separate metrics collector computes `parse_success` from that substring and error keywords but never uses it to return status: it returns PASSED whenever its line-number regexes find no errors (C3–C4). By static inspection, a present empty/unrecognized-error log can therefore receive PASSED in that collector. This is a source-level possibility; it is not a measured false-positive rate in the paper. The selected TLC loops iterate every parsed dictionary entry and ignore `parse_status`, contrary to the paper's stated filtering. They prefer any generated configuration file, even an empty one, before fallback to the corpus; full generation writes one. Hence the checker may assess model-selected properties/configuration rather than an independently fixed behavioral oracle. The success collector accepts ā€œModel checking completed. No error has been found.ā€ before checking exit status. The alternate progressive evaluator instead accepts ā€œThe specification is correctā€; the two strings are different. TLC subprocess calls have no Python timeout, despite TIMEOUT classification later; clearing `generated/states` without setting a working directory/metadir does not establish isolation of TLC's actual state directory. These observations require run-path/log validation before assigning them to historical results (C5–C7,C11). The split helper performs unseeded flat `random.shuffle`, not project stratification, and floor slicing205 gives143/30/32 rather than143/31/31. Selected prompts read val.json rather than test.json. Those labels may have been repurposed by uninspected run tooling; this record cannot certify the published test set from the selected code (C8,C15). The `fifty-fifty` and `fill-in-middle` prompt files are byte-identical and implement30/40/30 completion; their metric files are also identical. This does not reproduce two distinct completion designs. The progressive prompt accumulates instructional messages and makes one `llm.invoke` per target; it does not execute separate checked module/variable/operator generation stages. Its cleaner removes fences and explanatory text, adjusts headers and appends `====`, as do other selected generators. Thus Table 11's FIM cleanup footnote does not establish cleanup unique to FIM. The source/documentation mix should not be silently treated as the exact experimental pipeline (C9,C11–C12,C16). ## Contribution to this literature effort The paper is directly relevant to evaluating LLM-written distributed-system specifications. It supplies task definitions, public examples, prompt contrasts and failure cases. Its strongest lesson is methodological: separate parser success, tool execution, checked finite properties and faithfulness to intended behavior. The evidence does not justify treating an8.6% pipeline pass fraction as a measured semantic-equivalence rate, or infrastructure-confounded zero passes as proof that a strategy cannot generate valid behavior. A reader recommendation is to use fixed independent configurations/properties, inspect explored states and vacuity, compare behaviors or traces against requirements, isolate checker paths, publish per-run logs and exact model versions, repeat runs, and report infrastructure failures separately. The recommendation extends beyond the paper's measured interventions. This study verifies no Verus/Rust implementation and proves no distributed protocol. It evaluates draft TLA+ artifacts rather than an autonomous multi-agent proof process. Prose consultation is complete; independent review is pending. REVIEW.md records consultation scope and disposition. This is a whole-paper reading with selected static source inspection, not an experimental reproduction. Fresh independent review found no material conclusion issue; two table-packaging defects were corrected (REVIEW.md). All11tables/34refs,43literalquotes,16diagnostics;operational-vs-behavioral correctness,infra confounding,count arithmetic,proprietaryresults,source evaluator/split/prompt discrepancies. - number: 143 training, 31 validation, 31 test specs; 26 eligible test specs used - number: GPT-5 26/26 syntax and 7/26 TLC passes (26.9%) - number: 8.6% aggregate open-model TLC success (56/650); DeepSeek r1:8b 14/26 - number: 2,600 open-model runs plus 130 proprietary runs - limits: Public comments and26finite configured test specs;one run percondition;inconsistent counts;infra failures;NLfaithfulness notestablished;no authorcode/checker rerun;selected release correspondence uncertain. - how much was read: most of it read - source; notes: Natural language to temporal logic and TLA+ - record id: `can-llms-write-correct-2026` - ClarifySTL (2026) - title: ClarifySTL: An Interactive LLM Agent Framework for STL Transformation through Requirements Clarification - what: Detects vague or ambiguous timed requirements written in plain language. Asks the person targeted questions. Then generates signal temporal logic (a formal language for timed properties). - number: AmbiEval dataset 9,200 labeled instances - number: ten participants with at least three years of STL experience - number: Table 3: ClarifySTL DeepSTL formula score 67.12, semantic agreement 82.7; STL-DivEn 70.74 and 84.9 - number: +13.92% formula accuracy over the prior best on DeepSTL - limits: Formula accuracy is measured by how many tokens match, not by exact equivalence. Tested only with experienced users. No safety proof for cyber-physical systems. No public artifact. - how much was read: most of it read - source; notes: ClarifySTL: An Interactive LLM Agent Framework for STL Transformation ; notes: papers - record id: `clarifystl-2026` - Cobblestone (2026) - title: Cobblestone: A Divide-and-Conquer Approach for Automating Formal Verification - what: A Coq harness generates four proof candidates and keeps the subproofs that are complete. It marks unfinished parts for recursive attempts and calls CoqHammer. The final theorem is accepted only when every placeholder is replaced. - number: Four 100-theorem subsets: success 48%, 38%, 44%, 43% - number: 39.0% across 164 software theorems - number: A cited 58% is an oracle-assisted result on Wigderson100, not autonomous - number: Baseline/proposed on CoqGym: Proverbot9001 17%, CoqHammer 30%, CoT 25%, Cobblestone 48%; Wigderson: 10%, 27%, 19%, 38% - limits: It was tested on individual existing theorems (CoqGym, including Verdi-Raft), which were public before the GPT-4 cutoff. There is no aggregate for Verdi alone. - how much was read: most of it read - source; notes: Cobblestone: distributed-proof lemmas, not an agent-built Raft impleme - record id: `cobblestone-2026` - CodeSpecBench (2026) - title: CodeSpecBench: Benchmarking LLMs for Executable Behavioral Specification Generation - what: CodeSpecBench is a benchmark where a model writes executable Python pre- and postconditions. The input is either a function description or a real repository issue. A harness checks that the conditions accept valid tests and reject invalid ones. - number: 2,494 function tasks and 500 repository tasks from 12 projects - number: 96.3% statement and 93.6% branch coverage - number: 67.8 incorrect test cases per problem - number: best strict pass: 47.0% (GPT-5-mini) on function tasks, 20.2% (Claude-4.5-Sonnet) on repository; Appendix table says 21.0 - limits: It uses finite tests only. Localization and tests are supplied. The repository figures are inconsistent across tables. The comparison of solution generation mixes in numbers from model reports. - how much was read: most of it read - source; notes: CodeSpecBench: Benchmarking LLMs for Executable Behavioral Specificati - record id: `codespecbench-2026` - COINS specification evaluation (2026) - title: How Powerful Are LLMs in Generating Formal Program Specifications? - what: Introduces COINS (COq-based INstantiated Specification evaluation), which judges a generated input/output predicate by Rocq proofs on positive and mutated negative test cases. It separates specification quality from implementation conformance and makes successful proofs sound evidence while treating failed proofs as ambiguous. Sections 2–3 define implementation-agnostic pre/post specifications, the four-stage SYNTAX, PASSfirst, PASSall and REJECTall pipeline, and the sort-third example. Appendix A gives AST and LLM mutation operators, input perturbation, one-second execution limits and 1,640 generated negatives. Appendix B models an LLM prover probabilistically and proves that failed verification cannot distinguish a false specification from a hard true one. The main experiments compare six API models, study Fixpoint versus Inductive styles, equivalence to human specifications, input-type difficulty, Rocq compiler errors, and proof failures such as phantom goals, library predicates and normalization resource exhaustion. HumanEval/12 exposes a compiling but contradictory longest-string specification on duplicate maxima. - number: 164 tasks - number: 123,952 positive tests - number: 1,640 negatives - number: >100,000 proof attempts - limits: Specifications are functional input/output Props and intentionally omit exceptions, memory layout and other operational artifacts. The 164 human references were manually reviewed but are not absolute ground truth. Positive evidence is sound only because Rocq checks proofs; rejection of negatives is incomplete because an LLM may fail to find an available proof. Candidates can still miss behaviors outside the test suite. Scope is 164 HumanEval tasks, Python descriptions/implementations and Rocq; scaling requires substantial annotation and compute (over 100,000 proof attempts). - how much was read: most of it read - - record id: `coins-specification-evaluation-2026` - CrossCheck (2026) - title: CrossCheck: Input Validation for WAN Control Systems - what: CrossCheck compares the inputs of a WAN controller with router telemetry that was collected independently. It repairs bad measurements by voting. It checks demand and topology consistency against relations that humans chose. - number: four-week shadow deployment, zero false positives, one demand double-counting incident - number: repair about 9.1 s, validation 100 ms, queries 56 ms - number: detects 100% of demand perturbations of 5%+; tolerates up to 30% missing counters - number: about 250 repair and 100 validation Python lines - limits: It is an operational check, not a proof. It is not in the live decision path. Humans define the relations and tune the thresholds. It uses no LLM. - how much was read: most of it read - source; notes: CrossCheck: Input Validation for WAN Control Systems; notes: CrossCheck: Input Validation for WAN Control Systems - record id: `crosscheck-2026` - DafnyBench (2026) - title: DafnyBench repository - what: DafnyBench provides 782 Dafny programs with verified ground-truth and hints-removed versions; evaluation asks models to restore annotations and runs Dafny. - number: 782 Dafny programs - limits: Annotation completion is a narrower task than intent-to-spec and has no distributed liveness by itself. - how much was read: most of it read - source - record id: `dafnybench-2026` - Deductive Verification of Temporal Collisions in Distributed Message Brokers (2026) - what: The authors hand-write TLA+ templates for Kafka, RabbitMQ, NATS JetStream and Pulsar consumers. They use TLC to check for duplicate execution after a crash that happens before acknowledgment. Six Docker experiments cross-check the results on real consumers. - number: 112 configurations, 16 models, states 16-211,201 - number: 120-second timeout - number: Table 1: faulty 10/10 violated; idempotent 3 violated/7 pass; dual-async 7/3; synchronization 55/27 - number: 6/6 physical predictions matched - limits: Despite the title, this is bounded model checking. Liveness and ordering are not checked. The RabbitMQ idempotent models have three false positives. The paper claims that 30 PASS results fail at higher bounds, but does not check this. The wording of Table 7 conflicts with its results. - how much was read: most of it read - source; notes: Deductive Verification of Temporal Collisions in Distributed Message B - record id: `deductive-verification-of-temporal-2026` - DRPBench: Evaluating LLMs in Concurrent Code Comprehension via Fine-Grained Data Race Prediction (2026) - what: Introduces DRPBench, a static fine-grained data-race prediction benchmark for concurrent-code comprehension: 1,003 SV-Benchmarks C/C++ programs, 226 racing and 777 race-free, with 557 manually annotated variable/line-level races. Evaluates six LLM families in standard/reasoning/agentic configurations (15 LLM configurations) on a balanced 200-program DRPBench-Lite subset, plus Deagle and UGemCutter. Gemini-3-thinking reaches F1 74.89%; Llama 3 70B reaches 8.80%. Defines a race as a variable and exact conflicting access-line pair, parses JSON predictions as sets, and reports precision/recall/F1. Annotation combines three human annotators, o3-mini, GPT-4o and Deagle, two senior meta-reviewers, and consensus. DRPBench-Lite stratifies 100 racing and 100 race-free programs. Prompts provide definitions of mutexes, semaphores, atomics, condition variables and thread lifecycle. Ablations compare domain-knowledge prompts; tables compare reasoning and OpenHands agentic scaffolds against standard models. Qualitative cases identify shared-variable distraction and synchronization-logic myopia. - limits: The corpus is isolated pthread-based C/C++ and assumes sequential consistency; races only under weak memory models are excluded. Ground truth is an expert/LLM-assisted annotation process, not a machine-checked universal oracle. The reported LLM evaluation and error analysis use DRPBench-Lite (100 unique racing plus 100 race-free programs), not all 1,003 programs. The full corpus statistics and 557 race annotations should not be read as the test-set size. A true positive requires exact shared-variable name and exact pair of conflicting line numbers; this strict score measures localization under the supplied race definition, not general concurrent-code correctness, bug severity, or absence-of-race proof. Six base LLMs yield 15 standard/reasoning/agentic configurations; Deagle and UGemCutter are separate symbolic baselines. OpenHands agentic runs are only for Gemini, Claude and DeepSeek, with default decoding/agent configurations; other models lack agentic results. Annotation uses LLM tools (o3-mini and GPT-4o) alongside humans and Deagle, then two expert meta-reviewers; source SV-COMP labels and the paper's manual review are not independently reproduced by reader. The benchmark authors report >500 person-hours. No quantitative uncertainty bars or statistical tests are reported for the main F1 comparisons; no external artifact execution or independent annotation was performed by reader. LLM outputs remain candidates and cannot prove race absence. Appendix says this version covers isolated pthread C/C++ and SC only; real multi-component software, Java/Go, and weak-memory-only races are future scope. Symbolic-tool limitations and timeout/heuristic effects complicate direct superiority comparisons. - how much was read: most of it read - - record id: `drpbench-evaluating-llms-in-2026` - Expecto (2026) - title: Expecto: Extracting Formal Specifications from Natural Language Description for Trustworthy Oracles - what: Builds specs top-down from informal programming requirements, in a Dafny-based language with recursive helper definitions. It can check examples before every helper is defined, and it yields executable oracles (programs that judge whether an output is correct). - number: HumanEval+ 164 tasks; APPS 127 problems; Defects4J 501 methods from 336 bugs - number: soundness threshold: reject over half of generated wrong output pairs (X=50), five shuffled alternatives per input - limits: Soundness is shown by experiment against a threshold, not proved. Shuffled outputs may be accidentally correct. Cases where the solver timed out are excluded. Criteria differ across datasets. It is not a theorem that all wrong outputs are rejected. - how much was read: most of it read - source; notes: Generated contracts and independent evaluation; notes: Expecto - record id: `expecto-2026` - Faults in Our Formal Benchmarking: Dataset Defects and Evaluation Failures in Lean Theorem Proving (2026) - what: The paper audits Lean benchmarks using Lean metaprograms (a method called semantic guard proving) and LLM screening. It finds defective statements, then corrects some of them. - number: Table 4: 10,318 problem occurrences, 4,833 findings, 398 mechanically certified (prose says 399) - number: semantic screening 92 problems, 552 classifications; Sonnet precision/recall/F1 0.30/0.82/0.42, GPT 0.24/0.91/0.37 (Appendix H gives Sonnet recall 0.87) - number: correcting 20 unprovable statements: 0 to 3/20 and 2/20 for two provers - number: 4,833 findings, including 398 mechanically certified issues - limits: The benchmarks are mathematical, not software. Duplicates across forks mean the counts are not the number of unique errors. - how much was read: most of it read - source; notes: Faults in Our Formal Benchmarking: Dataset Defects and Evaluation Fail - record id: `faults-in-our-formal-2026` - Feedback & Synthesis in LLM-Assisted Termination Proofs (2026) - what: LLMs propose decreasing measures (quantities that shrink at each step, proving termination) for ACL2s functions. ACL2s checks them and returns errors and counterexamples. It splits failures into loops (termination cores) and combines the subproofs. - number: 42 base functions - number: 786 hours on an H200 GPU - number: thirty-minute limit per problem - number: gpt-oss with feedback solved 70% of course and 93% of competition problems vs built-in ACL2s 65% and 63% - limits: It covers termination of functional code, not progress of distributed systems. The 39% compares the integrated search with the best LLM alone. The corpus is small. - how much was read: most of it read - source; notes: Feedback & Synthesis in LLM-Assisted Termination Proofs - record id: `feedback-synthesis-in-llm-2026` - Fewer Assumptions by Design: A Reusable Skill for LLM-Assisted Verus Verification (2026) - what: Verifies an index-based doubly linked list in Verus by hand, then with a Claude agent. It then packages a 'skill' (SKILL.md, templates, and a list of pitfalls) that tells the agent how to work. The goal is to use as few assume statements (unproven hypotheses) and axiomatic lemmas as possible. - number: by hand: 16 assumes (Exp 1), 11 assumes (Exp 2) - number: with Claude: assume count dropped from 75 to 11; final state 45 verified, 0 errors, 11 assumes - number: agent cost: a couple of hours of reasoning plus manual prompting by the user - number: Table5: Codex5.2 High46assumes; Claude4.8 Max two index runs0assumes/0axioms; Claude4.6 High18assumes/1axiom; Standard/SlotMap0assumes/8axioms. Runs10–50min. Table6 rates all concrete Standard/SlotMap mutators fully opaque. - limits: It covers one data structure only. The evaluation is a rubric scored by the authors over 6 runs with Claude 4.6/4.8. No success rate is given. - how much was read: most of it read - source - record id: `fewer-assumptions-by-design-2026` - FormalJudge: A Neuro-Symbolic Paradigm for Agentic Oversight (2026) - what: Post-hoc agent-trajectory oversight separates intent decomposition,atomic-fact extraction,formal predicate generation and Dafny/Z3 checking. Structured logs are parsed directly where possible;LLMs extract semantic facts and synthesize the constraints. Authors report improved agreement with an LLM-ensemble reference,including deception classification and feedback-based behavioral refinement. Formal guarantees are conditional on faithful facts and specifications,not proofs about an agent policy or natural-language intent. Provides explicit atomic taxonomies and composition formulas for file-grounded deception,tool safety and constraint compliance;localized context extraction separates tool errors,disclosure,document access and fabrication. Adds a trusted-trace evidence-manipulation boundary test,manual integrity atoms,latency breakdown,qualitative-intent proxy examples,multi-turn stress tests and action/task-level evaluation. Iterative feedback sends generated Dafny constraints and failed-predicate explanations back to an agent. Detailed appendices show which observed facts are composed and reveal semantic/specification mismatches that solver success alone cannot catch. - limits: §3.4 explicitly requires faithful extracted facts and a Dafny specification capturing intended constraints. Errors can enter decomposition, semantic extraction and synthesis. The solver does not verify the LLM, policy, truth of observations or intended meaning. No theorem proves end-to-end soundness of this oversight architecture. Observed trajectories and trusted tool-observation logs must retain provenance. Agent-controlled files and self-reports may be fabricated. Appendix A.3 assumes attackers cannot overwrite the trusted trace; without external provenance a trajectory-only checker cannot recover rewritten original events. Reference labels in §4.1 are majority judgments from GPT-5.2, Gemini-3.0-Pro and Claude-4.5-Opus across three rounds. Metrics measure agreement with that ensemble, rather than independently established ground truth. Opus is also the main judge and specification compiler; correlated model errors remain possible. Seven main agents: GPT-4o, Gemini-3.0-Pro, Claude-4.5-Sonnet, Qwen-2.5 7B/14B/32B/72B. Table 1 uses an Opus judge. Extended robustness uses eight judges including GPT-5.2, Grok-3, Gemini-2.5-Pro, Sonnet and four Qwen sizes. The main five-judge description and extended eight-judge analysis describe different settings. Full benchmark sizes are 2,000 Agent-SafetyBench cases, 400 VitaBench tasks and 200 Deceivers tasks. Vita evaluation actually uses a 100-task split; robustness/cross-verifier analysis uses 30 tasks and 164 tool calls. Deceivers weak-to-strong analysis uses 200 deceptive plus 200 nondeceptive trajectories per agent size. Full benchmark size is not every experiment’s denominator. Agent-SafetyBench reference protocol in Appendix D combines fulfillable/risk annotations with actual actions and uses the ensemble for ambiguity, unlike the uniformly ensemble-based wording in §4.1. Deceivers design labels provide a consistency check; broken tools do not automatically make every resulting trajectory dishonest. Some atomic questions remain substantial semantic judgments: whether a file contains requested information, an answer ignores content, or fabrication follows disclosure. Boolean answers do not make these judgments objective. Qualitative intent uses observable proxies rather than an exact semantics of politeness or manipulation. Agent-SafetyBench refinement uses Opus for decomposition/specification synthesis, including small-agent experiments. For the 7B-judge versus 72B-agent claim, the exact allocation of extraction/synthesis roles matters; judge size alone does not specify the capacity of the complete pipeline. Verification audits completed traces. Refinement regenerates responses or attempts and cannot undo actions already executed. X-Teaming and OpenClaw additions measure unsafe-trace detection, not online prevention or reduction in the native attack success rate. Dafny/Z3 checking can time out or fail without proving the negation. The paper models V as binary but does not fully specify timeout, unknown or syntax-error handling. The 6.4% backend error share classifies an unspecified sample of errors; it does not establish logical unsoundness in Z3. No independent artifact reproduction, compiler/version audit, complete human-label audit or systematic correctness proof of generated checkers is supplied. Attribution to the solver alone is limited when decomposition, contexts, prompts and generated code differ. - how much was read: most of it read - - record id: `formaljudge-a-neuro-symbolic-2026` - FormaLLM (2026) - title: Automating TLA+ Model Synthesis with Large Language Models and Formal Verification Pipelines (WIP) - what: A one-page poster on a benchmark built from the public TLA+ examples repository to test whether small open code LLMs write TLA+ models from English that pass TLA+'s syntax checker (SANY) and model checker (TLC). - number: 297 TLA+ specifications, 149 configurations, 49,700 lines of TLA+ - number: Models listed: StarCoder 3B, CodeLlama Instruct 7B, CodeT5+ 2B, CodeT5 Base 220M, SantaCoder 1.1B, DeepSeekCoder V2 Lite 13B (in progress) - limits: Work in progress: no results reported. 'Passes TLC' only means the model runs; it does not say the model matches the English. The poster text also contains an unrelated paragraph about racist tweets, apparently left over from a template. - how much was read: most of it read - source; notes: ## FormaLLM TLA+ poster (2026) - record id: `formallm-2026` - From Verification Failures to Reusable Guidance for Coding Agents (2026) - what: Turns diagnosed proof failures into reusable procedures (a kit) for coding agents. The agents write specifications and proofs of execution in the K framework, with Lean for leftover math. Separate agents audit the result. - number: 164/164 final AI audit PASS verdicts after two targeted repairs and heavy human-guided resource development - number: at the common checkpoint with the kit: 97 Pass, 67 Concerns, 0 Fail - number: 12-pair challenge: all 12 defects detected, all 12 clean accepted (Wilson interval 75.8-100%) - number: controlled 31-program test: GPT-5.6 Luna 15/31, 15/31, 19/31; all four intervals include zero - limits: The target is partial functional correctness (correct if it terminates), and termination is handled separately. The trusted base includes the translation, the semantics and the solver integration. The controlled evidence does not show a clear general benefit of the kit. - how much was read: most of it read - source; notes: From Verification Failures to Reusable Guidance for Coding Agents; notes: From Verification Failures to Reusable Guidance for Coding Agents - record id: `from-verification-failures-to-2026` - GSIRS TLA-LLM poster (2026) - title: Large Language Models (LLM) and Temporal Logic of Actions (TLA): How Effective are LLMs for Verification Systems - what: This poster reports a systematic natural-language-to-TLA+ evaluation over 205 community specifications, 30 models and four prompting strategies. It validates syntax with SANY and behavior with TLC, separating parsability from semantic correctness and cataloguing recurring generation failures. - number: 205 TLA+ specifications across 98 projects - number: 30 LLMs from eight families; 2,600 open-model runs and 130 proprietary-model runs - number: up to 26.6% syntactic correctness but 8.6% semantic correctness; TLC passes occurred only with progressive prompting - number: semicolon injection occurred in 12.6% of generated files; backticks in 5.9%; 234+ missing module terminators were reported - limits: The poster is based on a separate published ICSOFT 2026 paper and gives an abstracted poster-level account; its evaluation uses finite TLC configurations and does not establish deployed-code correctness. The dataset is drawn from the TLA+ Examples repository, so its task mix is not a random sample of industrial requirements. - how much was read: most of it read - source - record id: `gsirs-tla-llm-poster-2026` - HarnessLLM (2026) - title: HarnessLLM: Rust Verification Harness Generation with Large Language Models - what: An LLM workflow turns a Rust project's existing unit tests into harnesses (small driver programs with symbolic inputs) for the Kani bounded model checker. It finds the call patterns in tests, builds symbolic arguments for the project's own types by following constructors, and repairs compile errors without letting the LLM invent types. - number: 9 Rust crates, 494 tests, 6651 lines of test code: 294 calling scenarios extracted, 94.66% preserved the original behavior - number: 294 of 294 harnesses compile in Kani within 10 attempts; 97.3% within 3 attempts; about 1.4 generations per harness - number: Average 145 s and 0.03 per harness (GPT-4.1)
    • number: Kani Autoharness baseline produced harnesses for 41% of the same scenarios
    • limits: Needs a codebase with good tests; sparse tests lower scenario coverage. ā€˜Success’ means the harness compiles in Kani, not that it checks anything beyond memory safety and panics. Bounded checking; the LLM picks the bounds (slice lengths, unwind). Only functions visible in source (macro-generated ones are missed).
    • how much was read: most of it read
    • source; notes: HarnessLLM (2026)
    • record id: harnessllm-2026
  • Hilbert (2026)
    • title: Hilbert: Recursively Building Formal Proofs with Informal Reasoning
    • what: An agent for Lean 4 proofs that lets a general LLM write an informal proof and a Lean sketch with unproven gaps, then hands each gap to a specialized prover model; gaps the prover cannot close are split again, down to depth 5.
    • number: miniF2F test (244 problems): 99.2% with Gemini 2.5 Pro + Goedel-Prover-V2-32B vs 92.2% best open baseline pass@8192 (Table 1)
    • number: PutnamBench (660 problems): 462 solved (70.0%) vs SeedProver 331/657 (50.4%) and Goedel-Prover-V2-32B 86/644 (13.4%)
    • number: gpt-oss-120b as reasoner: 90.8% miniF2F, 88/660 (13.3%) PutnamBench
    • number: depth 0 (no decomposition) 75% vs 98.36% at depth 2 (Fig. 4)
    • limits: Math competition theorems in Lean 4 whose formal statements are given by humans; the system proves the stated theorem and does not check that the statement means the intended thing. Large compute cost, and PutnamBench result relies on the proprietary Gemini 2.5 Pro (open reasoner gave 13.3%).
    • how much was read: most of it read
    • source; notes: ## Hilbert (2026)
    • record id: hilbert-2026
  • IC3Syn (2026)
    • title: Synthesizing Inductive Invariants for Distributed Protocols via IC3 and Large Language Models
    • what: An IC3 controller hands an LLM (Claude Opus 4.6) concrete bad states to block. The LLM proposes TLA+ clauses. TLC and Apalache check them on small instances. TLAPS then proves the invariant for all sizes.
    • number: 29 of 29 protocols solved (Table 1 p. 9); direct Claude baseline 23/29; Gemini 3 Flash inside IC3 solves 27/29
    • number: MLDR (MongoDB Raft model): 4525 s, 16 clauses, proof over 3,000 lines; EPR Paxos: 1806 s, 9 clauses
    • number: Default synthesis timeout 30 minutes, 2 hours for the two hardest cases
    • number: Paper’s rerun of Endive solves 24 shared cases
    • limits: The models and safety goals are supplied. Liveness is not evaluated. The synthesis loop works on finite instances only. The proof stage used a scaffold plus Codex automation. The model, budget and log of human intervention are not stated. Full end-to-end automation is ongoing work. No public code or proof artifact was found. The results are the authors’ own reports.
    • how much was read: most of it read
    • source; notes: IC3Syn: a direct 2026 LLM invariant search result; notes: IC3Syn: agent-written proofs of unbounded distributed protocol safety; notes: IC3Syn protocol inventory
    • record id: ic3syn-2026
  • IDS (2026)
    • title: Inductive Deductive Synthesis: Enabling AI to Generate Formally Verified Systems
    • what: Given a specification written by an expert in Rocq/Coq, a coordinator of GPT-5.4 workers writes an implementation and a proof that Coq’s kernel checks. It can throw away a data representation and start over. Code is extracted to OCaml.
    • number: Seven distributed key-value specifications succeed (at least 2 of 3 runs); 20/21 runs (notes’ arithmetic)
    • number: 6.8 hours and 106 per spec - number: Plain Codex and Claude Code each solve 2/7 - number: Artifacts from 622 to 3,924 lines of code plus proof, 25-128 lemmas - limits: The specification is supplied. Safety holds only within the supplied model, and there is no liveness. The comparison of human effort is not a controlled experiment. - how much was read: most of it read - source; notes: IDS: changing code and abstractions makes otherwise hard proofs tracta - record id: `ids-2026` - Intent Formalization (2026) - title: Intent Formalization: A Grand Challenge for Reliable Coding in the Age of AI Agents - what: This research agenda argues that only the user can judge whether a spec is correct. It calls for support from tests, mutation, interaction and rich logic. - number: TiCoder study with 15 professional developers: correct evaluation of AI code from 40% to 84%; cognitive load dropped (p = 0.007) - limits: It is not a controlled benchmark. - how much was read: most of it read - source; notes: Intent formalization: why one number is insufficient - record id: `intent-formalization-2026` - InvariantEval (2026) - title: Smart Contract Invariants Protect Against Cybercriminals - what: Builds InvariantEval: 28 real Ethereum attacks, each paired with a one-line human-written check (an invariant) that would have blocked it. A replay tool (PonderReplay) re-runs the attack and 108,637 past transactions against the patched contract to confirm the check blocks the attack and keeps normal use working. Then tests three automatic invariant tools. - number: 28 attacks, about 1.07 billion USD total loss; all 28 blocked by the human invariant (PoC and real attack transaction) - number: 108,637 historical transactions replayed: 106,815 preserved (98.3%), 1,526 changed (1.4%), 296 inconclusive - number: inconclusive causes: 173 original out-of-gas, 12 subcall out-of-gas, 111 state drift - number: automatic tools recovered 2 of 28 ground-truth invariants (FLAMES only); InvCon 0, InvCon+ 0 - limits: Ground truth is hand-written by the authors after the attack, with the post-mortem in hand, and only for cases they could solve; the 28 are the ones that worked out of 359 Ethereum exploits. Benchmark and tool are available only on request. Matching an invariant to ground truth was done by checking whether it appears in tool output. - how much was read: most of it read - source; notes: Smart Contract Invariants Protect Against Cybercriminals (2026) - record id: `invarianteval-2026` - JS-SAM (2026) - title: Executable JavaScript as a Checkable Specification Language: A JS-SAM Case Study on SysMoBench - what: This controlled study compares LLMs writing JavaScript (SAM) specs against TLA+ specs of real systems. The authors check the specs by bounded exploration, plus replay against traces captured from the running systems. - number: 4 models, 5 generations per cell - number: Spin traces: 28 windows, 8 of 18 observable input combinations covered - number: small tasks 40/40 complete passes; Raft scale 0/20 initially, 6/20 after one repair round - number: state-changing conformance of original models ranges 0-86.4% though all pass syntax and invariants - limits: It checks no liveness or temporal properties. It explores only to a bound. It does not prove that the implementation matches the model. The author designed the instrumentation, the reference model and the prompts. - how much was read: most of it read - source; notes: JS-SAM: a controlled case study separating specification shape from la; notes: JS-SAM: a controlled case study separating specification shape from la - record id: `js-sam-2026` - KaPilot (2026) - title: KaPilot: LLM-Assisted Generation of Kani Specifications for Unsafe Rust Verification - what: Five cooperating LLM agents write Kani contracts (preconditions, postconditions, loop invariants) for unsafe Rust functions, using the function's documentation instead of its code as the source of what must hold. Kani is a bounded model checker: it checks all inputs up to a size bound. - number: GoldSet (54 functions from verify-rust-std, with human-written contracts): 88.9% of functions got a contract Kani accepts; 57.4% of contracts equal to or stronger than the human ones (GPT-5: 31 good, 17 bad, 6 failure) - number: ULSet (70 functions from popular crates, no reference contracts): 71.4% got an accepted contract (GPT-5: 50 pass, 20 failure) - number: Versus AutoSpec adapted to Kani, same GoldSet and GPT-5: 31 vs 17 good, 6 vs 14 failures - number: Ablation on GPT-5: dropping SafetyReq cut good from 31 to 6; naive prompt with Kani feedback (10 rounds) gave 8 good, 26 failures - limits: Only memory safety and panics, not functional correctness. Kani is bounded, loop invariants only for while loops, and some Rust properties (lifetimes) cannot be written in Kani. Judging whether an accepted contract is good was done by hand; no automatic check exists. Output quality depends on documentation quality (ULSet docs shorter, failure 28.57% to 31.43% vs 7.41% to 20.37%). - how much was read: most of it read - source; notes: KaPilot (2026) - record id: `kapilot-2026` - KOSV (2026) - title: KOSV: Kubernetes Ownership Safety Verifier - what: It polls Kubernetes ownership state and normalizes it to JSONL traces. It checks two predicates written by the authors: at most one controller owns a resource, and no unexpected ownership transfer. Faults seeded into the observations test the checker itself. - number: 20/20 runs pass (5 each: baseline, 500 ms delay, 2,000 ms delay, controller-manager restart) - number: seeded faults 2/2 detected; denser-poll 6/6 pass - number: experiments pinned to v0.1.10 - limits: It is sampled, finite testing. PASS is not proof that nothing is wrong. Transients shorter than the sampling interval can be missed. Delay faults do not affect controller-API traffic. The reproduction table is empty. Two of the four oracles are unimplemented. - how much was read: most of it read - source; notes: KOSV: Kubernetes Ownership Safety Verifier - record id: `kosv-2026` - KVerus (2026) - title: KVerus: Scalable and Resilient Formal Verification Proof Generation for Rust Code - what: Claude Sonnet 4.0 generates proofs for Rust code as the proofs evolve. It uses a dependency graph, retrieval, verifier feedback and persistent memory. - number: Table 4: MathSpec 81/104, allocator 50/89, CortenMM 52/166 vs baselines 10, 1, 5 - number: Repository benchmarks: 183/359 tasks (51.0%) vs 4.5% multi-round prompting baseline - number: Single-file: 251/313 (80.2%) vs AutoVerus 178/313 (56.9%) and AlphaVerus 78/313 (24.9%); 43.2% of AutoVerus tokens - number: Ablation CortenMM 52 tasks full, 10 without code metadata, 7 without lemma knowledge, 22 without Verus knowledge - limits: It measures task completion in existing systems. It has no evaluation of distributed liveness. - how much was read: most of it read - source; notes: Repository retrieval and multi-function verification; notes: papers - record id: `kverus-2026` - Lean4Agent FormalAgentLib and LeanEvolve (2026) - title: Lean4Agent: Formal Modeling and Verification for Agent Workflow and Trajectory - what: Presents Lean4Agent, a Lean4 dependent-type framework with FormalAgentLib for structural, semantic and execution-trajectory verification of LLM-agent workflows, plus LeanEvolve for verification-guided workflow refinement. Workflows are typed heterogeneous graphs of read/write variables, natural-language instructions and execution types; trajectories record pre/post states and reasoning/tool traces. Layer 1 checks node reachability, edge validity and read/write consistency. Layer 2 translates explicit and implicit variables into decidable predicates and graph-level information-flow/context predicates, proving precondition entailment under an LLMExec local-correctness assumption. Layer 3 checks concrete trajectories using Lean propositions, Python validators and LLM-as-judge, localizing failed steps. LeanEvolve feeds diagnostics and optional test feedback to an LLM for targeted workflow edits, with a pure-LLM exploratory mode. Experiments generate 40 workflows, compare verification-passing/failing workflows across five LLMs on 50 hard SWE-Bench-Verified tasks and 100 ELAIP-Bench questions, and study graph-predicate and pure-LLM ablations. - number: Layer-2 passing workflows improve SWE task rate by 14.80 percentage points (95% CI 10.00–19.60) - number: ELAIP passing workflows improve by 9.07 points (95% CI 5.66–13.07) - number: LeanEvolve adds 7.47 points on SWE, raising 56.93% to 64.40% - number: formal-guided evolution solves 7.00 points more initially failed ELAIP cases than pure-LLM evolve - limits: Layer-2 soundness depends on LLMExec: each step satisfying predicates is assumed to produce postconditions; this abstracts away failures of long-horizon black-box LLM behavior. Custom predicates may have only name existence and natural-language explanations, and trajectory checks can rely on an LLM judge. Evaluation uses small random subsets (50 SWE and 100 ELAIP), 40 generated workflows and contemporary model versions, so generalization and causal effects are limited. The paper is a preprint and reports no mechanized verification of the LLM internals or distributed-system protocols. - how much was read: most of it read - source; notes: ## Lean4Agent (2026) - record id: `lean4agent-formalagentlib-and-leanevolve-2026` - LeetProof (2026) - title: Certified Program Synthesis with a Multi-modal Verifier - what: LeetProof checks generated specifications against examples and reference implementations. It then synthesizes Velvet/Lean code, using SMT solvers to discharge proof goals automatically. A person finishes the remaining goals interactively. - number: GPT-5.2 Velvet pipeline fully proves 28 of 50 tasks vs Lean-only 17 - number: 16 issues in VERINA (of 189 specs, 8.5%) and 18 in CLEVER (of 161, 11.2%) via property-based testing - number: Verina issues took 9 minutes of property-based testing vs about 8 hours of LLM equivalence checking - limits: It synthesizes algorithms with simple types. It has no distributed models and no liveness. - how much was read: most of it read - source; notes: Dafny, C verification, and the specification-intent gap - record id: `leetproof-2026` - LemmaNet (2026) - title: Automated Lemma Discovery in Agentic Program Verification - what: GPT-5.2 plans reusable helper lemmas from C source, ACSL obligations and Rocq proof states. It adapts them to each obligation and proves them first. - number: 298/641 SV-COMP and 66/300 NTP4VC tasks, 364/941 (38.7%, notes' arithmetic), 10-minute/100-step budget - number: 364 total proofs (298 SV-COMP, 66 NTP4VC) - number: 26.8% improvement over AutoRocq, 51.7% over Copra - number: 78 unique successes; 61/69 helper-lemma proofs use BRIDGE strategy - limits: The Linux scheduler/memory, Contiki and X.509 items are single verification conditions, not whole kernels. - how much was read: most of it read - source; notes: Dafny, C verification, and the specification-intent gap - record id: `lemmanet-2026` - Liveness certificates (2026) - title: Liveness Proofs for Hardware Model Checking - what: Certificates for checking hardware liveness (k-liveness, liveness-to-safety, rLive, stabilizer extraction). They are validated by eight SAT obligations on a witness circuit. - number: 73 selected benchmarks found UNSAT - number: certificate-checking overhead 4% (k-liveness), 7% (rLive), 59% (L2S) - number: limits 14 GB, one hour - number: older Sindoni pipeline: 16 optimized and 13 unoptimized rLive instances not certified; overhead 309%/469% over certified instances only - limits: It covers finite-state hardware models. The soundness proof is mathematical, not mechanized. The aigunfair converter and the SAT checker are trusted. - how much was read: most of it read - source; notes: Liveness Proofs for Hardware Model Checking - record id: `liveness-certificates-2026` - LLM ACSL evaluation (2026) - title: Evaluating LLM-Generated ACSL Annotations for Formal Verification - what: Empirically compares a rule-based Python annotator, Frama-C RTE, and DeepSeek-V3.2, GPT-5.2 and OLMo 3.1 32B for one-shot ACSL generation on filtered CASP C programs, checking annotations through Frama-C WP and multiple SMT solvers. Uses 355 retained programs from the 506-file CASP dataset, evaluates EVA preprocessing and hundreds of WP runs per source/solver, and reports proof success, solver timeouts and Qed time. It finds rule-based and RTE annotations more reliable; DeepSeek is the strongest LLM but remains variable and can produce weak contracts. - number: 355 retained files from 506; 151 excluded - number: EVA successfully analyzed 40.8% - number: RTE mean proof success about 99.1% - number: DeepSeek mean success about 93.8–94.9% - limits: One-shot default decoding is used without iterative feedback or fine-tuning. The filtered dataset excludes 151 empty/incomplete files and focuses on C programs in CASP; proof success can overstate usefulness because annotations may be trivially true or overly conservative. Results vary substantially by solver and do not establish generalization beyond this benchmark. - how much was read: most of it read - source; notes: ## ACSL annotation evaluation (2026) - record id: `llm-acsl-evaluation-2026` - LLM logical-construct study (2026) - title: Beyond Basic Specifications? A Systematic Study of Logical Constructs in LLM-based Specification Generation - what: Compares LLM-generated ACSL annotations for 49 C programs, checked with Frama-C, under four settings of allowed constructs: basic, proved lemmas, axioms, and all. Failing annotations are fixed by deleting or modifying them. - number: 49 programs, 5 runs each; stable = at least 2 of 5 - number: GPT-5 NVP/stable: deletion basic 32/28, full 40/39; modification basic 39/37, full 42/41 - number: Gemini modification verifiable NVP 48, stable 46 - number: modification raises runtime generally over 100% - limits: The annotations come from the code, not from requirements. Axioms are assumed true and can make the proof unsound, and nothing audits them. NVP counts a program as solved if any run solved it, not pass@1 (success on the first try). - how much was read: most of it read - source; notes: Beyond Basic Specifications? A Systematic Study of Logical Constructs - record id: `llm-logical-construct-study-2026` - LORIS loop invariant synthesis (2026) - title: Guiding LLM-based Loop Invariant Synthesis via Feedback on Local Reasoning Errors - what: LORIS iteratively synthesizes C loop invariants: an LLM proposes an invariant, writes a natural-language proof of failed verification conditions, another LLM translates local steps into first-order implications, and Z3 checks those implications to produce targeted feedback. The framework checks local reasoning steps rather than demanding a fully formal proof script, maps an invalid implication back to a specific natural-language error, and feeds that diagnosis into subsequent invariant synthesis. It integrates Frama-C for inductiveness, Z3 for implication validity, and evaluates multiple model families against LaM4Inv and Clause2Inv, including a BMC combination study and manual auto-formalization checks. - number: GPT-4.1 LORIS solves 445/460 main programs with 93.1% success, versus 84.6% and 84.9% baseline success rates - number: best reported non-linear result is 47/50 programs; GPT-4.1 LORIS solves 45/50 at 83.2% success - number: five runs produce 2,300 attempts on the main suite; per-run cap is 150,000 tokens and 600 seconds - number: successful GPT-4.1 run costs about 0.038 on average; sampled auto-formalization evaluates 108 proof steps
    • limits: Results use single-loop, single-function C programs filtered from established suites; floating-point cases unsupported by the chosen Frama-C version were removed. Each method receives five independent runs, a 600-second limit, and 150,000 tokens per run; success means the verifier accepts the generated invariant. Feedback quality depends on LLM formalization of reasoning steps and solver-supported first-order implications, so it does not establish correctness of arbitrary natural-language reasoning outside the checked obligations.
    • how much was read: most of it read
    • source; notes: LORIS, loop invariants from local-reasoning feedback (2026)
    • record id: loris-loop-invariant-synthesis-2026
  • miniF2F-Dafny auto-active proving (2026)
    • title: MINI F2F-DAFNY: LLM-Guided Mathematical Theorem Proving via Auto-Active Verification
    • what: Translates the miniF2F mathematical benchmark into Dafny and measures how SMT automation plus LLM-generated proof hints perform in an auto-active verifier. The benchmark has 244 test and 244 validation lemmas with compact definitions.dfy and library.dfy support. Dafny translates Hoare-style specifications through Boogie weakest preconditions to Z3; ghost assertions, calc chains and lemmas guide opaque solver search. The authors validate that generated solutions preserve requires/ensures, reject assume or axiom cheating, and audit the trusted support layer: 128 of 160 originally axiomatized lemmas are proved, 14 selected lemmas are independently solved, and 142 of 201 empty-proof successes remain without definitions.dfy. LLM attempts receive up to four trajectories and three error-correction rounds.
    • number: 488 total problems
    • number: 244 test / 244 validation
    • number: 38.9% empty-proof test baseline
    • number: 62.7% Claude Opus pass@4
    • limits: The translation is human-led and the mathematical support is an intentionally small axiomatized library rather than a foundational Mathlib formalization; opaque transcendental and number-theoretic properties remain trusted. Results use Dafny 4.11/Z3, 30-second attempts, eight off-the-shelf models, and no fine-tuning. Verification is brittle to assertion order/calc organization; models often confuse Dafny syntax with Lean and fail when required facts are absent. Pass rates measure generated Dafny code accepted by the validator, not independent proof objects.
    • how much was read: most of it read
    • record id: minif2f-dafny-auto-active-proving-2026
  • ModelWisdom TLA+ toolkit (2026)
    • title: ModelWisdom: An Integrated Toolkit for TLA+ Model Visualization, Digest and Repair
    • what: Presents ModelWisdom, an interactive toolkit that links TLC state graphs to TLA+ source, folds and compacts large graphs, summarizes subgraphs with LLMs, and iteratively repairs syntax/property errors using TLC feedback. ModelVisualizer colorizes violated states and properties, supports click-through transition-to-code links, tree layouts, node/edge folding, and lazy rendering. ModelDigest preprocesses graph structure and prompts LLMs with full specifications plus initial/terminal/cycle/frequency summaries. ModelRepair supports single-pass and multi-pass repairs with a history panel, repeatedly feeding TLC errors and revised models.
    • number: implementation comprises approximately 7,000 lines of typed TypeScript and Python
    • number: ModelVisualizer renders one tree at a time and uses lazy rendering/folding
    • number: demonstrations show correction of white-bean decrement from āˆ’1 back to āˆ’2
    • number: no controlled accuracy, runtime, or benchmark evaluation is reported
    • limits: The toolkit is an interpretability and repair aid around TLC, not a replacement for TLC’s correctness checking; LLM explanations and fixes require human review. Demonstrations use the CoffeeCan example and a deliberately altered postcondition, with no quantitative benchmark of repair accuracy or scalability. Future work targets Promela, Alloy, NuSMV, UPPAAL, and other languages.
    • how much was read: most of it read
    • source
    • record id: modelwisdom-tla-toolkit-2026
  • MutDafny (2026)
    • title: MutDafny: A Mutation-Based Approach to Assess Dafny Specifications
    • what: Mutates the Dafny implementation code and checks whether the spec still verifies. If it does, the contract may fail to exclude wrong behavior. A human must judge the mutants that survive.
    • number: 40 mutation operators (30 adapted, 10 new)
    • number: 794 files, 43178 LOC; 118,458 mutants generated: 76517 killed, 30459 survived, 10996 invalid, 486 timeout
    • number: mean per-file mutation score 82%; pooled ratio computed by the notes is about 71.5%
    • number: manual audit of 284 survivors in 24 files: 77 exposed five weak specs, 157 equivalent, 50 inconclusive; about 8 person-hours
    • limits: A surviving mutant is not automatically a spec error. A killed mutant may only mean the proof annotations no longer suffice. It did not evaluate specs about time.
    • how much was read: most of it read
    • source; notes: Testing strength, mutations, and vacuity; notes: MutDafny: mutation survival needs adjudication
    • record id: mutdafny-2026
  • Neuro-formal verification (2026)
    • title: Neuro-Formal Verification: Agentic Language-Agnostic Formal Program Reasoning
    • what: Proposes NFV: an AI agent translates mainstream-language source, property and environment assumptions into staged formal artifacts, then uses Dafny or CBMC to produce machine-checked proofs/refutations. Goal-blind stages (formalize model, property and environment separately before proof search) reduce proving a mismatched artifact, while admitting formalization itself is not soundly guaranteed. The pipeline distinguishes verification and refutation arms, performs artifact audits and abstains when formalization/type checks fail. A balanced nl2post-safe corpus has 206 program/spec pairs (103 correct, 103 mutants), with library tiers L0–L3. Dafny handles proof/refutation; CBMC translates libraries to C for bounded counterexamples. Error analysis attributes wrong verdicts to missing or stronger preconditions and library formalization.
    • number: 206 entries: 103 correct + 103 buggy
    • number: Dafny pipeline issued 128 verdicts, 10 wrong: 92.2% precision, 57.3% recall, F1 0.71
    • number: Dafny verification 72/103 correct (93.5% precision); refutation 47/103 buggy (88.7% precision)
    • number: CBMC refuted 65/103 buggy, 7 false: 63% recall, 90% precision
    • limits: NFV optimizes empirical accuracy rather than end-to-end soundness because informal environment assumptions cannot be fully guaranteed. Results assume docstrings capture intended properties; unstated preconditions caused all six false refutations. Dafny modeling of libraries and Python semantics is incomplete; CBMC is bounded and checks C translation rather than original Python.
    • how much was read: most of it read
    • source
    • record id: neuro-formal-verification-2026
  • Neurosymbolic VLM clinical audit (2026)
    • title: Toward Guarantees for Clinical Reasoning in Vision Language Models via Formal Verification
    • what: Introduces a reference-free neurosymbolic audit that maps VLM Findings and Impression text into propositional evidence, checks diagnostic entailment with a clinician-audited knowledge base and Z3, and classifies claims as supported, hallucinated, missed, or correctly excluded. The method formalizes an assume-guarantee contract around visual grounding and text-to-symbolic translation, uses a closed-world binary evidence vector, and reports soundness/completeness alongside precision, recall, F1 and specificity. Seven VLMs are tested on five chest-X-ray datasets; symbolic filtering is then compared with raw impressions on CheXpert and NIH-CXR14, showing a consistent precision/soundness gain with a small completeness/recall trade-off.
    • number: seven VLMs across five chest-X-ray benchmarks
    • number: MedGemma-27B reaches soundness 0.9811 and completeness 0.9721; Qwen3-VL-8B reaches soundness 0.9943 and completeness 0.8735
    • number: on CheXpert, filtering raises MedGemma-27B soundness 0.9301→0.9599 and lowers completeness 0.8231→0.8107
    • number: on NIH-CXR14, filtering raises MedGemma-27B soundness 0.9505→0.9780 and lowers completeness 0.9488→0.9460
    • limits: The SMT guarantee is conditional on faithful autoformalization, a clinician-audited and exhaustive knowledge base, and the VLM’s visual Findings. The evaluation uses a closed-world assumption in which unmentioned findings are absent; the authors manually spot-check 100 text-to-SMT translations but do not establish unconditional clinical correctness or replace clinician review.
    • how much was read: most of it read
    • record id: neurosymbolic-vlm-clinical-audit-2026
  • NL2VC-60 (2026)
    • title: From Natural Language to Verified Code: Toward AI Assisted Problem-to-Code Generation with Dafny-Based Formal Verification
    • what: Introduces NL2VC-60, 60 complex algorithmic problems paired with Dafny code/specifications, and evaluates seven open-weight LLMs under contextless, signature-guided and verifier-feedback prompts. uDebug tests combat vacuous proofs by requiring executable functional correctness. Tiered prompting supplies method signatures as structural anchors, then iterative Dafny compiler feedback repairs annotations/code. The study categorizes errors (compilation, specification, proof, functional) and compares verify@k. Contextless prompts almost universally fail; signatures reverse performance, and self-healing further improves models.
    • number: Gemma 4-31B reached 90.91% verification success
    • number: GPT-OSS 120B rose from 0% to 81.82% with signature feedback
    • number: Contextless peak verify@5 27.27% at T=0.8
    • number: NL2VC-60 contains 60 problems; seven open-weight models; 11 randomly selected sets
    • limits: Dafny specifications and uDebug tests are trusted; tests cannot establish full semantic correctness. Dataset has 60 problems and 11 selected sets; generated solutions may overfit signatures/prompts. Open-weight model results and Dafny syntax may not transfer to Verus/Rust.
    • how much was read: most of it read
    • record id: nl2vc-60-2026
  • NTP4VC (2026)
    • title: Neural Theorem Proving for Verification Conditions: A Real-World Benchmark
    • what: 600 verification conditions (the proof goals a verifier produces) from C/Why3 programs are translated to Lean, Isabelle and Rocq with human-written rules. Annotations are removed to make them harder, and models must prove them.
    • number: more than 7.5k VCs extracted, 600 selected; 300 C obligations from 17413 lines
    • number: more than 2400 human-written mapping rules
    • number: DeepSeek-Prover-V2-671B Lean pass@1/8 1.67/3.00; Minilang Isabelle 2.08/11.46; Sledgehammer 18.00; CoqHammer 5.67
    • number: Why3 ATP baseline 22%; 10 min timeout
    • limits: Each goal is a single condition, not a whole system. It has no distributed progress. The translation is trusted. Some cases may be unprovable. The prose says 11.56% but the table says 11.46.
    • how much was read: most of it read
    • source; notes: Neural Theorem Proving for Verification Conditions: A Real-World Bench
    • record id: ntp4vc-2026
  • Numina-Lean-Agent (2026)
    • title: Numina-Lean-Agent: An Open and General Agentic Reasoning System for Formal Mathematics
    • what: Combines a general coding agent (Claude Code with Opus4.5) and Numina-Lean-MCP tools to perform formal mathematics with autonomous tool selection. Reports12/12 Putnam2025 formal problems solved,matching AxiomProver,and a human-assisted harmonic-analysis formalization exceeding8,000 Lean lines in under two weeks. The contribution is agent/tool integration and case evidence,not a new model-training algorithm or mechanized correctness theorem for the agent. Four tool groups:Lean-LSP diagnostics/goals/search/code;LeanDex semantic theorem retrieval;informal generator/verifier;discussion partner for alternative reasoning. LeanDex rebuilds Mathlib/FLT/PhysLean under Lean4.26.0,regenerates descriptions using DeepSeekChat3.1,optimizes queries and reranks results with LLMs,with claimed monthly updates. Gemini3ProPreview generator/verifier refines up to20 times and requires three unanimous informal checks;these guide search rather than certify proofs. Subagents isolate lemmas in temporary files and merge successful verified lemmas,executed sequentially with main-agent blocking. For sustained research formalization,a dependency DAG blueprint records definitions/intermediate lemmas/final theorem and is revised from Lean feedback,human hints and external discussion.
    • number: 12 of 12 Putnam 2025 problems solved, budget about 300 for B6 and about 50/problem is raised to300 B6;authors call these relative effort rather than exact accounting. Main headline is success under unequal per-problem resources,not fixed-cost12/12. Sequential execution avoids parallel search but does not imply uniform cost or faster overall solving. The research case is collaborative:one mathematician,one Lean expert and agent use human intent review,inline hints,priorities,type conversions and blueprint edits. >8,000 lines andā‰ˆ70 new objects are output size,not a human-effort reduction estimate. No human-only control,total token count or complete task-time accounting is reported. LLM informal verification and discussion are fallible search guidance. Three agreeing checks by the same model family are not independent formal certificates. Lean diagnoses formal acceptance;human review is still needed when the agent changes mathematical assumptions or theorem statements. Tool ablations couple informal proving and discussion;the reported triples do not isolate each tool’s causal contribution. AppendixD separately claims A5/B6 fail without discussion,but supplies no corresponding numeric table,budget or repeated-run data. Invocation frequency alone cannot establish necessity. Base-model ablation has Opus6/6,DeepSeekV3.2 3/6,KimiK2 zero shown successes on six problems. Openness/interchangeability is an architectural claim;published tools still rely on proprietary Claude/Gemini components in best configuration. No Rust/Verus/TLA+ or distributed-system verification evaluation.
    • how much was read: most of it read
    • source; notes: ## Numina-Lean-Agent (2026)
    • record id: numina-lean-agent-2026
  • Open-Source LLM-Driven Formal Verification: A Multi-Agent Pipeline for RTL Repair (2026)
    • what: An LLM pipeline fixes a bug in a small hardware design (RTL). A solver checks each fix and returns a counterexample trace when it fails; the trace goes back to the LLM until the fix is proved for all reachable states by k-induction (a proof that a property holds at every step, built from a base case and an inductive step).
    • number: 6 hardware benchmarks, 5 runs each, GPT-4o, temperature 0, at most 10 iterations
    • number: alu repaired in 5/5 runs, 2 iterations, 16.5 +/- 3.0 s
    • number: counter, arbiter, axi_lite_slave, uart_tx: 0/5 each; fifo: 0/3 valid runs (2 excluded for API quota)
    • number: failing runs always hit the 10-iteration cap
    • limits: Six small modules, one hand-injected bug each, one model; the author calls it a feasibility study. Properties are bug-checking assertions written by the LLM from a natural-language spec, with no check that they capture the spec.
    • how much was read: most of it read
    • source; notes: ## RTL repair with open-source formal tools (2026)
    • record id: open-source-llm-driven-2026
  • OProver (2026)
    • title: OProver: A Unified Framework for Agentic Formal Theorem Proving
    • what: A Lean 4 prover that retries failed proofs using similar verified proofs and the compiler’s error text, and is trained on those retry traces. It also releases OProofs, a corpus of Lean statements, verified proofs and repair traces.
    • number: OProver-32B Pass@32: MiniF2F 93.3, ProverBench 58.2, PutnamBench 11.3, MathOlympiad 22.8, ProofNet 33.2
    • number: removing compiler feedback and retrieval drops PutnamBench for the 32B model from 11.3 to 5.9
    • number: corpus: 1.77M statements, 6.86M verified proofs, 164K trajectories with repair (the body text elsewhere says about 1.5M and 5.0M)
    • number: MiniF2F Pass@32 rises across training rounds: 8B 79.5 to 91.8, 32B 84.7 to 93.3
    • limits: Math theorems only, with statements given; the paper has no separate limitations section. Baselines are run under their own protocols and some numbers are copied from other papers.
    • how much was read: most of it read
    • source; notes: OProver (2026)
    • record id: oprover-2026
  • OSVBench (2026)
    • title: OSVBench: Benchmarking LLMs on Specification Generation Tasks for Operating System Verification
    • what: A benchmark in which an LLM writes a Python/Z3 specification of a syscall from a description. The spec is scored by whether it detects the same injected errors in code variants as the reference spec does. Declaration specs stay fixed.
    • number: 245 tasks from 49 system calls, 5 variants each (1 correct, 4 with injected bugs)
    • number: 12 LLMs; best pass@1 55.10% (Doubao-1.5-pro); five zero-shot models score zero
    • number: five-example prompts use 20,000-30,000 tokens
    • number: 245 tasks from 49 system calls (each: one correct and four vulnerable variants)
    • limits: It covers functional and safety properties only, with no liveness. The LLM is given a description, assumptions and an abstract kernel model.
    • how much was read: most of it read
    • source; notes: OSVBench: executable specifications with a fixed external oracle; notes: OSVBench: executable specifications with a fixed external oracle
    • record id: osvbench-2026
  • PaxosLease Revisited: A Checked Model of Diskless Distributed Leases (2026)
    • what: It has bounded checking in TLA+/TLC, six TLAPS arithmetic lemmas, and Python witnesses for the PaxosLease diskless lease protocol, with three acceptor changes. LLMs produced much of the artifacts, under line-by-line human review.
    • number: Table 1 traces of 27, 36, 18, 36, 43 states
    • number: Table 2: 491,037 base states, 37,425,056 crash/restart, 76,749,192 at quarantine; completed runs 2,179,760,458 and 2,411,951,538 states
    • number: two larger searches stopped without violation at 3.86 and 4.46 billion states
    • number: more than 40 hours on a 4-core Xeon, 64 GB
    • limits: It covers safety only, with at most two proposers, three acceptors and three ballots. It does not show that the C++ code refines the model. The shipped binaries were not run. Searches that were stopped are not exhaustive. Fingerprint collisions qualify the largest runs.
    • how much was read: most of it read
    • source; notes: PaxosLease Revisited: A Checked Model of Diskless Distributed Leases
    • record id: paxoslease-revisited-a-checked-2026
  • PLSemanticsBench (2026)
    • title: LLMs Lean on Priors, Not Programming Language Semantics (PLSemanticsBench)
    • what: A benchmark that tests whether LLMs follow explicitly given semantics of small imperative programs when the meanings of operators are changed. Models predict final states, rules or execution traces.
    • number: 162 human-adapted, 165 model-translated, 165 fuzzer-generated programs; median sizes 19, 106, 794 lines
    • number: 11 frontier LLMs; standard final-state accuracy about 90%, drops of 40-60 points under semantic changes
    • number: full-trace accuracy nonzero for only four models, best just 35%
    • number: 11 frontier LLMs; final-state accuracy about 90% on standard semantics, drops of up to 40–60 points under changes
    • limits: It uses one-shot prompting, not proof search with compiler feedback. It is not an upper bound for agents with tools.
    • how much was read: most of it read
    • source; notes: LLMs Lean on Priors, Not Programming Language Semantics (PLSemanticsBe; notes: LLMs Lean on Priors, Not Programming Language Semantics (PLSemanticsBe
    • record id: plsemanticsbench-2026
  • ProbGuard (2026)
    • title: ProbGuard: Proactive Runtime Monitoring for LLM Agent Safety via Probabilistic Prediction
    • what: ProbGuard learns a finite Markov model from recorded agent executions. It uses PRISM to predict unsafe states. It warns or halts when the predicted risk passes a threshold the user sets.
    • number: 30 traces per scenario, below the theorem’s bounds
    • number: household: no monitor 40.63% unsafe, 59.38% completion; reflection 14.07% unsafe, 47.74% completion
    • number: 80.4% is relative retention of baseline completion
    • number: early warning up to 38.66 s; zero-false-positive threshold max 15.84 s
    • limits: The statistical theorem holds only with enough samples, which the experiments lack. It assumes the Markov property. The driving tests use Apollo software, not an LLM.
    • how much was read: most of it read
    • source; notes: ProbGuard: Proactive Runtime Monitoring for LLM Agent Safety via Proba
    • record id: probguard-2026
  • Proof-based coverage (2026)
    • title: From Execution to Necessity: Proof-Based Metrics for Code Coverage (Short Paper)
    • what: Introduces proof-based coverage: translate a C program with an assertion to SSA and an SMT formula, extract an unsatisfiable core proving the assertion, and map core constraints back to source statements. Proof line coverage measures statements necessary for validity rather than merely executed. Defines Trace(P) and Proof(P), line coverage LC(P)=|Trace(P)|/|N(P)| and proof line coverage PrLC(P,T)=|Proof(P)|/|N(P)|. The prototype translates a restricted loop-free C subset to SSA/SMT and marks a minimal unsat core. The paper adds non-trace conditions using undefined-variable metadata, states Lemma 1 and Theorem 1 that proof statements share one execution trace, and derives PrLC≤LC. A Siemens TCAS experiment found lines repeatedly execution-covered but never proof-covered; replacing the relevant if with result=0 left all tests outputs unchanged.
    • number: TCAS source about 75 lines
    • number: about 500 TCAS test cases
    • number: fan example LC=11/15ā‰ˆ0.69
    • limits: Integer arithmetic approximates machine arithmetic; language subset omits loops and translation details. Minimal unsat cores are assumed and the solver is assumed deterministic despite generally returning non-minimal/multiple cores. Current encoding does not model short-circuit evaluation (sound but coverage may change), and scaling to larger datasets may be problematic. Theorem 1/PrLC≤LC rely on added non-trace conditions.
    • how much was read: most of it read
    • record id: proof-based-coverage-2026
  • Proofs Promptly (2026)
    • title: Proofs Promptly: An Experience Report on Proof-Oriented Programming with AI Agents
    • what: The report uses Copilot CLI with Opus 4.5, with skills, subagents and a REPL. It writes Pulse/F* separation-logic proofs of concurrent locks and semaphores, the MSQuic receive buffer, and a port of the OCaml garbage collector.
    • number: Table 1 p. 3: 1 week/583, 2 weeks/3,392 total (notes’ addition)
    • number: Six-month manual estimate is the authors’ estimate, not a controlled comparison
    • number: manual proof-engineering cost estimated at roughly half a year
    • number: three experts, two weeks, versus about half a year manually (authors’ estimate)
    • limits: Experts review the specs and supply the invariants that decide the proof. It has no theorem about distributed fairness or eventual progress.
    • how much was read: most of it read
    • source; notes: Proof-oriented programming at Microsoft; notes: papers
    • record id: proofs-promptly-2026
  • Re:Form (2026)
    • title: Re:Form: Reducing Human Annotations in Scalable Formal Software Verification with RL in LLMs: A Preliminary Study on Dafny
    • what: It trains models with supervised data and reinforcement learning to write Dafny annotations. It adds a reward that checks two things: the generated contract accepts every input the reference accepts, and it promises at least the reference’s outputs. This stops reward gaming with weak specs.
    • number: 20,000-program collection, 3,000 supervised and 4,500 RL examples, 512 in-domain and 300 DafnyComp tests
    • number: 14B RL verification 14.0% vs SFT 8.3%
    • number: out-of-domain spec-superiority 0.077 vs 0.047
    • number: 14B training: 64 GPUs for about 36 hours
    • limits: The references are themselves autoformalized, so the implication does not certify fidelity to human intent. Mostly sequential functions.
    • how much was read: most of it read
    • source; notes: Re:Form: Reducing Human Annotations in Scalable Formal Software Verifi
    • record id: re-form-2026
  • Reality Is the Final Verifier: On Two Key Gaps in Agentic Software Engineering (2026)
    • what: Argues that verification stops short in two places. The written requirements may not match what the stakeholder wants (the requirement gap). The model used to evaluate code may not match the real environment (the model gap). Proposes an inner loop, which revises code against the requirements, the environment model and the evaluator. Proposes an outer loop, which uses observations from deployment to revise those inputs.
    • number: no new theorem, experiment, or implementation proof; Table 2 incidents are cited from other reports
    • number: No measured completion rate or human-hours; Table 2 incidents are cited from other reports
    • limits: A proposed architecture. No measured rate of autonomous completion and no human-hours result.
    • how much was read: most of it read
    • source; notes: Reality Is the Final Verifier: On Two Key Gaps in Agentic Software Eng; notes: Reality Is the Final Verifier: On Two Key Gaps in Agentic Software Eng
    • record id: reality-is-the-final-2026
  • RFC2TLA+ (2026)
    • title: RFC2TLA+: Extracting and Verifying Formal Models from RFC Documents using Continuous LLM Feedback
    • what: An LLM agent with 22 tools extracts communicating state machines and invariants from an RFC and emits TLA+. It refines the result using TLC counterexamples, for up to three rounds.
    • number: 14 real RFCs; all get a TLC-accepted model in best-of-three
    • number: correct models pass 36/42 runs; injected faults found 69/84 (33/42 deadlocks, 36/42 invariant violations)
    • number: synthetic RFCs 16/18
    • number: avg 710 TLA+ lines (262-1,944); state F1 0.97, transition F1 0.61 vs 0.49/0.21 for RFC2PSM
    • limits: It uses TLC models checked within bounds, not code. Deadlock detection is weaker than liveness checking. The agent may change invariants, so a passing run does not show fidelity. No wall time or manual effort is reported. The artifact record is restricted.
    • how much was read: most of it read
    • source; notes: RFC2TLA+: extract both a model and invariants from a supplied RFC; notes: RFC2TLA+: extract both a model and invariants from a supplied RFC
    • record id: rfc2tla-2026
  • RLVR-DafnyBench (2026)
    • title: RLVR-DafnyBench repository
    • what: RLVR-DafnyBench is a Docker/uv pipeline for reinforcement learning from verifier rewards on DafnyBench, with scripts for data download, training, evaluation and tests.
    • limits: README describes a pipeline; no training or evaluation was rerun.
    • how much was read: most of it read
    • source
    • record id: rlvr-dafnybench-2026
  • Scimitar proof decomposition (2026)
    • title: Interactive Safety Verification of Distributed Protocols by Inductive Proof Decomposition
    • what: Introduces inductive proof decomposition and the Scimitar tool for interactively constructing compositional safety proofs. An inductive proof graph decomposes lemmas by protocol actions; counterexample traces are localized and variable slicing hides irrelevant state. Scimitar combines TLC and Apalache to generate counterexamples to inductive proof obligations and TLAPS to validate final proof graphs. The user works backward from a target property, adding support edges and local lemmas; static slicing presents only variables relevant to each node. Five TLA+ protocols were proved, including industrial-scale AsyncRaft with asynchronous messaging and fine-grained local state. The authors report the first invariant effort at that Raft complexity and inspect proof-graph structure as a correctness insight.
    • number: 5 protocol specifications
    • number: AsyncRaft: 12 variables, 11 actions, 638 spec LOC/920 proof LOC, 39 lemmas, median slice 5 variables (0.42)
    • number: AsyncRaft inductive invariant developed in approximately 3 human-weeks
    • number: Other reported proof-development burdens: 1–2 human-months for smaller invariants
    • limits: TLC/Apalache counterexamples use finite parameter bounds and do not themselves prove arbitrary-size invariants; TLAPS validation is required for the final proof. Human guidance remains necessary to add lemmas and edges. Evaluation is on five TLA+ specifications and one implementation; generality to other formalisms is untested. AsyncRaft development took human effort despite automation.
    • how much was read: most of it read
    • source; notes: Scimitar: distinguish the final interactive paper from an older automa; notes: Full live Scimitar configuration inventory (not an evaluated success l
    • record id: scimitar-proof-decomposition-2026
  • Scope (2026)
    • title: Detecting Inconsistencies in Arm CCA’s Formally Verified Specification
    • what: Translates the Arm Realm Management Monitor spec into a Verus model checked by an SMT solver. It cross-checks different descriptions of the same behavior (conditions, effects, state diagrams, dependencies). It needs no reference implementation.
    • number: 35 previously unknown bugs, all confirmed by Arm (of 38 candidates)
    • number: 61.90% precision on one evaluated version/subset; do not mix with the 35 count
    • number: about 11 months of effort, chiefly tool implementation
    • limits: Consistency does not mean the spec is adequate: an omission shared by every view is missed. It also misses properties that are stated nowhere else. Its bit and byte semantics are incomplete, and uninterpreted functions cause false alarms. It has no benchmark for liveness over time.
    • how much was read: most of it read
    • source; notes: Specification errors and auditing; notes: Scope; notes: Appendix B: Concrete systems and theorem scope
    • record id: scope-2026
  • Seeking Specifications: The Case for Neuro-Symbolic Specification Synthesis (2026)
    • what: DeepSeek-R1 generates ACSL function contracts for C code. Optionally it also uses PathCrawler tests or Frama-C EVA alarms. The researchers check whether the contracts recover the intent, rather than preserve a recognized bug.
    • number: Table 1 bug recognition: Basic 47/60, Famous 9/30, Anonymized Basic 50/60, Anonymized Famous 14/30
    • number: 50 programs, four variants, three generations each; 55 PathCrawler examples
    • limits: The study is qualitative. It has no end-to-end correctness proof of the generated contracts. By default the contracts encode the code, not the inferred intent. Figures 6 and 7 print the same contract despite opposite captions.
    • how much was read: most of it read
    • source; notes: Seeking Specifications: The Case for Neuro-Symbolic Specification Synt
    • record id: seeking-specifications-the-case-2026
  • SHADOWBENCH (2026)
    • title: SHADOWBENCH: Toward Reliable Automatic Evaluation of Semantic Alignment in Autoformalization
    • what: ShadowBench has 178 math problems. Humans repaired Lean ā€˜shadow’ statements, which let Lean check implication in both directions between a generated statement and the reference. This scores semantic alignment without a human reviewing each output.
    • number: 178 problems, eight areas
    • number: about 10 minutes of human construction per problem; 85% initial-draft coverage
    • number: strongest configuration compilation/soft/full alignment 61.8 / 18.3 / 11.2
    • number: agreement with experts 0.988, precision 1.000, recall 0.930
    • limits: It covers mathematics, not software. Completeness depends on a trusted interpretation. Adapter failures give false negatives.
    • how much was read: most of it read
    • source; notes: SHADOWBENCH: Toward Reliable Automatic Evaluation of Semantic Alignmen
    • record id: shadowbench-2026
  • SL-VC and SPLIT (2026)
    • title: SL-VC: A Benchmark and Automated Framework for Separation Logic Verification Condition Proving
    • what: Introduces SL-VC, 289 separation-logic verification conditions from textbook data structures and real C system code, and SPLIT, an LLM-friendly Rocq tactic library plus two-stage spatial/pure proof workflow. SPLIT decomposes mixed entailments into spatial elimination and independent pure goals, using explicit tactics such as split_pure_spatial, cancel, sep_apply and pure_solve with verifier-driven repair. The benchmark includes linked lists, merge sort, trees, LiteOS circular lists and mini-gmp; the full 288-VC evaluation and 207-VC core subset separate benchmark construction from prover comparisons. CoqHammer is evaluated as an alternative pure-stage solver, and failures concentrate in arithmetic-heavy mini-gmp and recurrence-like goals.
    • number: 289 VCs total; 288 evaluation and 207 core subset
    • number: SPLIT 66.0% at k=10 and 14.2% at k=0 on full set
    • number: human-friendly baseline 43.4% at k=10 and 4.5% at k=0
    • number: core subset SPLIT 73.4% at k=10 versus PALM 14.0% and Rango 7.7%
    • limits: Programs and annotations come from QCP and are selected to make self-contained VCs; difficult algorithmic/refinement and complex data invariants are outside the benchmark. SPLIT depends on goals admitting spatial/pure decomposition and on the Rocq/QCP tactic/lemma library. Pass rates measure verified scripts under finite repair budgets, not complete verification of whole C systems.
    • how much was read: most of it read
    • record id: sl-vc-and-split-2026
  • Software is infrastructure: failures, successes, costs, and the case for formal verification (2026)
    • what: A chapter for teaching and policy. It collects secondary industrial reports on the costs of software failures and the benefits of formal verification (Philips ASD, 4SECURail, Dassault, AWS, CCF).
    • number: Philips ASD: four-fold better quality, three-fold productivity
    • number: 4SECURail projected benefit/cost 5.05
    • number: Frama-C handled 85% of assertions on about 50 KLOC blocks at Dassault; a person-month saved per release
    • number: six subtle bugs found binding CCF C++ traces to TLA+
    • limits: The reports are heterogeneous and secondary. There is no common benchmark or controlled estimate. It proves no new theorem.
    • how much was read: most of it read
    • source; notes: Software is infrastructure: failures, successes, costs, and the case f
    • record id: software-is-infrastructure-failures-2026
  • SoK consensus (2026)
    • title: Systematization of Knowledge: Formal Verification of Consensus Protocols
    • what: A survey that sorts consensus verification into model checking, deductive proofs, code proofs and hybrids.
    • number: over 20 verified consensus protocols
    • number: only about 30% of surveyed works address liveness
    • number: Matrix covers 20+ protocols in abstract and over 30 in conclusion
    • number: Only ā‰ˆ30% of surveyed works address liveness (§5)
    • limits: It gives no search date range and no count of how many papers were considered, so the reported fraction is not an unbiased census. Table 1 entries need checking against the cited papers.
    • how much was read: most of it read
    • source; notes: Systematization of Knowledge: Formal Verification of Consensus Protoco
    • record id: sok-consensus-2026
  • Spec-Harness (formerly VeriAct) (2026)
    • title: VeriAct / Spec-Harness: Beyond Verifiability — Agentic Synthesis of Correct and Complete Formal Specifications
    • what: # Spec-Harness: Assessing and Guiding LLM-Synthesized Formal Specifications Beyond Verifiability (authored by agents unless marked šŸ§‘) Md Rakib Hossain Misu, Cristina V. Lopes, Iris Ma, Yuangang Li and Shuvendu Lahiri, arXiv 2604.00280v3, 9 October 2026. This empirical study separates verifier acceptance from how well a generated contract describes behavior, then supplies four test-based scores to specification-writing agents. It reports stronger postconditions on held-out tests, with extra time and sometimes fewer verified tasks. These are finite empirical adequacy results, not proofs that generated contracts capture every intended behavior (Q0,Q14,Q17). ## Reading and evidence Read all 22 pages, sections 1–9, data availability and all 49 reference entries. Inspected all six figures, five tables and eleven numbered equations; viewed individual renders of pages 4–18. Official and inventory PDFs are byte-identical. No appendix appears. Reference entries were read but their papers were not recursively followed. The placeholder journal header is not treated as an identified peer-reviewed publication. The paper links Mondego/vACT. Inspected its metadata, complete nontruncated tree and fifteen acquired text/code blobs at commit 5b158553a05c38c39b3a029e38a99b020eb203c6, dated 29 June 2026. Four READMEs and the small configuration file were read completely; source-scope.json lists selected code ranges. The repository README describes the earlier title ā€œVeriAct: Beyond Verifiability – Agentic Synthesis of Correct and Complete Formal Specificationsā€ (C0). The pinned source predates the October paper and differs materially from its method. No experiment results were reproduced or independently attributed to this commit. No author code was executed/imported, no compiler/verifier/solver was run and no serialized benchmark, model or experiment was loaded. ## What the method measures The motivating changeCase contract restricts inputs to A through z and promises only an uppercase-range result for lowercase inputs. It excludes legitimate punctuation inputs and leaves the exact output underconstrained. The desired repairs go in opposite directions: weaken the precondition and strengthen the postcondition. The original, empty and exact specifications get reported mutation completeness rates of 0.36, 0.09 and 0.94. Of 33 code mutants, two are equivalent; some failures arise from a range check rather than the contract. A single mutation-kill score therefore neither isolates the defective clause nor proves that every failed verification detected a wrong output (Q1). Spec-Harness instead checks small harness programs with fixed inputs and outputs. Let ψ be the precondition and φ the postcondition. Postcondition checks use Ļˆā‡’Ļ†, with each JML specification case guarded by its own precondition. Precondition checks additionally include implicit non-null requirements from the stated verifier configuration. This guard makes a rejected valid input vacuously pass the postcondition check; the separate precondition metric is essential (Q7–Q9). PostCorr is the fraction of decided valid input/output checks satisfying Ļˆā‡’Ļ†. PostComp is the fraction of decided mutated-output checks satisfying ¬(Ļˆā‡’Ļ†), requiring both an admitted input and a rejected wrong output. PreCorr is the fraction of decided normally returning inputs admitted by the effective precondition. PreComp is the fraction of decided failing inputs rejected by it. Thus true postconditions can have perfect PostCorr and zero PostComp; false preconditions can have perfect PostCorr/PreComp but fail PreCorr/PostComp. These are complementary finite-test scores, not universal correctness/completeness theorems (Q7–Q9; reader examples). For each concrete check, the paper describes two parallel proof obligations, one for the predicate and one for its negation. Neither proving within 300 seconds makes the check undecided and removes it from the within-specification denominator. With contracted helpers, exactly one must prove; this guards against inconsistent helper assumptions proving both. The verdict is a proof about the generated stub under its encoding and verifier assumptions. It is not a proof about all inputs to the original method (Q7). For benchmark aggregation, a specification must also verify against the original method. Missing postconditions and changed code receive zero on all four metrics and remain in aggregate denominators. Pure helpers, annotations and braces around a single statement are permitted edits. A failed synthesis or a metric with no decided checks does not reach any positive threshold. PreComp denominators include only tasks with known failing inputs. PostHarness@Ļ„ is the fraction of all synthesis attempts whose PostCorr and PostComp both reach Ļ„; it is distinct from the conditional share among only verified outputs (Q11). Input generation combines EvoSuite, parameter boundaries and inputs killing additional Major code mutants. The unchanged reference implementation/test driver labels normal returns as valid and exceptions/timeouts as candidate invalid inputs. Pools of at least 100 pairs are divided into disjoint feedback/evaluation lists, ranked by added branch and mutation coverage; five evaluation pairs are scored. Up to five deterministic output perturbations are intended, all different from the reference output. This assumes the reference behavior is an adequate oracle. A reference bug or a permissible alternative outcome is not ruled out merely by matching one recorded execution (Q10; reader oracle qualification). The first five pairs reportedly cover 98.7%/97.9% of branches and kill 89.1%/89.3% of Major mutants on SpecGenBench/FormalBench, versus 96.7%/92.3% and 81.3%/76.9% for shipped examples. Evaluation-side invalid inputs average 3.4/5.6 per task; 55/146 tasks have none. Array3d is excluded for unparsable output. High coverage of selected branch/mutant sets does not establish adequacy over untested behavior (Q10). ## Experiments and reported findings RQ1 compares Houdini, Daikon and eleven prompt configurations of SpecGen, AutoSpec and FormalBench using six models. The datasets have 120 SpecGenBench methods and 662 filtered FormalBench methods, drawn from 700 after excluding void/Object cases. Class/method names are normalized to Solution/solve. This evaluates reconstructing behavior from implementation, not formalizing independent natural-language intent. Void methods can in general have meaningful heap postconditions; excluding them limits this result rather than establishing that such contracts cannot be evaluated (Q2; reader qualification). The six models are GPT-4o (2024-08-06), Gemini 2.0 Flash, Claude Sonnet 4.6, Qwen2.5-Coder-32B, DeepSeek-Coder-33B and CodeLlama-34B. Prompt runs use temperature 0.7, up to ten SpecGen/AutoSpec refinement rounds versus three for FormalBench. There are 132 prompt/model/benchmark configurations plus four classical runs. OpenJML 21-0.21, Java 21.0.4, cvc4, non-null defaults, quiet arithmetic failures and a 300-second limit are stated. Sixty-four outputs with internal errors are excluded despite a verified indication (Q2,Q3). Table 2 reports Houdini verifying 113/120 and 443/662 tasks, Daikon 34/120 and 159/662. Best prompt-based results are SpecGen 82/120 (68.3%), FormalBench prompts 249/662 (37.6%); AutoSpec’s FormalBench best in this table is 200/662 (30.2%). Figure 3 nevertheless prints 0.39 for AutoSpec zero-shot/Qwen on FormalBench. Section 5.8 explains that configuration verifies 255 unannotated outputs (38.5%) and Figure 5 selects the best configuration among outputs containing JML. Table 2’s ā€œBestā€ heading and RQ1 prose do not clearly state that same exclusion. Preserve these distinct selection rules instead of reporting 30.2% as the unrestricted maximum (Q3,Q4,Q14; reader cross-reference). Across 14,936 verified outputs, 3,395 (22.7%) lack postconditions, 1,888 lack JML entirely, 840 (5.6%) change code and 657 alter the method body. The union of no-postcondition/changed-code outputs is 3,839 (25.7%), so categories overlap; summing their percentages would double-count. Table 2’s full per-approach counts and Figure 3’s two heatmaps are retained in numeric-evidence.json (Q3,Q4). RQ2 uses GEPA/DSPy with GPT-4o as generator and reflection model, a medium budget and a stratified FormalBench split of 101/50/511 train/validation/test methods. Two SpecGenBench few-shot examples are removed from its 118-task evaluation. The numeric reward is 1 for verification, 0.3 for one verification error without syntax errors, 0.1 for multiple verification errors and zero for syntax errors/empty output; classified feedback also guides revision (Q5). Table 3’s seed→optimized rates are: zero-shot 39.83→46.61% on SpecGenBench and 17.81→18.59% on FormalBench; few-shot chain-of-thought 46.61→44.07% and 19.18→19.77%; least-to-most unchanged at 45.76%/19.96%. No optimized prompt beats the best seed on either dataset. This finite experiment does not prove an inherent ceiling for verifier feedback, other optimizers, models or budgets (Q6; reader inference boundary). RQ3 scores 14,934 verified specifications after excluding two Array3d outputs. It does not reevaluate optimized prompts. Only 65.2% reach PostCorr≄0.75, 40.1% reach PostComp≄0.75 and 35.6% reach both; these percentages condition on verified outputs. Eighteen-point-nine percent have perfect PostCorr but PostComp below 0.25. Houdini’s aggregate PostHarness@0.75 falls to about 2%/0%; 90.7% of its verified outputs with postconditions reject every valid tested input. Daikon often accepts observed outputs without discriminating wrong ones: 45.6% have perfect PostCorr and PostComp<0.25. Among verified prompt outputs, FormalBench prompts reach both thresholds on 64.4%/42.1%, versus SpecGen 44.0%/28.9% and AutoSpec 41.1%/25.3% (Q13,Q14). The instrument is imperfect. On 360 sampled specifications, five versus twelve evaluation pairs change threshold attainment by 2.1/1.6 percentage points on average and at most 5.6 points. The authors treat differences up to roughly six points as measurement resolution. Two blinded senior PhD raters assess 100 specifications and 64 individual checks. Before discussion, Īŗ is 0.93 for completeness, 0.75 for adequacy and 0.94 for individual checks. Against consensus, PreCorr/PreComp Īŗ are 0.72/0.70 and PostComp’s completeness correlation is ρ=0.64. PostHarness@0.75 agrees on adequacy for only 67/100 specifications (Q12). On the 55 of those 100 specifications for which FormalBench CR is defined, CR correlates with human completeness more strongly than PostComp (ρ=0.72 versus 0.45). Only 27% of CR detections are postcondition rejections, versus 32% timeouts and 40% other verification failures; rounded percentages sum to 99%. The study supports more interpretable clause feedback, not uniformly superior correlation with expert judgment (Q12). RQ4 runs Claude Code 2.1.284/Sonnet 4.6, Codex 0.159.2/gpt-6.1-sol and VeriAct/gpt-6.1-sol at medium reasoning effort. Each gets ten tool calls, with or without the harness, on 120 tasks from each benchmark. Final evaluation uses disjoint held-out pairs and requires verification, a postcondition and unchanged code. Each agent runs once per task. The 12 agent/condition/benchmark combinations imply 1,440 task sessions; the paper’s 720 sessions receiving harness feedback are the six with-harness combinations (Q15–Q18; reader accounting). PostHarness@0.75 increases on SpecGenBench from 0.52→0.62 for Claude Code, 0.60→0.75 for Codex and 0.57→0.63 for VeriAct. On FormalBench-120 it goes 0.23→0.28, 0.25→0.41 and 0.25→0.28. Exact McNemar tests find significance for Codex on both datasets and Claude Code on SpecGenBench (p≤0.005), but not the other three comparisons (p=0.18–0.45). Small gains also sit near the instrument’s stated resolution; significance on the sampled task labels does not remove uncertainty about broader adequacy (Q12,Q17; reader qualification). Verification can worsen: Claude Code drops 0.86→0.74 and 0.68→0.45, Codex 0.88→0.88 and 0.74→0.69, VeriAct 0.90→0.88 and 0.87→0.68. Thirty-seven Claude Code tasks meet the harness target without verifying. Harness runs use 1.3–2.3 harness calls per task and take 1.4–2.2 times as long. Table 5 preserves all thresholds and precondition scores; at threshold1, VeriAct on FormalBench-120 drops 0.24→0.23. Neither universal improvement on every metric nor a free speedup follows (Q17). ## Static artifact comparison The acquired June source implements an earlier scorer. The following are explicit differences from the October description, not evidence that the reported October experiments used this source (C0–C9). The selected runner classifies generic warning/verification-failure/error text as FAIL. Pair evaluation credits FAIL as a killed output or rejected input, using one obligation rather than a proof of the negated predicate. Aggregation divides by all recorded details, retaining unknown checks; no exactly-one-of-two-helper-proof gate appears in these paths. The earlier standalone SpecHarness class behaves similarly. These paths cannot independently substantiate the later paper’s ā€œevery verdict is a proofā€ implementation claim (C1,C2,C6,C9). The selected scalar mutator does not remove unchanged outputs: for an integer result0 its printed candidate list is [1,āˆ’1,2,āˆ’2,0]. String/float/map cases can likewise retain unchanged values or duplicates; arrays explicitly filter them. An exact contract for the correct result cannot reject that unchanged value. This differs from the paper’s ā€œno mutant equalsā€ requirement; it is a direct static counterexample, not an observed run (C3,Q8). The earlier input generator labels null, empty, singleton and āˆ’1 variants invalid without running the reference to confirm failure in this function. The selected evaluate_problem calls that generator directly. A negative integer need not be invalid, for example for absolute value. This differs from the paper’s confirmed-failure test construction; the final October labeling pipeline was not acquired or verified (C4,C6,Q9,Q10). The selected post/pre stubs declare nullable_by_default, while the command also supplies nonnull-by-default. That source does not straightforwardly establish the October effective-precondition account. Precondition stubs include and call the submitted annotated code, so they are not the stated body-free predicate stubs. These are encoding differences; no OpenJML interpretation or diagnostic was replayed (C5,C1,Q7). In the inspected external-agent CLI paths, verify sends the submitted code to OpenJML and harness reads its annotations; neither compares it with the original body. submit derives its passed flag from saved harness scores, without requiring a successful verification of the final code or binding those scores to its content. The scaffold writes the same five visible pairs into tests/ and task.json; a separate held-out split is not implemented in that path. Other offline selection/scoring could impose the paper’s rules, but it was not audited or established here (C7,C8,Q11,Q15–Q17). The verifier wrapper also defaults to 180 seconds rather than the paper’s 300-second configuration. The standalone scorer/agent scorer use different defaults, and READMEs describe earlier model/tool setups. Pin, version and actual experiment configuration must therefore remain separate. All fifteen blob identities are verified against the pinned Git tree; that proves which bytes were read, not that they generated the paper’s measurements (C0,C10). ## Limits and relevance The paper excludes frame conditions and exceptional postconditions, cannot express in-place array updates in the stubs, and acknowledges overflow/rounding and small-output-domain limitations. Its finite pairs, chosen mutants, reference implementation, verifier semantics and helper contracts bound every score. Removing undecided checks prevents treating solver failure as falsity but can change which cases/specifications contribute; a high decided-case score should be reported with decided coverage. A contradiction in assumptions can also make individual stub proofs vacuous unless excluded. These are reasons to retain the score components and coverage rather than treat them as a correctness certificate (Q7–Q12,Q18; reader qualification). This paper directly informs evaluation of LLM-generated specifications: code preservation, vacuity, separate input/output obligations, failure versus refutation, held-out feedback and verification/adequacy/cost tradeoffs. Its study is Java/JML, not distributed-protocol, TLA+ or Verus verification. Verus/Rust and Frama-C ports are proposed future work. For distributed proof agents, analogous checks would require protocol execution oracles, message/schedule coverage and relational safety/liveness properties; transferring the four method-contract scores unchanged is a reader proposal, not a demonstrated result (Q19,Q20).
    • number: v2 uses thresholds such as PostCorr >= 0.75 and PostComp >= 0.75 (operational choice)
    • number: 120 SpecGenBench methods and 662 FormalBench methods
    • number: SpecGen falls from 54% verifier acceptance to 24% meaningfully verified on SpecGenBench (§5.4)
    • number: three refinement cycles; improvement of 5 points on SpecGenBench and 12 on FormalBench (§6.1)
    • limits: Finitebehavioraladequacy;referenceoracle/verifier/encoding/testselection;singlerun;coverageandunknownverdicts;JuneartifactnotestablishedOctexperimentrevision
    • how much was read: most of it read
    • source; notes: Generated contracts and independent evaluation; notes: Spec-Harness, formerly VeriAct
    • record id: spec-harness-formerly-veriact-2026
  • SpecCoder (2026)
    • title: Teaching Code LLMs to Reason with Intermediate Formal Specifications
    • what: Fine-tunes code LLMs to insert runnable assertions at internal program points (not just final postconditions), keeping only assertions that hold on correct runs and fail on buggy mutants. Also releases HumanExec, 150 Codeforces tasks with real buggy submissions.
    • number: prompted Qwen2.5-Coder-32B: 0.8989 syntax validity, 0.6313 correctness, 0.2604 completeness (Table I)
    • number: after SpecCoder, Qwen2.5-Coder-14B inline completeness 0.1989 to 0.7713 and validity 1.0000 (Table II)
    • number: average inline completeness over three model sizes 0.2112 to 0.7459
    • number: HumanExec: 150 tasks, 48-279 tests each (mean 79.53)
    • limits: Sequential, single-run Python programs from competitive programming; no distributed or concurrent systems and no proofs, only assertions checked on test runs. Completeness is measured against available faulty runs, not all possible bugs; training data came from a teacher LLM plus test-suite filtering.
    • how much was read: most of it read
    • source; notes: ## SpecCoder and HumanExec (2026)
    • record id: speccoder-2026
  • SpecLoop (2026)
    • title: SpecLoop: An Agentic RTL-to-Specification Framework with Formal Verification Feedback Loop
    • what: Generates natural-language RTL specifications, reconstructs RTL from them, and uses formal equivalence counterexamples to iteratively refine specifications. The verifier separates compilation, reconstruction and equivalence errors; pass/fail-only and full-diagnosis loops are compared with single-round generation. Feedback is withheld from the reconstructor to avoid leaking original RTL semantics. VerilogEval and RTLLM benchmarks are scored by RTL Reconstruction (RR), making specifications operationally testable.
    • number: Verified specs have RR=1 ratios 81.3–91%; unverified 34.6–45% across settings
    • number: Verification loop ranks first in 4/12 (pass/fail) and 9/12 (full diagnosis) settings vs single round
    • number: Qualitative reset case corrected after equivalence counterexample
    • limits: End-to-end results depend on reconstructor quality, FEC resource bounds and heuristic feedback parsing. RR uses testbenches in addition to formal equivalence and may not capture all semantics. The method stops on invalid original RTL or exhausted retries.
    • how much was read: most of it read
    • source; notes: SpecLoop
    • record id: specloop-2026
  • SpecSyn (2026)
    • title: SpecSyn: LLM-based Synthesis and Refinement of Formal Specifications for Real-world Program Verification
    • what: SpecSyn combines top-down AST/dependency decomposition and sketch planning with bottom-up ACSL generation, verifier-guided repair, and variant-discrimination refinement. Semantic-non-equivalent mutations test whether candidate specifications reject changed programs; undistinguished variants are fed back for stronger specifications. Tarjan SCCs produce dependency-respecting segments, and depth-first postorder handles nested POIs such as loop invariants and function postconditions. At each POI, Frama-C/WP verifies generated candidates, returns errors for repair, and deduplicates accepted specifications. Variant discriminative rate measures the fraction of 188 mutation operators (35 equivalent operators removed; GCC -O2 TCE filters equivalents) rejected by the specification set. Experiments use 50 real-world C programs, seven verification benchmarks totaling 1,421 targets, three LLMs, and 17 trained reviewers.
    • number: GPT-5 SpecSyn average precision 96.68%, recall 75.91% across 14 repositories
    • number: SpecSyn verifies 1,022/1,421 targets vs Codex 883, Preguss 510, AutoSpec 259
    • number: Ablating decomposition lowers precision/recall by 19.39/15.72 points; refinement by 11.39/12.66; sketch by 2.05/5.34
    • number: 17 reviewers rated SpecSyn 3.78 (understanding) and 4.07 (semantic accuracy) out of 5
    • limits: Semantic strength is operationalized by a finite mutation set and may miss behaviors not exercised by mutations. Precision/recall use manually authored ground truth, which may omit valid alternative specifications; Frama-C/WP and Z3 incompleteness can reject correct statements. The method is computationally expensive, with hundreds of verifier calls per file, and benchmark scale is 50 programs with potential leakage from prior X509 data. ACSL-compatible deterministic C functions are selected, excluding many OS-dependent functions.
    • how much was read: most of it read
    • source
    • record id: specsyn-2026
  • Specula (2026)
    • title: Specula: Scaling formal specifications for autonomous model checking of system code
    • what: Specula writes TLA+ models and properties from system source code. It checks observed traces against the model and repairs disagreements. It then model checks for violations and tries to reproduce each one in the real code.
    • number: 48 open-source systems; 249 reproduced bugs; 89 reported to maintainers; 68 confirmed and 24 fixed in that subset
    • number: only 0.90% of generated properties are liveness; 99.10% safety
    • number: 200 bugs via model checking, 49 during code reading/modeling
    • number: median 3.69 hours and 57 per system across 48 systems (§5.3) - limits: Model checking plus reproduction gives concrete failures, not proofs for all executions. Its coverage of liveness is weak. The results pool several versions, and only 14 systems used the latest version. - how much was read: most of it read - source; notes: Specula: close the model–code loop before calling a violation a bug - record id: `specula-2026` - StarVerus (2026) - title: StarVerus: LLM-Powered Multi-Agent Collaboration for Industrial Rust Code Verification Automation - what: A multi-agent system that writes contracts and proofs. It uses call-graph context, contract alignment, planning, repair and rewriting. It was applied to six Asterinas memory components. - number: 112 of 163 verification conditions (68.7%); only memory-region initialization reaches 100%, others 44.00%-79.41% - number: Mutated-code pass rate 7.56% (Table 8) - number: mutant admission 7.56% (Table 8) - limits: There is no theorem for the whole OS. The obligations covered are partial. - how much was read: most of it read - source; notes: Repository retrieval and multi-function verification; notes: SpecGen and StarVerus: human and model judges need an adequacy audit - record id: `starverus-2026` - Stepwise (2026) - title: Neuro-Symbolic Proof Generation for Scaling Systems Software Verification (earlier title "Stepwise") - what: Stepwise uses fine-tuned small models to propose and rank individual Isabelle steps. They work inside a tree search over proof states, with premise selection, QuickCheck/Nitpick filtering and Sledgehammer. A REPL checks each step. - number: Table 1 p. 8: Mistral 77.6% vs Sledgehammer 40.3%, rerun FVEL 7.8%, rerun Selene 5.6% - number: 2,167 successful proofs; solved proofs cover 36.2% of original proof lines - number: 120-minute search budget; 71.1% claimed human-effort saving is a simulation - number: 77.6% total on seL4 vs Hammer 40.3%, Selene 5.6%, FVEL 7.8% - limits: Its denominator differs from FVEL's splits. Longer proofs still fail. - how much was read: most of it read - source; notes: seL4: from whole-proof guessing to proof-state search - record id: `stepwise-2026` - Supporting Stakeholder Requirements Expression with LLM Revisions: An Empirical Evaluation (2026) - what: Participants wrote requirements and rated LLM-generated revisions for completeness, clarity and alignment. - number: 26 participants produced 130 requirement statements - limits: Perceived completeness is not formal completeness. A fluent revision may change a requirement without anyone noticing. - how much was read: most of it read - source; notes: Clarification and stakeholder requirements - record id: `supporting-stakeholder-requirements-expression-2026` - Survey of Consensus Protocol's Formal Verification (2026) - what: This is a 42-page survey of formal verification of consensus protocols. It has tables of papers, targets, properties, tools and experimental parameters. - number: Tables 3-6 collect papers - limits: Some explanations are too broad, for example 'SMT is NP-complete' and 'probabilistic checking abandons complete search'. Use the primary studies. The survey states no search protocol. - how much was read: most of it read - source; notes: Survey of Consensus Protocol’s Formal Verification - record id: `survey-of-consensus-protocol-2026` - SysMoBench (2026) - title: SysMoBench: Evaluating AI on Formally Modeling Complex Real-World Systems - what: A benchmark of eleven concurrent and distributed systems. An AI writes a TLA+ model of each. The model is scored on syntax, execution, behavioral match to the code, and expected properties. - number: source sizes from 175 lines (PGo dqueue) to 5,360 (ZooKeeper leader election) - number: Etcd Raft with basic Sonnet agent: 7.69% conformance, 69.23% invariant correctness, 100% syntax - number: liveness properties violated 41.9% vs safety 8.3% (§5, Figure 4c) - number: each agent run five times, best output evaluated, at most three repairs - limits: Covers only the finite executions and configurations supplied. A model can match buggy code and still fail the desired guarantee. The evaluator uses an LLM for some mappings. - how much was read: most of it read - source; notes: SysMoBench - record id: `sysmobench-2026` - SysSpec / SpecFS (2026) - title: Sharpen the Spec, Cut the Code: A Case for Generative File System with SysSpec - what: Humans write structured specs for 45 modules, with pre/postconditions, invariants and locking. Agents generate C code, and an LLM reviews it. The result is SpecFS, an in-memory FUSE file system. - number: about 4,300 C lines, 45 modules - number: 754 xfstests, 64 fail from unsupported features - number: Gemini-2.5-Pro and DeepSeek-V3.1 reach 100% module accuracy vs 81.8% best baseline - number: extent support 4.5 vs 1.5 hours; directory rename 13 vs 2.4 hours (manual vs SysSpec) - limits: The verification stage is an LLM, not a theorem prover. The evidence of correctness is tests and inspection. Crash consistency is out of scope. The timings cover specific tasks only. - how much was read: most of it read - source; notes: SysSpec / SpecFS: sharp human specifications, empirical code checking; notes: SysSpec / SpecFS: sharp human specifications, empirical code checking - record id: `sysspec-specfs-2026` - TESTDAFNY110 (2026) - title: Automatic Generation of Formal Specification and Verification Annotations Using LLMs and Test Oracles - what: # Whole-paper read: Automatic Generation of Formal Specification and Verification Annotations Using LLMs and Test Oracles (authored by agents unless marked šŸ§‘) JoĆ£o Pascoal Faria, Emanuel Trigo, Vinicius Honorato, Rui Abreu. arXiv 2601.12845v1, 19 January 2026, 37 pages. The title-page footnote says ā€œPreprint. Intended for submission to Science of Computer Programming.ā€ Treat this as a preprint; the inspected version supplies no acceptance claim. [Q1, Q2] The paper measures LLM generation of annotations for existing conventional Dafny programs: pre/postconditions, loop invariants, auxiliary predicates/functions, and assertions/lemmas. Its principal result is empirical: a Claude Opus 4.5/GPT-5.2 combination with verifier feedback solves 108/110 benchmark programs. It supplies a benchmark, prompts, repair/minimization workflow and IDE assistant. It does not prove that test-derived contracts completely express natural-language intent. The most useful contribution to evaluating proof agents is the distinction between a verifying program and an adequate contract. [Q3, Q20, Q30, Q46] ## What is checked The input retains implementation code, natural-language comments and outcome-checking test assertions while stripping formal annotations and helpers. Dafny 4.11.0 checks generated/postprocessed outputs with a one-minute timeout. Calls inside tests use the method contract and ignore its body: ā€œThese static test cases therefore act as specification-level oracles.ā€ Thus a weak postcondition may allow the implementation to verify yet fail the caller’s assertion. For a tested input x and acceptable-output assertion R(y), §8.2 spells out P(x) ∧ āˆ€y.(Q(x, y) ⇒ R(y)). This constrains that input and permitted outputs under the generated contract. It does not establish correctness of a contract on untested inputs. Verification also depends on Dafny’s translation, SMT reasoning, trusted semantics and any retained/provided helper definitions. No new verifier-soundness theorem is given. [Q12, Q13, Q4, Q46] The direct and repair prompts were designed iteratively, with generic patterns and recurring fixes; no separate held-out prompt-design evaluation is described. Prompts prohibit implementation changes, unproved assume statements, decreases* and removal of test assertions. Postprocessing repairs formatting/placement issues such as misplaced invariants. These are guardrails, not a demonstrated enforcement theorem: §6.5 says ā€œgenerated solutions should be manually inspected.ā€ In the inspected generator acceptance path, success follows verification; I found no mechanical comparison enforcing unchanged original implementation there. That is a limited static observation, not evidence that a reported solution cheated. [Q8, Q9, Q37, Q51, Q59] ## Dataset and experimental protocol TESTDAFNY110 combines 85 refined loop-based MBPP-DFY programs, 15 LOOPINV100 academic/numerical/search/sort examples, and 10 new programs intended to reduce prior exposure. Selection excludes duplicates and cases solved trivially without loops. Table 1 totals 2505 original LOC, 1211 annotation LOC and 188 proof-helper annotations across 110 programs; 56% of programs require helpers. All eight category rows are transcribed in numeric-evidence.json. This is a collection of small-to-moderate algorithmic exercises, not a distributed implementation benchmark. [Q5, Q6, Q7, Q8] Direct prompting makes up to 5 independent attempts, stopping at success. Repair starts with a direct attempt and allows up to 9 feedback repairs, 10 attempts total. Models are Claude Opus 4.5 (claude-opus-4-5-20251101), GPT-5.2 (gpt-5.2-2025-12-11, reasoning none/low), DeepSeek-V3.2 chat and GPT-4 (gpt-4-0613). Claude is tried at temperatures 0.5 and 0; DeepSeek/GPT-4 at 0.5; the paper describes GPT-5.2 as fixed T=1. The multimodel method runs Claude T=0.5 and GPT-5.2 low in parallel each round, choosing syntax validity, verification, fewer LOC, then shorter verification time. Consequently one multimodel attempt can entail two API calls. pass@k/repair@k mean the empirical percentage of these 110 problems solved within the specified budget; no combinatorial pass@k estimator is used. [Q12, Q13, Q14, Q15] The experiments ran on an Intel Core Ultra 7 258V @2.20 GHz, 8 cores, 32 GB, Windows 11 Pro. Table 2 gives average cost/time per API call and extra program LOC among successful attempts. These are not task-total cost or end-to-end latency. There are no reported confidence intervals or repeated complete-dataset evaluations. The initial success rates differ between direct and repair runs; the strategies also have unequal budgets, so their difference is not a paired causal estimate of feedback alone. [Q16, Q17, Q12, Q13] ## Measured results Section 6.1 says the multimodel approach solved ā€œ98.2% of the problems within at most 8 attempts (repair@8)ā€. This is 108/110; the abstract instead calls them 8 repair iterations. I use the body’s attempts, which include the initial generation. The two failures are FastModularExponentiation and PrimeFactorization, with 4 and 10 manual lemmas. The downloaded manual files contain those corresponding lemma sets; the latter file is named PrimeFactors.dfy. No independent replay was performed. [Q20, Q18, Q70, Q71] All 14 Table 2 rows are retained. At budgets 5/10, the multimodel repair rates are 94.5%/98.2%, versus 57.3% for direct@5. Claude T=0.5 repair reaches 90.0%/96.4%; GPT-5.2 low 75.5%/89.1%; GPT-5.2 none 60.0%/70.0%; DeepSeek 62.7%/69.1%; GPT-4 30.9%/34.5%. Multimodel repair averages 7.86 US cents and 28.5 s per API call; Claude T=0.5 averages 4.41 cents and 15.8 s. DeepSeek is cheapest at 0.07 cents/call; GPT-5.2 none’s repair response time is 9.1 s. These are author-reported run prices/times, not current provider quotations. Table 2 labels the averages per API call; multimodel costs approximately sum the constituent entries, so whether its unit is a provider call or combined round remains unclear. No task-total cost is inferred. [Q17, Q22, Q15] Repair outputs have 63.2% more total program LOC than manual counterparts. Minimization removes 58% of annotation LOC and reduces total-program overhead to 10.6%, averaging 1.4 s/line removed. Those percentages use different denominators. It greedily tries generated-segment deletions subject to verification, using source alignment and dependency information; it does not establish a globally minimum proof. Appendix B uses 10 s for deletion checks; the current downloaded implementation instead starts at 5 s and adaptively caps at 30 s. Keep snapshot defaults separate from original experiment settings. Main verifier tasks average 9.7 s, or 1.9 s excluding timeouts. [Q21, Q52, Q53, Q65, Q64, Q66] Figure 6 pools all generation attempts, including failed repair rounds. For example, multimodel outcomes are 37% success, 32% incomplete, 25% potentially incorrect, 6% timeout and 0% syntax error. These are not eventual per-program success rates. ā€œIncompleteā€ means that merging with the manual solution then verifies; the paper acknowledges this heuristic can undercount incomplete outputs. ā€œPotentially incorrectā€ denotes remaining verification failure, not a demonstrated semantic bug. All five plotted distributions are preserved, including rounding. [Q24, Q25] ## Contract quality and concrete tests The manual contract comparison is separate from the headline solve rate. It covers all 110 programs: 108 selected first verified solutions after minimization, plus the first Claude output for each of the 2 unsolved cases. Authors judge 106/110 (96.4%) logically equivalent to expert pre/postconditions. No independent equivalence prover or inter-rater assessment is described. The four mismatches are one stronger postcondition and three weaker preconditions, all compatible with the implementation. Table 3’s nine category counts and their distinct denominators are preserved. [Q30, Q33] BinarySearch’s found/missing/duplicate tests require a result of 1 or 2 on [1, 4, 4, 6] when searching 4. Individual duplicate indices and an unsorted input appear as expected-failure tests. LinearSearch makes the central adequacy issue concrete. Clauses a+b permit results belowāˆ’1; adding c sets āˆ’1≤index<length and makes the positive tests provable. Adding d requires the first occurrence, stronger than the natural-language request for an occurrence. The positive assertion k==0||k==3 cannot reject that stronger contract. An expected-nonprovable assert k==0 can expose it. MaxDistEqual illustrates the opposite: the intended input is nonempty, but the implementation safely handles empty arrays and generated preconditions omit that restriction. CountDistinct illustrates a different quality dimension: a recursive count mirroring the loop is less declarative than set cardinality despite expressing the same result. [Q10, Q32, Q33, Q31, Q67, Q72, Q73] After manual discovery of the four mismatches, authors add expected-failure tests and regenerate successfully for all four using Claude. This followup must not be folded into the original success rate or described as the original positive suites automatically detecting every intent mismatch. Negative tests are checked by uncommenting one at a time and rejecting the candidate if it verifies. Failure to prove such a test is not generally a semantic proof that its assertion is not implied: helpers, incomplete SMT reasoning and timeouts can also cause failure. [Q34, Q58] A further manual inspection finds 7 of 165 failed Claude repair attempts where method bodies verify but tests fail from weak/missing postconditions. This establishes useful detections in a selected failure sample. It is not a controlled ablation of test oracles and does not measure a general defect-detection rate. [Q35] ## Regression and contamination claims A logistic model uses original LOC, annotation LOC, proof-helper count and configuration intercepts over 1540 program/configuration pairs. Authors report βL=āˆ’0.0735, βA=āˆ’0.0475, βH=āˆ’0.5825, all Wald p<0.001, pooled AUC=0.907 and per-configuration AUC=0.80–1.00. These are conditional associations with predictors in different raw units. They do not measure causal helper difficulty or establish generalization. The saved analysis script fits on long and predicts on the same long data before computing both AUC summaries. Thus these are in-sample discrimination measures, despite §6.3’s phrase ā€œgeneralizes across models.ā€ [Q26, Q28, Q29, Q27, Q60, Q62, Q63] Each program appears 14 times; the paper does not describe correction for this dependence. The current artifact does contain program-clustered standard-error code and a random-intercept exploratory fit. I did not run it or inspect statistical outputs, so cannot establish whether the paper’s significance claims survive that correction. The script’s mixedlm call is a general linear mixed model, not logistic mixed regression. [Q61] Adding subdataset indicators gives χ²(2)=0.79, p=0.67, AUC 0.907→0.908. Authors interpret this and older GPT-4’s 29.1% versus GPT-5.2 none’s 36.4% direct@5 as evidence of low contamination risk. The inference remains uncertain: a nonsignificant dataset factor with only 10 new problems cannot prove absence of exposure, while model capability and age change along with possible exposure. No copying was observed in the authors’ manual comparison, but that is not a training-data audit. [Q29, Q23, Q39, Q5] ## IDE and user study The assistant adds pre/postcondition and invariant commands with diagnostic feedback, retries and provider fallback. Downloaded command/prompt sources corroborate that workflow; they are a current snapshot, not established as the original study build. Seven master’s students with six weeks’ Dafny experience perform six tasks: Catalan numbers, primality, recursive minimum, heap checking, selection sort and reversal. Groups of 4 and 3 use opposite tool/manual assignments, with 15 minutes per task and one hour overall. Authors report 85.7% versus 42.1% success, 6.2 versus 11.1 minutes, and SUS 74.6/100. [Q40, Q41, Q74, Q75, Q42, Q43] These are small-sample descriptive results without confidence intervals or significance tests. The assignments imply 21 tasks per condition, but 42.1% cannot equal an integer success count out of 21 rounded to one decimal. The study artifact’s questionnaire offers Did not try, Partial and Hybrid responses and time bins, so exclusions or a different denominator may explain it; neither the inspected protocol nor questionnaire specifies the aggregate denominator or averaging rule. Do not infer 8/19 as fact or call the reported rate erroneous. Time censoring, completion population and tool-versus-hybrid classification remain unclear. [Q42, Q43, Q76] ## Contribution to this collection This is direct evidence for LLM agents writing specifications and proof annotations in Dafny, with explicit repair budgets, mechanically checked test assertions, proof-helper failures and proof minimization. It supplies concrete cases where verification succeeds under an intent-mismatched contract and separates empirical verification from manual adequacy judgments. These are useful evaluation lessons for future Verus/verified-Rust or distributed-system proof agents, but that transfer is my inference. The paper has no Verus, Rust, TLA+ or distributed-system experiment. Related-work comparisons, including 87.5% pass@5 versus 100% repair@6 on 64 overlapping tasks, change models, budgets and helper permissions; they are attributed comparisons, not controlled superiority experiments. The claim of loop invariants for all 110 programs also differs from full annotation success for 108. [Q3, Q30, Q47, Q44, Q48, Q49] ## Read and source scope Read all 37 pages, §§1–9, acknowledgments, AI declaration, both Appendix A prompts, Appendix B algorithm and 37 references. Inspected 37 page renders/19 contact sheets, including 11 figures and 3 tables. Read primary artifact sources statically at the scope recorded in source-scope.json, including all manual examples above, the entire regression script and study-artifact text; larger generator/minimizer/IDE files were inspected in selected ranges. Downloads are pinned by blob/tree identities and hashes with fetch dates. The current snapshot is not asserted to be the exact experiment checkout. No author code, compiler, checker, prover or solver was executed; no experiment spreadsheets, serialized results or models were loaded. Exact literal excerpts with section, page, line and character anchors are in quotes.json and combined.quote-source.txt. Reader deductions and author measurements remain separate in reader-diagnostics.json and numeric-evidence.json. - number: 98.2% of problems within at most 8 attempts - number: 106 of 110 (96.4%) logically equivalent to expert specs - number: seven-student crossover study: 85.7% vs 42.1% success, 6.2 vs 11.1 minutes (the notes call these assisted/manual success and average task minutes) - number: 98.2% on 110 Dafny programs within 8 repair iterations - limits: Existing conventional Dafny implementations, natural-language comments, chosen static positive/negative tests, Dafny 4.11.0, SMT reasoning, helpers and timeouts. Fixed 110 algorithmic programs; modular tests constrain selected inputs, not globally complete intent. Manual equivalence judgment, in-sample AUC and unclear user-study denominators. No distributed/Verus/Rust/TLA+ experiment. - how much was read: most of it read - source; notes: Automatic Generation of Formal Specification and Verification Annotati - record id: `testdafny110-2026` - The Verifier Tax (2026) - title: The Verifier Tax: Horizon Dependent Safety Success Tradeoffs in Tool Using LLM Agents - what: The paper runs tau-bench experiments with an LLM verifier prompt that checks the steps of the planner and the actor. It reports that safety checks cut safe success sharply, while raising token use. - number: 2,970 episodes, three runs, GPT-OSS-20B and GLM-4-9B - number: GPT-OSS-20B retail Triad-Safety success 21.5 ± 2.7%, safe success 0.6 ± 0.5% - number: tokens 2.0-2.8x - limits: The verification is an LLM judgment, so it is not sound. After three failed revisions the last proposal is accepted by default, so the causal story is weak. There is no artifact. - how much was read: most of it read - source; notes: The Verifier Tax: Horizon Dependent Safety Success Tradeoffs in Tool U - record id: `the-verifier-tax-2026` - TLA+-Bench (2026) - title: TLA+-Bench: An Execution-Grounded Benchmark and Dataset for Natural-Language to TLA+ Specification Generation - what: TLA-Bench has TLA+ specs, each with a model-checker config and English descriptions. A model reads the description and writes a spec. TLC (the TLA+ model checker) runs it against the reference config. A pass means the spec parses and no listed property is violated. - number: 403 model-checked gold and 897 parse-only silver specs from 13 public repositories - number: on one fixed set of 300 outputs the correct rate moves from 10.0% to 1.7% depending on grading choices; 18.7% to 1.7% if the model is told the config's names - number: best model is correct 16% of the time by default and 26% given the interface names; open models at most 1%; best model parses 87% - number: 12 of 30 passes meet the non-vacuity bar, so the plain correct rate overstates capability about 2.5 times - limits: The descriptions are written by a model, not by practitioners. Composition and refinement are under-represented. The paper makes no claim that controls for contamination. A pass is exact only relative to the reference config. It does not prove that the spec reproduces the reference behavior. The notes' later pass says the benchmark creators wrote the descriptions and the grading oracle. - how much was read: most of it read - source; notes: TLA+-Bench - record id: `tla-bench-2026` - TLA+ Examples repository (2026) - what: This repository is a corpus of TLA+ specifications and models, with CI and metadata indicating beginner examples, PlusCal variants and TLC, Apalache or TLAPS use. Its README also labels models that intentionally fail on deadlock, safety, liveness or assumptions. - number: at commit 6a7b26a: 81 case directories, 424 modules, 233 model configurations, 73 modules with proof metadata - limits: Repository metadata and CI status can change; this pass did not run every model. - how much was read: most of it read - source - record id: `tla-examples-repository-2026` - TLA-Prover (2026) - title: TLA-Prover: Verifiable TLA+ Specification Synthesis via Preference-Optimized Low-Rank Adaptation - what: It trains gpt-oss-20b with a small adapter, first supervised and then learning from repairs of rejected specs. The model writes TLA+ specs, which TLC grades. The top Diamond tier adds sensitivity to a mutation of an invariant. - number: 9/30 pass@1 (30%) greedy; 11/30 best-of-eight; 13/30 union - number: TLC: usually three processes, 60-second budget - number: baseline: 25 models on 26 specifications, 650 runs per cell, 8.6% (not matched) - number: Baseline 8.6% TLC model-check; TLA-Prover 9/30=30% Gold and Diamond - limits: Success means a small model passes its own invariant. It does not mean agreement with a human requirement or a system. The text says six domains, but Table 3 lists ten. There is no refinement or liveness proof. The result was not reproduced. - how much was read: most of it read - source; notes: paper; notes: meaning for evaluation - record id: `tla-prover-2026` - TLA-Prover benchmark (2026) - title: TLA-Prover repository benchmark documentation - what: This repository documents a harness for checking whether LLMs produce and repair TLA+ that pass SANY and non-vacuous TLC. Its README freezes corpus/holdout gates and reports audited model results, including false passes caused by weakened or deleted properties. - number: 206 specs in the corpus; 30-spec holdout - number: Post-audit model-only repair 166/206; W4-diamond-gold post-prompt-fix 16/30 pass@32 - limits: Repository status is dated and reports were not rerun; results are self-reported in repository artifacts. - how much was read: most of it read - source - record id: `tla-prover-benchmark-2026` - TLA-Verus (2026) - title: TLA-Verus: Generating and Solving Temporal Proof Obligations with LLM Agents - what: This work translates existing TLA+ models into Verus temporal proof tasks. The translator is either an algorithm or an LLM writer plus reviewer. It builds on Anvil's temporal logic library, and agents prove the tasks. Checks freeze the task and reject new assumptions or admissions (unproved claims accepted as true). - number: 16,459 model/property pairs attempted - number: algorithmic: 5,160 usable translations, 3,094 proofs (304 liveness) - number: agentic: 12,352 usable translations, 492 proofs in a 500-task sample - number: evaluation: 40 paired tasks, ten per category, 32 models from 24 repositories - limits: Showing that the implementation refines the model is future work, so a model proof is not a proof about Rust behavior. An LLM reviews whether the translation is faithful, and this is not proved. The dataset and pipeline are unreleased. The runs were not repeated. A Raft-style model was safe only because it could not make progress. - how much was read: most of it read - source; notes: closest related work; notes: reported results and populations - record id: `tla-verus-2026` - TLAi+Bench (2026) - title: TLAi+Bench repository - what: TLAi+Bench evaluates LLMs on natural-language-to-TLA+ puzzles and real-world scenarios with reference specifications and GenAIScript generation/verification utilities. - number: Nine named puzzle categories/files are listed in the README; six gold reference modules are shown. - limits: The current repository emphasizes puzzles and examples; repository status and task coverage can change. - how much was read: most of it read - source - record id: `tlai-bench-2026` - TLAPS-Bench (2026) - title: TLAPS-Bench repository - what: TLAPS-Bench asks AI agents to prove invariants of TLA+ protocol/system specifications in a sandboxed runtime. Its current problem set includes ZooKeeper, etcd and HashiCorp Raft, MongoDB transactions and other protocols. - number: Current problem set: 9 specs and 57 invariants - number: Retired/next lists include Byzantine Paxos, broadcast, Paxos, 2PC, termination detection and WAL protocols. - number: 9 specs and 56 proof targets (FLASH 15, ZooKeeper 9, etcd Raft 8, HashiCorp Raft 6, others) - limits: The README says retired proofs are available by contact and current runs focus on a few hard tasks; no agent run was reproduced. - how much was read: most of it read - source - record id: `tlaps-bench-2026` - Toward Safe LLM Agents: A Survey of Specification, Verification, and Enforcement (2026) - what: A survey of 38 studies on specifying, verifying and enforcing safety for LLM agents. It distinguishes model checking of an extracted model from runtime enforcement on actual actions. - number: 38 studies from six databases - number: headline 24% to 35% concerns PDDL planning formalization only - number: 94% interception with under 5% safe completion comes from one study - number: single reviewer - limits: Focuses on safety. No new measurement. Certainty is mostly Low or Very Low. Its broad claims about limits should be audited. - how much was read: most of it read - source; notes: Toward Safe LLM Agents: A Survey of Specification, Verification, and E - record id: `toward-safe-llm-agents-2026` - Traceable and Verifiable Software Requirements: A Synthesis of AI-Enabled Formal Methods (2026) - what: A survey plus an experience report. The authors ran Frama-C (RTE, EVA, WP with several solvers) and PathCrawler on C functions to see what automation gives for requirements. - number: tutorial experiment 36 programs; five-program subset goals proved 6/6, 5/7, 6/8, 4/8, 13/13 - number: triangle classification: 20 goals, Alt-Ergo/CVC5 prove 15, Z3/CVC4 prove 13 - number: fifty base programs (150 instances) vs Table 4 files 52+60+53=165 - number: PathCrawler succeeds on 4 of 20 files, then 15 of 20 after adaptation; quicksort: 11 cases from 110 paths, 99 infeasible - limits: The accounting in Table 4 conflicts with the prose. The ResearchGate version is unreadable. An oracle was unavailable. No LLM starts from a vague request. - how much was read: most of it read - source; notes: AI-Enabled Formal Methods for Verifiable Software Requirements: A Surv - record id: `traceable-and-verifiable-software-2026` - TraceFix (2026) - title: TraceFix: Repairing Agent Coordination Protocols with TLA+ Counterexamples - what: Claude Opus 4.6 turns a task description into a topology of agents, locks and channels. It writes PlusCal for each agent, runs TLC, and repairs from failures. The checked processes become runtime prompts. - number: 48 of 48 tasks reach TLC verification; 30/48 pass first try; hard tasks 4/16 first try - number: 29 repair attempts: 20 deadlocks, 5 timeouts, 3 syntax errors, 1 undrained channel - number: Mean about 594 s and about 4.33 per task
    • number: 48 tasks, 16 scenario families, all fully TLC-verified; 62.5% first attempt; none over four repairs
    • limits: Progress is not checked. Repairs for timeouts can reduce fidelity. The runtime monitor checks the topology, not the order of steps. A bounded model-checking pass does not prove that real agents terminate.
    • how much was read: most of it read
    • source; notes: TraceFix: generated PlusCal coordination protocols, with important lim
    • record id: tracefix-2026
  • Transition Invariants Revisited: Termination Witnesses and Their Validation (2026)
    • what: Extends the standard machine-readable proof format that program verifiers hand to each other so it can carry termination proofs. The proof is a transition invariant: a relation between any earlier and later state of a run that must decrease in a well-founded way. Three checkers re-validate such proofs independently of the tool that made them.
    • number: Evaluated on all SV-Benchmarks programs expected to terminate, 900 s CPU and 15 GB per run
    • number: Witnesses validated by at least one validator: CPAchecker 366 of 422 (87%), CPAchecker-TransVer 192 of 200 (96%), UAutomizer-TransVer 375 of 389 (96%), Goblint-TransVer 176 of 286 (62%)
    • number: Validators solved about 40 programs that CPAchecker’s own verification mode could not, using other tools’ witnesses
    • number: Validation often faster than verification (Wilcoxon p = 2.1e-10 and 1.1e-13 for the two CPAchecker validators on ranking-function witnesses)
    • limits: Termination of sequential C programs only; the authors say ā€œWe do not consider other reasons for non-termination, such as deadlocks.ā€ One reduction route needs finite state spaces and TransVer has limited support for arrays and structs. Witnesses with many invariants (Goblint) often could not be validated within limits. Not about fairness or liveness of concurrent or distributed systems.
    • how much was read: most of it read
    • source; notes: Transition invariants as termination witnesses (2026)
    • record id: transition-invariants-revisited-termination-2026
  • TrojanSpec-Bench (2026)
    • title: TrojanSpec-Bench: An Adversarial Benchmark for LLM-Based Formal Specification Elicitation
    • what: Treats the LLM that turns English requirements into a formal spec as a possible attacker. Builds 1,024 cases in Dafny, Lean 4 and Verus where a spec is subtly wrong yet still accepted by the verifier together with a bad implementation, then tests six detectors for such specs.
    • number: 1,024 admitted cases of 1,798 generated (57.0%): Dafny 319, Lean 4 417, Verus 288
    • number: four attack types admitted: implementation leak 377/450, vacuity 348/450, domain restriction 187/450, predicate swap 112/448
    • number: detector asking an LLM four yes/no questions and flagging when at least 2 fail: F1 0.967, false-positive rate 0.068, recall 1.000
    • number: single LLM-judge vote baseline: F1 0.871, false-positive rate 0.297
    • limits: Same model family (Claude Sonnet 4.6) generates most trojans and judges them; the LLM detector was not tested against adaptive attackers; ā€˜honest’ labels come from the verifier, not from humans; attack mix reflects the generator, not real-world frequency.
    • how much was read: most of it read
    • source; notes: TrojanSpec-Bench (2026)
    • record id: trojanspec-bench-2026
  • Unit proofs study (2026)
    • title: Do Unit Proofs Work? An Empirical Study of Compositional Bounded Model Checking for Memory Safety Verification
    • what: Studies a systematic bottom-up method for compositional CBMC unit proofs. Analysts iteratively build harnesses, ensure termination, increase coverage, and refine models of unknown variables/functions from error traces; objective completeness requires graceful termination, full reachable-line coverage, and resolution of every memory-safety violation. The study selects 73 functional units from 89 known defects across FreeRTOS, Zephyr, Contiki-ng and RIOT. Initial harnesses set loop bounds to one; coverage gaps trigger larger bounds or allocation limits, while error traces drive minimal preconditions and function models. The blind construction protocol separates defect identification from proof writing. Analyses quantify model types, loop bounds, development/execution cost, comparison with engineer-authored FreeRTOS proofs, and generalizability to larger functions.
    • number: 66/89 known defects (74%) exposed systematically; +8 (9%) after interventions; 15 (17%) not exposed
    • number: 19 new defects: 12 out-of-bound reads, 5 out-of-bound writes, one null dereference, one arithmetic underflow
    • number: Mean proof 20 LOC, 5 variable models and 2 function models; median development 72 min, execution 25 s
    • number: Average development 82 min and execution 61 s; 87.67% execute under 60 s
    • limits: CBMC bounded proofs only cover modeled scopes and chosen loop/data bounds; fixed or overly restrictive models can hide defects. The bottom-up angelic-modeling strategy may miss bugs when preconditions are too strong, and 15/89 known defects were not exposed. Authors note proof writers knew units were defective, and results study one unit-proof operationalization on four embedded OSes. Findings do not establish unbounded memory safety or generalize to other BMC tools.
    • how much was read: most of it read
    • record id: unit-proofs-study-2026
  • Validating Formal Specifications with LLM-generated Test Cases (2026)
    • what: GPT-5 generates positive and negative Alloy instances from English requirements, before the requirement is formalized. Expert formulas label the instances. The authors test whether the instances expose wrong student specifications.
    • number: Table 3: Few prompt, 258 tests, 255 syntax-valid, 252 previous-consistent, 247 valid (96%), 3.56); one-shot 205 (79%); zero-shot 118 (46%)
    • number: By model: GPT-5 96%, Gemini 81%, Claude 76%, Mini 67%
    • limits: It covers bounded structural models only. Suites are compared only over requirements that have complete valid suites. The persistent failures involve ambiguous English.
    • how much was read: most of it read
    • source; notes: Validating Formal Specifications with LLM-generated Test Cases
    • record id: validating-formal-specifications-with-2026
  • VeriContest (2026)
    • title: VeriContest: A Competitive-Programming Benchmark for Verifiable Code Generation
    • what: A Verus benchmark that scores spec, code and proof separately and end to end. Spec preconditions need proofs of equivalence in both directions. Postconditions are run on valid and invalid pairs. Proof-only mode rejects edits to the AST or contract and uses –no-cheating.
    • number: 946 tasks (690 LeetCode, 256 Codeforces), 91 manual seeds
    • number: median 276 positive and 2,670 negative examples per item
    • number: GPT-5.5: 48.31% spec, 92.18% NL-to-code, 13.95% proof, 5.29% end-to-end
    • number: 946 problems, median 276 positive and 2,670 negative tests each
    • limits: Compatibility with one reference behavior is not general soundness. Negative examples the model generates itself may share its misunderstanding. Manual review is not shown to be blind. Possible contamination and selection bias. Algorithm tasks only, with no infinite distributed executions.
    • how much was read: most of it read
    • source; notes: VeriContest
    • record id: vericontest-2026
  • VERINA (2026)
    • title: VERINA: Benchmarking Verifiable Code Generation
    • what: A Lean benchmark that scores generation of code, spec and proof separately and in combination. It checks specs by trying to prove implications against a reference spec, then falls back to tests. A test pass without a proof returns ā€˜unknown’.
    • number: 189 manually curated Lean problems
    • number: ground-truth proofs for only 46 of 189
    • number: 189 standalone programs
    • limits: Finite tests miss missing constraints. It trusts the reference spec. Tasks are simple and standalone, with no interleavings, fairness or liveness. ā€˜Soundness/completeness’ here means containment between sets of programs, not soundness of the verifier.
    • how much was read: most of it read
    • source; notes: Generated contracts and independent evaluation; notes: VERINA; notes: papers
    • record id: verina-2026
  • VeriSoftBench (2026)
    • title: VeriSoftBench: Repository-Scale Formal Verification Benchmarks for Lean
    • what: Introduces 500 Lean proof obligations drawn from real repositories, evaluating generation-check-repair agents under curated versus full repository context. The pipeline samples Pass@k proof scripts, compiles them with repository toolchains, and repairs failures using compiler errors and proof state. Dependency footprints and nesting depth are measured; large repositories exceeding 200k tokens expose context-window effects. Models include GPT-5.2, Claude Opus-4.5, Gemini-3-Pro, Goedel-Prover and Aristotle.
    • number: Gemini-3-Pro 41.0% curated/34.8% full; Claude 31.2%/23.2%; GPT-5.2 12.6%/10.8%
    • number: Aristotle 69% and Gemini 65% on 100-task compatibility subset
    • number: Large repositories: Gemini 17.6%/10.9%; depth 7+ 21.1%/15.6%
    • number: Average transitive dependencies: 11.2 library and 37.9 project; ~50% depth≄5
    • limits: Success requires compilation within 300 s and depends on repository toolchains, context packaging and repair budgets. Curated context uses ground-truth dependencies, while full context can overwhelm models. Results are Lean-specific and benchmark repositories may overlap model pretraining.
    • how much was read: most of it read
    • record id: verisoftbench-2026
  • VeriSpecGen (2026)
    • title: Intent-aligned Formal Specification Synthesis via Traceable Refinement
    • what: It splits a description into requirements and ties tests and Lean clauses to each one. It repairs only the clauses implicated by a failed test.
    • number: 86.6% pass@1 on Verina’s official harness
    • number: 25 refinement iterations, 60 generated tests per problem
    • number: 86.6% on the Verina SpecGen task with Claude Opus 4.5; up to 31.8 points over baselines
    • number: 343,827 training pairs; training gives 15.6-18.2 points
    • limits: Labels come from a reference implementation that may itself be LLM-written. The LLM judge fallback is only guidance. It has no distributed or liveness tasks.
    • how much was read: most of it read
    • source; notes: Generated contracts and independent evaluation; notes: Intent-aligned Formal Specification Synthesis via Traceable Refinement
    • record id: verispecgen-2026
  • VeriStruct (2026)
    • title: VeriStruct: AI-assisted Automated Verification of Data-Structure Modules in Verus
    • what: Two-stage LLM workflow jointly generates Verus views, type invariants, function contracts and proof/loop annotations for Rust modules with supplied tests. A planner chooses generation modules, candidate sampling selects verified-function progress, and Verus error classes route bounded repair prompts. Code and tests are intended to remain unchanged. [Q1,Q5–Q16] Complete RingBuffer abstraction and invariant example; distinct view-refinement pass; n-sample candidate selection; mode/type/mutability/arithmetic/contract/test repair; interprocedural postcondition strengthening. Complete source evaluation, budget/model confounds, verbatim-only training-overlap claim, contradictory test-origin prose, progress regressions, Bitmap abstraction and printed repair-loop last-check boundary are recorded in ANALYSIS.md. [Q4–Q34] Entire alternate arXiv v4 and its additional AppendixA/Table4 read; all12repair-heuristic rows recorded separately from the publisher chapter. [Q35–Q37]
    • number: 11 modules;129 functions including test functions
    • number: VeriStruct 10 solved modules,128 functions; baseline 4 and 52; Claude Code 8 and 102
    • number: n=3 samples per module;m=5 repair iterations;13 baseline calls/benchmark
    • number: Approximate mean tokens 22 k VeriStruct,24 k Claude Code
    • limits: Proof acceptance is relative to generated annotations and supplied test assertions; semantic adequacy outside those uses is not established. Eleven substantially modified modules; verbatim nonoverlap with the named training snapshot is an author assertion with no check method given. Baseline has 13-call cap; Claude Code uses Sonnet 4.5 rather than o1 and lacks a stated matched cap. Repeated-run count and variance are unreported, so exact once-only execution is not established. Introduction claims LLM test generation while conclusion requires manual tests and calls automated generation future work. Resource algebra synthesis is future work; no distributed protocol or TLA+ verification. [Q1–Q3,Q17,Q20–Q23,Q28–Q29] The baseline ā€œinvokes the LLM once to generate all annotations simultaneously,ā€ whereas VeriStruct requests n samples per module and sets n=3. The paper does not clearly reconcile candidate sampling with its unit of ā€œLLM invocationā€; the13-call cap alone does not establish equal candidate-generation effort. No exact API-call multiplier is inferred [Q8,Q20,Q22].
    • how much was read: most of it read
    • source
    • record id: veristruct-2026
  • Vero (2026)
    • title: Vero: Can AI Agents Build Formally Verified Software Repositories?
    • what: 43 multi-module Lean repositories with supplied APIs and 2,705 specifications. Agents either write code plus proofs, or fill in proofs for given code.
    • number: Codex/GPT-5.5 xhigh: 27/43 joint, 25/43 proof-only
    • number: verified_ironkv: 19/22 joint, 22/22 proof-only
    • number: Audits find contradictory specs and proof/runtime mismatches
    • number: 43 instances
    • limits: The 22 IronKV targets are not the full deployed IronKV proof. implemented_by lets tests run one implementation while the theorem describes another.
    • how much was read: most of it read
    • source; notes: Vero: repository generation, including a limited IronKV instance
    • record id: vero-2026
  • Verus issue 3160 (2026)
    • title: –no-cheating accepts vstd::pervasive::assume(false)
    • what: A Verus issue demonstrates that the --no-cheating option can accept a proof that calls the library’s vstd::pervasive::assume(false), even though the option rejects the built-in assume and admit forms. The issue supplies a minimal Rust reproducer and a zero-error verification transcript.
    • number: Minimal reproducer verifies with 1 verified and 0 errors under Verus rolling version 0.2026.10.11.99d8218
    • limits: This is an open issue report, not a fix or independent audit. The observed behavior is tied to the rolling version and may change.
    • how much was read: most of it read
    • source
    • record id: verus-issue-3160-2026
  • Verus-SpecGym (2026)
  • VeruSyn proof synthesis dataset (2026)
    • title: Reducing the Costs of Proof Synthesis on Rust Systems by Scaling Up a Seed Training Set
    • what: Presents VeruSyn, a self-synthesis, tutorial-guided and agent-trajectory pipeline producing millions of Verus-verified Rust programs and fine-tuning Qwen2.5-Coder-32B-Instruct for lower-cost proof generation. VeruSyn coordinates three data sources: direct self-synthesis of Rust/specification/proof triples, tutorial-based coverage of Verus knowledge points, and successful Claude Sonnet 4.5 trajectories with Verus error repair. Post-processing deduplicates and re-verifies programs; the resulting Part 1 has 6,896,180 programs and Part 2 has 4,557 CoT instances. Evaluation excludes the 289 system tasks used for trajectory synthesis to reduce leakage, tests VerusBench and 560 held-out VeruSAGE tasks, and separates Accuracy@1/100/6/600 with debugging. The paper reports 49% VeruSAGE Accuracy@600 at 39.24/task, while Part 2 helps system proofs but can reduce single-sample algorithmic accuracy.
    • number: 6,896,180 Part-1 programs
    • number: 4,557 Part-2 trajectories
    • number: 150 VerusBench tasks
    • number: 560 held-out VeruSAGE tasks
    • limits: Correctness is whatever the Verus checker accepts; synthetic programs may be repetitive or structurally unlike systems despite tutorial coverage. Agent trajectories use Claude Sonnet 4.5 and the evaluation directly prompts models without coding agents. Three source systems are removed from VeruSAGE evaluation, but other distribution and benchmark effects remain. Tasks exceeding Qwen context are scored zero, and Accuracy@K is a sampling metric rather than proof quality or human readability. The model’s cost comparison depends on contemporaneous token prices and five-round debugging settings.
    • how much was read: most of it read
    • source
    • record id: verusyn-proof-synthesis-dataset-2026
  • Why Agentic Theorem Prover Works: A Statistical Provability Theory of Mathematical Reasoning Models (2026)
    • what: Develops a statistical theory for finite-budget agentic theorem proving. It models verifier-backed proof search as a deterministic finite-horizon reachability MDP and defines statistical provability as the probability that a specified prover reaches a verified proof within a verifier-call budget on a problem distribution. Under a faithful state abstraction, optimal MDP success equals budgeted syntactic provability. For offline depth-wise action-value regression followed by greedy proving, Theorem3.1 bounds the gap to the optimal prover by an occupancy-weighted sum of value-estimation errors; the multiplier is the learned prover’s average truncated proof length. Error terms separate approximation, training-region coverage geometry and Monte Carlo rollout noise, with a faster rate under an action-gap margin condition. Defines full proof states as multisets of open goals so branching remains Markov, deterministic verifier transition F, solved set G, hitting time TG, budgeted value V and average truncated length Len. Assumption3.1 requires compact concentration sets, Lipschitz optimal values and hypothesis classes, local-mass coverage of i.i.d. query pairs, conditionally independent binary rollout labels with mean Q*, and minimax regression. Theorem3.1 gives εt=approximation+covering term+Hoeffding rollout noise and regret 2Ī£ unsolved-mass×ε. A margin condition changes ε to ε^(β+1). Budget allocation balances Nt and mt under total labels nt=Ntmt. Appendices prove deterministic MDP, faithful abstraction, Bellman recursion, greedy regret, covering and uniform regression; truncation adds overflow penalty Ī“W. Appendix C proposes representation selection by Bellman-certificate tightness and a complexity penalty; Appendix D interprets scaling through horizon, effective dimension and margins.
    • number: Main bound: best success probability minus learned prover’s is at most 2 times (worst per-step value error) times the learned prover’s average number of checker calls before success or budget end
    • number: Under an action-gap margin condition the dependence on error improves to a fast rate
    • limits: Faithful abstraction assumes e(FR(r,a))=F(e(r),a) and exact preservation of solved states. The equality between optimal MDP success and syntactic provability follows this assumption; arbitrary learned embeddings need not be faithful. The theory is trace-local. Compact concentration Ct must cover both training queries and learned-prover comparisons, and the candidate region must retain at least one globally optimal action. The paper explicitly says a new prover leaving the occupied region is no longer certified without added coverage assumptions. Binary rollout labels are idealized verifier-backed success labels with conditional mean Q*. The paper says practical-target bias can be absorbed into ε, but the stated theorem assumes exact Q* labels and its approximation term is relative to Q*. Biased targets require an explicit allowance; reader derivation using the supplied minimax proof adds2bt when label means differ uniformly by≤bt. Repeating suboptimal-policy rollouts reduces sampling noise, not this bias. No empirical calibration is supplied. The exact minimax regression optimizer is an idealization. Numerical optimization error ξt can be added, but no practical learner, neural architecture or training algorithm is evaluated. The verifier transition is deterministic, while policy decoding, retrieval and exploration may be random. The theory addresses greedy proving; beam search, backtracking, top-k and decomposition need extra retention/suboptimality assumptions. The finite-horizon result does not remove undecidability, worst-case hardness or unknown proof existence. Statistical provability depends on q0, so a biased library workload can be easy while adversarial or uniform hard instances remain difficult. The effective dimension dt, coverage ct, Lipschitz constants, action-gap tails and occupancy curve are theoretical quantities. The paper proposes estimating them from traces as future work and reports no benchmark measurement. No Verus/Rust/TLA+/distributed-system experiment is supplied. Transfer to systems verification is an inference about replacing proof-state/verifier interfaces, not a measured claim.
    • how much was read: most of it read
    • source; notes: Why Agentic Theorem Prover Works (2026)
    • record id: why-agentic-theorem-prover-2026
  • A Short Survey on Formalising Software Requirements with Large Language Models (2025)
    • what: Summarizes 35 papers on using LLMs to write formal specifications from English requirements, grouped by method and domain. Concludes that helper assertions come out better than whole contracts.
    • number: 35 papers surveyed
    • number: Laurel generates over 50% of needed Dafny helper assertions
    • number: SpecGen: verifiable specs for 279 of 384 programs
    • number: Req2Spec: 71% of 222 Bosch requirements formalized
    • limits: Numbers are reported from the surveyed papers and not re-checked; the survey was selected with the AI tool Elicit and checked by hand. No distributed systems or liveness focus, and its comparisons mix very different tasks.
    • how much was read: most of it read
    • source; notes: ## A short survey on formalising software requirements using LLMs (202
    • record id: a-short-survey-on-2025
  • Agent-C (2025)
    • title: Enforcing Temporal Constraints for LLM Agents
    • what: A small language for rules about the order of an LLM agent’s tool calls, their arguments, and state. Rules are translated to first-order logic and checked with the Z3 solver before each tool call. The paper proves that if every call is accepted, the whole trace obeys the rules.
    • number: retail 115 benign tasks, airline 50, plus 17 adversarial tasks per domain
    • number: GPT-5 utility 66.1% to 70.6% with 100% conformance and 0% harm
    • number: LLM-translated rules on retail Qwen3-8B: 100% conformance, 42.11% utility, same as manual
    • limits: It guarantees safety only relative to the rules it is given. It does not check that the rules capture what the user intended, nor that the task gets done. The survey’s claim that it reports only conformance is misleading.
    • how much was read: most of it read
    • source; notes: Enforcing Temporal Constraints for LLM Agents (Agent-C)
    • record id: agent-c-2025
  • AlphaVerus (2025)
    • title: AlphaVerus: Bootstrapping Formally Verified Code Generation through Self-Improving Translation and Treefinement
    • what: Uses a LLaMA-3.1-70B model to generate complete Verus implementations and proofs by translating Dafny programs, refining failed candidates with verifier-guided Treefinement search, and filtering specification/implementation misalignment with critique and exploit models. Exploration samples 256 translations; Treefinement searches program refinements with REBASE scoring over verified functions, errors and warnings; critique filters assume(false), external/trivial features, mismatched behavior and exploit-generated trivial solutions. The process iterates synthetic (source, target), error-correction and exploit data without fine-tuning. DafnyBench has 562 proof-requiring programs; 247 translated programs, 102 error trajectories and 579 exploit pairs are collected. Downstream tasks require code and proofs from specifications only. Examples include prime/largest-prime-factor, recursive/loop search, refinement of a two-state protocol, duplicate removal and nontrivial sequence lemmas.
    • number: ~45% of DafnyBench translated into Verus programs passing verifier and critique
    • number: 247 translated programs, 102 error trajectories, 579 exploit pairs
    • number: pass@256 HumanEval: exploration 27.1%, +Treefinement 32.9%; MBPP 59.1% and 65.7%
    • number: transfer to GPT-4o: 27.1% few-shot to 37.7% with collection; MBPP proof annotation 75.7% vs SAFE 59.0 and AutoVerus 65.4
    • limits: Specifications are human or source provided and are not formally verified; critique is the unformalized alignment boundary. Verifier success can be gamed by assume(false), degenerate implementations or incomplete specifications, motivating the critique filters. Dafny-to-Verus construct differences and overflow obligations require added bounds in examples. Evaluation is on 78 MBPP functions and 85 split HumanEval functions, with contamination filtering; it does not establish arbitrary Rust or distributed-system correctness. No fine-tuning is used and the method’s performance depends on few-shot exemplars and model/search budgets. Reader inspection, not a verifier rerun: printed Listing 2 replaces the Dafny recurrence R(n) with nĀ·(n+1)/2; at n=4 the recurrence is 2 but the target formula is 10, despite the target overflow preconditions admitting that input. Thus the printed translation example itself does not establish source/target equivalence.
    • how much was read: most of it read
    • source; notes: Recent agent termination evidence, with narrow scope
    • record id: alphaverus-2025
  • An empirical evaluation of pre-trained large language models for repairing declarative formal specifications. (2025)
    • what: Tests four OpenAI models on repairing faulty Alloy models, with the Alloy analyzer checking each attempt. Optionally a second agent turns the analyzer’s reports into repair advice.
    • number: ARepair 38 faulty models; Alloy4Fun 1,936 unique models, GPT-4o on a 357-model subset
    • number: 28 of 38 ARepair models repaired by GPT-4o / GPT-4-Turbo with second agent
    • number: 201 of 357 Alloy4Fun models by GPT-4o
    • number: at most six iterations
    • limits: Covers only static Alloy models. No time-based behavior, no progress properties, no running code. Table 6 prints 55.7% where 206/357 is about 57.7%.
    • how much was read: most of it read
    • source; notes: Declarative-specification repair: repair the supplied model, check aga; notes: Declarative-specification repair: repair the supplied model, check aga
    • record id: an-empirical-evaluation-of-2025
  • Astrogator (2025)
    • title: Towards Formal Verification of LLM-Generated Code from Natural Language Prompts
    • what: Introduces Astrogator, a verifier for LLM-generated Ansible programs. A user-readable Formal Query Language gives a precise, reviewable specification of natural-language intent; a State Calculus models stateful system effects; a symbolic interpreter and unifier compare generated playbook behavior with the query and report extra assumptions/actions. The formalization separates user intent U from an approved but possibly under-specified query semantics and explicitly defines the unresolved gap pāˆ–s for user review. The State Calculus models attributes, nested elements, stateful functions, reads, writes, conditionals, cases and symbolic loops; unknown reads branch over possibilities, and symbolic lists are approximated by one representative element. Ansible modules are specified in a small module-definition language, while a hand-curated knowledge base maps high-level descriptions such as apache server or zsh configuration file to OS-specific packages and paths. On 1,260 generated playbooks from six LLMs, Astrogator accepts most test-correct programs and rejects most incorrect ones, but under-specified queries permit incorrect programs unless users review reported assumptions.
    • number: 21 benchmarks
    • number: 1,260 generated programs
    • number: 334 correct (26.5%)
    • number: 277/334 accepted (82.9%)
    • limits: The formalizer cannot always infer intent from ambiguous natural language, so the user must approve the formal query. The query is intentionally incomplete and the evaluation accepts all programs satisfying it without user review of pāˆ–s. The Ansible compiler does not support all features, especially shell commands, blocks and handlers; symbolic-loop handling is imprecise and arbitrary loops are future work. Ground truth for 1,260 programs is based on tests across Debian 12.11, Ubuntu 24.04.2 and RHEL 9.6 VMs, not a proof of real-world correctness. Knowledge-base single-valued choices cause false rejections when multiple implementations are valid.
    • how much was read: most of it read
    • source; notes: ## Astrogator, checking LLM Ansible code against a readable query (202
    • record id: astrogator-2025
  • ATLAS (2025)
    • title: Constrained LTL Specification Learning from Examples.
    • what: ATLAS learns LTL formulas (formulas about behavior over time) from good and bad example traces. It also takes user constraints and priorities, and solves with MaxSAT, an optimizing solver. It uses no LLM. Cases: Peterson mutual exclusion, a voting machine, robot-arm repair, and weakening an invariant.
    • number: Table I: 30/30 tasks mean 43.65 s (Peterson); 10/10, 3.08 s (voting); 20/20, 37.25 s (robot arm); 53/78, 66.75 s (invariant weakening)
    • limits: It finds the best formula only within the formula-size bound. A formula that fits the traces may not capture what the user meant. The benchmarks were built around the authors’ use cases. Using it needs formal-methods expertise.
    • how much was read: most of it read
    • source; notes: Constrained LTL Specification Learning from Examples (ATLAS)
    • record id: atlas-2025
  • Atmosphere (2025)
    • title: Atmosphere: Practical Verified Kernels with Rust and Verus
    • what: Atmosphere is a verified kernel written in Rust and checked with Verus. The notes use it to count human effort and proof size.
    • number: proof-to-code ratio 3.32:1; replay under 20 seconds; under 2.5 person-years
    • number: 6K executable lines, 20.1K proof/spec lines: 14.3K spec and 5.8K proof/hints; 2.9K of specs for the top-level syscall model
    • number: 6K executable lines, 3.32:1 proof/code ratio, under twenty seconds verification, under 2.5 person-years
    • number: less than 2.5 person-years
    • limits: The source contradicts itself. Section 6.3 says about two person-years, with fourteen months on verified code. The abstract and introduction say under 2.5 person-years in total and 1.5 for verification. The guarantees cover the kernel’s functional correctness and isolation. They do not cover liveness of distributed systems.
    • how much was read: most of it read
    • source; notes: Atmosphere: count specification work and acknowledge inconsistent tota; notes: Atmosphere: Practical Verified Kernels with Rust and Verus
    • record id: atmosphere-2025
  • AutoVerus / Verus-Bench (2025)
    • title: AutoVerus: Automated Proof Generation for Rust Code
    • what: An LLM agent that generates Verus proofs. Its checker, Lynette, compares the Rust syntax trees with proofs erased and compares the original and generated contracts. It also searches for admit and assume (which skip proof steps), so the agent cannot change the goal.
    • number: 150 proof-only tasks (11 CloverBench, 38 Diffy, 78 MBPP, 23 Misc); 2,849 executable and 1,252 spec LOC
    • number: 137/150 accepted with AutoVerus vs 67/150 direct GPT-4o
    • number: 326 unsafe generated candidates caught (12.4%)
    • number: 137/150 (91.3%) tasks proved after up to three complete attempts; 122/150 on the first attempt
    • limits: The tasks are small and simple, with contracts fixed in advance. Spec quality is not scored. Deciding the intermediate function specs is itself part of systems verification (Sec. 7).
    • how much was read: most of it read
    • source; notes: AutoVerus / Verus-Bench; notes: Recent agent termination evidence, with narrow scope
    • record id: autoverus-verus-bench-2025
  • Ax-Prover (2025)
    • title: Ax-Prover: a deep reasoning agentic framework for theorem proving in mathematics and quantum physics
    • what: Three LLM agents (orchestrator, prover, verifier) write Lean 4 proofs by calling Lean tools through the Model Context Protocol (a standard way for an LLM to call external tools). Tested on math and quantum-theory theorem sets, and in two expert-collaboration case studies.
    • number: NuminaMath-LEAN (300 sampled problems): 51% vs 28% DeepSeek-Prover-V2, 31% Kimina-Prover, 5% plain Claude Sonnet 4
    • number: AbstractAlgebra (100 problems, new): 64% vs 24% and 13%
    • number: QuantumTheorems (134 problems, new): 96% vs 61% and 57%
    • number: PutnamBench: 14% (92 of 660) with Claude Sonnet 4.5, third overall; top open-source entry
    • limits: Lean statements are given by humans (the new datasets were formalized by LLM plus expert review); all targets are math or physics theorems, not software or distributed systems. Pass@1 is defined as one multi-step agent run, so it is not the same budget as the baselines’ single shot.
    • how much was read: most of it read
    • source; notes: Ax-Prover (2025)
    • record id: ax-prover-2025
  • BEq+ / ProofNetVerif (2025)
    • title: Reliable Evaluation and Benchmarks for Statement Autoformalization
    • what: BEq+ tries to prove both directions of implication between a generated Lean statement and a reference statement. ProofNetVerif and RLM25 are labeled benchmarks for whether a statement is correct.
    • number: ProofNetVerif: 3752 labeled pairs, 1142 correct; RLM25: 619 pairs from six projects
    • number: BEq+ precision/recall/F1 98.0/48.3/64.7; Pearson 0.974, Kendall 0.872
    • number: 118 entries (31.8%) with formalization errors in Lean 4 ports
    • number: GPT-4o 50 samples: ProofNet# manual 45.1, BEq+ 23.4; RLM25 BEq+ 31.6
    • limits: It covers mathematics only. The equivalence procedure is incomplete. People are needed for the references and the final labels. Results with no context are near zero.
    • how much was read: most of it read
    • source; notes: Reliable Evaluation and Benchmarks for Statement Autoformalization
    • record id: beq-proofnetverif-2025
  • CCF smart casual verification (2025)
    • title: Smart Casual Verification of the Confidential Consortium Framework (CCF)
    • what: Industrial experience applying TLA+ specification/model checking, weighted simulation and implementation trace validation to the existing C++ Confidential Consortium Framework. Separate node-consensus and client-history specifications are aligned with production protocol details and incorporated in CI. The paper reports six consensus bugs found/fixed and a clarified read-only consistency limitation, plus tooling/effort and state-exploration measurements. Reconstructs all six safety/liveness cases and the unsuccessful first fix, distinguishes trace compatibility from universal implementation refinement, records granularity alignment via composition/stuttering and incomplete-state reconstruction. Saves all scale/coverage rows, effort figures, counterexample sizes and issue pointers. Preserves TEE/model trust, bounded exploration and non-linearizable read-only semantics; no all-executions C++ correctness theorem is claimed.
    • number: Six subtle bugs found, five concerning safety and one liveness
    • number: 400 LoC Trace spec; 88 commits to it and 107 changes to the consensus spec; implementation 63 kLoC C++
    • number: six subtle bugs found
    • number: 63 kLoC in C++ (§2)
    • limits: §§1–2: CCF runs application logic inside trusted execution environments while treating operators, host OS/hypervisor, network and storage as corruptible. This paper checks distributed protocol behavior under modeled failures, not hardware/firmware isolation, enclave security, cryptography, all 63k C++ LOC, or arbitrary Byzantine behavior of the protected consensus code. Production use in Azure Confidential Ledger is context, not evidence that every production behavior is covered. §§1.1,4,8: Smart casual verification combines formal specification, finite model checking/simulation and tests/trace checks. Consensus spec is unbounded but exhaustive checking restricts terms, requests and reconfiguration sequences. No TLAPS safety/liveness proof for all sizes or universal code-refinement proof is reported. Most CI exploration relies on bounded simulations because sufficiently realistic exhaustive exploration is too expensive. §2: CCF returns transaction results before replication; clients separately query Pending/Committed/Invalid status. A returned result may later be invalidated. Committed read-write transactions are strictly serializable; committed read-only transactions are serializable and may be stale. Pending branches offer fork-like consistency rather than arbitrary results. Broad prose about all committed transactions being linearizable needs the explicit read-only exception. §2: Transaction IDs are lexicographic term/index pairs. If two transactions commit, ID ordering agrees with execution ordering. Ancestor Commit says committed <t,i> implies same-term <t,j>, j≤i, committed. This concerns transaction identity/status, not a proof that any stale read immediately observes the newest committed write. §2.1: CCF customizes Raft with signed Merkle-root transactions, messaging without RPC correspondence, optimistic sentIndex advances, express catch-up, CheckQuorum, bootstrapping/reconfiguration and retirement/ProposeVote. A transaction is committed only after a subsequent signature is committed. The actual combined protocol needs verification; citing the base Raft proof does not establish these extensions. §2.1 reader qualification: Early description says an AE-ACK carries the last transaction in the follower log, while the Inaccurate AE-ACK bug/fix later constrains that index to the end of the received AE. The historical/protocol-description distinction must be retained rather than treating the early sentence as the final safe response rule. §§2.1,4: Reconfiguration needs majorities in each active configuration, rather than a majority of their union. A removed node remains retiring until retirement information is safely committed for future leaders. CheckQuorum steps down an isolated leader, but absent delivery/scheduling assumptions this is not a theorem that all executions make progress. §4: Consensus has 17 actions/13 variables, 12 local-state mappings plus network. Parameterization includes every nonempty initial node subset with any member as initial leader. Locally initiated timeout/signature/candidacy/step-down choices impose no clock synchrony. LogInv compares pairwise committed-log prefixes; AppendOnlyProp prevents committed-prefix rollback over time. Another 27 properties include MonoLogInv, requiring term increases only after signatures. §4: Simulation explores behaviors to bounded depth under a time quota; authors manually downweight failures to promote forward progress. Q-learning was implemented in TLC but no state-hash feature set beat manual weighting. More progress-rich traces may help find bugs but do not constitute exhaustive failure coverage or proof of liveness. §5: Client model uses append-only history and logBranches, independent of node count. History includes read-only/read-write requests/responses and status responses, but omits status requests/Pending replies. A simple shared value appends transaction identifiers so conflicts and observations are visible. It is a deliberately selected application workload, not a proved reduction of all arbitrary CCF application semantics. §5: A new branch can be any prefix of an existing branch containing the last committed transaction. Requests may execute at any still-active leader/term. PrevCommittedInv checks same-term committed ancestor statuses; ObservedRoInv demands that a subsequently committed read-only response observe a read-write transaction whose response preceded its request. The latter expectation is falsified and documented, not a proved CCF invariant. §6.1: Scenario driver serializes consensus execution deterministically and mocks governance/networking/other components, injecting loss/reordering/partition/delay. Original 13 scenarios and about 1.6k unit-test/2k Python end-to-end LOC precede the effort; Table 1 gives later exact scope counts. Initial fuzzing was abandoned for insufficient interesting coverage. Driver/mock accuracy is a boundary, as demonstrated by retirement bugs. §6.1: Driver uses a global logical ordering clock; distributed Lamport/vector alternatives are suggested but not implemented here. Fifteen added logging statements capture stable states at message and role-change points, immediately after a global lock for state changes. Constant-space values such as log lengths are recorded, not full log entries. Production logging compiles out, so the checks use instrumented test executions rather than continuous production monitoring. §6.1/§6.5: Traces initially remove/deduplicate bootstrapping events because early consensus spec omits that phase; later specification is expanded to model bootstrapping more faithfully. These describe successive coverage stages. A successful preprocessed trace validates only its retained observations and modeling assumptions, not excluded initialization behavior. §6.2: Trace spec checks existence of a spec behavior consistent with observed events/values: T∩S is nonempty. Nondeterministically reconstructed hidden state is existential. A successful finite trace check is evidence for those observations, not proof that all completions, all execution traces or unlogged state transitions meet the spec. If logging or mappings omit a decisive distinction, an incorrect implementation could remain compatible. §6.2: Send actions constrain current state, invoke high-level action and assert matching successor messages. Network changes from set to multiset to represent duplicate/resend occurrences. Trace network abstractions also explore ordering/duplication/loss guarantees. Such abstraction choices affect what is observable and accepted; they are not runtime network guarantees inferred from traces. §6.2.1 Listing 5: UpdateTermĀ·HandleAppendEntriesReq composes two model actions into one implementation receive. IsFaultĀ·Next admits unlogged network faults before a step; send-response events may stutter high-level variables when already modeled by another action. Composition hides intermediate states and stuttering changes observation granularity, so correctness depends on the mapping retaining semantically important events. Merely making a mismatch disappear is not an independent proof. §6.2.2–6.3: Start with a happy-path trace, add many assertions and cross-references, debug source and formulas. Invalid traces may indicate bogus logging, incorrect mapping, specification error or implementation bug; failure lacks an ordinary model-checking counterexample. Longest matching prefixes, unreachable-state graphs, failing subformulas and an unsatisfied breakpoint support diagnosis. §6.4: DFS stops after finding one compatible behavior, avoiding BFS enumeration of alternatives; a consistency trace goes from about one hour to under a second. This is an author example without trace-size distribution or controlled speedup suite, and does not mean all traces validate in under a second. Existential acceptance is essential to that optimization. §6.5: Logging/driver enhancements took about one day. Consensus alignment/tooling took two engineer-months over four months, including TLC composition/DFS/debug support, discrepancy diagnosis and abstraction design. Writing about 400 lines of Trace was minor; Table 1 counts 369. Trace saw 88 commits and consensus spec 107 changes. This is observed project effort, not a controlled productivity study. §6.5: Client consistency validation uses REST observations without source instrumentation, reconstructs other clients’ hidden transactions from observed IDs, and took about one engineer-week over two weeks, mainly by CCF experts. Smaller spec, previous experience and reused TLC changes confound a simple comparison with initial consensus effort. §7 Table 1: Approximate state counts/rates are measured on Azure DC8s v3. A log line is largely equivalent to a model action, according to authors, not a formal equality of semantic coverage. Different abstraction sizes, bounds, durations and distinct/generated-state counting prevent treating orders-of-magnitude state counts as a calibrated defect-detection probability. §7: Six serious consensus bugs comprise five safety issues and one liveness issue, found by combined modeling, source scrutiny, trace mismatch, simulation and functional/end-to-end reproduction. They are not six independent discoveries by model checking alone. Read-only non-linearizability is an additional documented consistency ambiguity and accepted behavior, not a seventh fixed consensus bug. §§7–8: Authors report all six fixed before user impact/customer reports; software had already been deployed. One-node-at-a-time operational reconfiguration masked the election bug, and absence of an incident from the first bad commit fix was attributed to chance. No external incident audit, current repository verification or independent bug reproduction was done in this reading. §§8–9: Paper chooses model checking for developer accessibility rather than deductive proof, despite compute cost. AI-assisted proof search is future possibility with a reference to neural theorem proving, not an experiment using LLM agents. Related-work sentence says IronFleet and Verdi both proved Raft; reader qualification: IronFleet uses a Paxos-based replicated state machine, so do not propagate that comparison as fact.
    • how much was read: most of it read
    • source
    • record id: ccf-smart-casual-verification-2025
  • CLEVER (2025)
    • title: CLEVER: A Curated Benchmark for Formally Verified Code Generation
    • what: CLEVER is a Lean benchmark. A model generates a spec, which must be proved equivalent to a hidden, human-written reference spec. The model then generates code, which must be proved against that reference. The reference specs are noncomputable so that models cannot copy code logic.
    • number: 161 problems (from 164 HumanEval; 3 excluded)
    • number: default budget 600 seconds for pass@k-seconds
    • number: human effort per problem: 25 minutes plus an additional 15 minutes, in places over an hour
    • number: reference proofs 10-225 lines
    • limits: It depends on the quality of the reference. Failed equivalence proofs give false negatives. HumanEval data may have leaked into training. It covers only list and numeric tasks, and has no liveness.
    • how much was read: most of it read
    • source; notes: Generated contracts and independent evaluation; notes: CLEVER
    • record id: clever-2025
  • CodeMetaAgent (2025)
    • title: LLM Assisted Coding with Metamorphic Specification Mutation Agent
    • what: CodeMetaAgent rewrites programming task descriptions with nine transformations: negation, translation, step decomposition, paraphrase, plus transformations of tests. It filters the rewrites with BERT similarity. It checks tests against an oracle implementation (a reference that gives the right answers).
    • number: HumanEval-Pro 164 and MBPP-Pro 378 problems
    • number: GPT-OSS MBPP-Pro pass@1 53 to 70
    • number: oracle branch coverage 99.36 vs 99.81
    • number: SWE-bench Lite: 69 bugs/23% baseline vs 90 bugs stated 30.3% (90/300 is 30.0%)
    • limits: It handles only prose specifications and finite tests. BERT similarity does not certify that quantifiers or negation are preserved. Several arithmetic figures are inconsistent (233/300 is 77.7%, not 78.6%).
    • how much was read: most of it read
    • source; notes: LLM Assisted Coding with Metamorphic Specification Mutation Agent
    • record id: codemetaagent-2025
  • DafnyBench (2025)
    • title: DafnyBench: A Benchmark for Formal Software Verification
    • what: Asks LLMs to restore missing assertions and loop invariants in Dafny programs that already have specs. The pass rate measures whether the proof gets finished. It does not measure whether the intent was formalized.
    • number: 782 Dafny programs
    • number: 782 verified ground-truth files; over 750 programs and about 53,000 lines (abstract)
    • number: about 68% for the best model/prompt scheme
    • number: built with Dafny 4.3.0
    • limits: Only bans {:verify false} and assume false. This does not show that every way to cheat is caught. The public GitHub source may be in training data. Some specs just repeat the implementation. Scoring generated specs is only proposed (Appendix C). Verifying a weak contract that was handed in counts as success.
    • how much was read: most of it read
    • source; notes: DafnyBench
    • record id: dafnybench-2025
  • DafnyComp (2025)
    • title: Local Success Does Not Compose: Benchmarking Large Language Models for Compositional Formal Verification
    • what: The benchmark has 300 Dafny programs written by LLMs. Each has 2 to 5 chained functions, with contracts removed. The model must rebuild the contracts that connect the functions.
    • number: 300 programs selected from 564 verified of 1,200 attempts
    • number: 300 programs
    • number: 95.67% syntax correctness
    • number: 3.69% verification rate
    • limits: The review notes found no check against assume or admit (unproved assumptions) or against vacuous specs (specs that hold trivially). Over-restrictive requires clauses (preconditions) could make verification easier. The prompt in Appendix G contradicts Section 3.3. It excludes liveness, resource bounds and security policies. It has no concurrency.
    • how much was read: most of it read
    • source; notes: DafnyComp
    • record id: dafnycomp-2025
  • DAISY (2025)
    • title: Inferring multiple helper Dafny assertions with LLMs
    • what: GPT-4.1 with heuristics over error messages finds where to insert missing helper assertions in verified Dafny programs taken from DafnyBench. Dafny and the Z3 solver then check the candidates.
    • number: Table 3: w/o-one 153 (63.4%), w/o-two 76 (32.3%), w/o-all 8 (26.7%), combined 237 (46.8%)
    • number: dataset 241 w/o-1, 235 w/o-2, 30 w/o-all instances
    • number: default two insertion sites, ten candidates per site
    • limits: The specs already exist. It excludes cases where removing an assertion still verifies. Faria et al. misquote single-assertion success as 63.2%.
    • how much was read: most of it read
    • source; notes: Inferring multiple helper Dafny assertions with LLMs (DAISY)
    • record id: daisy-2025
  • FormalAlign (2025)
    • title: FormalAlign: Automated Alignment Evaluation for Autoformalization
    • what: FormalAlign is a trained Mistral-7B. It scores whether a formal Lean statement matches its informal statement. It was trained on wrong statements made by automatic mutation.
    • number: 21 negative examples per positive
    • number: alignment-selection: FormL4-Basic 99.21, MiniF2F-Valid 66.39, MiniF2F-Test 64.61 (Tables 4-6 give 66.70, unresolved)
    • number: human 79.58% vs FormalAlign 65.00%; humans 3 hours for 80 items vs under 2 minutes
    • limits: The score is learned. It is not a proof of equivalence. Accuracy on mutated statements is not evidence of agreement with intent. The review notes read v1, not the final ICLR version.
    • how much was read: most of it read
    • source; notes: FormalAlign: Automated Alignment Evaluation for Autoformalization
    • record id: formalalign-2025
  • FormalBench (2025)
    • title: Can LLMs Reason About Program Semantics? A Comprehensive Evaluation of LLMs on Formal Specification Inference
    • what: Introduces FormalBench, a benchmark of manually validated Java/JML programs and semantic-preserving variants for evaluating LLM specification inference using deductive consistency, mutation-based completeness, robustness and self-repair metrics. FormalBench-Base contains 700 validated Java programs; 18 semantics-preserving transformations produce 6,219 diverse variants. OpenJML determines success/failure/unknown and Major generates mutants; completeness is the fraction of non-equivalent mutants rejected. The study evaluates eight open-source/proprietary LLMs under zero-shot, few-shot, chain-of-thought and least-to-most prompts, diagnoses syntax/quantifier/loop-bound errors, and tests targeted self-repair prompts.
    • number: 700 manually validated programs and 6,219 augmented variants
    • number: 14 LLMs reported in conclusion; core table covers eight models/settings
    • number: Best listed success: DeepSeek-V3 + LTM 16.6%; GPT-4o + LTM 15.0%; Claude-3.5 + LTM 15.4%
    • number: Robustness flip rates: DeepSeek-V3 27.2%, Claude-3.5 39.2%, GPT-4o 29.2%
    • limits: Mutation completeness is a proxy: equivalent mutants can evade detection (3 of 232 manually checked, 1.3%). Unknown verifier results are separated from failures but complicate metrics. The benchmark is Java/JML-specific; generated specifications may be syntactically invalid or semantically incomplete. Experiments omit OpenAI-o1 and DeepSeek-R1 due cost/access and use finite token/GPU budgets.
    • how much was read: most of it read
    • source
    • record id: formalbench-2025
  • FSCQ LLM study (2025)
    • title: Can Large Language Models Verify System Software? A Case Study Using FSCQ as a Benchmark
    • what: It uses LLMs to fill existing unproved gaps in the proofs of FSCQ, a crash-safe file system. Search is best-first over tactics (proof commands) through Coq/SerAPI.
    • number: GPT-4o 29.2% without hints, 38.1% with; hinted Gemini Flash/Pro 16.3%/25.7%
    • number: Hinted GPT-4o: utilities 57.8%, Crash Hoare Logic 51.7%, file-system lemmas 20.8%
    • number: No model solves a theorem whose human proof exceeds 512 tokens
    • limits: It covers existing statements only. The proofs were public, so training leakage is a risk. There is no baseline using the prover alone, no new specification, and no liveness.
    • how much was read: most of it read
    • source; notes: FSCQ: file-system lemmas are harder than utility lemmas
    • record id: fscq-llm-study-2025
  • FVAPPS (2025)
    • title: Proving the Coding Interview: A Benchmark for Formally Verified Code Generation.
    • what: FVAPPS has Lean theorem statements that were auto-translated from APPS coding problems. They contain sorry placeholders (marks for missing proofs) that agents fill in. They come in three quality tiers.
    • number: 4715 problems; 2089 pass the unit-test-guarded tier (later paper reports 1083 guarded)
    • number: median 4 theorems per sample
    • number: manual audit of 100 samples labels too trivial, nontrivial, unprovable
    • number: 4,715 samples, 1,083 curated; Sonnet proves 30%
    • limits: Type-checking does not certify that a statement is adequate. The notes infer that the election contract in Fig. 2 is satisfied by a constant zero. The quality of the natural-language intent is not independently certified.
    • how much was read: most of it read
    • source; notes: FVAPPS
    • record id: fvapps-2025
  • Informal to Formal (2025)
    • title: From Informal to Formal – Incorporating and Evaluating LLMs on Natural Language Requirements to Verifiable Formal Proofs
    • what: It splits the path from English requirements to proofs into six tasks, across Coq, Lean, Dafny, ACSL and TLA+. It releases training data distilled with GPT-4o.
    • number: 18k high-quality instruction-response pairs
    • number: Pages 26984-27003
    • number: about 18,000 instruction-response pairs from over 4,000 verified references; about 14,000 train and 4,000 evaluate
    • limits: It is a benchmark of separate tasks. It does not show that the models are faithful to real distributed implementations.
    • how much was read: most of it read
    • source; notes: TLAiBench and the Foundation challenge: useful harnesses, limited meas; notes: Natural language to temporal logic and TLA+
    • record id: informal-to-formal-2025
  • LLM document-to-temporal-spec extraction (2025)
    • title: Extracting Formal Specifications from Documents Using LLMs for Automated Testing
    • what: Builds a dataset of 603 temporal specifications from 37 ArduPilot, PX4 and Autoware documents and evaluates GPT-4o, Claude-3.5-Sonnet and Llama-3.1-405B extracting formal requirements. A two-stage annotation-then-conversion pipeline improves coverage and accuracy over direct end-to-end prompting. Experts cross-validated ground truth; prompts first mark requirement-bearing sentences and then convert annotations into temporal logic, reducing oversimplification and hallucinated clauses. The paper quantifies false positives and studies a DeepSTL non-LLM conversion baseline. Documents average 2,966 words; each model runs three times and unique outputs are aggregated.
    • number: 603 validated specifications from 37 documents
    • number: End-to-end accuracy: Claude 51.7%, GPT-4o 47.1%, Llama 45.4%
    • number: Annotation-then-conversion best accuracy 71.6%; +14.0 percentage points average and +29.2% correctly extracted
    • number: Best false-positive rate 14.5%; each LLM run three times
    • limits: Ground truth may be incomplete or contain expert errors; temporal formulas require interpretation of informal documents. LLMs oversimplify dense requirements and fabricate plausible but unsupported conditions. Dataset is limited to three open-source autonomous-system projects and temporal logic; extraction quality does not prove implementation correctness.
    • how much was read: most of it read
    • record id: llm-document-to-temporal-spec-extraction-2025
  • LLMs as Planning Formalizers: A Survey for Leveraging Large Language Models to Construct Automated Planning Models (2025)
    • what: The survey covers about 80 works in which LLMs generate planning domains and problems from natural language.
    • number: approximately 80 existing works
    • limits: The review notes found no 24.8/35.1 percent statistic. So the headline number in the Safe Agents survey is unsupported by this citation.
    • how much was read: most of it read
    • source; notes: LLMs as Planning Formalizers: A Survey for Leveraging Large Language M
    • record id: llms-as-planning-formalizers-2025
  • LMGPA (2025)
    • title: Towards Language Model Guided TLA+ Proof Automation
    • what: An LLM splits hard TLAPS proof obligations into smaller claims. Symbolic provers check them. The invariant is given as input.
    • number: 26 inductiveness proofs of distributed protocols plus 93 math theorems (119 total)
    • number: Distributed protocols (Table 1 p. 13): symbolic-only 38.5%; DeepSeek-V3.2-Exp 50.0% with decomposition (13/26), 0% direct; Claude 3.7 Sonnet 42.3% vs 15.4% direct; GPT-5 42.3% vs 3.8% direct
    • number: Runtime DeepSeek 9h 14m vs Claude 1h 32m
    • number: Four decomposition attempts per claim; TLAPS timeouts Z3 5 s, Zenon 10 s, Isabelle 30 s
    • limits: It tests proving a supplied invariant. It does not test finding one or reading vague requirements. Training leakage is possible from public protocol proofs (Section 4.2). The suite leaves out both learning switches, chord and hybrid broadcast.
    • how much was read: most of it read
    • source; notes: LMGPA: prove supplied invariants rather than discover them; notes: TLAPS proof generation grew beyond the January 2025 toy study
    • record id: lmgpa-2025
  • MATHCONSTRUCT benchmark (2025)
    • title: MATHCONSTRUCT: Challenging LLM Reasoning with Constructive Proofs
    • what: Introduces MATHCONSTRUCT, a benchmark of constructive mathematical problems where models must output objects checked by executable verifiers, with symbolic parameter variations to test generalization rather than fixed-answer recall. The authors read roughly 3,500 problems from 20 competitions, selected and reviewed 126 problems, implemented parsers/verifiers/unit tests and generated 475 variations. Categories include combinatorics, algebra, number theory and geometry; types include Any, All, Inf and Max. Evaluation reports average accuracy over variations and robust accuracy requiring every variation of a problem, plus contamination, brute-force, parser-feedback and extreme-variation analyses.
    • number: 126 problems and 475 variations
    • number: best main model o3-mini 53.77% average and 34.92% robust accuracy; o1 41.34%/23.02%
    • number: Flash non-reasoning 11.57%/3.17%; code execution roughly doubles accuracy for many models
    • number: brute-force+inference reaches up to 16.67% average versus pure brute-force under 8%
    • limits: Correctness is only as good as hand-written verifiers, parsers and unit tests; models do not see verifier code in the main task. Robust accuracy is strict and variation sizes affect output length. Some variants are intentionally excluded as trivial or impractically large, so results do not represent all constructive mathematics.
    • how much was read: most of it read
    • record id: mathconstruct-benchmark-2025
  • miniF2F-Lean Revisited: Reviewing Limitations and Charting a Path Forward (2025)
    • what: Re-checks the miniF2F Lean statements against the original competition questions and corrects them. Separates simplified tasks from tasks faithful to the competition.
    • number: 488 problems; over 300 Lean 4 statements corrected; 16 problems with no solution
    • number: Herald test accuracy automated judge 97.5% vs human 62.7% on v1
    • number: Kimina+Goedel-V2-7B test 49.2 / 69.7 / 61.5 for v1/v2s/v2c; validation 54.9 / 70.1 / 62.3
    • number: Pipeline about 36% (40% on the original) vs 97% and 69% for the two stages alone
    • limits: About mathematics, not software. Judging fidelity needs a human.
    • how much was read: most of it read
    • source; notes: miniF2F-Lean Revisited: Reviewing Limitations and Charting a Path Forw
    • record id: minif2f-lean-revisited-reviewing-2025
  • Neural model checking with invariants (2025)
    • title: Let a Neural Network Be Your Invariant
    • what: For hardware designs, one small neural network is trained to be both an inductive invariant (a set of states that contains all reachable states and is closed under steps; this proves safety) and a ranking function (a number that drops each time something bad could recur; this proves liveness). A solver then checks the network exactly, so a yes answer is a real proof. Training uses a constraint solver (MILP) rather than gradient descent.
    • number: 634-task benchmark: 11 SystemVerilog designs; 206 safety, 219 liveness, 209 safety+liveness tasks
    • number: solved: 190/206 safety (92%), 192/219 liveness (88%), 172/209 safety+liveness (82%)
    • number: nuXmv solved 82% of liveness and 74% of safety+liveness tasks; rIC3 50% and 61%; ABC 36% and 46%; prior neural method NMC’24 79% of liveness
    • number: pure liveness: faster than the best other tool on 66% of tasks, 10x faster on 46%
    • limits: Only finite-state hardware-style systems (no arrays or strings of parametric length, no procedure calls or dynamic data); the benchmark is the authors’ own, built from textbook-level designs, so results may not carry to other workloads; relies on sign-activation feed-forward networks.
    • how much was read: most of it read
    • source; notes: Let a Neural Network Be Your Invariant (2025)
    • record id: neural-model-checking-with-invariants-2025
  • NL2Contract (2025)
    • title: Beyond Postconditions: Can Large Language Models infer Formal Contracts for Automatic Software Verification?
    • what: LLMs write executable preconditions and postconditions for Python from signatures and docstrings. CrossHair searches for violations. Mutation tests estimate how well the contracts tell correct from wrong code.
    • number: GPT-5 accept@1/5/10 and sound@1/5/10: 89.0 94.6 95.1 81.1 88.7 90.0
    • number: real buggy cases: 14 of 31 found with each model
    • number: contract unsound only if CrossHair finds a violation in 60 s
    • limits: Its notion of soundness counts unknown results and timeouts as sound. It has no liveness. A code release is promised but no URL is given.
    • how much was read: most of it read
    • source; notes: Beyond Postconditions: Can Large Language Models infer Formal Contract
    • record id: nl2contract-2025
  • On the Effectiveness of Large Language Models in Writing Alloy Formulas (2025)
    • what: The paper tests LLMs on eleven familiar graph and relation requirements. The LLMs write Alloy formulas from English, write them from a reference, or complete partial formulas. Automated bounded equivalence checks grade the results.
    • number: both LLMs find at least one valid solution among twenty requested per property
    • number: each LLM completes all but 1 sketching task; both failures fixed with syntax feedback
    • number: default scope three
    • limits: The checks cover bounded equivalence only. Familiar small tasks are weak evidence for unfamiliar distributed-system guarantees.
    • how much was read: most of it read
    • source; notes: On the Effectiveness of Large Language Models in Writing Alloy Formula
    • record id: on-the-effectiveness-of-2025
  • P2FGPT (2025)
    • title: Constructing formal models of cryptographic protocols from Alice&Bob style specifications via LLM
    • what: A prompt-based pipeline that reads a security protocol written as ā€˜A -> B: message’ steps and writes the declarations part (types and functions) of a ProVerif model. ProVerif is a security-protocol checker. A checker step runs ProVerif’s parser, and a repair step re-prompts the LLM on syntax errors.
    • number: dataset: 4 ProVerif demo protocols cut into 53 + 25 + 14 + 14 = 106 sub-protocols
    • number: syntax-correct rate with GLM4.0: 65% (generator alone) to 82% (with repair step)
    • number: repair step helped GLM4.0 only; it made no difference for Llama3-8b and little for Qwen2.5-7b
    • number: content score (BLEU/F1) with GLM4.0: BLEU 0.34 to 0.39, F1 0.58 to 0.62 with repair; Qwen2.5-7b BLEU 0.61, F1 0.60
    • limits: Generates only declarations, not the protocol steps or the security goals the user cares about; no check that the model says what the protocol says, only that it parses and looks like a reference text. Prompts were tuned by hand on GLM4.0 and transfer poorly to other models.
    • how much was read: most of it read
    • source; notes: P2FGPT, Alice&Bob to ProVerif (2025)
    • record id: p2fgpt-2025
  • ParCleanse (2025)
    • title: Validating Network Protocol Parsers with Traceable RFC Document Interpretation
    • what: GPT-4o extracts packet layouts and constraints from RFCs, with links back to the source text. Z3 generates valid packets and packets that break exactly one rule, and real parsers in C, Go and Python run them. An LLM diagnoses whether each failure is a spec error or an implementation error.
    • number: Table 2 precision/recall: Total 100/100 99/95 94/91 98/82 73/44
    • number: Table 3: 69 unique, 68 new, 36 confirmed bugs
    • number: golden formats: Babel 171 lines/5 h; BGP-4 164 lines/6 h
    • limits: It recalls dependent rules poorly. Every discrepancy was checked by hand. It covers input-validation safety, with no liveness.
    • how much was read: most of it read
    • source; notes: Validating Network Protocol Parsers with Traceable RFC Document Interp
    • record id: parcleanse-2025
  • PAT-Agent (2025)
    • title: PAT-Agent: Autoformalization for Model Checking
    • what: Turns a natural-language system description, properties and expected outcomes (VALID or INVALID) into a CSP# model for the PAT model checker. Repairs the model from counterexamples for up to five rounds.
    • number: 40 tasks (26 PAT, 6 textbook, 8 Alloy4Fun), 133 assertions
    • number: 100% full-pass after repair; 75% before repair, 77.5% after one, 87.5% after two; direct models 37.5-52.5%
    • number: 4.34 minutes per system average
    • number: 20-person user study, separate
    • limits: Finite models only, not application code. No progress proofs at unbounded size and no refinement. Section VI says a repair pipeline gave negligible gain, which conflicts with the repair-loop results.
    • how much was read: most of it read
    • source; notes: PAT-Agent: users supply descriptions and the outcomes they want checke; notes: PAT-Agent: users supply descriptions and the outcomes they want checke
    • record id: pat-agent-2025
  • Position: Formal Mathematical Reasoning—A New Frontier in AI (2025)
    • what: A position paper arguing that formal mathematics should complement language-model reasoning to supply checked reasoning steps, automatic training feedback and a path toward verified software/hardware generation. It organizes research challenges around data scarcity, faithful autoformalization, proof search, abstraction, retrieval, specification trust and proof maintenance. Its main original contribution is an agenda with separate levels for autoformalization, theorem proving, verified natural-language reasoning and verified system generation; it supplies no new proving algorithm, experiment or formal theorem. The paper separates producing a proof of a fixed formal statement from ensuring that the statement captures human intent. It proposes collecting human repairs and synchronizing informal/formal pairs, using semantic rather than string-match autoformalization metrics, comparing provers under explicit hardware/time budgets, growing libraries through useful subgoals and abstractions, and evaluating agents on projects and change histories. Software verification receives a distinct treatment: bespoke datatypes, repetitive case splits, large evolving codebases and specification management differ from isolated mathematical theorem proving. It discusses an alternative neural-only view and identifies self-verification and easy-to-hard generalization as unresolved prerequisites rather than demonstrated impossibilities.
    • limits: This is an explicitly selective position paper, not a systematic survey or controlled comparison. The claim that formal reasoning is indispensable and forecasts of lower verification cost are author positions, not results established by experiments in this paper. Formal proof checking establishes the exact encoded claim relative to the proof system, its assumptions and trusted implementation. The paper itself makes fidelity of generated specifications a key open problem; checker acceptance alone does not establish developer intent or correctness of the translation. The milestone levels are proposed organizing categories, with no validated thresholds, measured reliability requirements, human-cost study or proof that capability rises in the stated order. Theorem-proving level 2 explicitly includes human-built tactics without machine learning. Numbers about NuminaMath, Proof Pile, AlphaProof and seL4 are cited contextual examples, not new measurements. IMO 2025 claims are explicitly attributed to blogs/X without further details, and no such external evidence was fetched in this reading. The discussion of current systems is tied to the supplied 2025 proceedings version. Its model capability and benchmark-availability claims are historical author assessments, not a current exhaustive inventory. Arguments that informal scaling alone cannot resolve advanced mathematics and that neural-only self-verification remains weak draw on prior work; no impossibility theorem or decisive experiment rules out future neural-only systems. Software, hardware and mathematical verification are discussed broadly. Verus and AutoVerus appear as examples, but Rust memory/concurrency semantics, TLA+ specifications, distributed protocols and their fault assumptions are not evaluated. Formalizing or solving selected substeps while interleaving natural language does not by itself certify every unformalized claim or the full natural-language conclusion. This boundary follows from which parts are actually checked, not a new end-to-end guarantee shown here.
    • how much was read: most of it read
    • record id: position-formal-mathematical-reasoning-2025
  • ProofWright (2025)
    • title: ProofWright: Towards Agentic Formal Verification of CUDA
    • what: An agent writes VerCors annotations (permissions, preconditions, invariants) for CUDA kernels. It repairs them using verifier errors. A second path derives a proof of equivalence to the PyTorch reference, via Rocq.
    • number: 100 KernelBench L1 problems: 74 pass memory safety and race freedom, 17 solver instability, 9 agent failure
    • number: 14 simple kernels get safety plus equivalence; 3 loss functions partial
    • number: About 3 minutes per kernel
    • number: Ablation: no guide gives 0, few-shot only 13%
    • limits: A persistent annotation guide was seeded from 10 manual kernels, and every update was reviewed by hand. The link from Rocq to VerCors is untrusted and was checked manually. The proof agent’s model and budget are not stated. There is no liveness. There is no repository link.
    • how much was read: most of it read
    • source; notes: ProofWright verifies concurrent GPU code, with a human-reviewed transl
    • record id: proofwright-2025
  • PSMBench (2025)
    • title: PSMBench: A Benchmark and Dataset for Evaluating LLMs Extraction of Protocol State Machines from RFC Specifications
    • what: A benchmark of 14 protocols with human-annotated state machines. It scores nine LLMs on extracting state machines from RFC text.
    • number: 14 protocols, 1,580 RFC pages, 108 states, 297 transitions
    • number: annotation about three days per protocol
    • number: best state F1 0.715 (DeepSeek-V3), transition F1 0.378
    • number: 14 protocols, 1,580 RFC pages, 108 states, 297 transitions; annotation about three days per protocol
    • limits: It scores agreement with the annotations, not protocol safety. The annotations themselves need auditing, since RFC2TLA+ finds missing behaviors. Settings in the appendix give other scores.
    • how much was read: most of it read
    • source; notes: PSMBench / RFC2PSM: extraction accuracy, with human ground truth; notes: PSMBench / RFC2PSM: extraction accuracy, with human ground truth
    • record id: psmbench-2025
  • RagVerus (2025)
    • title: RagVerus: Repository-Level Program Verification with LLMs using Retrieval Augmented Generation (RepoVBench)
    • what: GPT-4o with AutoVerus-style repair retrieves related repository code and proofs to complete tasks on the VeriSMo security module.
    • number: 75 successful, permitted completions of 383 tasks (19.6%, notes’ arithmetic)
    • number: RepoVBench: 2,073 code pieces, 52 modules, 383 proof tasks; 52 simple/331 complex
    • number: VerusBench (5 samples): RagVerus-Code 84/139 successes (60.4%) vs baseline 25/139 (18.0%); Text 76/139 (54.7%)
    • number: RepoVBench overall: DirectRAG 65/383 (17.0%), Refinement+RAG 75/383 (19.6%) vs Refinement 59/383 (15.4%)
    • limits: One proof was removed while the surrounding library remains. So it is not a fresh, complete proof.
    • how much was read: most of it read
    • source; notes: Repository retrieval and multi-function verification; notes: RagVerus / RepoVBench
    • record id: ragverus-2025
  • Rango (2025)
    • title: Rango: Adaptive Retrieval-Augmented Proving for Automated Software Verification
    • what: A fine-tuned DeepSeek-Coder 1.3B model retrieves related proofs and premises for each changing Coq goal, and searches over tactic rollouts.
    • number: CompCert 1,977 (32.5%) of 6,091; all CoqStoq 3,325 (32.0%) of 10,396; held-out projects 352/1,171
    • number: Ten minutes per theorem
    • limits: Public proofs may have leaked into the training data. It does not regenerate proofs that a compiler preserves semantics.
    • how much was read: most of it read
    • source; notes: Coq: CompCert and Verdi lemmas, not newly built complete compilers/pro
    • record id: rango-2025
  • Remix (2025)
    • title: Multi-Grained Specifications for Distributed System Model Checking and Verification (Remix)
    • what: Refines coarse TLA+ protocol actions into detailed ones where concurrency matters. It mixes levels of detail to keep model checking practical, and checks the model against implementation executions (ZooKeeper).
    • number: six severe bugs violating five types of invariants
    • number: Six deep ZooKeeper bugs found and fixes verified
    • number: abstract: found six severe bugs that violate five types of invariants
    • number: six severe bugs
    • limits: The notes infer that matching the implementation and fixing bugs found by the model checker do not validate the chosen client guarantee, and do not prove liveness for unbounded cases.
    • how much was read: most of it read
    • source; notes: Choosing top-level distributed guarantees and trusted boundaries; notes: Appendix B: Concrete systems and theorem scope
    • record id: remix-2025
  • Seed-Prover 1.5 (2025)
    • title: Seed-Prover 1.5: Mastering Undergraduate-Level Theorem Proving via Learning from Experience
    • what: A model trained with reinforcement learning (trial and reward from the Lean checker) to prove theorems in Lean by calling Lean, a library search and Python as tools, plus a workflow in which a second model sketches a proof as small lemmas that the prover then fills in. Measured on math benchmarks.
    • number: PutnamBench 580 of 660 (87.9%), Fate-H 80%, Fate-X 33%, CombiBench 48%
    • number: Putnam 2025: 11 of 12 solved within 9 hours (budget up to 40 H20-days per problem); IMO 2025: 5 of 6
    • number: Agent-only run (pass@8x8): Putnam 359 of 660 vs 331 for the earlier 18-H20-days-per-problem workflow
    • number: RL training accuracy rose from about 50% to nearly 90% over 1200 steps; average tool calls fell from about 15 to 10
    • limits: Math only (competitions, algebra textbooks), not programs or distributed systems. The authors say CombiBench has significant formalization errors, and several Erdős results were simplified or trivial versions caused by mis-formalized statements; the full training recipe and data are in-house.
    • how much was read: most of it read
    • source; notes: ## Seed-Prover 1.5 (2025)
    • record id: seed-prover-1-5-2025
  • Specification Consensus (2025)
    • title: LLM-as-Specification-Judge: Multi-Model Consensus for Trustworthy Cryptographic Verification
    • what: Several different LLMs each write a formal spec in F* from the same standard (SHA-256, AES-128, ML-KEM). The proof assistant then tries to prove each pair equivalent, and a failed proof flags an error or a vague spot in the standard.
    • number: 3 primitives, 3 LLMs (GPT-4, Claude 3.5 Sonnet, Gemini 1.5 Pro)
    • number: all 9 specs generated; type-check 3/3, 3/3, 2/3
    • number: pairwise equivalence proved: SHA-256 3/3, AES-128 2/3, ML-KEM 1/3
    • number: discrepancies found: 0, 1 (wrong MixColumns polynomial), 2 (edge cases in polynomial arithmetic)
    • limits: Assumes LLM errors are independent; the paper admits correlated failures and ambiguous standards remain. Sample is three primitives with one run each and no baseline against single-author specs; no figures on how many human-written spec errors it caught, despite the abstract’s claim.
    • how much was read: most of it read
    • source; notes: ## LLM-as-Specification-Judge (2025)
    • record id: specification-consensus-2025
  • SpecVerify (2025)
    • title: Supporting Software Formal Verification with Large Language Models: An Experimental Study
    • what: SpecVerify converts natural-language requirements and implementation code into an intermediate formalized requirement/test design, then generates C assertions checked with ESBMC. It compares Claude-based verification with FRET/CoCoSim and SLDV on Simulink-generated aerospace C code. Analyzes variable mapping and precondition/function/postcondition correspondence, gives triple-redundant voting and missing aircraft-weight-assumption cases, and traces a floating-point median-selection bug that rational arithmetic missed. Counterexamples are replayed against code when results differ. The authors report a mistaken +1-to-0 connection in a prior REG model.
    • number: 9 systems; 58 requirements; 41–251 C lines
    • number: 46/58 logical equivalence (79.31%)
    • number: Claude+ESBMC completion 27/58 (46.5%)
    • number: Table V false negatives: CoCoSim 6; Claude+ESBMC 2
    • limits: Nine retained systems contain only 41–251 C lines; one original benchmark cannot be converted. Benchmark code is generated and structured; larger manually written programs are untested. The logical-equivalence assessment is manual and can oversimplify temporal relationships. LLM and verifier effects are confounded. ChatGPT model naming varies across the source; Llama 3.1 8B failed tasks and was excluded. Table II/full-automation claims coexist with a stated need for considerable manual checking of generated code. Arithmetic inconsistencies remain in the source: 29/58 undetermined is labeled 39%; Table V false negatives are 6 versus 2, while the conclusion claims 6 fewer. These are source issues, not corrected measurements.
    • how much was read: most of it read
    • source; notes: Supporting software formal verification with LLMs (2025)
    • record id: specverify-2025
  • super_sketch / super_fix (2025)
    • title: The Burden of Proof: Automated Tooling for Rapid Iteration on Large Mechanised Proofs
    • what: Isabelle tooling. super_sketch splits goals and runs Sledgehammer on them concurrently. super_fix repairs proof scripts after the model changes. Applied to the CXL safety proof.
    • number: 310k lines of code, 54,128 lemmas
    • number: about one day per obligation-matrix iteration
    • number: fewer than 100 unresolved subgoals out of 50,000+
    • number: two-year span is elapsed time
    • limits: Unsolved goals stay as sorry (a placeholder for a missing proof). Neither tool designs the whole invariant.
    • how much was read: most of it read
    • source; notes: Related work absent from the first pass: The Burden of Proof
    • record id: super-sketch-super-fix-2025
  • TickTock (2025)
    • title: TickTock: Verified Isolation in a Production Embedded OS
    • what: TickTock verifies isolation in an embedded OS. The notes use its distributions of replay time and its list of trusted functions.
    • number: 3,603 lines of checked annotation across 2,581 functions
    • limits: It lists the trusted functions, which are trusted because of tool limits, because they are ghost-only code (used only in proofs), or because they are out of scope. Its lower annotation ratios may reflect narrower guarantees. That last point is the notes’ inference.
    • how much was read: most of it read
    • source; notes: TickTock: measured replay distributions and explicit trust exemptions
    • record id: ticktock-2025
  • TLAiBench (2025)
    • title: tlaplus/TLAiBench
    • what: 9 puzzle descriptions (for example DieHard, DiningPhilosophers, TowerOfHanoi) and 6 gold specs. A script asks an LLM to translate each description, then runs the syntax check and TLC.
    • number: 9 puzzle descriptions
    • number: 6 gold specs
    • number: inspected commit of 6 Feb 2026: ten puzzle descriptions, six gold models
    • number: no distributed implementation tasks; dining philosophers has no gold model
    • limits: No results are reported. Checking against the gold spec by refinement is only stated as a grading idea, and is not run at scale.
    • how much was read: most of it read
    • source; notes: Additional tools, not counted as papers; notes: TLAiBench
    • record id: tlaibench-2025
  • Tunable Automation in Automated Program Verification (2025)
    • what: Adds a broadcast mechanism to Verus so users choose which universally quantified facts the SMT solver may use, per module, function or proof block. It measures how extra facts about Seq/Map/Set/Multiset change proof hints needed and verification time on four Verus projects.
    • number: 49 Dafny-prelude lemmas added as ambient facts (Seq 25, Map 2, Set 10, MultiSet 12)
    • number: asserts after minimization: IronKV 268 to 245, Splinter 1158 to 1130, Anvil 343 to 336, CapybaraKV 449 to 415 (2% to 9% fewer)
    • number: more than half the original asserts were not needed
    • number: 98.2% of IronKV functions verify within 2x of original time; worst slowdowns 3x to 19x
    • limits: Assert count is called a very rough proxy for automation; the minimizer is a linear scan, not optimal, and ignores lemma calls. all_triggers did not scale to the other projects (many verification failures).
    • how much was read: most of it read
    • source; notes: Tunable Automation (2025)
    • record id: tunable-automation-in-automated-2025
  • Veil (2025)
    • title: Veil: A Framework for Automated and Interactive Verification of Transition Systems.
    • what: It embeds distributed transition systems in Lean. It sends first-order proof obligations to SMT solvers and leaves the rest as interactive Lean goals.
    • number: 16 evaluated cases incl. Rabia, SCP, Suzuki-Kasami, Vertical Paxos
    • number: 1704 non-empty, non-comment lines of Lean; 85 actions and 185 invariants; about 100 lines per file
    • number: 16 benchmarks, 1,704 Lean lines, 85 actions, 185 invariants
    • number: Veil verifies 16/16; 14/16 under 15 s and 12/16 under 10 s
    • limits: It evaluates checking supplied invariants, not finding them. It is not an LLM agent. All its guarantees are safety. The notes record no agent success rate.
    • how much was read: most of it read
    • source; notes: Veil: proofs in Lean with automatic first-order checks; notes: Veil: a promising proof interface, with no agent rate established here
    • record id: veil-2025
  • Vericoding benchmark (2025)
    • title: A Benchmark for Vericoding: Formally Verified Program Synthesis
    • what: Fixed formal specs in Dafny, Verus and Lean. Agents fill in implementation and proof holes. Validation blocks bypasses (assume, false/sorry), and fixed templates prevent changes to the spec.
    • number: 12,504 specs: 3,029 Dafny, 2,334 Verus, 7,141 Lean; 6,174 new/translations
    • number: about 9% of sampled successful specs too weak and another 15% had poor translations
    • number: 12,504 specs (3,029 Dafny, 2,334 Verus, 7,141 Lean)
    • number: Success: 82% Dafny, 44% Verus, 27% Lean
    • limits: Quality statistics come from five sampled successes per language and source, not from all items. The cleanliness score is a heuristic. A checker establishes the contract that was submitted, even if it is lossy or weak.
    • how much was read: most of it read
    • source; notes: A Benchmark for Vericoding
    • record id: vericoding-benchmark-2025
  • VerifyThisBench (2025)
    • title: VerifyThisBench: Generating Code, Specifications, and Proofs All at Once
    • what: Models generate code, spec and proof together for VerifyThis competition challenges. They use seven tools: Dafny, Why3, Frama-C, Verus, VeriFast, VerCors and TLA+. Each model gets five attempts with checker feedback. The XS variant removes parts of the verified submissions.
    • number: 41 challenges / 154 tasks; XS total 580 (226 code, 233 spec, 121 loop); 481 is stale
    • number: original human contest: 90 minutes per challenge
    • number: 41 challenges, 154 tasks, 580 sub-tasks
    • number: o3-mini under 4% zero-shot, 9.37% after five feedback rounds
    • limits: Alignment confidence is the model’s self-assessment (the paper calls it an ā€˜optimistic upper bound’). There is no independent exhaustive oracle for alignment. The notes did not establish that assume, admit or axiom is enforced. TLA+ gets no scoring for fairness or liveness. The human contest judges correctness, completeness, elegance and automation.
    • how much was read: most of it read
    • source; notes: VerifyThisBench / XS; notes: VerifyThis: human assessment supplies an intent layer
    • record id: verifythisbench-2025
  • VeruSAGE (2025)
    • title: VeruSAGE: A Study of Agent-Based Verification for Rust Systems
    • what: 849 proof-writing tasks from eight verified systems (IronKV, Anvil, Atmosphere, Vest and others). A proof body is removed, and an agent loop with a 20-minute budget must restore it.
    • number: Table 5 model totals: o4-mini 41%, GPT-5 55%, Sonnet 4 64%, Sonnet 4.5 81%; Sonnet 4.5 with plain Copilot proves 688/849 (80.9%)
    • number: Anvil library 100%, Anvil controller 37%, IronKV 84%, Atmosphere 83%
    • number: Specialized harness about 1.6x time and 2.2x cost on whole projects
    • number: 849 tasks from eight systems (nine projects): Anvil temporal library 104, Anvil vreplicaset controller 63, IronKV 118, mimalloc 89, Node Replication 29, NRKernel 204, Atmosphere 157, persistent storage 63, Vest 22
    • limits: Failures center on discovering inductive invariants (facts that hold initially and stay true after every step). The Anvil library lemmas are not the same as proving that a new controller eventually reconciles.
    • how much was read: most of it read
    • source; notes: VeruSAGE: high overall rates hide controller-invariant difficulty; notes: VeruSAGE / VeruSAGE-Bench
    • record id: verusage-2025
  • VLTL-Bench (2025)
    • title: Verifiable Natural Language to Linear Temporal Logic Translation: A Benchmark Dataset and Evaluation Suite
    • what: It scores four steps of translating natural language to LTL. The steps are finding propositions, translating temporal structure (judged by logical equivalence, not string match), grounding to executable predicates, and classifying satisfying and violating traces.
    • number: datasets: Kitchen Assistant 10,000, Search-and-rescue 7,304, Traffic-light 7,319, Warehouse 7,457
    • number: built from 36 expert nl2spec templates
    • number: Table 2: four generated datasets of 10,000; 7,304; 7,319; 7,457 entries (32,080 total) reusing 43 templates
    • number: 36 expert-crafted lifted NL-LTL pairs plus 7 new ones
    • limits: Its equivalence check only flags a difference. It does not say whether one formula is weaker or stronger. Two traces cannot establish equivalence or liveness. It has no proof, no code, and no audit of how far to trust agents. The text says three datasets but the table lists four.
    • how much was read: most of it read
    • source; notes: Temporal requirement translation: VLTL-Bench and GraFT; notes: papers
    • record id: vltl-bench-2025
  • Zhou TLAPS 2025 (2025)
    • title: Retrieval-Augmented TLAPS Proof Generation with Large Language Models
    • what: GPT-4o splits a goal into smaller obligations and tries OBVIOUS and BY AllProvers. If those fail, it writes a proof, using verified steps retrieved from the TLA+ Examples repository.
    • number: Three selected obligations only
    • number: Boyer-Moore majority safety theorem failed after ten decompositions
    • number: Smaller initialization obligation: valid proofs in all three attempts, about two minutes
    • number: three obligations only
    • limits: The case is a sequence algorithm, not distributed consensus. There is no liveness result and no broad success rate.
    • how much was read: most of it read
    • source; notes: TLAPS proof generation grew beyond the January 2025 toy study; notes: Two further TLA+ evaluation papers already in collection
    • record id: zhou-tlaps-2025-2025
  • Autoformalize Mathematical Statements by Symbolic Equivalence and Semantic Consistency (2024)
    • what: # Whole reading: Autoformalize Mathematical Statements by Symbolic Equivalence and Semantic Consistency (authored by agents unless marked šŸ§‘) The framework generates ten Isabelle statement candidates, ranks them using symbolic agreement and back-translation similarity, and selects results. SymEq checks premise and conclusion equivalence after numerical standardization or heuristic variable matching, then scores equivalence-class size. SemCo asks an LLM to informalize each candidate and computes BERT cosine similarity to the original problem. Log, linear and quadratic combinations weight normalized scores, with alpha=0.5 selected empirically. It is a candidate-selection method; it neither supplies a verified translation relation to natural language nor proves that a majority class expresses the intended problem. [Evidence: Q2, Q3, Q4, Q5, Q8 in quotes.json.] The prose before Definition 1 requires noncontradictory premises, but Definition 1 says premises are not tautologies. Those conditions differ: False is not a tautology but is contradictory; True is noncontradictory but is a tautology. The proposed P implies False check can establish contradiction when a sound prover succeeds; failure or timeout does not establish satisfiability. Premise-equivalence plus conclusion-equivalence is stronger than equivalence of whole implications. The text also calls the true product statement symbolically equivalent to 4=4; that claim requires the later auxiliary-variable projection/simplification interpretation, not the literal componentwise definition alone. These are written-definition qualifications, not an implementation audit. [Evidence: Q3, Q4, Q13 in quotes.json.] Numerical standardization introduces alpha=f(x) and compares residual-value relations, leaving original variables auxiliary. The quantifier/projection semantics must be specified: the printed free-variable equivalence in Appendix C is false if x,y,a,b remain independent (x=2/3,y=6,alpha=0,a=0 makes its left premise true and right premise false). Existentially quantifying auxiliaries makes that example work but can discard modeling structure and identify unrelated solved true problems through the same residual set. Non-numerical matching uses edit-distance weights and top-k maximum bipartite matchings; maximizing raw distance favors dissimilar names unless the weight is negated or converted to similarity. Finite heuristic matching and incomplete ATP search can miss genuine equivalences; no completeness theorem is provided. Appendix C Example 2 asks for five positive integers, but both displayed nat statements admit all five equal to zero, with n=0 in No.1. Then 4^0=1 is not divisible by 2. No.1 also retains an extra variable n and its sum assumption, so the displayed variable counts differ and the projection/elimination step needs specification. This is a manual boundary check, not a checked formal counterexample. [Evidence: Q3, Q13, Q4, Q20 in quotes.json.] Back-translation is fallible model output, and embedding similarity is a numerical proxy rather than a proof of preserved meaning. The paper itself notes that notation changes can alter mathematical meaning while embeddings miss them. Its power example explicitly maps both powr and natural-exponent power back to the same word, which can hide the very distinction being checked. Shared model errors and correlated wrong candidates remain possible; consensus does not establish the correct domain, quantifiers, definitions or assumptions. [Evidence: Q4, Q12, Q14 in quotes.json.] Section 3.3 and Algorithm 1 call normalization softmax, while the displayed formulas divide each score by the sum of scores without exponentials. For scores 1,2 these give 1/3,2/3; actual softmax gives about 0.269,0.731. This can change a combined ranking. Raw cosine scores need not all be positive and their sum can be zero, so the printed division/log combination needs positivity and nonzero-denominator conditions or a stated transform. The publication does not specify that safeguard. This identifies ambiguity in written mathematics, not which normalization author code executes. [Evidence: Q5, Q4 in quotes.json.] MATH evaluation randomly selects 400 problems; miniF2F contains 488 problems with formal oracles. Five models are Mistral-7B,Llemma-34B,DeepSeek-v2,Codex completion API and GPT-4(version 0710), temperature 0.7, ten candidates and declared eight-shot examples. MATH candidates are manually labeled; miniF2F correctness is automated equivalence against the supplied oracle. n@k denotes whether the top n of k candidates includes a correct version. The log-probability baseline changes to prompted ranking for Codex/GPT-4; Naive filters provable candidates, and Cluster uses adaptive k-means on formal-statement BERT embeddings. The checker uses scala-isabelle, twelve listed Isabelle tactics including Sledgehammer timeout 300 s, and Z3/CVC5. The authors report eight examples, but Appendix F prints two generic instruction templates without an identifiable complete block of eight demonstration pairs. Their archive contents remain uninspected. [Evidence: Q6, Q5, Q14 in quotes.json.] miniF2F scores measure agreement with a finite automatic oracle-equivalence procedure, which shares the SymEq machinery and can miss valid alternate encodings or inherit flawed oracles. They are not independently human-adjudicated semantic-correctness rates. Manual MATH labeling lacks a fully described annotator count, agreement/adjudication protocol and blinded treatment of methods in this publication. The paper itself discusses human errors and problematic formal oracles. Passing a prover for a generated statement establishes only that statement relative to its assumptions and trusted checking, not that the natural-language task was formalized faithfully. [Evidence: Q6, Q12, Q14, Q16, Q17 in quotes.json.] Table 1 GPT-4 MATH1@10 is37.5% baseline,42.0% SymEq,39.5% SemCo; miniF2F is32.9%,41.1%,34.9%. Figure 5 log-comb gives45.3% and43.6%, improvements of7.8 and10.7percentage points over those baselines and3.3/2.5points over SymEq. Codex MATH log-comb reaches49.4%. These are reported empirical selection gains under the stated labeling procedure, not formal guarantees or evidence on distributed-system specifications. SymEq is not best in every Table 1 cell: Mistral MATH3@10 SemCo38.8 exceeds SymEq37.9. [Evidence: Q6, Q7, Q8 in quotes.json.] Do not silently merge differing displayed values. Figure 5 Llemma MATH SymEq41.4/SemCo35.4 differ from Table 1 41.1/36.5; miniF2F SymEq31.2 differs from32.0. Figure 5 Mistral MATH SymEq26.7 to log-comb42.6 is15.9percentage points (about59.6%relative), not the RQ2 prose22.6% when read as that comparison. Table 2 geometry SymEq28.1 exceeds SemCo25.1, so the narrative about geometry favoring semantic sensitivity is a hypothesis, not a demonstrated category gain. The paper does not resolve these table/figure/text discrepancies. Figure 5 miniF2F labels its pink series SemCo but prints 7.5,20.5,27.6,29.7,34.8, versus Table 1 SemCo 8.8,27.2,27.6,33.2,34.9. Figure 5 MATH Codex SemCo is 42.6 versus Table 1 44.9. Figure 4, captioned GPT-4 MATH log-comb, has visually estimated endpoints near 46.6–46.7 and a peak near 47.5. These disagree with Table 1 semantic/symbolic endpoints 39.5/42.0 and Figure 5 log-comb 45.3. At alpha=0 the log combination ranks only by semantic score. Appendix D Figure 7 also uses a 45.5–48 range. No undocumented split, model or correction is inferred to reconcile these displays. [Evidence: Q6, Q7, Q8 in quotes.json.] RQ3 prints sigma=sum over n=2..k-1 of n times(q_n-q_(n-1)) plus(1-q_k), with q_n=n@k. Under ordinary sequential inspection of up to k candidates, expected checks are sum over n=1..k of n times(q_n-q_(n-1)) plus k(1-q_k), q_0=0. The printed formula gives0 if the first candidate is always correct,0 if only the kth is correct, and1 if none is correct, instead of1,k,k. Thus it is not the stated ordinary average number of formal statements labeled without an additional unreported cost convention. Table 3 reports17.7–21.6% MATH and8.4–21.9% miniF2F relative savings for log-comb; these are derived scores, not measured human-time reductions. No author-code recalculation performed. [Evidence: Q9 in quotes.json.] At k=10 there are at most45unordered candidate pairs before transitivity shortcuts, plus ten informalizations. The full checker versus auto/simp-only GPT-4 ablation reports 1@10 both 41.1%, 2@10 48.1 versus 47.5, and 3@10 49.3 versus 48.7. Its values match miniF2F in Table 1, but Figure 6 and the RQ4 paragraph do not explicitly name the dataset. The prose lists2.13vs2.33equivalences while saying the normal checker proves more, without ordering these two values clearly. Table 4 GPT-4 MATH log-comb declines from75.6% at difficulty1 to27.0% at5, but level3 SymEq57.1 exceeds log-comb53.8, so combination is not universally better by subgroup. Checklist 7 explicitly reports no statistical significance due to cost. Full walltime/API expenditure and independent repeat-run variability are not reported in the28-page publication; checklist 8 points to supplementary resources. [Evidence: Q10, Q20, Q5 in quotes.json.] The source reports a nonexistent reflection_matrix in Example 3 and omitted Vieta constraints in Example 4. Its surrounding prose says rst=8 is incorrect, although the cubic4x^3-59x^2+32x-32 actually has product8; the displayed bad output instead uses32. The pairwise-root sum8 is indeed omitted, and r+s+t=59/4 is correct. This distinction preserves the actual displayed error rather than copying the prose typo. These cases motivate library grounding and exact assumption validation. [Evidence: Q14, Q15 in quotes.json.] Example 5 attributes failure to using ^ with real bases a,b. Natural-exponent powers permit real bases; the displayed exponent is the natural number2, so that reason does not follow. The text conflates base and exponent typing. Powr and ordinary powers can differ outside positive-base domains, and log-domain constraints must be handled explicitly; Examples 9–10 report failed equivalence attempts, not proof that every displayed difference is mathematically inequivalent. No Isabelle run was made to validate a specific historical checker trace. [Evidence: Q4, Q14, Q15, Q17, Q18 in quotes.json.] Example 8 labels the rational-equation oracle wrong because it omits explicit nonzero denominators, and says dividend rather than denominator. Under Isabelle/HOL real division totalized by inverse0=0, the equality itself excludes x=1/3 (0 versus3/2) and x=-1 (-1/4 versus0). Elsewhere cross multiplication gives x+1=6x-2, hence x=3/5. The extra denominator assumptions are therefore redundant for this particular equality. This manual domain/algebra check does not support the claimed oracle defect; no formal checker or author artifact was run. [Evidence: Q17, Q14 in quotes.json.] Example 11 attributes a failed equivalence to spaces around4 and says the two4types cannot be inferred identical. Its displayed comparison explicitly annotates both4::nat and repeats the same set expression up to ordinary whitespace, so the printed text does not establish that diagnosis. Both original claims also omit positive n and are false at n=0 because2 does not divide1, although false statements can still be equivalent. The distinction between equivalence and truth matters here. A missing historical context or implementation parsing error remains unverified. [Evidence: Q18, Q14 in quotes.json.] Example 13 No.2 replaces the midpoint theorem with the assumed numerical relation DE=BC/2, reducing geometry to arithmetic; the source calls this over-simplification. No.1 also explicitly fixes dist as an arbitrary function, rather than requiring Euclidean distance. Choose A=(0,0),B=(2,0),C=(0,2),D=(1,0),E=(0,1), and a function with dist(B,C)=6 and dist(D,E)=0: all printed premises hold but conclusion dist(D,E)=3 fails. Thus that displayed version has a concrete missing semantic constraint, beyond a human preference about abstraction. This is a manual model of the printed statement, not an executed counterexample. [Evidence: Q19, Q12 in quotes.json.] Example 6 contrasts human labels on two cardinality encodings; Example 7 highlights positive-integer versus nat-domain oracle issues; Example 12 uses a real parameter2*n to represent even integers, which does not itself enforce integrality. These illustrate that equivalence search, domain checks, library grounding and human review must be separated when evaluating generated specifications. This is directly relevant methodology for LLM-written statements and proofs; transfer to Verus, verified Rust, TLA+ or distributed protocols is reader inference. No such artifact or end-to-end systems-verification result is contributed. The complete 28-page publication, 13 examples,bibliography and checklist were read. The 946-member official archive was saved and its manifest inspected; code,data and plot assets were not executed or loaded as scientific results. [Evidence: Q16, Q19, Q12, Q20, Q1 in quotes.json.] Primary excerpt R2, §3.1, Definition 1 and premise test; lit_venues/full_text_recovered/formal1239/paper.raw.txt, characters 14019–14969: > The formal definition of symbolic equivalence is presented in the following. Within this definition, > we further assume that the premises are not intrinsically contradictory, ensuring that the two involved > mathematical statements are well-defined. > Definition 1 (Symbolic equivalence) Let two mathematical statements ĪØ1 and ĪØ2 in formal lan- > guage be expressed as P1 → Q1 and P2 → Q2, and suppose their premises P1 and P2 are > not tautologies. Then, the two statements are called symbolically equivalent if the two logical > equivalences, i.e., P1 ≔ P2 and Q1 ≔ Q2, both hold. > The two logical equivalences induced by the symbolic equivalence can be determined through existing > automated theorem provers (ATPs). Additionally, the validity of the premises can also be checked by > replacing the conclusion Q with a contradictory result (e.g., 0 = 1) and verifying P → Q. If this > vacuous form can be proved, then the corresponding premise P is a contradiction. Primary excerpt R4, §3.1, matching heuristic; lit_venues/full_text_recovered/formal1239/paper.raw.txt, characters 16934–17109: > we simply set the edge weight of the graph by the string edit distance [61, 62], and only partially > enumerate variable mappings corresponding top-k maximum bipartite matching. Primary excerpt R10, §4.1, correctness labels; lit_venues/full_text_recovered/formal1239/paper.raw.txt, characters 25928–26156: > statements, we manually check each formalization result. For the miniF2F dataset, the correctness is > automatically derived by checking the symbolic equivalence between the formalization result and the > provided oracle using ATPs. Primary excerpt R20, Appendix B, embeddings limitation; lit_venues/full_text_recovered/formal1239/paper.raw.txt, characters 55414–55828: > Embeddings may neglect the nuances in natural language. When using embeddings to check > semantic consistency, we assume embeddings can reflect the differences between the informalized > statement and the original. However, there are many nuances in math statements that even a single > notation change can result in totally different semantics. Current embeddings may not differentiate > the minor but significant change. Primary excerpt R29, Appendix F, prompt examples claim; lit_venues/full_text_recovered/formal1239/paper.raw.txt, characters 62055–62243: > We set up instructions and eight gold examples with both symbolic and semantic correctness to > improve the generation performance of GPT-4. Our detailed prompts are shown in Prompt 1 and 2. Primary excerpt R31, Checklist 7, uncertainty; lit_venues/full_text_recovered/formal1239/paper.raw.txt, characters 78816–79144: > 7. Experiment Statistical Significance > Question: Does the paper report error bars suitably and correctly defined or other appropriate > information about the statistical significance of the experiments? > Answer: [No] > Justification: We cannot provide statistical significance of the experiments due to the > extensive evaluation cost.
    • limits: The framework generates ten Isabelle statement candidates, ranks them using symbolic agreement and back-translation similarity, and selects results. SymEq checks premise and conclusion equivalence after numerical standardization or heuristic variable matching, then scores equivalence-class size. SemCo asks an LLM to informalize each candidate and computes BERT cosine similarity to the original problem. Log, linear and quadratic combinations weight normalized scores, with alpha=0.5 selected empirically. It is a candidate-selection method; it neither supplies a verified translation relation to natural language nor proves that a majority class expresses the intended problem. MATH evaluation randomly selects 400 problems; miniF2F contains 488 problems with formal oracles. Five models are Mistral-7B,Llemma-34B,DeepSeek-v2,Codex completion API and GPT-4(version 0710), temperature 0.7, ten candidates and declared eight-shot examples. MATH candidates are manually labeled; miniF2F correctness is automated equivalence against the supplied oracle. n@k denotes whether the top n of k candidates includes a correct version. The log-probability baseline changes to prompted ranking for Codex/GPT-4; Naive filters provable candidates, and Cluster uses adaptive k-means on formal-statement BERT embeddings. The checker uses scala-isabelle, twelve listed Isabelle tactics including Sledgehammer timeout 300 s, and Z3/CVC5. The authors report eight examples, but Appendix F prints two generic instruction templates without an identifiable complete block of eight demonstration pairs. Their archive contents remain uninspected. miniF2F scores measure agreement with a finite automatic oracle-equivalence procedure, which shares the SymEq machinery and can miss valid alternate encodings or inherit flawed oracles. They are not independently human-adjudicated semantic-correctness rates. Manual MATH labeling lacks a fully described annotator count, agreement/adjudication protocol and blinded treatment of methods in this publication. The paper itself discusses human errors and problematic formal oracles. Passing a prover for a generated statement establishes only that statement relative to its assumptions and trusted checking, not that the natural-language task was formalized faithfully. RQ3 prints sigma=sum over n=2..k-1 of n times(q_n-q_(n-1)) plus(1-q_k), with q_n=n@k. Under ordinary sequential inspection of up to k candidates, expected checks are sum over n=1..k of n times(q_n-q_(n-1)) plus k(1-q_k), q_0=0. The printed formula gives0 if the first candidate is always correct,0 if only the kth is correct, and1 if none is correct, instead of1,k,k. Thus it is not the stated ordinary average number of formal statements labeled without an additional unreported cost convention. Table 3 reports17.7–21.6% MATH and8.4–21.9% miniF2F relative savings for log-comb; these are derived scores, not measured human-time reductions. No author-code recalculation performed. Example 6 contrasts human labels on two cardinality encodings; Example 7 highlights positive-integer versus nat-domain oracle issues; Example 12 uses a real parameter2*n to represent even integers, which does not itself enforce integrality. These illustrate that equivalence search, domain checks, library grounding and human review must be separated when evaluating generated specifications. This is directly relevant methodology for LLM-written statements and proofs; transfer to Verus, verified Rust, TLA+ or distributed protocols is reader inference. No such artifact or end-to-end systems-verification result is contributed. The complete 28-page publication, 13 examples,bibliography and checklist were read. The 946-member official archive was saved and its manifest inspected; code,data and plot assets were not executed or loaded as scientific results. Source diagnostics independently reviewed.
    • how much was read: most of it read
    • source
    • record id: autoformalize-mathematical-statements-by-2024
  • Can ChatGPT support software verification? (2024)
    • what: Uses GPT-3.5 to fill ACSL loop invariants in C programs, validates candidates with Frama-C WP, and supplies validated invariants to Frama-C SV and CPAchecker through ACSL2Witness. The benchmark selects correct, single-loop SV-COMP Loops tasks already carrying human ACSL annotations. Up to five completions at temperature 0.2 generate candidates; individually validated candidates are conjoined. CPAchecker runs k-induction without loop unrolling, deliberately restricting its normal capability. The paper distinguishes validity from usefulness and proposes, rather than evaluates, nested validator/verifier feedback loops. Appendix A gives the complete uniform prompt and a sample answer.
    • number: 106 tasks; 75 with validated invariants
    • number: up to 5 completions; temperature 0.2
    • number: 10-second validation; 900-second verification limit
    • number: Frama-C: 22 GPT versus 28 human
    • limits: One loop and correct input assertions only; 106 selected tasks. Failure to validate within 10 seconds does not prove an invariant false. Frama-C syntax and typing can reject meaningful candidates. Copying nearby assertions explains many successes. Results concern a June 2023 GPT-3.5 snapshot and a restricted CPAchecker configuration. Read version is the later arXiv v2, not the publisher PDF for the DOI; artifacts were not executed.
    • how much was read: most of it read
    • source
    • record id: can-chatgpt-support-software-2024
  • Clover (2024)
    • title: Clover: Closed-Loop Verifiable Code Generation
    • what: GPT-4 reconstructs code, contracts and English documentation from one another. Dafny and cross-checks then inspect whether they agree.
    • number: 52 of 60 correct examples accepted at ten attempts; tested adversarial examples rejected (Section 4)
    • limits: LLM reconstructions are correlated, so they can share a mistake. Agreement does not prove the English intent was encoded faithfully.
    • how much was read: most of it read
    • source; notes: Dafny, C verification, and the specification-intent gap; notes: Generated contracts and independent evaluation
    • record id: clover-2024
  • Evaluating LLM-driven User-Intent Formalization for Verification-Aware Languages (2024)
    • what: Scores LLM-written Dafny specs by checking concrete input/output pairs symbolically, including pairs with deliberately wrong outputs. In a set-intersection example, the contract says every result is in both inputs. It does not require every common element to appear.
    • number: applied to 64 of 153 MBPP-DFY specifications
    • limits: A failed verification usually means ā€˜unknown’, not ā€˜refuted’. Rejecting bad pairs measures only the pairs chosen. It does not show the spec rejects bad outputs in general.
    • how much was read: most of it read
    • source; notes: Testing strength, mutations, and vacuity; notes: User-intent formalization in verification-aware languages
    • record id: evaluating-llm-driven-user-2024
  • IronSpec (2024)
    • title: IronSpec: Increasing the Reliability of Formal Specifications
    • what: Tests whether a Dafny specification matches what developers expect. It uses three methods: checks with unconstrained inputs and outputs, small proofs of cases that should or should not be allowed, and mutations of the specification.
    • number: 14 specifications including six real verified systems; ten spec bugs confirmed by authors
    • number: 70 small test proofs, 21 needed help averaging 1.7 added lines
    • number: 61 surviving mutations, 13 judged intended
    • number: human effort hours to days; DaisyNFS about one to two hours
    • limits: The checks expose suspicious differences. They do not show the spec perfectly matches intent. It gives no success rate for autonomous spec generation.
    • how much was read: most of it read
    • source; notes: Specification errors and auditing; notes: IronSpec
    • record id: ironspec-2024
  • LLM-Guided Formal Verification Coupled with Mutation Testing (2024)
    • what: Proposes a three-stage GPT-4 workflow: derive natural-language/Z3Py invariants from specifications, translate behavioral Verilog hierarchically into Z3Py, and assess invariants against single-edit mutants produced with Yosys. Separates specification extraction/cross-checking from invariant generation, uses bottom-up submodule modeling when an LLM declines a complex design, and translates only mutant-versus-original changed lines into the formal model. Failed invariant cases become Verilog testbench inputs. The case study uses two invariants for priority between buses and between bits within a bus.
    • number: 27-channel interrupt controller
    • number: 5 submodules; 2 invariants
    • number: 20/20 mutants detected; reported mutation score 1
    • limits: A two-page methodology/case-study paper, with one interrupt controller and 20 mutants. It does not establish correctness of the LLM-derived formal model, invariant completeness, or robustness across models/prompts/runs. The prose says an UNSAT result has a counterexample, which conflicts with ordinary SMT terminology; no supplied code was inspected to resolve the encoding. Claims about politeness and monetary tips improving output are uncontrolled observations. Automated interaction frameworks remain future work. DOI identity comes from matching institutional title/authors and Crossref metadata, not a DOI printed in this author PDF.
    • how much was read: most of it read
    • source
    • record id: llm-guided-formal-verification-2024
  • miniCodeProps (2024)
    • title: miniCodeProps: a Minimal Benchmark for Proving Code Properties
    • what: Lean theorem statements about list, natural-number and sorting code, taken from TIPHaskell. It has a mode that writes the whole proof and a mode that searches over tactics.
    • number: 201 theorem statements: 86 easy, 115 medium/hard
    • number: pass@32 candidates
    • number: 201 Lean 4 theorem statements
    • number: GPT-4o 70/201 at pass@32 and 75/201 with refinement (Table 4)
    • limits: It has no spec generation or equivalence checking. It has no broad adversarial harness and no audit of axioms. Termination of recursion is not liveness of a distributed system.
    • how much was read: most of it read
    • source; notes: miniCodeProps
    • record id: minicodeprops-2024
  • nl2postcond (2024)
    • title: Can Large Language Models Transform Natural Language Intent into Formal Method Postconditions?
    • what: Has LLMs generate executable postconditions from plain descriptions. Measures both correctness and whether they reject known buggy implementations (bug-completeness).
    • number: catches 64 real-world historical bugs from Defects4J
    • limits: Rejecting those bugs does not fully describe which outputs are acceptable. Reference programs and tests remain part of the oracle. Correctness is only with respect to the provided tests.
    • how much was read: most of it read
    • source; notes: Testing strength, mutations, and vacuity; notes: Natural-language postconditions and known faulty implementations
    • record id: nl2postcond-2024
  • PALM (2024)
    • title: Proof Automation with Large Language Models
    • what: GPT-3.5 drafts a whole Coq proof. Symbolic repairs, CoqHammer, premise retrieval and backtracking then fix lower-level errors.
    • number: Formative study: 579 Verdi theorems, 520 errors
    • number: CoqGym: GPT-3.5 4377/10842 (40.4%), GPT-4o 4614 (42.6%), Llama-3-70B 4155 (38.3%)
    • limits: It has no result for a complete new Verdi/Raft proof.
    • how much was read: most of it read
    • source; notes: Coq: CompCert and Verdi lemmas, not newly built complete compilers/pro
    • record id: palm-2024
  • Selene (2024)
    • title: Selene: Pioneering Automated Proof in Software Verification
    • what: It isolates existing Isabelle lemmas from seL4, supplies their dependencies and examples, and retries GPT-3.5/GPT-4 proofs with error repair and retrieval.
    • number: Table 2 p. 1781: GPT-4 five-attempt rates 51.8, 12.5, 1.7, 15.8 percent across short, medium, long and proof-with-definition categories
    • limits: It covers selected kernel lemmas only. Hints from the proof prefix are privileged information.
    • how much was read: most of it read
    • source; notes: seL4: from whole-proof guessing to proof-state search
    • record id: selene-2024
  • TLA+ trace validation (2024)
    • title: Validating Traces of Distributed Programs Against TLA+ Specifications
    • what: Presents an API and TLC-based constrained model-checking workflow that records selected specification-variable updates from Java executions and checks whether the partial trace can be completed to a behavior of a TLA+ specification. The framework traces only chosen variables/events, leaving omitted values existentially open for TLC to reconstruct. It handles stuttering steps and implementation transitions that combine multiple TLA+ actions, and uses shortest BFS counterexamples or constrained DFS for speed. Case studies include Two-Phase Commit, snapshot-isolation key-value store, EWD998 termination detection, two Raft implementations and Microsoft CCF; trace validation found mismatches and exposed a CCF safety bug that became regression tests.
    • number: Counter implementation bug detected in less than one minute with event-only trace for 16 RMs
    • number: Two-Phase Commit 16 RMs event-only trace explores āˆž/557k states (BFS/DFS table)
    • number: Key-value 12-agent, 20-key/40-value event-only trace reaches āˆž states at 1-hour timeout
    • number: Five distributed-program case studies all yielded specification/implementation discrepancies
    • limits: Verdicts depend on instrumentation points, trace granularity and the high-level specification. Too-imprecise logs can admit erroneous traces because TLC fills unconstrained values; too much logging causes state explosion. TLC explores finite bounded models and can return no counterexample for an invalid trace when the searched diameter is insufficient. The method detects conformance discrepancies, not a proof that all executions of the implementation satisfy the specification.
    • how much was read: most of it read
    • source; notes: P08. Validating Traces of Distributed Programs Against TLA+ Specificat
    • record id: tla-trace-validation-2024
  • TSL+LLM pipeline (2024)
    • title: Combining LLM Code Generation with Formal Specifications and Reactive Program Synthesis
    • what: The paper splits generation between an LLM and correct-by-construction Temporal Stream Logic (TSL) synthesis. GPT-4 converts structured natural-language assumptions/guarantees into TSL; a reactive synthesizer generates the control structure; an LLM fills data/predicate functions and either wraps the synthesized code or uses it as prompt seed for a complete implementation. The authors evaluate five small reactive tasks (Ball, Game of Life, Vending Machine, Space Invaders, Rotating Cube), a scaling arbiter with 10/20/30 conditions, and Conway’s Game of Life prompt seeding. The TSL pipeline’s arbiter success is 61.5%, 45.4%, and 16.7% for 10, 20, and 30 conditions versus 0% for LLM-only; it uses 22, 31, and 40 average lines of verified synthesized code. Prompt seeding reaches 0.80 success on Game of Life at 15 trials versus GPT-4’s 0.40. Small tasks show mixed success and many unverified integration lines; failures include unsynthesizable TSL generated by few-shot prompting.
    • number: 5 small reactive tasks, 5/10/15-trial success rates
    • number: arbiter (10/20/30 conditions): TSL 61.5%/45.4%/16.7%, LLM-only 0%
    • number: arbiter synthesized verified lines: 22/31/40
    • number: Game of Life prompt-seeding success 0.80 vs GPT-4 0.40 at 15 tries
    • limits: The LLM must correctly express the natural-language requirements in TSL; an invalid or unsynthesizable specification is rejected. TSL separates temporal control from data/predicate implementation, but integration and function terms remain unverified LLM code. The study is small, uses GPT-4 few-shot prompting, and treats repeated trials/success as the metric; it does not establish correctness of natural-language interpretation or distributed-system safety. Authors state that the simple benchmarks do not always expose the pipeline’s benefit and that complex unknown TSL syntax causes weak performance.
    • how much was read: most of it read
    • source
    • record id: tsl-llm-pipeline-2024
  • Verus SOSP 2024 (2024)
    • title: Verus: A Practical Foundation for Systems Verification
    • what: A Rust verifier for systems code. In its EPR-enabled method (EPR is a restricted logic that the solver can decide), the developer writes the inductive invariant (a fact that holds initially and is preserved by every step) and the tool checks it automatically. The evaluation (Section 6, Figure 9) is at the component level.
    • number: 6.1K lines of implementation and 31K lines of proof
    • number: IronKV 1,533 exec / 4,509 proof / 1,613 trusted lines; verifies in 18 s on eight cores vs Dafny 201 s
    • number: node replication verifies in 9 s vs 228 s
    • limits: It applies to the paper’s EPR-enabled method, not to finding arbitrary invariants.
    • how much was read: most of it read
    • source; notes: S30; notes: Verus: A Practical Foundation for Systems Verification
    • record id: verus-sosp-2024-2024
  • Bosch formal-verification explanation user study (2023)
    • title: A User Study for Evaluation of Formal Verification Results and their Explanation at Bosch
    • what: Studies Bosch automotive engineers’ challenges with formal notations, refinement inconsistencies, and model-checker output, then evaluates a counterexample-explanation approach. A 41-person survey and a one-group pretest/posttest with 13 formal-methods-aware engineers compare raw model-checker output against explanations for airbag and electronic-power-steering cases. The design separates RQ1/RQ2 survey constructs from RQ3 intervention measures (better/quicker understanding, confidence, and value), documents questionnaire scales and execution, and reports task-level correctness rather than only opinions. Six of 13 understood the airbag raw result; 12 of 13 preferred the explanation. For inconsistent specifications, 5 of 13 were fully/partly correct with raw output versus 9 of 13 with explanations. The discussion identifies integration with heterogeneous industrial toolchains as a practical barrier.
    • number: 41 survey participants
    • number: 13 experiment participants
    • number: 6/13 understood raw airbag result
    • number: 12/13 preferred explanations
    • limits: The study is exploratory and Bosch-specific. The survey uses snowball sampling and self-report Likert responses; the experiment has no control group, only 13 participants, different pre/post use-case difficulty, and possible testing/instrumentation effects. Data are not openly available because of Bosch sensitivity and engineer privacy. Generalization beyond Bosch automotive engineers is explicitly limited.
    • how much was read: most of it read
    • record id: bosch-formal-verification-explanation-user-study-2023
  • Netrix guided consensus testing (2023)
    • title: A Domain Specific Language for Testing Consensus Implementations
    • what: Presents Netrix, a central networking server plus DSL for programmer-guided exploration of consensus implementations. Filters control message drops, delays, modifications and reordering; monitor state machines express safety/bounded-liveness assertions; residual nondeterminism is explored by PCTCP and tests are replayable. Formalizes protocol, monitor and product transition systems and proves monitor expressivity for complete runs. Instrumentation shims intercept RPC/message APIs; filters and key-value context encode semantic waypoints. Case studies cover Tendermint, Raft and BFTSmart across Go and Java, including regression tests and protocol-coverage measures. Filter-distance analysis predicts when PCTCP alone can find reorderings.
    • number: 34 unit tests total: 15 Tendermint, Raft tests, 8 BFTSmart (§5)
    • number: Instrumentation: 600 LOC added to 150k LOC Tendermint; 120/16k Raft; 150/16k BFTSmart
    • number: Tendermint found 4 new deviations; one liveness bug increased consensus time 30s→6min; fixes acknowledged
    • number: Raft tests found 4 documented bugs; PCTCP alone found none of new Tendermint or known Raft bugs
    • limits: Requires instrumenting communication APIs and serialization adapters; tests explore bounded executions (e.g., MaxEvents=1000, depth=10, 30s iterations), not exhaustive correctness. PCTCP cannot introduce Byzantine behavior and rapidly loses probability on deep reorderings. Findings are implementation-specific scenarios; passing tests do not prove safety or liveness. BFTSmart case found no bugs, possibly reflecting prior testing maturity.
    • how much was read: most of it read
    • source; notes: Netrix (2023)
    • record id: netrix-guided-consensus-testing-2023
  • nl2spec (2023)
    • title: nl2spec: Interactively Translating Unstructured Natural Language to Temporal Logics with Large Language Models.
    • what: nl2spec uses an LLM to map pieces of English to pieces of a temporal formula. Users can edit the mappings and regenerate. It reports confidence as how much the votes agree.
    • number: 36 expert-written requirements; Codex 16/36 initially, Bloom 5/36
    • number: interactive correction fixed 15 of 20 failures within three loops, Codex 31/36
    • number: four sampled examples raised initial Codex to 21/36, but they stayed in the set
    • number: 36 benchmark instances
    • limits: An expert assists it. It is not autonomous. Correctness means what the submitting expert meant. The confidence is not a calibrated probability.
    • how much was read: most of it read
    • source; notes: Natural language to temporal logic and TLA+; notes: papers
    • record id: nl2spec-2023
  • PRISM proof repair infrastructure (2023)
    • title: Proof Repair Infrastructure for Supervised Models: Building a Large Proof Repair Dataset
    • what: Introduces the initial PRISM Coq proof-repair dataset and its extraction infrastructure, with roughly 200 unique changes at publication. Defines proof repair with known repaired theorem statements and kernel-checking metrics; explains build, serialization, command alignment and project-history obstacles. It proposes infrastructure and evaluation practices, not a trained proof-repair model. Inputs include old theorem/proof, new theorem, changed dependencies, project state, raw text/ASTs/identifiers and intermediate goals/hypotheses. Partially applying an aligned pair of Git commits while leaving out one proof edit produces a broken proof plus supervised repair target. Across-project and chronological splits test different generalizations but no fixed split is committed. SwiM selects/clones cached opam environments; bwrap remaps cloned switches because binaries hard-code paths. strace recovers I/Q/R dependency flags from actual builds. SerAPI supplies states, while a heuristic parser and Vernacular queries work around extensible syntax, unqualified names, missing definition/conjecture queries, nested proofs and version drift. Command alignment solves a thresholded normalized-Levenshtein bipartite assignment over changed commands; it ignores proof bodies when comparing command text, supports moves across files/reordering, and uses t=0.4 to reject poor matches. Supplementary material lists target/candidate projects and a concrete hoare-tut exgcd.v repair replacing cutrewrite with replace, showing compact commit/diff/environment encoding of a much larger state.
    • number: initial release: a few Coq projects, roughly 200 unique changes
    • number: main text expansion target: 60 opam projects; appendix lists an additional 224 candidate projects
    • number: supplement Table 1 reports 171,775 proofs and 2,984,471 sentences; Table 2 reports 335,223 proofs and 6,078,063 sentences, each approximate one-snapshot inventory rather than repair counts
    • number: build attempts: about 68% failure across Coq versions 8.9–8.15 (seven major versions)
    • limits: The primary task assumes the new theorem and dependencies have already been repaired; successful checking establishes that stated theorem, not that a changed specification captures intent. Specification/definition repair lacks a satisfactory metric; exact equality is conservative and BLEU-like distances are inadequate. Initial release has a few projects and roughly 200 changes, whereas 60-project expansion and later large-scale coverage are planned. Main text and supplementary Table 1 use inconsistent wording about whether all 60 projects are already included; appendix prose explicitly calls repositories current and pending. Supplementary proof/sentence totals describe approximations from one snapshot per repository and are not repair-instance counts. Name resolution relies on handcrafted scopes and assumptions about shadowing; conjecture tracking assumes Show Conjectures order and proof-boundary behavior; grammar extensions can defeat serialization. Roughly 68% build-failure rate counts attempts across seven Coq versions 8.9–8.15, so it is not a rate of irreparably broken projects. No trained ML model, proof-repair accuracy, fixed benchmark split, or model comparison is reported.
    • how much was read: most of it read
    • source
    • record id: prism-proof-repair-infrastructure-2023
  • The FormAI Dataset: Generative AI in Software Security through the Lens of Formal Verification. (2023)
    • what: Presents FormAI: 112,000 GPT-3.5-turbo-generated compilable C programs, labeled using ESBMC bounded model checking. Authors assert counterexample-backed findings eliminate false positives; absence of findings is bounded by verification settings. Dynamic zero-shot prompts combine 200 task types and 100 styles. ESBMC runs with –unwind 1 –overflow –multi-property –timeout 30; labels are retained only for runs finishing within 30 seconds. Distinguishes verification successful, unknown and failed; maps detections to 42 CWEs. Reports seven ESBMC bugs found and subsequently fixed.
    • number: 112,000 compilable C programs totaling 8,848,765 lines of code (average 79 LOC, mode 47 LOC with 1,405 samples, 1 sample over 600 LOC, all 32 C keywords present vs 27 in Juliet).
    • number: Over 90% initial GPT-3.5-turbo compilation rate; cost 0.002 USD per 1K tokens (~200 USD total, generated in 24 hours).
    • number: 109,757 samples (98%) compile with gcc -lm alone; 2,243 (2%) require 10 external libraries.
    • number: 106,139 samples verified by ESBMC; 5,861 excluded (786 failed clang compilation, 5,075 crashed ESBMC).
    • limits: Functional correctness is not assessed. Verification is bounded to one loop unwinding and 30 seconds; successful/unknown programs may contain undiscovered bugs. Hardware affects timeouts. 5,861 generated programs were not classified due to Clang compilation failures or ESBMC crashes. CWE-242 reports were omitted because reported locations could point to a library declaration. Code and results files were not inspected.
    • how much was read: most of it read
    • source
    • record id: the-formai-dataset-generative-2023
  • FRET realizability (2022)
    • title: Realizability Checking of Requirements in FRET
    • what: It checks whether requirements can be implemented, using Lustre and JKind/Kind2. It finds minimal unimplementable sets of requirements with delta debugging, and shows counterexample traces of the environment.
    • number: aircraft study: 11 requirements; removing the hover-initialization requirement made a conflicting requirement realizable
    • number: infusion pump: 12 requirements rewritten to 26 scoped ones, 8 minimal unrealizable cores
    • limits: This is a technical report, not the CAV 2022 version. Results depend on which variables the environment controls.
    • how much was read: most of it read
    • source
    • record id: fret-realizability-2022
  • SpecFuzzer (2022)
    • title: Fuzzing Class Specifications (SpecFuzzer)
    • what: Infers likely class invariants for Java. It fuzzes a fixed grammar of assertions, filters candidates with Daikon against Randoop tests, and ranks them by how many mutants they kill.
    • number: 65 ground-truth assertions over 43 methods; up to 500 tests and 2,000 candidates per run, 10 runs, 90-minute timeout
    • number: 20,277 assertions before selection, 975 after (95.1% reduction)
    • number: 34/65 recall (52.3%), precision 65.8%, F1 0.57; GAssert 92.3%/27.6%/0.42; EvoSpex 88.5%/38.4%/0.53
    • number: Evaluation on 43 methods and 65 ground-truth assertions; 20,277 assertions before selection, 975 after (95.1% reduction)
    • limits: The output is likely invariants consistent with the tests, not proofs. The authors wrote the ground truth. Choosing by mutants can discard valid assertions. The intro’s 75% claim is not supported by the tables.
    • how much was read: most of it read
    • source; notes: Fuzzing Class Specifications (SpecFuzzer), Molina et al., ICSE 2022; notes: Fuzzing Class Specifications (SpecFuzzer), Molina et al., ICSE 2022
    • record id: specfuzzer-2022
  • Zeebe Raft property tests (2022)
    • title: Bulletproofing Zeebe concurrency bugs
    • what: An engineer at Camunda describes how the team tests the Raft (replication and leader-election protocol) module of the Zeebe workflow engine. Random sequences of events (messages, drops, restarts, clock ticks) are run under a deterministic scheduler, and after each step the code checks two safety properties; for liveness it runs extra failure-free steps and checks that a leader exists and all records are replicated.
    • number: 2 safety properties and 2 liveness properties tested
    • number: 6 bugs named: #5360 and #5356 (safety, critical), #8324, #10180, #10202, #10545 (found after liveness tests)
    • number: @Property(tries=10) per test, run on every CI build, pull request and main-branch commit
    • limits: Testing gives no guarantee: the tests sample a fixed number of random executions per build. Liveness is checked only when failures stop, and the blog says the system makes progress ā€˜only in specific cases’. Only used on the Raft module and on randomly generated process models.
    • how much was read: most of it read
    • source; notes: Bulletproofing Zeebe concurrency bugs (2022)
    • record id: zeebe-raft-property-tests-2022
  • Metha: Network Verifiers Need To Be Correct Too! (2021)
    • what: Metha generates network configurations, runs them on network analyzers and real-router images, and compares converged routing tables to expose model discrepancies. Semantic constraints activate meaningful protocol computations; minimum/middle/maximum parameter reduction and PICT pairwise tests cover selected feature interactions. Iterative delta debugging isolates all inclusion-minimal failure-inducing feature sets under explicit monotonicity/outcome assumptions. Records grammar versus semantic constraints, finite topology/parameter/test domain, exact coverage definition, iterative delta-debugging proof/complexity/masking limits, practical convergence oracle, eight detailed model-mismatch examples, complete bug/ablation/localization counts and commits, baseline parser exception and simulation-only NV boundary.
    • limits: §§1,3,7: Differential oracle is actual Cisco/Juniper router software, including vendor quirks and bugs. A discrepancy establishes disagreement with the selected implementation/version, not protocol-standard truth or independent proof that the analyzer is at fault. Developers confirmed 59/62 reports. Oracle fidelity, routing-table extraction, grammar/semantic constraints and comparison code remain trusted. §7: Convergence means ten unchanged routing-table snapshots sampled 10s apart (~100s), a heuristic rather than proof that the protocol has stabilized forever. Transients or oscillations slower than sampling, hidden state, timing/hardware differences and output normalization may affect comparisons. Paper gives no exact Cisco/Juniper image versions or host CPU/RAM. Batfish/NV source commits are cited. §§4–5: Search uses fixed physical/logical topology and provided features, finite recursive grammar, predefined strings, numeric minimum/maximum/one interior value. Pairwise coverage is over selected routerƗfeature/value combinations, not all configurations, numeric values, protocol states, failures, traffic or code paths. Supporting prefix/community lists are not independently fuzzed. §5.1: Full t-wise coverage finds every bug only if each is exposed by at most t interactions of selected value dimensions and test behavior meets the premise. Empirical one/two-feature causes do not prove larger or unseen-boundary bugs absent. PICT yields a covering suite; no proof of globally minimum test count provided. §6/Appendix A: Theorem 1 concerns all inclusion-minimal failing subsets, not globally smallest cardinality or every underlying code bug. Iterative extension lifts the unique-minimal-fault assumption, retaining monotone failure and definite consistent outcomes; proof explicitly invokes monotonicity. No proof every real configuration discrepancy satisfies these assumptions. §6.2: Bugs whose triggers strictly contain an already failing subset cannot be identified separately until the smaller bug is fixed. Different minimal triggers can share a source-code cause; the black-box method cannot deduplicate by code or pinpoint erroneous code. Counts represent developer-assessed/configuration-trigger evidence, not automatically proved distinct code defects. §6.2: Uncached worst case is O(|Q|!); caching unique queued feature sets gives stated O(2^|Q|) bound. Router/tool calls and minimization also cost time. Algorithm 1 prints head(queue) without explicit dequeue; narrative describes consuming the queue until empty. This listing omission is not evidence of implementation nontermination. §§7–8: Routing-table comparison catches crashes and silent control-plane model bugs, but does not directly check packet forwarding, data-plane execution, every proof procedure, solver soundness or live production networks. Only NV simulation was tested; authors infer likely verification impact from its shared model. Table 3 marks confirmation of C-BGP’s three reports as unknown (?). Batfish’s 29 and NV’s 30 reports were confirmed. §8.1: Each of four approaches runs 1794 tests with the same four-router Cisco star features. Semantic baseline finds 16 bugs versus random’s 3; boundary values add one, pairwise adds three. Original Metha misses a random parser bug because OSPF area numbers are fixed; adding that dimension finds it. Discussion’s claim that all random bugs are found with fewer tests needs this augmented input space. §8.1/Figure 5: Coverage measures pairs of feature values, with continuous random numeric values bucketed into minimum/maximum/middle. It is not code coverage or proof soundness. Semantic and random approaches have similar coverage but different bug counts, illustrating semantic activation. No repeated random seeds, confidence intervals or sample variance reported. §8.2: Mean 14.1 extra tests per discrepancy, range 7–58, not per bug; 58 localizes five bugs. Complete testing takes several days; single test averages two minutes, PICT generation six minutes. Full cost includes fault localization; no precisely timed total or resource scaling study. §§9–11: Testing supplements unit/system testing. No universal absence-of-bugs proof or Verus/verified Rust/TLA+/LLM-written proof result. Testing configuration synthesizers is future work. Version and confirmation claims refer to source publication time.
    • how much was read: most of it read
    • source
    • record id: metha-network-verifiers-need-2021
  • DistAlgo runtime checking (2020)
    • title: Assurance of Distributed Algorithms and Systems: Runtime Checking of Safety and Liveness
    • what: This work checks safety and bounded liveness of runnable DistAlgo programs while they run. It uses executable queries, fault injection and timeouts, and shows them on a polling example.
    • number: Fig 1: 24-line polling program; Fig 2: 41-line safety checker
    • number: timeouts q-r 0.00001 s, o-o 0.0001 s, total 1 s; raising o-o to 0.01 s gave no L2 timeout in dozens of runs
    • number: 10% message loss produced timeout failures
    • limits: It sees observed executions only. Bounded liveness turns liveness into safety. The paper gives no fixed denominator and no false-alarm rate.
    • how much was read: most of it read
    • source; notes: Assurance of Distributed Algorithms and Systems: Runtime Checking of S
    • record id: distalgo-runtime-checking-2020
  • Gauntlet: Finding Bugs in Compilers for Programmable Packet Processing (2020)
    • what: Gauntlet finds P4 compiler crashes with well-formed random programs, semantic mistakes in accessible compiler passes through SMT equivalence checking, and backend miscompilations through model-derived input/output packet tests. Its symbolic P4 interpreter supplies both oracles. The authors report96confirmed distinct bugs across P4C,BMv2 and Tofino over eight months,54fixed, and six specification changes. This is compiler bug finding with conditional translation validation of tested transformations, not verification of every compiler execution or correctness of the user network program. Captures generator probability/size controls, independent block semantics, symbolic table encoding and parameter directions, undefined-behavior taint and unstable-code distinction, parser/ToP4 dependencies, per-pass reparse/check workflow, constrained backend test generation and dropped-test limits. Preserves all bug status/location counts, timing rows, six concrete bug families, specification ambiguities, recent-merge count inconsistency, manual reduction and unmeasured coverage.
    • limits: §1–2: P4_16 finite bit-vector state and bounded/forbidden loops make equivalence decidable in principle. Control-flow loops are forbidden; parser loops are bounded by packet processing, so headline ā€œno loopsā€ should not be generalized to absence of every parser cycle. Efficient practical checks still depend on small programs and limited branching. This restriction distinguishes the method from unrestricted C; it is not an equivalence decision procedure for arbitrary Rust or distributed programs. §2.1/Table1: Crash bug means abnormal compiler termination without usable output/error, including assertion failure, segmentation fault,incomplete error and out-of-memory. Semantic bug means compiled behavior differs from input-program semantics, including packet outputs. Taxonomy levels1–7 are ASCII,words,syntax,type,static,dynamic,model conformity. Focus is static and higher-level failures rather than lexer/parser fuzzing alone. Some concrete failures reveal valid input incorrectly rejected; legality/specification uncertainty is resolved with developers. §2.2–2.3: Goal is many bugs, not completeness or a verified compiler. Differential testing across P4 targets cannot assume identical target semantics; independent same-target compilers were unavailable. Gauntlet tests mature P4C,BMv2,Tofino, excluding preliminary eBPF/uBPF/PSA toolchains. Its principal tests deliberately avoid target-specific extern calls. This is not a proof a particular P4 application satisfies network safety properties. §3/§5.2: Package parameters define input/output observables. Each programmable block is encoded separately; BMv2 v1model has Parser,VerifyChecksum,Ingress,Egress,ComputeChecksum,Deparser. out/inout form outputs; in/inout are symbolic inputs. Paths yield nested if-then-else expressions containing resulting parameter tuples. Copy-in is left-to-right; out values start uninitialized, and out/inout copy back on return. Correct interpretation of these effects is part of the trusted semantics. §4: Random generation grows a P4C IR AST probabilistically and emits P4 with ToP4. Node probabilities steer language coverage and keep programs small in lines/paths. A skeleton captures each target package/restrictions; two generator backends correspond to BMv2 and Tofino. A correctly rejected ill-typed/generated input is a generator bug, not a compiler bug. P4Fuzz comparison is qualitative; no matched-budget bug-yield experiment is reported. §4/§5.2: Unlike Csmith, generator permits undefined behavior and interpreter tracks affected expressions, so suspicious legal refinements are distinguishable from true miscompilation. Undefined-variable taint propagates through affected values. Replacing tainted expressions only in the before-pass formula classifies legal reductions of undefinedness as unstable code; changing a previously defined expression into undefined behavior remains a bug. Such warnings are not counted automatically as semantic bugs. §5.2: Interpreter took five months to become reliable enough for finding compiler semantic bugs. Developed with >600 P4C tests and >100 custom tests, generator co-evolved to expose interpreter mistakes, authors consulted compiler/specification maintainers. Their belief that discrepancies on audited regression tests probably indicate interpreter bugs is a debugging heuristic, not proof of the oracle. Formal semantics, Z3, IR parser and ToP4 are trusted dependencies; no machine-checked interpreter-correctness theorem is given. §5.2: Interpreter avoids compiler transformation passes, relying on the P4C parser and ToP4, and handles pre-desugared programs to detect earliest front-end bugs. p4test emits intermediate P4 after each pass; unchanged hashes skip checks, each changed output reparsed. Pairwise inequality queries compare corresponding programmable blocks; satisfiable query produces an input/table assignment and localizes a candidate faulty pass. Correctness is conditional on accurate semantics, preserved block interfaces and solver result; tested-program proof does not quantify over all source programs. §5.2/Figure3: Each table application uses one symbolic match key and symbolic action selector, rather than one variable pair per possible table entry. Matching condition selects an available action or default. This encodes outcomes for the represented table call, not a concrete exhaustive table configuration dump. Figure3 table exact-match hdr.a has assign and NoAction/default, yielding Hdr(1,hdr.b) only when key matches and action=1. Relational behavior across target-specific tables/extern state is outside stated coverage. §5.2: Header-validity interpretation follows P4C and maintainer clarification: marking previously invalid header valid gives undefined fields; final invalid header fields treated invalid. Extern returns and mutable arguments become arbitrary symbolic values, while target-specific extern semantics are not implemented for the reported generator campaign. Modeling arbitrary effects does not provide a precise implementation contract for a real device extern. §6.1–6.2: Model-based tests reuse original-program semantics to obtain one candidate input/output pair per controllable path; target output compared with expected output. BMv2 uses STF/capture files; Tofino uses PTF and software simulator. Authors initially reconfirmed every Tofino semantic bug on hardware, later used simulator only for speed; all counted bugs confirmed with developers. Therefore not all later reports independently exercised physical hardware. §6.2: Unknown/undefined path influences cannot be forced on real hardware, so constraints restrict paths. Undefined output bits marked don’t-care, invalid header members omitted. Solver chooses random nonzero input/output assignments because zero defaults can mask bugs. One tested representative per path is not exhaustive over all packet values on that path; finite-state exhaustive equivalence applies to accessible-pass SMT checks, not these backend tests. §6.3: Device minimum packet size,MAC restrictions and silent drops can make semantic-model tests unexecutable; such cases discarded, reducing coverage. P4 does not specify all transformations between programmable blocks, which complicates end-to-end expected packets. Many branches can generate exponentially many paths and millions of packet pairs. Current small programs avoid that observed bottleneck; no demonstrated complete path coverage for large deployed programs. §7/Tables2–3: Eight-month longitudinal search,96new distinct developer-confirmed bugs=62crash+34semantic;54fixed=31crash+23semantic. Filed reports are not all confirmed bugs: Table2 lists117filed reports. Status and confirmation at publication, not current repository state. No total generated-program denominator, matched alternative-fuzzer budget, independently adjudicated false-negative rate or compiler source-code coverage is supplied. Internal fixed-count discrepancy: Table2 printed fixed-crash cells27+4+8 sum39, and fixed-semantic22+1+0 sum23, yielding62fixed overall, whereas abstract reports31fixedcrash/23fixedsemantic/54total and conclusion54total. Preserve all as reported; no independently established resolution. §7.1: P4C59confirmed=33crash+26semantic;BMv2five=4+1;Tofino32=25+7. Tofino excludes P4C frontend/midend bugs reproducible there and two downstream crashes filed as upstream missed optimizations. Shared P4C bugs likely affect backends, but exact Tofino pass list unavailable. BMv2 tested less extensively and Tofino more complex; counts cannot rank intrinsic compiler quality. §7.1/Table3: P4C front-end38 and mid-end21;backend37=BMv2five+Tofino32. All P4C semantic bugs found by translation validation, Tofino semantic bugs by model testing; where possible P4C findings reproduced with packet pairs. Five-month interpreter preparation and weekly ~10,000 random programs are reported; eight-month campaign is not eight months of equally mature fixed-method automated runs. §7.2/Table4: Times are semantics generation for single programs/passes, not whole-compiler certification latency. tna_simple_switch1940LOC5s;switch_tofino_x0 5751LOC51s;switch_tofino2_y0 6024LOC53s;fabric958LOC2s;P4_14-converted switch5894LOC10m20s. Dense parser branching and Python implementation blamed for cost; formula equality typically <1s is authors’ observation, not universal time bound. No machine configuration,repetitions,CI or solver-timeout rate for these timings is given. §7.3/Figure5a–c: Missing SideEffectOrdering transformation of ternary nested in addition crashes Tofino; missed InlineFunctions also leaks unsupported calls to backend. Unknown-width shift crashes type inference and prompts specification prohibition. A valid slice expression instead becomes illegal through StrengthReduction index overflow. These demonstrate source legality, downstream symptoms and originating faulty pass must be distinguished. §7.3/Figure5d: Passing low-byte slice as inout while assigning disjoint high-byte slice should preserve high-byte assignment. SimplifyDefUse assumed entire variable copied back and deleted the assignment. At least11/26P4C semantic bugs concern side effects/copy-in-copy-out;21/33P4C crash bugs involve type checker. These are scoped classifications, not incidence rates for arbitrary programs. §7.3/Figure5e: Invalid-header write/read folded into constant assignment on valid header is allowed by undefined behavior, but can conflict with backend no-op expectations; maintainer warning accepted. This is unstable code, not necessarily miscompilation. Figure5f exit ambiguity: authors expected copy-out even after exit, whereas pass moved assignment after exit and lost updates; clarification changed spec and ensuing implementation changes introduced ≄3 further bugs. §7.1 versus §7.3: Paper reports16/59P4C bugs from recent merges in §7.1, but19/59 in §7.3. Preserve both counts as an unresolved internal discrepancy. Predication change caused at least six bugs(one crash,five semantic); independent user report duplicated earlier finding. Six specification changes include header validity/initialization,unknown-width shifts,exit/copy-out. These are reported campaign outcomes, not claims that all such ambiguities now resolved. §7.3–7.4: Four invalid intermediate-P4 emission bugs were fixed but explicitly excluded from96. Reparsing can expose ToP4,parser or transform bugs, even where final execution unaffected. Distinct assertion messages help crash deduplication; thin nanopasses help isolate semantic defects. Almost all crashes assertion failures suggests missing assertions might convert some into silent semantic failures, an authors’ inference rather than measured counterfactual. §7.4/§8: Open-source maintainers responded quickly, while opaque Tofino tracker and infrequent binary updates cause repeated rediscovery. Manual reduction: inspect each flagged program and prune to reportable case; automatic reduction is future work. Backend translation validation, safe-optimization plugin and long-term CI analysis are proposed, not evaluated results. Public open-source Gauntlet and P4C CI integration reported; no artifact execution in this reading. §8: Generator omits extern calls,method overloading,type definitions,varbit vectors,runtime indices,longest-prefix/ternary matches,generic-body type inference,annotations and custom table properties. Interpreter covers more features than generator; do not confuse those coverages. Compiler code coverage unmeasured. Extern modeling especially difficult without hardware semantics. Performance/resource-usage regressions not detected by current correctness techniques. §9: P4K and petr4 provide language-foundation work; netdiff compares dataplane semantics; p4pktgen starts from backend JSON and therefore cannot expose source-to-JSON transformation errors in the same way. These references motivate complementary tools, not independently verified claims of their current coverage. No Verus,verifiedRust,TLA+,distributed-consensus proof or LLM-generated proof experiment. Direct relevance is trustworthy semantics/oracles and distinguishing generated-test evidence from quantified translation checks.
    • how much was read: most of it read
    • source
    • record id: gauntlet-finding-bugs-in-2020
  • CoqGym (2019)
    • title: Learning to Prove Theorems via Interacting with Proof Assistants
    • what: The complete five-page official PMLR supplement is newly read: A.1 project compilation, A.2 proof-tree reconstruction, A.3 synthetic proof extraction and the full Figure A, then every production of grammar B across three pages. The original 11-page CoqGym/ASTactic main-paper record and evaluation are explicitly inherited. The supplement explains collection bias, the discarded multi-goal traces and why synthetic proofs are conditional proofs in augmented contexts; it supplies no additional success-rate experiment or system soundness theorem. Serializes kernel terms/runtime proof states through modified Coq and SerAPI while leaving the checking core untouched; represents proof trees and complete environments. Project-disjoint train/validation/test split has 43,844/13,875/13,137 proofs. Generates 1–4-step synthetic intermediate-goal proofs, but ASTactic training does not use them. Encoder embeds goal and premises with child-sum TreeLSTM; GRU decoder grows Ltac AST depth-first, attends over premises and predicts grammar productions. Argument generation selects available premise identifiers, classifies integers 1–4, or randomly selects quantified goal variables. Teacher forcing and cross-entropy train individual tactics; beam-search tactics feed DFS with duplicate-state backtracking. Combines learned decomposition with built-in automation or hammer at each goal.
    • number: about 71K proofs from 123 projects
    • limits: Compilation success and the manually installed dependency subset select the collected projects.123projects/3061files are the collected corpus, not ecosystem coverage. Tree reconstruction uses one disappearing goal per step. Tactics that affect multiple goals/goal selectors are discarded, with reported loss<1%; the denominator is described as data without a detailed sampling/count audit. Synthetic theorem contexts may include generalized descendant obligations H3/H4. This shortens a conditional proof; it does not establish an unconditional shorter proof of the original theorem or independent novel mathematical evidence. The grammar starts at tactic_expr, permits listed atomic tactics, identifiers and small integers1–4, and lists fixed hint databases. It has no arbitrary Ltac sequencing, custom tactics or arbitrary Coq-term synthesis; restriction is deliberate. Inherited main-paper limits still apply: at most10environmental premises plus local context; teacher-forced supervised tactic training; synthetic proofs not used by the reported ASTactic; search/tactic/time budgets; no modern LLM, distributed protocol, Rust/Verus or TLA+ experiment. Only printed grammar/proof examples were read. No repository, Coq implementation, dataset, generated proof corpus or solver/prover execution was inspected or run.
    • how much was read: most of it read
    • source; notes: CoqGym: project separation and checker-owned proof state
    • record id: coqgym-2019
  • Simulink model testing versus model checking (2019)
    • title: Evaluating Model Testing and Model Checking for Finding Requirements Violations in Simulink Models
    • what: Compares robustness-guided hill-climbing model testing (MT) with QVTrace/Z3 model checking (MC) on eleven industrial Simulink CPS models. Requirements are manually translated to STL and then fitness functions or QCT. Table6 reports92 requirements: MC proves41, finds23 violations and leaves17 to bounded checking, while11 Autopilot requirements cannot be translated. MT finds40 violations, including all23 MC cases; together the methods resolve81/92. The paper contains conflicting counts and averaging language that are retained explicitly [Q13–Q24,Q28]. The paper relates applicability to open/feedback-loop structure, state machines, continuous dynamics, nonlinearity, non-algebraic and matrix operations, and machine learning. It gives five STL requirement patterns, an STL-to-robustness translation, a concrete hill-climbing algorithm and detailed per-model outcomes/run frequencies. Twelve violations occur beyond BMC bounds, including eight Two Tanks cases at roughly500–1000 steps despite bounds below270. Smaller modified tanks move failures earlier and allow MC to find the11 MT violations. These are changed-model results, not original-model successes [Q3–Q16,Q23,Q26–Q27].
    • number: 11 models,92 experimental requirements
    • number: 41MC proofs,23MC violations,17BMC cases,11untranslatable requirements
    • number: 40MT violations;17 additional toMC;12 beyondBMC bounds
    • number: 81/92 resolved jointly;11 inconclusive
    • limits: CompanyA deliberately introduced faults based on past CPS-design experience; their locations and types were hidden from tool users (§1). This supports the substance of seeded-fault wording, contrary to the reviewer’s source-absence claim. One company/domain, one HC setup and one QVTrace/Z3 configuration do not establish universal tool rankings. Bounds, input ranges, manual requirement translation and default finite simulation durations constrain conclusions. No proof of absence follows from MT; model simplification can alter requirements. The preprint has29-versus23 MC violations,3-versus2 Neural Network requirements, a Triplex run-count mismatch, and ambiguous average-time population [Q1,Q13–Q28]. The printed finite-signal STL example needs an end-of-trace convention, a longer signal or a corrected horizon. Signals are defined over[0,T], yet the nested F[0,T]G[0,T] robustness minimum accesses[t,t+T]; t=T/2 requires values through3T/2. The paper does not resolve that boundary. This diagnoses the printed example only, not the unread fitness implementation or the reported runs [Q31,Q32; Table4’s ā€œuntil the endā€ prose].
    • how much was read: most of it read
    • source
    • record id: simulink-model-testing-versus-model-checking-2019
  • VerifAI: A Toolkit for the Formal Design and Analysis of Artificial Intelligence-Based Systems. (2019)
    • what: Introduces a Python toolkit integrating semantic scenario generation, black-box simulation, property monitoring, sampling search and counterexample analysis for AI-based closed-loop systems. Demonstrates autonomous-driving falsification/fuzzing, counterexample-guided neural-network data augmentation, cart-pole robustness testing and mountain-car training-parameter search. Formal models and temporal-logic monitors guide finite simulation; the paper provides no machine-checked correctness theorem or exhaustive safety certificate. Explains how one semantic feature representation connects six workflows: falsification, fuzz testing, counterexample analysis, data augmentation, hyperparameter synthesis and model-parameter synthesis. Scenic supplies conditioned scenario distributions; monitor scores guide adaptive sampling; feature-valued error tables support PCA and recurring-value analysis. Concrete examples expose perception-to-controller failure propagation and distinguish rewards, training settings and system parameters. Quantitative evidence is mainly a1000-sample cart-pole illustration with38violations; substantial augmentation/algorithm detail is delegated to prior publications.
    • limits: Inputs are a simulatable closed-loop system(controller, perception and plant), a modeled environment and a property. Controller/perception can be arbitrary executable code. The simulator is a black box, so the evidence concerns simulations of this chosen composition and environment. No proof of correspondence to physical dynamics, renderer fidelity, implementation semantics or every possible environment is given. Semantic/abstract features describe objects, positions, headings, colors and parameters rather than raw pixel arrays. They can be hierarchical products of boxes/finite sets/structures/arrays or a Scenic probabilistic program. Scenic constraints condition the scenario distribution and a renderer/simulator creates concrete sensor inputs. This is a generative search space; the paper supplies no abstraction-soundness theorem covering every concrete image or real environment. Perception is assessed through system-level behavior because component specifications are difficult; the same classification mistake matters when it causes a closed-loop failure. This does not establish correctness of perception outside modeled/rendered contexts. Distribution assumptions and permitted agents/behaviors are designer choices, explicitly acknowledged as incomplete environment modeling. The initial release uses sampling, not exhaustive symbolic exploration. Listed passive methods are uniform random, simulated annealing, Halton and Scenic samples; active methods are cross-entropy and Bayesian optimization. The prose groups simulated annealing among no-feedback samplers; its specific implementation is not explained, so the record does not infer an algorithmic contract from that label. Directed/exhaustive and symbolic/adversarial methods are future extensions. Monitors accept MTL, objective functions or arbitrary Python code; MTL Boolean and quantitative semantics use py-metric-temporal-logic. A monitor score can guide search and identify a violating trace. The paper gives no formal monitor implementation proof, sampling-completeness theorem, stopping rule, discretization error bound or statistical assurance theorem. No discovered violation is not a proof of universal satisfaction. Error-table rows are counterexamples and columns are semantic features. PCA is offered for ordered domains and recurrent-value subsets for unordered domains, either offline for debugging or online for sampling. Correlation is the stated interpretation, not demonstrated causal attribution. The paper gives no numeric PCA output, significance assessment or validation of inferred feature importance. Communication is client-server over IPv4 sockets: VerifAI sends a configuration and the simulator returns trajectories, supporting multiple simulators. This is interoperability infrastructure, not verification of a distributed protocol, socket delivery guarantees or concurrency correctness. AV experiments use commercial Webots2018. Lane following uses non-ML line detection; squeezeDet-based perception estimates cone distance and initiates a lane change below15m. The MTL property requires cone clearance and avoiding overshoot, but its exact formula, clearance threshold, horizon and robustness normalization are not printed. First AV case varies object positions/orientations, disabled-car color, cruising speed and reaction time. The orange car is mistaken for cones, triggering a premature/incomplete lane change and crash. This is a concrete found failure, not a quantified search-efficiency comparison; sample counts, runtimes, seeds and baseline performance are absent. The acknowledgements identify a Titan Xp GPU used for the research, without specifying a complete machine or its assignment to this experiment. Second AV case models an occluded intersection accident with sampled initial positions. One car turns using an OpenStreetMap/Intelligent-Intersections trajectory; the other maintains velocity or brakes on a simulated smart-intersection warning. The authors say this can identify sufficient advance notice, but provide no numerical warning bound, exhaustive guarantee or experiment table. Figure3 is explicitly a partial Scenic program; missing world-model definitions and spot2 prevent treating it as standalone runnable code. Data-augmentation example renders road images for squeezeDet, then selects additions by random error-table samples, top-k closest samples or PCA generation. Figure4 shows two cars counted as one. Accuracy improvement and detailed results are attributed to reference9; this paper prints no accuracy values, held-out split, number of new images, retraining budget or comparative statistics. Prior-paper results have not been independently read here. Cart-pole controller is trained using PPO with100k training episodes. Test variations named in the prose are initial lateral position/rotation and pole mass/length; Figure5 visually plots pole length, cart mass and pole mass. Record retains that presentation difference without guessing an implementation error. Reward is described using2.4m displacement and12degree angle, then testing thresholds are said to be slightly modified without supplying values. Cart-pole Figure5 reports38violations among1000randomly sampled parameter configurations. Main text also says sampling was guided by reward; the precise sampling law is unspecified. Reader arithmetic38/1000=3.8percent describes this plotted set only, not a deployment failure probability, iid confidence interval or general robustness certificate. No runtimes, repeated seeds, statistical uncertainty, comparator or numerical failure coordinates are reported. Mountain-car experiment searches discrete training-algorithm choices and training-set size. It negates the goal-distance reward so falsification becomes finding settings yielding a successful learned controller. A table of safe hyperparameters and PCA sensitivity are claimed but neither values nor counts/results are printed. Safe here is simulation success in this study; no guarantee for all training randomness, environments or future policies follows. Novelty/first-tool claims concern integration and extension of prior methods. The paper explicitly delegates algorithms/formalisms to refs7–10,12,15,22 and augmentation results to ref9. It contains no formal theorem, proof, verified tool kernel or code-generating proof agent. Integration claims are author statements, not an independently established priority survey. Implementation/examples are linked at https://github.com/BerkeleyLearnVerify/VerifAI with expected outputs. No commit hash, full dependency lock, complete experiment hardware configuration, wall-clock results or reproduction is supplied here. Acknowledgements identify a Titan Xp GPU used for the research. The front page displays Artifact evaluated and Functional badges; this is published artifact-evaluation evidence, not this reader’s execution or independent replication of every experiment. CARLA and X-Plane interfaces already exist according to the conclusion, whereas applications and symbolic search are future work. No artifact source or simulation was executed in this reading. Relevance to specification/proof-agent evaluation is methodological: preserve the scenario model, executable target, explicit monitor, generated witness and training/test distinction. Sampling-guided repair and reward optimization can find improvements without supplying a proof. No LLM agent, Verus, verified Rust, TLA+ or distributed-system verification experiment is reported.
    • how much was read: most of it read
    • source
    • record id: verifai-a-toolkit-for-2019
  • unified PL-NN branch-and-bound verification (2018)
    • title: A Unified View of Piecewise Linear Neural Network Verification
    • what: Recasts major PL-neural-network verification methods as branch-and-bound optimization and introduces a benchmark suite for comparing their bounds, branching and search behavior. Boolean output properties become a scalar minimization/counterexample problem by adding linear and max-pooling layers. Reluplex, Planet, MIPplanet, BaB, BaB-input, BaB-relusplit and BaBSB are described as choices of bounds, splitting and search in one algorithmic template. The paper argues that rebuilding convex approximations after each split tightens bounds, proposes input-domain branching and Kolter-Wong smart branching, and releases CollisionDetection, ACAS and PCAMNIST benchmarks. Higher-level relaxations and non-PL activations are identified as extensions when suitable bounds exist.
    • number: 98.40% BaBSB ACAS success at one hour
    • number: 79.26% Reluplex ACAS success at two hours
    • number: two-hour timeout and 20GB memory cap
    • number: 500 CollisionDetection and 188 ACAS properties
    • limits: Formal guarantees target bounded-input piecewise-linear networks and Boolean formulas over linear inequalities; sigmoid/tanh and approximate or undecidable approaches are outside the comparison. Verification is NP-hard and experiments use a two-hour/20GB single-core limit, so timeout is unresolved rather than proof of failure. BlackBox and MIP rely on Gurobi; random upper bounds must produce valid counterexamples.
    • how much was read: most of it read
    • record id: unified-pl-nn-branch-and-bound-verification-2018
  • Fonseca study (2017)
    • title: An Empirical Study on the Correctness of Formally Verified Distributed Systems
    • what: The authors tested IronFleet, Verdi and Chapar. Over eight months they found 16 bugs, all at the edges between the specification, the tools and the unverified code. None were in the verified protocols.
    • number: 16 bugs; the PK toolkit automated detection of 13
    • number: disabling deduplication via seven implementation lines still passed IronFleet verification
    • number: 16 bugs found, none protocol-level; the PK testing toolchain detects 13 of the 16
    • number: IronFleet request-deduplication patch: about seven implementation lines changed, still verified
    • limits: Finding no protocol bugs does not show that none existed. The source of the PK toolkit was not found.
    • how much was read: most of it read
    • source; notes: Specification errors and auditing; notes: Empirical distributed-systems study and PK
    • record id: fonseca-study-2017
  • Who Guards the Guards? Formal Validation of the Arm v8-M Architecture Specification (2017)
    • what: The authors build a higher-level account of the security of the Arm v8-M architecture, which processor designers can review. They then formally compare it with the detailed processor spec. They check both forbidden access and intended permitted access.
    • number: twelve bugs found (including two security bugs)
    • limits: The trusted secondary specification still needs validation by experts.
    • how much was read: most of it read
    • source; notes: Specification errors and auditing; notes: Appendix B: Concrete systems and theorem scope
    • record id: who-guards-the-guards-2017
  • COS (Cloud Outage Study) (2016)
    • title: Why Does the Cloud Stop Computing? Lessons from Hundreds of Service Outages
    • what: The authors read 1247 news items and public post-mortems about 597 unplanned outages of 32 internet services (2009-2015), tag each by root cause, impact and fix, and report what causes outages and why redundancy still fails. The data set is released as COS DB.
    • number: 597 outages, 1247 links, 3249 tags; 32 services; 2009-2015
    • number: Root causes among known ones (355 of 597 unknown): upgrade 16%, network 15%, bugs 15%, config 10%, load 9%, cross-service 8%, power 6%, security 5%, human 4%, storage 4%
    • number: 78% of services (25) averaged less than 99.9% uptime; 6% (2) less than 99%
    • number: Impacts: full outage 59%, essential operation failure 22%, performance 14%, data loss 2%
    • limits: Only publicly reported outages, skewed to popular services; root cause known for only about 40% of outages. The paper does not give fixes or any formal method. Tags come from manual reading by at least four authors.
    • how much was read: most of it read
    • source; notes: ## Why Does the Cloud Stop Computing? (2016)
    • record id: cos-cloud-outage-study-2016
  • Trustworthy Specifications of ARM v8-A and v8-M System Level Architecture (2016)
    • what: Describes executable Arm architecture specs that are generated alongside the architecture documents. They are validated against separate simulators, processor models and tests.
    • limits: Agreement with another artifact helps only after one checks how independently it was built. This is a separate question from logical consistency.
    • how much was read: most of it read
    • notes: Specification errors and auditing
    • record id: trustworthy-specifications-of-arm-2016
  • Empirical Software Metrics for Benchmarking of Verification Tools (2015)
    • what: Defines data-flow-derived source-code metrics and builds Verifolio, a learned selector of software verifiers. Variable-use roles, loop patterns, control-flow metrics and property type predict each tool’s correct/unknown/incorrect answer class; the selector prefers a predicted-correct tool and resolves ties by class probability. Empirical retrospective experiments on SV-COMP2014 and2015 show higher average held-out competition scores than any constituent tool. There is no proof that predictions or selected verifier answers are sound. Uses27 variable roles normalized by variable count, four loop-pattern frequencies and five CFG/function-pointer/recursion metrics plus property type. Roles are control-flow-insensitive fixed-point data-flow analyses. One classifier per verifier predicts correct,unknown or incorrect relative to benchmark-author expected answers; opted-out categories count unknown. Select a predicted-correct tool, else predicted-unknown, else competition winner. Probability-based tie-breaking beats runtime regression; weighted RBF SVM/LIBSVM and grid search handle rare incorrect-answer labels. Weights multiply score potential, criticality (inverse number of correct tools), category performance ratio and relative speed. Decisiveness-reliability plots show correct versus incorrect answer proportions separately from score, exposing scoring-policy dependence and unsound tool answers. This is predictive empirical evidence, not verification of a portfolio implementation.
    • number: {ā€˜variable_roles’: 27, ā€˜loop_metrics’: 4, ā€˜control_flow_metrics’: 5, ā€˜training_fraction’: 0.6, ā€˜test_fraction’: 0.4, ā€˜random_repetitions’: 10, ā€˜median_feature_extraction_s’: 0.5, ā€˜median_prediction_s’: 0.5, ā€˜score_2014_portfolio’: 1494, ā€˜score_2014_CBMC’: 1292, ā€˜score_2015_portfolio’: 2511, ā€˜score_2015_CPAchecker’: 2228}
    • limits: Tasks are C source files with label-reachability or memory-safety properties; memory safety covers unsafe deallocation,unsafe pointer dereference and leaks. Expected truth labels are supplied by benchmark designers; historical tool results are reused rather than all constituent tools rerun under a reconstructed competition environment. Predictive assumption: similar source metrics imply similar verifier behavior. Paper documents failures caused by unsoundness,bugs,incompleteness and class imbalance; selection cannot guarantee a sound answer. Random60:40 task splits within each year, repeated10 times; this is not training exclusively on2014 and testing exclusively on2015. Grouped splits by program family and nested tuning/weight-construction boundaries are not described; independence from near-duplicate benchmark variants is not established by the paper. Competition participants supplied benchmarks; authors explicitly warn idealized-solver figures can be optimistic. Reported metric success alone does not isolate every feature’s marginal contribution. No parameterized distributed verification, liveness specification checking, Verus/Rust or LLM-agent proof generation is evaluated. No artifact execution performed for this reading.
    • how much was read: most of it read
    • source
    • record id: empirical-software-metrics-for-2015
  • Looney (2015)
    • title: Analysing Sanity of Requirements for Avionics Systems
    • what: Checks a set of temporal-logic requirements before any model exists: finds every smallest group of requirements that contradict each other, finds requirements implied by others, and suggests new requirements to cover behavior the set leaves open. Tested on random formulas, a plane-landing example, and four Honeywell avionics models.
    • number: Honeywell sets of 3, 5, 10 and 10 formulas: all consistent; two redundancies found; consistency took 0.1 s, 0.1 s, 73.6 s and 210879 s for the largest (pbit)
    • number: Landing example: R4 vs R6 and R1, R2, R5 were inconsistent; A5 and A6 were redundant; coverage rose 0% to 9.1%, 39.4%, 54.9% with 3 suggested formulas
    • number: Switching to the SPOT translator sped up checking by several orders of magnitude on larger sets
    • number: Honeywell engineers: tool-supported formalization took under 5 minutes per requirement after a week; requirement-elicitation stages took 18 per cent less time
    • limits: Needs requirements already written in LTL (Honeywell used a pattern tool, ForReq, from English). Largest industrial set was 10 formulas, which the authors call hardly a demonstration of industrial scale. Completeness needs a human to separate assumptions, required and forbidden behavior, and was not tested on Honeywell data. Honeywell requirements are confidential.
    • how much was read: most of it read
    • source; notes: Analysing Sanity of Requirements for Avionics Systems (2015)
    • record id: looney-2015
  • Woodcock survey (2009)
    • title: Formal Methods: Practice and Experience
    • what: Survey of industrial formal-methods practice combining a new questionnaire covering 62 projects, earlier surveys, eight highlighted industrial project families, and proposals for reusable verification experiments in the Verified Software Repository. Explains formal methods across requirements, specification, architecture, design, implementation, testing and maintenance. The new survey collected structured questionnaires November 2007–December 2008; 56 project reports came from involved individuals and six from literature. Reports application areas, size bands, techniques, expertise/training, perceived time/cost/quality effects and intentions to reuse. Compares model-checking uptake across decades using Fisher exact tests. Eight highlighted families cover Transputer floating-point microcode, railway control, Mondex, AAMP processors, Airbus SCADE, the Maeslant barrier, Tokeneer and Mobile FeliCa. They expose learning/reuse costs, translation and optimization bugs outside proof boundaries, requirements clarification, selective formalization, and tool limitations. Discussion favors choosing rigor by component/property, robust supported tools, familiar design-language interfaces, and integration with existing development processes. Repository proposal requires explicit proof assumptions and limits and reusable theory/artifacts; pilots include file stores, FreeRTOS, auctions, pacemakers and hypervisors alongside Mondex/Tokeneer.
    • number: Model checking in surveyed projects: 13% in the 1990s versus 51% in the 2000s; two-tailed Fisher p=0.003.
    • number: Survey: 62 projects; 56 participant reports and six literature reports; about half supplied code size.
    • number: Figure 6 quality improvement: 92% of cases reported an increase, none a decrease; this is a perception measure.
    • number: Tokeneer: 9,939 core Ada lines plus 16,564 SPARK annotation/comment lines; 260 reported person-days, excluding independent testing contribution.
    • limits: Historical 2009 synthesis, not a current adoption census or controlled causal evaluation. Open-invitation sampling favors the authors’ contacts, includes few model-checking contributions and underrepresents disappointed stakeholders; Europe dominates. Outcomes mostly report participant beliefs, with no comparison population or reliable universal cost model. Most projects lack relative time/cost evidence; reported quality improvement is not a measured 92% defect reduction. Significance tests concern this selected sample and do not remove selection/confounding bias. Industrial project claims summarize cited reports and were not independently reproduced. Some formal work covers models, selected code, selected properties, or parts of certification rather than a complete implemented system. Tokeneer’s tabulated 4% system-testing effort excludes independent SPRE testing; the text estimates 25% as more representative. The new survey’s individual responses and underlying dataset were not inspected. Recovered STFC author copy is 40 substantive pages with placeholder journal metadata, versus DOI/Crossref 36 pages; repository record explicitly links this title/file to DOI 10.1145/1592434.1592436, whose short metadata title is Formal methods. Database keyword/researcher estimates are explicitly rough historical estimates, not reliable counts of the field.
    • how much was read: most of it read
    • source; notes: S28
    • record id: woodcock-survey-2009
  • Creating an LLM benchmark suite for specification inference
    • what: A proposed benchmark with four tasks: add memory-safety specs, strengthen them into specs of full behavior, repair wrong specs, and generate lemmas. Each task runs zero-shot, few-shot, or interactively with verifier feedback. The verifier is Viper.
    • limits: A proposal, not a result. It gives no metrics.
    • how much was read: most of it read
    • source
    • record id: creating-an-llm-benchmark
  • Aria (2026)
    • title: Harnessing Code Agents for Automatic Software Verification
    • what: Claude Code (Opus 4.7) proves one Coq lemma at a time inside a sandbox, and the Coq kernel checks each proof. There is no search over proof steps and no retrieval of related facts. The lemma statements are given. The agent writes the proofs.
    • number: Proves all 4,257 lemmas of four Iris core modules and 217 lemmas for Rust standard-library verification
    • number: 79.2% of Iris core lemmas proved on the first try; mean 0.51 retries; maximum 28
    • number: Total model time 379.7 hours; mean 321.1 s per lemma
    • number: Open model Kimi K2.6: 55% first-try vs 72.5% for Opus 4.7, about seven times as long
    • limits: The statements were given, not written. Iris is public and probably in the training data. The paper argues that its proofs differ from the upstream ones. That does not test for contamination (the notes’ caveat).
    • how much was read: parts read
    • source
    • record id: aria-2026
  • AutoCLRS completeness-test artifact (2026)
    • what: This artifact applies the intent-formalization completeness test to textbook algorithms written in F*/Pulse. Only the abstract interface, not the code body, should establish the expected result. The spec may allow multiple valid outputs.
    • limits: The README lists unresolved build and path issues. The notes did not reproduce the reported outcomes.
    • how much was read: parts read
    • source; notes: User-intent formalization in verification-aware languages
    • record id: autoclrs-completeness-test-artifact-2026
  • AxProverBase (2026)
    • title: A Minimal Agent for Automated Theorem Proving
    • what: A deliberately simple Lean 4 proof agent: an LLM writes a proof, Lean compiles it, errors go back, and the agent keeps its own notes between tries. With Claude Opus 4.5 it matches far more complex provers on math benchmarks at lower cost, and ablations show which parts matter.
    • number: Claude Opus 4.5, 32k thinking budget, 50 iterations: 54.7% PutnamBench pass@1, 98.0% FATE-M, 66.0% FATE-H, 24.0% FATE-X, 59.0% LeanCat
    • number: PutnamBench: 4.2M tokens per problem vs 1880.4M for Hilbert (55.9% pass@1)
    • number: Average cost 12.6 dollars per problem over all datasets, including failed proofs
    • number: Self-managed notes vs plain history: 7% more theorems at 20% lower cost
    • limits: Math theorems in Lean/Mathlib, not software or distributed-system proofs. A proof only certifies the formal statement, not that the statement says what was meant. Ablations used 100 PutnamBench problems and 2-3 runs; results depend strongly on the base model.
    • how much was read: parts read
    • source; notes: A Minimal Agent for Automated Theorem Proving (2026)
    • record id: axproverbase-2026
  • Beyond Compilation (2026)
    • what: A study of turning math into Lean statements automatically. It shows that Lean accepting a statement does not mean the statement says what the user meant.
    • number: Tool-augmented GPT-5.2 agent compiles 87.2% of statements but is faithful on 57.7% (29.5 point gap)
    • limits: About mathematics, not systems.
    • how much was read: parts read
    • source
    • record id: beyond-compilation-2026
  • ClarifyCodeBench (2026)
    • what: Measures how well code models ask for clarification of requirements, using the metrics TKQR and ORA.
    • how much was read: parts read
    • source
    • record id: clarifycodebench-2026
  • COINS (2026)
    • title: How Powerful Are LLMs in Generating Formal Program Specifications? (COINS)
    • what: It instantiates a spec on trusted tests to produce concrete proof obligations in Rocq. These serve as an oracle (a reference check) for whether the spec is correct.
    • number: All 164 HumanEval ground-truth specs hand-written over several person-weeks
    • number: Top 28.05% (Gemini 3 Pro Preview) down to 1.22% (DeepSeek-V3.1)
    • number: 164 HumanEval problems
    • limits: Failing to find a proof that a test is accepted is weaker evidence than proving that it is rejected. The LLM judge can skip the formal proof. It does not cover distributed liveness.
    • how much was read: parts read
    • source; notes: How Powerful Are LLMs in Generating Formal Program Specifications?
    • record id: coins-2026
  • CryptoProver (2026)
    • title: An AI Approach to Verified Production Cryptographic Libraries
    • what: Agents write cross-file internal specs and proofs for a Rust crypto library. A human supplies a fixed external claim. Four things are frozen: the executable Rust, the public API contracts, the trusted library and the accounting of proof holes. The whole crate is then replayed to check it.
    • limits: The result does not cover whether the contracts are adequate, cryptographic security or constant time. The notes infer that freezing all intermediate contracts would remove part of the intended task.
    • how much was read: parts read
    • source; notes: CryptoProver: preserve the public claim and audit the generated interi
    • record id: cryptoprover-2026
  • LeetProof (2026)
    • title: LeetProof: Certified Program Synthesis with a Multi-modal Verifier
    • what: LeetProof synthesizes programs together with proofs that they are correct. The notes audit how it checks its specs. The checks are generated examples, an LLM judge, randomized checks of preconditions and postconditions, mutations that produce incorrect outputs, a Lean proof of equivalence to VERINA, and manual judgment.
    • limits: The earlier note found that development and evaluation statistics were pooled. It also found that unresolved specs were classified without blinding, and that the synthesis subjects had no independent labels.
    • how much was read: parts read
    • source; notes: LeetProof: examples and equivalence provide complementary intent evide
    • record id: leetproof-2026-2
  • LiveFMBench (2026)
    • title: LiveFMBench: Unveiling the Power and Limits of Agentic Workflows in Specification Generation
    • what: 630 C programs annotated with ACSL (360 collected in 2025 to avoid training leaks), verified with Frama-C/WP. Models generate loop invariants and assertions. A faithfulness check requires that the ASTs are equal and that every original assertion appears in the output.
    • number: true accuracy drops about 20% after excluding unfaithful cases
    • number: pass@5 doubles pass@1; pass@32 triples it
    • number: incorrect loop invariants are the dominant error type
    • number: After removing unfaithful behaviors true accuracy drops about 20%
    • limits: One notes file says the full claims await deeper reading. Another read the faithfulness section.
    • how much was read: parts read
    • source
    • record id: livefmbench-2026
  • Munkres’ General Topology Autoformalized in Isabelle/HOL (2026)
    • what: LLM coding agents (ChatGPT 5.2, then Claude Opus 4.6) wrote an Isabelle/HOL formalization of all 39 sections of Munkres’ Topology. They used a workflow that writes sorry first, plus sledgehammer.
    • number: over 85,000 lines, 806 formal results, zero sorry, 24 active days
    • number: 2.66 M output tokens, 17.2 billion cache-read tokens, estimated API cost 160 on a 200/month subscription - number: about 83% automated - limits: The agent defined its own notions in parallel to Isabelle's library. It also added "safe" extra hypotheses. There is no layer to reconcile them. The context for the 83% figure was not fully read. - how much was read: parts read - source - record id: `munkres-general-topology-autoformalized-2026` - NLForge (2026) - title: Natural Language based Specification and Verification - what: This is not a formal proof. An LLM checks C/C++ memory safety bottom-up. It writes a natural-language summary of each function and reuses the summaries for the callers. The authors evaluate it on SV-COMP 2026 subsets. - number: Sonnet-4.6: 1262 true positives, 4 false negatives, 354 false positives - number: CPAchecker: no false positives or negatives but 247 cases unknown - number: cited benchmark: 95.67% syntax correctness and 3.69% verification on compositional tasks - limits: The notes cover about 50% of the paper. It is useful for finding bugs, not as a replacement for sound verification. - how much was read: parts read - source - record id: `nlforge-2026` - Optimizing the Cost-Quality Tradeoff of Agentic Theorem Provers in Lean (2026) - what: A Lean-proving agent with a cheap controller: after each failed proof attempt, a logistic-regression model predicts the chance and cost of the next attempt and decides whether to retry the current target or restart from a new lemma breakdown. - number: On 43 held-out PutnamBench problems, average cost falls 28.9% at equal solve rate, or +7.9% accuracy at equal cost (area under cost-quality curve) - number: High-accuracy point: baseline solves 44.0% for 28.5 M SFLOPs vs agent 43.6% for 20.4 M SFLOPs - number: An oracle that knows true success odds cuts cost 62.0% - number: Lemma-decomposition pipeline with the 8B prover solves 48 of 85 problems vs 23 for whole-proof pass@256 - limits: Small benchmark: 85 PutnamBench problems already solvable by a stronger prover, split 42 train / 43 test; the router only chooses attempt or stop; far from the oracle router; all about math competition proofs, not systems code. - how much was read: parts read - source; notes: ## Cost-quality tradeoff of agentic Lean provers (2026) - record id: `optimizing-the-cost-quality-2026` - OracleSFT (2026) - title: OracleSFT — Verifier-Filtered Self-Training for Verus with Five Training Signals: Replication Package - what: Code, configs and recorded results for fine-tuning Qwen2.5-Coder-32B with LoRA (small add-on weights) on Rust/Verus proof tasks, using Verus (a Rust verifier) as a pass/fail oracle in five ways, such as keeping only verifier-passing samples. The paper itself is not in the package. - number: VeruSAGE-Bench pass@1, 3-seed means: baseline 7.3%, all five signals 11.7%, verifier-filtered self-training (RFT) alone 12.3%, error-class conditioning 7.2%, proof-token upweighting 7.2%, domain-adapt 11.2% (one seed) - number: training sets: 29,800 repair pairs, 11,204 vericoding pairs, 24,823 annotation pairs - number: 147 recorded eval JSONs with per-example pass/fail bits - number: about 200 hours on 8xH100 for the priority 32B configs - limits: Read from the package README, docs, manifest and results notes only; the paper's claims, task definitions and text were not available, the datasets are not redistributed, and per-example model outputs were not stored. Pass@1 here only means Verus accepted the code, so spec strength is not measured by these numbers. - how much was read: parts read - source; notes: ## OracleSFT replication package (2026) - record id: `oraclesft-2026` - Quint Connect (2026) - title: Quint Connect / tla-connect - what: A model-based testing framework for Rust. A driver maps Rust state to model state, executes generated Quint traces, and compares states. - limits: The driver is an explicit link that a human or agent writes. A pass shows agreement on the tested traces only. A wrong projection of state can hide a bug. - how much was read: parts read - source; notes: R06. Quint Connect, Choreo, and LLM-driven implementation - record id: `quint-connect-2026` - Reward hacking in Dafny RLVR (2026) - what: Reinforcement learning on Dafny raised the verified reward, but it also revealed specification hacking: trivial postconditions, and leaking the answer through helper functions. - number: Verified reward 2.2% to 58.1% but with spec hacking; after filtering, multi-turn RLVR 9.7% to 31.1% - number: Lean VeriCoding pilot 46.2% to 69.2% - limits: For Dalek-Bench (repository-scale Lean), preliminary results remain weak. - how much was read: parts read - source - record id: `reward-hacking-in-dafny-2026` - SaltBench (2026) - title: SaltBench: A Referee-Gated Protocol for Measuring Method Effects in Machine-Checked Software Work - what: A protocol with four arms: plain versus specify-and-verify, each with either an agent-written or a supplied spec. It uses five Rust components (Crc32, FreeList, LRU, LZW, Paxos). A referee holds back a test suite and grades behavior. For Lean it also checks reconstruction, replays the proof in the kernel, compares frozen expressions, and audits axioms. - number: v3 post-hoc analysis: 447 cells pass, 40 fail - number: 10 budget-censored and 4 unscorable cells - number: allowed Lean axioms: propext, Classical.choice, Quot.sound - number: asking for proofs cost more on all five components, no premium exceeded 2.8879x - limits: The correctness analysis is post hoc and descriptive, with three cells per condition, so it supports no causal conclusion. Paxos as a task is not a proof of unbounded Paxos liveness. The September human note describes v1, not v3. - how much was read: parts read - source; notes: SaltBench: current October revision changes what can be cited - record id: `saltbench-2026` - SV-COMP (2026) - title: Competition on Software Verification - (SV-COMP). - what: An annual competition. Verifiers run on fixed programs and properties (concurrency, termination). Each returns an answer, a witness (evidence for the answer) and CPU time. - number: 2026 scoring: correct FALSE +1, correct TRUE +2, UNKNOWN 0, incorrect FALSE -16, incorrect TRUE -32 - limits: Witnesses are not required for TRUE results in unsupported or demo categories. The specs are fixed, so it does not evaluate inventing specs. Termination differs from a service that keeps responding forever. - how much was read: parts read - source; notes: SV-COMP - record id: `sv-comp-2026` - SWE-Proof (2026) - title: SWE-Proof / BenchProofer - what: Takes SWE-bench Verified issues, given as natural language plus a repository, with Nagini, Velvet and Lean backends. Three adversarial LLM auditors check the specs that agents write. It is the only benchmark the review notes found that starts from a vague task in a real repository. - number: 500 instances - number: A correct formal spec lifts resolution from 85% to 95%; only 56% of agent-written specs pass the audit - number: Specs from unresolved instances fail audit 92% of the time vs 51% for resolved - number: 26.8% of test-passing patches overturned by the audit; Lean faithfulness failure 37.2% - how much was read: parts read - - record id: `swe-proof-2026` - The Prover Is the Judge (2026) - title: The Prover Is the Judge (Ada/SPARK, Codex CLI and Claude Code) - what: GPT-5.5 under Codex CLI, then Claude Opus 4.8 under Claude Code, wrote and verified SPARK code for ML-KEM, TLS 1.3, IKEv2, X.509 and a Matrix client. The human never wrote code, contracts or proofs. - number: GNATprove discharged 49,280 proof obligations - number: Roughly 20-40 times lower supervision cost than comparable hand verification - limits: The anti-cheat rules are enforced by skill text and human review, not automatically. The code is at https://github.com/tobiasphilipp/experimental-agentic-verified-software. - how much was read: parts read - source - record id: `the-prover-is-the-judge-2026` - Veil blog (Sergey) (2026) - title: Verifying Distributed Protocols in Veil - what: Reports Claude Code finding agreement and validity invariants for FloodSet, using feedback from the checker. The faulty model lumped all crashes together with the broadcast and left out partial delivery, which made agreement hold trivially. - limits: A case study by a single author, not a comparative score. - how much was read: parts read - source; notes: papers inspected; notes: Veil: proofs in Lean with automatic first-order checks - record id: `veil-blog-sergey-2026` - VeriEquivBench (2026) - what: Given a natural-language problem, the task is to produce Dafny code and a spec. Dafny then proves that the code implies the spec and the spec implies the code. - number: 2,389 problems - number: Claude-4-sonnet 75.81% on CloverBench but fails on all instances here at pass@4; GPT highest mutual-equivalence rate 2.65% - number: 10% of expert-written DafnySynthesis specs wrongly claimed as ground truth, another 18% found by their review - limits: A trivially simple matched pair still passes. - how much was read: parts read - source - record id: `veriequivbench-2026` - VeriHarness (2026) - title: VeriHarness: Scaling Agentic Verification for Long-Horizon Tasks - what: This is not formal verification. It checks workspace artifacts that agents make (reports, spreadsheets) on five benchmarks that have no reference answers. The generator's own model acts as the verifier, with tools. - number: gain of 6.2 points with Gemini 3.5 Flash and 6.4 points with Claude Opus 4.8 - number: about 26,000 rollouts released at a cost over 100,000
    • number: 917 consensus claims, 34% wrong (Fig. 2)
    • limits: The review notes read about 25%. It is not about proofs or specs.
    • how much was read: parts read
    • source
    • record id: veriharness-2026
  • 3SF model checking (2025)
    • title: Technical Report: Exploring Automatic Model-Checking of the Ethereum specification
    • what: The authors translate the Python spec of Ethereum’s 3-slot-finality (3SF) consensus protocol into TLA+ and use the Apalache model checker to test Accountable Safety: if two conflicting chains are both finalized, at least one third of validators can be shown to have broken a voting rule. They then add hand-made abstractions and re-encode the problem in SMT (CVC5) and Alloy to check larger instances.
    • number: Direct translation (Spec2): checking Accountable Safety timed out after more than 40 hours (Table 1)
    • number: Alloy with Kissat: Accountable Safety holds for up to 6 blocks; e.g. 5 blocks, 25 checkpoints, 12 votes in 234 s (Table 5)
    • number: CVC5: verified up to 5 blocks with 5 checkpoints (1h 40m) or 3 blocks with 6 checkpoints (74h) (Table 4)
    • number: A 7-block Alloy run went over 16 days without finishing
    • limits: Only the finality gadget and only Accountable Safety, on small bounded instances (at most 7 checkpoints and 24 votes); every validator has stake 1. The hand-made abstractions are not proved equal to the Python spec. Appendix A (translation rules) and B (soundness proofs) were skimmed, not read closely.
    • how much was read: parts read
    • source; notes: ## Exploring Automatic Model-Checking of the Ethereum specification (2
    • record id: 3sf-model-checking-2025
  • CapybaraKV (2025)
    • title: CapybaraKV (verified-storage)
    • what: CapybaraKV is a verified key-value store written in Verus. An earlier version appears in the OSDI 2025 paper PoWER Never Corrupts. It comes with a line-counting script that computes the ratio of proof lines to code lines.
    • limits: The notes read only the README.
    • how much was read: parts read
    • source
    • record id: capybarakv-2025
  • Case Study on LLMs in Verification with Proof Assistants (hs-to-coq, Verdi) (2025)
    • what: Tests one-shot LLM proof generation (before agents existed) on Verdi and hs-to-coq. Verdi is a distributed-systems framework that contains a verified Raft.
    • number: Verdi: 579 theorems, best setting 30.6% (o4-mini with in-file context)
    • number: hs-to-coq up to 51.9%
    • limits: One-shot baseline only.
    • how much was read: parts read
    • source
    • record id: case-study-on-llms-2025
  • Clock-SI TLA+ (2025)
    • title: Formal modelling and analysis of Clock-SI with TLA+
    • what: A master’s thesis that models the Clock-SI protocol (snapshot isolation for a partitioned database using loosely synchronized clocks) in TLA+ in two versions, a detailed one and a simpler one, and uses the TLC model checker to test that the protocol gives Snapshot Isolation, stated with a client-centric specification.
    • number: Abstract model, Snapshot Isolation check: 2 keys, 2 partitions, 2 txns 3 s; 3 txns 3 min 28 s; 3 keys, 2 partitions, 3 txns 11 h 23 min 20 s; 3 keys, 3 partitions, 3 txns timed out (Table 10)
    • number: Detailed model: 3 keys, 2 partitions, 2 txns 21 min; most larger cases timed out (Table 9)
    • number: Symmetry and view features cut one 2-key, 2-partition, 3-txn state-space run from 2 h 54 min to 2 min 2 s (Table 8)
    • number: Machine: i7-7700HQ, 16 GB RAM; each time is the average of 3 runs; maximum runtime 12 hours
    • limits: Bounded to at most 3 transactions, keys, partitions; the target of 3/3/3 was not reached. The abstract model removes the message system, so it does not cover the real messaging. Only the safety property (Snapshot Isolation) is checked; no liveness. Chapters 2-3 (background) and the model listings in 4.1-4.2 were skimmed.
    • how much was read: parts read
    • source; notes: ## Formal modelling and analysis of Clock-SI with TLA+ (2025)
    • record id: clock-si-tla-2025
  • Dafny students with ChatGPT (Carreira et al.) (2025)
    • what: A study of Dafny students using ChatGPT.
    • limits: Gains depended on how good the prompts were.
    • how much was read: parts read
    • source
    • record id: dafny-students-with-chatgpt-2025
  • ImpossibleBench (2025)
    • what: ImpossibleBench builds tasks where any pass implies a shortcut that violates the spec. It uses them to measure cheating.
    • number: GPT-5 cheats on 76% of Oneoff-SWEbench tasks; a prompt change cuts one variant from 92% to 1%
    • number: Monitors catch 86-89% of cheating on LiveCodeBench but 42-65% on SWE-bench
    • how much was read: parts read
    • source
    • record id: impossiblebench-2025
  • Lean-auto (2025)
    • title: Lean-auto: An Interface between Lean 4 and Automated Theorem Provers
    • what: A Lean 4 tool that translates a Lean proof goal and its premises into the simpler logic that automated provers (SMT solvers like Z3 and CVC5, the Zipperposition prover, and Lean’s own Duper) accept, so those provers can try to close the goal; the translation is proven sound.
    • number: Benchmark: 149,142 user-declared Mathlib4 theorems, 10 s limit each, premises taken from the human proof
    • number: Lean-auto + Duper (with proof reconstruction) solves 36.6%, 5.0 points more than the best earlier tool, Aesop
    • number: Solved: Lean-auto best-of-all 61,906 vs Aesop best-of-all 48,413 vs simp_all 28,204; 22,020 solved only by Lean-auto
    • number: All tools together solve 79,396 (53.2%)
    • limits: Premise selection is not included: the evaluation hands the tool the exact theorems the human proof used. Proof reconstruction exists only for the native Duper prover; with SMT solvers the output is trusted. Sections 2-3 and the appendices (E, I-L) were not read closely.
    • how much was read: parts read
    • source; notes: ## Lean-auto (2025)
    • record id: lean-auto-2025
  • Scimitar (2025)
    • title: Interpretable Safety Verification of Distributed Protocols by Inductive Proof Decomposition
    • what: Scimitar breaks a proof into a graph of lemmas and transitions. This exposes where guidance is needed. The target is Raft LogMatching, on a modified model of about 600 TLA+ lines.
    • number: 21 hours, 33 total lemma nodes
    • number: grammar has 173 predicates
    • number: 33 lemma nodes
    • number: 173 grammar predicates
    • limits: The draft the notes inspected has a different title from earlier and later records, and a placeholder conference header. One property of an edited model is not a complete verification of Raft.
    • how much was read: parts read
    • source; notes: papers inspected
    • record id: scimitar-2025
  • SpecEval (2025)
    • title: SpecEval: Evaluating Code Comprehension in Large Language Models via Program Specifications
    • what: It judges LLMs on JML tasks: judge correctness, pick the strongest of four specs, fill in an expression, and generate contracts and invariants. It scores precision and recall against reference properties, using implication in both directions. It also applies counterfactual perturbations (small changes that should change the answer).
    • number: 204 Java programs
    • limits: Precision alone rewards vacuous specs (specs that say nothing). Recall depends on how adequate the gold specs are. It has no evaluation of temporal liveness.
    • how much was read: parts read
    • source; notes: FormalBench and SpecEval: mutation strength and surface robustness
    • record id: speceval-2025
  • Beyond Code Generation: Assessing Code LLM Maturity with Postconditions (2024)
    • what: It extends the EvalPlus benchmark with several kinds of postcondition (what must hold after a function runs): boundary, equality, container, Boolean and string. It checks that the assertions are correct and which buggy programs they catch.
    • limits: It evaluates algorithms with a finite set of tests. It does not cover proofs or progress in distributed systems.
    • how much was read: parts read
    • source; notes: Natural-language postconditions and known faulty implementations
    • record id: beyond-code-generation-assessing-2024
  • Misconceptions in Finite-Trace and Infinite-Trace Linear Temporal Logic. (2024)
    • what: The study examines how people read and write linear temporal logic, across five deployments.
    • number: Writing a formula wrong: 21.11-25.00% (alpha), 33.68% (LTL-aware audience), 66.13% and 63.33% (student course)
    • number: Trace matching wrong: 1.85% to 27.24%
    • limits: The notes are unsure about the authors after the first. Percentages across different instruments cannot be compared.
    • how much was read: parts read
    • source
    • record id: misconceptions-in-finite-trace-2024
  • SandTable (2024)
    • title: SandTable: Scalable Distributed System Model Checking with Specification-Level State Exploration
    • what: It model-checks a TLA+ spec quickly, then replays the bug traces in the code. A conformance checker replays model traces to find places where the spec and code differ.
    • number: 23 bugs, 18 new, 17 confirmed, 13 fixed
    • number: Half a person day to a few person days to fix modeling errors; two person weeks adapting ZooKeeper specs
    • number: 114x-2989x faster state exploration
    • number: abstract: 18 new bugs, 17 confirmed, 13 fixed (the note’s sentence adds ā€˜out of 23 total’ garbled)
    • limits: It cannot guarantee that no differences remain between the spec and the implementation.
    • how much was read: parts read
    • source; notes: P10. SandTable: Scalable Distributed System Model Checking with Specif
    • record id: sandtable-2024
  • Mocket (2023)
    • title: Model Checking Guided Testing for Distributed Systems (Mocket)
    • what: Mocket finds inconsistencies between a TLA+ spec and a distributed system’s implementation. It annotates Java state and actions and exports TLC’s state graph. It generates paths through the graph. It then drives implementation runs with instrumentation and a testing server.
    • limits: The notes could not find the publication’s authors, venue or year. Coverage depends on the paths, the action mapping, the instrumentation and the configured faults. The notes found no universal theorem about the implementation or progress.
    • how much was read: parts read
    • source; notes: Mocket
    • record id: mocket-2023
  • FoundationDB (2021)
    • title: FoundationDB: A Distributed Unbundled Transactional Key Value Store
    • what: Runs the real database actors in a deterministic simulated environment. The simulation replaces the network, disk, clocks and randomness. This gives reproducible schedules and recovery tests after failures stop.
    • limits: Simulation needs assertions or an oracle to decide what is correct. Its coverage is not a refinement proof or a proof of progress at unbounded size.
    • how much was read: parts read
    • source; notes: P23. FoundationDB: A Distributed Unbundled Transactional Key Value Sto
    • record id: foundationdb-2021
  • LISA / PISA (2021)
    • title: LISA: Language Models of ISAbelle Proofs (PISA)
    • what: It extracts Isabelle theorem data and trains proof-search models. PISA is the interface for interacting with Isabelle.
    • number: 183K theorem/lemma statements, 2.16M steps; random 95/1/4 split
    • number: 33.2% success on 4,000 theorems under 120 s / 100 queries
    • number: universal test set of 3000 theorems
    • limits: Random proof-level splits can leave related lemmas on both sides of a split. There is no exhaustive final audit of what is trusted. It evaluates given theorems, not formalization.
    • how much was read: parts read
    • source; notes: PISA: distinguish the interface from a particular extracted split
    • record id: lisa-pisa-2021
  • ShardStore (2021)
    • title: Using Lightweight Formal Methods to Validate a Key-Value Storage Node in Amazon S3
    • what: Executable reference models and checks for the S3 ShardStore storage node.
    • number: Reference models about 1% of implementation code
    • number: Checks and harnesses 12% of the code base
    • number: Prevented 16 issues from reaching production
    • number: 18% of reference model and harness code written by the engineering team
    • limits: Passing the checks does not mean the code is correct.
    • how much was read: parts read
    • source; notes: papers; notes: Using Lightweight Formal Methods to Validate a Key-Value Storage Node
    • record id: shardstore-2021
  • Elle (2020)
    • title: Elle: Inferring Isolation Anomalies from Experimental Observations
    • what: A test-time checker that runs random transactions against a database, records what clients saw, and rebuilds a dependency graph between transactions. A cycle in that graph is a proof that the database broke its claimed isolation level.
    • number: Found anomalies in all 4 databases tested: TiDB, YugaByte DB, FaunaDB, Dgraph
    • number: Checks histories of hundreds of thousands of transactions in tens of seconds; Knossos often fails after a few hundred
    • number: Linear time in history length
    • limits: Needs generated workloads where reads reveal the full write history (such as list append). Ignores predicates, so it cannot separate repeatable read from serializability. It finds bugs, not proof that a database is correct.
    • how much was read: parts read
    • source; notes: ## Elle isolation checker (2020)
    • record id: elle-2020
  • eXtreme Modelling (2020)
    • title: eXtreme Modelling in Practice
    • what: MongoDB compared two ways to link a model to code. One is model-based trace checking (MBTC), which checks whether logged runs fit the model. The other is model-based test-case generation (MBTCG). Trace checking of replication was impractical. For Realm Sync’s operational-transformation rules, a Go generator turned TLC states into C++ tests.
    • number: Realm Sync table (§5.2): 795 TLA+ lines, 755 Go lines, 4 weeks total effort
    • number: Abandoned trace checking after 10 weeks
    • number: 4913 generated tests reached 100% branch coverage vs 21% handwritten and 92% AFL fuzzer
    • limits: Trace checking of replication struggled with the level of abstraction, concurrency, incomplete observations, and keeping code and model in sync. The generated tests cover local merge behavior, not the whole distributed product.
    • how much was read: parts read
    • source; notes: P04. eXtreme Modelling in Practice
    • record id: extreme-modelling-2020
  • Apalache (2019)
    • title: Apalache: temporal properties tutorial, feature table and TLA+ model checking made symbolic
    • what: Apalache is a model checker for TLA+ that works on symbols instead of listing states, using an SMT solver. It checks state, action and trace invariants, inductive invariants (a property that holds at the start and is preserved by every step) and temporal properties.
    • limits: Apalache parses ASSUME but does not pass it to the solver. It does not use THEOREM. Its bounded checks do not prove properties for unbounded runs. The authors did not read the original paper.
    • how much was read: parts read
    • source; notes: tools; notes: Model checking: what a successful run means
    • record id: apalache-2019
  • QED at Large (2019)
    • title: QED at Large: A Survey of Engineering of Formally Verified Software
    • what: A survey of proof engineering (building and maintaining machine-checked proofs).
    • how much was read: parts read
    • source; notes: S12
    • record id: qed-at-large-2019
  • Proof cost indicator (2015)
    • title: Empirical Study Towards a Leading Indicator for Cost of Formal Software Verification
    • what: It studies how the size of the formal statement relates to the size of the proof in Isabelle developments.
    • limits: The notes found no predictive model.
    • how much was read: parts read
    • source; notes: S37
    • record id: proof-cost-indicator-2015
  • Proof productivity (2014)
    • title: Productivity for Proof Engineering
    • what: Fits proof effort to proof size.
    • number: Total Effort = 9.98 + 3.35*Final Size (R^2 = 0.914; person-weeks and kilo-lines of proof)
    • limits: Proof lines are a limited measure. The fit applies to one particular population of projects. It is not a universal conversion.
    • how much was read: parts read
    • source; notes: S36
    • record id: proof-productivity-2014
  • seL4 process study (2012)
    • title: Large-Scale Formal Verification in Practice: A Process Perspective
    • what: A study of the process of verifying seL4.
    • number: Design verification consumed roughly 60-70% of time and effort
    • number: Less than 14 person-years for kernel design, development and verification
    • number: Integrity and authority confinement took 10 person months
    • number: Maintenance about one full-time person
    • how much was read: parts read
    • source; notes: S35
    • record id: sel4-process-study-2012
  • Towards a Notion of Unsatisfiable and Unrealizable Cores for LTL (2012)
    • what: The paper defines cores. A core isolates the part of a requirement set that is unsatisfiable or unrealizable (no implementation could meet it). The paper defines cores at several granularities, from whole requirements to proof structures. It also discusses vacuity (a requirement that passes for no real reason).
    • number: lift example: 6 of 49 conjuncts isolate an inconsistency (§8.1)
    • limits: A core explains a failure, but not necessarily every failure. It does not tell which restrictions on the environment the customer intended. The normal-form proofs were not checked.
    • how much was read: parts read
    • source
    • record id: towards-a-notion-of-2012
  • Aleph Prover
    • what: A prover reported to solve all of PutnamBench.
    • number: Solved all 672/672 problems on PutnamBench at about 73.98 per solved problem - limits: The review notes read only the web page. - how much was read: parts read - - record id: `aleph-prover` - TLA-Prove - what: This is the public repository of TLA-Prover at commit 6427de9. The audit found two case lists (a 30-row holdout and a 20-row suite called 30-case). It found a saved result (n=30, 1 Diamond, 3 Gold, retrieval on) that differs from the paper. It also found a mutation check that differs from the paper. - number: holdout_v15.json: n=30, diamond=1, diamond_rate=0.033, three Gold - limits: The notes did not reproduce the paper's results, and did not rerun training or inference. The validator graded a two-state toggle with TypeOK as Gold and Diamond. This shows that Diamond does not check whether the spec fits the task. No trained model was run. - how much was read: parts read - source; notes: artifact observations - record id: `tla-prove` - Verus TCB guide - title: Verus: Assumptions and trusted components - what: The guide lists the mechanisms that introduce assumptions in Verus: assume, external_body, external specifications and external trait implementations. It also lists the caveats. - how much was read: parts read - source; notes: D4 - record id: `verus-tcb-guide` - Ambig-SWE (2026) - title: Interactive Agents to Overcome Underspecificity in Software Engineering - what: Measures the clarifying-question step for coding agents with an LLM-simulated user holding the missing facts. - number: Interactivity boosts performance up to 74% - number: Claude Sonnet 4 recovers 89% of full-information performance with interaction - limits: It covers coding, not specs. - how much was read: only abstract or first pages read - source - record id: `ambig-swe-2026` - Automated Trace Link Recovery Between Natural Language Requirements and Formal Specifications via LLMs (2026) - what: LLMs link each item in a structured English requirements document to the matching part of an existing formal specification. The paper compared GPT-4o, Gemini 3.1 Pro and DeepSeek V3 with retrieval baselines on four projects, including an ATM and the avionics system Sun Search. - number: four projects - limits: The review notes read only the abstract, which is behind a subscription. It gives no precision, recall or timings. The links help an audit but do not show the two texts mean the same thing. - how much was read: only abstract or first pages read - source; notes: Automated Trace Link Recovery Between Natural Language Requirements an - record id: `automated-trace-link-recovery-2026` - AxDafny (2026) - title: AxDafny: Agentic Verified Code Generation in Dafny - what: An agent system for Dafny. A reviewer LLM rejects cheating patterns (assume, {:extern}, {:verify false}). - number: Verifies 725/782 (92.7%) of DafnyBench - number: LCB-Pro-Dafny 56.4% vs 11.6% for direct GPT-5.5 generation - number: 92.7% on DafnyBench proof-hint task (725/782), 6.5 points above the prior best - number: 56.4% on LCB-Pro-Dafny versus 11.6% for direct GPT-5.5 - limits: The notes' author read only the abstract. The ICML listing and arXiv disagree on the margin (6 vs 6.5 points). Both benchmarks are sequential programs. - how much was read: only abstract or first pages read - source - record id: `axdafny-2026` - BenchShield (2026) - title: BenchShield: Formal Model-Backed Instrumentation for Reward Integrity in LLM-Agent Evaluation Infrastructure - what: BenchShield runs taint analysis (tracking where untrusted data flows) over agent-benchmark infrastructure. It looks for ways agents can cheat on benchmarks. - number: improves full-chain recall from 23-94% to 77-100% - number: runtime analysis 96% accuracy - limits: The notes cover only the abstract. - how much was read: only abstract or first pages read - source - record id: `benchshield-2026` - Beyond Type-checking: Towards Holistic Evaluation of Formal Specification Generation (2026) - what: The paper evaluates Lean specs written by LLMs, using more than type-checking. It measures whether the spec is well-formed, whether it is similar or equivalent to a reference spec, and whether it describes the intended behavior. - number: 350 Lean tasks (189 VERINA, 161 CLEVER) - number: LeanAide returns only 135 of 161 candidates on CLEVER, though every returned one typechecks - limits: The notes did not record the authors. - how much was read: only abstract or first pages read - source - record id: `beyond-type-checking-towards-2026` - claimcheck (2026) - title: claimcheck: Narrowing the Gap between Proof and Intent - what: One model describes a Dafny lemma in English without seeing the requirement. A second model compares that description to the requirement and labels the pair confirmed or disputed. - number: Own benchmark: 36 pairs, 5 domains, 8 bogus lemmas; two-pass 96.3%, single prompt 86.1%, Claude Code default 69.4% - number: 36 requirement/lemma pairs, 8 deliberately bad, 3 runs: 108 comparisons - number: 96.3% accuracy across 108 comparisons; other modes 86.1% and 69.4% - number: About 108 s per run vs 353 s single prompt, 693 s via Claude Code prompt - limits: It is small and self-made. The post calls it a probabilistic sanity check. - how much was read: only abstract or first pages read - source; notes: claimcheck: check whether the proven claim is what the user asked for - record id: `claimcheck-2026` - CONCUR (2026) - what: A benchmark of 43 concurrency problems from a textbook, plus 72 validated mutants (deliberately broken variants). It evaluates LLM-written concurrent code by model checking it for deadlock and race. - number: 115 total problems - limits: It has no proofs. - how much was read: only abstract or first pages read - source - record id: `concur-2026` - Faithful Autoformalization via Roundtrip Verification and Repair (2026) - what: Formalize a sentence, translate the formula back to English, formalize that again, then use an SMT solver to check that the two formulas are equivalent. If they differ, repair the stage that diverged. - number: Rules failing the check show 1.4x-2.5x more natural language inference drift - number: 150 Texas Transportation Code rules and 77 Parks and Wildlife rules; Claude Opus 4.6 and GPT-5.2 - limits: It uses first-order logic on legal rules. A second signal, natural-language inference, judged the results, not people. - how much was read: only abstract or first pages read - source - record id: `faithful-autoformalization-via-roundtrip-2026` - Fidelity Probes (2026) - title: Fidelity Probes for Specification-Code Alignment - what: Probes pair behavioral questions with reference answers derived from the code. An LLM answers from the spec alone. Its answers are compared with the code's answers, and the requirements are revised. - number: CardDemo held-out fidelity rises from 0.59 to 0.89 - limits: Repairs can cause regressions. It measures agreement with the behavior of existing code. It is not a proof, and it does not cover liveness over time. - how much was read: only abstract or first pages read - source - record id: `fidelity-probes-2026` - Formal Methods in Industry: A Critical Evaluation of Their Use at Amazon Web Services (2026) - what: A critical evaluation of how AWS uses formal methods. - limits: The review notes read the abstract only and did not fetch the PDF. - how much was read: only abstract or first pages read - source - record id: `formal-methods-in-industry-2026` - Generalizing and accelerating consistency checking for non-transactional distributed storage systems (2026) - what: It generalizes Wing-Gong history checkers (ZooKeeper, Gryff-RSC, CosmosDB bounded staleness). - how much was read: only abstract or first pages read - source - record id: `generalizing-and-accelerating-consistency-2026` - Hack-Verifiable Environments (2026) - what: It plants hacks in environments in a way that can be detected. - how much was read: only abstract or first pages read - source - record id: `hack-verifiable-environments-2026` - LLMs Gaming Verifiers (2026) - what: The paper shows that models trained with reinforcement learning list the labels of instances instead of learning rules. It detects this with isomorphic perturbation testing, which runs the same task with variables renamed or reordered. - limits: The notes cover only the abstract. - how much was read: only abstract or first pages read - source - record id: `llms-gaming-verifiers-2026` - Model-Bench (2026) - what: 400 Python programs converted into specs for a model checker. - number: 400 programs - limits: The direction is code to model. Only a fetched summary was read. - how much was read: only abstract or first pages read - source - record id: `model-bench-2026` - SPECA (2026) - title: Beyond Code Reasoning: Specification-Anchored Auditing of Multi-Implementation Distributed Protocols - what: SPECA has an LLM read protocol specs (Ethereum consensus) and write categorized properties. It then audits each client against them. These are not proofs. - number: 15/15 in-scope Fusaka vulnerabilities with expert augmentation, 8/15 automated - number: About 30 per high/medium/low bug
    • limits: The authors say the quality of the generated properties is the main limit.
    • how much was read: only abstract or first pages read
    • source; notes: specification-anchored auditing
    • record id: speca-2026
  • VCoT-Bench (2026)
    • what: VCoT-Bench has 1,988 tasks that reconstruct Verus proof steps.
    • number: 1,988 tasks
    • how much was read: only abstract or first pages read
    • source
    • record id: vcot-bench-2026
  • Transforming Natural Language Requirements to Formalism Using LLMs (2025)
    • what: GE Aerospace Research built an LLM tool that interactively turns plain-English requirements into logical formulas, with an English-language interface meant to let non-experts confirm the translation is right. It was tried on an industry landing-gear case.
    • limits: Full text not obtained (Wiley paywall behind a bot check; Unpaywall lists no open copy), so numbers, formalism used, and evaluation method are unknown; only the abstract was read.
    • how much was read: only abstract or first pages read
    • source; notes: LLM translation of natural-language requirements to formalism (2025)
    • record id: transforming-natural-language-requirements-2025
  • How much Specification is Enough? Mutation Analysis for Software Contracts (2021)
    • what: This work mutates implementations and then uses deductive verification (KeY) to judge how incomplete JML contracts are.
    • limits: The notes read only the abstract and report no numbers. They infer that the result depends on which mutants were chosen.
    • how much was read: only abstract or first pages read
    • source; notes: Testing strength, mutations, and vacuity
    • record id: how-much-specification-is-2021
  • A Theory of Mutations with Applications to Vacuity, Coverage, and Fault Tolerance (2008)
    • what: Treats vacuity (a spec that holds for no useful reason) and coverage (how much of the system the spec checks) as the same thing: small deliberate changes, called mutations, made to either the specification or the implementation.
    • limits: The notes read only the abstract. The applications are in hardware, which by themselves do not cover fault histories of distributed systems. That last point is the notes’ inference.
    • how much was read: only abstract or first pages read
    • source; notes: Testing strength, mutations, and vacuity
    • record id: a-theory-of-mutations-2008
  • Coverage Metrics for Formal Verification (2006)
    • what: It adapts several coverage notions from simulation to formal verification. It links successful checks, vacuity (a spec that holds trivially, so it says nothing) and incomplete specs.
    • limits: The notes’ author read only the abstract and introduction.
    • how much was read: only abstract or first pages read
    • source; notes: Coverage Metrics for Formal Verification
    • record id: coverage-metrics-for-formal-2006
  • Sanity Checks in Formal Verification (2006)
    • what: Surveys vacuity checks (does the spec actually matter?) and coverage checks (does the system part matter?), run after model checking succeeds.
    • limits: The notes read the abstract only.
    • how much was read: only abstract or first pages read
    • source; notes: Testing strength, mutations, and vacuity
    • record id: sanity-checks-in-formal-2006
  • A Practical Approach to Coverage in Model Checking (2001)
    • what: It measures how well a spec covers a model. Change one part of the model and see whether the spec still holds. If it does, that part is not covered. The paper gives algorithms for specs written in LTL (a logic for statements about sequences of events).
    • limits: The notes’ author read only the abstract and introduction. The result depends on which changes and which properties you pick.
    • how much was read: only abstract or first pages read
    • source; notes: A Practical Approach to Coverage in Model Checking
    • record id: a-practical-approach-to-2001
  • Vacuity Detection in Temporal Model Checking (1999)
    • what: Checks whether every part of a temporal property actually affects whether it holds. Example: a property saying a request is eventually answered passes trivially if no request can ever occur.
    • limits: A witness showing the property is not vacuous does not prove that all intended clauses were specified. The notes had only the abstract and introduction (the extraction was damaged).
    • how much was read: only abstract or first pages read
    • source; notes: Testing strength, mutations, and vacuity; notes: Vacuity Detection in Temporal Model Checking
    • record id: vacuity-detection-in-temporal-1999
  • A dual perspective review on large language models and code verification
    • what: TYPE Review PUBLISHED 24 November 2025 DOI 10.3389/fcomp.2025.1655469 A dual perspective review on OPEN ACCESS large language models and code verification EDITED BY Novarun Deb, University of Calgary, Canada REVIEWED BY Livinus Obiora Nweke, Greta Dolcetti1 and Eleonora Iotti2* Noroff Education AS, Norway T. Gururaj, 1 Department of Environmental Sciences, Informatics and Statistics, Ca’ Foscari University of Venice, Visvesvaraya Technological University, India Venice, Italy, 2 Department of Mathematical, Physical and Computer Sciences, University of Parma, *CORRESPONDENCE Parma, Italy Eleonora Iotti eleonora.iotti@unipr.it RECEIVED 27 June 2025 Recent advances in Large Language Models (LLMs) have sparked significant ACCEPTED 24 October 2025 interest in their application to code verification and the assessment of PUBLISHED 24 November 2025 LLM-generated code safety. This review examines current research on the CITATION intersection of LLMs with software verification, focusing on two main aspects: the Dolcetti G and Iotti E (2025) A dual perspective review on large language models and code use of LLMs as verification tools and the verification of code produced by LLMs.
    • how much was read: only abstract or first pages read
    • source
    • record id: a-dual-perspective-review
  • Advances in Automatic Software Verification: SV-COMP 2020
    • what: . This report describes the 2020 Competition on Software Veri- fication (SV-COMP), the 9th edition of a series of comparative evaluations of fully automatic software verifiers for C and Java programs. The compe- tition provides a snapshot of the current state of the art in the area, and has a strong focus on replicability of its results.
    • how much was read: only abstract or first pages read
    • source
    • record id: advances-in-automatic-software
  • Analyzing the effects of formal methods on the development of industrial control software
    • what: Analyzing the effects of formal methods on the development of industrial control software Citation for published version (APA): Groote, J. F., Osaiweran, A. A.
    • limits: Abstract-level reading from openly available PDF; detailed limitations require full paper review.
    • how much was read: only abstract or first pages read
    • source
    • record id: analyzing-the-effects-of
  • Are Users More Willing toĀ Use Formally Verified Password Managers?
    • what: . Formal verification has recently been increasingly used to prove the correctness and security of many applications. It is attractive because it can prove the absence of errors with the same certainty as mathematicians proving theorems.
    • how much was read: only abstract or first pages read
    • source
    • record id: are-users-more-willing
  • Automatic Verification of C and Java Programs: SV-COMP 2019
    • what: . This report describes the 2019 Competition on Software Verification (SV-COMP), the 8th edition of a series of comparative evaluations of fully automatic software verifiers for C programs, and now also for Java programs. The competition provides a snapshot of the current state of the art in the area, and has a strong focus on replicability of its results.
    • how much was read: only abstract or first pages read
    • source
    • record id: automatic-verification-of-c
  • Can Large Language Models Help Students Prove Software Correctness? An Experimental Study withĀ Dafny
    • what: Students in computing education increasingly use large lan- guage models (LLMs) such as ChatGPT. Yet, the role of LLMs in sup- porting cognitively demanding tasks, like deductive program verification, remains poorly understood. This paper investigates how students inter- act with an LLM when solving formal verification exercises in Dafny, a language that supports functional correctness by allowing programmers to write formal specifications and automatically verifying that the im- plementation satisfies the specification.
    • how much was read: only abstract or first pages read
    • source
    • record id: can-large-language-models
  • CASP: An Evaluation Dataset forĀ Formal Verification ofĀ C Code
    • what: . Recent developments in Large Language Models (LLMs) have shown promise in automating code generation, yet the generated programs lack rigorous correctness guarantees. Formal verification can address this shortcoming, but requires expertise and is time-consuming to apply.
    • how much was read: only abstract or first pages read
    • source
    • record id: casp-an-evaluation-dataset
  • Comparative Analysis of Hoare Logic-Based Formal Verification Tools for Solidity Smart Contracts
    • what: Formal verification of smart contracts is widely regarded as an effective method for ensuring correctness and security properties across all possible executions. Its practical relevance has been driven by the availability of automatic verification tools that discharge intricate proofs. Another area of growing interest is the integration of specification paradigms — for example, combining Hoare-logic–style specifications (pre/postconditions and invari- ants) with SMT and symbolic reasoning — so that each technique can precisely capture complementary aspects of contract behavior.
    • how much was read: only abstract or first pages read
    • source
    • record id: comparative-analysis-of-hoare
  • Competition on Software Verification and Witness Validation: SV-COMP 2023.
    • what: . The 12th edition of the Competition on Software Verification (SV-COMP 2023) is again the largest overview of tools for software verifi- cation, evaluating 52 verification systems from 34 teams from 10 countries. Besides providing an overview of the state of the art in automatic software verification, the goal of the competition is to establish standards, provide a platform for exchange to developers of such tools, educate PhD students on reproducibility approaches and benchmarking, and provide comput- ing resources to developers that do not have access to compute clusters.
    • how much was read: only abstract or first pages read
    • source
    • record id: competition-on-software-verification
  • Formal Autograding in a Classroom
    • what: . We report our experience in enhancing automated grading in an undergraduate programming course using formal verification. In our experiment, we deploy a program verifier to check the equivalence between student submissions and our reference solutions, alongside the existing testing-based grading infrastructure.
    • how much was read: only abstract or first pages read
    • source
    • record id: formal-autograding-in-a
  • Formal Verification With Confidence Intervals to Establish Quality of Service Properties of Software Systems
    • what: —Formal verification is used to establish the compli- s, s1 , s2 , . states of a Markov chain ance of software and hardware systems with important classes of S set of states of a Markov chain requirements. System compliance with functional requirements n number of states of a Markov chain is frequently analysed using techniques such as model checking, and theorem proving.
    • how much was read: only abstract or first pages read
    • source
    • record id: formal-verification-with-confidence
  • FVEval: Understanding Language Model Capabilities in Formal Verification of Digital Hardware
    • what: The remarkable reasoning and code generation capabilities of large language models (LLMs) have spurred significant interest in applying LLMs to enable task automation in digital chip design. In particular, recent work has investigated early ideas of applying these models to formal verification (FV), an approach to verifying hardware implementations that can provide strong guarantees of confidence but demands significant amounts of human effort. While the value of LLM-driven automation is evident, our understanding of model performance, however, has been hindered by the lack of holistic evaluation.
    • how much was read: only abstract or first pages read
    • source
    • record id: fveval-understanding-language-model
  • How Effective are Large Language Models in Generating Software Specifications?
    • what: —Software specifications are essential for many Soft- more defects. Several other attempts have been made to further ware Engineering (SE) tasks such as bug detection and test improve these processes in various domains [9], [11]–[13]. generation.
    • how much was read: only abstract or first pages read
    • source
    • record id: how-effective-are-large
  • Improvements in Software Verification and Witness Validation: SV-COMP 2025.
    • what: . The 14th edition of the Competition on Software Verification (SV-COMP 2025) evaluated 62 verification tools and 18 witness validation tools, making it the largest comparison of its kind so far. Out of these, 35 verification and 13 validation tools participated with an active sup- port of teams led by 33 different representatives from 12 countries.
    • how much was read: only abstract or first pages read
    • source
    • record id: improvements-in-software-verification
  • International Competition on Runtime Verification (CRV).
    • what: . We review the first five years of the international Compe- tition on Runtime Verification (CRV), which began in 2014. Runtime verification focuses on verifying system executions directly and is a use- ful lightweight technique to complement static verification techniques.
    • how much was read: only abstract or first pages read
    • source
    • record id: international-competition-on-runtime
  • Progress on Software Verification: SV-COMP 2022.
    • what: . The 11th edition of the Competition on Software Verification (SV-COMP 2022) provides the largest ever overview of tools for software verification. The competition is an annual comparative evaluation of fully automatic software verifiers for C and Java programs.
    • how much was read: only abstract or first pages read
    • source
    • record id: progress-on-software-verification
  • Ranking LLM-Generated Loop Invariants for Program Verification
    • what: foundational AI models that have revolutionized Language Processing applications. Though LLMs Synthesizing inductive loop invariants is fun- damental to automating program verification. were originally proposed for natural languages, In this work, we observe that Large Language they have exhibited great success in formal lan- Models (such as gpt-3.5 or gpt-4) are capa- guages such as programming languages (Chen ble of synthesizing loop invariants for a class of et al., 2021).
    • limits: Abstract-level reading from openly available PDF; detailed limitations require full paper review.
    • how much was read: only abstract or first pages read
    • source
    • record id: ranking-llm-generated-loop
  • RERS 2019: Combining Synthesis with Real-World Models.
    • what: . This paper covers the Rigorous Examination of Reactive Sys- tems (RERS) Challenge 2019. For the first time in the history of RERS, the challenge features industrial tracks where benchmark programs that participants need to analyze are synthesized from real-world models.
    • how much was read: only abstract or first pages read
    • source
    • record id: rers-2019-combining-synthesis
  • Software Verification: 10th Comparative Evaluation (SV-COMP 2021).
    • what: . SV-COMP 2021 is the 10th edition of the Competition on Software Verification (SV-COMP), which is an annual comparative eval- uation of fully automatic software verifiers for C and Java programs. The competition provides a snapshot of the current state of the art in the area, and has a strong focus on reproducibility of its results.
    • how much was read: only abstract or first pages read
    • source
    • record id: software-verification-10th-comparative
  • Software Verification and Verifiable Witnesses - (Report on SV-COMP 2015).
    • what: . SV-COMP 2015 marks the start of a new epoch of software verification: In the 4th Competition on Software Verification, software ver- ifiers produced for each reported property violation a machine-readable error witness in a common exchange format (so far restricted to reacha- bility properties of sequential programs without recursion). Error paths were reported previously, but always in different, incompatible formats, often insufficient to reproduce the identified bug, and thus, useless to the user.
    • how much was read: only abstract or first pages read
    • source
    • record id: software-verification-and-verifiable
  • Status Report on Software Verification - (Competition Summary SV-COMP 2014).
    • what: . This report describes the 3rd International Competition on Software Verification (SV-COMP 2014), which is the third edition of a thorough comparative evaluation of fully automatic software verifiers. The reported results represent the state of the art in automatic soft- ware verification, in terms of effectiveness and efficiency.
    • how much was read: only abstract or first pages read
    • source
    • record id: status-report-on-software
  • Systematic Generation of Diverse Benchmarks for DNN Verification.
    • what: . The field of verification has advanced due to the interplay of theoretical development and empirical evaluation. Benchmarks play an important role in this by supporting the assessment of the state-of-the- art and comparison of alternative verification approaches.
    • how much was read: only abstract or first pages read
    • source
    • record id: systematic-generation-of-diverse
  • The 2019 Comparison of Tools for the Analysis of Quantitative Formal Models - (QComp 2019 Competition Report).
    • what: . Quantitative formal models capture probabilistic behaviour, real-time aspects, or general continuous dynamics. A number of tools support their automatic analysis with respect to dependability or perfor- mance properties.
    • how much was read: only abstract or first pages read
    • source
    • record id: the-2019-comparison-of
  • The Quantitative Verification Benchmark Set.
    • what: . We present an extensive collection of quantitative models to facilitate the development, comparison, and benchmarking of new verifi- cation algorithms and tools. All models have a formal semantics in terms of extensions of Markov chains, are provided in the Jani format, and are documented by a comprehensive set of metadata.
    • how much was read: only abstract or first pages read
    • source
    • record id: the-quantitative-verification-benchmark
  • Tools at the Frontiers of Quantitative Verification - QComp 2023 Competition Report.
    • what: . The analysis of formal models that include quantitative as- pects such as timing or probabilistic choices is performed by quantitative verification tools. Broad and mature tool support is available for com- puting basic properties such as expected rewards on basic models such as Markov chains.
    • how much was read: only abstract or first pages read
    • source
    • record id: tools-at-the-frontiers
  • Verifying Verified Code
    • what: . A recent case study from AWS by Chong et al. proposes an effective methodology for Bounded Model Checking in industry.
    • how much was read: only abstract or first pages read
    • source
    • record id: verifying-verified-code
  • VerifyThis 2015
    • what: VerifyThis 2015 was a one-day program verifi- series after the competitions held at FoVeOOS 2011, FM2012 cation competition which took place on April 12th, 2015 in and Dagstuhl (Seminar 14171, April 2014). London, UK, as part of the European Joint Conferences on The aims of the competition were: Theory and Practice of Software (ETAPS 2015). It was the fourth instalment in the VerifyThis competition series.
    • how much was read: only abstract or first pages read
    • source
    • record id: verifythis-2015
  • VerifyThis 2019: a program verification competition
    • what: VerifyThis is a series of program verification competitions that emphasize the human aspect: participants tackle the verification of detailed behavioral properties—something that lies beyond the capabilities of fully automatic verification and requires instead human expertise to suitably encode programs, specifications, and invariants. This paper describes the 8th edition of VerifyThis, which took place at ETAPS 2019 in Prague. Thirteen teams entered the competition, which consisted of three verification challenges and spanned 2 days of work.
    • how much was read: only abstract or first pages read
    • source
    • record id: verifythis-2019-a-program
  • VerifyThis – Verification Competition with a Human Factor
    • what: . VerifyThis is a series of competitions that aims to evaluate the current state of deductive tools to prove functional correctness of programs. Such proofs typically require human creativity, and hence it is not possible to measure the performance of tools independently of the skills of its user.
    • how much was read: only abstract or first pages read
    • source
    • record id: verifythis-verification-competition-with
  • Claude C compiler (2026)
    • title: Building a C compiler with a team of parallel Claudes
    • what: Opus 4.6 agents run in a restart loop and coordinate through task-file locks and git. They build a C compiler in Rust that compiles Linux 6.9 on three architectures.
    • number: 16 agents; nearly 2,000 Claude Code sessions; about $20,000; 100,000 lines of Rust
    • limits: There is no proof that the compiler preserves program meaning. It was checked only by compiler test suites, builds, comparison with a reference, and CI. Failures included regressions, noisy context, duplicated effort and weak test feedback.
    • how much was read: reading depth not recorded
    • source; notes: Anthropic compiler: large agent-built code, assessed through tests
    • record id: claude-c-compiler-2026
  • Galois benchmarks post (2026)
    • title: Formal Verification Benchmarks Are the Key to Ironclad Software Infrastructure
    • what: Introduces Metron and Praxis. Argues for benchmarks built from production tasks, for signals about intermediate failure and recovery, and for held-out evaluation.
    • limits: The article releases no model, rate or result.
    • how much was read: reading depth not recorded
    • source; notes: Galois vision and benchmark initiatives: proposals, not completed kern
    • record id: galois-benchmarks-post-2026
  • Galois eFMRL (2026)
    • title: Advancing Cryptographic Verification with AI: Reflections on my Hiring our Heroes Fellowship at Galois
    • what: It fine-tunes small local models (Gemma 4 26B-A4B-it) to write and repair Cryptol, a language for cryptography specifications. The reward comes from whether the compiler accepts the output.
    • number: Base 44% overall; prompt-only 65-66%; trained 78% and 86%; broken-code repair 97% vs 71%
    • number: 600 steps (about 50 hours)
    • limits: Scores measure only whether the compiler accepts the spec. They do not show whether it encodes the intended behavior.
    • how much was read: reading depth not recorded
    • source; notes: Galois eFMRL: major gains in a rare specification language, measured b
    • record id: galois-efmrl-2026
  • SysMoBench blog (2026)
    • title: Can LLMs model real-world systems in TLA+?
    • what: The post explains concrete modeling mistakes. Models copy textbook Raft instead of the implementation’s own voting. Or they merge atomic guards and erase ZooKeeper’s higher-epoch transition.
    • limits: Do not mix its newer aggregate results with the paper’s table.
    • how much was read: reading depth not recorded
    • source; notes: SysMoBench: real code exposes failures hidden by puzzle benchmarks
    • record id: sysmobench-blog-2026
  • Harmonic Aristotle VERINA (2025)
    • title: Aristotle Learns to Code, Achieving New State-of-the-Art of 96.8% on Code Verification Benchmark
    • what: Harmonic’s Aristotle API proves or refutes pairs of Lean code and specification from the VERINA benchmark.
    • number: 189 pairs: 160 proved correct, 23 shown false, 96.8% resolved; proof-only 160/189 = 84.7% (notes’ arithmetic)
    • limits: Reports no distributed or progress test, no compute budget, no retries and no audited script.
    • how much was read: reading depth not recorded
    • source; notes: Harmonic Aristotle: 96.8% means proof-or-refutation resolution
    • record id: harmonic-aristotle-verina-2025
  • Laurel (2025)
    • title: Laurel: Unblocking Automated Verification with Large Language Models
    • what: GPT-4o restores one missing Dafny assertion. It uses locations reported by the verifier, placeholders, and examples from the same project.
    • number: 145 tasks from Cedar, Dafny libraries and a VM project; 82 successes (56.6%, notes’ arithmetic)
    • limits: The surrounding proof and specs are supplied. No distributed progress.
    • how much was read: reading depth not recorded
    • source; notes: Dafny, C verification, and the specification-intent gap
    • record id: laurel-2025
  • TLAi+ Challenge (2025)
    • title: 2025 TLAi+ Challenge
    • what: Challenge winners. First prize: Cheng, Xu, Huang (early Specula workflow). Second: Andrew Helwer (constrained TLA+ token generation with LlamaCpp/GBNF and Guidance). Third: Gregory Terzian (staged refinement from TLA+ toward multithreaded Rust).
    • limits: The challenge solicited TLAPS work, but that is not evidence that any submission finished one. Grammar constraints give correct syntax, not faithful meaning.
    • how much was read: reading depth not recorded
    • source; notes: TLAiBench and the Foundation challenge: useful harnesses, limited meas
    • record id: tlai-challenge-2025
  • FVEL (2024)
    • title: FVEL: Interactive Formal Verification Environment with Large Language Models via Theorem Proving
    • what: FVEL shows Isabelle verification states and checked feedback to fine-tuned Llama-3-8B and Mistral-7B proof generators. It trains on a seL4 corpus.
    • number: 29,125 lemmas in the seL4 corpus
    • number: Llama-3 proves 88 of 1077 ordinary test lemmas and 64 of 852 hard lemmas (8.17% and 7.51%, notes’ arithmetic)
    • limits: Humans still add the imports and supply the statements as inputs.
    • how much was read: reading depth not recorded
    • source; notes: seL4: from whole-proof guessing to proof-state search
    • record id: fvel-2024
  • primal-dual Houdini (2022)
    • title: Induction Duality: Primal-Dual Search for Invariants
    • what: The paper pairs Houdini with a dual search over states. Houdini drops candidate invariants until the remaining ones hold. The method also finds counterexamples for broken protocols.
    • number: Table 2: 20 benchmarks (10 safe, 10 unsafe)
    • number: Fixed VM artifact about 5.45 GB
    • number: Pages 1-29
    • limits: The publisher PDF returned HTTP 403, so the review notes read the artifact instructions and source instead.
    • how much was read: reading depth not recorded
    • source; notes: Primal-dual Houdini: full fixed 20-task evaluation
    • record id: primal-dual-houdini-2022
  • Testing LLM-Generated Distributed Protocol Code (2026)
    • what: A framework evaluates LLM-written Two-Phase Commit, Ring Election and Raft. It uses a simulator that injects message loss, delay and duplication. LLMs do well on simple protocols and code completion, struggle on complex consensus, and debug inconsistently.
    • limits: Based on the schedule abstract, through a fetch-tool summary. The review notes have no full text and no numbers.
    • how much was read: not read; title and metadata only
    • source
    • record id: testing-llm-generated-distributed-2026
  • VeriBench (2026)
    • title: VeriBench: An End-to-End Formal Verification Benchmark for AI Coding Agents
    • what: A launch-draft blog for paired Python/Lean verification tasks, scored against human reference theorem statements. The requested paper titles (VeriBench, Veribench-FTP) could not be found as papers.
    • number: gold theorem sorry rate about 0.57 despite claim that all close without sorry
    • limits: There is no paper or artifact. The repositories returned 404. Treat it as a lead.
    • how much was read: not read; title and metadata only
    • source; notes: VeriBench and Veribench-FTP: exact requested publication not recovered
    • record id: veribench-2026
  • A Specification Linter for Gobra (2025)
    • what: A linter for specs in the Gobra verifier, aimed at the problem that verified programs only match their intended specs if the specs are right.
    • limits: Seen only as a Google Scholar snippet. Not read.
    • how much was read: not read; title and metadata only
    • record id: a-specification-linter-for-2025
  • Cazamariposas (2025)
    • title: Cazamariposas: Automated instability debugging in SMT-based program verification
    • what: The paper automates debugging of verification instability, where proofs pass or fail unpredictably. It targets SMT-based verifiers (verifiers that use a solver) such as Dafny and F*.
    • limits: The review notes saw only a Google Scholar title and snippet and did not read the paper.
    • how much was read: not read; title and metadata only
    • record id: cazamariposas-2025
  • Investigating the Role of Formal Verification in Software Development: From Automatic Specification Generation to Usability of Verification Languages (2025)
    • what: Per the input list and a search summary of its abstract: a 4-page doctoral plan studying how formal annotations affect code comprehension, how LLMs generate formal specs from code comments, and how usable two verification tools are.
    • limits: Full text not read: the ACM PDF returned HTTP 403 to automated download (bot protection, not worked around) and no open copy was found. Which tools and what results are unknown.
    • how much was read: not read; title and metadata only
    • source; notes: ## Role of formal verification in software development, doctoral paper
    • record id: investigating-the-role-of-2025
  • Model Checking Guided Incremental Testing for Distributed Systems (2025)
    • what: Listed as an unread search lead from OpenAlex. The notes give only its title, year and DOI.
    • limits: Not read. Claims are unverified.
    • how much was read: not read; title and metadata only
    • source
    • record id: model-checking-guided-incremental-2025
  • HumanEvalComm (2024)
    • what: A benchmark with communication metrics that measure whether models ask clarifying questions.
    • limits: The review notes saw it only as a search snippet.
    • how much was read: not read; title and metadata only
    • source
    • record id: humanevalcomm-2024
  • Effective Concurrency Testing for Distributed Systems (2020)
    • what: Listed as an unread search lead from OpenAlex. The notes give only its title, year and DOI.
    • limits: Not read. Claims are unverified.
    • how much was read: not read; title and metadata only
    • source
    • record id: effective-concurrency-testing-for-2020
  • Trace aware random testing for distributed systems (2019)
    • what: A search lead from OpenAlex that the review notes have not read. The notes give only its title, year and DOI.
    • limits: Not read, so its claims are unverified.
    • how much was read: not read; title and metadata only
    • source
    • record id: trace-aware-random-testing-2019
  • TaxDC (2016)
    • title: TaxDC: A Taxonomy of Non-Deterministic Concurrency Bugs in Datacenter Distributed Systems
    • what: A study of 104 real timing-dependent bugs in Cassandra, Hadoop MapReduce, HBase and ZooKeeper, each labelled by what triggers it, how it shows up, and how it was fixed. Full text not obtained; this is from the input file and a web search summary, not from reading the paper.
    • number: 104 bugs in 4 systems (input file and search summary)
    • number: 2,083 classification labels (search summary, not checked in the paper)
    • limits: Full text blocked: ACM page returned HTTP 403, no open copy found on author pages (uchicago.edu host did not respond), Semantic Scholar lists it as closed access. No claims here are from the paper body.
    • how much was read: not read; title and metadata only
    • source; notes: ## TaxDC (2016)
    • record id: taxdc-2016
  • An Experiment in Formal Verification with Claude
    • what: Claude Opus 4.6/4.7 wrote the Lean 4 statements and most of the proofs for the soundness and zero-knowledge theorems of Succinct’s VEIL compiler. A CLAUDE.md file with simple rules guided it. Humans revised the statements and checked the Lean against the English descriptions.
    • number: human revised statements over dozens of iterations
    • number: human time roughly 1-2x the time of writing the paper versus about 10x typical
    • number: a full protocol can mean auditing about 1,000 lines of Lean
    • limits: This is a blog post, not a peer-reviewed paper. The notes rest on a tool summary, not on the page text. It is not about distributed systems. Claude sometimes silently swapped ā€˜for all, there exists’ for ā€˜there exists, for all’ in zero-knowledge claims. It also defined malicious provers that were too weak.
    • how much was read: not read; title and metadata only
    • source
    • record id: an-experiment-in-formal
  • AutoReal
    • what: A 7B model fine-tuned for theorem proving; a model, not an agent.
    • number: 51.67% on 660 seL4 theorems
    • number: 53.88% on 451 AFP security theorems
    • limits: Known only from a search summary. Not opened.
    • how much was read: not read; title and metadata only
    • record id: autoreal

Last edited: