3 research outputs found
Evolution of negative application conditions on second-order graph rewriting
Graph grammars are a suitable formalism to modeling computational systems. This formalism is based on rules and data-driven transformations capable of simulating real systems, rules have application conditions and post conditions that can change the system state. Moreover the use of graphs allows an intuitive visual interface essential for the modeler. It is well known that software systems are always evolving, evolutions may range from minor refactorings or bug fixes to major interface changes or new architectural design. The formalization of these evolution processes in graph grammars is done via higher-order principles, which allows programmed higher-level rules to induce modifications on lower-level rules, the system rules. In this work, we extend the current framework of higher-order transformations for graph grammars in order to allow the evolution of rules with negative application conditions. Besides this extension, we provide the first working implementation of the whole framework of higher-order graph grammars in the Verigraph tool enabling the practical usage of this techniques.Gramática de grafos é um formalismo para modelagem de sistemas computacionais. Este formalismo é baseado em regras e transformações de dados capazes de simular sistemas reais, regras tem pré e pós condições de aplicação que podem mudar o estado do sistema. Além disso, o uso de grafos permite uma interface visual intuitiva, que é essencial para o modelador. Se sabe que sistemas computacionais estão sempre evoluindo, essas evoluções podem varias de pequenas refatorações ou correções de problemas, até mudanças maiores em interfaces ou nova arquitetura. A formalização deste processo de evolução em gramáticas de grafos é feita com base em regras de segunda ordem, que possibilitam induzir modificações nas regras da gramática de primeira ordem. Neste trabalho, nós estendemos o framework atual de gramáticas de grafos de segunda ordem de forma a permitir evolução de regras com condições negativas de aplicação. Além desta extensão, nós provemos a primeira implementação do framework de gramáticas de grafos de segunda ordem na ferramenta Verigraph, possibilitando assim o uso na prática destas técnicas
Struktuurgrafiekgrammatikas
M.Sc. (Computer Science)In this thesis a study is made of graphs, graph grammars as well as grammars which represent structures in three dimensions. Structure graphs are defined for the first time in this thesis. The definition thereof is based upon that of ordinary graphs, they differ however in that certain geometric properties are assigned to the arcs of the graphs, Two different types of structure graph grammars are defined. Structure graph grammars derive structure graphs as language. The geometric properties of the structure graphs appear as context's in the grammars. A study is mode of the properties of· the structure graph grammars. A comparison between the two types of grammars is also given. The properties of the languages derived by each are also discussed. Existing computer systems which model chemical processes are also discussed. Finally a discussion is given of a software system which was developed as part of this study
Recommended from our members
The automated inference of tree system
Tree systems are used in syntactic pattern recognition for
describing two-dimensional patterns. We extend results on tree
automata with the introduction of the subtree-invariant equivalence
relation R. R relates two trees when the appearance of one implies the
appearance of the other in similar trees. A new state minimizing
algorithm for tree automata is formed using R. We also determine a
bound for Brainerd's minimization method.
We introduce the Group Unordered Tree Automaton (GUTA) which
accepts all orientations of open-line patterns described using directed
arc primitives. The specification of a GUTA includes an unordered
tree automaton M, which only accepts a standard orientation of a given
class of open-line pictures, and a transformation group, which describes
how the primitives transform under rotational shifts. The GUTA
performs all orientational parses in parallel, reports all successful
transformations and operates in the same time complexity as M. The
GUTA is much easier to specify than the equivalent non-decomposed
unordered tree automaton.
The problem of automating the design of unordered and ordered
tree automata (grammars) is studied both on a system directed and on a
highly interactive level. The system directed method uses Pao's lattice
technique to infer tree automata (grammars) from structurally
complete samples. It is shown that the method can infer any context-free
grammar when provided with skeletal structure descriptions. This
extends the results of Pao which only deal with proper subclasses of
context-free grammars.
The highly interactive inference system is based on the use of
tree derivatives, also introduced in this thesis, for determining
automaton states and possible state merging. Tree derivatives are
sets of tree forms derived by replacing selected subtrees with marked
nodes. The derivative sets are used to determine subtree-invariant
equivalence relations which characterize tree automata. A minimization
algorithm based on tree derivatives is given. We use tree derivatives
to prove that a tree automaton with n states can be fully
characterized by the set of trees that it accepts of depth at most 2n.
The inference method compares tree derivative sets and infers
subtree-invariant equivalence relations. A relation is inferred if
there is sufficient overlap between the derivative sets. Our method
was compared to other tree automata inference schemes, including
Crespi-Reghizzi's algorithm. We have shown that our method is applicable
to the entire class of context-free grammars and requires a
smaller sample than Crespi-Reghizzi's algorithm which can only infer a
proper subclass of operator precedence grammars. Furthermore, it
appears more general than the other inference systems for tree automata
or grammars