189 research outputs found

    Another incompleteness result for Hoare's logic

    Get PDF
    It is known (Bergstra and Tucker (1982) J. Comput. System Sci. 25, 217) that if the Hoare rules are complete for a first-order structure %plane1D;49C;, then the set of partial correctness assertions true over %plane1D;49C; is recursive in the first-order theory of %plane1D;49C;. We show that the converse is not true. Namely, there is a first-order structure %plane1D;49E; such that the set of partial correctness assertions true over %plane1D;49E; is recursive in the theory of %plane1D;49E;, but the Hoare rules are not complete for %plane1D;49E;

    Ten years of Hoare s logic, a survey, part I

    Get PDF

    Process expressions and Hoare's logic: showing an irreconcilability of context-free recursion with Scott's induction rule

    Get PDF
    AbstractIn this paper processes specifiable over a non-uniform language are considered. The language contains constants for a set of atomic actions and constructs for alternative and sequential composition. Furthermore it provides a mechanism for specifying processes recursively (including nested recursion). We consider processes as having a state: atomic actions are to be specified in terms of observable behaviour (relative to initial states) and state transformations. Any process having some initial state can be associated with a transition system representing all possible courses of execution. This leads to an operational semantics in the style of Plotkin. The partial correctness assertion {α} p{β} expresses that for any transition system associated with the process p and having some initial state satisfying α, its final states representing successful execution satisfy β. A logic in the style of Hoare, containing a proof system for deriving partial correctness assertions, is presented. This proof system is sound and relatively complete, so any partial correctness assertion can be evaluated by investigating its derivability. Included is a short discussion about the extension of the process language with “guarded recursion”. It appears that such an extension violates the completeness of the Hoare logic. This reveals a remarkable property of Scott's induction rule in the context of non-determinism: only regular recursion allows a completeness result

    EOS: A project to investigate the design and construction of real-time distributed embedded operating systems

    Get PDF
    The EOS project is investigating the design and construction of a family of real-time distributed embedded operating systems for reliable, distributed aerospace applications. Using the real-time programming techniques developed in co-operation with NASA in earlier research, the project staff is building a kernel for a multiple processor networked system. The first six months of the grant included a study of scheduling in an object-oriented system, the design philosophy of the kernel, and the architectural overview of the operating system. In this report, the operating system and kernel concepts are described. An environment for the experiments has been built and several of the key concepts of the system have been prototyped. The kernel and operating system is intended to support future experimental studies in multiprocessing, load-balancing, routing, software fault-tolerance, distributed data base design, and real-time processing

    A logic for one-pass, one-attributed grammars

    Get PDF

    Assertional data reification proofs : surveys and perspective

    Get PDF

    Process expressions and Hoare's logic

    Get PDF

    A group membership algorithm with a practical specification

    Get PDF
    Presents a solvable specification and gives an algorithm for the group membership problem in asynchronous systems with crash failures. Our specification requires processes to maintain a consistent history in their sequences of views. This allows processes to order failures and recoveries in time and simplifies the programming of high level applications. Previous work has proven that the group membership problem cannot be solved in asynchronous systems with crash failures. We circumvent this impossibility result building a weaker, yet nontrivial specification. We show that our solution is an improvement upon previous attempts to solve this problem using a weaker specification. We also relate our solution to other methods and give a classification of progress properties that can be achieved under different models
    corecore