  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.
