The earlier the better: a theory of timed actor interfaces

Programming embedded and cyber-physical systems requires attention not only to functional behavior and correctness, but also to non-functional aspects and specifically timing and performance. A structured, compositional, model-based approach based on stepwise refinement and abstraction techniques can support the development process, increase its quality and reduce development time through automation of synthesis, analysis or verification. Toward this, we introduce a theory of timed actors whose notion of refinement is based on the principle of worst-case design that permeates the world of performance-critical systems. This is in contrast with the classical behavioral and functional refinements based on restricting sets of behaviors. Our refinement allows time-deterministic abstractions to be made of time-non-deterministic systems, improving efficiency and reducing complexity of formal analysis. We show how our theory relates to, and can be used to reconcile existing time and performance models and their established theories.

[1]  Thomas A. Henzinger,et al.  An Interface Algebra for Real-Time Components , 2006, 12th IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS'06).

[2]  Nancy A. Lynch,et al.  Probabilistic Simulations for Probabilistic Processes , 1994, Nord. J. Comput..

[3]  Sander Stuijk,et al.  Latency Minimization for Synchronous Data Flow Graphs , 2007 .

[4]  Wang Yi,et al.  Testing preorders for probabilistic processes can be characterized by simulations , 2002, Theor. Comput. Sci..

[5]  Brian A. Davey,et al.  An Introduction to Lattices and Order , 1989 .

[6]  Edward A. Lee,et al.  Classes and inheritance in actor-oriented design , 2009, TECS.

[7]  Edward A. Lee,et al.  A Theory of Synchronous Relational Interfaces , 2011, TOPL.

[8]  Giorgio Buttazzo,et al.  Hard Real-Time Computing Systems: Predictable Scheduling Algorithms and Applications , 1997 .

[9]  Jack B. Dennis,et al.  First version of a data flow procedure language , 1974, Symposium on Programming.

[10]  Gilles Kahn,et al.  The Semantics of a Simple Language for Parallel Programming , 1974, IFIP Congress.

[11]  Ralph-Johan Back,et al.  Refinement Calculus , 1998, Graduate Texts in Computer Science.

[12]  Edward A. Lee,et al.  Compositionality in Synchronous Data Flow: modular code generation from hierarchical SDF graphs , 2010 .

[13]  Gerard J. M. Smit,et al.  Efficient Computation of Buffer Capacities for Cyclo-Static Real-Time Systems with Back-Pressure , 2006, 13th IEEE Real Time and Embedded Technology and Applications Symposium (RTAS'07).

[14]  Richard M. Karp,et al.  A characterization of the minimum cycle mean in a digraph , 1978, Discret. Math..

[15]  Thomas A. Henzinger,et al.  Interface Theories for Component-Based Design , 2001, EMSOFT.

[16]  Jean Berstel,et al.  Transductions and context-free languages , 1979, Teubner Studienbücher : Informatik.

[17]  Sander Stuijk,et al.  Throughput-Buffering Trade-Off Exploration for Cyclo-Static and Synchronous Dataflow Graphs , 2008, IEEE Transactions on Computers.

[18]  Rajeev Alur,et al.  Automata Based Interfaces for Control and Scheduling , 2007, HSCC.

[19]  Jean-Yves Le Boudec,et al.  Network Calculus: A Theory of Deterministic Queuing Systems for the Internet , 2001 .

[20]  Robert K. Brayton,et al.  Verifying Abstractions of Timed Systems , 1996, CONCUR.

[21]  Gul A. Agha,et al.  Concurrent object-oriented programming , 1993, CACM.

[22]  Stephan Merz,et al.  Model Checking , 2000 .

[23]  Rupak Majumdar,et al.  Game Refinement Relations and Metrics , 2008, Log. Methods Comput. Sci..

[24]  Benjamin C. Pierce,et al.  Types and programming languages: the next generation , 2003, 18th Annual IEEE Symposium of Logic in Computer Science, 2003. Proceedings..

[25]  Rajeev Alur,et al.  A Theory of Timed Automata , 1994, Theor. Comput. Sci..

[26]  Wojciech Zielonka,et al.  The Book of Traces , 1995 .

[27]  Stavros Tripakis,et al.  Conformance testing for real-time systems , 2009, Formal Methods Syst. Des..

[28]  Shuvra S. Bhattacharyya,et al.  Embedded Multiprocessors: Scheduling and Synchronization , 2000 .

[29]  Marta Z. Kwiatkowska,et al.  A refinement-based process algebra for timed automata , 2005, Formal Aspects of Computing.

[30]  Kim G. Larsen,et al.  Timed I/O automata: a complete specification theory for real-time systems , 2010, HSCC '10.

[31]  Lothar Thiele,et al.  Real-time interfaces for composing real-time systems , 2006, EMSOFT '06.

[32]  Joseph Sifakis,et al.  Use of Petri nets for performance evaluation , 1977, Acta Cybern..

[33]  Gerard J. M. Smit,et al.  Efficient computation of buffer capacities for multi-rate real-time systems with back-pressure , 2006, Proceedings of the 4th International Conference on Hardware/Software Codesign and System Synthesis (CODES+ISSS '06).

[34]  Jean A. Peperstraete,et al.  Cycle-static dataflow , 1996, IEEE Trans. Signal Process..

[35]  Orlando Moreira,et al.  Self-Timed Scheduling Analysis for Real-Time Applications , 2007, EURASIP J. Adv. Signal Process..

[36]  Flemming Nielson,et al.  Principles of Program Analysis , 1999, Springer Berlin Heidelberg.

[37]  Joost-Pieter Katoen,et al.  Process algebra for performance evaluation , 2002, Theor. Comput. Sci..

[38]  Kees G. W. Goossens,et al.  Enabling application-level performance guarantees in network-based systems on chip by applying dataflow analysis , 2009, IET Comput. Digit. Tech..

[39]  E.A. Lee,et al.  Synchronous data flow , 1987, Proceedings of the IEEE.

[40]  C. Leake Synchronization and Linearity: An Algebra for Discrete Event Systems , 1994 .

[41]  Thomas A. Henzinger,et al.  Alternating Refinement Relations , 1998, CONCUR.

[42]  Geert Jan Olsder,et al.  Synchronization and Linearity: An Algebra for Discrete Event Systems , 1994 .

[43]  Thomas A. Henzinger,et al.  Interface automata , 2001, ESEC/FSE-9.

[44]  Lothar Thiele,et al.  Real-time calculus for scheduling hard real-time systems , 2000, 2000 IEEE International Symposium on Circuits and Systems. Emerging Technologies for the 21st Century. Proceedings (IEEE Cat No.00CH36353).

[45]  Gerard J. M. Smit,et al.  Monotonicity and run-time scheduling , 2009, EMSOFT '09.

[46]  Edward A. Lee,et al.  A framework for comparing models of computation , 1998, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[47]  Alberto L. Sangiovanni-Vincentelli,et al.  Implementing Synchronous Models on Loosely Time Triggered Architectures , 2008, IEEE Transactions on Computers.

[48]  Thomas A. Henzinger,et al.  Timed Interfaces , 2002, EMSOFT.