我是一名刚开始读可逆计算的本科生。我知道,由于Landauer的原理,不可逆的计算会耗散热量(而可逆的计算则不会)。我和我的教授一起提出了这个问题,他以前从未听说过可逆计算,而且他很难理解为什么可逆计算理论并不简单。
他的观点是,您始终可以保存输入,即对于任何函数您想使其可逆的,请定义一个新函数(或,您只需在输入的最后位输入 s ),这将在前位返回输出,在其他位返回输入。然后,为了反转您只需丢弃输出并返回您保存的输入。
我的直接反对意见是,这要比原始函数占用更多的内存-尽管只是一个恒定的因素。但是,将输出限制为位似乎可以恢复问题的趣味性。这通常是可逆计算的意思吗?
另一个异议似乎是当我们丢弃输出时,我们正在做不可逆的操作,这将耗散热量。但是我们正确地恢复了初始状态,那么它将如何不可逆转?我对物理学的了解不足,无法理解重要的东西是否仅仅是对整个计算而言是可逆的,或者每个步骤是否也需要可逆,还是这个想法只是错误的树。