Domain-Specific Modelling Languages in Bigraphs

Total Page:16

File Type:pdf, Size:1020Kb

Domain-Specific Modelling Languages in Bigraphs Domain-Specific Modelling Languages in Bigraphs Gian Perrone IT University of Copenhagen Copenhagen, Denmark February 2013 Abstract Modelling is a ubiquitous activity in human endeavours, and the construc- tion of informatic models of many kinds is the key to understanding and managing the complexity of an increasingly computational world. We ad- vocate the use of domain-specific modelling languages, instantiated within a \tower" of models, in order to improve the utility of the models we build, and to ease the process of model construction by moving the languages we use to express such models closer to their respective domains. This thesis is concerned with the study of bigraphical reactive systems as a host for domain-specific modelling languages. We present a number of novel technical developments, including a new complete meta-calculus pre- sentation of bigraphical reactive systems, an abstract machine that instan- tiates to an abstract machine for any instance calculus, and a mechanism for defining declarative sorting predicates that always give rise to well- behaved sortings. We explore bigraphical refinement relations that permit formalisation of the relationship between different languages instantiated as bigraphical reactive systems. We detail a prototype verification tool for instance calculi, and provide a tractable heuristic for deciding reaction rule causation. Finally, we provide a mechanism for the modular construction of domain-specific modelling languages as bigraphical reactive systems, explor- ing the relationship between vertical refinement and language specialisation in this setting. The thesis is composed of several publications, augmented with new introductory and background material. Preface I joined the IT University of Copenhagen under the auspices of the Jingling Genies project not longer after the completion of the Bigraphical Program- ming Languages (BPL) project at ITU. The BPL project had made signif- icant progress in advancing the theory of bigraphs, although it was clear that there was still much to be done. Jingling Genies was a project focus- ing on context-aware services, and as a result, was an appropriate vehicle to continue the investigation of bigraphs. Although the vision of a bi- graphical programming language had not emerged as a reality during the BPL project, it became clear during the course of the Genie project that we could advance the state of the art in the construction of domain-specific modelling languages that specialise to a given domain and therefore provide better modelling primitives. During my time at ITU, I published the following papers, some of which appear in this thesis, or which form the basis for specific chapters: • Wusheng Wang, Gian Perrone, and Thomas Hildebrandt. Petri Nets in Bigraphs Revisited. Nordic Workshop on Programming Theory (NWPT 2012), 2012 (to appear). • Alexander Faithfull, Gian Perrone, and Thomas Hildebrandt. Big Red: A Development Environment for Bigraphs. Fourth International Workshop on Graph Computation Models (GCM 2012), 2012. • Marco Carbone, Thomas Hildebrandt, Gian Perrone, and Andrzej Wasowski. Refinement for Transition Systems with Responses. Fourth International Workshop on Foundations of Interface Technologies (FIT 2012), 2012. • Gian Perrone, Søren Debois, and Thomas Hildebrandt. A Model Checker for Bigraphs. ACM Symposium on Applied Computing | Software Verification and Tools Track (ACM SAC-SVT 2012), 2012. • Gian Perrone, Søren Debois, and Thomas Hildebrandt. Bigraphical Refinement. Refine '11: Proceedings of the 2011 International Refine- ment Workshop, 2011. This thesis represents the culmination of my work (and my work with co-authors) on domain-specific modelling languages in bigraphs. Acknowledgements It takes a village to raise a PhD thesis, and indeed it would take an entire forest of paper to properly thank everyone who deserves to be. A few individuals require special mention, however. To my supervisor Thomas Hildebrandt | you kept me on the path, steered me clear of any dangers, and tolerated my | ahem | occasional tardiness with characteristic good grace and humour, which is all one can really ask for in a supervisor. Søren Debois | I cannot thank you enough for how generously you gave of your time, your ideas, and your efforts. Yours was a constant reassuring presence whenever I didn't understand, because I could count on your patient willingness to teach and help. I also benefited from being in a stimulating, supportive environment at ITU, and I thank everyone who made it so. Lars Birkedal, Marco Carbone, Carsten Sch¨urmann,and Andrzej Wasowski deserve special mention for the help they gave me. I'm grateful to all the friends who helped me stay sane: Aaron, Alas- tair, Alec, Alyona, Anthony, Christina, Davide, Elena, Espen, Filip, Fiona, Francesco, Hugo, Jarmo, Jasmine, Josu, Maxime, Nick, Paolo B., Paolo T., Perry, Petra, Rob, Rosalba, Shane, Shaun, Taus, and Ziyad. The members of the Genie project taught me a lot about doing col- laborative research in an international way, and were very kind in helping me during visits to Beijing: Wang Wusheng, John Paulin Hansen, Jørgen Staunstrup, Arne Glenstrup, Ruth Sørensen, Yu Lian, Li Weiping, Lin Huiping, Mo Tong, Chu Weijie, Zhichao Zhang, and Nhi Quyen Le. I was lucky enough to be hosted as a visitor at many fine institutions, and I'm grateful to the academics and their groups that took the time to discuss research and host me: Steve Reeves, David Streader, Sarah Mount, Michael Goldsmith, Matthew Hennessy, Kenneth Holmqvist, Marino Miculan, and Emilio Tuosto. Finally, to my family: Rocky, Vye, John, Bella, and Andy. Thanks. Contents Contents vii List of Figures xi 1 Introduction 1 1.1 Explanation . 3 1.2 Space and Motion . 3 1.3 Domain-Specificity . 4 1.4 A Tower of Models . 6 1.5 Ubiquitous Computing . 7 1.6 Problem Formulation . 7 1.7 The State of the Art . 8 1.7.1 Syntax-Directed Approaches . 8 1.7.2 Semantics-Directed Approaches . 10 1.8 Contributions . 13 1.9 Structure of the Thesis . 14 2 Bigraphs 17 2.1 History . 18 2.1.1 Process Calculi . 19 2.1.2 Behavioural Theories . 21 2.1.3 π-calculus and Mobility . 22 2.1.4 Chemical Abstract Machine . 23 2.1.5 Action Calculi . 24 2.1.6 Mobile Ambients . 24 2.2 Anatomy of a Bigraph . 25 2.2.1 The Place Graph . 26 2.2.2 The Link Graph . 30 2.3 Bigraphs . 33 2.3.1 Bigraph Composition . 35 vii Contents 2.4 Matching and Reaction . 36 2.4.1 Parameter Instantiation . 40 2.4.2 Terminology . 40 2.4.3 Structural Constraints . 41 2.4.4 Wide Matching . 41 2.5 A Bigraph Term Representation . 41 2.5.1 BRS Contexts . 44 2.6 Categorical Foundations . 45 2.6.1 Bigraphical Categories . 46 2.6.2 Functors . 48 2.6.3 Bigraphical Reactive System Categories . 49 2.7 Sortings . 49 2.8 Representing Languages . 51 2.9 Computation . 52 2.10 Tools and Techniques . 53 2.10.1 Big Red . 53 2.10.2 BigMC . 53 2.11 Common Idioms for Modelling . 53 2.11.1 Sequences and Lists . 54 2.11.2 Corecursion . 55 3 BMC & BAM 57 3.1 Introduction . 58 3.2 A Bigraphical Meta-Calculus: BMC . 59 3.2.1 Pure Signatures and BMC Process Terms . 60 3.2.2 Declarative Sortings . 61 3.2.3 BMC Contexts and Composition . 63 3.2.4 BMC Reaction rules . 66 3.3 From BMC to BRS (and back again) . 68 3.3.1 Declarative Sortings . 70 3.3.2 Sorting Predicate Decomposability . 71 3.4 Bigraphical Abstract Machine . 74 3.4.1 Stochastic Simulation with BAM . 78 3.5 Related Work . 79 3.6 Conclusion and Future Work . 80 4 Bigraphical Refinement 83 4.1 Introduction . 85 4.1.1 Structure of the paper . 86 4.2 Bigraphical Reactive Systems . 86 viii Contents 4.2.1 Static Structure . 87 4.2.2 Notation . 90 4.2.3 Dynamics . 90 4.3 Example . 93 4.3.1 The abstract system: BRSnotify . 93 4.3.2 The concrete system: BRSselective . 95 4.4 Vertical BRS Refinement . 96 4.4.1 Safe refinements . 96 4.4.2 Live refinements . 101 4.5 Discussion & related work . 103 4.5.1 Related Work . 104 4.6 Conclusion . 105 4.7 Addendum: Stuttering . 105 4.7.1 Summary . 108 5 A Verification Environment for Bigraphs 109 5.1 Introduction . 111 5.1.1 Motivation . 112 5.1.2 Reachability Analysis . 112 5.1.3 Simulating Bigraphs . 113 5.1.4 Related Work . 113 5.1.5 Structure . 114 5.2 Bigraphs . 115 5.2.1 Static Structure . 116 5.2.2 Dynamics . 117 5.2.3 Term Language . 117 5.2.4 Properties . 118 5.3 Examples . 119 5.3.1 Dining Philosophers . 119 5.3.2 Example: Built environment . 120 5.3.3 Example: CCS . 121 5.4 Reachability Checking . 122 5.5 Static Analysis of Rules . 124 5.6 Performance . 128 5.7 Conclusion . 130 6 Scaffolding the Tower 131 6.1 Introduction . 131 6.1.1 Contributions . 133 6.1.2 Structure . 133 ix Contents 6.2 Recalling BMC . 133 6.3 A Language from Atoms . 136 6.3.1 Singleton Signatures . 137 6.3.2 Reaction . 140 6.3.3 Restriction . 141 6.3.4 Substitution . 142 6.3.5 Syntax . 146 6.3.6 Calculational sub-languages . 146 6.4 Translation to Bigraphs . 148 6.5 Refinement by Construction . 148 6.5.1 Relaxing Consistency . 151 6.6 Modular Construction of Actor Languages . 153 6.7 Related Work . ..
Recommended publications
  • Bigraphs and Their Algebra
    Edinburgh Research Explorer Bigraphs and Their Algebra Citation for published version: Milner, R 2008, 'Bigraphs and Their Algebra', Electronic Notes in Theoretical Computer Science, vol. 209, pp. 5-19. https://doi.org/10.1016/j.entcs.2008.04.002 Digital Object Identifier (DOI): 10.1016/j.entcs.2008.04.002 Link: Link to publication record in Edinburgh Research Explorer Document Version: Publisher's PDF, also known as Version of record Published In: Electronic Notes in Theoretical Computer Science General rights Copyright for the publications made accessible via the Edinburgh Research Explorer is retained by the author(s) and / or other copyright owners and it is a condition of accessing these publications that users recognise and abide by the legal requirements associated with these rights. Take down policy The University of Edinburgh has made every reasonable effort to ensure that Edinburgh Research Explorer content complies with UK legislation. If you believe that the public display of this file breaches copyright please contact [email protected] providing details, and we will remove access to the work immediately and investigate your claim. Download date: 24. Sep. 2021 Electronic Notes in Theoretical Computer Science 209 (2008) 5–19 www.elsevier.com/locate/entcs Bigraphs and Their Algebra Robin Milner1 University of Cambridge United Kingdom Abstract Bigraphs are a framework in which both existing process calculi and new models of behaviour can be formulated, yielding theory that is shared among these models. A short survey of the main features of bigraphs is presented, showing how they can be developed from standard graph theory using elementary category theory.
    [Show full text]
  • Bigraphs and (Reactive) XML an XML-Centric Model of Computation
    Bigraphs and (Reactive) XML an XML-centric model of computation Thomas Hildebrandt and Jacob W. Winther Dept. of Theoretical Computer Science IT University of Copenhagen Rued Langgaards Vej 7, DK-2300 Copenhagen S, Denmark {hilde,jww}@itu.dk Version of January 12, 2005?? Abstract. XML-centric models of computation have been proposed as an an- swer to the demand for interoperability, heterogeneity and openness in coordina- tion models. Recently, Bigraphical reactive systems has been introduced as a the- oretical meta-model for reactive systems with semi-structured state. We present an XML representation of bigraphical reactive systems called Reactive XML. It may be seen as an open, XML-centric model of computation with a solid theoret- ical foundation given by the theory of bigraphical reactive systems. In particular, the theory provides a formal denotation of composition and general transforma- tions of XML documents with links. On the other hand, Reactive XML provides a concrete understanding of the theoretical model of bigraphical reactive systems. We report on a prototype for Reactive XML, describing how Reactive XML re- actions can be carried out in praxis. In particular, we describe how the abstract notion of evaluation contexts may be represented concretely (and generalised) by XPath expressions. The prototype is currently being extended to a distributed setting, ultimately allowing distributed XML-centric applications to coordinate through computations on shared XML data. 1 Introduction It has early on been observed that models for mobile computation, such as the Ambi- ent calculus [1], describe reconfiguration of spatial structures similar to the data model for semi structured data [2].
    [Show full text]
  • Bigraphs and Mobile Processes (Revised)
    UCAM-CL-TR-580 Technical Report ISSN 1476-2986 Number 580 Computer Laboratory Bigraphs and mobile processes (revised) Ole Høgh Jensen, Robin Milner February 2004 15 JJ Thomson Avenue Cambridge CB3 0FD United Kingdom phone +44 1223 763500 http://www.cl.cam.ac.uk/ c 2004 Ole Høgh Jensen, Robin Milner Technical reports published by the University of Cambridge Computer Laboratory are freely available via the Internet: http://www.cl.cam.ac.uk/TechReports/ Series editor: Markus Kuhn ISSN 1476-2986 Bigraphs and mobile processes (revised) Ole Høgh Jensen Robin Milner BRICS, Albor˚ g University University of Cambridge Department of Computer Science Computer Laboratory February 2004 Abstract: A bigraphical reactive system (BRS) involves bigraphs, in which the nesting of nodes represents locality, independently of the edges connecting them; it also allows bigraphs to reconfigure themselves. BRSs aim to provide a uniform way to model spatially distributed systems that both compute and communicate. In this memorandum we develop their static and dynamic theory. In Part I we illustrate bigraphs in action, and show how they correspond to to process calculi. We then develop the abstract (non-graphical) notion of wide reactive system (WRS), of which BRSs are an instance. Starting from reaction rules —often called rewriting rules— we use the RPO theory of Leifer and Milner to derive (labelled) transition systems for WRSs, in a way that leads automatically to behavioural congruences. In Part II we develop bigraphs and BRSs formally. The theory is based directly on graphs, not on syntax. Key results in the static theory are that sufficient RPOs exist (enabling the results of Part I to be applied), that parallel combinators familiar from process calculi may be defined, and that a complete algebraic theory exists at least for pure bigraphs (those without binding).
    [Show full text]
  • Local Bigraphs and Confluence
    Electronic Notes in Theoretical Computer Science 175 (2007) 65–73 www.elsevier.com/locate/entcs Local Bigraphs and Confluence: Two Conjectures (Extended Abstract) Robin Milner University of Cambridge Abstract The notion of confluence is studied on the context of bigraphs. Confluence will be important in modelling real-world systems, both natural (as in biology) and artificial (as in pervasive computing). The paper uses bigraphs in which names have multiple locality; this enables a formulation of the lambda calculus with explicit substitutions. The paper reports work in progress, seeking conditions on a bigraphical reactive system that are sufficient to ensure confluence; the conditions must deal with the way that bigraphical redexes can be intricately intertwined. The conditions should also be satisfied by the lambda calculus. After discussion of these issues, two conjectures are put forward. Keywords: bigraph, locality, confluence, lambda calculus. Bigraphs have been used to present a variety of models of concurrency within a single framework, which also provides a theory applicable to all the models. As we seek informatic understanding of extensive real-life systems that reconfigure themselves, we cannot expect that our present repertoire of abstract process calculi (including Petri nets, mobile ambients, CSP and π-calculus) will suffice. So, as we enlarge our repertoire of calculi —perhaps specific to a certain application (e.g. in biology or in pervasive computing)— there is a need for unifying theory. The bigraphical model is an experiment in this direction. It is not a specific calculus, but rather a framework for defining and combining such calculi. To define a specific bigraphical reactive system (BRS) two ingredients are needed: its signature defines its controls (the kinds of nodes allowed), and its reaction rules define how bigraphs can reconfigure themselves.
    [Show full text]
  • Bigraphs with Sharing ∗ Michele Sevegnani , Muffy Calder
    Theoretical Computer Science 577 (2015) 43–73 Contents lists available at ScienceDirect Theoretical Computer Science www.elsevier.com/locate/tcs Bigraphs with sharing ∗ Michele Sevegnani , Muffy Calder School of Computing Science, Sir Alwyn Williams Building, Lilybank Gardens, University of Glasgow, G12 8RZ, Glasgow, United Kingdom a r t i c l e i n f o a b s t r a c t Article history: Bigraphical Reactive Systems (BRS) were designed by Milner as a universal formalism Received 2 August 2013 for modelling systems that evolve in time, locality, co-locality and connectivity. But the Received in revised form 27 January 2015 underlying model of location (the place graph) is a forest, which means there is no Accepted 4 February 2015 straightforward representation of locations that can overlap or intersect. This occurs Available online 19 February 2015 in many domains, for example in wireless signalling, social interactions and audio Communicated by U. Montanari communications. Here, we define bigraphs with sharing, which solves this problem by an Keywords: extension of the basic formalism: we define the place graph as a directed acyclic graph, Bigraphs thus allowing a natural representation of overlapping or intersecting locations. We give Matching a complete presentation of the theory of bigraphs with sharing, including a categorical Spatial models semantics, algebraic properties, and several essential procedures for computation: bigraph Semantics with sharing matching, a SAT encoding of matching, and checking a fragment of the logic Rewriting BiLog. We show that matching is an instance of the NP-complete sub-graph isomorphism problem and our approach based on a SAT encoding is also efficient for standard bigraphs.
    [Show full text]
  • An Implementation of Bigraph Matching
    An Implementation of Bigraph Matching Arne John Glenstrup Troels Christoffer Damgaard Lars Birkedal Espen Højsgaard IT University Technical Report Series TR-2010-135 ISSN 1600–6100 December 2010 Copyright c 2010, Arne John Glenstrup Troels Christoffer Damgaard Lars Birkedal Espen Højsgaard IT University of Copenhagen All rights reserved. Reproduction of all or part of this work is permitted for educational or research use on condition that this copyright notice is included in any copy. ISSN 1600–6100 ISBN 978–87–7949–228–8 Copies may be obtained by contacting: IT University of Copenhagen Rued Langgaards Vej 7 DK-2300 Copenhagen S Denmark Telephone: +45 72 18 50 00 Telefax: +45 72 18 50 01 Web www.itu.dk An Implementation of Bigraph Matching Arne John Glenstrup Troels Christoffer Damgaard Lars Birkedal Espen Højsgaard IT University of Copenhagen, Denmark Abstract We describe a provably sound and complete matching algorithm for bigraphical reactive systems. The algorithm has been implemented in our BPL Tool, a first implementation of bigraphical reactive systems. We describe the tool and present a concrete example of how it can be used to simulate a model of a mobile phone system in a bigraphical representation of the polyadic p calculus. 1 Introduction The theory of bigraphical reactive systems [13] provides a general meta-model for describing and analyz- ing mobile and distributed ubiquituous systems. Bigraphical reactive systems form a graphical model of computation in which graphs embodying both locality and connectivity can be reconfigured using reac- tion rules. So far it has been shown how to use the theory for recovering behavioural theories for various process calculi [12, 13, 15] and how to use the theory for modelling context-aware systems [2].
    [Show full text]
  • Rewriting and Analysis Engine for Bigraphs
    BigraphER: rewriting and analysis engine for bigraphs Michele Sevegnani and Muffy Calder School of Computing Science, University of Glasgow Abstract. BigraphER is a suite of open-source tools providing an effi- cient implementation of rewriting, simulation, and visualisation for bi- graphs, a universal formalism for modelling interacting systems that evolve in time and space and first introduced by Milner. BigraphER con- sists of an OCaml library that provides programming interfaces for the manipulation of bigraphs, their constituents and reaction rules, and a command-line tool capable of simulating Bigraphical Reactive Systems (BRSs) and computing their transition systems. Other features are native support for both bigraphs and bigraphs with sharing, stochastic reaction rules, rule priorities, instantiation maps, parameterised controls, pred- icate checking, graphical output and integration with the probabilistic model checker PRISM. 1 Introduction Bigraphs were first introduced by Robin Milner as a universal mathematical model for representing the spatial configuration of physical or virtual objects, their interaction capabilities and temporal evolution. They were subsequently extended to stochastic bigraphs [11] and bigraphs with sharing [16], and have been applied in areas such as wireless protocols, home network management, mixed reality systems, cloud computing, security and as meta-models to encode process calculi (e.g. Mobile Ambients, CSS). BigraphER is a modelling and reasoning environment for bigraphs consisting of an OCaml library
    [Show full text]
  • Reactive Systems Over Directed Bigraphs*
    Reactive Systems over Directed Bigraphs? Davide Grohmann Marino Miculan Dept. of Mathematics and Computer Science, University of Udine, Italy. [email protected], [email protected] Abstract. We study the construction of labelled transition systems from reactive systems defined over directed bigraphs, a computational meta-model which subsumes other variants of bigraphs. First we con- sider wide transition systems whose labels are all those generated by the IPO construction; the corresponding bisimulation is always a congruence. Then, we show that these LTSs can be simplified further by restricting to a subclass of labels, which can be characterized syntactically. We apply this theory to the Fusion calculus: we give an encoding of Fusion in directed bigraphs, and describe its simplified wide transition system and corresponding bisimulation. 1 Introduction Bigraphical reactive systems (BRSs) are an emerging graphical meta-model of concurrent computation introduced by Milner [5, 6]. The key structure of BRSs are bigraphs, which are composed by a hierarchical place graph describing loca- tions, and a link (hyper-)graph describing connections. The dynamics of a system is represented by a set of reaction rules which may change both these structures. Remarkably, using a general construction based on the notion of relative pushout (RPO), from a BRS we can obtain a labelled transition system such that the associated bisimulation is always a congruence [3]. Several process calculi for Concurrency can be represented in bigraphs, such as CCS and (using a mild generalization), also the π-calculus and the λ-calculus. Nevertheless, other calculi, such as Fusion [7], seem to escape this framework.
    [Show full text]
  • UC Berkeley UC Berkeley Electronic Theses and Dissertations
    UC Berkeley UC Berkeley Electronic Theses and Dissertations Title Mobile Reactive Systems over Bigraphical Machines - A Programming Model and its Implementation Permalink https://escholarship.org/uc/item/830795dx Author Pereira, Eloi Teixeira Publication Date 2015 Peer reviewed|Thesis/dissertation eScholarship.org Powered by the California Digital Library University of California Mobile Reactive Systems over Bigraphical Machines - A Programming Model and its Implementation by El´oiTeixeira Pereira A dissertation submitted in partial satisfaction of the requirements for the degree of Doctor of Philosophy in Engineering - Civil and Environmental Engineering in the Graduate Division of the University of California, Berkeley Committee in charge: Professor Raja Sengupta, Chair Professor Edward Lee Professor Alexandre Bayen Summer 2015 Mobile Reactive Systems over Bigraphical Machines - A Programming Model and its Implementation Copyright 2015 by El´oiTeixeira Pereira 1 Abstract Mobile Reactive Systems over Bigraphical Machines - A Programming Model and its Implementation by El´oiTeixeira Pereira Doctor of Philosophy in Engineering - Civil and Environmental Engineering University of California, Berkeley Professor Raja Sengupta, Chair In this dissertation we address the problem of bridging reactive programs and mobile computing machinery embedded in physical spaces with dynamic structure. We propose the BigActor Model as a bridging model between programs and logical-space models. The BigActor model [1] combines Hewitt and Agha's Actor model [2] for specifying concurrent reactive programs with Robin Milner's Bigraphical Model [3] for specifying the location and connectivity of the computing machines. The BigActor Model makes location and connectiv- ity first-class citizens in distributed machines. This is analogous to another bridging model, the von Neumann machine, which makes first-class citizens of memory, instructions, and their sequentiality.
    [Show full text]
  • Bigraphs and Their Algebra
    Electronic Notes in Theoretical Computer Science 209 (2008) 5–19 www.elsevier.com/locate/entcs Bigraphs and Their Algebra Robin Milner1 University of Cambridge United Kingdom Abstract Bigraphs are a framework in which both existing process calculi and new models of behaviour can be formulated, yielding theory that is shared among these models. A short survey of the main features of bigraphs is presented, showing how they can be developed from standard graph theory using elementary category theory. The algebraic manipulation of bigraphs is outlined with the help of illustrations. The treatment of dynamics is then summarised. Finally, origins and some related work are discussed. The paper provides a motivating introduction to bigraphs. Keywords: Bigraphs, Process Calculi 1 Introduction Space Even before the digital computer was invented some sixty years ago, com- putation depended on ways to organise space; not the space of Euclidean geometry, but a discrete space involving notions like order and containment. Arabic numerals use linear space to represent the power of digits; then two-dimensional space can be used to represent the basic numerical algorithms—addition, multiplication, and so on. Spatial structures of data—sequences, matrices and graphs—played an impor- tant part before the stored-program computer; indeed, the algorithms for solving differential equations with a manual calculator combined the use of space for data and calculation in sophisticated ways. Computer programming ramifies the use of space and spatial metaphor, both for writing programs and for explaining them. This shows up in our vocabulary: flow chart, location, send and fetch, pointer, nesting, tree, etc. Concurrency expands the vocabulary further: distributed system, remote procedure call, network, routing, etc.
    [Show full text]
  • A Mathematical Bibliography of Signed and Gain Graphs and Allied Areas
    A Mathematical Bibliography of Signed and Gain Graphs and Allied Areas Compiled by Thomas Zaslavsky Manuscript prepared with Marge Pratt Department of Mathematical Sciences Binghamton University Binghamton, New York, U.S.A. 13902-6000 E-mail: [email protected] Submitted: March 19, 1998; Accepted: July 20, 1998. Seventh Edition 1999 September 22 Mathematics Subject Classifications (2000): Primary 05-00, 05-02, 05C22; Secondary 05B20, 05B35, 05C07, 05C10, 05C15, 05C17, 05C20, 05C25, 05C30, 05C35, 05C38, 05C40, 05C45, 05C50, 05C60, 05C62, 05C65, 05C70, 05C75, 05C80, 05C83, 05C85, 05C90, 05C99, 05E25, 05E30, 06A07, 15A06, 15A15, 15A39, 15A99, 20B25, 20F55, 34C99, 51D20, 51D35, 51E20, 51M09, 52B12, 52C07, 52C35, 57M27, 68Q15, 68Q25, 68R10, 82B20, 82D30, 90B10, 90C08, 90C27, 90C35, 90C57, 90C60, 91B14, 91C20, 91D30, 91E10, 92D40, 92E10, 94B75. Colleagues: HELP! If you have any suggestions whatever for items to include in this bibliography, or for other changes, please let me hear from you. Thank you. Copyright c 1996, 1998, 1999 Thomas Zaslavsky Typeset by AMS-TEX i Index A1 H59 O 101 V 133 B8 I71 P 102 W 135 C23 J72 Q 109 X 139 D34 K75 R 109 Y 139 E40 L84 S 113 Z 140 F44 M90 T 126 G58 N99 U 133 Preface A signed graph is a graph whose edges are labeled by signs. This is a bibliography of signed graphs and related mathematics. Several kinds of labelled graph have been called “signed” yet are mathematically very different. I distinguish four types: • Group-signed graphs: the edge labels are elements of a 2-element group and are mul- tiplied around a polygon (or along any walk).
    [Show full text]
  • Computing Embeddings of Directed Bigraphs
    Computing Embeddings of Directed Bigraphs B Alessio Chiapperini1, Marino Miculan1( ), and Marco Peressotti2 1 DMIF, University of Udine, Udine, Italy [email protected] 2 IMADA, University of Southern Denmark, Odense, Denmark [email protected] Abstract. Directed bigraphs are a meta-model which generalises Mil- ner’s bigraphs by taking into account the request flow between controls and names. A key problem about these bigraphs is that of bigraph embed- ding, i.e., finding the embeddings of a bigraph inside a larger one. We present an algorithm for computing embeddings of directed bigraphs, via a reduction to a constraint satisfaction problem. We prove sound- ness and completeness of this algorithm, and provide an implementation in jLibBig, a general Java library for manipulating bigraphical reactive systems, together with some experimental results. 1 Introduction Bigraphical Reactive Systems (BRSs) are a family of graph-based formalisms introduced as a meta-model for distributed, mobile systems [17,22,25]. In this approach, system configurations are represented by bigraphs, graph-like data structures capable of describing at once both the locations and the logical con- nections of (possibly nested) components. The dynamics of a system is defined by means of a set of graph rewriting rules, which can replace and change components’ positions and connections. BRSs have been successfully applied to the formalization of a wide spectrum of domain-specific models, including context-aware systems, web-service orchestration languages [4,5,20,28]. BRSs are appealing because they provide a range of general results and tools, which can be readily instantiated with the specific model under scrutiny: libraries for bigraph manipulation (e.g., DBtk [1]andjLibBig [23,24]), simulation tools [10,19,21], graphical editors [9], model checkers [27], modular composition [26], stochastic extensions [18], etc.
    [Show full text]