356 research outputs found

    Equivalence of recursive specifications in process algebra

    Get PDF
    We define an equivalence relation on recursive specifications in process algebra that is model-independent and does not involve an explicit notion of solution. Then we extend this equivalence to the specification language mumuCRL

    Proving theorems by program transformation

    Get PDF
    In this paper we present an overview of the unfold/fold proof method, a method for proving theorems about programs, based on program transformation. As a metalanguage for specifying programs and program properties we adopt constraint logic programming (CLP), and we present a set of transformation rules (including the familiar unfolding and folding rules) which preserve the semantics of CLP programs. Then, we show how program transformation strategies can be used, similarly to theorem proving tactics, for guiding the application of the transformation rules and inferring the properties to be proved. We work out three examples: (i) the proof of predicate equivalences, applied to the verification of equality between CCS processes, (ii) the proof of first order formulas via an extension of the quantifier elimination method, and (iii) the proof of temporal properties of infinite state concurrent systems, by using a transformation strategy that performs program specialization

    A bibliography on formal languages and related topics

    Get PDF

    A bibliography on formal languages and related topics

    Get PDF

    A bibliography on formal languages and related topics

    Get PDF

    A bibliography on formal languages and related topics

    Get PDF

    Types With Extents: On Transforming and Querying Self-Referential Data-Structures (Dissertation Proposal)

    Get PDF
    The central theme of this paper is to study the properties and expressive power of data-models which use type systems with extents in order to represent recursive or self-referential data-structures. A standard type system is extended with classes which represent the finite extents of values stored in a database. Such an extended type system expresses constraints about a database instance which go beyond those normally associated with the typing of data-values, and takes on an important part of the functionality of a database schema. Recursion in data-structures is then constrained to be defined via these finite extents, so that all values in a database have a finite representation. The idea of extending a type system with such classes is not new. In particular [2] introduced a type system and data models equivalent to those used here. However such existing work focuses on the expressive power of systems which allow the dynamic creation of recursive values, while we are concerned more with the properties of querying and manipulating databases containing known static extensions of data-values

    Linearization in parallel pCRL

    Get PDF
    AbstractWe describe a linearization algorithm for parallel pCRL processes similar to the one implemented in the linearizer of the μCRL Toolset. This algorithm finds its roots in formal language theory: the `grammar' defining a process is transformed into a variant of Greibach Normal Form. Next, any such form is further reduced to linear form, i.e., to an equation that resembles a right-linear, data-parametric grammar. We aim at proving the correctness of this linearization algorithm. To this end we define an equivalence relation on recursive specifications in μCRL that is model independent and does not involve an explicit notion of solution
    corecore