Algebraic laws for nondeterminism and concurrency
Journal of the ACM (JACM)
Communicating sequential processes
Communicating sequential processes
Process algebra
The design and performance of a real-time CORBA event service
Proceedings of the 12th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Matching events in a content-based subscription system
Proceedings of the eighteenth annual ACM symposium on Principles of distributed computing
Theoretical Computer Science
Semantic constructions for the specification of objects
Theoretical Computer Science
Design and evaluation of a wide-area event notification service
ACM Transactions on Computer Systems (TOCS)
Communication and Concurrency
Persistent Turing Machines as a Model of Interactive Computation
FoIKS '00 Proceedings of the First International Symposium on Foundations of Information and Knowledge Systems
Automata and Coinduction (An Exercise in Coalgebra)
CONCUR '98 Proceedings of the 9th International Conference on Concurrency Theory
A schema language for coordinating construction and composition of partial behavior descriptions
Proceedings of the 2006 international workshop on Scenarios and state machines: models, algorithms, and tools
The reaction algebra: a formal language for event correlation
Pillars of computer science
A resource-efficient event algebra
Science of Computer Programming
Expressive completeness of an event-pattern reactive programming language
FORTE'05 Proceedings of the 25th IFIP WG 6.1 international conference on Formal Techniques for Networked and Distributed Systems
Hi-index | 0.00 |
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 de.ne 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.