An injective language for reversible computation

被引:0
|
作者
Mu, SC [1 ]
Hu, ZJ [1 ]
Takeichi, M [1 ]
机构
[1] Univ Tokyo, Dept Informat Technol, Bunkyo Ku, Tokyo 113, Japan
关键词
D O I
暂无
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Erasure of information incurs an increase in entropy and dissipates heat. Therefore, information-preserving computation is essential for constructing computers that use energy more effectively. A more recent motivation to understand reversible transformations also comes from the design of editors where editing actions on a view need to be reflected back to the source data. In this paper we present a point-free functional language, with a relational semantics, in which the programmer is allowed to define injective functions only. Non-injective functions can be transformed into a program returning a history. The language is presented with many examples, and its relationship with Bennett's reversible Turing machine is explained. The language serves as a good model for program construction and reasoning for reversible computers, and hopefully for modelling bi-directional updating in an editor.
引用
收藏
页码:289 / 313
页数:25
相关论文
共 50 条