English
Related papers

Related papers: Efficient Verification of Concurrent Programs Over…

200 papers

Unsafe memory accesses in programs written using popular programming languages like C/C++ have been among the leading causes for software vulnerability. Prior memory safety checkers such as SoftBound enforce memory spatial safety by…

Programming Languages · Computer Science 2019-07-10 Yurong Chen , Hongfa Xue , Tian Lan , Guru Venkataramani

Many computer systems for calculating the proper organization of memory are among the most critical issues. Using a tier cache memory (along with branching prediction) is an effective means of increasing modern multi-core processors'…

Networking and Internet Architecture · Computer Science 2021-05-21 Mohamed A. Hamada , Abdelrahman Abdallah

Designing quantum processors is a complex task that demands advanced verification methods to ensure their correct functionality. However, traditional methods of comprehensively verifying quantum devices, such as quantum process tomography,…

Quantum Physics · Physics 2025-08-04 Keren Li , Peng Yan , Hanru Jiang , Nengkun Yu

The reachability problem in multi-pushdown automata (MPDA) has many applications in static analysis of recursive programs. An example is safety verification of multi-threaded recursive programs with shared memory. Since these problems are…

Formal Languages and Automata Theory · Computer Science 2025-12-05 C. Aiswarya , Pascal Baumann , Prakash Saivasan , Lia Schütze , Georg Zetzsche

Memory consistency models are notorious for being difficult to define precisely, to reason about, and to verify. More than a decade of effort has gone into nailing down the definitions of the ARM and IBM Power memory models, and yet there…

Programming Languages · Computer Science 2019-04-11 Sizhuo Zhang , Muralidaran Vijayaraghavan , Dan Lustig , Arvind

As concurrent programming becomes increasingly prevalent, effectively identifying and addressing concurrency issues such as data races and deadlocks is critical. This study evaluates the performance of several leading large language models…

Software Engineering · Computer Science 2025-09-05 Ridhi Jain , Rahul Purandare

Memory safety defects pose a major threat to software reliability, enabling cyberattacks, outages, and crashes. To mitigate these risks, organizations adopt Compositional Bounded Model Checking (BMC), using unit proofs to formally verify…

Software Engineering · Computer Science 2025-03-19 Paschal C. Amusuo , Owen Cochell , Taylor Le Lievre , Parth V. Patil , Aravind Machiry , James C. Davis

We study a clean machine model for external memory and stream processing. We show that the number of scans of the external data induces a strict hierarchy (as long as work space is sufficiently small, e.g., polylogarithmic in the size of…

Databases · Computer Science 2007-05-23 Martin Grohe , Christoph Koch , Nicole Schweikardt

We study the formal semantics of non-volatile memory in the x86-TSO architecture. We show that while the explicit persist operations in the recent model of Raad et al. from POPL'20 only enforce order between writes to the non-volatile…

Programming Languages · Computer Science 2020-10-28 Artem Khyzha , Ori Lahav

Verification of concurrent systems with thousands of multiple threads and transactions is a challenging problem not just for simulation or emulation but also for formal. To get designs to work correctly and provide optimal PPA the designers…

Software Engineering · Computer Science 2017-05-02 Ashish Darbari , Iain Singleton

We present a technique for the automated verification of abstract models of multithreaded programs providing fresh name generation, name mobility, and unbounded control. As high level specification language we adopt here an extension of…

Computation and Language · Computer Science 2007-05-23 Giorgio Delzanno

The goal of unbounded program verification is to discover an inductive invariant that safely over-approximates all possible program behaviors. Functional languages featuring higher order and recursive functions become more popular due to…

Software Engineering · Computer Science 2017-04-18 Dmitry Mordvinov , Grigory Fedyukovich

Array-intensive programs are often amenable to parallelization across many cores on a single machine as well as scaling across multiple machines and hence are well explored, especially in the domain of high-performance computing. These…

Programming Languages · Computer Science 2019-05-23 Kunal Banerjee , Chandan Karfa

This paper describes the development and verification of a competitive parachute system for Micro Air Vehicles, in particular focusing on verification of the embedded software. We first introduce the overall solution including a system…

Software Engineering · Computer Science 2017-06-12 Martin Becker , Markus Neumair , Alexander Söhn , Samarjit Chakraborty

The memory consistency model is a fundamental system property characterizing a multiprocessor. The relative merits of strict versus relaxed memory models have been widely debated in terms of their impact on performance, hardware complexity…

Distributed, Parallel, and Cluster Computing · Computer Science 2011-04-07 Alexander Jaffe , Thomas Moscibroda , Laura Effinger-Dean , Luis Ceze , Karin Strauss

We present a Bounded Model Checking technique for higher-order programs. The vehicle of our study is a higher-order calculus with general references. Our technique is a symbolic state syntactical translation based on SMT solvers, adapted to…

Programming Languages · Computer Science 2018-04-06 Yu-Yang Lin , Nikos Tzevelekos

This paper proposes a thought experiment to search for efficient bounded algorithms of NPC problems by machine enumeration. The key contributions are: -- On Universal Turing Machines, a program's time complexity should be characterized as:…

Computational Complexity · Computer Science 2012-10-09 YuQian Zhou

We consider the broad problem of analyzing safety properties of asynchronous concurrent programs under arbitrary thread interleavings. Delay-bounded deterministic scheduling, introduced in prior work, is an efficient bug-finding technique…

Programming Languages · Computer Science 2021-05-18 Andrew Johnson , Thomas Wahl

This work strives to make formal verification of POSIX multithreaded programs easily accessible to general programmers. Sthread operates directly on multithreaded C/C++ programs, without the need for an intermediate formal model. Sthread is…

Programming Languages · Computer Science 2020-02-18 Gene Cooperman , Martin Quinson

The implementation of digital filters in processors based on fixed-point arithmetic can lead to problems related to the finite word-length. In particular, the processing of signals in such filters can produce overflows and unwanted noise…

Software Engineering · Computer Science 2013-07-24 Renato B. Abreu , Lucas Cordeiro , Eddie B. L. Filho