Reversible simulation of irreversible computation
PhysComp96 Proceedings of the fourth workshop on Physics and computation
The Equivalence Problem of Simple Programs
Journal of the ACM (JACM)
The complexity of loop programs
ACM '67 Proceedings of the 1967 22nd national conference
A reversible programming language and its invertible self-interpreter
Proceedings of the 2007 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
Reversible Computation and Reversible Programming Languages
Electronic Notes in Theoretical Computer Science (ENTCS)
POPL '12 Proceedings of the 39th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Hi-index | 5.23 |
Very simple reversible programming languages can be useful for the study of reversible transformations. For this purpose we define simple reversible language (SRL), a very simple reversible language, and analyse its properties. The language SRL is similar to the "loop" languages that have been used by several authors to characterise the set of primitive recursive functions. There are, however, important differences: SRL has domain Z instead of N and only reversible programs can be written in SRL. The reversibility of linear homogeneous SRL programs is related to the fact that the corresponding set of matrices has the algebraic structure of a group. We show that such programs implement exactly the linear transformations corresponding to the group of integer positive modular matrices, while in ESRL, an extended version of SRL, the set of transformations that can be implemented by linear homogeneous programs corresponds exactly to the group of integer modular matrices.