English
Related papers

Related papers: Connecting Program Synthesis and Reachability: Aut…

200 papers

Reachability logic has been applied to $\mathbb{K}$ rewrite-rule-based language definitions as a language-generic logic of programs. To be able to verify not just code but also distributed system designs, a new rewrite-theory-generic…

Programming Languages · Computer Science 2017-09-18 Stephen Skeirik , Andrei Stefanescu , José Meseguer

We propose a path-based approach to program repair for imperative programs. Our repair framework takes as input a faulty program, a logic specification that is refuted, and a hint where the fault may be located. An iterative abstraction…

Programming Languages · Computer Science 2015-03-18 Heinz Riener , Rüdiger Ehlers , Görschwin Fey

Proving equivalence between functional programs is a fundamental problem in program verification, which often amounts to reasoning about algebraic data types (ADTs) and compositions of structural recursions. Modern theorem provers address…

Programming Languages · Computer Science 2024-05-21 Yican Sun , Ruyi Ji , Jian Fang , Xuanlin Jiang , Mingshuai Chen , Yingfei Xiong

Recent studies have adopted pre-trained language models, such as CodeT5 and CodeGPT, for automated program generation tasks like code generation, repair, and translation. Numerous language model-based approaches have been proposed and…

Software Engineering · Computer Science 2024-01-09 Yue Liu , Chakkrit Tantithamthavorn , Yonghui Liu , Li Li

In this work, we consider the fundamental problem of reachability analysis over imperative programs with real variables. The reachability property requires that a program can reach certain target states during its execution. Previous works…

Programming Languages · Computer Science 2020-07-29 Ali Asadi , Krishnendu Chatterjee , Hongfei Fu , Amir Kafshdar Goharshady , Mohammad Mahdavi

Automatic test generation aims to save developers time and effort by producing test suites with reasonably high coverage and fault detection. However, the focus of search-based generation tools in maximizing coverage leaves other…

Software Engineering · Computer Science 2025-04-11 Geraldine Galindo-Gutierrez

Automated program repair is an emerging technology which consists of a suite of techniques to automatically fix bugs or vulnerabilities in programs. In this paper, we present a comprehensive survey of the state of the art in program repair.…

Software Engineering · Computer Science 2022-11-24 Xiang Gao , Yannic Noller , Abhik Roychoudhury

Taking inspiration from the hypothesis of muscle synergies, we propose a method to generate open loop controllers for an agent solving point-to-point reaching tasks. The controller output is defined as a linear combination of a small set of…

Robotics · Computer Science 2012-09-27 Cristiano Alessandro , Juan Pablo Carbajal , Andrea d'Avella

We study the problem of determining whether a given temporal specification can be implemented by a symmetric system, i.e., a system composed from identical components. Symmetry is an important goal in the design of distributed systems,…

Logic in Computer Science · Computer Science 2017-10-17 Ruediger Ehlers , Bernd Finkbeiner

Program synthesis is the task of automatically generating expressions that satisfy a given specification. Program synthesis techniques have been used to automate the generation of loop invariants in code, synthesize function summaries, and…

Logic in Computer Science · Computer Science 2020-10-13 Elizabeth Polgreen , Sanjit A. Seshia

Robots are used increasingly often in safety-critical scenarios, such as robotic surgery or human-robot interaction. To ensure stringent performance criteria, formal controller synthesis is a promising direction to guarantee that robots…

Robotics · Computer Science 2023-09-13 Stefan B. Liu , Bastian Schürmann , Matthias Althoff

This paper considers program synthesis in the context of computational hardness, asking the question: How hard is it to determine whether a given synthesis problem has a solution or not? To answer this question, this paper studies program…

Logic in Computer Science · Computer Science 2024-05-28 Jinwoo Kim

The automatic generation of computer programs is one of the main applications with practical relevance in the field of evolutionary computation. With program synthesis techniques not only software developers could be supported in their…

Neural and Evolutionary Computing · Computer Science 2021-08-30 Dominik Sobania , Dirk Schweim , Franz Rothlauf

In this paper, we identify a fragment of second-order logic with restricted quantification that is expressive enough to capture numerous static analysis problems (e.g. safety proving, bug finding, termination and non-termination proving,…

Logic in Computer Science · Computer Science 2015-09-01 Cristina David , Daniel Kroening , Matt Lewis

Program Synthesis is the task of generating a program from a provided specification. Traditionally, this has been treated as a search problem by the programming languages (PL) community and more recently as a supervised learning problem by…

Artificial Intelligence · Computer Science 2018-06-11 Riley Simmons-Edler , Anders Miltner , Sebastian Seung

The pairwise reachability problem for a multi-threaded program asks, given control locations in two threads, whether they can be simultaneously reached in an execution of the program. The problem is important for static analysis and is used…

Logic in Computer Science · Computer Science 2015-07-01 Remi Bonnet , Rohit Chadha , Mahesh Viswanathan , P. Madhusudan

Automated feedback generation for introductory programming assignments is useful for programming education. Most works try to generate feedback to correct a student program by comparing its behavior with an instructor's reference program on…

Software Engineering · Computer Science 2021-07-01 Umair Z. Ahmed , Zhiyu Fan , Jooyong Yi , Omar I. Al-Bataineh , Abhik Roychoudhury

Despite the possibility to quickly compute reachable sets of large-scale linear systems, current methods are not yet widely applied by practitioners. The main reason for this is probably that current approaches are not push-button-capable…

Numerical Analysis · Mathematics 2024-02-23 Mark Wetzlinger , Niklas Kochdumper , Matthias Althoff

We address the problem of statically checking safety properties (such as assertions or deadlocks) for parameterized phaser programs. Phasers embody a non-trivial and modern synchronization construct used to orchestrate executions of…

Programming Languages · Computer Science 2021-05-13 Zeinab Ganjei , Ahmed Rezine , Ludovic Henrio , Petru Eles , Zebo Peng

We provide a tutorial introduction to reachability computation, a class of computational techniques that exports verification technology toward continuous and hybrid systems. For open under-determined systems, this technique can sometimes…

Systems and Control · Computer Science 2014-03-06 Oded Maler