From LTL to rLTL monitoring: improved monitorability through robust semantics

Runtime monitoring is commonly used to detect the violation of desired properties in safety critical cyber-physical systems by observing its executions. Bauer et al. introduced an influential framework for monitoring Linear Temporal Logic (LTL) properties based on a three-valued semantics: the formula is already satisfied by the given prefix, it is already violated, or it is still undetermined, i.e., it can still be satisfied and violated by appropriate extensions. However, a wide range of formulas are not monitorable under this approach, meaning that they have a prefix for which satisfaction and violation will always remain undetermined no matter how it is extended. In particular, Bauer et al. report that 44% of the formulas they consider in their experiments fall into this category. Recently, a robust semantics for LTL was introduced to capture different degrees by wich a property can be violated. In this paper we introduce a robust semantics for finite strings and show its potential in monitoring: every formula considered by Bauer et al. is monitorable under our approach. Furthermore, we discuss which properties that come naturally in LTL monitoring --- such as the realizability of all truth values --- can be transferred to the robust setting. Lastly, we show that LTL formulas with robust semantics can be monitored by deterministic automata and report on a prototype implementation.

[1]  Howard Barringer,et al.  Rule Systems for Run-time Monitoring: from Eagle to RuleR , 2010, J. Log. Comput..

[2]  Jan Kretínský,et al.  Owl: A Library for ω-Words, Automata, and LTL , 2018, ATVA.

[3]  Martin Roesch,et al.  Snort - Lightweight Intrusion Detection for Networks , 1999 .

[4]  Paulo Tabuada,et al.  Evrostos: the rLTL verifier , 2019, HSCC.

[5]  Thomas Ferrère,et al.  Efficient Robust Monitoring for STL , 2013, CAV.

[6]  Ezio Bartocci,et al.  Signal Convolution Logic , 2018, ATVA.

[7]  Ezio Bartocci,et al.  Quantitative Regular Expressions for Arrhythmia Detection Algorithms , 2016, CMSB.

[8]  Dana Fisman,et al.  Reasoning with Temporal Logic on Truncated Paths , 2003, CAV.

[9]  Dejan Nickovic,et al.  Monitoring Temporal Properties of Continuous Signals , 2004, FORMATS/FTRTFT.

[10]  Bernd Finkbeiner,et al.  The Density of Linear-Time Properties , 2017, ATVA.

[11]  Doron Drusinsky,et al.  The Temporal Rover and the ATG Rover , 2000, SPIN.

[12]  Houssam Abbas,et al.  Temporal logic robustness for general signal classes , 2019, HSCC.

[13]  Bernd Finkbeiner,et al.  A Stream-Based Specification Language for Network Monitoring , 2016, RV.

[14]  Dejan Nickovic,et al.  Quantitative monitoring of STL with edit distance , 2016, Formal Methods in System Design.

[15]  Grigore Rosu,et al.  An Overview of the Runtime Verification Tool Java PathExplorer , 2004, Formal Methods Syst. Des..

[16]  Bernhard Steffen,et al.  The Open-Source LearnLib - A Framework for Active Automata Learning , 2015, CAV.

[17]  Martin Zimmermann,et al.  The complexity of counting models of linear-time temporal logic , 2016, Acta Informatica.

[18]  Srdjan Marinovic,et al.  Monitoring of temporal first-order properties with aggregations , 2013, Formal Methods Syst. Des..

[19]  Bernd Finkbeiner,et al.  Real-time Stream-based Monitoring , 2017, ArXiv.

[20]  George S. Avrunin,et al.  Patterns in property specifications for finite-state verification , 1999, Proceedings of the 1999 International Conference on Software Engineering (IEEE Cat. No.99CB37002).

[21]  Johann Schumann,et al.  R2U2: monitoring and diagnosis of security threats for unmanned aerial systems , 2017, Formal Methods in System Design.

[22]  Martin Leucker,et al.  Monitoring modulo theories , 2016, International Journal on Software Tools for Technology Transfer.

[23]  Dejan Nickovic,et al.  Temporal Logic as Filtering , 2016, HSCC.

[24]  Martin Leucker,et al.  Impartiality and Anticipation for Monitoring of Visibly Context-Free Properties , 2013, RV.

[25]  Howard Barringer,et al.  Quantified Event Automata: Towards Expressive and Efficient Runtime Monitors , 2012, FM.

[26]  Xian Zhang,et al.  Runtime Verification with Predictive Semantics , 2012, NASA Formal Methods.

[27]  Paulo Tabuada,et al.  Robust Linear Temporal Logic , 2015, CSL.

[28]  Nicolas Halbwachs,et al.  LUSTRE: A declarative language for programming synchronous systems* , 1987 .

[29]  Bernd Finkbeiner,et al.  Stream Runtime Monitoring on UAS , 2017, RV.

[30]  Dejan Nickovic,et al.  Checking Temporal Properties of Discrete, Timed and Continuous Behaviors , 2008, Pillars of Computer Science.

[31]  Grigore Rosu,et al.  Synthesizing Monitors for Safety Properties , 2002, TACAS.

[32]  Alwyn E. Goodloe,et al.  Copilot: A Hard Real-Time Runtime Monitor , 2010, RV.

[33]  Amir Pnueli,et al.  PSL Model Checking and Run-Time Verification Via Testers , 2006, FM.

[34]  Zohar Manna,et al.  Temporal verification of reactive systems - safety , 1995 .

[35]  Koushik Sen,et al.  Rule-Based Runtime Verification , 2004, VMCAI.

[36]  Bernd Finkbeiner,et al.  Collecting Statistics Over Runtime Executions , 2005, Formal Methods Syst. Des..

[37]  Jan Kretínský,et al.  LTL Store: Repository of LTL formulae from literature and case studies , 2018, ArXiv.

[38]  Dejan Nickovic,et al.  A Counting Semantics for Monitoring LTL Specifications over Finite Traces , 2018, CAV.

[39]  Bernd Finkbeiner,et al.  StreamLAB: Stream-based Monitoring of Cyber-Physical Systems , 2019, CAV.

[40]  Orna Kupferman,et al.  Model Checking of Safety Properties , 1999, Formal Methods Syst. Des..

[41]  Paul Gastin,et al.  Fast LTL to Büchi Automata Translation , 2001, CAV.

[42]  Paulo Tabuada,et al.  Verifying rLTL formulas: now faster than ever before! , 2018, 2018 IEEE Conference on Decision and Control (CDC).

[43]  Ichiro Hasuo,et al.  Time Robustness in MTL and Expressivity in Hybrid System Falsification , 2015, CAV.

[44]  Felix Klaedtke,et al.  MONPOLY: Monitoring Usage-Control Policies , 2011, RV.

[45]  Javier Esparza,et al.  A Note on On-the-Fly Verification Algorithms , 2005, TACAS.

[46]  Mahesh Viswanathan,et al.  Runtime Assurance Based On Formal Specifications , 1999, PDPTA.

[47]  Rajeev Alur,et al.  Regular Programming for Quantitative Properties of Data Streams , 2016, ESOP.

[48]  Bernd Finkbeiner,et al.  LOLA: runtime monitoring of synchronous systems , 2005, 12th International Symposium on Temporal Representation and Reasoning (TIME'05).

[49]  Nicolas Halbwachs,et al.  LUSTRE: a declarative language for real-time programming , 1987, POPL '87.

[50]  Amir Pnueli,et al.  Timing analysis of asynchronous circuits using timed automata , 1995, CHARME.

[51]  Martin Leucker,et al.  Comparing LTL Semantics for Runtime Verification , 2010, J. Log. Comput..

[52]  Sebastian Fischmeister,et al.  Accelerated Runtime Verification of LTL Specifications with Counting Semantics , 2016, RV.

[53]  Arthur J. Bernstein,et al.  Proving real-time properties of programs with temporal logic , 1981, SOSP.

[54]  Martin Leucker,et al.  Runtime Verification for LTL and TLTL , 2011, TSEM.

[55]  Sylvain Hallé When RV Meets CEP , 2016, RV.

[56]  Martin Leucker,et al.  The Good, the Bad, and the Ugly, But How Ugly Is Ugly? , 2007, RV.

[57]  George J. Pappas,et al.  Robustness of temporal logic specifications for continuous-time signals , 2009, Theor. Comput. Sci..

[58]  Christel Baier,et al.  Principles of model checking , 2008 .

[59]  Dogan Ulus,et al.  First-order temporal logic monitoring with BDDs , 2017, Formal Methods in System Design.