English
Related papers

Related papers: Runtime Verification of Interactions Using Automat…

200 papers

The challenge of automatically determining the correctness of test executions is referred to as the test oracle problem and is one of the key remaining issues for automated testing. The goal in this paper is to solve the test oracle problem…

Software Engineering · Computer Science 2023-10-03 Foivos Tsimpourlas , Ajitha Rajan , Miltiadis Allamanis

Symbolic execution is a classical program analysis technique used to show that programs satisfy or violate given specifications. In this work we generalize symbolic execution to support program analysis for relational specifications in the…

Programming Languages · Computer Science 2019-08-05 Gian Pietro Farina , Stephen Chong , Marco Gaboardi

Self-adaptive systems (SASs) are capable of adjusting its behavior in response to meaningful changes in the operational con-text and itself. The adaptation needs to be performed automatically through self-managed reactions and…

Software Engineering · Computer Science 2017-04-06 Zhuoqun Yang , Zhi Jin , Zhi Li

Hyperproperties, such as non-interference and observational determinism, relate multiple system executions to each other. They are not expressible in standard temporal logics, like LTL, CTL, and CTL*, and thus cannot be monitored with…

Logic in Computer Science · Computer Science 2018-07-03 Bernd Finkbeiner , Christopher Hahn , Marvin Stenger , Leander Tentrup

We study the problem of monitoring at runtime whether a system fulfills a specification defined by a hyperproperty, such as linearizability or variants of non-interference. For this purpose, we introduce specifications with both passive and…

Logic in Computer Science · Computer Science 2025-08-05 Marek Chalupa , Thomas A. Henzinger , Ana Oliveira da Costa

Monitoring software systems at runtime is key for understanding workloads, debugging, and self-adaptation. It typically involves collecting and storing observable software data, which can be analyzed online or offline. Despite the…

Software Engineering · Computer Science 2023-05-03 Jhonny Mertz , Ingrid Nunes

Requirements engineering is a key phase in the development process. Ensuring that requirements are consistent is essential so that they do not conflict and admit implementations. We consider the formal verification of rt-consistency, which…

Formal Languages and Automata Theory · Computer Science 2020-07-09 Thierry Jéron , Nicolas Markey , David Mentré , Reiya Noguchi , Ocan Sankur

Contracts specifying a procedure's behavior in terms of pre- and postconditions are essential for scalable software verification, but cannot express any constraints on the events occurring during execution of the procedure. This…

Software Engineering · Computer Science 2022-11-22 Richard Bubel , Dilian Gurov , Reiner Hähnle , Marco Scaletta

Run Time Assurance (RTA) systems are online safety verification techniques that filter the output of a primary controller to assure safety. RTA approaches are used in safety-critical control to intervene when a performance-driven primary…

Systems and Control · Electrical Eng. & Systems 2023-03-28 Kyle Dunlap , Michael Hibbard , Mark Mote , Kerianne Hobbs

Runtime verification of temporal properties is essential for ensuring the correctness and reliability of real-time systems, particularly in cyber-physical systems. A significant challenge in this domain is the effective prediction of…

Formal Languages and Automata Theory · Computer Science 2025-07-30 Alessandro Cimatti , Thomas M. Grosen , Kim G. Larsen , Stefano Tonetta , Martin Zimmermann

This paper presents our findings for using activity modeling for simulation (validation), model checking (verification), and execution purposes. Each is needed to tackle system complexity and further research into behavioral modeling. We…

Software Engineering · Computer Science 2021-05-26 Abdurrahman Alshareef , Hessam S. Sarjoughian

The behavior of concurrent, asynchronous procedures depends in general on the call context, because of the global protocol that governs scheduling. This context cannot be specified with the state-based Hoare-style contracts common in…

Logic in Computer Science · Computer Science 2023-10-09 Reiner Hähnle , Eduard Kamburjan , Marco Scaletta

Scalable and automatic formal verification for concurrent systems is always demanding. In this paper, we propose a verification framework to support automated compositional reasoning for concurrent programs with shared variables. Our…

Formal Languages and Automata Theory · Computer Science 2018-03-28 Fuyuan Zhang , Yongwang Zhao , David Sanan , Yang Liu , Alwen Tiu , Shang-Wei Lin , Jun Sun

Software bugs in cloud management systems often cause erratic behavior, hindering detection, and recovery of failures. As a consequence, the failures are not timely detected and notified, and can silently propagate through the system. To…

Software Engineering · Computer Science 2022-03-09 Domenico Cotroneo , Luigi De Simone , Pietro Liguori , Roberto Natella , Angela Scibelli

Verifying hyperproperties at runtime is a challenging problem as hyperproperties, such as non-interference and observational determinism, relate multiple computation traces with each other. It is necessary to store previously seen traces,…

Logic in Computer Science · Computer Science 2019-06-03 Christopher Hahn , Marvin Stenger , Leander Tentrup

Most model checkers provide a useful simulation mode, that allows users to explore the set of possible behaviours by interactively picking at each state which event to execute next. Traditionally this simulation mode cannot take into…

Software Engineering · Computer Science 2019-12-24 Julien Brunel , David Chemouil , Alcino Cunha , Nuno Macedo

Automatic software verification is a valuable means for software quality assurance. However, automatic verification and in particular software model checking can be time-consuming, which hinders their practical applicability e.g., the use…

Logic in Computer Science · Computer Science 2026-01-16 Max Barth , Marie-Christine Jakobs

Software testing is an important issue in software development process to ensure higher quality on the products. Formal methods has been promising on testing reactive systems, specially critical systems, where accuracy is mandatory since…

Software Engineering · Computer Science 2019-08-13 Camila Sonada Gomes , Adilson Luiz Bonifacio

The overall problem addressed in this paper is the long-standing problem of program correctness, and in particular programs that describe systems of parallel executing processes. We propose a new method for proving correctness of parallel…

Programming Languages · Computer Science 2023-02-10 Frank S. de Boer , Einar Broch Johnsen , Violet Ka I Pun , Silvia Lizeth Tapia Tarifa

We sketch a simple language of concurrent objects which explores the design space between type systems and continuous testing. In our language, programs are collections of communicating automata checked automatically for multiparty…

Programming Languages · Computer Science 2016-09-08 Roly Perera , Simon J. Gay