La computación reversible es cualquier modelo de computación en el que cada paso del proceso es reversible en el tiempo . Esto significa que, dado el resultado de una computación, es posible reconstruir perfectamente la entrada. En sistemas que progresan determinísticamente de un estado a otro, un requisito clave para la reversibilidad es una correspondencia biunívoca entre cada estado y su sucesor. La computación reversible se considera un enfoque no convencional de la computación y está estrechamente vinculada a la computación cuántica , donde los principios de la mecánica cuántica garantizan inherentemente la reversibilidad (siempre que los estados cuánticos no se midan ni se " colapsen "). [ 1 ]
Reversibilidad
Hay dos tipos principales de reversibilidad, estrechamente relacionados, que son de particular interés para este propósito: la reversibilidad física y la reversibilidad lógica . [ 2 ]
Se dice que un proceso es físicamente reversible si no produce un aumento de la entropía física ; es decir, es isentrópico . Existe un estilo de diseño de circuitos que idealmente exhibe esta propiedad, conocido como lógica de recuperación de carga , circuitos adiabáticos o computación adiabática (véase proceso adiabático ). Si bien en la práctica ningún proceso físico no estacionario puede ser exactamente físicamente reversible o isentrópico, no se conoce ningún límite a la proximidad con la que podemos aproximarnos a la reversibilidad perfecta en sistemas suficientemente aislados de interacciones con entornos externos desconocidos, cuando se conocen con precisión las leyes de la física que describen la evolución del sistema.
Una motivación para el estudio de tecnologías destinadas a implementar la computación reversible es que ofrecen lo que se predice que es la única forma potencial de mejorar la eficiencia energética computacional (es decir, operaciones útiles realizadas por unidad de energía disipada) de las computadoras más allá del límite fundamental de von Neumann-Landauer [ 3 ] [ 4 ] de kT ln(2) energía disipada por operación de bit irreversible .
El límite de Landauer fue millones de veces inferior al consumo energético de los ordenadores en la década de 2000 y miles de veces menor en la década de 2010. [ 5 ] Los defensores de la computación reversible argumentan que una parte significativa de este consumo energético se debe a los costes generales de la arquitectura. Estos costes generales son los costes energéticos asociados a las partes no computacionales del sistema, como los cables, los transistores y la memoria, que son necesarios para que un ordenador funcione. Creen que esto dificulta que la tecnología actual logre una mayor eficiencia energética sin adoptar los principios de la computación reversible. [ 6 ]
Relación con la termodinámica
Como argumentó por primera vez Rolf Landauer mientras trabajaba en IBM , [ 7 ] para que un proceso computacional sea físicamente reversible, también debe ser lógicamente reversible . El principio de Landauer es la observación de que el borrado inconsciente de n bits de información conocida siempre debe incurrir en un costo de nkT ln(2) en entropía termodinámica . Se dice que un proceso computacional discreto y determinista es lógicamente reversible si la función de transición que mapea los estados computacionales antiguos a los nuevos es una función biyectiva ; es decir, los estados lógicos de salida determinan de forma única los estados lógicos de entrada de la operación computacional.
Para los procesos computacionales que no son deterministas (en el sentido de ser probabilísticos o aleatorios), la relación entre los estados antiguos y nuevos no es una función unívoca , y el requisito necesario para obtener reversibilidad física se convierte en una condición ligeramente más débil, a saber, que el tamaño de un conjunto dado de posibles estados computacionales iniciales no disminuya, en promedio, a medida que avanza el cálculo.
Reversibilidad física
El principio de Landauer (y, de hecho, la segunda ley de la termodinámica ) también puede entenderse como una consecuencia lógica directa de la reversibilidad subyacente de la física , tal como se refleja en la formulación hamiltoniana general de la mecánica y, más específicamente, en el operador unitario de evolución temporal de la mecánica cuántica . [ 8 ]
La implementación de la computación reversible consiste, por lo tanto, en aprender a caracterizar y controlar la dinámica física de los mecanismos para llevar a cabo las operaciones computacionales deseadas con tal precisión que el experimento acumule una incertidumbre total insignificante respecto al estado físico completo del mecanismo, por cada operación lógica realizada. En otras palabras, se trata de rastrear con precisión el estado de la energía activa involucrada en la ejecución de las operaciones computacionales dentro de la máquina, y diseñar la máquina de manera que la mayor parte de esta energía se recupere de forma organizada y pueda reutilizarse en operaciones posteriores, en lugar de permitir que se disipe en forma de calor.
Si bien lograr este objetivo representa un desafío significativo para el diseño, la fabricación y la caracterización de nuevos mecanismos físicos ultraprecisos para la computación , actualmente no existe ninguna razón fundamental para pensar que este objetivo no pueda alcanzarse eventualmente, permitiendo algún día construir computadoras que generen mucho menos del valor de 1 bit de entropía física (y disipen mucho menos de kT ln 2 de energía en forma de calor) por cada operación lógica útil que realicen internamente.
Actualmente, este campo cuenta con una amplia bibliografía académica. Físicos, ingenieros eléctricos e informáticos han diseñado y analizado una gran variedad de conceptos de dispositivos reversibles, puertas lógicas , circuitos electrónicos , arquitecturas de procesadores , lenguajes de programación y algoritmos de aplicación.
Este campo de investigación aguarda el desarrollo detallado de una tecnología de dispositivos lógicos de alta calidad, rentable y prácticamente reversible , que incluya mecanismos de sincronización y reloj de alta eficiencia energética , o que evite la necesidad de estos mediante un diseño asíncrono. Este tipo de progreso de ingeniería sólido será necesario antes de que el amplio conjunto de investigaciones teóricas sobre computación reversible pueda encontrar una aplicación práctica que permita a la tecnología informática real sortear las diversas barreras a corto plazo para su eficiencia energética, incluido el límite de von Neumann-Landauer. Esto solo puede sortearse mediante el uso de computación lógicamente reversible, debido a la segunda ley de la termodinámica . [ 9 ]
Reversibilidad lógica
Para que una operación computacional sea lógicamente reversible, su salida (o estado final) puede calcularse a partir de su entrada (o estado inicial), y viceversa. Las funciones reversibles deben ser inyectivas . Esto significa que las compuertas reversibles (y los circuitos , es decir, las composiciones de múltiples compuertas) generalmente tienen el mismo número de bits de entrada que de salida (suponiendo que todos los bits de entrada son utilizados por la operación).
Una puerta inversora (NOT) es lógicamente reversible porque su operación puede deshacerse . Sin embargo, dependiendo de su implementación, la puerta NOT puede no ser físicamente reversible.
La compuerta XOR ( o exclusiva ) es irreversible porque sus dos entradas no pueden reconstruirse inequívocamente a partir de su única salida, o bien, porque el borrado de información no es reversible. Sin embargo, se puede definir una versión reversible de la compuerta XOR —la compuerta NOT controlada (CNOT)— conservando una de las entradas como segunda salida. La variante de tres entradas de la compuerta CNOT se denomina compuerta Toffoli . Conserva dos de sus entradas a,b y reemplaza la tercera c por. Con, esto da la función AND, y conEsto da como resultado la función NOT. Dado que AND y NOT juntas forman un conjunto funcionalmente completo , la puerta lógica Toffoli es universal y puede implementar cualquier función booleana (si se le proporcionan suficientes bits auxiliares inicializados ).
Se encuentran disponibles estudios sobre circuitos reversibles, su construcción y optimización , así como los desafíos de investigación recientes. [ 10 ] [ 11 ] [ 12 ] [ 13 ] [ 14 ]
Máquinas de Turing reversibles (MTR)
La máquina de Turing reversible (MTR) es un modelo fundamental en la computación reversible. Una MTR se define como una máquina de Turing cuya función de transición es invertible, lo que garantiza que cada configuración de la máquina (estado y contenido de la cinta) tenga como máximo una configuración predecesora. Esto garantiza el determinismo hacia atrás, lo que permite rastrear de forma unívoca el historial de computación. [ 15 ]
Las definiciones formales de RTM han evolucionado en las últimas décadas. Si bien las primeras definiciones se centraban en funciones de transición invertibles, las formulaciones más generales permiten un movimiento de cabeza limitado y la modificación de celdas por paso. Esta generalización garantiza que el conjunto de RTM sea cerrado bajo composición (ejecutando RTMseguido de la ejecución de RTMda como resultado una nueva RTM) e inversión (la inversa de una RTM también es una RTM), formando una estructura de grupo para cálculos reversibles. Esto contrasta con algunas definiciones clásicas de TM donde la composición podría no producir una máquina de la misma clase. [ 16 ] La dinámica de una RTM se puede describir mediante una función de transición global que asigna configuraciones basadas en una regla local. [ 17 ]
Yves Lecerf propuso una máquina de Turing reversible en un artículo de 1963, [ 18 ] pero aparentemente desconocía el principio de Landauer, no profundizó en el tema y dedicó la mayor parte del resto de su carrera a la etnolingüística.
Un resultado trascendental de Charles H. Bennett en 1973 demostró que cualquier máquina de Turing estándar puede ser simulada por una reversible. [ 19 ] La construcción de Bennett implica aumentar la TM con una "cinta de historial" auxiliar. La simulación procede en tres etapas: [ 20 ]
- Cálculo: Se simula el cálculo de la máquina de Turing original y se escribe en la cinta de historial un registro de cada regla de transición aplicada.
- Copia de salida: El resultado final de la cinta de trabajo se copia a una cinta de salida separada, inicialmente en blanco. Esta operación de copia debe realizarse de forma reversible (por ejemplo, utilizando compuertas CNOT).
- Descomputación: La simulación se ejecuta en sentido inverso, utilizando la cinta de historial para deshacer cada paso del cálculo directo. Este proceso borra la cinta de trabajo y la cinta de historial, devolviéndolas a su estado inicial en blanco, dejando únicamente la entrada original (conservada en su cinta) y la salida final en la cinta de salida.
Esta construcción demuestra que las RTM son computacionalmente equivalentes a las TM estándar en términos de las funciones que pueden calcular, estableciendo que la reversibilidad no limita la potencia computacional en este sentido. [ 20 ] Sin embargo, esta técnica de simulación estándar tiene un costo. La cinta de historial puede crecer linealmente con el tiempo de cálculo, lo que conlleva una sobrecarga de espacio potencialmente grande, a menudo expresada comodóndeyson el espacio y el tiempo del cálculo original. [ 19 ] Además, los enfoques basados en el historial presentan desafíos con la composicionalidad local; combinar dos cálculos reversibles independientemente utilizando este método no es sencillo. Esto indica que, si bien es teóricamente potente, la construcción original de Bennett no es necesariamente la forma más práctica o eficiente de lograr un cálculo reversible, lo que motiva la búsqueda de métodos que eviten acumular grandes cantidades de historial "basura". [ 20 ]
Las RTM calculan con precisión el conjunto de funciones computables inyectivas (uno a uno). No son estrictamente universales en el sentido clásico porque no pueden calcular directamente funciones no inyectivas (que inherentemente pierden información). Sin embargo, poseen una forma de universalidad denominada "universalidad RTM" y son capaces de autointerpretarse. [ 15 ]
Comercialización
La empresa Vaire Computing, con sede en Londres , está desarrollando un prototipo de chip en 2025, para su lanzamiento en 2027. [ 21 ]
Véase también
- Circuito adiabático : circuitos electrónicos de baja potencia que utilizan lógica reversible para conservar energía.
- Transformación bidireccional : programas informáticos capaces de producir entradas a partir de salidas.
- Computadora de bolas de billar : un tipo de circuito lógico conservador.
- Puerta de Fredkin : puerta lógica reversible universal, aplicada en computación cuántica.
- Elevación generalizada : técnica para el análisis de ondículas. Páginas que muestran breves descripciones de los objetivos de redireccionamiento.
- Janus (lenguaje de programación de computación reversible en el tiempo)
- Termodinámica de máxima entropía : aplicación de la teoría de la información a la termodinámica y la mecánica estadística, sobre la interpretación de la incertidumbre de la segunda ley de la termodinámica.
- El demonio de Maxwell : un experimento mental de 1867.
- Computación inversa : aplicación de software del concepto de computación reversible.
- Autómata celular reversible : Autómata celular que puede funcionar hacia atrás.
- Dinámica reversible : tipo de propiedad física o matemática. Páginas que muestran descripciones breves de los destinos de redireccionamiento.
- Proceso reversible (termodinámica) : Proceso cuya dirección puede invertirse.
- Computación cuántica : tecnología de hardware informático que utiliza la mecánica cuántica.
- Autómata celular de puntos cuánticos : un tipo de autómata celular, una variante de los autómatas celulares reversibles.
- Puerta de Toffoli : puerta lógica reversible universal, aplicada en computación cuántica.
- Computación cuántica superconductora : implementación de la computación cuántica
- Descomputación : técnica de computación cuántica
- Computación no convencional : computación mediante métodos nuevos o inusuales.
Referencias
- ↑ Williams, Colin P. (2011). Exploraciones en computación cuántica . Springer . págs. 25–29 . ISBN 978-1-84628-887-6.
- ↑ "El Grupo de Computación Reversible y Cuántica (Revcomp)" .
- ↑ Landauer, Rolf (1961). "Irreversibilidad y generación de calor en el proceso de computación" (PDF) . IBM Journal of Research and Development . 5 (3): 183– 191. doi : 10.1147/rd.53.0183 . Recuperado el 18 de febrero de 2015. La
entropía de un sistema cerrado, por ejemplo, una computadora con sus propias baterías, no puede disminuir; por lo tanto, esta entropía debe aparecer en otro lugar como un efecto de calentamiento, suministrando 0,6931 kT por bit restaurado al entorno.
- ↑ von Neumann, J. (1966). Teoría de los autómatas autorreproductores . University of Illinois Press . Recuperado el 21 de mayo de 2022 .Tercera clase: Teorías estadísticas sobre la información
- ↑ Bérut, Antoine; Arakelyan, Artak; Petrosyan, Artyom; Ciliberto, Sergio; Dillenschneider, Raoul; Lutz, Eric (marzo de 2012). "Verificación experimental del principio de Landauer que vincula la información y la termodinámica". Nature . 483 ( 7388): 187– 189. arXiv : 1503.06537 . Bibcode : 2012Natur.483..187B . doi : 10.1038/nature10872 . PMID 22398556. S2CID 9415026 .
- ↑ Michael P. Frank. Fundamentos de la computación reversible generalizada. Conferencia sobre computación reversible, 6-7 de julio de 2017, Calcuta, India. doi:10.1007/978-3-319-59936-6 2 Preimpresión disponible en https://www.osti.gov/servlets/purl/1456440 (PDF).
- ↑ Landauer, R. (julio de 1961). "Irreversibilidad y generación de calor en el proceso de computación". IBM Journal of Research and Development . 5 (3): 183– 191. doi : 10.1147/rd.53.0183 .
- ↑ Frank, Michael P.; Shukla, Karpur (1 de junio de 2021). "Fundamentos cuánticos de la computación reversible clásica" . Entropy . 23 ( 6): 701. arXiv : 2105.00065 . Bibcode : 2021Entrp..23..701F . doi : 10.3390/e23060701 . ISSN 1099-4300 . PMC 8228632. PMID 34206044 .
- ↑ Frank, Michael P. (2018). "Fundamentos físicos del principio de Landauer" . En Kari, Jarkko; Ulidowski, Irek (eds.). Computación reversible . Lecture Notes in Computer Science. Vol. 11106. Cham: Springer International Publishing. pp. 3–33 . arXiv : 1901.10327 . doi : 10.1007/978-3-319-99498-7_1 . ISBN 978-3-319-99498-7. S2CID 52135244 .
- ↑ Rolf Drechsler, Robert Wille. De las tablas de verdad a los lenguajes de programación: avances en el diseño de circuitos reversibles. Simposio Internacional sobre Lógica Multivaluada, 2011. http://www.informatik.uni-bremen.de/agra/doc/konf/11_ismvl_reversible_circuit_design_tutorial.pdf
- ↑ Saeedi, Mehdi; Markov, Igor L. (1 de febrero de 2013). "Síntesis y optimización de circuitos reversibles: una revisión". ACM Computing Surveys . 45 (2): 1– 34. arXiv : 1110.2574 . doi : 10.1145/2431211.2431220 . S2CID 6302811 .
- ↑ Rolf Drechsler y Robert Wille. Circuitos reversibles: logros recientes y desafíos futuros para una tecnología emergente. Simposio internacional sobre diseño y pruebas VLSI, 2012. http://www.informatik.uni-bremen.de/agra/doc/konf/2012_vdat_reversible_circuits_accompl_chall.pdf
- ↑ Cohen, Eyal; Dolev, Shlomi; Rosenblit, Michael (26 de abril de 2016). "Diseño totalmente óptico para compuertas y circuitos reversibles inherentemente conservantes de energía" . Nature Communications . 7 (1) 11424. Bibcode : 2016NatCo...711424C . doi : 10.1038/ncomms11424 . PMC 4853429. PMID 27113510 .
- ↑ Ang, YS; Yang, SA; Zhang, C.; Ma, ZS; Ang, LK (2017). "Valleytronics en conos de Dirac fusionados: filtro de valle totalmente eléctrico, válvula y puerta lógica reversible universal". Physical Review B . 96 (24) 245410. arXiv : 1711.05906 . Bibcode : 2017PhRvB..96x5410A . doi : 10.1103/PhysRevB.96.245410 . S2CID 51933139 .
- ^ Axelsen , Holger Bock; Glück, Robert. "¿Qué calculan los programas reversibles?" (PDF) . Ciencia espacial . Consultado el 26 de abril de 2025 .
- ↑ Barbieri, Sebastián; Kari, Jarkko; Salo, Ville (2016). «El grupo de máquinas de Turing reversibles». Autómatas celulares y sistemas complejos discretos . Lecture Notes in Computer Science. Vol. 9664. pp. 49–62 . arXiv : 1603.08715 . doi : 10.1007/978-3-319-39300-1_5 . ISBN 978-3-319-39299-8.
- ↑ Bruera, Renzo; Cardona, Robert; Miranda, Eva; Peralta-Salas, Daniel (2024). "Entropía topológica de la dinámica completa de Turing (con un apéndice de Ville Salo)". arXiv : 2404.07288 [ math.DS ].
- ↑ Lecerf (Y.): Logique Mathématique : Machines de Turing réversibles. Comptes rendus des séances de l'académie des sciences, 257: 2597–2600, 1963.
- 1 2 C. H. Bennett, " Reversibilidad lógica de la computación ", IBM Journal of Research and Development, vol. 17, n.º 6, págs. 525–532, 1973
- 1 2 3 Carette, Jacques; Heunen, Chris; Kaarsgaard, Robin; Sabry, Amr (2024). "Computación reversible composicional". Computación reversible . Notas de clase en ciencias de la computación. Vol. 14680. págs. 10–27 . arXiv : 2405.20842 . doi : 10.1007/978-3-031-62076-8_2 . ISBN 978-3-031-62075-1.
- ↑ Genkina, Dina; Potter, Ned; Ulrich, Lawrence; Bourzac, Katherine (2025-01-01). "La computación reversible escapa del laboratorio: una empresa emergente planea el primer chip basado en este peculiar esquema de ahorro de energía" . IEEE Spectrum . 62 (1). IEEE : 32–41 . Bibcode : 2025IEEES..62a..32G . doi : 10.1109/MSPEC.2025.10829737 .
Lecturas adicionales
- Frank, Michael P. (2017). "El futuro de la computación depende de hacerla reversible" (web) / "Invertir la computación" (impreso). IEEE Spectrum . 54 (9): 32–37. doi:10.1109/MSPEC.2017.8012237 .
- Denning, Peter; Lewis, Ted (2017). "Computadoras que pueden funcionar al revés". American Scientist . 105 (5): 270. doi : 10.1511/2017.105.5.270 . hdl : 10945/59278 . S2CID 125446656 .
- Glück, Robert; Yokoyama, Tetsuo (2023). "Computación reversible desde la perspectiva de un lenguaje de programación" . Theoretical Computer Science . 953 113429. doi : 10.1016/j.tcs.2022.06.010 .
- Lange, Klaus-Jörn; McKenzie, Pierre; Tapp, Alain (abril de 2000). "El espacio reversible es igual al espacio determinista" . Journal of Computer and System Sciences . 60 (2): 354– 367. doi : 10.1006/jcss.1999.1672 .
- Perumalla KS (2014), Introducción a la computación reversible , CRC Press .
- Vitányi, Paul (2005). «Tiempo, espacio y energía en la computación reversible». Actas de la 2.ª conferencia sobre fronteras de la computación – CF '05 . pp. 435–444 . arXiv : cs/0504088 . doi : 10.1145/1062261.1062335 . ISBN 1-59593-019-1. S2CID 5252384 .
Enlaces externos
- Artículo introductorio sobre computación reversible
- Primer Taller Internacional sobre Computación Reversible
- Publicaciones de Michael P. Frank: Sandia (2015-) , FSU (2004-'15) , UF (1999-2004) , MIT (1996-'99 ).
- Ciclo de talleres/conferencias sobre computación reversible
- Taller de la CCC sobre cuestiones de física e ingeniería en computación clásica adiabática/reversible.
- Kit de herramientas de código abierto para el diseño de circuitos reversibles
- electrónica digital
- Modelos de computación
- Computación reversible
- Termodinámica