Symbolic Automata with Memory: a Computational Model for Complex Event Processing

We propose an automaton model which is a combination of symbolic and register automata, i.e., we enrich symbolic automata with memory. We call such automata Register Match Automata (RMA). RMA extend the expressive power of symbolic automata, by allowing formulas to be applied not only to the last element read from the input string, but to multiple elements, stored in their registers. RMA also extend register automata, by allowing arbitrary formulas, besides equality predicates. We study the closure properties of RMA under union, concatenation, Kleene+, complement and determinization and show that RMA, contrary to symbolic automata, are not determinizable when viewed as recognizers, without taking the output of transitions into account. However, when a window operator, a quintessential feature in Complex Event Processing, is used, RMA are indeed determinizable even when viewed as recognizers. We present detailed algorithms for constructing deterministic RMA from regular expressions extended with $n$-ary constraints. We show how RMA can be used in Complex Event Processing in order to detect patterns upon streams of events, using a framework that provides denotational and compositional semantics, and that allows for a systematic treatment of such automata.

[1]  Hans-Arno Jacobsen,et al.  Predictive publish/subscribe matching , 2010, DEBS '10.

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

[3]  Thomas Schwentick,et al.  Two-variable logic on data words , 2011, TOCL.

[4]  G. Nuel Pattern Markov chains: optimal Markov chain embedding through deterministic finite automata , 2008 .

[5]  Matthias Weidlich,et al.  Complex Event Recognition Languages: Tutorial , 2017, DEBS.

[6]  Gertjan van Noord,et al.  Finite State Transducers with Predicates and Identities , 2001, Grammars.

[7]  Martín Ugarte,et al.  Foundations of Complex Event Processing , 2017, ArXiv.

[8]  Alessandro Margara,et al.  Processing flows of information: From data stream to complex event processing , 2012, CSUR.

[9]  Merrie Bergmann,et al.  An Introduction to Many-Valued and Fuzzy Logic: Semantics, Algebras, and Derivation Systems , 2008 .

[10]  David Luckham,et al.  The power of events - an introduction to complex event processing in distributed enterprise systems , 2002, RuleML.

[11]  Malik Ghallab,et al.  On Chronicles: Representation, On-line Recognition and Learning , 1996, KR.

[12]  Samuel Madden,et al.  ZStream: a cost-based query processor for adaptively detecting composite events , 2009, SIGMOD Conference.

[13]  Christophe Dousson,et al.  Chronicle Recognition Improvement Using Temporal Focusing and Hierarchization , 2007, IJCAI.

[14]  Alexander Artikis,et al.  Event Forecasting with Pattern Markov Chains , 2017, DEBS.

[15]  Neil Immerman,et al.  On complexity and optimization of expensive queries in complex event processing , 2014, SIGMOD Conference.

[16]  Luc Segoufin Automata and Logics for Words and Trees over an Infinite Alphabet , 2006, CSL.

[17]  Mehryar Mohri Weighted Finite-State Transducer Algorithms. An Overview , 2004 .

[18]  Neil Immerman,et al.  Efficient pattern matching over event streams , 2008, SIGMOD Conference.

[19]  Loris D'Antoni,et al.  The Power of Symbolic Automata and Transducers , 2017, CAV.

[20]  Alessandro Margara,et al.  TESLA: a formally defined event specification language , 2010, DEBS '10.

[21]  Slawomir Lasota,et al.  Automata with Group Actions , 2011, 2011 IEEE 26th Annual Symposium on Logic in Computer Science.

[22]  Nikolaj Bjørner,et al.  Symbolic Automata Constraint Solving , 2010, LPAR.

[23]  Leonid Libkin,et al.  Regular expressions for data words , 2012, J. Comput. Syst. Sci..

[24]  Margus Veanes,et al.  Rex: Symbolic Regular Expression Explorer , 2010, 2010 Third International Conference on Software Testing, Verification and Validation.

[25]  Johannes Gehrke,et al.  Cayuga: A General Purpose Event Monitoring System , 2007, CIDR.

[26]  Alexander Artikis,et al.  An Event Calculus for Event Recognition , 2015, IEEE Transactions on Knowledge and Data Engineering.

[27]  Thomas Schwentick,et al.  Finite state machines for strings over infinite alphabets , 2004, TOCL.

[28]  Sylvain Hallé,et al.  From Complex Event Processing to Simple Event Processing , 2017, ArXiv.