English
Related papers

Related papers: A shallow dive into the depths of non-termination …

200 papers

Roundoff errors cannot be avoided when implementing numerical programs with finite precision. The ability to reason about rounding is especially important if one wants to explore a range of potential representations, for instance for FPGAs…

Numerical Analysis · Computer Science 2016-11-28 Victor Magron , George Constantinides , Alastair Donaldson

Bounded model checking is among the most efficient techniques for the automatic verification of concurrent programs. However, encoding all possible interleavings often requires a huge and complex formula, which significantly limits the…

Programming Languages · Computer Science 2018-04-04 Liangze Yin , Wei Dong , Wanwei Liu , Ji Wang

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

This paper is concerned with rule-based programs that go wrong. The unwanted behavior of rule applications is non-termination or failure of a computation. We propose a static program analysis of the non-termination problem for recursion in…

Programming Languages · Computer Science 2017-01-11 Thom Fruehwirth

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

Bounded model checking (BMC) is an efficient formal verification technique which allows for desired properties of a software system to be checked on bounded runs of an abstract model of the system. The properties are frequently described in…

Logic in Computer Science · Computer Science 2026-02-19 Ramchandra Phawade , Tephilla Prince , S. Sheerazuddin

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

We present the SER modeling language for automatically verifying serializability of concurrent programs, i.e., whether every concurrent execution of the program is equivalent to some serial execution. SER programs are suitably restricted to…

Formal Languages and Automata Theory · Computer Science 2026-01-21 Guy Amir , Mark Barbone , Nicolas Amat , Jules Jacobs

Nondeterministic choice is a useful program construct that provides a way to describe the behaviour of a program without specifying the details of possible implementations. It supports the stepwise refinement of programs, a method that has…

Logic in Computer Science · Computer Science 2023-02-17 Yuan Feng , Yingte Xu

Proving programs terminating is a fundamental computer science challenge. Recent research has produced powerful tools that can check a wide range of programs for termination. The analog for probabilistic programs, namely termination with…

Logic in Computer Science · Computer Science 2012-04-16 Javier Esparza , Andreas Gaiser , Stefan Kiefer

This paper proposes a computationally efficient framework, based on interval analysis, for rigorous verification of nonlinear continuous-time dynamical systems with neural network controllers. Given a neural network, we use an existing…

Systems and Control · Electrical Eng. & Systems 2023-08-08 Saber Jafarpour , Akash Harapanahalli , Samuel Coogan

When checking concurrent software using a finite-state model, we face a formidable state explosion problem. One solution to this problem is dependence-based program slicing, whose use can effectively reduce verification time. It is…

Software Engineering · Computer Science 2023-11-16 Zhijun Ding , Shuo Li , Cheng Chen , Cong He

The $\textbf{P}$ vs. $\textbf{NP}$ problem is an important problem in contemporary mathematics and theoretical computer science. Many proofs have been proposed to this problem. This paper proposes a theoretic proof for $\textbf{P}$ vs.…

Computational Complexity · Computer Science 2020-07-02 Changlin Wan , Zhongzhi Shi

Verification of C++ programs has seen considerable progress in several areas, but not for programs that use these languages' mathematical libraries. The reason is that all libraries in widespread use come with no guarantees about the…

Programming Languages · Computer Science 2022-06-23 Roberto Bagnara , Michele Chiari , Roberta Gori , Abramo Bagnara

Propositional bounded model checking has been applied successfully to verify embedded software but is limited by the increasing propositional formula size and the loss of structure during the translation. These limitations can be reduced by…

Software Engineering · Computer Science 2009-07-14 Lucas Cordeiro , Bernd Fischer , Joao Marques-Silva

Proving program termination is key to guaranteeing absence of undesirable behaviour, such as hanging programs and even security vulnerabilities such as denial-of-service attacks. To make termination checks scale to large systems,…

Software Engineering · Computer Science 2015-05-19 Hong-Yi Chen , Cristina David , Daniel Kroening , Peter Schrammel , Björn Wachter

In this paper, we define two particular forms of non-termination, namely loops and binary chains, in an abstract framework that encompasses term rewriting and logic programming. The definition of loops relies on the notion of compatibility…

Logic in Computer Science · Computer Science 2023-12-22 Etienne Payet

Hyperproperties enable simultaneous reasoning about multiple execution traces of a system and are useful to reason about non-interference, opacity, robustness, fairness, observational determinism, etc. We introduce hyper parametric timed…

Formal Languages and Automata Theory · Computer Science 2024-08-01 Masaki Waga , Étienne André

Verifying multi-threaded programs is becoming more and more important, because of the strong trend to increase the number of processing units per CPU socket. We introduce a new configurable program analysis for verifying multi-threaded…

Logic in Computer Science · Computer Science 2016-12-23 Dirk Beyer , Karlheinz Friedberger

We introduce a novel approach to the automated termination analysis of computer programs: we use neural networks to represent ranking functions. Ranking functions map program states to values that are bounded from below and decrease as a…

Machine Learning · Computer Science 2022-09-07 Mirco Giacobbe , Daniel Kroening , Julian Parsert