English
Related papers

Related papers: Parallel Program Analysis on Path Ranges

200 papers

We describe a technique for systematic testing of multi-threaded programs. We combine Quasi-Optimal Partial-Order Reduction, a state-of-the-art technique that tackles path explosion due to interleaving non-determinism, with symbolic…

Programming Languages · Computer Science 2020-07-23 Daniel Schemmel , Julian Büning , César Rodríguez , David Laprell , Klaus Wehrle

Symbolic execution is at the core of many techniques for program analysis and test generation. Traditional symbolic execution of programs with numeric inputs enjoys the property of forking as many analysis traces as the number of analyzed…

Software Engineering · Computer Science 2026-01-15 Pietro Braione , Giovanni Denaro , Luca Guglielmo

Automatic software verification is a valuable means for software quality assurance. However, automatic verification and in particular software model checking can be time-consuming, which hinders their practical applicability e.g., the use…

Logic in Computer Science · Computer Science 2026-01-16 Max Barth , Marie-Christine Jakobs

We propose a symbolic execution method for analyzing the safety of software under fault attacks both accurately and efficiently. Fault attacks leverage physically injected hardware faults in an embedded system to break the safety of a…

Software Engineering · Computer Science 2026-04-27 Yuzhou Fang , Chenyu Zhou , Jingbo Wang , Chao Wang

We introduce a novel technique for finding real errors in programs. The technique is based on a synergy of three well-known methods: metacompilation, slicing, and symbolic execution. More precisely, we instrument a given program with a code…

Programming Languages · Computer Science 2012-01-24 Jiří Slabý , Jan Strejček , Marek Trtík

Evaluating how well a whole system or set of subsystems performs is one of the primary objectives of performance testing. We can tell via performance assessment if the architecture implementation meets the design objectives. Performance…

Distributed, Parallel, and Cluster Computing · Computer Science 2022-09-15 Donald Ene Vincent Ike Anireh

A comprehensive verification of parallel software imposes three crucial requirements on the procedure that implements it. Apart from accepting real code as program input and temporal formulae as specification input, the verification should…

Software Engineering · Computer Science 2013-04-01 Jiri Barnat , Petr Bauch

Mathematica is a powerful application package for doing mathematics and is used almost in all branches of science. It has widespread applications ranging from quantum computation, statistical analysis, number theory, zoology, astronomy, and…

Mathematical Software · Computer Science 2015-10-29 Santanu K. Maiti

Different from sequential programs, parallel programs possess their own characteristics which are difficult to analyze in the multi-process or multi-thread environment. This paper presents an innovative method to automatically analyze the…

Distributed, Parallel, and Cluster Computing · Computer Science 2009-06-09 Xu Liu , Jianfeng Zhan , Bibo Tu , Ming Zou , Dan Meng

Automated software verification of concurrent programs is challenging because of exponentially large state spaces with respect to the number of threads and number of events per thread. Verification techniques such as model checking need to…

Programming Languages · Computer Science 2020-04-15 Patrick Metzler , Habib Saissi , Péter Bokor , Neeraj Suri

Symbolic execution is an effective path oriented and constraint based program analysis technique. Recently, there is a significant development in the research and application of symbolic execution. However, symbolic execution still suffers…

Software Engineering · Computer Science 2015-03-20 Yufeng Zhang , Zhenbang Chen , Ji Wang

Probabilistic software analysis aims at quantifying the probability of a target event occurring during the execution of a program processing uncertain incoming data or written itself using probabilistic programming constructs. Recent…

Machine Learning · Computer Science 2021-06-21 Yicheng Luo , Antonio Filieri , Yuan Zhou

In permission logics such as separation logic, the iterated separating conjunction is a quantifier denoting access permission to an unbounded set of heap locations. In contrast to recursive predicates, iterated separating conjunctions do…

Programming Languages · Computer Science 2016-05-09 Peter Müller , Malte Schwerhoff , Alexander J. Summers

Symbolic execution is a widely used technique for test generation, offering systematic exploration of program paths through constraint solving. However, it is fundamentally constrained by the capability to model the target code, including…

Software Engineering · Computer Science 2026-02-12 Yaoxuan Wu , Xiaojie Zhou , Ahmad Humayun , Muhammad Ali Gulzar , Miryung Kim

Symbolic execution now becomes an indispensable technique for software testing and program analysis. There are several symbolic execution tools available off-the-shelf, and we need a practical benchmark approach to learn their capabilities.…

Software Engineering · Computer Science 2018-05-28 Hui Xu , Zirui Zhao , Yangfan Zhou , Michael R. Lyu

Dynamic symbolic execution is a widely used technique for automated software testing, designed for execution paths exploration and program errors detection. A hybrid approach has recently become widespread, when the main goal of symbolic…

Cryptography and Security · Computer Science 2022-03-23 Daniil Kuts

Task-based programming models have demonstrated their efficiency in the development of scientific applications on modern high-performance platforms. They allow delegation of the management of parallelization to the runtime system (RS),…

Distributed, Parallel, and Cluster Computing · Computer Science 2019-03-20 Bérenger Bramas

Runtime Verification deals with the question of whether a run of a system adheres to its specification. This paper studies runtime verification in the presence of partial knowledge about the observed run, particularly where input values may…

Logic in Computer Science · Computer Science 2022-07-13 Hannes Kallwies , Martin Leucker , Cesar Sanchez

Symbolic execution is an important software analysis technique which benefits downstream tasks such as software testing and debugging. However, several limitations hinder symbolic execution from application on real-world software. One of…

Software Engineering · Computer Science 2025-11-25 Wenhan Wang , Kaibo Liu , Zeyu Sun , An Ran Chen , Ge Li , Gang Huang , Lei Ma

Memory corruption is a serious class of software vulnerabilities, which requires careful attention to be detected and removed from applications before getting exploited and harming the system users. Symbolic execution is a well-known method…

Cryptography and Security · Computer Science 2025-09-16 Sara Baradaran , Mahdi Heidari , Ali Kamali , Maryam Mouzarani