The program dependence graph and its use in optimization
ACM Transactions on Programming Languages and Systems (TOPLAS)
Interprocedural slicing using dependence graphs
PLDI '88 Proceedings of the ACM SIGPLAN 1988 conference on Programming Language design and Implementation
Concurrent object-oriented programming
Communications of the ACM
The ESTEREL synchronous programming language: design, semantics, implementation
Science of Computer Programming
The formal semantics of programming languages: an introduction
The formal semantics of programming languages: an introduction
An extensional treatment of lazy data flow deadlock
Selected papers of the workshop on Topology and completion in semantics
Interaction categories and the foundations of typed concurrent programming
Proceedings of the NATO Advanced Study Institute on Deductive program design
Formal Methods in System Design - Special issue on The First Federated Logic Conference (FLOC'96), part II
VHDL design representation and synthesis (2nd ed.)
VHDL design representation and synthesis (2nd ed.)
YAPI: application modeling for signal processing systems
Proceedings of the 37th Annual Design Automation Conference
The algebra of stream processing functions
Theoretical Computer Science
Introduction to Physical Modeling with Modelica
Introduction to Physical Modeling with Modelica
Modeling concurrent real-time processes using discrete events
Annals of Software Engineering
Networks of Real-Time Processes
CONCUR '93 Proceedings of the 4th International Conference on Concurrency Theory
Interface Theories for Component-Based Design
EMSOFT '01 Proceedings of the First International Workshop on Embedded Software
Compositional Modeling in Metropolis
EMSOFT '02 Proceedings of the Second International Conference on Embedded Software
StreamIt: A Language for Streaming Applications
CC '02 Proceedings of the 11th International Conference on Compiler Construction
The program dependence graph in a software development environment
SDE 1 Proceedings of the first ACM SIGSOFT/SIGPLAN software engineering symposium on Practical software development environments
The semantics and execution of a synchronous block-diagram language
Science of Computer Programming
Scheduling dynamic dataflow graphs with bounded memory using the token flow model
Scheduling dynamic dataflow graphs with bounded memory using the token flow model
An extensible type system for component-based design
An extensible type system for component-based design
Reo: a channel-based coordination model for component composition
Mathematical Structures in Computer Science
A behavioral type system and its application in Ptolemy II
Formal Aspects of Computing
Causality analysis of synchronous programs with delayed actions
Proceedings of the 2004 international conference on Compilers, architecture, and synthesis for embedded systems
A coinductive calculus of streams
Mathematical Structures in Computer Science
Abstract behavior types: a foundation model for components and their composition
Science of Computer Programming - Formal methods for components and objects pragmatic aspects and applications
Composition for component-based modeling
Science of Computer Programming - Formal methods for components and objects pragmatic aspects and applications
An implementation framework for software architectures based on the coordination paradigm
Science of Computer Programming
Semantic foundation of the tagged signal model
Semantic foundation of the tagged signal model
Operational semantics of hybrid systems
HSCC'05 Proceedings of the 8th international conference on Hybrid Systems: computation and control
A framework for comparing models of computation
IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems
Hierarchical finite state machines with multiple concurrency models
IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems
System-level design: orthogonalization of concerns and platform-based design
IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems
EMSOFT '09 Proceedings of the seventh ACM international conference on Embedded software
Modeling synchronous systems in BIP
EMSOFT '09 Proceedings of the seventh ACM international conference on Embedded software
Feasibility of semiring-based timing constraints
ACM Transactions on Embedded Computing Systems (TECS)
Models of reactive systems: communication, concurrency, and causality
MBEERTS'07 Proceedings of the 2007 International Dagstuhl conference on Model-based engineering of embedded real-time systems
A Theory of Synchronous Relational Interfaces
ACM Transactions on Programming Languages and Systems (TOPLAS)
Towards incremental cycle analysis in ESMoL distributed control system models
SC'11 Proceedings of the 10th international conference on Software composition
On the pragmatics of model-based design
Monterey'08 Proceedings of the 15th Monterey conference on Foundations of Computer Software: future Trends and Techniques for Development
A model reduction approach for improving discrete event simulation performance
Proceedings of the 6th International ICST Conference on Simulation Tools and Techniques
Hi-index | 0.00 |
We consider concurrent models of computation where “actors” (components that are in charge of their own actions) communicate by exchanging messages. The interfaces of actors principally consist of “ports,” which mediate the exchange of messages. Actor-oriented architectures contrast with and complement object-oriented models by emphasizing the exchange of data between concurrent components rather than transformation of state. Examples of such models of computation include the classical actor model, synchronous languages, data-flow models, process networks, and discrete-event models. Many experimental and production languages used to design embedded systems are actor oriented and based on one of these models of computation. Many of these models of computation benefit considerably from having access to causality information about the components. This paper augments the interfaces of such components to include such causality information. It shows how this causality information can be algebraically composed so that compositions of components acquire causality interfaces that are inferred from their components and the interconnections. We illustrate the use of these causality interfaces to statically analyze timed models and synchronous language compositions for causality loops and data-flow models for deadlock. We also show that that causality analysis for each communication cycle can be performed independently and in parallel, and it is only necessary to analyze one port for each cycle. Finally, we give a conservative approximation technique for handling dynamically changing causality properties.