Qué es la computación reversible y por qué puede revolucionar los chips

Última actualización: enero 13, 2026
Autor: Isaac
  • La computación reversible busca realizar operaciones sin borrar información para reducir al mínimo el consumo energético y la disipación de calor.
  • El límite de Landauer marca el coste teórico de borrar un bit, y la computación reversible intenta esquivarlo diseñando circuitos y compuertas lógicas invertibles.
  • Las compuertas reversibles clásicas, como CNOT, Fredkin o Toffoli, permiten implementar cualquier función binaria sin pérdida de información, usando bits de ancila y técnicas de des-cómputo.
  • La computación cuántica es, en esencia, un caso particular de computación reversible, y nuevas propuestas como los chips de Vaire Computing apuntan a eficiencias miles de veces superiores a las actuales.

computación reversible

Los ordenadores actuales se están topando de frente con un muro energético: cada vez que procesan información, convierten una parte de la energía eléctrica que consumen en calor. Desde el portátil que apenas puedes apoyar sobre las piernas hasta los centros de datos que consumen cientos de teravatios hora al año, el problema es el mismo: la disipación térmica limita cuánto podemos seguir escalando la potencia de cómputo.

En paralelo, científicos e ingenieros llevan décadas dándole vueltas a una idea que suena casi a trampa: ¿y si pudiésemos calcular sin desperdiciar prácticamente energía, evitando que los bits se borren y, con ello, esquivando buena parte del calor generado? Esa es la promesa de la computación reversible, una disciplina que conecta la informática teórica, la termodinámica y, cómo no, la computación cuántica.

Qué es exactamente la computación reversible

En términos simples, un cómputo es reversible cuando, a partir del resultado final, podemos reconstruir de forma única la entrada original. Es decir, el proceso de cálculo puede recorrerse hacia atrás paso a paso, sin ambigüedades. Dicho en lenguaje matemático, la función que implementa el circuito es invertible: a cada salida le corresponde una única entrada.

En informática clásica, esto se traduce en que los circuitos deben trabajar con funciones que no destruyen información. Si dos entradas distintas acaban dando la misma salida, al avanzar en el cálculo estamos “olvidando” datos, y ese olvido tiene un coste físico. La computación reversible persigue justo lo contrario: que cada etapa del circuito se pueda deshacer, manteniendo siempre toda la información necesaria.

Formulado de otra manera, la computación reversible trabaja con funciones entre cadenas de bits del tipo f:{0,1}m → {0,1}m, donde tanto el número de bits de entrada como de salida es el mismo, y la transformación es biyectiva. Esa es la base que permite, al menos idealmente, reducir el coste energético asociado al procesamiento de información.

computación reversible

El límite de Landauer: por qué borrar un bit cuesta energía

En 1961, el físico de IBM Rolf Landauer puso números a algo que hasta entonces era más intuición que regla. Demostró que borrar información tiene un coste energético mínimo inevitable. Según su principio, eliminar un solo bit de memoria —pasar de un estado desconocido (0 o 1) a un estado fijo— requiere disipar al menos una energía igual a kBT ln 2, donde kB es la constante de Boltzmann y T la temperatura absoluta del sistema.

Traducido a un lenguaje menos formal, cada vez que un procesador borra un bit está incrementando la entropía del entorno, y eso se manifiesta como calor. Esa frontera termodinámica se conoce como límite de Landauer y marca el mínimo teórico de energía que un computador clásico debe gastar por operación de borrado de información, independientemente de lo buenos que sean sus transistores o de lo avanzada que sea la litografía.

Si aceptamos el principio de Landauer, la vía obvia para ahorrar energía es evitar borrar bits. Ahí es donde entra la computación reversible: si conseguimos diseñar algoritmos y circuitos que nunca destruyan información, al menos en teoría, podemos hacer cómputos con un gasto de energía arbitrariamente pequeño, acercándonos al límite de disipación cero.

Computación reversible: idea física y modelo lógico

Desde el punto de vista físico, un proceso reversible es aquel que puede invertirse sin aumentar la entropía total del sistema. En termodinámica, eso implica transformaciones muy lentas y cuasiestáticas, sin disipación apreciable de calor. Trasladado a la informática, la reversibilidad requiere que el estado de los bits pueda devolverse exactamente a su configuración inicial recorriendo el circuito en sentido inverso.

En lenguaje de ciencias de la computación, eso significa que las funciones que implementan los circuitos deben ser injectivas y, en la práctica, biyectivas. Para garantizarlo, los modelos de computación reversible trabajan con funciones entre vectores de bits de la misma longitud: f:{0,1}m → {0,1}m. No se permite “aplastar” información de muchas entradas distintas en una misma salida.

Esta forma de computar no es la que usan por defecto los procesadores actuales, que están llenos de operaciones irreversibles como AND, OR o el propio borrado de memoria. Sin embargo, se ha demostrado que cualquier función computable puede implementarse con circuitos reversibles si aceptamos algunos trucos: introducir bits auxiliares, duplicar información y, al final, deshacer las operaciones accesorias para dejar “limpio” el espacio de trabajo.

  ¿Cuál es el mejor DJ virtual para PC?

Modelo de computación: de Turing a los circuitos reversibles

Para entender dónde encaja la computación reversible, conviene repasar brevemente los modelos clásicos de cómputo. El más famoso es la máquina de Turing, una abstracción formada por una cinta infinita dividida en celdas, una cabeza lectora-escritora, un conjunto finito de estados de control y un programa que dicta qué hacer en función del símbolo leído y el estado actual.

En una máquina de Turing, la cinta actúa como memoria, el sistema de control hace de procesador y el programa marca el algoritmo. Cada instrucción puede escribir un símbolo, mover la cabeza a izquierda o derecha y cambiar el estado interno. Pese a su simplicidad, se ha demostrado que este modelo es capaz de computar cualquier función que consideraríamos “algorítmicamente computable”. Esa afirmación es la célebre tesis de Church-Turing.

Existe además una versión probabilística de este modelo que permite introducir decisiones aleatorias, como lanzar una moneda. La llamada tesis fuerte de Church-Turing sostiene que cualquier modelo físico razonable puede simularse eficientemente con una máquina de Turing probabilística. La computación cuántica, y con ella la reversible, pone a prueba esta tesis fuerte al sugerir que podríamos resolver de forma eficiente problemas intratables clásicamente.

Más cerca del hardware real encontramos el modelo de circuitos lógicos. Aquí, los cables transportan bits (0 o 1) y las compuertas realizan operaciones lógicas sobre uno o varios bits de entrada para producir salidas. Un circuito lógico computa una función binaria f:{0,1}n → {0,1}l, transformando cadenas de n bits de entrada en cadenas de l bits de salida.

Compuertas clásicas y el problema de la irreversibilidad

Las compuertas lógicas estándar —AND, OR, NOT, NAND, NOR, XOR, etc.— permiten construir cualquier circuito clásico. Combinándolas adecuadamente podemos calcular cualquier función binaria. Sin embargo, la mayoría de estas compuertas son irreversibles: a partir de su salida no es posible reconstruir de forma única la entrada.

Por ejemplo, en una compuerta AND de dos entradas, la salida 0 puede provenir de 00, 01 o 10. Al observar solo el resultado hemos perdido información. Desde el punto de vista de Landauer, ese “olvido” se traduce en entropía generada y, por tanto, calor disipado en el dispositivo físico que implementa la compuerta.

En muchos algoritmos, además, se utilizan bits adicionales denominados bits de ancila para almacenar resultados intermedios. Estos bits van acumulando “basura” lógica a medida que avanza el cálculo. En un circuito clásico irreverible esa basura se ignora o se sobreescribe, lo que implica borrar información una y otra vez.

La computación reversible afronta este problema de otra forma: en lugar de tirar los resultados intermedios, diseña los circuitos para poder deshacerlos al final. Así, los bits de ancila se pueden recuperar a su estado original (normalmente 0) y reutilizarse sin haber consumido energía en borrados lógicos.

Complejidad computacional y coste energético

Al analizar algoritmos, los informáticos suelen fijarse en tres recursos principales: tiempo, espacio y energía. El tiempo suele medirse como el número de pasos de cómputo o la profundidad del circuito (cuántas compuertas se aplican en secuencia). El espacio se cuantifica como el número de bits necesarios (incluyendo bits de entrada, salida y ancila). Y la energía, aunque a veces se deja de lado en teoría de la complejidad, es crítica en la implementación física de los algoritmos.

Los problemas calificados como tratables o eficientemente solubles son aquellos para los que existe un algoritmo que usa recursos que crecen, como mucho, de forma polinómica con el tamaño de la entrada. El modelo de referencia para medir esa eficiencia en el mundo clásico suelen ser las máquinas de Turing probabilísticas. La computación reversible y la cuántica abren la puerta a replantear esta referencia cuando consideramos explícitamente el coste energético.

Compuertas reversibles: NOT, SWAP, CNOT, Fredkin y Toffoli

En computación reversible, solo se permiten compuertas que sean por sí mismas funciones invertibles. Algunas compuertas clásicas cumplen esta propiedad de manera natural; otras se diseñan específicamente con ese objetivo.

La compuerta más sencilla es la NOT, que cambia 0 por 1 y 1 por 0. Es claramente reversible, porque aplicarla dos veces devuelve el bit original. En notación formal, NOT(NOT(q)) = q. En computación cuántica, esta misma compuerta se denota como X.

Otra compuerta elemental es la SWAP, que intercambia el valor de dos bits: SWAP(q0,q1) = (q1,q0). También es su propia inversa, ya que dos SWAP consecutivas dejan los bits como estaban. Ambas compuertas son útiles para construir circuitos reversibles más complejos.

Una pieza clave es la compuerta CNOT (Controlled-NOT), que actúa sobre dos bits: uno de control (q0) y otro objetivo (q1). Su acción puede describirse así: si el bit de control es 0, no pasa nada; si es 1, se aplica NOT al bit objetivo. Es decir, CNOT(q0,q1) produce (q0, q0 ⊕ q1), donde ⊕ es la suma XOR. Esta compuerta es totalmente reversible y muy importante tanto en circuitos reversibles clásicos como en cuánticos.

  Cómo Resolver Problema de Pantalla Parpadeando en Windows 10

Si el bit objetivo se inicializa a 0, la CNOT permite copiar el valor del bit de control: CNOT(q,0) = (q,q). Esta capacidad de “clonar” bits clásicos de forma reversible es fundamental para el proceso de des-cómputo del que hablaremos más adelante.

La compuerta de Fredkin o CSWAP añade un nivel más de complejidad: usa un bit de control y dos bits objetivos. Si el control está a 0, no hace nada; si el control está a 1, intercambia los dos bits objetivos. Es decir, CSWAP(q0,q1,q2) deja la cadena igual si q0=0 y la convierte en (q0,q2,q1) si q0=1. Esta compuerta es también reversible y, de hecho, universal: con suficientes CSWAP se puede implementar cualquier función binaria reversible.

Una de las compuertas estrella de la computación reversible es la compuerta Toffoli o CCNOT. Actúa sobre tres bits: dos de control (q0, q1) y uno objetivo (q2). Si al menos uno de los controles está a 0, no cambia nada; si ambos controles son 1, aplica NOT al bit objetivo. En forma compacta, la salida del tercer bit es q’2 = q2 ⊕ (q0 AND q1). Por eso se la conoce también como AND reversible.

Partiendo de Toffoli y de bits de ancila inicializados a 0, se pueden construir circuitos reversibles que implementan compuertas AND, OR y otras operaciones irreversibles de forma “disfrazada”. La clave es que toda la información se conserva en algún lugar del conjunto de bits, de modo que el proceso global siga siendo invertible.

Bits de ancila y simulación reversible de compuertas clásicas

Para implementar una función clásica irreversible, como una AND de dos bits, se recurre a bits de ancila que actúan como espacio de trabajo reversible. Por ejemplo, si tenemos entradas q0 y q1 y un bit adicional q2 inicializado a 0, una compuerta Toffoli adecuada puede dejar en q2 el valor de q0 AND q1, sin perder información sobre las entradas originales.

Generalizando, una función del tipo f(q0,q1,…,qn) que no sea reversible puede realizarse como parte de un circuito más grande que toma como entrada los bits originales más un conjunto de ancila en 0, y produce como salida los bits originales intactos junto con registros donde se guardan los resultados intermedios y el valor final de la función.

Por ejemplo, para computar una expresión como q0 AND q1 AND q2 AND q3 de forma reversible, se pueden encadenar varias compuertas Toffoli, cada una usando un bit de ancila distinto para almacenar el resultado parcial de una AND de dos términos. Así, por cada AND que queramos calcular necesitamos, en general, un bit de ancila adicional. Este es el precio en espacio que se paga por la reversibilidad.

Des-cómputo: limpiar la “basura” lógica sin borrar bits

Al final de un algoritmo reversible, solemos encontrarnos con que el resultado deseado está guardado en unos pocos bits, pero alrededor quedan multitud de bits de ancila en estados extraños que ya no necesitamos. Si los borrásemos directamente, violaríamos el principio de Landauer. La solución elegante que propone la computación reversible es el llamado des-cómputo.

La idea es la siguiente: primero copiamos el resultado final a un registro adicional (inicializado en 0) usando compuertas reversibles como CNOT. Una vez que el valor que nos interesa está a salvo en ese registro, aplicamos todas las compuertas del circuito original en orden inverso. Como las compuertas son reversibles y, en muchos casos, su propia inversa, esto restaura el estado inicial de los bits de ancila y del registro de entrada, dejando solo el resultado copiado.

Este proceso de des-cómputo permite dejar el espacio de trabajo “limpio” sin borrar información. Toda la información sobre el cómputo intermedio sigue estando codificada en alguna parte del sistema, pero se ha replegado de nuevo al estado inicial de los bits que no forman parte del resultado. Así se puede acercar el coste energético al mínimo teórico, sin recurrir al borrado irreversible de bits.

Computación reversible y computación cuántica

En mecánica cuántica, la evolución cerrada de un sistema está gobernada por operadores unitarios, que son, por definición, reversibles. Eso significa que la computación cuántica está, en su esencia, obligada a ser reversible. Cada puerta cuántica corresponde a una transformación unitaria que puede invertirse aplicando la puerta adjunta (su inversa).

En el modelo de circuitos cuánticos, los cables ya no transportan bits clásicos sino qubits, que pueden estar en superposiciones de 0 y 1. Sin embargo, la estructura lógica de muchas puertas cuánticas recuerda a las compuertas reversibles clásicas: existe un equivalente cuántico de CNOT, las puertas de control múltiple como Toffoli tienen versiones cuánticas, y la idea de des-cómputo cuántico también se utiliza para limpiar ancillas.

  ¿Cómo actualizar LibreOffice en Windows 10?

Esta conexión hace que la computación reversible clásica se pueda ver como un caso particular de la computación cuántica restringido a estados puramente clásicos (sin superposición ni entrelazamiento). Desde esta perspectiva, aprender computación reversible es un paso natural para entender por qué en un ordenador cuántico no se permiten operaciones irreversibles arbitrarias en el núcleo de cálculo, ya que violarían la unitariedad de la mecánica cuántica.

Chips reversibles: de la teoría a los prototipos físicos

chips reversibles

Durante décadas, la computación reversible ha sido, sobre todo, un terreno teórico y académico. Sin embargo, en los últimos años han empezado a aparecer propuestas serias para trasladar estas ideas a hardware real, apoyadas en la creciente presión energética que sufren las infraestructuras de cómputo, especialmente por el auge de la inteligencia artificial.

Uno de los investigadores más veteranos en este campo es Michael Frank, que lleva más de treinta años explorando cómo lograr chips capaces de recuperar parte de la energía empleada en el cálculo. Durante los años 90 ya trabajó en estos conceptos, pero se encontró con una piedra importante en el camino: aunque se podía recuperar energía dentro del circuito, se perdía mucha en la fuente de alimentación externa, lo que limitaba los beneficios prácticos.

Recientemente, Frank ha dejado su puesto en Sandia National Laboratories para unirse a Vaire Computing, una startup centrada en hacer realidad la computación reversible a nivel comercial. Según sus estimaciones, un diseño reversible bien implementado podría alcanzar eficiencias energéticas unas 4.000 veces superiores a las de los chips convencionales, especialmente en tareas como la inferencia de modelos de inteligencia artificial.

En Vaire, el enfoque consiste en usar transistores CMOS tradicionales combinados con un componente clave: el resonador. Este resonador está diseñado para recuperar la energía que normalmente se disiparía como calor cuando un bit cambia de 0 a 1 o de 1 a 0. En lugar de perderla, se almacena de forma temporal dentro del propio transistor o en elementos asociados, reutilizándola en operaciones posteriores.

Como explicaba una de las fundadoras de Vaire, Hannah Earley, en la electrónica actual “casi el 100% de la energía usada por un chip acaba disipándose como calor”. En un chip reversible, la idea es que la energía no llegue a convertirse en calor de forma masiva, sino que se recicle internamente. Integrar el resonador de forma eficiente en el chip ha sido, según la empresa, uno de los avances que les diferencia de intentos anteriores.

La hoja de ruta de Vaire incluye un primer prototipo de chip en torno a 2025, con un diseño modesto pero que intentará demostrar, por primera vez, que un circuito aritmético puede recuperar energía de forma apreciable al operar. Más adelante, en torno a 2027, su objetivo es tener un procesador mucho más eficiente pensado para inferencia de IA. El modelo más ambicioso, el que aspira a ese factor de 4.000 veces de mejora, se situaría en un horizonte de 10 a 15 años, siempre que la física y la ingeniería acompañen.

En paralelo, otros investigadores, como James Crutchfield y Kyle Ray en la Universidad de California en Davis, están proponiendo métodos físicos alternativos para acercarse a la computación reversible. Una de sus ideas es codificar la información, no solo en niveles de voltaje, sino en propiedades dinámicas como el momento lineal de las partículas que forman la corriente eléctrica. Aprovechar estas variables permitiría, en principio, realizar transformaciones reversibles rápidas sin caer en la limitación de “tener que computar infinitamente despacio”.

Los modelos de Crutchfield y Ray sugieren que sería posible reducir la disipación por debajo del mínimo teórico que imponen las arquitecturas actuales, acercando la práctica al ideal de la computación reversible. Lo interesante de sus propuestas es que, al menos sobre el papel, podrían implementarse con tecnologías microelectrónicas que ya existen o que no se alejan demasiado de lo que fabrica la industria hoy.

Todo este esfuerzo en computación reversible apunta a un mismo objetivo: romper el vínculo casi automático entre más potencia de cálculo y más consumo energético y calor. A nivel teórico, la reversibilidad permite esquivar el coste de Landauer asociado al borrado de bits. A nivel práctico, compuertas como Toffoli, CNOT o Fredkin demuestran que cualquier función puede realizarse sin destruir información, usando bits de ancila y des-cómputo. Y en el plano físico, iniciativas como Vaire Computing o las propuestas de Crutchfield y Ray exploran cómo traducir estos modelos a chips reales, abriendo la puerta a procesadores —clásicos y cuánticos— mucho más eficientes justo cuando más los necesitamos.