English
Related papers

Related papers: The One Page Model Checker

200 papers

Multi-threaded programs are expected to improve responsiveness and conserve resources by dividing an application process into multiple threads for concurrent processing. However, due to scheduling and the interaction of multiple threads,…

Software Engineering · Computer Science 2024-09-26 Takumi Murata , Hiroaki Hashiura

We present a methodology for object-modular reasoning about hybrid system code using VCC, a deductive verifier for concurrent C code. We define in VCC an explicit time model, in which the passage of time must respect the invariants of…

Software Engineering · Computer Science 2014-03-17 Ernie Cohen

Modern and future processors need to remain functionally correct in the presence of permanent faults to sustain scaling benefits and limit field returns. This paper presents a combined analytical and microarchitectural simulation-based…

Performance · Computer Science 2022-06-24 Panagiota Nikolaou , Yiannakis Sazeides , Maria K. Michael

We address the problem of detecting race conditions in programs that use semaphores for synchronization. Netzer and Miller showed that it is NP-complete to detect race conditions in programs that use many semaphores. We show in this paper…

Data Structures and Algorithms · Computer Science 2007-05-23 Philip N. Klein , Hsueh-I Lu , Rob H. B. Netzer

Model checking and automated theorem proving are two pillars of formal methods. This paper investigates model checking from an automated theorem proving perspective, aiming at combining the expressiveness of automated theorem proving and…

Logic in Computer Science · Computer Science 2017-10-03 Ying Jiang , Jian Liu , Gilles Dowek , Kailiang Ji

We introduce a new framework for verifying systems with a parametric number of concurrently running processes. The systems we consider are well-structured with respect to a specific well-quasi order. This allows us to decide a wide range of…

Formal Languages and Automata Theory · Computer Science 2026-03-24 Paul Eichler , Swen Jacobs , Chana Weil-Kennedy

Within a component-based approach allowing dynamic reconfigurations, sequences of successive reconfiguration operations are expressed by means of reconfiguration paths, possibly infinite. We show that a subclass of such paths can be…

Software Engineering · Computer Science 2015-03-18 Jean-Michel Hufflen

Providing compact and understandable counterexamples for violated system properties is an essential task in model checking. Existing works on counterexamples for probabilistic systems so far computed either a large set of system runs or a…

Software Engineering · Computer Science 2016-11-26 Ralf Wimmer , Nils Jansen , Erika Ábrahám , Joost-Pieter Katoen

We present an automated framework for solidifying the cohesion between software specifications, their dependently typed models, and implementation at compile time. Model Checking and type checking are currently separate techniques for…

Programming Languages · Computer Science 2024-07-18 Thomas Ekström Hansen , Edwin Brady

A novel, scalable, on-the-fly model-checking procedure is presented to verify bounded PCTL properties of selected individuals in the context of very large systems of independent interacting objects. The proposed procedure combines…

Logic in Computer Science · Computer Science 2013-12-13 Diego Latella , Michele Loreti , Mieke Massink

State generation and exploration (counterexample search) are two cores of explicit-state Petri net model checking for linear temporal logic (LTL). Traditional state generation updates a structure to reduce the computation of all transitions…

Formal Languages and Automata Theory · Computer Science 2023-07-25 Zhijun Ding , Cong He , Shuo Li

Quantitative properties of stochastic systems are usually specified in logics that allow one to compare the measure of executions satisfying certain temporal properties with thresholds. The model checking problem for stochastic systems with…

Logic in Computer Science · Computer Science 2010-05-11 Axel Legay , Benoit Delahaye

Objects and actors are communicating state machines, offering and consuming different services at different points in their lifecycle. Two complementary challenges arise when programming such systems. When objects interact, their state…

Programming Languages · Computer Science 2016-06-21 Roly Perera , Julien Lange , Simon J. Gay

In present study, in order to improve the performance and reduce the amount of power which is dissipated in heterogeneous multicore processors, the ability of detecting the program execution phases is investigated. The programs execution…

Distributed, Parallel, and Cluster Computing · Computer Science 2010-01-14 A. Z. Jooya , M. Analoui

When an evolving program is modified to address issues related to thread synchronization, there is a need to confirm the change is correct, i.e., it does not introduce unexpected behavior. However, manually comparing two programs to…

Software Engineering · Computer Science 2018-07-17 Chungha Sung , Shuvendu Lahiri , Constantin Enea , Chao Wang

Since the topic emerged several years ago, work on regular model checking has mostly been devoted to the verification of state reachability and safety properties. Though it was known that linear temporal properties could also be checked…

Logic in Computer Science · Computer Science 2009-01-27 Ahmed Bouajjani , Axel Legay , Pierre Wolper

Developing multithreaded software is an extremely challenging task, even for experienced programmers. The challenge does not end after the code is written. There are other tasks associated with a development process that become…

Software Engineering · Computer Science 2014-09-04 Evgeny Vainer , Amiram Yehudai

The verification of multithreaded software is still a challenge. This comes mainly from the fact that the number of thread interleavings grows exponentially in the number of threads. The idea that thread interleavings can be studied with a…

Logic in Computer Science · Computer Science 2011-09-27 Robert Mittermayr , Johann Blieberger

Bounded model checking of pointer programs is a debugging technique for programs that manipulate dynamically allocated pointer structures on the heap. It is based on the following four observations. First, error conditions like dereference…

Logic in Computer Science · Computer Science 2016-03-02 Witold Charatonik , Piotr Witkowski

It is very common to use dynamic methods to detect deadlocks in MPI programs for the reason that static methods have some restrictions. To guarantee high reliability of some important MPI-based application software, a model of MPI…

Distributed, Parallel, and Cluster Computing · Computer Science 2007-09-25 Liao Ming-Xue , He Xiao-Xin , Fan Zhi-Hua