Results 1  10
of
81
Term Graph Rewriting
, 1998
"... Term graph rewriting is concerned with the representation of functional expressions as graphs, and the evaluation of these expressions by rulebased graph transformation. Representing expressions as graphs allows to share common subexpressions, improving the efficiency of term rewriting in space ..."
Abstract

Cited by 72 (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 rulebased 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 KComponent Architecture MetaModel for SelfAdaptive 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 50 (6 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 metamodel that realises a dynamic software architecture. The architecture metamodel 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 43 (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:
Tutorial introduction to graph transformation: A software engineering perspective
 In Proc. of the First International Conference on Graph Transformation (ICGT 2002
, 2002
"... ..."
A Graph Transformation Approach to Software Architecture Reconfiguration
 Joint APPLIGRAPH/GETGRATS Workshop on Graph Transformation Systems (GraTra’2000
, 2000
"... We use the doublepushout graph transformation approach for the specication of runtime reconguration of software architectures. ..."
Abstract

Cited by 35 (1 self)
 Add to MetaCart
We use the doublepushout graph transformation approach for the specication of runtime reconguration of software architectures.
Adhesive categories
, 2004
"... Abstract. We introduce adhesive categories, which are categories with structure ensuring that pushouts along monomorphisms are wellbehaved. Many types of graphical structures used in computer science are shown to be examples of adhesive categories. Doublepushout graph rewriting generalises well to ..."
Abstract

Cited by 35 (7 self)
 Add to MetaCart
Abstract. We introduce adhesive categories, which are categories with structure ensuring that pushouts along monomorphisms are wellbehaved. Many types of graphical structures used in computer science are shown to be examples of adhesive categories. Doublepushout graph rewriting generalises well to rewriting on arbitrary adhesive categories.
ADHESIVE AND QUASIADHESIVE CATEGORIES
 THEORETICAL INFORMATICS AND APPLICATIONS
, 1999
"... We introduce adhesive categories, which are categories with structure ensuring that pushouts along monomorphisms are wellbehaved, 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 35 (3 self)
 Add to MetaCart
We introduce adhesive categories, which are categories with structure ensuring that pushouts along monomorphisms are wellbehaved, 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. Doublepushout graph rewriting generalizes well to rewriting on arbitrary adhesive and quasiadhesive categories.
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 syntaxdirected editing or freehand 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 33 (13 self)
 Add to MetaCart
Diagram editors which are tailored to a specific diagram language typically support either syntaxdirected editing or freehand 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 syntaxdirected 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
Definition and validation of model transformations
 SOFTWARE AND SYSTEMS MODELING
, 2004
"... Like any piece of software, model transformations must be validated to ensure their usefulness for the intended application. Properties to be validated include syntactic correctness as well as general requirements such as termination and confluence (i.e., the existence of a unique result of the tra ..."
Abstract

Cited by 30 (4 self)
 Add to MetaCart
Like any piece of software, model transformations must be validated to ensure their usefulness for the intended application. Properties to be validated include syntactic correctness as well as general requirements such as termination and confluence (i.e., the existence of a unique result of the transformation for every valid input). This paper introduces the idea of systematic validation and then focusses on validation of syntactic correctness for rulebased model transformations.
GrGen: A fast SPObased graph rewriting tool
 GRAPH TRANSFORMATIONS  ICGT 2006. LECTURE NOTES IN COMPUTER SCIENCE, SPRINGER (2006) 383 – 397
, 2006
"... Graph rewriting is a powerful technique that requires graph pattern matching, which is an NPcomplete problem. We present GrGen, a generative programming system for graph rewriting, which applies heuristic optimizations. According to Varró’s benchmark it is at least one order of magnitude faster th ..."
Abstract

Cited by 30 (7 self)
 Add to MetaCart
Graph rewriting is a powerful technique that requires graph pattern matching, which is an NPcomplete problem. We present GrGen, a generative programming system for graph rewriting, which applies heuristic optimizations. According to Varró’s benchmark it is at least one order of magnitude faster than any other tool known to us. Our graph rewriting tool implements the wellfounded singlepushout approach. We define the notion of search plans to represent different matching strategies and equip these search plans with a cost model, taking the present host graph into account. The task of selecting a good search plan is then viewed as an optimization problem. For the ease of use, GrGen features an expressive specification language and generates program code with a convenient interface.