English
Related papers

Related papers: The One Page Model Checker

200 papers

We present a unifying framework for type systems for process calculi. The core of the system provides an accurate correspondence between essentially functional processes and linear logic proofs; fragments of this system correspond to…

Logic in Computer Science · Computer Science 2015-05-29 Emmanuel Beffara

Process equivalences are formal methods that relate programs and system which, informally, behave in the same way. Since there is no unique notion of what it means for two dynamic systems to display the same behaviour there are a multitude…

Logic in Computer Science · Computer Science 2012-10-10 Martin Lange , Etienne Lozes , Manuel Vargas Guzmán

The C language is getting more and more popular as a design and verification language (DVL). SystemC, ParC [1] and Cx [2] are based on C. C-models of the design and verification environment can also be generated from new DVLs (e.g. Chisel…

Hardware Architecture · Computer Science 2018-07-17 Tobias Strauch

Stateless code model checking is an effective verification technique, which is more applicable than stateful model checking to the software world. Existing stateless model checkers support the verification of neither LTL formulae nor the…

Programming Languages · Computer Science 2016-03-14 Elaheh Ghassabani , Mohammad Abdollahi Azgomi

Cycle-accurate software simulation of multicores with complex microarchitectures is often excruciatingly slow. People use simplified core models to gain simulation speed. However, a persistent question is to what extent the results derived…

Hardware Architecture · Computer Science 2016-10-10 Sizhuo Zhang , Andrew Wright , Daniel Sanchez , Arvind

In this paper we investigate the applicability of standard model checking approaches to verifying properties in probabilistic programming. As the operational model for a standard probabilistic program is a potentially infinite parametric…

Programming Languages · Computer Science 2016-07-28 Nils Jansen , Christian Dehnert , Benjamin Lucien Kaminski , Joost-Pieter Katoen , Lukas Westhofen

Interlocking logics are at the core of critical systems controlling the traffic within stations. In this paper, we consider a generic interlocking logic, which can be instantiated to control a wide class of stations. We tackle the problem…

Logic in Computer Science · Computer Science 2024-03-04 Alessandro Cimatti , Alberto Griggio , Gianluca Redondi

We address the verification problem for concurrent program that dynamically create (fork) new threads or destroy (join) existing threads. We present a reduction to the verification problem for concurrent programs with a fixed number of…

Programming Languages · Computer Science 2023-11-03 Matthias Heizmann , Dominik Klumpp , Frank Schüssele , Lars Nitzke

A large number of different model checking approaches has been proposed during the last decade. The different approaches are applicable to different model types including untimed, timed, probabilistic and stochastic models. This paper…

Logic in Computer Science · Computer Science 2007-05-23 Peter Buchholz , Peter Kemper

The considerable effort of writing requirements is only worthwhile if the result meets two conditions: the requirements reflect stakeholders' needs, and the implementation satisfies them. In usual approaches, the use of different notations…

Software Engineering · Computer Science 2019-02-05 Alexandr Naumchev , Bertrand Meyer , Manuel Mazzara , Florian Galinier , Jean-Michel Bruel , Sophie Ebersold

The paper gives a detailed presentation of a framework, embedded into the simply typed higher-order logic and aimed at the support of sound and structured reasoning about various properties of models of imperative programs with interleaved…

Logic in Computer Science · Computer Science 2024-07-16 Maksym Bortin

A type system combining type application, constants as types, union types (associative, commutative and idempotent) and recursive types has recently been proposed for statically typing path polymorphism, the ability to define functions that…

Logic in Computer Science · Computer Science 2020-06-30 Juan Edi , Andrés Viso , Eduardo Bonelli

Software model checking, as an undecidable problem, has three possible outcomes: (1) the program satisfies the specification, (2) the program does not satisfy the specification, and (3) the model checker fails. The third outcome usually…

Software Engineering · Computer Science 2015-03-19 Dirk Beyer , Thomas A. Henzinger , M. Erkan Keremoglu , Philipp Wendler

In many embedded real-time systems, applications often interact with I/O devices via read/write operations, which may incur considerable suspension delays. Unfortunately, prior analysis methods for validating timing correctness in embedded…

Other Computer Science · Computer Science 2014-07-22 Guangmo Tong , Cong Liu

When optimizing a thread in a concurrent program (either done manually or by the compiler), it must be guaranteed that the resulting thread is a refinement of the original thread. Most theories of valid optimizations are formulated in terms…

Programming Languages · Computer Science 2015-10-27 Daniel Poetzl , Daniel Kroening

Model checking is a powerful method widely explored in formal verification. Given a model of a system, e.g., a Kripke structure, and a formula specifying its expected behaviour, one can verify whether the system meets the behaviour by…

Logic in Computer Science · Computer Science 2019-02-07 A. Molinari , A. Montanari , A. Murano , G. Perelli , A. Peron

Multicore parallel programming has some very difficult problems such as deadlocks during synchronizations and race conditions brought by concurrency. Added to the difficulty is the lack of a simple, well-accepted computing model for…

Programming Languages · Computer Science 2010-12-09 Yibing Wang

The proposed framework provides a general model of concurrent imperative programming. Programs are modeled as formal languages and concurrency as an interleaving (or shuffle) operator. This yields a simple and elegant algebra of programs.…

Programming Languages · Computer Science 2012-09-11 Stephan van Staden

This paper presents a technique for deadlock detection of Java programs. The technique uses typing rules for extracting infinite-state abstract models of the dependencies among the components of the Java intermediate language -- the Java…

Programming Languages · Computer Science 2017-09-14 Abel Garcia , Cosimo Laneve

Statistical Model Checking (SMC) is a trade-off between testing and formal verification. The core idea of the approach is to conduct some simulations of the system and verify if they satisfy some given property. In this paper we show that…

Software Engineering · Computer Science 2011-11-03 Peter Bulychev , Alexandre David , Kim Guldstrand Larsen , Marius Mikučionis , Axel Legay