English
Related papers

Related papers: Awaiting for Godot: Stateless Model Checking that …

200 papers

We present a new model-based interpolation procedure for satisfiability modulo theories (SMT). The procedure uses a new mode of interaction with the SMT solver that we call solving modulo a model. This either extends a given partial model…

Logic in Computer Science · Computer Science 2021-06-09 Dejan Jovanović , Bruno Dutertre

The verification of linearizability -- a key correctness criterion for concurrent objects -- is based on trace refinement whose checking is PSPACE-complete. This paper suggests to use \emph{branching} bisimulation instead. Our approach is…

Programming Languages · Computer Science 2024-01-03 Xiaoxiao Yang , Joost-Pieter Katoen , Hao Wu

Ensuring the correctness of software for communication centric programs is important but challenging. Previous approaches, based on session types, have been intensively investigated over the past decade. They provide a concise way to…

Programming Languages · Computer Science 2021-09-27 Andreea Costea , Wei-Ngan Chin , Florin Craciun , Shengchao Qin

State-space reduction techniques, used primarily in model-checkers, all rely on the idea that some actions are independent, hence could be taken in any (respective) order while put in parallel, without changing the semantics. It is thus not…

Distributed, Parallel, and Cluster Computing · Computer Science 2012-04-03 Lisbeth Fajstrup , Eric Goubault , Emmanuel Haucourt , Samuel Mimram , Martin Raussen

The verification of concurrent programs remains an open challenge due to the non-determinism in inter-process communication. One algorithmic problem in this challenge is the consistency verification of concurrent executions. Consistency…

Programming Languages · Computer Science 2021-09-07 Truc Lam Bui , Krishnendu Chatterjee , Tushar Gautam , Andreas Pavlogiannis , Viktor Toman

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

Ensuring correctness of timed behaviors in cyber-physical systems (CPS) using closed-loop verification is challenging due to the hybrid dynamics in both systems and environments. Simulink and Stateflow are tools for model-based design that…

Software Engineering · Computer Science 2019-11-01 Li Huang , Eun-Young Kang

This paper proposes new parametric model adequacy tests for possibly nonlinear and nonstationary time series models with noncontinuous data distribution, which is often the case in applied work. In particular, we consider the correct…

Statistics Theory · Mathematics 2021-08-10 Igor Kheifets , Carlos Velasco

The trend of increasing cluster sizes of supercomputers leads to a growing susceptibility to Silent Data Corruption (SDC) that can invalidate program results. A common strategy for SDC protection is replication, where the computation is…

Distributed, Parallel, and Cluster Computing · Computer Science 2026-05-29 Mia Reitz , Claudia Fohry

Time-distributed Optimization (TDO) is an approach for reducing the computational burden of Model Predictive Control (MPC). When using TDO, optimization iterations are distributed over time by maintaining a running solution estimate and…

Optimization and Control · Mathematics 2021-02-25 Dominic Liao-McPherson , Terrence Skibik , Jordan Leung , Ilya Kolmanovsky , Marco M. Nicotra

Model predictive control (MPC) of hybrid dynamical systems is challenging because the associated optimization problem is nonsmooth and the resulting feedback law is discontinuous. This paper develops real-time MPC algorithms for nonlinear…

Optimization and Control · Mathematics 2026-04-21 Armin Nurkanović , Anton Pozharskiy , Moritz Diehl

Static analysis is the analysis of a program without executing it, usually carried out by an automated tool. Symbolic execution is a popular static analysis technique used both in program verification and in bug detection software. It works…

Software Engineering · Computer Science 2024-08-06 Gabor Horvath , Reka Kovacs , Zoltan Porkolab

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

Metaprogramming and effect handlers interact in unexpected, and sometimes undesirable, ways. One example is scope extrusion: the generation of ill-scoped code. Scope extrusion can either be preemptively prevented, via static type systems,…

Programming Languages · Computer Science 2026-01-27 Michael Lee , Ningning Xie , Oleg Kiselyov , Jeremy Yallop

Partially Observable Markov Decision Processes (POMDPs) are the standard framework for decision-making under uncertainty. While sampling-based methods scale well, they lack formal correctness guarantees, making them unsuitable for…

Artificial Intelligence · Computer Science 2026-05-15 Debraj Chakraborty , Anirban Majumdar , Prince Mathew , Sayan Mukherjee , Jean-François Raskin

The CountDownLatch (CDL) is a versatile concurrency mechanism that was first introduced in Java 5, and is also being adopted into C++ and C#. Its usage allows one or more threads to exchange resources and synchronize by waiting for some…

Programming Languages · Computer Science 2019-08-27 Wei-Ngan Chin , Ton Chanh Le , Shengchao Qin

The case study analyzed in the report involves the behavioral specification and verification of a three-stage pipeline consisting of mutually concurrent modules which also compete for a shared resource. The system components are specified…

Software Engineering · Computer Science 2017-05-16 Jerzy Mieścicki , Bogdan Czejdo , Wiktor B. Daszczuk

Loop under-approximation is a technique that enriches C programs with additional branches that represent the effect of a (limited) range of loop iterations. While this technique can speed up the detection of bugs significantly, it…

Formal Languages and Automata Theory · Computer Science 2014-10-22 Daniel Kroening , Matt Lewis , Georg Weissenbacher

Cyber-physical systems (CPS) are vulnerable to attacks targeting outgoing actuation commands that modify their physical behaviors. The limited resources in such systems, coupled with their stringent timing constraints, often prevents the…

Cryptography and Security · Computer Science 2023-04-28 Monowar Hasan , Sibin Mohan

Model checking approaches can be divided into two broad categories: global approaches that determine the set of all states in a model M that satisfy a temporal logic formula f, and local approaches in which, given a state s in M, the…

Logic in Computer Science · Computer Science 2014-10-29 Diego Latella , Michele Loreti , Mieke Massink