English
Related papers

Related papers: Protocol-Driven Development: Governing Generated S…

200 papers

Context: Domain-Driven Design (DDD) has gained significant attention in software development for its potential to address complex software challenges, particularly in the areas of system refactoring, reimplementation, and adoption. Using…

Software Engineering · Computer Science 2025-06-30 Ozan Özkan , Önder Babur , Mark van den Brand

Writing documentation about software internals is rarely considered a rewarding activity. It is highly time-consuming and the resulting documentation is fragile when the software is continuously evolving in a multi-developer setting.…

Software Engineering · Computer Science 2013-11-13 Tobias Kuhn , Alexandre Bergel

Property-Directed Reachability (PDR/IC3) is a standard workhorse for hardware safety verification, but most implementations are tuned primarily for time-to-answer and treat the produced invariant or counterexample as a secondary byproduct.…

Logic in Computer Science · Computer Science 2026-05-19 Arman Ferdowsi , Laura Kovacs

We present a lightweight, open source Agda framework for manually verifying effectful programs using predicate transformer semantics. We represent the abstract syntax trees (AST) of effectful programs with a generalized algebraic datatype…

Software Engineering · Computer Science 2022-08-18 Christa Jenkins , Mark Moir , Harold Carr

The problem of code generation from textual program descriptions has long been viewed as a grand challenge in software engineering. In recent years, many deep learning based approaches have been proposed, which can generate a sequence of…

Software Engineering · Computer Science 2021-04-23 Chen Lyu , Ruyun Wang , Hongyu Zhang , Hanwen Zhang , Songlin Hu

Modern software projects include automated tests written to check the programs' functionality. The set of functions invoked by a test is called the trace of the test, and the action of obtaining a trace is called tracing. There are many…

Software Engineering · Computer Science 2019-09-10 Eyal Hadad , Roni Stern

Continuous practices that rely on automation in the software development workflow have been widely adopted by industry for over a decade. Despite this widespread use, software development remains a primarily human-driven activity that is…

Software Engineering · Computer Science 2021-04-07 Omar Elazhary , Margaret-Anne Storey , Neil A. Ernst , Elise Paradis

The linear programming (LP) approach is, together with value iteration and policy iteration, one of the three fundamental methods to solve optimal control problems in a dynamic programming setting. Despite its simple formulation,…

Systems and Control · Electrical Eng. & Systems 2023-10-31 Lucia Falconi , Andrea Martinelli , John Lygeros

Software testing is a prime factor in software industry. Besides knowing the importance of testing, only limited time is allocated for teaching it. It will be more efficient if testing is taught simultaneously with programming foundations.…

Artificial Intelligence · Computer Science 2013-02-22 A. Anandaraj , P. Kalaivani , V. Rameshkumar

Artificial Intelligence (AI) tools for automating design artifact generation are increasingly used in Requirements Engineering (RE) to transform textual requirements into structured diagrams and models. While these AI tools, particularly…

Software Engineering · Computer Science 2025-07-15 Syed Tauhid Ullah Shah , Mohammad Hussein , Ann Barcomb , Mohammad Moshirpour

Verification of fault-tolerant distributed protocols is an immensely difficult task. Often, in these protocols, thresholds on set cardinalities are used both in the process code and in its correctness proof, e.g., a process can perform an…

Programming Languages · Computer Science 2019-05-21 Idan Berkovits , Marijana Lazic , Giuliano Losa , Oded Padon , Sharon Shoham

Formal methods and testing are two important approaches that assist in the development of high quality software. For long time these approaches have been seen as competitors and there was very little interaction between the two communities.…

Software Engineering · Computer Science 2014-03-31 A. P. van der Meer , R. Kherrazi , M. Hamilton

Reliably knowing when a language model is correct is almost as important as being correct. We introduce prover-verifier deliberation (PVD), an inference-time protocol grounded in interactive proof theory, as a mechanism for selective…

Artificial Intelligence · Computer Science 2026-05-26 João Sedoc , Baotong Zhang , Dean Foster

To improve the quality of programs we provide an approach to guidance in the process of program development. At the higher level the various activities and their dependencies to structure the process are identified. At the lower level,…

Software Engineering · Computer Science 2024-11-21 Harrie Passier , Lex Bijlsma , Ruurd Kuiper , Kees Huizing

Essential tasks for the verification of probabilistic programs include bounding expected outcomes and proving termination in finite expected runtime. We contribute a simple yet effective inductive synthesis approach for proving such…

Logic in Computer Science · Computer Science 2023-02-09 Kevin Batz , Mingshuai Chen , Sebastian Junges , Benjamin Lucien Kaminski , Joost-Pieter Katoen , Christoph Matheja

Design patterns (DPs) are recognised as a good practice in software development. However, the lack of appropriate documentation often hampers traceability, and their benefits are blurred among thousands of lines of code. Automatic methods…

Software Engineering · Computer Science 2024-01-17 Rafael Barbudo , Aurora Ramírez , Francisco Servant , José Raúl Romero

Certified program synthesis (aka vericoding) is the process of automatically generating a program, its formal specification, and a machine-checkable proof of their alignment from a natural-language description. Two challenges make…

Software Engineering · Computer Science 2026-04-21 Yueyang Feng , Dipesh Kafle , Vladimir Gladshtein , Vitaly Kurin , George Pîrlea , Qiyuan Zhao , Peter Müller , Ilya Sergey

Enforcing data protection and privacy rules within large data processing applications is becoming increasingly important, especially in the light of GDPR and similar regulatory frameworks. Most modern data processing happens on top of a…

Cryptography and Security · Computer Science 2020-08-13 Zsolt Istvan , Soujanya Ponnapalli , Vijay Chidambaram

We present Nidus, a governance runtime that mechanizes the V-model for AI-assisted software delivery. In the self-hosting deployment, three LLM families (Claude, Gemini, Codex) delivered a 100,000-line system under proof obligations…

Software Engineering · Computer Science 2026-04-08 Danil Gorinevski

Domain-Driven Design (DDD) is a key framework for developing customer-oriented software, focusing on the precise modeling of an application's domain. Traditionally, metamodels that describe these domains are created manually by system…

Software Engineering · Computer Science 2026-01-30 Götz-Henrik Wiegand , Filip Stepniak , Patrick Baier