Transformational Design Of Digital systems based on graph rewriting (original) (raw)
Related papers
A graph rewriting approach for transformational design of digital systems
Proceedings of EUROMICRO 96. 22nd Euromicro Conference. Beyond 2000: Hardware and Software Design Strategies, 1995
Transformational design integrates design and verification. It combines "correctness by construction" and design creativity by the use of pre-proven behaviour preserving transformations as design steps. The formal aspects of this methodology are hidden in the transformations. A constraint is the availability of a design representation with a compositional formal semantics. Graph representations are useful design representations because of their visualisation of design information. In this paper graph rewriting theory, as developed in the last twenty years in mathematics, is shown to be a useful basis for a formal framework for transformational design. The semantic aspects of graphs which are no part of graph rewriting theory are included by the use of attributed graphs. The used attribute algebra, table algebra, is a relation algebra derived from database theory. The combination of graph rewriting, table algebra and transformational design is new.
Transformational Design Of Digital Systems Related To Graph Rewriting
. For high-level synthesis transformational design is a promising design methodology which combines correctness by construction and interactive design. In this design methodology the design steps are behaviour preserving transformations of one design representation into another. Because of the importance of visualisation of design-information several kinds of graphs are used as design representations. Transformational design based on graph representation is closely related to rewriting of (sub)graphs. In this paper the formal aspects of transformational design are related to graph rewriting theory. It is shown how a formal framework for transformational design can benefit from graph rewriting theory. Especially preconditions for the application of transformation rules can be based on generally formulated preconditions from graph rewriting theory. Moreover a general graph concept unifies graph representations and a formal framework for transformational design based on this general gr...
. Transformational design is a promising design methodology which combines correctness by construction and interactive design. In this design methodology the design steps are behaviour preserving transformations of one design representation into another. The representations used in transformational design need to have formal semantical models in order to prove the correctness, the behaviour preserving characteristics, of transformations. This paper presents a formal semantical model for flow graphs based on a relational algebra. Flow graph representations have been shown to be useful in high level synthesis [1]. Together with the presented semantical model, flow graphs are also useful in transformational design. 1. INTRODUCTION Transformational design could be a solution for the correctness problem in digital system design. One way to guarantee the correctness of a design is verifying the result of each design step afterwards. Because, of the increased complexity of digital designs ...
Using graph transformation systems to specify and verify data abstractions
2008
Abstract This paper proposes an approach for the specification of the behavior of software components that implement data abstractions. By generalizing the approach of behavior models using graph transformation, we provide a concise specification for data abstractions that describes the relationship between the internal state, represented in a canonical form, and the observers of the component. Graph transformation also supports the generation of behavior models that are amenable to verification.
A logic for analyzing abstractions of graph transformation systems
2003
A technique for approximating the behaviour of graph transformation systems (GTSs) by means of Petri net-like structures has been recently defined in the literature. In this paper we introduce a monadic second-order logic over graphs expressive enough to characterise typical graph properties, and we show how its formulae can be effectively verified.
Graph transformation for specification and programming
Science of Computer Programming, 1999
The framework of graph transformation combines the potentials and advantages of both, graphs and rules, to a single computational paradigm. In this paper we present some recent developments in applying graph transformation as a rule-based framework for the specification and development of systems, languages, and tools. After reviewing the basic features of graph transformation, we discuss a selection of applications, including the evaluation of functional expressions, the specification of an interactive graphical tool, an example specification for abstract data types, and the definition of a visual database query language. The case studies indicate the need for suitable structuring principles which are independent of a particular graph transformation approach. To this end, we present the concept of a transformation unit, which allows systematic and structured specification and programming based on graph transformation.
Structured Operational Semantics for Graph Rewriting
Electronic Proceedings in Theoretical Computer Science, 2011
Process calculi and graph transformation systems provide models of reactive systems with labelled transition semantics (LTS). While the semantics for process calculi is compositional, this is not the case for graph transformation systems, in general. Hence, the goal of this article is to obtain a compositional semantics for graph transformation system in analogy to the structural operational semantics (SOS) for Milner's Calculus of Communicating Systems (CCS).
Reusable Idioms and Patterns in Graph Transformation Languages
Electronic Notes in Theoretical Computer Science, 2004
Software engineering tools based on Graph Transformation techniques are becoming available, but their practical applicability is somewhat reduced by the lack of idioms and design patterns. Idioms and design patterns provide prototypical solutions for recurring design problems in software engineering, but their use can be easily extended into software development using graph transformation systems. In this paper we briefly present a simple graph transformation language: GREAT, and show how typical design problems that arise in the context of model transformations can be solved using its constructs. These solutions are similar to software design patterns, and intend to serve as the starting point for a more complete collection.
Formalizing architectural refactorings as graph transformation systems
… and Parallel/Distributed Computing, 2005 and …, 2005
Architectural refactorings are an appropriate technique for the development and improvement of architectural specifications. However, these refactorings are often applied manually. This paper presents a mapping of an architectural specification language to a hypergraph-based data structure. Thus, architectural refactorings can be formalized as hypergraph transformation rules and can be applied automatically.
GRACE as a unifying approach to graph-transformation-based specification
Electronic Notes in Theoretical Computer Science, 2001
In this paper, we sketch some basic ideas and features of the graph-transformationbased specification language GRACE. The aim of GRACE is to support the modeling of a wide spectrum of graph and graphical processes in a structured and uniform way including visualization and verification.