A design-based model of reversible computation

  • Authors:
  • Bill Stoddart;Frank Zeyda;Robert Lynas

  • Affiliations:
  • University of Teesside, UK;University of Teesside, UK;University of Teesside, UK

  • Venue:
  • UTP'06 Proceedings of the First international conference on Unifying Theories of Programming
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

Abstract

We investigate, within the UTP framework of Hoare He Designs, the effect of seeing computation as an essentially reversible process. We describe the theoretical link between reversibility and the minimum power requirements of a computation, and we review Zuliani’s work on Reversible Probabilistic Guarded Command Language. We propose an alternative formalisation of reversible computing which accommodates backtracking. To obtain a basic backtracking language able to search for a single result we exploit the already recognised properties of non-deterministic choice, using it as provisional choice rather than implementor’s choice. We add a “prospective values” formalism which can describe programs that return all the possible results of a search, and we show how to formally describe the premature termination of such a search, a mechanism analogous to the “cut” of Prolog. An appendix describes some aspects of the wp calculus in terms of Designs, as needed for our proofs. Support for the programming structures described has been incorporated in a reversible virtual machine for i386 platforms with Posix compatibility.