Results 1 - 10
of
71
Term Graph Rewriting
, 1998
"... Term graph rewriting is concerned with the representation of functional expressions as graphs, and the evaluation of these expressions by rule-based graph transformation. Representing expressions as graphs allows to share common subexpressions, improving the efficiency of term rewriting in space ..."
Abstract
-
Cited by 58 (5 self)
- Add to MetaCart
Term graph rewriting is concerned with the representation of functional expressions as graphs, and the evaluation of these expressions by rule-based graph transformation. Representing expressions as graphs allows to share common subexpressions, improving the efficiency of term rewriting in space and time. Besides efficiency, term graph rewriting differs from term rewriting in properties like termination and confluence. This paper is a survey of (acyclic) term graph rewriting, where emphasis is given to the relations between term and term graph rewriting. We focus on soundness of term graph rewriting with respect to term rewriting, on completeness for proving validity of equations and for computing term normal forms, on termination and confluence, and on term graph narrowing. Keywords: term graph rewriting, termination, confluence, term rewriting, narrowing Classification: 68Q05, 68Q40, 68Q42 (AMS '91); D.1.1, F.1.1, F.4.2, I.1.1 (CR '98) Note: This paper will appear in H...
The K-Component Architecture Meta-Model for Self-Adaptive Software
- In Akinori Yonezawa and Satoshi Matsuoka, editors, Proceedings of 3rd International Conference on Metalevel Architectures and Separation of Crosscutting Concerns (Reflection’2001), LNCS 2192
, 2001
"... Software architectures have recently emerged as a level of design concerned with specifying the overall structure of a system. Traditionally, software architectures only provide static descriptions of the participants and interaction structures in a system. Dynamic software architectures, however ..."
Abstract
-
Cited by 40 (5 self)
- Add to MetaCart
Software architectures have recently emerged as a level of design concerned with specifying the overall structure of a system. Traditionally, software architectures only provide static descriptions of the participants and interaction structures in a system. Dynamic software architectures, however, can be reconfigured at runtime and therefore provide support for building dynamically adaptable applications. Software architectures can be specified using architectural reflection. In this paper we introduce an architecture meta-model that realises a dynamic software architecture. The architecture meta-model reifies the configuration graph of the architecture and is automatically generated from our component definitions and implementation language sourcecode.
Shapely Hierarchical Graph Transformation
- Journal of Computer and System Sciences
, 2001
"... Diagrams can be represented by graphs, and the animation and transformation of diagrams can be modeled by graph transformation. This paper studies extensions of graphs and graph transformation that are important for programming with graphs: ..."
Abstract
-
Cited by 39 (11 self)
- Add to MetaCart
Diagrams can be represented by graphs, and the animation and transformation of diagrams can be modeled by graph transformation. This paper studies extensions of graphs and graph transformation that are important for programming with graphs:
Adhesive categories
, 2004
"... Abstract. We introduce adhesive categories, which are categories with structure ensuring that pushouts along monomorphisms are well-behaved. Many types of graphical structures used in computer science are shown to be examples of adhesive categories. Double-pushout graph rewriting generalises well to ..."
Abstract
-
Cited by 31 (7 self)
- Add to MetaCart
Abstract. We introduce adhesive categories, which are categories with structure ensuring that pushouts along monomorphisms are well-behaved. Many types of graphical structures used in computer science are shown to be examples of adhesive categories. Double-pushout graph rewriting generalises well to rewriting on arbitrary adhesive categories.
Tutorial introduction to graph transformation: A software engineering perspective
- In Proc. of the First International Conference on Graph Transformation (ICGT 2002
, 2002
"... ..."
Concepts and Realization of a Diagram Editor Generator Based on Hypergraph Transformation
- Science of Computer Programming
, 2001
"... Diagram editors which are tailored to a specific diagram language typically support either syntax-directed editing or free-hand editing, i.e., the user is either restricted to a collection of predefined editing operations, or he is not restricted at all, but misses the convenience of such complex ed ..."
Abstract
-
Cited by 29 (11 self)
- Add to MetaCart
Diagram editors which are tailored to a specific diagram language typically support either syntax-directed editing or free-hand editing, i.e., the user is either restricted to a collection of predefined editing operations, or he is not restricted at all, but misses the convenience of such complex editing operations. This paper describes DiaGen, a rapid prototyping tool for creating diagram editors which support both modes in order to get their combined advantages. Created editors use hypergraphs as an internal diagram model and hypergraph parsers for syntactic analysis whereas syntax-directed editing is realized by programmed hypergraph transformation of these internal hypergraphs. This approach has proven to be powerful and general in the sense that it supports quick prototyping of diagram editors and does not restrict the class of diagram languages which it can be applied to. Key words: Diagram editors, rapid prototyping, hypergraph grammar, hypergraph transformation 1
ADHESIVE AND QUASIADHESIVE CATEGORIES
- THEORETICAL INFORMATICS AND APPLICATIONS
, 1999
"... We introduce adhesive categories, which are categories with structure ensuring that pushouts along monomorphisms are well-behaved, as well as quasiadhesive categories which restrict attention to regular monomorphisms. Many examples of graphical structures used in computer science are shown to be ex ..."
Abstract
-
Cited by 27 (3 self)
- Add to MetaCart
We introduce adhesive categories, which are categories with structure ensuring that pushouts along monomorphisms are well-behaved, as well as quasiadhesive categories which restrict attention to regular monomorphisms. Many examples of graphical structures used in computer science are shown to be examples of adhesive and quasiadhesive categories. Double-pushout graph rewriting generalizes well to rewriting on arbitrary adhesive and quasiadhesive categories.
A Graph Transformation Approach to Software Architecture Reconfiguration
- Joint APPLIGRAPH/GETGRATS Workshop on Graph Transformation Systems (GraTra’2000
, 2000
"... We use the double-pushout graph transformation approach for the specication of run-time reconguration of software architectures. ..."
Abstract
-
Cited by 27 (1 self)
- Add to MetaCart
We use the double-pushout graph transformation approach for the specication of run-time reconguration of software architectures.
Deriving Bisimulation Congruences using 2-categories
, 2003
"... We introduce G-relative-pushouts (GRPO) which are a 2-categorical generalisation of relative-pushouts (RPO). They are suitable for deriving labelled transition systems (LTS) for process calculi where terms are viewed modulo structural congruence. We develop their basic properties and show that bisim ..."
Abstract
-
Cited by 26 (10 self)
- Add to MetaCart
We introduce G-relative-pushouts (GRPO) which are a 2-categorical generalisation of relative-pushouts (RPO). They are suitable for deriving labelled transition systems (LTS) for process calculi where terms are viewed modulo structural congruence. We develop their basic properties and show that bisimulation on the LTS derived via GRPOs is a congruence, provided that su#ciently many GRPOs exist. The theory is applied to a simple subset of CCS and the resulting LTS is compared to one derived using a procedure proposed by Sewell.
Distributed Graph Transformation Units
- International Journal on Software Engineering and Knowledge Engineering
, 2002
"... Transformation units are a structuring principle for graph transformation systems. In this paper we introduce distributed transformation units that can be used to model distributed graph transformation systems. A distributed transformation unit consists of a set of local transformation units which a ..."
Abstract
-
Cited by 24 (21 self)
- Add to MetaCart
Transformation units are a structuring principle for graph transformation systems. In this paper we introduce distributed transformation units that can be used to model distributed graph transformation systems. A distributed transformation unit consists of a set of local transformation units which are connected via interface units. Semantically, a distributed transformation unit transforms distributed graphs consisting of a set of local graphs connected via interface graphs, in such a way that every local graph with its interfaces is transformed by a local transformation unit. Since the interface graphs can be modified concurrently by various local transformation units we introduce a concurrent semantics of transformation units. The presented concepts are illustrated with a running example of a simple game where two different actors access a common game board randomly.

