English
Related papers

Related papers: A Case Study on Model Checking and Runtime Verific…

200 papers

We adapt an existing preemptive scheduling model of RTOS kernel by eChronos from machine-assisted proof to Spin-based model checker. The model we constructed can be automatically verified rather than formulating proofs by hand. Moreover, we…

Operating Systems · Computer Science 2018-08-14 Chen-Kai Lin , Ching-Chun , Huang , Bow-Yaw Wang

Rust is a popular programming language in building various low-level software in recent years. It aims to provide safe concurrency when implementing multi-threaded software through a suite of compiler checking rules. Unfortunately, there is…

Programming Languages · Computer Science 2019-02-07 Zeming Yu , Linhai Song , Yiying Zhang

Runtime verification is checking whether a system execution satisfies or violates a given correctness property. A procedure that automatically, and typically on the fly, verifies conformance of the system's behavior to the specified…

Software Engineering · Computer Science 2013-03-06 Mikhail Chupilko , Alexander Kamkin

We describe a novel approach for adapting an existing software model checker to perform precise runtime verification. The software under test is allowed to communicate with the wider environment (including the file system and network). The…

Software Engineering · Computer Science 2018-06-01 Katarína Kejstová , Petr Ročkai , Jiří Barnat

Finding bugs is key to the correctness of compilers in wide use today. If the behaviour of a compiled program, as allowed by its architecture memory model, is not a behaviour of the source program under its source model, then there is a…

Programming Languages · Computer Science 2024-01-31 Luke Geeson , Lee Smith

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

Artificial Intelligence has gained a lot of traction in the recent years, with machine learning notably starting to see more applications across a varied range of fields. One specific machine learning application that is of interest to us…

Software Engineering · Computer Science 2023-05-10 Teodor Rares Begu

To maximize the information gained from a single execution when verifying a concurrent system, one can derive all concurrency-aware equivalent executions and check them against linear specifications. This paper offers an alternative…

Logic in Computer Science · Computer Science 2025-07-08 Martin Leucker

Model checking is usually based on a comprehensive traversal of the state space. Causality-based model checking is a radically different approach that instead analyzes the cause-effect relationships in a program. We give an overview on a…

Logic in Computer Science · Computer Science 2017-10-11 Bernd Finkbeiner , Andrey Kupriyanov

Verifying relations between programs arises as a task in various verification contexts such as optimizing transformations, relating new versions of programs with older versions (regression verification), and noninterference. However,…

Programming Languages · Computer Science 2023-03-28 Ramana Nagasamudram , Anindya Banerjee , David A. Naumann

Runtime verification is a lightweight verification technique that complements model checking by analyzing system executions at runtime rather than exploring a complete system model in advance. It is particularly useful for partially…

Logic in Computer Science · Computer Science 2026-04-30 Benedikt Bollig

Runtime verification consists in observing and collecting the execution traces of a system and checking them against a specification, with the objective of raising an error when a trace does not satisfy the specification. We consider…

Logic in Computer Science · Computer Science 2025-11-04 Chana Weil-Kennedy , Darine Rammal , Christophe Gaston , Arnault Lapitre

Go is a popular concurrent programming language thanks to its ability to efficiently combine concurrency and systems programming. In Go programs, a number of concurrency bugs can be caused by a mixture of data races and communication…

Programming Languages · Computer Science 2021-11-22 Julia Gabet , Nobuko Yoshida

This work utilizes the plethora of work on verification of sequential programs for the purpose of verifying concurrent programs. We reduce the verification of a concurrent program to a series of verification tasks of sequential programs.…

Programming Languages · Computer Science 2021-06-03 Dan Rasin , Orna Grumberg , Sharon Shoham

Concurrent programs are difficult to test due to their inherent non-determinism. To address this problem, testing often requires the exploration of thread schedules of a program; this can be time-consuming when applied to real-world…

Software Engineering · Computer Science 2018-04-11 Tingting Yu , Wei Wen , Xue Han , Jane Hayes

Runtime verification is an effective automated method for specification-based offline testing and analysis as well as online monitoring of complex systems. The specification language is often a variant of regular expressions or a popular…

Logic in Computer Science · Computer Science 2014-11-11 Ramy Medhat , Yogi Joshi , Borzoo Bonakdarpour , Sebastian Fischmeister

Learners are often introduced to programming via dedicated languages such as Scratch, where block-based commands are assembled visually in order to control the interactions of graphical sprites. Automated testing of such programs is an…

Software Engineering · Computer Science 2022-02-15 Katharina Götz , Patric Feldmeier , Gordon Fraser

Finite-state models are ubiquitous in the study of concurrent systems, especially controllers and servers that operate in a repetitive cycle. In this paper, we show how to extract finite state models from a run of a multi-threaded Java…

Software Engineering · Computer Science 2024-07-26 KP Jevitha , Bharat Jayaraman , M Sethumadhavan

Reasoning models produce long traces of intermediate decisions and tool calls, making test-time verification important for ensuring correctness. Existing approaches either verify only the final answer, which misses early errors, or rely on…

Scheduling with testing is a recent online problem within the framework of explorable uncertainty motivated by environments where some preliminary action can influence the duration of a task. Jobs have an unknown processing time that can be…

Data Structures and Algorithms · Computer Science 2021-08-20 Susanne Albers , Alexander Eckl
‹ Prev 1 2 3 10 Next ›