Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/3014812.3017446acmotherconferencesArticle/Chapter ViewAbstractPublication Pagesaus-cswConference Proceedingsconference-collections
research-article

Evolving concurrent systems: behavioural theory and logic

Published: 31 January 2017 Publication History

Abstract

A concurrent system can be characterised by autonomously acting agents, where each agent executes its own program, uses shared resources and communicates with the others, but otherwise is totally oblivious to the behaviour of the other agents. In an evolving concurrent system agents may change their programs, enter or leave the collection at any time thereby changing the behaviour of the overall system. In this paper we present a behavioural theory of evolving concurrent systems, i.e. we provide (1) a small set of postulates that characterise evolving concurrent systems in a precise conceptual way without any reference to a particular language, (2) an abstract machine model together with a plausibility proof that the abstract machines satisfy the postulates, and (3) a characterisation proof that any system stipulated by the postulates can be step-by-step simulated by an abstract machine. The theory integrates the behavioural theories for unbounded (synchronous) parallel algorithms, asynchronous concurrent systems, and reflective algorithms, respectively. However, in the latter two theories only sequential agents and sequential reflective algorithms were considered. Furthermore, linguistic reflection has not been integrated with parallelism. We will show how these research gaps can be closed.
The behavioural theory implies that concurrent reflective Abstract State Machines (crASMs) can be used as a specification and development language for evolving concurrent systems. We therefore investigate a logic for crASMs. Based on the simple observation that concurrent ASMs can be mimicked by non-deterministic parallel ASMs we exploit the complete one-step logic for non-deterministic ASMs for the definition of a logic capturing concurrency. By making the extra-logical rules in the logic subject to being interpreted in a state we extend the logic to capture also reflection.

References

[1]
Abrial, J.-R. The B-book - Assigning programs to meanings. Cambridge University Press, 2005.
[2]
Abrial, J.-R. Modeling in Event-B - System and Software Engineering. Cambridge University Press, 2010.
[3]
An, W. Formal specification and analysis of asynchronous mutual exclusion algorithms. Master's thesis, JKU Linz, Austria, 2016.
[4]
Blass, A., and Gurevich, Y. Abstract State Machines capture parallel algorithms. ACM Trans. Computational Logic 4(4) (2003), 578--651.
[5]
Blass, A., and Gurevich, Y. Abstract State Machines capture parallel algorithms: Correction and extension. ACM Transactions on Computation Logic 9, 3 (2008).
[6]
Börger, E. The ASM refinement method. Formal Aspects of Computing 15, 2--3 (2003), 237--257.
[7]
Börger, E., and Schewe, K.-D. Concurrent Abstract State Machines. Acta Informatica 53, 5 (2016), 469--492.
[8]
Börger, E., and Stärk, R. F. Abstract State Machines. A Method for High-Level System Design and Analysis. Springer, 2003.
[9]
Ferrarotti, F., Schewe, K.-D., and Tec, L. A behavioural theory for reflective sequential algorithms, 2016. submitted for publication.
[10]
Ferrarotti, F., Schewe, K.-D., and Tec, L. A complete logic for non-deterministic parallel ASMs, 2016. submitted for publication.
[11]
Ferrarotti, F., Schewe, K.-D., Tec, L., and Wang, Q. A new thesis concerning synchronised parallel computing - simplified parallel ASM thesis. CoRR abs/1504.06203 (2015). see http://arxiv.org/abs/1504.06203.
[12]
Ferrarotti, F., Schewe, K.-D., Tec, L., and Wang, Q. A new thesis concerning synchronised parallel computing - simplified parallel ASM thesis. Theoretical Computer Science 649 (2016), 25--53. extended version in {11}.
[13]
Ferrarotti, F., Tec, L., and Turull Torres, J. M. Towards an ASM thesis for reflective sequential algorithms. In Abstract State Machines, Alloy, B, TLA, VDM and Z (ABZ 2016) (2016), M. Butler et al., Eds., vol. 9675 of LNCS, Springer, pp. 239--244.
[14]
Grädel, E., and Gurevich, Y. Metafinite model theory. Information and Computation 140, 1 (1998), 26--81.
[15]
Gurevich, Y. Evolving algebras 1993: Lipari Guide. In Specification and Validation Methods. Oxford University Press, 1995, pp. 9--36.
[16]
Gurevich, Y. Sequential Abstract State Machines capture sequential algorithms. ACM Trans. Computational Logic 1, 1 (July 2000), 77--111.
[17]
Harel, D., Kozen, D., and Tiuryn, J. Dynamic Logic. MIT Press, 2000.
[18]
Hewitt, C. What is computation? Actor model versus Turing's model. In A Computable Universe: Understanding Computation and Exploring Nature as Computation, H. Zenil, Ed. World Scientific Publishing, 2012.
[19]
Hoare, C. A. R. Communicating Sequential Processes. Prentice-Hall, 1985.
[20]
Kröger, F., and Merz, S. Temporal Logic and State Systems. Texts in Theoretical Computer Science. An EATCS Series. Springer, 2008.
[21]
Lamport, L. How to make a multiprocessor computer that correctly executes multiprocess programs. IEEE Trans. Computers 28, 9 (1979), 690--691.
[22]
Lamport, L. Specifying Systems, The TLA+ Language and Tools for Hardware and Software Engineers. Addison-Wesley, 2002.
[23]
Lynch, N. Distributed Algorithms. Morgan Kaufmann, 1996. ISBN 978-1-55860-348-6.
[24]
Mazurkiewicz, A. Trace theory. vol. 255 of LNCS, Springer, pp. 279--324.
[25]
Mazurkiewicz, A. Introduction to trace theory. In The Book of Traces, V. Diekert and G. Rozenberg, Eds. World Scientific, Singapore, 1995, pp. 3--67.
[26]
Merz, S. On the logic of TLA+. Computers and Artificial Intelligence 22, 3--4 (2003), 351--379.
[27]
Milner, R. A Calculus of Communicating Systems. Springer, 1982. ISBN 0-387-10235-3.
[28]
Milner, R. Communicating and Mobile Systems: The Pi-Calculus. Springer, 1999. ISBN 9780521658690.
[29]
Peterson, J. Petri net theory and the modeling of systems. Prentice-Hall, 1981.
[30]
Petri, C. A. Kommunikation mit Automaten. PhD thesis, Institut für Instrumentelle Mathematik der Universität Bonn, 1962. Schriften des IIM Nr. 2.
[31]
Riccobene, E., and Scandurra, P. Towards asm-based formal specification of self-adaptive systems. In Abstract State Machines, Alloy, B, TLA, VDM, and Z - 4th International Conference (ABZ 2014) (2014), Y. A. Ameur and K.-D. Schewe, Eds., vol. 8477 of Lecture Notes in Computer Science, Springer, pp. 204--209.
[32]
Roscoe, A. The Theory and Practice of Concurrency. Prentice-Hall, 1997.
[33]
Schellhorn, G., Tofan, B., Ernst, G., Pfähler, J., and Reif, W. RGITL: A temporal logic framework for compositional reasoning about interleaved programs. Annals af Mathematics and Artificial Intelligence 71 (2014), 1--44.
[34]
Schewe, K.-D., Ferrarotti, F., Tec, L., and Wang, Q. Towards a behavioural theory for random parallel computing. In Computational Models of Rationality - Essays Dedicated to Gabriele Kern-Isberner on the Occasion of Her 60th Birthday, C. Beierle, G. Brewka, and M. Thimm, Eds., vol. 29 of Tributes. College Publications, 2016, pp. 365--373.
[35]
Schmalz, M. Formalizing the Logic of Event-B. PhD thesis, ETH Zürich, 2012.
[36]
Seebach, H., Nafz, F., Steghöfer, J.-P., and Reif, W. How to design and implement self-organising resource-flow systems. In Organic Computing - A Paradigm Shift for Complex Systems, C. Müller-Schloer, H. Schmeck, and T. Ungerer, Eds. Springer, 2011, pp. 145--161.
[37]
Stärk, R. F., and Nanchen, S. A logic for abstract state machines. Journal of Universal Computer Science 7, 11 (2001), 980--1005.
[38]
Steghöfer, J.-P. Large-Scale Open Self-Organising Systems: Managing Complexity with Hierarchies, Monitoring, Adaptation, and Principled Design. PhD thesis, University of Augsburg, 2014.
[39]
Steghöfer, J.-P., Seebach, H., Eberhardinger, B., Huebschmann, M., and Reif, W. Combining PosoMAS method content with Scrum: Agile software engineering for open self-organising systems. Scalable Computing: Practice and Experience 16, 4 (2015), 333--354.
[40]
The Petri nets bibliography, University of Hamburg. http://www.informatik.uni-hamburg.de/TGI/pnbib/index.html.
[41]
Wang, Q. Logical Foundations of Database Transformations for Complex-Value Databases. Berlin, Germany: Logos-Verlag, 2010.
[42]
Wang, Q., Ferrarotti, F., Schewe, K.-D., and Tec, L. A complete logic for non-deterministic database transformations. CoRR abs/1602.07486 (2016). http://arxiv.org/abs/1602.07486.
[43]
Winskel, G., and Nielsen, M. Models for concurrency. In Handbook of Logic and the Foundations of Computer Science: Semantic Modelling, S. Abramsky, D. Gabbay, and T. S. E. Maibaum, Eds., vol. 4. Oxford University Press, 1995, pp. 1--148.

Cited By

View all
  1. Evolving concurrent systems: behavioural theory and logic

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Other conferences
    ACSW '17: Proceedings of the Australasian Computer Science Week Multiconference
    January 2017
    615 pages
    ISBN:9781450347686
    DOI:10.1145/3014812
    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 31 January 2017

    Permissions

    Request permissions for this article.

    Check for updates

    Qualifiers

    • Research-article

    Funding Sources

    Conference

    ACSW 2017
    ACSW 2017: Australasian Computer Science Week 2017
    January 30 - February 3, 2017
    Geelong, Australia

    Acceptance Rates

    ACSW '17 Paper Acceptance Rate 78 of 156 submissions, 50%;
    Overall Acceptance Rate 204 of 424 submissions, 48%

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)7
    • Downloads (Last 6 weeks)1
    Reflects downloads up to 24 Dec 2024

    Other Metrics

    Citations

    Cited By

    View all
    • (2022)Behavioural Theory of Reflective Algorithms I: Reflective Sequential AlgorithmsScience of Computer Programming10.1016/j.scico.2022.102864(102864)Online publication date: Sep-2022
    • (2020)A Logic for Reflective ASMsRigorous State-Based Methods10.1007/978-3-030-48077-6_7(93-106)Online publication date: 22-May-2020
    • (2019)Concurrent Computing with Shared Replicated MemoryModel and Data Engineering10.1007/978-3-030-32065-2_16(219-234)Online publication date: 21-Oct-2019
    • (2018)Distributed Adaptive SystemsAbstract State Machines, Alloy, B, TLA, VDM, and Z10.1007/978-3-319-91271-4_2(16-30)Online publication date: 8-May-2018
    • (2018)Why Programming Must Be Supported by Modeling and HowLeveraging Applications of Formal Methods, Verification and Validation. Modeling10.1007/978-3-030-03418-4_6(89-110)Online publication date: 29-Oct-2018
    • (2018)Towards functional safety and security for adaptive and flexible business processesJournal of Software: Evolution and Process10.1002/smr.195230:5(e1952)Online publication date: 1-May-2018
    • (2017)Concurrent Reflective Abstract State Machines2017 19th International Symposium on Symbolic and Numeric Algorithms for Scientific Computing (SYNASC)10.1109/SYNASC.2017.00015(30-35)Online publication date: Sep-2017

    View Options

    Login options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media