A layered formal framework for modeling of cyber-physical systems

Designing cyber-physical systems is highly challenging due to its manifold interdependent aspects such as composition, timing, synchronization and behavior. Several formal models exist for description and analysis of these aspects, but they focus mainly on a single or only a few system properties. We propose a formal composable framework which tackles these concerns in isolation, while capturing interaction between them as a single layered model. This yields a holistic, fine-grained, hierarchical and structured view of a cyber-physical system. We demonstrate the various benefits for modeling, analysis and synthesis through a typical example.

[1]  Geoffrey Mainland,et al.  Nikola: embedding compiled GPU functions in Haskell , 2010 .

[2]  K. Keutzer,et al.  System-level design: orthogonalization of concerns andplatform-based design , 2000, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[3]  Erik Poll,et al.  Algebra of Programming by Richard Bird and Oege de Moor, Prentice Hall, 1996 (dated 1997). , 1999 .

[4]  Simon L. Peyton Jones,et al.  Regular, shape-polymorphic, parallel arrays in Haskell , 2010, ICFP '10.

[5]  Jan Kuper,et al.  C?aSH: Structural Descriptions of Synchronous Hardware Using Haskell , 2010, 2010 13th Euromicro Conference on Digital System Design: Architectures, Methods and Tools.

[6]  Bo Joel Svensson,et al.  Obsidian: A Domain Specific Embedded Language for Parallel Programming of Graphics Processors , 2008, IFL.

[7]  Rajesh K. Karmani,et al.  Algorithmic Skeletons , 2011, Encyclopedia of Parallel Computing.

[8]  Stephen A. Edwards,et al.  The synchronous languages 12 years later , 2003, Proc. IEEE.

[9]  Manuel M. T. Chakravarty,et al.  Accelerating Haskell array codes with multicore GPUs , 2011, DAMP '11.

[10]  Kenneth C. Rovers,et al.  UniTi: Unified Composition and Time for Multi-domain Model-based Design , 2012, International Journal of Parallel Programming.

[11]  Sander Stuijk,et al.  SDF^3: SDF For Free , 2006, Sixth International Conference on Application of Concurrency to System Design (ACSD'06).

[12]  David B. Skillicorn,et al.  Foundations of parallel programming , 1995 .

[13]  Paul Hudak,et al.  Arrows, Robots, and Functional Reactive Programming , 2002, Advanced Functional Programming.

[14]  Edward A. Lee,et al.  Taming heterogeneity - the Ptolemy approach , 2003, Proc. IEEE.

[15]  Conor McBride,et al.  Applicative programming with effects , 2008, J. Funct. Program..

[16]  Axel Jantsch,et al.  System modeling and transformational design refinement in ForSyDe [formal system design] , 2004, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[17]  Hideki John Reekie,et al.  Realtime Signal Processing Data∞ow, Visual, and Functional Programming , 1995 .

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

[19]  Rita Loogen,et al.  Under Consideration for Publication in J. Functional Programming Parallel Functional Programming in Eden , 2022 .

[20]  Mauro Jaskelioff,et al.  An Investigation of the Laws of Traversals , 2012, MSFP.

[21]  Jörg Fischer,et al.  Foundations of Data-parallel Skeletons , 2003, Patterns and Skeletons for Parallel and Distributed Computing.

[22]  Erik Perrins,et al.  Introducing Kansas Lava , 2009, IFL.

[23]  Murray Cole,et al.  Algorithmic Skeletons , 2006, Research Directions in Parallel Functional Programming.

[24]  Richard S. Bird,et al.  An introduction to the theory of lists , 1987 .