Results 1  10
of
93
Canonical derivatives, partial derivatives and finite automaton constructions
 Theor. Comput. Sci
"... Let E be a regular expression. Our aim is to establish a theoretical relation between two wellknown automata recognizing the language of E, namely the position automaton PE constructed by Glushkov or McNaughton and Yamada, and the equation automaton EE constructed by Mirkin or Antimirov. We define ..."
Abstract

Cited by 31 (4 self)
 Add to MetaCart
(Show Context)
Let E be a regular expression. Our aim is to establish a theoretical relation between two wellknown automata recognizing the language of E, namely the position automaton PE constructed by Glushkov or McNaughton and Yamada, and the equation automaton EE constructed by Mirkin or Antimirov. We define the notion of cderivative (for canonical derivative) of a regular expression E and show that if E is linear then two Brzozowski’s derivatives of E are acisimilar if and only if the corresponding cderivatives are identical. It allows us to represent the BerrySethi’s set of continuations of a position by a unique cderivative, called the ccontinuation of the position. Hence the definition of CE, the ccontinuation automaton of E, whose states are pairs made of a position of E and of the associated ccontinuation. If states are viewed as positions, CE is isomorphic to PE. On the other hand, a partial derivative, as defined by Antimirov, is a class of cderivatives for some equivalence relation, thus CE reduces to EE. Finally CE makes it possible to go from PE to EE, while this cannot be achieved directly (from the state graphs). These theoretical results lead to an O(E  2) space and time algorithm to compute the equation automaton, where E  is the size of the expression. This is the complexity of the most efficient constructions yielding the position automaton, while the size of the equation automaton is not greater and generally much smaller than the size of the position automaton.
Generating optimal monitors for extended regular expressions
 In Proc. of the 3rd Workshop on Runtime Verification (RV’03), volume 89 of ENTCS
, 2003
"... Ordinary software engineers and programmers can easily understand regular patterns, as shown by the immense interest in and the success of scripting languages like Perl, based essentially on regular expression pattern matching. We believe that regular expressions provide an elegant and powerful spec ..."
Abstract

Cited by 25 (7 self)
 Add to MetaCart
(Show Context)
Ordinary software engineers and programmers can easily understand regular patterns, as shown by the immense interest in and the success of scripting languages like Perl, based essentially on regular expression pattern matching. We believe that regular expressions provide an elegant and powerful specification language also for monitoring requirements, because an execution trace of a program is in fact a string of states. Extended regular expressions (EREs) add complementation to regular expressions, which brings additional benefits by allowing one to specify patterns that must not occur during an execution. Complementation gives one the power to express patterns on strings more compactly. In this paper we present a technique to generate optimal monitors from EREs. Our monitors are deterministic finite automata (DFA) and our novel contribution is to generate them using a modern coalgebraic technique called coinduction. Based on experiments with our implementation, which can be publicly tested and used over the web, we believe that our technique is more efficient than the simplistic method based on complementation of automata which can quickly lead to a highlyexponential state explosion.
Algebraic specification and coalgebraic synthesis of Mealy machines
 In: Proceedings of FACS 2005. ENTCS
, 2006
"... We introduce the notion of functional stream derivative, generalising the notion of input derivative of rational expressions (Brzozowski 1964) to the case of stream functions over arbitrary input and output alphabets. We show how to construct Mealy automata from algebraically specified stream functi ..."
Abstract

Cited by 22 (11 self)
 Add to MetaCart
(Show Context)
We introduce the notion of functional stream derivative, generalising the notion of input derivative of rational expressions (Brzozowski 1964) to the case of stream functions over arbitrary input and output alphabets. We show how to construct Mealy automata from algebraically specified stream functions by the symbolic computation of functional stream derivatives. We illustrate this construction in full detail for various bitstream functions specified in the algebraic calculus of the 2adic numbers. This work is part of a larger ongoing effort to specify and model component connector circuits in terms of (functions and relations on) streams.
Recognizing Regular Expressions by means of Dataflow Networks
 In proc. of the 23rd International Colloquium on Automata, Languages, and Programming, (ICALP'96
, 1996
"... . This paper addresses the problem of building a Boolean dataflow network (sequential circuit) recognizing the language described by a regular expression. The main result is that both the construction time and the size of the resulting network are linear with respect to the size of the regular expre ..."
Abstract

Cited by 18 (3 self)
 Add to MetaCart
(Show Context)
. This paper addresses the problem of building a Boolean dataflow network (sequential circuit) recognizing the language described by a regular expression. The main result is that both the construction time and the size of the resulting network are linear with respect to the size of the regular expression. Introduction "Grep" machine: Let \Sigma be a vocabulary, L be a regular language on \Sigma . A "grep" machine is a machine receiving a sequence s 0 ; s 1 ; : : : ; s n ; : : : of symbols (s i 2 \Sigma ) and computing a sequence b 0 ; b 1 ; : : : ; b n ; : : : of Booleans, such that b n is true if and only if the word s 0 s 1 : : : s n belongs to L 2 . This paper addresses the problem of building a "grep" machine for languages described by regular expressions. This problem is rather classical [4, 11, 10, 3, 1, 2]. We propose a solution which, to our knowledge, is new: Informally, it consists of building, from a regular expression E, a "circuit" (or Boolean dataflow network) explori...
Testing extended regular language membership incrementally by rewriting
 In Rewriting Techniques and Applications (RTA’03), Lecture Notes in Computer Science
, 2003
"... Abstract. In this paper we present lower bounds and rewriting algorithms for testing membership of a word in a regular language described by an extended regular expression. Motivated by intuitions from monitoring and testing, where the words to be tested (execution traces) are typically much longer ..."
Abstract

Cited by 12 (1 self)
 Add to MetaCart
(Show Context)
Abstract. In this paper we present lower bounds and rewriting algorithms for testing membership of a word in a regular language described by an extended regular expression. Motivated by intuitions from monitoring and testing, where the words to be tested (execution traces) are typically much longer than the size of the regular expressions (patterns or requirements), and by the fact that in many applications the traces are only available incrementally, on an event by event basis, our algorithms are based on an eventconsumption idea: a just arrived event is “consumed ” by the regular expression, i.e., the regular expression modifies itself into another expression discarding the event. We present an exponential space lower bound for monitoring extended regular expressions and argue that the presented rewritingbased algorithms, besides their simplicity and elegance, are practical and almost as good as one can hope. We experimented with and evaluated our algorithms in Maude. 1
A unified construction of the Glushkov, follow and Antimirov automata
 Lecture Notes in Computer Science 4162 (2006
"... Abstract. Many techniques have been introduced in the last few decades to create free automata representing regular expressions: Glushkov automata, the socalled follow automata, and Antimirov automata. This paper presents a simple and unified view of all these free automata both in the case of u ..."
Abstract

Cited by 12 (0 self)
 Add to MetaCart
(Show Context)
Abstract. Many techniques have been introduced in the last few decades to create free automata representing regular expressions: Glushkov automata, the socalled follow automata, and Antimirov automata. This paper presents a simple and unified view of all these free automata both in the case of unweighted and weighted regular expressions. It describes simple and general algorithms with running time complexities at least as good as that of the best previously known techniques, and provides concise proofs. The construction methods are all based on two standard automata algorithms: epsilonremoval and minimization. This contrasts with the multitude of complicated and specialpurpose techniques and proofs put forward by others to construct these automata. Our analysis provides a better understanding of free automata representing regular expressions: they are all the results of the application of some combinations of epsilonremoval and minimization to the classical Thompson automata. This makes it straightforward to generalize these algorithms to the weighted case, which also results in much simpler algorithms than existing ones. For weighted regular expressions over a closed semiring, we extend the notion of follow automata to the weighted case. We also present the first algorithm to compute the Antimirov automata in the weighted case. 1
Rational and recognisable power series
 DRAFT OF A CHAPTER FOR THE HANDBOOK OF WEIGHTED AUTOMATA
"... ..."
Synthesis of mealy machines using derivatives
 In: Proceedings of CMCS 2006. ENTCS
, 2006
"... In Rutten [13] the theoretical basis was given for the synthesis of binary Mealy machines from specifications in 2adic arithmetic. This construction is based on the symbolic computation of the coalgebraic notion of stream function derivative, a generalisation of the Brzozowski derivative of regular ..."
Abstract

Cited by 11 (5 self)
 Add to MetaCart
(Show Context)
In Rutten [13] the theoretical basis was given for the synthesis of binary Mealy machines from specifications in 2adic arithmetic. This construction is based on the symbolic computation of the coalgebraic notion of stream function derivative, a generalisation of the Brzozowski derivative of regular expressions. In this paper we complete the construction of Mealy machines from specifications in both 2adic and modulo2 arithmetic by describing how we decide equivalence of expressions via reduction to normal forms; we present a Haskell implementation of this Mealy synthesis algorithm; and a theoretical result which characterises the (number of) states in Mealy machines constructed from rational 2adic specifications.
The reactive engine for modular transducers
 Algebra, Meaning and Computation, Essays Dedicated to Joseph A. Goguen on the Occasion of His 65th Birthday
, 2005
"... Abstract. This paper explains the design of the second release of the Zen toolkit [5–7]. It presents a notion of reactive engine which simulates finitestate machines represented as shared aums [8]. We show that it yields a modular interpreter for finite state machines described as local transducers ..."
Abstract

Cited by 10 (9 self)
 Add to MetaCart
(Show Context)
Abstract. This paper explains the design of the second release of the Zen toolkit [5–7]. It presents a notion of reactive engine which simulates finitestate machines represented as shared aums [8]. We show that it yields a modular interpreter for finite state machines described as local transducers. For instance, in the manner of Berry and Sethi, we define a compiler of regular expressions into a scheduler for the reactive engine, chaining through aums labeled with phases — associated with the letters of the regular expression. This gives a modular composition scheme for general finitestate machines. Many variations of this basic idea may be put to use according to circonstances. The simplest one is when aums are reduced to dictionaries, i.e. to (minimalized) acyclic deterministic automata recognizing finite languages. Then one may proceed to adding supplementary structure to the aum algebra, namely nondeterminism, loops, and transduction. Such additional choice points require fitting some additional control to the reactive engine. Further parameters are required for some functionalities. For instance, the local word access stack is handy as an argument to the output routine in the case of transducers. Internal virtual addresses demand the full local state access stack for their interpretation. A characteristic example is provided, it gives a complete analyser for compound substantives. It is an abstraction from a modular version of the Sanskrit segmenter presented in [9]. This improved segmenter uses a regular relation condition relating the phases of morphology generation, and enforcing the correct geometry of morphemes. Thus we obtain compound nouns from iic*.(noun+iic.ifc), where iic and ifc are the respectively prefix and suffix substantival forms for compound formation. 1 Regular morphology Dedicated to Joseph Goguen for his 65th birthday We first consider the simplest framework for finite automata, where the state transition graph is a dictionary structure (lexical tree or trie). Such structures represent acyclic deterministic finitestate automata, with maximal sharing of initial paths. Every state is accessible from the initial state, and we may also assume that every state is on an accepting path. When we minimize the tree as a dag, we obtain the corresponding minimal deterministic automaton. Such
Subset construction complexity for homogeneous automata, position automata and ZPCstructures
 Theoretical Computer Science
, 2001
"... The aim of this paper is to investigate how subset construction performs on specific families of automata. A new upper bound on the number of states of the subsetautomaton is established in the case of homogeneous automata. The complexity of the two basic steps of subset construction, i.e. the comp ..."
Abstract

Cited by 7 (2 self)
 Add to MetaCart
(Show Context)
The aim of this paper is to investigate how subset construction performs on specific families of automata. A new upper bound on the number of states of the subsetautomaton is established in the case of homogeneous automata. The complexity of the two basic steps of subset construction, i.e. the computation of deterministic transitions and the set equality tests, is examined depending on whether the nondeterministic automaton is an unrestricted one, an homogeneous one, a position one or a ZPCstructure, which is an implicit construction for a position automaton.