680 research outputs found

    Finite Countermodel Based Verification for Program Transformation (A Case Study)

    Get PDF
    Both automatic program verification and program transformation are based on program analysis. In the past decade a number of approaches using various automatic general-purpose program transformation techniques (partial deduction, specialization, supercompilation) for verification of unreachability properties of computing systems were introduced and demonstrated. On the other hand, the semantics based unfold-fold program transformation methods pose themselves diverse kinds of reachability tasks and try to solve them, aiming at improving the semantics tree of the program being transformed. That means some general-purpose verification methods may be used for strengthening program transformation techniques. This paper considers the question how finite countermodels for safety verification method might be used in Turchin's supercompilation method. We extract a number of supercompilation sub-algorithms trying to solve reachability problems and demonstrate use of an external countermodel finder for solving some of the problems.Comment: In Proceedings VPT 2015, arXiv:1512.0221

    On external presentations of infinite graphs

    Get PDF
    The vertices of a finite state system are usually a subset of the natural numbers. Most algorithms relative to these systems only use this fact to select vertices. For infinite state systems, however, the situation is different: in particular, for such systems having a finite description, each state of the system is a configuration of some machine. Then most algorithmic approaches rely on the structure of these configurations. Such characterisations are said internal. In order to apply algorithms detecting a structural property (like identifying connected components) one may have first to transform the system in order to fit the description needed for the algorithm. The problem of internal characterisation is that it hides structural properties, and each solution becomes ad hoc relatively to the form of the configurations. On the contrary, external characterisations avoid explicit naming of the vertices. Such characterisation are mostly defined via graph transformations. In this paper we present two kind of external characterisations: deterministic graph rewriting, which in turn characterise regular graphs, deterministic context-free languages, and rational graphs. Inverse substitution from a generator (like the complete binary tree) provides characterisation for prefix-recognizable graphs, the Caucal Hierarchy and rational graphs. We illustrate how these characterisation provide an efficient tool for the representation of infinite state systems

    Topological finiteness properties of monoids. Part 1: Foundations

    Full text link
    We initiate the study of higher dimensional topological finiteness properties of monoids. This is done by developing the theory of monoids acting on CW complexes. For this we establish the foundations of MM-equivariant homotopy theory where MM is a discrete monoid. For projective MM-CW complexes we prove several fundamental results such as the homotopy extension and lifting property, which we use to prove the MM-equivariant Whitehead theorems. We define a left equivariant classifying space as a contractible projective MM-CW complex. We prove that such a space is unique up to MM-homotopy equivalence and give a canonical model for such a space via the nerve of the right Cayley graph category of the monoid. The topological finiteness conditions left-Fn\mathrm{F}_n and left geometric dimension are then defined for monoids in terms of existence of a left equivariant classifying space satisfying appropriate finiteness properties. We also introduce the bilateral notion of MM-equivariant classifying space, proving uniqueness and giving a canonical model via the nerve of the two-sided Cayley graph category, and we define the associated finiteness properties bi-Fn\mathrm{F}_n and geometric dimension. We explore the connections between all of the these topological finiteness properties and several well-studied homological finiteness properties of monoids which are important in the theory of string rewriting systems, including FPn\mathrm{FP}_n, cohomological dimension, and Hochschild cohomological dimension. We also develop the corresponding theory of MM-equivariant collapsing schemes (that is, MM-equivariant discrete Morse theory), and among other things apply it to give topological proofs of results of Anick, Squier and Kobayashi that monoids which admit presentations by complete rewriting systems are left-, right- and bi-FP∞\mathrm{FP}_\infty.Comment: 59 pages, 1 figur

    Compositions with superlinear deterministic top-down tree transformations

    Get PDF
    AbstractWe denote the class of deterministic top-down tree transformations by DT and the class of homomorphism tree transformations by HOM. The sign of a class with the prefix l- (sl-, nd-) denotes the linear (superlinear, nondeleting) subclass of that class. We fix the set M = HOM,sl-DT, l-DT, nd-DT, DT of tree transformation classes. Then consider the monoid [M] of all tree transformation classes of the form X1 O … OXm, where O is the operation composition, m ⩾ 0 and the Xi's are elements of M. As the main result of the paper, we give an effective description of the monoid [M] with respect to inclusion. This means that we present an algorithm which can decide, given arbitrary two elements of the monoid, whether some inclusion, equality or incomparability holds between them

    The Sketch of a Polymorphic Symphony

    Full text link
    In previous work, we have introduced functional strategies, that is, first-class generic functions that can traverse into terms of any type while mixing uniform and type-specific behaviour. In the present paper, we give a detailed description of one particular Haskell-based model of functional strategies. This model is characterised as follows. Firstly, we employ first-class polymorphism as a form of second-order polymorphism as for the mere types of functional strategies. Secondly, we use an encoding scheme of run-time type case for mixing uniform and type-specific behaviour. Thirdly, we base all traversal on a fundamental combinator for folding over constructor applications. Using this model, we capture common strategic traversal schemes in a highly parameterised style. We study two original forms of parameterisation. Firstly, we design parameters for the specific control-flow, data-flow and traversal characteristics of more concrete traversal schemes. Secondly, we use overloading to postpone commitment to a specific type scheme of traversal. The resulting portfolio of traversal schemes can be regarded as a challenging benchmark for setups for typed generic programming. The way we develop the model and the suite of traversal schemes, it becomes clear that parameterised + typed strategic programming is best viewed as a potent combination of certain bits of parametric, intensional, polytypic, and ad-hoc polymorphism
    • …
    corecore