## Final semantics for eventpattern reactive programs (2005)

### Cached

### Download Links

Venue: | of Lecture Notes in Computer Science |

Citations: | 8 - 3 self |

### BibTeX

@INPROCEEDINGS{Sánchez05finalsemantics,

author = {César Sánchez and Henny B. Sipma and Matteo Slanina and Zohar Manna},

title = {Final semantics for eventpattern reactive programs},

booktitle = {of Lecture Notes in Computer Science},

year = {2005},

pages = {364--378},

publisher = {Springer}

}

### OpenURL

### Abstract

Abstract. Event-pattern reactive programs are front-end programs for distributed reactive components that preprocess an incoming stream of event stimuli. Their purpose is to recognize temporal patterns of events that are relevant to the serviced program and ignore all other events, outsourcing some of the component’s complexity and shielding it from event overload. Correctness of event-pattern reactive programs is essential, because bugs may result in loss of relevant events and hence failure to react appropriately. We introduce PAR, a specification language for event-pattern reactive programs. We propose a new approach for defining such languages in terms of observations and actions. This approach applies standard techniques from coalgebra to obtain instances of the corecursion and coinduction principles. Corecursion is used to formally define the operational semantics of PAR, and coinduction allows to prove general equivalences between (ground and parameterized) PAR programs. This is the first of a series of papers in which we study questions of expressive completeness, complexity, and formal verification techniques for specification languages of event-pattern reactive programs. 1

### Citations

3308 |
Communication and Concurrency
- Milner
- 1989
(Show Context)
Citation Context ...ation behavior. We intend to study languages for event-pattern reactive programming algebraically, influenced by the pioneering work on languages for the study of concurrency, mostly process algebras =-=[13, 8, 2]-=- and Hennessy-Milner logic [7]. The main difference is that we specifically design our languages to be deterministic, because we want to synthesize executable behaviors from the expressions, while eve... |

663 | Design and evaluation of a wide-area event notification service
- Carzaniga, DS, et al.
(Show Context)
Citation Context ...by ARO grant DAAD19-01-10723, and by NAVY/ONR contract N00014-03-1-0939.sevent. This is known as event filtering and is available in most popular platforms, including Gryphon [1], Ace-Tao [18], Siena =-=[3]-=-, and Elvin [19]. A more sophisticated policy is content filtering, in which the subscription contains a list of predicates on the data of the event. This approach is especially popular in active data... |

501 | Algebraic laws for non-determinism and concurrency
- Hennessy, Milner
- 1985
(Show Context)
Citation Context ...nguages for event-pattern reactive programming algebraically, influenced by the pioneering work on languages for the study of concurrency, mostly process algebras [13, 8, 2] and Hennessy-Milner logic =-=[7]-=-. The main difference is that we specifically design our languages to be deterministic, because we want to synthesize executable behaviors from the expressions, while every reasonable concurrency mode... |

381 |
Representation of Events in Nerve Nets and Finite Automata
- Kleene
- 1956
(Show Context)
Citation Context ... true: every behavior that can be described with finite memory can also be described by a PAR expression. This result [17] parallels the correspondence between regular expressions and finite automata =-=[11, 12]-=-. The syntax of PAR presented here is minimal in the sense that, by removing any one operator, expressive completeness is lost. In practice, though, it is useful to have more operators available. In [... |

234 |
Elvin has left the building: A publish/subscribe notification service with quenching
- Segall, Arnold
- 1997
(Show Context)
Citation Context ...AD19-01-10723, and by NAVY/ONR contract N00014-03-1-0939.sevent. This is known as event filtering and is available in most popular platforms, including Gryphon [1], Ace-Tao [18], Siena [3], and Elvin =-=[19]-=-. A more sophisticated policy is content filtering, in which the subscription contains a list of predicates on the data of the event. This approach is especially popular in active databases and stock ... |

232 | An introduction to (co)algebra and (co)induction
- Jacobs, Rutten
- 2011
(Show Context)
Citation Context ...l is intrinsically nondeterministic. Coalgebra is a convenient framework to study dynamic systems, and, in general, systems with hidden state spaces, where only the observable behavior is of interest =-=[10]-=-. For example, in [15] Rutten shows how equivalence of regular expressions can be analyzed in this framework. He constructs an automaton, whose states correspond to languages, that is final with respe... |

207 |
Process Algebra
- Baeten, Weijland
- 1991
(Show Context)
Citation Context ...ation behavior. We intend to study languages for event-pattern reactive programming algebraically, influenced by the pioneering work on languages for the study of concurrency, mostly process algebras =-=[13, 8, 2]-=- and Hennessy-Milner logic [7]. The main difference is that we specifically design our languages to be deterministic, because we want to synthesize executable behaviors from the expressions, while eve... |

115 | A hidden agenda
- Goguen, Malcolm
- 2000
(Show Context)
Citation Context ...es directly from the basic definitions, rather than treat them as special cases of general results about the existence of final semantics and coinduction principles (for example, from Hidden Algebras =-=[5, 14, 4]-=-). Since our expressions do not describe experiments and observations, developing all the necessary machinery to use one such general result would not significantly simplify the presentation. We intro... |

96 |
Regular expressions and state graphs for automata
- McNaughton, Yamada
- 1960
(Show Context)
Citation Context ... true: every behavior that can be described with finite memory can also be described by a PAR expression. This result [17] parallels the correspondence between regular expressions and finite automata =-=[11, 12]-=-. The syntax of PAR presented here is minimal in the sense that, by removing any one operator, expressive completeness is lost. In practice, though, it is useful to have more operators available. In [... |

87 |
Reducing avionics software cost through component based product line
- Sharp
- 1998
(Show Context)
Citation Context ...ilure to respond to critical situations. In a previous paper [16] we introduced ECL, a language to specify event correlation patterns, developed under the DARPA PCES program for the Boeing Boldstroke =-=[20]-=- platform to support mission-critical avionics applications. We gave a formal semantics in terms of correlation machines, an extension of finitestate transducers that enabled direct translation into e... |

63 | Automata and coinduction (an exercise in coalgebra
- Rutten
- 1998
(Show Context)
Citation Context ...deterministic. Coalgebra is a convenient framework to study dynamic systems, and, in general, systems with hidden state spaces, where only the observable behavior is of interest [10]. For example, in =-=[15]-=- Rutten shows how equivalence of regular expressions can be analyzed in this framework. He constructs an automaton, whose states correspond to languages, that is final with respect to all other automa... |

62 |
Communicating sequential processes, Prentice-Hall Int'l
- Hoare
- 1985
(Show Context)
Citation Context ...tion behavior. We intend to study languages for event-pattern reactive programming alge-braically, influenced by the pioneering work on languages for the study of concurrency, mostly process algebras =-=[13, 8, 2]-=- and Hennessy-Milner logic [7]. Themain difference is that we specifically design our languages to be deterministic, because we want to synthesize executable behaviors from the expressions, whileevery... |

44 |
The design and performance of a real-time CORBA object event service
- Schmidt, Levine, et al.
- 1997
(Show Context)
Citation Context ...CF-0430102, by ARO grant DAAD19-01-10723, and by NAVY/ONR contract N00014-03-1-0939.sevent. This is known as event filtering and is available in most popular platforms, including Gryphon [1], Ace-Tao =-=[18]-=-, Siena [3], and Elvin [19]. A more sophisticated policy is content filtering, in which the subscription contains a list of predicates on the data of the event. This approach is especially popular in ... |

32 | Building Customizable Middleware using Aspect Oriented
- Hunleth, Cytron, et al.
(Show Context)
Citation Context ... terms of correlation machines, an extension of finitestate transducers that enabled direct translation into event-processing code. Prototype implementations were integrated in Ace-Tao [18] and Facet =-=[9]-=-. In this paper we shift focus from implementation to analysis, in particular program equivalences. Practical applications need to determine whether a given pattern expression can be replaced by a sim... |

27 | Persistent turing machines as a model of interactive computation
- Goldin
- 2000
(Show Context)
Citation Context ...ay have been expected to study synchronous maps from inputs to outputs. Our results can be directly compared to other formalisms based on Γ2 (like Moore and Mealy machines and interactive computation =-=[6]-=-), by simply hiding the completion component. (In fact, bisimulation in Γ2 becomes output equality in Γ1, ∼ as defined in Sect. 5.) Some ongoing and future research includes: Expressiveness. It is eas... |

12 |
Tushar Deepak Chandra. Matching events in a content-based subscription system
- Aguilera, Strom, et al.
- 1999
(Show Context)
Citation Context ...411363, and CCF-0430102, by ARO grant DAAD19-01-10723, and by NAVY/ONR contract N00014-03-1-0939.sevent. This is known as event filtering and is available in most popular platforms, including Gryphon =-=[1]-=-, Ace-Tao [18], Siena [3], and Elvin [19]. A more sophisticated policy is content filtering, in which the subscription contains a list of predicates on the data of the event. This approach is especial... |

10 | Z.: Expressive completeness of an event-pattern reactive programming language
- Sánchez, Slanina, et al.
- 2005
(Show Context)
Citation Context ... a declarative specification of these patterns. PAR is a subset of ECL, which we proposed in [16], but is equally expressive. In fact, every finitely expressible event pattern can be described in PAR =-=[17]-=-. Syntax. We assume that the input event stream consists of input symbols taken from a finite set Σ. A PAR expression can describe multiple patterns to be searched in parallel in the input stream. To ... |

1 |
Semantic constructions from the specification of objects
- Cîrstea
(Show Context)
Citation Context ...es directly from the basic definitions, rather than treat them as special cases of general results about the existence of final semantics and coinduction principles (for example, from Hidden Algebras =-=[5, 14, 4]-=-). Since our expressions do not describe experiments and observations, developing all the necessary machinery to use one such general result would not significantly simplify the presentation. We intro... |

1 |
14. Grigore Ro,su. Hidden Logic
- Communication, Prentice-Hall
- 1989
(Show Context)
Citation Context ...tion behavior. We intend to study languages for event-pattern reactive programming alge-braically, influenced by the pioneering work on languages for the study of concurrency, mostly process algebras =-=[13, 8, 2]-=- and Hennessy-Milner logic [7]. Themain difference is that we specifically design our languages to be deterministic, because we want to synthesize executable behaviors from the expressions, whileevery... |

1 |
x0 = (x01 | x02) and y0 = (y01 | y02), so x0Ry0. - Negation: R = {hx, yi|x , y
- ffay
(Show Context)
Citation Context ...s directly from the basic definitions, rather than treat them as spe-cial cases of general results about the existence of final semantics and coinduction principles (for example, from Hidden Algebras =-=[5, 14, 4]-=-). Since our expressionsdo not describe experiments and observations, developing all the necessary machinery to use one such general result would not significantly simplify the pre-sentation. Our resu... |

1 |
Analogous to the previous case. αax = ι and αay = ι. Then, x ′ = (x ′ 1 | x ′ 2) and y ′ = (y ′ 1 | y ′ 2), so x
- αax1, αax2
(Show Context)
Citation Context ... and/or senders that can be syntactically matched by an attribute in the event. This is known as event filtering and is available in most popular platforms, including Gryphon [1], Ace-Tao [18], Siena =-=[3]-=-, and Elvin [19]. A more sophisticated policy is content filtering, in which the subscription contains a list of predicates on the data of the event. This approach is especially popular in activedata... |