stringtranslate.com

Puerta lógica cuántica

Puertas lógicas cuánticas comunes por nombre (incluida la abreviatura), forma(s) de circuito y matrices unitarias correspondientes

En computación cuántica y, específicamente, en el modelo de circuito cuántico de computación , una puerta lógica cuántica (o simplemente puerta cuántica ) es un circuito cuántico básico que opera en una pequeña cantidad de cúbits . Las puertas lógicas cuánticas son los componentes básicos de los circuitos cuánticos, al igual que las puertas lógicas clásicas lo son para los circuitos digitales convencionales.

A diferencia de muchas puertas lógicas clásicas, las puertas lógicas cuánticas son reversibles . Es posible realizar cálculos clásicos utilizando solo puertas reversibles. Por ejemplo, la puerta Toffoli reversible puede implementar todas las funciones booleanas , a menudo a costa de tener que usar bits ancillary . La puerta Toffoli tiene un equivalente cuántico directo, lo que demuestra que los circuitos cuánticos pueden realizar todas las operaciones realizadas por los circuitos clásicos.

Las puertas cuánticas son operadores unitarios y se describen como matrices unitarias relativas a alguna base ortonormal . Por lo general, se utiliza la base computacional , lo que, a menos que se compare con algo, solo significa que para un sistema cuántico de nivel d (como un qubit , un registro cuántico o qutrits y qudits ) [1] : 22–23  los vectores de base ortonormales están etiquetados como o usan notación binaria .

Historia

La notación actual para puertas cuánticas fue desarrollada por muchos de los fundadores de la ciencia de la información cuántica, incluidos Adriano Barenco, Charles Bennett , Richard Cleve , David P. DiVincenzo , Norman Margolus , Peter Shor , Tycho Sleator, John A. Smolin y Harald Weinfurter, [2] basándose en la notación introducida por Richard Feynman en 1986. [3]

Representación

Los estados de un solo qubit que no están enredados y carecen de fase global se pueden representar como puntos en la superficie de la esfera de Bloch , escrito como Las rotaciones sobre los ejes x, y, z de la esfera de Bloch se representan mediante las puertas del operador de rotación .

Las puertas lógicas cuánticas se representan mediante matrices unitarias . Una puerta que actúa sobre qubits se representa mediante una matriz unitaria, y el conjunto de todas esas puertas con la operación de grupo de multiplicación de matrices [a] es el grupo unitario U(2 n ). [2] Los estados cuánticos sobre los que actúan las puertas son vectores unitarios en dimensiones complejas , con la norma euclidiana compleja (la 2-norma ). [4] : 66  [5] : 56, 65  Los vectores base (a veces llamados estados propios ) son los resultados posibles si se mide el estado de los qubits , y un estado cuántico es una combinación lineal de estos resultados. Las puertas cuánticas más comunes operan en espacios vectoriales de uno o dos qubits, al igual que las puertas lógicas clásicas comunes operan en uno o dos bits .

Aunque las puertas lógicas cuánticas pertenecen a grupos de simetría continua , el hardware real es inexacto y, por lo tanto, limitado en precisión. La aplicación de puertas generalmente introduce errores y la fidelidad de los estados cuánticos disminuye con el tiempo. Si se utiliza la corrección de errores , las puertas utilizables se restringen aún más a un conjunto finito. [4] : cap. 10  [1] : cap. 14  Más adelante en este artículo, esto se ignora ya que el enfoque está en las propiedades de las puertas cuánticas ideales.

Los estados cuánticos suelen representarse mediante "kets", de una notación conocida como bra–ket .

La representación vectorial de un solo qubit es

Aquí, y son las amplitudes de probabilidad complejas del cúbito. Estos valores determinan la probabilidad de medir un 0 o un 1, al medir el estado del cúbito. Vea la medición a continuación para obtener más detalles.

El valor cero está representado por ket , y el valor uno está representado por ket .

El producto tensorial (o producto de Kronecker ) se utiliza para combinar estados cuánticos. El estado combinado de un registro de cúbits es el producto tensorial de los cúbits constituyentes. El producto tensorial se denota con el símbolo .

La representación vectorial de dos qubits es: [6]

La acción de la compuerta sobre un estado cuántico específico se obtiene multiplicando el vector , que representa el estado, por la matriz que representa la compuerta. El resultado es un nuevo estado cuántico :

Ejemplos notables

Existe una infinidad de puertas. Algunas de ellas han sido nombradas por varios autores, [2] [1] [4] [5] [7] [8] [9] y a continuación se presentan algunas de las más utilizadas en la literatura.

Puerta de identidad

La puerta de identidad es la matriz identidad , usualmente escrita como I , y se define para un solo qubit como

donde I es independiente de la base y no modifica el estado cuántico. La puerta identidad es más útil cuando se describe matemáticamente el resultado de varias operaciones de puerta o cuando se analizan circuitos multi-qubit.

Puertas de Pauli (incógnita,Y,O)

Puertas cuánticas (de arriba a abajo): Puerta de identidad, Puerta NOT, Pauli Y, Pauli Z

Las puertas de Pauli son las tres matrices de Pauli y actúan sobre un único cúbit. Las X , Y y Z de Pauli equivalen, respectivamente, a una rotación alrededor de los ejes x , y y z de la esfera de Bloch en radianes. [b]

La compuerta Pauli- X es el equivalente cuántico de la compuerta NOT para computadoras clásicas con respecto a la base estándar , , que distingue el eje z en la esfera de Bloch . A veces se la llama inversión de bits, ya que se asigna a y a . De manera similar, la compuerta Pauli- Y se asigna a y a . Pauli Z deja el estado base sin cambios y se asigna a . Debido a esta naturaleza, a Pauli Z a veces se la llama inversión de fase.

Estas matrices se representan generalmente como

Las matrices de Pauli son involutivas , lo que significa que el cuadrado de una matriz de Pauli es la matriz identidad .

Las matrices de Pauli también son anticonmutativas , por ejemplo

La matriz exponencial de una matriz de Pauli es un operador de rotación , a menudo escrito como

Puertas controladas

Representación del circuito de la puerta U controlada

Las puertas controladas actúan sobre 2 o más qubits, donde uno o más qubits actúan como control para alguna operación. [2] Por ejemplo, la puerta NOT controlada (o CNOT o CX) actúa sobre 2 qubits, y realiza la operación NOT sobre el segundo qubit solo cuando el primer qubit es , y de lo contrario lo deja sin cambios. Con respecto a la base , , , , se representa mediante la matriz unitaria hermítica :

La puerta CNOT (o Pauli- X controlada ) se puede describir como la puerta que mapea los estados base , donde es XOR .

El CNOT se puede expresar en base de Pauli como:

Al ser un operador unitario hermítico, CNOT tiene la propiedad de que y , y es involutivo .

De manera más general, si U es una puerta que opera en un solo qubit con representación matricial

Entonces, la puerta U controlada es una puerta que opera sobre dos cúbits de tal manera que el primer cúbit sirve como control. Mapea los estados base de la siguiente manera.

Diagramas de circuitos de puertas Pauli controladas (de izquierda a derecha): CNOT (o controlada-X), controlada-Y y controlada-Z.

La matriz que representa la U controlada es

Cuando U es uno de los operadores de Pauli, X , Y , Z , a veces se utilizan los términos respectivos "controlado- X ", "controlado- Y " o "controlado- Z ". [4] : 177–185  A veces esto se abrevia simplemente a C X , C Y y C Z.

En general, cualquier puerta unitaria de un solo qubit se puede expresar como , donde H es una matriz hermítica , y luego la U controlada es

El control se puede extender a puertas con un número arbitrario de qubits [2] y funciones en lenguajes de programación. [10] Las funciones se pueden condicionar a estados de superposición. [11] [12]

Control clásico

Ejemplo: Se mide el cúbit y el resultado de esta medición es un valor booleano que consume la computadora clásica. Si mide 1, entonces la computadora clásica le dice a la computadora cuántica que aplique la compuerta U en . En los diagramas de circuitos, las líneas simples son cúbits y las líneas duplicadas son bits .

Las puertas también pueden ser controladas por la lógica clásica. Una computadora cuántica es controlada por una computadora clásica y se comporta como un coprocesador que recibe instrucciones de la computadora clásica sobre qué puertas ejecutar en qué cúbits. [13] : 42–43  [14] El control clásico es simplemente la inclusión u omisión de puertas en la secuencia de instrucciones para la computadora cuántica. [4] : 26–28  [1] : 87–88 

Puertas de cambio de fase

El cambio de fase es una familia de puertas de un solo cúbito que mapean los estados base y . La probabilidad de medir un o no cambia después de aplicar esta puerta, sin embargo modifica la fase del estado cuántico. Esto es equivalente a trazar un círculo horizontal (una línea de latitud constante), o una rotación sobre el eje z en la esfera de Bloch en radianes. La puerta de cambio de fase está representada por la matriz:

donde es el cambio de fase con el período . Algunos ejemplos comunes son la compuerta T donde (históricamente conocida como la compuerta ), la compuerta de fase (también conocida como la compuerta S, escrita como S , aunque S a veces se usa para compuertas SWAP) donde y la compuerta Pauli-Z donde

Las puertas de cambio de fase están relacionadas entre sí de la siguiente manera:

Tenga en cuenta que la puerta de fase no es hermítica (excepto para todos los ). Estas puertas son diferentes de sus conjugados hermíticos: . Las dos puertas adjuntas (o transpuestas conjugadas ) y a veces se incluyen en los conjuntos de instrucciones. [15] [16]

Puerta de Hadamard

La puerta de Hadamard o Walsh-Hadamard, llamada así por Jacques Hadamard ( en francés: [adamaʁ] ) y Joseph L. Walsh , actúa sobre un único cúbit. Mapea los estados base y (crea un estado de superposición igual si se le da un estado base computacional). Los dos estados y a veces se escriben como y como respectivamente. La puerta de Hadamard realiza una rotación de alrededor del eje en la esfera de Bloch y, por lo tanto, es involutiva . Está representada por la matriz de Hadamard :

Representación del circuito de la puerta de Hadamard

Si se utiliza la puerta hermítica (so ) de Hadamard para realizar un cambio de base , se invierte y . Por ejemplo, y

Puerta de intercambio

Representación del circuito de la compuerta SWAP

La compuerta de intercambio intercambia dos qubits. Con respecto a la base , , , , está representada por la matriz

La puerta de intercambio se puede descomponer en forma de suma:

Puerta de Toffoli (CCNOT)

Representación del circuito de la puerta Toffoli

La puerta Toffoli, llamada así por Tommaso Toffoli y también llamada puerta CCNOT o puerta Deutsch , es una puerta de 3 bits que es universal para la computación clásica pero no para la computación cuántica. La puerta Toffoli cuántica es la misma puerta, definida para 3 qubits. Si nos limitamos a aceptar solo qubits de entrada que sean y , entonces si los dos primeros bits están en el estado aplica un Pauli- X (o NOT) en el tercer bit, de lo contrario no hace nada. Es un ejemplo de una puerta CC-U (Unitaria controlada-controlada). Dado que es el análogo cuántico de una puerta clásica, está completamente especificada por su tabla de verdad. La puerta Toffoli es universal cuando se combina con la puerta Hadamard de un solo qubit. [17]

La puerta Toffoli está relacionada con las operaciones clásicas AND ( ) y XOR ( ) ya que realiza el mapeo en estados en la base computacional.

La puerta de Toffoli se puede expresar utilizando matrices de Pauli como

Puertas cuánticas universales

Tanto CNOT como son puertas universales de dos qubits y pueden transformarse entre sí.

Un conjunto de puertas cuánticas universales es cualquier conjunto de puertas al que se puede reducir cualquier operación posible en un ordenador cuántico, es decir, cualquier otra operación unitaria se puede expresar como una secuencia finita de puertas del conjunto. Técnicamente, esto es imposible con algo menos que un conjunto incontable de puertas, ya que el número de puertas cuánticas posibles es incontable, mientras que el número de secuencias finitas de un conjunto finito es contable . Para resolver este problema, solo requerimos que cualquier operación cuántica se pueda aproximar mediante una secuencia de puertas de este conjunto finito. Además, para unitarias en un número constante de cúbits, el teorema de Solovay-Kitaev garantiza que esto se puede hacer de manera eficiente. La comprobación de si un conjunto de puertas cuánticas es universal se puede realizar utilizando métodos de teoría de grupos [18] y/o la relación con diseños t unitarios (aproximados) [19].

Algunos conjuntos de puertas cuánticas universales incluyen:

Puerta alemana

También se puede formular un conjunto de puertas cuánticas universales de una sola puerta utilizando la puerta Deutsch de tres cúbits parametrizada , [21] llamada así en honor al físico David Deutsch . Es un caso general de CC-U , o puerta controlada-controlada-unitaria , y se define como

Lamentablemente, una puerta Deutsch funcional ha quedado fuera de alcance debido a la falta de un protocolo. Existen algunas propuestas para realizar una puerta Deutsch con interacción dipolo-dipolo en átomos neutros. [22]

Una puerta lógica universal para la computación clásica reversible, la puerta Toffoli, es reducible a la puerta Deutsch , lo que demuestra que todas las operaciones lógicas clásicas reversibles se pueden realizar en una computadora cuántica universal.

También existen puertas individuales de dos cúbits suficientes para la universalidad. En 1996, Adriano Barenco demostró que la puerta Deutsch se puede descomponer utilizando sólo una puerta de dos cúbits ( puerta de Barenco ), pero es difícil de realizar experimentalmente. [1] : 93  Esta característica es exclusiva de los circuitos cuánticos, ya que no existe una puerta clásica de dos bits que sea reversible y universal. [1] : 93  Se podrían implementar puertas universales de dos cúbits para mejorar los circuitos reversibles clásicos en microprocesadores rápidos de bajo consumo. [1] : 93 

Composición del circuito

Puertas cableadas en serie

Dos puertas Y y X en serie. El orden en el que aparecen en el cable se invierte al multiplicarlas entre sí.

Supongamos que tenemos dos puertas A y B que actúan sobre cúbits. Cuando B se coloca después de A en un circuito en serie, el efecto de las dos puertas se puede describir como una única puerta C.

donde es la multiplicación de matrices . La compuerta resultante C tendrá las mismas dimensiones que A y B. El orden en el que aparecerían las compuertas en un diagrama de circuito se invierte cuando se multiplican entre sí. [4] : 17–18,22–23,62–64  [5] : 147–169 

Por ejemplo, colocar la puerta Pauli X después de la puerta Pauli Y , ambas actuando sobre un único qubit, se puede describir como una única puerta combinada C :

El símbolo del producto ( ) a menudo se omite.

Exponentes de puertas cuánticas

Todos los exponentes reales de matrices unitarias son también matrices unitarias, y todas las puertas cuánticas son matrices unitarias.

Los exponentes enteros positivos son equivalentes a secuencias de puertas conectadas en serie (por ejemplo, ), y los exponentes reales son una generalización del circuito en serie. Por ejemplo, y son puertas cuánticas válidas.

para cualquier matriz unitaria . La matriz identidad ( ) se comporta como una NOP [23] [24] y puede representarse como un cable desnudo en circuitos cuánticos, o no mostrarse en absoluto.

Todas las puertas son matrices unitarias, de modo que y , donde es la transpuesta conjugada . Esto significa que los exponentes negativos de las puertas son inversos unitarios de sus contrapartes exponenciadas positivamente: . Por ejemplo, algunos exponentes negativos de las puertas de cambio de fase son y .

Nótese que para una matriz hermítica y debido a la unitaridad, también para todas las puertas hermíticas. Son involutivas . Ejemplos de puertas hermíticas son las puertas de Pauli, Hadamard, CNOT, SWAP y Toffoli. Cada matriz unitaria hermítica tiene la propiedad de que donde

Puertas paralelas

Dos puertas y en paralelo es equivalente a la puerta .

El producto tensorial (o producto Kronecker ) de dos puertas cuánticas es la puerta que es igual a las dos puertas en paralelo. [4] : 71–75  [5] : 148 

Si, como en la imagen, combinamos la puerta Pauli- Y con la puerta Pauli- X en paralelo, entonces esto se puede escribir como:

Tanto la compuerta Pauli- X como la compuerta Pauli- Y actúan sobre un único cúbit. La compuerta resultante actúa sobre dos cúbits.

A veces se omite el símbolo del producto tensorial y en su lugar se utilizan índices para los operadores. [25]

Transformación de Hadamard

La puerta es la puerta Hadamard ( ) aplicada en paralelo sobre 2 qubits. Puede escribirse como:

Esta "puerta Hadamard paralela de dos cúbits" cuando se aplica, por ejemplo, al vector cero de dos cúbits ( ), creará un estado cuántico que tiene la misma probabilidad de ser observado en cualquiera de sus cuatro resultados posibles; , , y . Podemos escribir esta operación como:

Ejemplo: La transformada de Hadamard en un registro de 3 qubits .

Aquí la amplitud de cada estado medible es 12 . La probabilidad de observar cualquier estado es el cuadrado del valor absoluto de la amplitud de los estados mesurables, lo que en el ejemplo anterior significa que hay una probabilidad de cada cuatro de que observemos cualquiera de los cuatro casos individuales. Consulte la medición para obtener más detalles.

realiza la transformación de Hadamard en dos cúbits. De manera similar, la puerta realiza una transformación de Hadamard en un registro de cúbits.

Cuando se aplica a un registro de qubits todos inicializados a , la transformada de Hadamard coloca el registro cuántico en una superposición con igual probabilidad de ser medido en cualquiera de sus estados posibles:

Este estado es una superposición uniforme y se genera como el primer paso en algunos algoritmos de búsqueda, por ejemplo en la amplificación de amplitud y la estimación de fase .

La medición de este estado da como resultado un número aleatorio entre y . [e] La aleatoriedad del número depende de la fidelidad de las puertas lógicas. Si no se mide, es un estado cuántico con amplitud de probabilidad igual para cada uno de sus estados posibles.

La transformada de Hadamard actúa sobre un registro con qubits de la siguiente manera:

Aplicación sobre estados entrelazados

If two or more qubits are viewed as a single quantum state, this combined state is equal to the tensor product of the constituent qubits. Any state that can be written as a tensor product from the constituent subsystems are called separable states. On the other hand, an entangled state is any state that cannot be tensor-factorized, or in other words: An entangled state can not be written as a tensor product of its constituent qubits states. Special care must be taken when applying gates to constituent qubits that make up entangled states.

If we have a set of N qubits that are entangled and wish to apply a quantum gate on M < N qubits in the set, we will have to extend the gate to take N qubits. This application can be done by combining the gate with an identity matrix such that their tensor product becomes a gate that act on N qubits. The identity matrix () is a representation of the gate that maps every state to itself (i.e., does nothing at all). In a circuit diagram the identity gate or matrix will often appear as just a bare wire.

The example given in the text. The Hadamard gate only act on 1 qubit, but is an entangled quantum state that spans 2 qubits. In our example, .

For example, the Hadamard gate () acts on a single qubit, but if we feed it the first of the two qubits that constitute the entangled Bell state , we cannot write that operation easily. We need to extend the Hadamard gate with the identity gate so that we can act on quantum states that span two qubits:

The gate can now be applied to any two-qubit state, entangled or otherwise. The gate will leave the second qubit untouched and apply the Hadamard transform to the first qubit. If applied to the Bell state in our example, we may write that as:

Computational complexity and the tensor product

The time complexity for multiplying two -matrices is at least ,[26] if using a classical machine. Because the size of a gate that operates on qubits is it means that the time for simulating a step in a quantum circuit (by means of multiplying the gates) that operates on generic entangled states is . For this reason it is believed to be intractable to simulate large entangled quantum systems using classical computers. Subsets of the gates, such as the Clifford gates, or the trivial case of circuits that only implement classical Boolean functions (e.g. combinations of X, CNOT, Toffoli), can however be efficiently simulated on classical computers.

The state vector of a quantum register with qubits is complex entries. Storing the probability amplitudes as a list of floating point values is not tractable for large .

Unitary inversion of gates

Example: The unitary inverse of the Hadamard-CNOT product. The three gates , and are their own unitary inverses.

Because all quantum logical gates are reversible, any composition of multiple gates is also reversible. All products and tensor products (i.e. series and parallel combinations) of unitary matrices are also unitary matrices. This means that it is possible to construct an inverse of all algorithms and functions, as long as they contain only gates.

Initialization, measurement, I/O and spontaneous decoherence are side effects in quantum computers. Gates however are purely functional and bijective.

If is a unitary matrix, then and . The dagger () denotes the conjugate transpose. It is also called the Hermitian adjoint.

If a function is a product of gates, , the unitary inverse of the function can be constructed:

Because we have, after repeated application on itself

Similarly if the function consists of two gates and in parallel, then and .

Gates that are their own unitary inverses are called Hermitian or self-adjoint operators. Some elementary gates such as the Hadamard (H) and the Pauli gates (I, X, Y, Z) are Hermitian operators, while others like the phase shift (S, T, P, CPhase) gates generally are not.

For example, an algorithm for addition can be used for subtraction, if it is being "run in reverse", as its unitary inverse. The inverse quantum Fourier transform is the unitary inverse. Unitary inverses can also be used for uncomputation. Programming languages for quantum computers, such as Microsoft's Q#,[10] Bernhard Ömer's QCL,[13]: 61  and IBM's Qiskit,[27] contain function inversion as programming concepts.

Measurement

Circuit representation of measurement. The two lines on the right hand side represent a classical bit, and the single line on the left hand side represents a qubit.

Measurement (sometimes called observation) is irreversible and therefore not a quantum gate, because it assigns the observed quantum state to a single value. Measurement takes a quantum state and projects it to one of the basis vectors, with a likelihood equal to the square of the vector's length (in the 2-norm[4]: 66 [5]: 56, 65 ) along that basis vector.[1]: 15–17 [28][29][30] This is known as the Born rule and appears[e] as a stochastic non-reversible operation as it probabilistically sets the quantum state equal to the basis vector that represents the measured state. At the instant of measurement, the state is said to "collapse" to the definite single value that was measured. Why and how, or even if[31][32] the quantum state collapses at measurement, is called the measurement problem.

The probability of measuring a value with probability amplitude is , where is the modulus.

Measuring a single qubit, whose quantum state is represented by the vector , will result in with probability , and in with probability .

For example, measuring a qubit with the quantum state will yield with equal probability either or .

For a single qubit, we have a unit sphere in with the quantum state such that . The state can be re-written as , or and .
Note: is the probability of measuring and is the probability of measuring .

A quantum state that spans n qubits can be written as a vector in complex dimensions: . This is because the tensor product of n qubits is a vector in dimensions. This way, a register of n qubits can be measured to distinct states, similar to how a register of n classical bits can hold distinct states. Unlike with the bits of classical computers, quantum states can have non-zero probability amplitudes in multiple measurable values simultaneously. This is called superposition.

The sum of all probabilities for all outcomes must always be equal to 1.[f] Another way to say this is that the Pythagorean theorem generalized to has that all quantum states with n qubits must satisfy [g] where is the probability amplitude for measurable state . A geometric interpretation of this is that the possible value-space of a quantum state with n qubits is the surface of the unit sphere in and that the unitary transforms (i.e. quantum logic gates) applied to it are rotations on the sphere. The rotations that the gates perform form the symmetry group U(2n). Measurement is then a probabilistic projection of the points at the surface of this complex sphere onto the basis vectors that span the space (and labels the outcomes).

In many cases the space is represented as a Hilbert space rather than some specific -dimensional complex space. The number of dimensions (defined by the basis vectors, and thus also the possible outcomes from measurement) is then often implied by the operands, for example as the required state space for solving a problem. In Grover's algorithm, Grover named this generic basis vector set "the database".

The selection of basis vectors against which to measure a quantum state will influence the outcome of the measurement.[1]: 30–35 [4]: 22, 84–85, 185–188 [33] See change of basis and Von Neumann entropy for details. In this article, we always use the computational basis, which means that we have labeled the basis vectors of an n-qubit register , or use the binary representation .

In quantum mechanics, the basis vectors constitute an orthonormal basis.

An example of usage of an alternative measurement basis is in the BB84 cipher.

The effect of measurement on entangled states

The Hadamard-CNOT gate, which when given the input produces a Bell state

If two quantum states (i.e. qubits, or registers) are entangled (meaning that their combined state cannot be expressed as a tensor product), measurement of one register affects or reveals the state of the other register by partially or entirely collapsing its state too. This effect can be used for computation, and is used in many algorithms.

The Hadamard-CNOT combination acts on the zero-state as follows:

The Bell state in the text is where and . Therefore, it can be described by the plane spanned by the basis vectors and , as in the picture. The unit sphere (in ) that represent the possible value-space of the 2-qubit system intersects the plane and lies on the unit spheres surface. Because , there is equal probability of measuring this state to or , and because there is zero probability of measuring it to or .

This resulting state is the Bell state . It cannot be described as a tensor product of two qubits. There is no solution for

because for example w needs to be both non-zero and zero in the case of xw and yw.

The quantum state spans the two qubits. This is called entanglement. Measuring one of the two qubits that make up this Bell state will result in that the other qubit logically must have the same value, both must be the same: Either it will be found in the state , or in the state . If we measure one of the qubits to be for example , then the other qubit must also be , because their combined state became . Measurement of one of the qubits collapses the entire quantum state, that span the two qubits.

The GHZ state is a similar entangled quantum state that spans three or more qubits.

This type of value-assignment occurs instantaneously over any distance and this has as of 2018 been experimentally verified by QUESS for distances of up to 1200 kilometers.[34][35][36] That the phenomena appears to happen instantaneously as opposed to the time it would take to traverse the distance separating the qubits at the speed of light is called the EPR paradox, and it is an open question in physics how to resolve this. Originally it was solved by giving up the assumption of local realism, but other interpretations have also emerged. For more information see the Bell test experiments. The no-communication theorem proves that this phenomenon cannot be used for faster-than-light communication of classical information.

Measurement on registers with pairwise entangled qubits

The effect of a unitary transform F on a register A that is in a superposition of states and pairwise entangled with the register B. Here, n is 3 (each register has 3 qubits).

Take a register A with n qubits all initialized to , and feed it through a parallel Hadamard gate . Register A will then enter the state that have equal probability of when measured to be in any of its possible states; to . Take a second register B, also with n qubits initialized to and pairwise CNOT its qubits with the qubits in register A, such that for each p the qubits and forms the state .

If we now measure the qubits in register A, then register B will be found to contain the same value as A. If we however instead apply a quantum logic gate F on A and then measure, then , where is the unitary inverse of F.

Because of how unitary inverses of gates act, . For example, say , then .

The equality will hold no matter in which order measurement is performed (on the registers A or B), assuming that F has run to completion. Measurement can even be randomly and concurrently interleaved qubit by qubit, since the measurements assignment of one qubit will limit the possible value-space from the other entangled qubits.

Even though the equalities holds, the probabilities for measuring the possible outcomes may change as a result of applying F, as may be the intent in a quantum search algorithm.

This effect of value-sharing via entanglement is used in Shor's algorithm, phase estimation and in quantum counting. Using the Fourier transform to amplify the probability amplitudes of the solution states for some problem is a generic method known as "Fourier fishing".[37]

Logic function synthesis

A quantum full adder, given by Feynman in 1986.[3] It consists of only Toffoli and CNOT gates. The gate that is surrounded by the dotted square in this picture can be omitted if uncomputation to restore the B output is not required.

Functions and routines that only use gates can themselves be described as matrices, just like the smaller gates. The matrix that represents a quantum function acting on qubits has size . For example, a function that acts on a "qubyte" (a register of 8 qubits) would be represented by a matrix with elements.

Unitary transformations that are not in the set of gates natively available at the quantum computer (the primitive gates) can be synthesised, or approximated, by combining the available primitive gates in a circuit. One way to do this is to factor the matrix that encodes the unitary transformation into a product of tensor products (i.e. series and parallel circuits) of the available primitive gates. The group U(2q) is the symmetry group for the gates that act on qubits.[2] Factorization is then the problem of finding a path in U(2q) from the generating set of primitive gates. The Solovay–Kitaev theorem shows that given a sufficient set of primitive gates, there exist an efficient approximate for any gate. For the general case with a large number of qubits this direct approach to circuit synthesis is intractable.[38][39] This puts a limit on how large functions can be brute-force factorized into primitive quantum gates. Typically quantum programs are instead built using relatively small and simple quantum functions, similar to normal classical programming.

Because of the gates unitary nature, all functions must be reversible and always be bijective mappings of input to output. There must always exist a function such that . Functions that are not invertible can be made invertible by adding ancilla qubits to the input or the output, or both. After the function has run to completion, the ancilla qubits can then either be uncomputed or left untouched. Measuring or otherwise collapsing the quantum state of an ancilla qubit (e.g. by re-initializing the value of it, or by its spontaneous decoherence) that have not been uncomputed may result in errors,[40][41] as their state may be entangled with the qubits that are still being used in computations.

Logically irreversible operations, for example addition modulo of two -qubit registers a and b, ,[h] can be made logically reversible by adding information to the output, so that the input can be computed from the output (i.e. there exists a function ). In our example, this can be done by passing on one of the input registers to the output: . The output can then be used to compute the input (i.e. given the output and , we can easily find the input; is given and ) and the function is made bijective.

All Boolean algebraic expressions can be encoded as unitary transforms (quantum logic gates), for example by using combinations of the Pauli-X, CNOT and Toffoli gates. These gates are functionally complete in the Boolean logic domain.

There are many unitary transforms available in the libraries of Q#, QCL, Qiskit, and other quantum programming languages. It also appears in the literature.[42][43]

For example, , where is the number of qubits that constitutes the register , is implemented as the following in QCL:[44][13][12]

cond qufunct inc(qureg x) { // increment register int i; for i = #x-1 to 0 step -1 { CNot(x[i], x[0::i]); // apply controlled-not from } // MSB to LSB}
The generated circuit, when . The symbols , and denotes XOR, AND and NOT respectively, and comes from the Boolean representation of Pauli-X with zero or more control qubits when applied to states that are in the computational basis.

In QCL, decrement is done by "undoing" increment. The prefix ! is used to instead run the unitary inverse of the function. !inc(x) is the inverse of inc(x) and instead performs the operation . The cond keyword means that the function can be conditional.[11]

In the model of computation used in this article (the quantum circuit model), a classic computer generates the gate composition for the quantum computer, and the quantum computer behaves as a coprocessor that receives instructions from the classical computer about which primitive gates to apply to which qubits.[13]: 36–43 [14] Measurement of quantum registers results in binary values that the classical computer can use in its computations. Quantum algorithms often contain both a classical and a quantum part. Unmeasured I/O (sending qubits to remote computers without collapsing their quantum states) can be used to create networks of quantum computers. Entanglement swapping can then be used to realize distributed algorithms with quantum computers that are not directly connected. Examples of distributed algorithms that only require the use of a handful of quantum logic gates are superdense coding, the quantum Byzantine agreement and the BB84 cipherkey exchange protocol.

See also

Notes

  1. ^ Matrix multiplication of quantum gates is defined as series circuits.
  2. ^ Note, here a full rotation about the Bloch sphere is radians, as opposed to the rotation operator gates where a full turn is
  3. ^ Either the P or Ph gate can be used, as [2]: 11 [1]: 76–83 
  4. ^ This set generates every possible unitary gate exactly. However as the global phase is irrelevant in the measurement output, universal quantum subsets can be constructed e.g. the set containing Ry(θ),Rz(θ) and CNOT only spans all unitaries with determinant ±1 but it is sufficient for quantum computation.
  5. ^ a b If this actually is a stochastic effect depends on which interpretation of quantum mechanics that is correct (and if any interpretation can be correct). For example, De Broglie–Bohm theory and the many-worlds interpretation asserts determinism. (In the many-worlds interpretation, a quantum computer is a machine that runs programs (quantum circuits) that selects a reality where the probability of it having the solution states of a problem is large. That is, the machine more often than not ends up in a reality where it gives the correct answer. Because all outcomes are realized in separate universes according to the many-worlds interpretation, the total outcome is deterministic. This interpretation does however not change the mechanics by which the machine operates.)
  6. ^ See Probability axioms § Second axiom
  7. ^ The hypotenuse has length 1 because the probabilities sum to 1, so the quantum state vector is a unit vector.
  8. ^ The input is qubits, but the output is just qubits. Information erasure is not a reversible (or unitary) operation, and therefore not allowed. See also Landauer's principle.

References

  1. ^ a b c d e f g h i j Colin P. Williams (2011). Explorations in Quantum Computing. Springer. ISBN 978-1-84628-887-6.
  2. ^ a b c d e f g Barenco, Adriano; Bennett, Charles H.; Cleve, Richard; DiVincenzo, David P.; Margolus, Norman; Shor, Peter; Sleator, Tycho; Smolin, John A.; Weinfurter, Harald (1995-11-01). "Elementary gates for quantum computation". Physical Review A. 52 (5). American Physical Society (APS): 3457–3467. arXiv:quant-ph/9503016. Bibcode:1995PhRvA..52.3457B. doi:10.1103/physreva.52.3457. ISSN 1050-2947. PMID 9912645. S2CID 8764584.
  3. ^ a b Feynman, Richard P. (1986). "Quantum mechanical computers". Foundations of Physics. 16 (6). Springer Science and Business Media LLC: 507–531. Bibcode:1986FoPh...16..507F. doi:10.1007/bf01886518. ISSN 0015-9018. S2CID 122076550.
  4. ^ a b c d e f g h i Nielsen, Michael A.; Chuang, Isaac (2010). Quantum Computation and Quantum Information. Cambridge: Cambridge University Press. ISBN 978-1-10700-217-3. OCLC 43641333.
  5. ^ a b c d e Yanofsky, Noson S.; Mannucci, Mirco (2013). Quantum computing for computer scientists. Cambridge University Press. ISBN 978-0-521-87996-5.
  6. ^ Preskill, John (2021-06-06). "Quantum computing 40 years later". pp. 10–15. arXiv:2106.10522 [quant-ph].
  7. ^ "Circuit Library". IBM (Qiskit).
  8. ^ "cQASM: Qubit gate operations". QuTech.
  9. ^ "Microsoft.Quantum.Intrinsic namespace". Microsoft (Q#). 28 July 2023.
  10. ^ a b Operations and Functions (Q# documentation)
  11. ^ a b Ömer, Bernhard (2 September 2009). "Structured Quantum Programming" (PDF). Institute for Theoretical Physics, Vienna University of Technology. pp. 72, 92–107. Archived from the original (PDF) on March 27, 2022.
  12. ^ a b Ömer, Bernhard (29 Apr 2003). "Classical Concepts in Quantum Programming". International Journal of Theoretical Physics. 44 (7): 943–955. arXiv:quant-ph/0211100. doi:10.1007/s10773-005-7071-x. S2CID 119373370.
  13. ^ a b c d Ömer, Bernhard (2000-01-20). Quantum Programming in QCL (PDF) (Thesis). Institute for Theoretical Physics, Vienna University of Technology. Archived from the original (PDF) on June 1, 2022. Retrieved 2021-05-24.
  14. ^ a b Pauka SJ, Das W, Kalra R, Moini A, Yang Y, Trainer M, Bousquet A, Cantaloube C, Dick N, Gardner GC, Manfra MJ, Reilly DJ (2021). "A cryogenic CMOS chip for generating control signals for multiple qubits". Nature Electronics. 4 (4): 64–70. arXiv:1912.01299. doi:10.1038/s41928-020-00528-y. S2CID 231715555.
  15. ^ "TdgGate". Qiskit online documentation.
  16. ^ "T dagger Gate". cQASM online documentation.
  17. ^ a b Aharonov, Dorit (2003-01-09). "A Simple Proof that Toffoli and Hadamard are Quantum Universal". arXiv:quant-ph/0301040.
  18. ^ Sawicki, Adam; Karnas, Katarzyna (2017-11-01). "Universality of Single-Qudit Gates". Annales Henri Poincaré. 18 (11): 3515–3552. arXiv:1609.05780. Bibcode:2017AnHP...18.3515S. doi:10.1007/s00023-017-0604-z. ISSN 1424-0661. S2CID 253594045.
  19. ^ Sawicki, Adam; Mattioli, Lorenzo; Zimborás, Zoltán (2022-05-12). "Universality verification for a set of quantum gates". Physical Review A. 105 (5): 052602. arXiv:2111.03862. Bibcode:2022PhRvA.105e2602S. doi:10.1103/PhysRevA.105.052602. S2CID 248761038.
  20. ^ Williams, Colin P. (2011), Williams, Colin P. (ed.), "Quantum Gates", Explorations in Quantum Computing, Texts in Computer Science, London: Springer, pp. 51–122, doi:10.1007/978-1-84628-887-6_2, ISBN 978-1-84628-887-6, retrieved 2021-05-14
  21. ^ Deutsch, David (September 8, 1989), "Quantum computational networks", Proc. R. Soc. Lond. A, 425 (1989): 73–90, Bibcode:1989RSPSA.425...73D, doi:10.1098/rspa.1989.0099, S2CID 123073680
  22. ^ Shi, Xiao-Feng (2018-05-22). "Deutsch, Toffoli, and cnot Gates via Rydberg Blockade of Neutral Atoms". Physical Review Applied. 9 (5): 051001. arXiv:1710.01859. Bibcode:2018PhRvP...9e1001S. doi:10.1103/PhysRevApplied.9.051001. ISSN 2331-7019. S2CID 118909059.
  23. ^ "I operation". docs.microsoft.com. 28 July 2023.
  24. ^ "IGate". qiskit.org. Qiskit online documentation.
  25. ^ Loss, Daniel; DiVincenzo, David P. (1998-01-01). "Quantum computation with quantum dots". Physical Review A. 57 (1): 120–126. arXiv:cond-mat/9701055. Bibcode:1998PhRvA..57..120L. doi:10.1103/physreva.57.120. ISSN 1050-2947. Example in eq. 2.
  26. ^ Raz, Ran (2002). "On the complexity of matrix product". Proceedings of the thiry-fourth annual ACM Symposium on Theory of Computing. pp. 144–151. doi:10.1145/509907.509932. ISBN 1581134959. S2CID 9582328.
  27. ^ "UnitaryGate § UnitaryGate adjoint()". docs.quantum.ibm.com.
  28. ^ Griffiths, D.J. (2008). Introduction to Elementary Particles (2nd ed.). John Wiley & Sons. pp. 115–121, 126. ISBN 978-3-527-40601-2.
  29. ^ David Albert (1994). Quantum mechanics and experience. Harvard University Press. p. 35. ISBN 0-674-74113-7.
  30. ^ Sean M. Carroll (2019). Spacetime and geometry: An introduction to general relativity. Cambridge University Press. pp. 376–394. ISBN 978-1-108-48839-6.
  31. ^ David Wallace (2012). The emergent multiverse: Quantum theory according to the Everett Interpretation. Oxford University Press. ISBN 9780199546961.
  32. ^ Sean M. Carroll (2019). Something deeply hidden: Quantum worlds and the emergence of spacetime. Penguin Random House. ISBN 9781524743017.
  33. ^ Q# Online manual: Measurement
  34. ^ Juan Yin; Yuan Cao; Yu-Huai Li; Sheng-Kai Liao; Liang Zhang; Ji-Gang Ren; Wen-Qi Cai; Wei-Yue Liu; Bo Li; Hui Dai; Guang-Bing Li; Qi-Ming Lu; Yun-Hong Gong; Yu Xu; Shuang-Lin Li; Feng-Zhi Li; Ya-Yun Yin; Zi-Qing Jiang; Ming Li; Jian-Jun Jia; Ge Ren; Dong He; Yi-Lin Zhou; Xiao-Xiang Zhang; Na Wang; Xiang Chang; Zhen-Cai Zhu; Nai-Le Liu; Yu-Ao Chen; Chao-Yang Lu; Rong Shu; Cheng-Zhi Peng; Jian-Yu Wang; Jian-Wei Pan (2017). "Satellite-based entanglement distribution over 1200 kilometers". Quantum Optics. 356 (6343): 1140–1144. arXiv:1707.01339. doi:10.1126/science.aan3211. PMID 28619937. S2CID 5206894.
  35. ^ Billings, Lee (23 April 2020). "China Shatters "Spooky Action at a Distance" Record, Preps for Quantum Internet". Scientific American.
  36. ^ Popkin, Gabriel (15 June 2017). "China's quantum satellite achieves 'spooky action' at record distance". Science – AAAS.
  37. ^ Aaronson, Scott (2009). "BQP and the Polynomial Hierarchy". arXiv:0910.4698 [quant-ph].
  38. ^ Dawson, Christopher M.; Nielsen, Michael (2006-01-01). "The Solovay-Kitaev algorithm". Quantum Information and Computation. 6 (1). Section 5.1, equation 23. arXiv:quant-ph/0505030. doi:10.26421/QIC6.1-6.
  39. ^ Matteo, Olivia Di (2016). "Parallelizing quantum circuit synthesis". Quantum Science and Technology. 1 (1): 015003. arXiv:1606.07413. Bibcode:2016QS&T....1a5003D. doi:10.1088/2058-9565/1/1/015003. S2CID 62819073.
  40. ^ Aaronson, Scott (2002). "Quantum Lower Bound for Recursive Fourier Sampling". Quantum Information and Computation. 3 (2): 165–174. arXiv:quant-ph/0209060. Bibcode:2002quant.ph..9060A. doi:10.26421/QIC3.2-7.
  41. ^ Q# online manual: Quantum Memory Management
  42. ^ Ryo, Asaka; Kazumitsu, Sakai; Ryoko, Yahagi (2020). "Quantum circuit for the fast Fourier transform". Quantum Information Processing. 19 (277): 277. arXiv:1911.03055. Bibcode:2020QuIP...19..277A. doi:10.1007/s11128-020-02776-5. S2CID 207847474.
  43. ^ Montaser, Rasha (2019). "New Design of Reversible Full Adder/Subtractor using R gate". International Journal of Theoretical Physics. 58 (1): 167–183. arXiv:1708.00306. Bibcode:2019IJTP...58..167M. doi:10.1007/s10773-018-3921-1. S2CID 24590164.
  44. ^ QCL 0.6.4 source code, the file "lib/examples.qcl"

Sources