English
Related papers

Related papers: Verified Rust Monitors for Lola Specifications

200 papers

There exists a verification gap between formal protocol specifications and their actual implementations, which this work aims to bridge via monitoring for compliance to the formal specification. We instrument the networking and…

Cryptography and Security · Computer Science 2024-09-05 Kevin Morio , Robert Künnemann

The recent drive towards achieving greater autonomy and intelligence in robotics has led to high levels of complexity. Autonomous robots increasingly depend on third party off-the-shelf components and complex machine-learning techniques.…

Robotics · Computer Science 2019-04-23 Ankush Desai , Shromona Ghosh , Sanjit A. Seshia , Natarajan Shankar , Ashish Tiwari

This paper presents an application of specification based runtime verification techniques to control mobile robots in a reactive manner. In our case study, we develop a layered control architecture where runtime monitors constructed from…

Robotics · Computer Science 2019-02-12 Dogan Ulus , Calin Belta

We propose a hybrid approach to end-to-end Rust verification where the proof effort is split into powerful automated verification of safe Rust and targeted semi-automated verification of unsafe Rust. To this end, we present Gillian-Rust, a…

Programming Languages · Computer Science 2025-04-11 Sacha-Élie Ayoun , Xavier Denis , Petar Maksimović , Philippa Gardner

In runtime verification, manually formalizing a specification for monitoring system executions is a tedious and error-prone process. To address this issue, we consider the problem of automatically synthesizing formal specifications from…

Artificial Intelligence · Computer Science 2023-10-27 Ritam Raha , Rajarshi Roy , Nathanael Fijalkow , Daniel Neider , Guillermo A. Perez

We present SilVer (Silq Verification), an automated tool for verifying behaviors of quantum programs written in Silq, which is a high-level programming language for quantum computing. The goal of the verification is to ensure correctness of…

Quantum Physics · Physics 2024-09-11 Marco Lewis , Paolo Zuliani , Sadegh Soudjani

Stream-based runtime monitors are used in safety-critical applications such as Unmanned Aerial Systems (UAS) to compute comprehensive statistics and logical assessments of system health that provide the human operator with critical…

Formal Languages and Automata Theory · Computer Science 2022-05-26 Jan Baumeister , Bernd Finkbeiner , Stefan Gumhold , Malte Schledjewski

Formal specification languages have long languished, due to the grave scalability problems faced by complete verification methods. Runtime verification promises to use formal specifications to automate part of the more scalable art of…

Software Engineering · Computer Science 2010-03-30 Howard Barringer , Alex Groce , Klaus Havelund , Margaret Smith

CompCert is the first realistic formally verified compiler: it provides a machine-checked mathematical proof that the code it generates matches the source code. Yet, there could be loopholes in this approach. We comprehensively analyze…

Logic in Computer Science · Computer Science 2022-10-11 David Monniaux , Sylvain Boulmé

We develop a practical solution to the problem of automatic verification of the interface between device drivers and the OS. Our solution relies on a combination of improved driver architecture and verification tools. It supports drivers…

Operating Systems · Computer Science 2012-11-28 Sidney Amani , Peter Chubb , Alastair F. Donaldson , Alexander Legg , Leonid Ryzhyk , Yanjin Zhu

Validating the correctness of network protocol implementations is highly challenging due to the oracle and traceability problems. The former determines when a protocol implementation can be considered buggy, especially when the bugs do not…

Software Engineering · Computer Science 2025-04-28 Mingwei Zheng , Danning Xie , Qingkai Shi , Chengpeng Wang , Xiangyu Zhang

Large language models (LLMs) are increasingly used to generate requirements specifications, design documents, code, and test cases. In contrast, much less attention has been given to a more difficult assurance problem: statically verifying…

Software Engineering · Computer Science 2026-05-19 Zhi Quan Zhou , Dave Towey , Tsong Yueh Chen

In runtime verification, the central problem is to decide if a given program execution violates a given property. In online runtime verification, a monitor observes a program's execution as it happens. If the program being observed has hard…

Data Structures and Algorithms · Computer Science 2015-05-15 Radu Grigore , Stefan Kiefer

Despite being an essential step in software development, writing requirements specifications is frequently performed in natural language, leading to issues like inconsistency, incompleteness, or ambiguity. The ITLingo initiative has…

Software Engineering · Computer Science 2023-12-19 Andre Rodrigues , Alberto Rodrigues da Silva

Modern programming languages, most notably Rust, offer advanced linguistic constructs for building highly configurable software systems as aggregation of features -- identified by a configuration. However, they pose substantial challenges…

Programming Languages · Computer Science 2026-01-23 Federico Bruzzone , Walter Cazzola , Luca Favini

Static verification is a powerful method for enhancing software quality, but it demands significant human labor and resources. This is particularly true of static verifiers that reason about heap manipulating programs using an ownership…

Software Engineering · Computer Science 2025-01-06 Wen Fan , Marilyn Rego , Xin Hu , Sanya Dod , Zhaorui Ni , Danning Xie , Jenna DiVincenzo , Lin Tan

As the demand for Internet of Things (IoT) and Human-to-Machine Interaction (HMI) increases, modern System-on-Chips (SoCs) offering such solutions are becoming increasingly complex. This intricate design poses significant challenges for…

Signal Processing · Electrical Eng. & Systems 2024-04-25 Aman Kumar , Mark Litterick , Samuele Candido

LLMs can generate hardware descriptions from natural language specifications, but the resulting Verilog often contains width mismatches, combinational loops, and incomplete case logic that pass syntax checks yet fail in synthesis or…

Computation and Language · Computer Science 2026-05-13 Jing Xiong , Qi Han , Chenchen Ding , He Xiao , Zunhai Su , Chaofan Tao , Ngai Wong

We present a self-certifying compiler for the COGENT systems language. COGENT is a restricted, polymorphic, higher-order, and purely functional language with linear types and without the need for a trusted runtime or garbage collector. It…

Writing accurate numerical software is hard because of many sources of unavoidable uncertainties, including finite numerical precision of implementations. We present a programming model where the user writes a program in a real-valued…

Programming Languages · Computer Science 2013-09-11 Eva Darulova , Viktor Kuncak