Runtime Verification 22nd International Conference, RV 2022, Tbilisi, Georgia, September 28-30, 2022, Proceedings

This book constitutes the refereed proceedings of the 22nd International Conference on Runtime Verification, RV 2022, held in Tbilisi, Georgia, during September 28-30, 2022. The 12 regular papers and 10 short papers presented in this book were carefully reviewed and selected from 40 submissions. The...

Full description

Saved in:
Bibliographic Details
Main Authors Dang, Thao, Stolz, Volker
Format eBook Conference Proceeding
LanguageEnglish
Published Cham Springer International Publishing AG 2022
Springer International Publishing
Edition1
SeriesLecture Notes in Computer Science
Subjects
Online AccessGet full text

Cover

Loading…
Table of Contents:
  • Intro -- Preface -- Organization -- Learning by Bootstrapping of Latents (Abstract) -- Contents -- Full Papers -- Randomized First-Order Monitoring with Hashing -- 1 Introduction -- 2 Temporal-Relational Algebra -- 3 Algorithmic Details -- 3.1 Hash Abstractions -- 3.2 Expression Rewriting -- 4 Analysis of the Algorithm -- 4.1 Error Bounds -- 4.2 Space Complexity -- 5 Implementation and Evaluation -- 6 Related Work -- 7 Conclusion -- References -- Automated Surgical Procedure Assistance Framework Using Deep Learning and Formal Runtime Monitoring -- 1 Introduction -- 2 Overview of the Proposed System -- 3 Surgical Tool Detection -- 3.1 Faster-RCNN -- 3.2 Dataset -- 3.3 Implementation -- 3.4 Model Performance -- 4 Formal Runtime Monitoring -- 5 Experimentation -- 6 Related Work -- 6.1 Object Detection -- 6.2 Formal Runtime Monitoring -- 7 Conclusion and Future Work -- References -- Relaxing Safety for Metric First-Order Temporal Logic via Dynamic Free Variables -- 1 Introduction -- 2 Metric First-Order Temporal Logic -- 3 Relaxation of Safety -- 4 Implementation of Dual Operators -- 5 Monitoring Examples -- 6 Correctness -- 7 Conclusion -- A Appendix: Formal Definitions -- References -- Rule-Based Runtime Mitigation Against Poison Attacks on Neural Networks -- 1 Introduction -- 2 Background -- 3 Approach -- 3.1 Generation of Neuron Patterns with Prophecy -- 3.2 Pattern-Based Correction -- 3.3 Input-Based Correction -- 3.4 Algorithm for Runtime Analysis -- 4 Case Studies -- 4.1 Attack Techniques and Baselines -- 4.2 Experiment Setup -- 4.3 Discussion of Results -- 5 Related Work -- 6 Conclusion -- References -- Optimizing Prestate Copies in Runtime Verification of Function Postconditions -- 1 Introduction -- 2 A Minimal Language with Contracts -- 3 Capturing the Prestate -- 3.1 Introducing Copies -- 3.2 Moving old Upwards to Copy Less
  • 3 TeSSLa Compilers and Backends -- 4 Observation and Instrumentation -- 5 The TeSSLa Ecosystem -- 6 Conclusion -- References -- Real-Time Visualization of Stream-Based Monitoring Data -- 1 Introduction -- 1.1 Related Work -- 2 RTLola -- 3 Generating Visualization Data -- 3.1 Data Synchronization and Interpolation -- 3.2 Data Filtering and Aggregation -- 3.3 Attention Management -- 4 Conclusions -- References -- Automating Numerical Parameters Along the Evolution of a Nonlinear System -- 1 Introduction -- 2 Methodology -- 2.1 General Approach -- 2.2 Constructing and Exploring the Search Space -- 2.3 Ranking the Search Points -- 3 Preliminary Experimental Results -- 4 Conclusions -- References -- Correction to: Rule-Based Runtime Mitigation Against Poison Attacks on Neural Networks -- Correction to: Chapter "Rule-Based Runtime Mitigation Against Poison Attacks on Neural Networks" in: T. Dang and V. Stolz (Eds.): Runtime Verification, LNCS 13498, https://doi.org/10.1007/978-3-031-17196-3_4 -- Author Index
  • 5 Discussion and Conclusions -- References -- Towards Specificationless Monitoring of Provenance-Emitting Systems -- 1 Introduction -- 2 Related Work -- 3 Provenance Graphs -- 4 Monitoring Provenance-Emitting Systems -- 5 Anomaly Detection with Spectral Graph Theory -- 5.1 Compute Coordinates -- 5.2 Compute Distance -- 5.3 Proof of Concept -- 6 Conclusion and Future Work -- References -- A Python Library for Trace Analysis -- 1 Introduction -- 2 The PyContract Library -- 2.1 Example 1 -- 2.2 Example 2 -- 3 Comparison with Other Frameworks -- 4 Conclusion -- References -- Lock Contention Performance Classification for Java Intrinsic Locks -- 1 Introduction -- 2 Related Works -- 3 Methodology -- 3.1 Dataset Creation -- 3.2 Feature Engineering and Classification -- 4 Cluster Analysis -- 5 Conclusions -- References -- TestSelector: Automatic Test Suite Selection for Student Projects -- 1 Introduction -- 2 TestSelector Overview -- 3 Evaluation -- 3.1 RQ1: TestSelector Extensibility -- 3.2 RQ2: Classical Code Coverage Selection -- 3.3 RQ3: Linear Combinations of Coverage Measures -- 4 Related Work and Conclusions -- References -- Decent: A Benchmark for Decentralized Enforcement -- 1 Introduction -- 2 Principles of Decentralized Enforcement -- 3 Decent Overview -- 4 Evaluating the Algorithms -- 4.1 Metrics -- 4.2 Experiments -- 5 Related Work -- 6 Conclusions -- A Third experiment -- References -- Runtime Verification for FMI-Based Co-simulation -- 1 Introduction -- 2 Background -- 2.1 Co-simulation -- 2.2 Runtime Verification for First-Order LTL -- 3 Online Runtime Verification of FMI-Based Co-simulation -- 3.1 FMI Master Algorithm for Runtime Verification -- 3.2 FMU for Runtime Verification -- 4 Experimental Results -- 5 Conclusion -- References -- TeSSLa - An Ecosystem for Runtime Verification -- 1 Introduction -- 2 The TeSSLa Specification Language
  • 5.1 BFS Blockchains -- 5.2 DFS Blockchains -- 6 Conclusion and Future Work -- References -- Anticipatory Recurrent Monitoring with Uncertainty and Assumptions -- 1 Introduction -- 2 Preliminaries -- 2.1 Well-Known Monitor Constructions -- 3 Initial and Recurrent Monitoring -- 4 Anticipatory Monitoring -- 4.1 Anticipatory Monitors from Recurrent Monitors -- 5 Uncertainty and Assumptions -- 5.1 Uncertainty -- 5.2 Assumptions -- 6 Conclusion -- References -- Abstract Monitors for Quantitative Specifications -- 1 Introduction -- 2 Definitional Framework -- 2.1 Quantitative Specifications -- 2.2 Abstract Monitors -- 2.3 Resource Use of Abstract Monitors -- 3 Approximate Prompt Monitoring -- 3.1 Uniqueness of Resource-Optimal Prompt Monitors -- 3.2 Structure of Resource-Optimal Prompt Monitors -- 3.3 Unbounded Precision-Resource Trade-Offs for Prompt Monitors -- 4 Approximate Limit Monitoring -- 4.1 Specifications with Resource-Intensive Limit Behavior -- 4.2 Reversible Specifications -- 5 Conclusion and Future Work -- References -- Runtime Verification of Kotlin Coroutines -- 1 Introduction -- 2 Background: Coroutines in Kotlin -- 3 Informal Description of Properties -- 3.1 Property 1: DestroyedWithOwner -- 3.2 Property 2: NormalAsync -- 3.3 Property 3: ExceptionalAsync -- 3.4 Property 4: NeedHandler -- 3.5 Property 5: NoBlockUI -- 3.6 Property 6: UpdateUI -- 3.7 Property 7: ResumeIfNeeded -- 3.8 Properties Summarised -- 4 A Coroutine-Aware Specification Language -- 5 Monitoring Kotlin Coroutines -- 6 Implementation and Evaluation -- 7 Related Work -- 8 Concluding Remarks -- References -- Short and Tool Papers -- AspectSol: A Solidity Aspect-Oriented Programming Tool with Applications in Runtime Verification -- 1 Introduction -- 2 Aspect-Oriented Programming -- 3 Smart Contract AOP: Design Considerations -- 4 Runtime Verification Using AspectSol
  • 4 Example and Benchmarks -- 4.1 A Maze Generator -- 4.2 Runtime Verification with Ortac -- 4.3 Benchmarks -- 5 Related Work -- 6 Conclusion and Future Work -- A Term Semantics -- B Predicate Semantics -- C Program Semantics -- D Typing Rules -- References -- A Barrier Certificate-Based Simplex Architecture with Application to Microgrids*-10pt -- 1 Introduction -- 2 Preliminaries -- 3 Deriving the Switching Condition -- 3.1 Forward Switching Condition -- 3.2 Reverse Switching Condition -- 3.3 Decision Logic -- 4 Application to Microgrids -- 4.1 Baseline Controller -- 4.2 Neural Controller -- 4.3 Adaptation Module -- 5 Experimental Evaluation -- 5.1 Integration of Bb-Simplex in RTDS -- 5.2 Evaluation of Forward Switching Condition -- 5.3 Evaluation of Neural Controller -- 5.4 Evaluation of Adaptation Module -- 6 Related Work -- 7 Conclusion -- References -- Optimal Finite-State Monitoring of Partial Traces -- 1 Introduction -- 2 Overview -- 3 Basic Definitions -- 3.1 Notation -- 3.2 Definitions -- 4 Losses, Alternate Monitors, Soundness and Optimality -- 5 Optimal Monitor and Losses as Transducers -- 5.1 Discussion and Significance for Implementation -- 6 Framework Instantiations -- 7 Related Work -- 8 Conclusion and Future Work -- References -- Tainting in Smart Contracts: Combining Static and Runtime Verification -- 1 Introduction -- 2 Solidity with Dynamic Tainting -- 2.1 Simplified Solidity with Taints -- 2.2 Semantics -- 2.3 Implementation -- 3 Static Analysis -- 3.1 Abstract Semantics -- 3.2 Analysis and Optimisation -- 4 Case Study -- 5 Discussion -- 6 Conclusions -- References -- Transaction Monitoring of Smart Contracts -- 1 Introduction -- 2 Model of Computation -- 3 Transaction Monitors -- 3.1 Transaction Monitors -- 3.2 Transaction Monitors in BFS/DFS -- 4 Execution Mechanisms -- 5 Implementing Transaction Monitors