Christian Colombo Martin Leucker (Eds.) 7 3 2 1 1 S C Runtime Verification N L 18th International Conference, RV 2018 Limassol, Cyprus, November 10–13, 2018 Proceedings 123 Lecture Notes in Computer Science 11237 Commenced Publication in 1973 Founding and Former Series Editors: Gerhard Goos, Juris Hartmanis, and Jan van Leeuwen Editorial Board David Hutchison Lancaster University, Lancaster, UK Takeo Kanade Carnegie Mellon University, Pittsburgh, PA, USA Josef Kittler University of Surrey, Guildford, UK Jon M. Kleinberg Cornell University, Ithaca, NY, USA Friedemann Mattern ETH Zurich, Zurich, Switzerland John C. Mitchell Stanford University, Stanford, CA, USA Moni Naor Weizmann Institute of Science, Rehovot, Israel C. Pandu Rangan Indian Institute of Technology Madras, Chennai, India Bernhard Steffen TU Dortmund University, Dortmund, Germany Demetri Terzopoulos University of California, Los Angeles, CA, USA Doug Tygar University of California, Berkeley, CA, USA Gerhard Weikum Max Planck Institute for Informatics, Saarbrücken, Germany More information about this series at http://www.springer.com/series/7408 Christian Colombo Martin Leucker (Eds.) (cid:129) fi Runtime Veri cation 18th International Conference, RV 2018 – Limassol, Cyprus, November 10 13, 2018 Proceedings 123 Editors Christian Colombo Martin Leucker University of Malta University of Lübeck Msida,Malta Lübeck,Germany ISSN 0302-9743 ISSN 1611-3349 (electronic) Lecture Notesin Computer Science ISBN 978-3-030-03768-0 ISBN978-3-030-03769-7 (eBook) https://doi.org/10.1007/978-3-030-03769-7 LibraryofCongressControlNumber:2018960437 LNCSSublibrary:SL2–ProgrammingandSoftwareEngineering ©SpringerNatureSwitzerlandAG2018 Chapter “Hardware-Based Runtime Verification with Embedded Tracing Units and Stream Processing” is licensed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/).Forfurtherdetailsseelicenseinformationinthechapter. Thisworkissubjecttocopyright.AllrightsarereservedbythePublisher,whetherthewholeorpartofthe material is concerned, specifically the rights of translation, reprinting, reuse of illustrations, recitation, broadcasting, reproduction on microfilms or in any other physical way, and transmission or information storageandretrieval,electronicadaptation,computersoftware,orbysimilarordissimilarmethodologynow knownorhereafterdeveloped. Theuseofgeneraldescriptivenames,registerednames,trademarks,servicemarks,etc.inthispublication doesnotimply,evenintheabsenceofaspecificstatement,thatsuchnamesareexemptfromtherelevant protectivelawsandregulationsandthereforefreeforgeneraluse. Thepublisher,theauthors,andtheeditorsaresafetoassumethattheadviceandinformationinthisbookare believedtobetrueandaccurateatthedateofpublication.Neitherthepublishernortheauthorsortheeditors give a warranty, express or implied, with respect to the material contained herein or for any errors or omissionsthatmayhavebeenmade.Thepublisherremainsneutralwithregardtojurisdictionalclaimsin publishedmapsandinstitutionalaffiliations. ThisSpringerimprintispublishedbytheregisteredcompanySpringerNatureSwitzerlandAG Theregisteredcompanyaddressis:Gewerbestrasse11,6330Cham,Switzerland Preface Thisvolumecontainstheproceedingsofthe18thInternationalConferenceonRuntime Verification (RV 2018), which was held during November 10–13, 2018, at the Royal Apollonia Beach Hotel, Limassol, Cyprus. The RV series consists of annual meetings that gather together scientists from both academia and industry interested in investi- gating novel lightweight formal methods to monitor, analyze, and guide the runtime behaviorofsoftwareandhardwaresystems.Runtimeverificationtechniquesarecrucial for system correctness, reliability, and robustness; they provide an additional level of rigor and effectiveness compared with conventional testing, and are generally more practicalthanexhaustiveformalverification.Runtime verificationcanbeusedpriorto deployment,fortesting,verification,anddebuggingpurposes,andafterdeploymentfor ensuring reliability, safety, and security and for providing fault containment and recovery as well as online system repair. RV started in 2001 as an annual workshop and turned into a conference in 2010. The workshops were organized as satellite events to an established forum, including CAV and ETAPS. The proceedings of RV from 2001 to 2005 were published in the Electronic Notes in Theoretical Computer Science. Since 2006, the RV proceedings have been published in Springer’s Lecture Notes in Computer Science. The previous five RV conferences took place in Istanbul, Turkey (2012); Rennes, France (2013); Toronto, Canada (2014); Vienna, Austria (2015); Madrid, Spain (2016); and Seattle, USA (2017). There were 49 submissions, 38 as regular contributions, six as short contributions and five as tool papers. Each submission was reviewed by at least three Program Committee members. The committee decided to accept 21 papers, 15 regular papers, three short papers, and three tool papers. The evaluation and selection process involved thorough discussions among the members of the Program Committee and external reviewers through the EasyChair conference manager, before reaching a consensus on the final decisions. To comple- ment the contributed papers, we included in the program three invited speakers cov- ering both industry and academia: – Rajeev Alur, University of Pennsylvania, USA – Jim Kapinski, Toyota Motor North America (TMNA) – Fritz Vaandrager, Radboud University, The Netherlands Additionally, the proceedings also contain three invited contributions. Theconferenceincludedsixtutorialsthattookplaceonthefirstday.Thefollowing tutorials were selected to cover a breadth of topics relevant to RV: – Cesar Sanchez presented a tutorial on “Online and Offline Stream Runtime Veri- fication of Synchronous Systems” – Shaun Azzopardi, Joshua Ellul, and Gordon Pace presented a tutorial on “Moni- toring Smart Contracts: ContractLarva and Open Challenges Beyond” VI Preface – Ylies Falcone presented a tutorial on “Can We Monitor Multi-threaded Java Programs?” – Lukas Convent, Sebastian Hungerecker, Torben Scheffel, Malte Schmitz, Daniel Thoma, and Alexander Weiss presented a tutorial on “Hardware-Based Runtime Verification with Embedded Tracing Units and Stream Processing” – Doron Peled and Klaus Havelund, presented a tutorial on “Runtime Verification – From Propositional to First-Order Temporal Logic” – Ezio Bartocci presented a tutorial on “Monitoring, Learning and Control of Cyber-Physical Systems with STL” We would like to thank the authors of all submitted papers, the members of the Steering Committee, the Program Committee, and the external reviewers for their exhaustivetaskofreviewingandevaluatingallsubmittedpapers.Wehighlyappreciate the EasyChair system for the management of submissions. We acknowledge the great support from our sponsors. Toyota InfoTech and Run- time Verification Inc. acted as gold sponsors and Denso as bronze sponsor. September 2018 Martin Leucker Christian Colombo Organization Program Committee Wolfgang Ahrendt Chalmers University of Technology, Sweden Ezio Bartocci Vienna University of Technology, Austria Andreas Bauer KUKA Eric Bodden Paderborn University and Fraunhofer IEM, Germany Borzoo Bonakdarpour Iowa State University, USA Christian Colombo University of Malta, Malta Ylies Falcone University Grenoble Alpes, Inria, France Lu Feng University of Virginia, USA Adrian Francalanza University of Malta, Malta Jean Goubault-Larrecq LSV, ENS Paris-Saclay, CNRS, Université Paris-Saclay, France Radu Grosu Stony Brook University, USA Kim Guldstrand Larsen Aalborg University, Denmark Sylvain Hallé Université du Québec à Chicoutimi, Canada Klaus Havelund Jet Propulsion Laboratory, USA Marieke Huisman University of Twente, The Netherlands Limin Jia Carnegie Mellon University, USA Felix Klaedtke NEC Labs Europe Shuvendu Lahiri Microsoft Insup Lee University of Pennsylvania, USA Axel Legay IRISA/Inria, Rennes, France Martin Leucker University of Lübeck, Germany David Lo Singapore Management University, Singapore Leonardo Mariani University of Milano Bicocca, Italy Ayoub Nouri Verimag Gordon Pace University of Malta, Malta Doron Peled Bar-Ilan University, Israel Ka I Pun University of Oslo, Norway Jorge A. Pérez University of Groningen, The Netherlands Giles Reger The University of Manchester, UK Grigore Rosu University of Illinois at Urbana-Champaign, USA Cesar Sanchez IMDEA Software Institute, Spain Gerardo Schneider Chalmers — University of Gothenburg, Sweden Nastaran Shafiei University of York, UK Rahul Sharma Microsoft Shinichi Shiraishi Panasonic Julien Signoles CEA LIST Scott Smolka Stony Brook University, USA VIII Organization Oleg Sokolsky University of Pennsylvania, USA Bernhard Steffen University of Dortmund, Germany Scott Stoller Stony Brook University, USA Volker Stolz Høgskulen på Vestlandet, Norway Neil Walkinshaw The University of Sheffield, UK Chao Wang University of Southern California, USA Eugen Zalinescu Technical University of Munich, Germany Additional Reviewers Ahishakiye, Faustin Lechner, Mathias Attard, Duncan Ma, Meiyi Biondi, Fabrizio Mahyar, Hamidreza Chen, Shuo Mallozzi, Piergiuseppe Dan, Li Mediouni, Braham Lotfi El-Hokayem, Antoine Mohan, Gautam Enea, Constantin Park, Sangdon Finkbeiner, Bernd Poulsen, Danny Bøgsted Fulton, Nathan Ratasich, Denise Given-Wilson, Thomas Signoles, Julien Han, Minbiao Stoller, Scott Herda, Mihai Tan, Joshua Jakšić, Svetlana Vorobyov, Kostyantyn Jiang, Zhihao Wang, Rui Kaur, Ramneet Woo, Maverick Kuester, Jan-Christoph Zhang, Teng Lange, Felix Dino Contents Invited Papers Runtime Verification - 17 Years Later. . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 Klaus Havelund and Grigore Roşu COST Action IC1402 Runtime Verification Beyond Monitoring. . . . . . . . . . 18 Christian Colombo, Yliès Falcone, Martin Leucker, Giles Reger, Cesar Sanchez, Gerardo Schneider, and Volker Stolz Second School on Runtime Verification, as Part of the ArVi COST Action 1402: Overview and Reflections. . . . . . . . . . . . . . . . . . . . . . . . . . . 27 Yliès Falcone Tutorial Papers Monitoring, Learning and Control of Cyber-Physical Systems with STL (Tutorial). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 Ezio Bartocci Hardware-Based Runtime Verification with Embedded Tracing Units and Stream Processing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 LukasConvent,SebastianHungerecker,TorbenScheffel,MalteSchmitz, Daniel Thoma, and Alexander Weiss Can We Monitor All Multithreaded Programs?. . . . . . . . . . . . . . . . . . . . . . 64 Antoine El-Hokayem and Yliès Falcone Runtime Verification: From Propositional to First-Order Temporal Logic. . . . 90 Klaus Havelund and Doron Peled Monitoring Smart Contracts: ContractLarva and Open Challenges Beyond. . . 113 Shaun Azzopardi, Joshua Ellul, and Gordon J. Pace Online and Offline Stream Runtime Verification of Synchronous Systems . . . 138 César Sánchez Regular Papers METIS: Resource and Context-Aware Monitoring of Finite State Properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167 Garvita Allabadi, Aritra Dhar, Ambreen Bashir, and Rahul Purandare