CoreASM: An Extensible ASM Execution Engine

In this paper we introduce a new research effort in making abstract state machines (ASMs) executable. The aim is to specify and implement an execution engine for a language that is as close as possible to the mathematical definition of pure ASMs. The paper presents the general architecture of the engine, together with a high-level description of the extensibility mechanisms that are used by the engine to accommodate arbitrary backgrounds, scheduling policies, and new rule forms.

[1]  Andreas Prinz,et al.  On the Formal Semantics of SDL-2000: A Compilation Approach Based on an Abstract SDL Machine , 2000, Abstract State Machines.

[2]  Dag Diesen,et al.  Specifying algorithms using evolving algebra : implementation of functional programming languages , 1995 .

[3]  Yuri Gurevich,et al.  Evolving Algebras and Partial Evaluation , 1994, IFIP Congress.

[4]  Mashaal Anwar Memon,et al.  SPECIFICATION LANGUAGE DESIGN CONCEPTS: AGGREGATION AND EXTENSIBILITY IN CoreAS M , 2006 .

[5]  Elvinia Riccobene,et al.  Refining Abstract Machine Specifications of the Steam Boiler Control to Well Documented Executable Code , 1995, Formal Methods for Industrial Applications.

[6]  Egon Börger,et al.  The ASM Ground Model Method as a Foundation for Requirements Engineering , 2003, Verification: Theory and Practice.

[7]  Angelo Gargantini,et al.  Using Spin to Generate Testsfrom ASM Specifications , 2003, Abstract State Machines.

[8]  Giuseppe Del Castillo,et al.  Towards Comprehensive Tool Support for Abstract State Machines: The ASM Workbench Tool Environment and Architecture , 1998, FM-Trends.

[9]  Yuri Gurevich,et al.  Sequential abstract-state machines capture sequential algorithms , 2000, TOCL.

[10]  Nikolai Tillmann,et al.  Partial Updates: Exploration , 2001, J. Univers. Comput. Sci..

[11]  Wolfgang Müller,et al.  The semantics of behavioral VHDL '93 descriptions , 1994, EURO-DAC '94.

[12]  Roozbeh Farahbod,et al.  Specification and Validation of the Business Process Execution Language for Web Services , 2004, Abstract State Machines.

[13]  Egon Börger,et al.  Java and the Java Virtual Machine: Definition, Verification, Validation , 2001 .

[14]  Andreas Prinz,et al.  The formal semantics of SDL-2000: Status and perspectives , 2003, Comput. Networks.

[15]  Egon Börger,et al.  A Logical Operational Semantics of Full Prolog, Part II: Built-in Predicates for Database Manipulation , 1990, MFCS.

[16]  Egon Börger,et al.  A Practical Method for Specification and Analysis of Exception Handling - A Java/JVM Case Study , 2000, IEEE Trans. Software Eng..

[17]  Wolfgang Rosenstiel,et al.  An ASM based systemC simulation semantics , 2003 .

[18]  Nikolai Tillmann,et al.  Partial updates , 2005, Theor. Comput. Sci..

[19]  Egon Brger,et al.  Formal de nition of an abstract VHDL''''93 simulator by EA - machines , 1995 .

[20]  Roozbeh Farahbod,et al.  Design and Specification of the CoreASM Execution Engine , 2005 .

[21]  Egon Börger,et al.  Abstract State Machines. A Method for High-Level System Design and Analysis , 2003 .

[22]  Joachim Schmid,et al.  Compiling Abstract State Machines to C++ , 2001, J. Univers. Comput. Sci..

[23]  James K. Huggins An Offline Partial Evaluator for Evolving Algebras , 1998, ArXiv.

[24]  Igor Durdanovic,et al.  An Evolving Algebra Abstract Machine , 1995, CSL.

[25]  Andreas Prinz,et al.  Formal Definition of SDL-2000 - Compiling and Running SDL Specifications as ASM Models , 2001, Journal of universal computer science (Online).

[26]  Qian-Ping Gu,et al.  Formal description and analysis of a distributed location service for mobile ad hoc networks , 2005, Theor. Comput. Sci..

[27]  Egon Börger,et al.  A high-level modular definition of the semantics of C# , 2005, Theor. Comput. Sci..

[28]  R. Stärk,et al.  Abstract State Machines , 2003, Springer Berlin Heidelberg.

[29]  Andreas Blass,et al.  Abstract state machines capture parallel algorithms , 2003, TOCL.

[30]  Yuri Gurevich,et al.  Evolving algebras 1993: Lipari guide , 1995, Specification and validation methods.

[31]  Uwe Glässer,et al.  Computer-Aided Analysis and Validation of Heterogeneous System Specifications , 1999, EUROCAST.

[32]  Bernhard Beckert,et al.  LeanEA: A Lean Evolving Algebra Compiler , 1995, WLP.

[33]  Elvinia Riccobene,et al.  Capturing Requirements by Abstract State Machines: The Light Control Case Study , 2000, J. Univers. Comput. Sci..

[34]  Angelica Maria Kappel Executable Specifications based on Dynamic Algebras , 1993, LPAR.

[35]  Egon Börger,et al.  The Origins and the Development of the ASM Method for High Level System Design and Analysis , 2002, J. Univers. Comput. Sci..

[36]  Egon Börger,et al.  A Logical Operational Semantics of Full Prolog. Part I: Selection Core and Control , 1989, CSL.

[37]  Kirsten Winter,et al.  Model Checking Support for the ASM High-Level Language , 2000, TACAS.

[38]  Egon Börger,et al.  The ASM Refinement Method , 2003, Formal Aspects of Computing.

[39]  Margus Veanes,et al.  Abstract communication model for distributed systems , 2004, IEEE Transactions on Software Engineering.

[40]  Roozbeh Farahbod,et al.  Abstract operational semantics of the Business Process Execution Language for web services , 2004 .