33 research outputs found
NONDETERMINACY AND RECURSION VIA STACKS AND GAMES
The weakest-precondition interpretation of recursive procedures is developed for a language with a combination of unbounded demonic choice and unbounded angelic choice. This compositional formal semantics is proved to be equal to a game-theoretic operational semantics. Two intermediate stages are exploited. One step consists of unfolding the declaration of the recursive procedures. Fixpoint induction is used to prove the validity of this step. The compositional semantics of the unfolded declaration is proved to be equal to a formal semantics of a stack implementation of the recursive procedures. After an introduction to boolean two-person games, this stack semantics is shown to correspond to a game-theoretic operational semantics
Nondeterminism and Guarded Commands
The purpose of this paper is to discuss the relevance of nondeterminism in
computer science, with a special emphasis on Dijkstra's guarded commands
language.Comment: 34 pages. This is authors' version of Chapter 8 of the book K.R. Apt
and C.A.R. Hoare (editors), Edsger Wybe Dijkstra: His Life, Work, and Legacy,
volume 45 of ACM Books. ACM/Morgan & Claypool, 202
PROCESSES AND FORMALISMS FOR UNBOUNDED CHOICE
In the field of program refinement a specification construct has been proposed that does not have a standard operational interpretation. Its weakest preconditions are monotone but not necessarily conjunctive. In order to develop a corresponding calculus we introduce specification algebras. These algebras may have two choice operators: demonic choice and angelic choice. The wish to allow unbounded choice, of both modalities, leads to the question of defining and constructing completions of specification algebras. It is shown that, in general, a specification algebra need not have a completion. On the other hand, a formalism is developed that allows for any specific combination of unbounded demonic choice, unbounded angelic choice and sequential composition. The formalism is based on transition systems. It is related to the processes of De Bakker and Zucker.</p
On a New Notion of Partial Refinement
Formal specification techniques allow expressing idealized specifications,
which abstract from restrictions that may arise in implementations. However,
partial implementations are universal in software development due to practical
limitations. Our goal is to contribute to a method of program refinement that
allows for partial implementations. For programs with a normal and an
exceptional exit, we propose a new notion of partial refinement which allows an
implementation to terminate exceptionally if the desired results cannot be
achieved, provided the initial state is maintained. Partial refinement leads to
a systematic method of developing programs with exception handling.Comment: In Proceedings Refine 2013, arXiv:1305.563