English
Related papers

Related papers: Effective Analysis of C Programs by Rewriting Vari…

200 papers

Analyzing and verifying heap-manipulating programs automatically is challenging. A key for fighting the complexity is to develop compositional methods. For instance, many existing verifiers for heap-manipulating programs require…

Programming Languages · Computer Science 2019-08-28 Long H. Pham , Jun Sun , Quang Loc Le

Automated program verification has always been an important component of building trustworthy software. While the analysis of real-world programs remains a theoretical challenge, the automation of loop invariant analysis has effectively…

Software Engineering · Computer Science 2025-09-17 Ruibang Liu , Minyu Chen , Ling-I Wu , Jingyu Ke , Guoqiang Li

We present a method based on program analysis and formal verification to identify conditionally relevant variables (CRVs) - variables which could lead to violation of safety properties in control software when affected by single event…

Software Engineering · Computer Science 2025-05-13 Ganesha , Sujit Kumar Chakrabarti

The understanding of source code in large-scale software systems poses a challenge for developers. The role of expertise in source code becomes critical for identifying developers accountable for substantial changes. However, in the context…

Software Engineering · Computer Science 2025-08-26 Karolina Milano , Bruno Cafeo

Determining whether a program terminates is a core challenge in program analysis with direct implications for correctness, verification, and security. We investigate whether transformer architectures can recognise termination patterns…

Programming Languages · Computer Science 2026-04-02 Yoav Alon , Cristina David

Mutation analysis is an effective technique to evaluate a test suite adequacy in terms of revealing unforeseen bugs in software. Traditional source- or IR-level mutation analysis is not applicable to the software only available in binary…

Software Engineering · Computer Science 2021-02-16 Mohsen Ahmadi , Pantea Kiaei , Navid Emamdoost

We show that abstract interpretation-based static program analysis can be made efficient and precise enough to formally verify a class of properties for a family of large programs with few or no false alarms. This is achieved by refinement…

Programming Languages · Computer Science 2016-08-14 Bruno Blanchet , Patrick Cousot , Radhia Cousot , Jerôme Feret , Laurent Mauborgne , Antoine Miné , David Monniaux , Xavier Rival

We present a one-fits-all programmatic approach to reason about a plethora of objectives on probabilistic programs. The first ingredient is to add a reward-statement to the language. We then define a program transformation applying a…

Programming Languages · Computer Science 2026-03-04 Philipp Schröer , Joost-Pieter Katoen

Weakest preconditions are a useful notion for program verification as they reduce a problem of program verification to a problem of constraint solving. Category-theoretic generalisations of weakest preconditions have been studied to capture…

Logic in Computer Science · Computer Science 2025-07-02 Satoshi Kura

Programmers often add meaningful information about program semantics when naming program entities such as variables, functions, and macros. However, static analysis tools typically discount this information when they look for bugs in a…

Programming Languages · Computer Science 2020-09-22 Roger Scott , Joseph Ranieri , Lucja Kot , Vineeth Kashyap

With an increasing number of value-flow properties to check, existing static program analysis still tends to have scalability issues when high precision is required. We observe that the key design flaw behind the scalability problem is that…

Software Engineering · Computer Science 2019-12-17 Qingkai Shi , Rongxin Wu , Gang Fan , Charles Zhang

This paper aims to develop a verification method for procedural programs via a transformation into Logically Constrained Term Rewriting Systems (LCTRSs). To this end, we extend transformation methods based on integer TRSs to handle…

Logic in Computer Science · Computer Science 2025-09-01 Carsten Fuhs , Cynthia Kop , Naoki Nishida

In this paper, we present a novel marriage of static and dynamic analysis. Given a large code base with many functions and a mature test suite, we propose using static analysis to find functions 1) with assertions or other evident…

Software Engineering · Computer Science 2016-09-22 Mohammad Amin Alipour , Alex Groce , Chaoqiang Zhang , Anahita Sanadaji , Gokul Caushik

We exhaustively explore the reprogrammability capabilities and the intrinsic universality of the Cartesian product $P \times C$ of the space $P$ of all possible computer programs of increasing size and the space $C$ of all possible…

Formal Languages and Automata Theory · Computer Science 2018-02-02 Jürgen Riedel , Hector Zenil

Variability-aware computing is the efficient application of programs to different sets of inputs that exhibit some variability. One example is program analyses applied to Software Product Lines (SPLs). In this paper we present the design…

Programming Languages · Computer Science 2021-02-09 Ramy Shahin , Marsha Chechik

Cooperation between verification methods is crucial to tackle the challenging problem of software verification. The paper focuses on the verification of C programs using pointers and it formalizes a cooperation between static analyzers…

Programming Languages · Computer Science 2018-12-03 Bouillaguet Quentin , Bobot François , Sighireanu Mihaela , Yakobowski Boris

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

Verification of higher-order probabilistic programs is a challenging problem. We present a verification method that supports several quantitative properties of higher-order probabilistic programs. Usually, extending verification methods to…

Logic in Computer Science · Computer Science 2024-07-04 Satoshi Kura , Hiroshi Unno

Customization is a general trend in software engineering, demanding systems that support variable stakeholder requirements. Two opposing strategies are commonly used to create variants: software clone & own and software configuration with…

Software Engineering · Computer Science 2021-03-03 Wardah Mahmood , Daniel Strüber , Thorsten Berger , Ralf Lämmel , Mukelabai Mukelabai

Despite the vast body of research literature proposing algorithms with formal guarantees, the amount of verifiable code in today's systems remains minimal. This discrepancy stems from the inherent difficulty of verifying code, particularly…

Software Engineering · Computer Science 2025-01-10 Changjie Wang , Mariano Scazzariello , Marco Chiesa
‹ Prev 1 4 5 6 7 8 10 Next ›