Behavioural Theory of Reflective Algorithms I: Reflective Sequential Algorithms

We develop a behavioural theory of reflective sequential algorithms (RSAs), i.e. sequential algorithms that can modify their own behaviour. The theory comprises a set of language-independent postulates defining the class of RSAs, an abstract machine model, and the proof that all RSAs are captured by this machine model. As in Gurevich's behavioural theory for sequential algorithms RSAs are sequential-time, bounded parallel algorithms, where the bound depends on the algorithm only and not on the input. Different from the class of sequential algorithms every state of an RSA includes a representation of the algorithm in that state, thus enabling linguistic reflection. Bounded exploration is preserved using terms as values. The model of reflective sequential abstract state machines (rsASMs) extends sequential ASMs using extended states that include an updatable representation of the main ASM rule to be executed by the machine in that state. Updates to the representation of ASM signatures and rules are realised by means of a sophisticated tree algebra.

[1]  Elvinia Riccobene,et al.  Towards ASM-Based Formal Specification of Self-Adaptive Systems , 2014, ABZ.

[2]  Klaus-Dieter Schewe,et al.  Concurrent abstract state machines , 2016, Acta Informatica.

[3]  Brian Cantwell Smith,et al.  Reflection and semantics in LISP , 1984, POPL.

[4]  Gottfried Vossen,et al.  Reflective Programming in the Relational Algebra , 1996, J. Comput. Syst. Sci..

[5]  Andreas Blass,et al.  Abstract state machines capture parallel algorithms: Correction and extension , 2006, TOCL.

[6]  Klaus-Dieter Schewe,et al.  A complete logic for Database Abstract State Machines1 , 2016, Log. J. IGPL.

[7]  Klaus-Dieter Schewe,et al.  XML Database Transformations , 2010, J. Univers. Comput. Sci..

[8]  Klaus-Dieter Schewe,et al.  A Simplified Parallel ASM Thesis , 2012, ABZ.

[9]  Andreas Blass,et al.  Background of Computation , 2007, Bull. EATCS.

[10]  Egon Börger,et al.  Abstract State Machines , 2003 .

[11]  Leslie Lamport,et al.  How to Make a Multiprocessor Computer That Correctly Executes Multiprocess Programs , 2016, IEEE Transactions on Computers.

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

[13]  Nachum Dershowitz,et al.  On the parallel computation thesis , 2016, Log. J. IGPL.

[14]  Bernhard Thalheim,et al.  Updates, Schema Updates and Validation of XML Documents - Using Abstract State Machines with Automata-Defined States , 2009 .

[15]  Klaus-Dieter Schewe,et al.  A Customised ASM Thesis for Database Transformations , 2010, Acta Cybern..

[16]  Richard C. H. Connor,et al.  Type-Safe Linguistic Reflection: A Generator Technology , 2000 .

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

[18]  Egon Börger,et al.  Abstract State Machines , 2003 .

[19]  Klaus-Dieter Schewe,et al.  Partial Updates in Complex-Value Databases , 2011, EJC.

[20]  Klaus-Dieter Schewe,et al.  A unifying logic for non-deterministic, parallel and concurrent abstract state machines , 2017, Annals of Mathematics and Artificial Intelligence.

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

[22]  Klaus-Dieter Schewe,et al.  A new thesis concerning synchronised parallel computing - simplified parallel ASM thesis , 2015, Theor. Comput. Sci..

[23]  Klaus-Dieter Schewe,et al.  Evolving concurrent systems: behavioural theory and logic , 2017, ACSW.

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

[25]  Seif Haridi,et al.  Distributed Algorithms , 1992, Lecture Notes in Computer Science.

[26]  Klaus-Dieter Schewe,et al.  Communication in Abstract State Machines , 2017, J. Univers. Comput. Sci..

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

[28]  Klaus-Dieter Schewe,et al.  A Behavioural Theory for Reflective Sequential Algorithms , 2017, Ershov Informatics Conference.