An Algebra of Synchronous Scheduling Interfaces

In this paper we propose an algebra of synchronous scheduling interfaces which combines the expressiveness of Boolean algebra for logical and functional behaviour with the min-max-plus arithmetic for quantifying the non-functional aspects of synchronous interfaces. The interface theory arises from a realisability interpretation of intuitionistic modal logic (also known as Curry-Howard-Isomorphism or propositions-as-types principle). The resulting algebra of interface types aims to provide a general setting for specifying type-directed and compositional analyses of worst-case scheduling bounds. It covers synchronous control flow under concurrent, multi-processing or multi-threading execution and permits precise statements about exactness and coverage of the analyses supporting a variety of abstractions. The paper illustrates the expressiveness of the algebra by way of some examples taken from network flow problems, shortest-path, task scheduling and worst-case reaction times in synchronous programming.

[1]  Michael Mendler Characterising Combinational Timing Analyses in Intuitionistic Modal Logic , 2000, Log. J. IGPL.

[2]  Marian Boldt,et al.  Worst Case Reaction Time Analysis of Concurrent Reactive Programs , 2008, Electron. Notes Theor. Comput. Sci..

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

[4]  Edward A. Lee,et al.  A behavioral type system and its application in Ptolemy II , 2004, Formal Aspects of Computing.

[5]  Laurent Pautet,et al.  Cronos: A Separate Compilation Toolset for Modular Esterel Applications , 1999, World Congress on Formal Methods.

[6]  Edward A. Lee,et al.  Causality Interfaces and Compositional Causality Analysis 1 , 2005 .

[7]  Edward A. Lee,et al.  System-Level Types for Component-Based Design , 2001, EMSOFT.

[8]  Klaus Schneider,et al.  Proving the Equivalence of Microstep and Macrostep Semantics , 2002, TPHOLs.

[9]  Gérard Berry,et al.  The Esterel Synchronous Programming Language: Design, Semantics, Implementation , 1992, Sci. Comput. Program..

[10]  Nicolas Halbwachs,et al.  A synchronous language at work: the story of Lustre , 2005, Proceedings. Second ACM and IEEE International Conference on Formal Methods and Models for Co-Design, 2005. MEMOCODE '05..

[11]  Lothar Thiele,et al.  Real-time interfaces for interface-based design of real-time systems with fixed priority scheduling , 2005, EMSOFT.

[12]  Frédéric Boulanger,et al.  Objects and synchronous programming , 1997 .

[13]  Xin Li,et al.  Mapping esterel onto a multi-threaded embedded processor , 2006, ASPLOS XII.

[14]  Amir Pnueli,et al.  On the Formal Semantics of Statecharts (Extended Abstract) , 1987, LICS.

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

[16]  Michael Mendler,et al.  The NASA STI Program Office provides , 2000 .

[17]  Amir Pnueli,et al.  What is in a Step: On the Semantics of Statecharts , 1991, TACS.

[18]  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).

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

[20]  Cornelis Huizing,et al.  Semantics of reactive systems : comparison and full abstraction , 1991 .

[21]  N. Halbwachs,et al.  Synchronous programming of reactive systems: A tutorial and commented bibliography , 1998, CAV 1998.

[22]  Xin Li,et al.  Multithreaded Reactive Programming—the Kiel Esterel Processor , 2012, IEEE Transactions on Computers.

[23]  Edward A. Lee,et al.  On relational interfaces , 2009, EMSOFT '09.

[24]  Michael Mendler,et al.  WCRT algebra and interfaces for esterel-style synchronous processing , 2009, 2009 Design, Automation & Test in Europe Conference & Exhibition.

[25]  Thierry Gautier,et al.  Programming real-time applications with SIGNAL , 1991, Proc. IEEE.