5 research outputs found

    Extending the theory of Owicki and Gries with a logic of progress

    Get PDF
    This paper describes a logic of progress for concurrent programs. The logic is based on that of UNITY, molded to fit a sequential programming model. Integration of the two is achieved by using auxiliary variables in a systematic way that incorporates program counters into the program text. The rules for progress in UNITY are then modified to suit this new system. This modification is however subtle enough to allow the theory of Owicki and Gries to be used without change

    Streamlining Progress-Based Derivations of Concurrent Programs

    Get PDF
    The logic of Owicki and Gries is a well known logic for verifying safety properties of concurrent programs. Using this logic, Feijen and van Gasteren describe a method for deriving concurrent programs based on safety. In this work, we explore derivation techniques of concurrent programs using progress-based reasoning. We use a framework that combines the safety logic of Owicki and Gries, and the progress logic of UNITY. Our contributions improve the applicability of our earlier techniques by reducing the calculational overhead in the formal proofs and derivations. To demonstrate the effectiveness of our techniques, a derivation of Dekker's mutual exclusion algorithm is presented. This derivation leads to the discovery of some new and simpler variations of this famous algorithm

    Trace Semantics for the Owicki-Gries Theory Integrated with the Progress Logic from UNITY

    Get PDF
    The theory of Owicki and Gries has been used as a platform for safety-based verifcation and derivation of concurrent programs. It has also been integrated with the progress logic of UNITY which has allowed newer techniques of progress-based verifcation and derivation to be developed. However, a theoretical basis for the integrated theory has thus far been missing. In this paper, we provide a theoretical background for the logic of Owicki and Gries integrated with the logic of progress from UNITY. An operational semantics for the new framework is provided which is used to prove soundness of the progress logic

    Extending the theory of Owicki and Gries with a logic of progress

    No full text
    This paper describes a logic of progress for concurrent programs. The logic is based on that of UNITY, molded to fit a sequential programming model. Integration of the two is achieved by using auxiliary variables in a systematic way that incorporates program counters into the program text. The rules for progress in UNITY are then modified to suit this new system. This modification is however subtle enough to allow the theory of Owicki and Gries to be used without change

    Extending the theory of Owicki and Gries with a logic of progress

    No full text
    This paper describes a logic of progress for concurrent programs. The logicis based on that of UNITY, molded to fit a sequential programming model.Integration of the two is achieved by using auxiliary variables in a systematicway that incorporates program counters into the program text. The rules forprogress in UNITY are then modified to suit this new system. This modificationis however subtle enough to allow the theory of Owicki and Gries to be usedwithout change
    corecore