126 research outputs found

    Parsing of Adaptive Star Grammars

    Get PDF
    In a recent paper, adaptive star grammars have been proposed as an extension of node and hyperedge replacement grammars. A rule in an adaptive star grammar is actually a rule schema which, via the so-called cloning operation, yields a potentially infinite number of concrete rules. Adaptive star grammars are motivated by application areas such as modeling and refactoring object-oriented programs, and they are more powerful than node and hyperedge replacement grammars by this mechanism. It has been shown that the membership problem is decidable for a reasonably large subclass of adaptive star grammars, however no parser has been proposed. This paper describes such a parser for this subclass motivated by the well-known string parser by Cocke, Younger, and Kasami

    Graph-Based Shape Analysis Beyond Context-Freeness

    Full text link
    We develop a shape analysis for reasoning about relational properties of data structures. Both the concrete and the abstract domain are represented by hypergraphs. The analysis is parameterized by user-supplied indexed graph grammars to guide concretization and abstraction. This novel extension of context-free graph grammars is powerful enough to model complex data structures such as balanced binary trees with parent pointers, while preserving most desirable properties of context-free graph grammars. One strength of our analysis is that no artifacts apart from grammars are required from the user; it thus offers a high degree of automation. We implemented our analysis and successfully applied it to various programs manipulating AVL trees, (doubly-linked) lists, and combinations of both

    Decidability and Expressiveness of Finitely Representable Recognizable Graph Languages

    Get PDF
    Recognizable graph languages are a generalization of regular (word) languages to graphs (as well as arbitrary categories). Recently automaton functors were proposed as acceptors of recognizable graph languages. They promise to be a useful tool for the verification of dynamic systems, for example for invariant checking. Since automaton functors may contain an infinite number of finite state sets, one must restrict to finitely representable ones for implementation reasons. In this paper we take into account two such finite representations: primitive recursive automaton functors - in which the automaton functor can be constructed on-the-fly by a primitive recursive function -, and bounded automaton functors - in which the interface size of the graphs (cf. path width) is bounded, so that the automaton functor can be explicitly represented. We show that the language classes of both kinds of automaton functor are closed under boolean operations, and compare the expressiveness of the two paradigms with hyperedge replacement grammars. In addition we show that the emptiness and equivalence problem are decidable for bounded automaton functors, but undecidable for primitive recursive automaton functors

    Towards Alternating Automata for Graph Languages

    Get PDF
    In this paper we introduce alternating automata for languages of arrows of an arbitrary category, and as an instantiation thereof alternating automata for graph languages. We study some of their closure properties and compare them, with respect to expressiveness, to other methods for describing graph languages. We show, by providing several examples, that many graph properties (of graphs of bounded path width) can be naturally expressed as alternating automata

    Graph Rewriting with Contextual Refinement

    Get PDF
    In the standard theory of graph transformation, a rule modifies only subgraphs of constant size and fixed shape.  The rules supported by the graph-rewriting tool GrGen are far more expressive: they may modify subgraphs of unbounded size and variable shape. Therefore properties like termination and confluence cannot be analyzed as for the standard case. In order to lift such results, we formalize the outstanding feature of GrGen rules by using plain rules on two levels: schemata} are rules with variables; they are refined with meta-rules, which are based on contextual hyperedge replacement, before they are used for rewriting.We show that every rule based on single pushouts, on neighborhood-controlled embedding, or on variable substitution can be modeled by a schema with appropriate meta-rules. It turns out that the question whether schemata may have overlapping refinements is not decidable

    Graph Isomorphism in Quasipolynomial Time Parameterized by Treewidth

    Get PDF
    We extend Babai's quasipolynomial-time graph isomorphism test (STOC 2016) and develop a quasipolynomial-time algorithm for the multiple-coset isomorphism problem. The algorithm for the multiple-coset isomorphism problem allows to exploit graph decompositions of the given input graphs within Babai's group-theoretic framework. We use it to develop a graph isomorphism test that runs in time npolylog(k)n^{\operatorname{polylog}(k)} where nn is the number of vertices and kk is the minimum treewidth of the given graphs and polylog(k)\operatorname{polylog}(k) is some polynomial in log(k)\operatorname{log}(k). Our result generalizes Babai's quasipolynomial-time graph isomorphism test.Comment: 52 pages, 1 figur

    Definability equals recognizability for graphs of bounded treewidth

    Full text link
    We prove a conjecture of Courcelle, which states that a graph property is definable in MSO with modular counting predicates on graphs of constant treewidth if, and only if it is recognizable in the following sense: constant-width tree decompositions of graphs satisfying the property can be recognized by tree automata. While the forward implication is a classic fact known as Courcelle's theorem, the converse direction remained openComment: 21 pages, an extended abstract will appear in the proceedings of LICS 201
    corecore