English
Related papers

Related papers: Bounded Symbolic Execution for Runtime Error Detec…

200 papers

This paper introduces a framework of parametric descriptive directional types for constraint logic programming (CLP). It proposes a method for locating type errors in CLP programs and presents a prototype debugging tool. The main technique…

Programming Languages · Computer Science 2007-05-23 W. Drabent , J. Maluszynski , P. Pietrzak

Large language models (LLMs) can generate executable code from natural language descriptions, but the resulting programs frequently contain bugs due to hallucinations. In the absence of formal specifications, existing approaches attempt to…

Software Engineering · Computer Science 2026-03-31 Yihan Dai , Sijie Liang , Haotian Xu , Peichu Xie , Sergey Mechtaev

Deep Neural Networks (DNN) are increasingly used in a variety of applications, many of them with substantial safety and security concerns. This paper introduces DeepCheck, a new approach for validating DNNs based on core ideas from program…

Software Engineering · Computer Science 2018-07-30 Divya Gopinath , Kaiyuan Wang , Mengshi Zhang , Corina S. Pasareanu , Sarfraz Khurshid

Effective static analyses have been proposed which infer bounds on the number of resolutions or reductions. These have the advantage of being independent from the platform on which the programs are executed and have been shown to be useful…

Programming Languages · Computer Science 2007-05-23 Edison Mera , Pedro Lopez-Garcia , German Puebla , Manuel Carro , Manuel Hermenegildo

Program logics are a powerful formal method in the context of program verification. Can we develop a counterpart of program logics in the context of language verification? This paper proposes language logics, which allow for statements of…

Programming Languages · Computer Science 2024-08-06 Matteo Cimini

Concolic testing mixes symbolic and concrete execution to generate test cases covering paths effectively. Its benefits have been demonstrated for more than 15 years to test imperative programs. Other programming paradigms, like logic…

Logic in Computer Science · Computer Science 2020-02-18 Sophie Fortz , Fred Mesnard , Etienne Payet , Gilles Perrouin , Wim Vanhoof , German Vidal

Runtime verification has gained popularity as a lightweight approach for increasing assurance in systems under scrutiny. Performing runtime checks enables dynamic monitoring and alerts for unexpected behavior, thereby improving reliability…

Software Engineering · Computer Science 2026-03-19 Vladyslav Mikytiv , Bernardo Toninho , Carla Ferreira

This Survey provides an overview of techniques in termination analysis for programs with numerical variables and transitions defined by linear constraints. This subarea of program analysis is challenging due to the existence of undecidable…

Programming Languages · Computer Science 2026-01-27 Amir M. Ben-Amram , Samir Genaim , Joël Ouaknine , James Worrell

Formal verification of memory-manipulating programs critically depends on precise function specifications that capture memory states written by experts. This requirement has become a major bottleneck as large language models (LLMs)…

Software Engineering · Computer Science 2026-03-17 Liao Zhang , Tong Chen , Xiwei Wu , Qi Liu , Xiyu Zhai , Xinqi Wang , Qinxiang Cao

Large language models (LLMs) have demonstrated significant advancements in error handling. Current error-handling works are performed in a passive manner, with explicit error-handling instructions. However, in real-world scenarios, explicit…

Computation and Language · Computer Science 2025-06-03 Jiayi Zeng , Yizhe Feng , Mengliang He , Wenhui Lei , Wei Zhang , Zeming Liu , Xiaoming Shi , Aimin Zhou

Training large language models (LLMs) on Python execution traces grounds them in code execution and enables the line-by-line execution prediction of whole Python programs, effectively turning them into neural interpreters (FAIR CodeGen Team…

Machine Learning · Computer Science 2026-03-11 Maximilian Beck , Jonas Gehring , Jannik Kossen , Gabriel Synnaeve

A fundamental skill among human developers is the ability to understand and reason about program execution. As an example, a programmer can mentally simulate code execution in natural language to debug and repair code (aka. rubber duck…

Machine Learning · Computer Science 2024-04-24 Ansong Ni , Miltiadis Allamanis , Arman Cohan , Yinlin Deng , Kensen Shi , Charles Sutton , Pengcheng Yin

Code Large Language Models (Code LLMs) have opened a new era in programming with their impressive capabilities. However, recent research has revealed critical limitations in their ability to reason about runtime behavior and understand the…

Software Engineering · Computer Science 2025-09-25 Jian Wang , Xiaofei Xie , Qiang Hu , Shangqing Liu , Yi Li

We present a novel and well automatable approach to formal verification of programs with underspecified semantics, i.e., a language semantics that leaves open the order of certain evaluations. First, we reduce this problem to…

Programming Languages · Computer Science 2022-02-14 Eduard Kamburjan , Nathan Wasser

System programming languages are typically compiled in a linear pipeline process, which is a completely opaque and isolated to end-users. This limits the possibilities of performing meta-programming in the same language and environment, and…

Programming Languages · Computer Science 2023-09-28 Ronie Salgado

An important problem that arises during the execution of service-based applications concerns the ability to determine whether a running service can be substituted with one with a different interface, for example if the former is no longer…

Logic in Computer Science · Computer Science 2010-04-19 Marcello M. Bersani , Luca Cavallaro , Achille Frigeri , Matteo Pradella , Matteo Rossi

Code-generating Large Language Models (LLMs) have become essential tools in modern software development, enhancing productivity and accelerating development. This paper aims to investigate the fine-tuning of code-generating LLMs using…

Software Engineering · Computer Science 2025-05-06 Marina Sakharova , Abhinav Anand , Mira Mezini

Static program analysis by abstract interpretation is an efficient method to determine properties of embedded software. One example is value analysis, which determines the values stored in the processor registers. Its results are used as…

Logic in Computer Science · Computer Science 2011-11-09 Reinhold Heckmann , Christian Ferdinand

Modern Large Language Models (LLMs) have shown astounding capabilities of code understanding and synthesis. In order to assess such capabilities, several benchmarks have been devised (e.g., HumanEval). However, most benchmarks focus on code…

Software Engineering · Computer Science 2025-03-07 Julian Aron Prenner , Romain Robbes

Stateless code model checking is an effective verification technique, which is more applicable than stateful model checking to the software world. Existing stateless model checkers support the verification of neither LTL formulae nor the…

Programming Languages · Computer Science 2016-03-14 Elaheh Ghassabani , Mohammad Abdollahi Azgomi