Sou estudante de graduação apenas começando a ler sobre computação reversível. Eu sei que, por causa do princípio de Landauer, cálculos irreversíveis dissipam calor (e reversíveis não). Eu falei com meu professor, que nunca tinha ouvido falar em computação reversível antes, e ele estava tendo dificuldade em entender por que a teoria da computação reversível não era trivial.
O argumento dele era que você sempre pode salvar a entrada, ou seja, para qualquer função que deseja tornar reversível, defina uma nova função (ou e você coloca s nos últimos bits da entrada), que retorna a saída nos primeiros bits e a entrada nos outros bits. Então, para inverter você apenas descarta a saída e retorna a entrada que salvou.
Minha objeção imediata foi a de que isso requer mais memória do que a função original - embora apenas por um fator constante. Restringir a saída a bits parece restaurar a interessante do problema. É isso que geralmente se entende por computação reversível?
Outra objeção parecia ser que, quando descartamos a saída, estamos fazendo algo irreversível que dissipará o calor. Mas nós recuperamos corretamente o estado inicial, então como ele pode ser irreversível? Não conheço física suficiente para entender se o importante com o calor é apenas para que todo o cálculo seja reversível, ou se todos os passos também precisam ser reversíveis, ou se essa ideia está na árvore errada .