135 research outputs found
An introduction to Graph Data Management
A graph database is a database where the data structures for the schema
and/or instances are modeled as a (labeled)(directed) graph or generalizations
of it, and where querying is expressed by graph-oriented operations and type
constructors. In this article we present the basic notions of graph databases,
give an historical overview of its main development, and study the main current
systems that implement them
Logical Foundations of Services
In this paper we consider a logical system of networks of processes that interact in an asynchronous manner by exchanging messages through communication channels. This provides a foundational algebraic framework for service-oriented computing that constitutes a primary factor in defining logical specifications of services, the way models of these specifications capture service orchestrations, and how properties of interaction-points, i.e. points through which such networks connect to one another, can be expressed. We formalise the resulting logic as a parameterised institution, which promotes the development of both declarative and operational semantics of services in a heterogeneous setting by means of logic-programming concepts
Unfolding-based Diagnosis of Systems with an Evolving Topology
We propose a framework for model-based diagnosis of systems with mobility and variable topologies, modelled as graph transformation systems. Generally speaking, model-based diagnosis is aimed at constructing explanations of observed faulty behaviours on the basis of a given model of the system. Since the number of possible explanations may be huge, we exploit the unfolding as a compact data structure to store them, along the lines of previous work dealing with Petri net models. Given a model of a system and an observation, the explanations can be constructed by unfolding the model constrained by the observation, and then removing incomplete explanations in a pruning phase. The theory is formalised in a general categorical setting: constraining the system by the observation corresponds to taking a product in the chosen category of graph grammars, so that the correctness of the procedure can be proved by using the fact that the unfolding is a right adjoint and thus it preserves products. The theory should hence be easily applicable to a wide class of system models, including graph grammars and Petri nets
A Novel Graph-Based Modelling Approach for Reducing Complexity in Model-Based Systems Engineering Environment
Field of systems engineering (SE) is developing rapidly and becoming more complex, where multiple issues arise such as overcomplexity, lack of communication or understanding of the design process on different stages of its lifecycle. Model-based systems engineering (MBSE) has been introduced to overcome the communication issues and reduce systems complexity. A novel approach for modelling interactions is proposed to enhance the existing MBSE methodologies and further address the identified challenges. The approach is based on graph theory, where pre-defined rules and relationships are substituted and reorganised dynamically with graphical constructs.
A framework for reducing complexity and improving logic modelling in MBSE with metagraph object-oriented approach is presented. This framework is tested in use cases from literature, where the model-based systems approach is applied to design an automobile system to match the acceleration requirements, and to improve a CubeSat nanosatellite communication subsystem. Through the use case scenarios, it has been proven that the methodology framework meets all the identified functional and design requirements and achieves the aim of the research.
This work may be viewed as a step forward towards more consistent and automatic modelling of interactions among subsystems and components in MBSE. Automation techniques have multiple applications in systems engineering field as engineers always aim to produce higher quality and cost-effective products in less time and that is achieved by integrating knowledge on every stage of a development lifecycle. In addition to those advantages for SE field, the research provides basis for potential research proposals for future work in various engineering fields such as knowledge based engineering or virtual engineering
String Diagrams for -calculi and Functional Computation
This tutorial gives an advanced introduction to string diagrams and graph
languages for higher-order computation. The subject matter develops in a
principled way, starting from the two dimensional syntax of key categorical
concepts such as functors, adjunctions, and strictification, and leading up to
Cartesian Closed Categories, the core mathematical model of the lambda calculus
and of functional programming languages. This methodology inverts the usual
approach of proceeding from syntax to a categorical interpretation, by
rationally reconstructing a syntax from the categorical model. The result is a
graph syntax -- more precisely, a hierarchical hypergraph syntax -- which in
many ways is shown to be an improvement over the conventional linear term
syntax. The rest of the tutorial focuses on applications of interest to
programming languages: operational semantics, general frameworks for type
inference, and complex whole-program transformations such as closure conversion
and automatic differentiation
Rewriting modulo symmetric monoidal structure
String diagrams are a powerful and intuitive graphical syntax for terms of symmetric monoidal categories (SMCs). They find many applications in computer science and are becoming increasingly relevant in other fields such as physics and control theory.
An important role in many such approaches is played by equational theories of diagrams, typically oriented and applied as rewrite rules. This paper lays a comprehensive foundation for this form of rewriting. We interpret diagrams combinatorially as typed hypergraphs and establish the precise correspondence between diagram rewriting modulo the laws of SMCs on the one hand and double pushout (DPO) rewriting of hypergraphs, subject to a soundness condition called convexity, on the other. This result rests on a more general characterisation theorem in which we show that typed hypergraph DPO rewriting amounts to diagram rewriting modulo the laws of SMCs with a chosen special Frobenius structure.
We illustrate our approach with a proof of termination for the theory of non-commutative bimonoids
Rewriting modulo symmetric monoidal structure
String diagrams are a powerful and intuitive graphical syntax for terms of symmetric monoidal categories (SMCs). They find many applications in computer science and are becoming increasingly relevant in other fields such as physics and control theory.An important role in many such approaches is played by equational theories of diagrams, typically oriented and applied as rewrite rules. This paper lays a comprehensive foundation for this form of rewriting. We interpret diagrams combinatorially as typed hypergraphs and establish the precise correspondence between diagram rewriting modulo the laws of SMCs on the one hand and double pushout (DPO) rewriting of hypergraphs, subject to a soundness condition called convexity, on the other. This result rests on a more general characterisation theorem in which we show that typed hypergraph DPO rewriting amounts to diagram rewriting modulo the laws of SMCs with a chosen special Frobenius structure.We illustrate our approach with a proof of termination for the theory of non-commutative bimonoids
Semantics and Verification of UML Activity Diagrams for Workflow Modelling
This thesis defines a formal semantics for UML activity diagrams that is suitable for workflow modelling. The semantics allows verification of functional requirements using model checking. Since a workflow specification prescribes how a workflow system behaves, the semantics is defined and motivated in terms of workflow systems. As workflow systems are reactive and coordinate activities, the defined semantics reflects these aspects. In fact, two formal semantics are defined, which are completely different. Both semantics are defined directly in terms of activity diagrams and not by a mapping of activity diagrams to some existing formal notation. The requirements-level semantics, based on the Statemate semantics of statecharts, assumes that workflow systems are infinitely fast w.r.t. their environment and react immediately to input events (this assumption is called the perfect synchrony hypothesis). The implementation-level semantics, based on the UML semantics of statecharts, does not make this assumption. Due to the perfect synchrony hypothesis, the requirements-level semantics is unrealistic, but easy to use for verification. On the other hand, the implementation-level semantics is realistic, but difficult to use for verification. A class of activity diagrams and a class of functional requirements is identified for which the outcome of the verification does not depend upon the particular semantics being used, i.e., both semantics give the same result. For such activity diagrams and such functional requirements, the requirements-level semantics is as realistic as the implementation-level semantics, even though the requirements-level semantics makes the perfect synchrony hypothesis. The requirements-level semantics has been implemented in a verification tool. The tool interfaces with a model checker by translating an activity diagram into an input for a model checker according to the requirements-level semantics. The model checker checks the desired functional requirement against the input model. If the model checker returns a counterexample, the tool translates this counterexample back into the activity diagram by highlighting a path corresponding to the counterexample. The tool supports verification of workflow models that have event-driven behaviour, data, real time, and loops. Only model checkers supporting strong fairness model checking turn out to be useful. The feasibility of the approach is demonstrated by using the tool to verify some real-life workflow models
- âŠ