Supplementary Information: Difference between revisions

no edit summary
No edit summary
No edit summary
Line 18: Line 18:
== Measurement Based Quantum Computation (MBQC)==
== Measurement Based Quantum Computation (MBQC)==
MBQC is a formalism used for quantum computation by operating only single qubit measurements on a fixed set of entangled states, also known as graph states. Graph states denote any graph where each node represents a quantum state, and the edges denote entanglement between any two vertices. The measurement on successive layers of qubits is decided by previous measurement outcomes. Outcomes of last qubit layer gives the result of concerned computation. Following, we elucidate in detail certain concepts necessary to understand the working of MBQC.
MBQC is a formalism used for quantum computation by operating only single qubit measurements on a fixed set of entangled states, also known as graph states. Graph states denote any graph where each node represents a quantum state, and the edges denote entanglement between any two vertices. The measurement on successive layers of qubits is decided by previous measurement outcomes. Outcomes of last qubit layer gives the result of concerned computation. Following, we elucidate in detail certain concepts necessary to understand the working of MBQC.
Gate Teleportation The idea comes from one-qubit teleporation. This means that one can transfer an unknown qubit |ψi without actually sending it via a quantum channel. The underlying equations explain the notion. See [[#xref:Figure 1|Supplementary Information|label=Figure 1] for circuit.<br/>
Gate Teleportation The idea comes from one-qubit teleporation. This means that one can transfer an unknown qubit |ψi without actually sending it via a quantum channel. The underlying equations explain the notion. See [[Supplementary Information#1|Figure 1]] for circuit.<br/>
  [[File:One Bit Teleportation.jpg|right|label=Figure 1|thumb|1000px|One Bit Teleportation]](H ⊗ I)(CZ12)|ψi1 |+i2 <br/>
<div id="1">
  [[File:One Bit Teleportation.jpg|right|thumb|1000px|Figure 1: One Bit Teleportation]]
</div>(H ⊗ I)(CZ12)|ψi1 |+i2 <br/>
= (H ⊗ I)(CZ12)(a|0i1 + b|1i1)|+i2<br/>
= (H ⊗ I)(CZ12)(a|0i1 + b|1i1)|+i2<br/>
= (H ⊗ I)(a|0i1 |+i2 + b|1i1 |−i2)<br/>
= (H ⊗ I)(a|0i1 |+i2 + b|1i1 |−i2)<br/>
Line 28: Line 30:
= |0i1 ⊗ H |ψi2 + |1i1 ⊗ X |ψi2<br/>
= |0i1 ⊗ H |ψi2 + |1i1 ⊗ X |ψi2<br/>
= |mi ⊗ XmH |ψi<br/>
= |mi ⊗ XmH |ψi<br/>
Similarly if we have the input state rotated by a Z(θ) gate the circuit would look like Figure 2. As the rotation gate Z(θ) commutes with Controlled-Phase gate. Hence, Figure 3 is justified.<br/>
Similarly if we have the input state rotated by a Z(θ) gate the circuit would look like [[Supplementary Information#2a|Figure 2a]]. As the rotation gate Z(θ) commutes with Controlled-Phase gate. Hence, [[Supplementary Information#2b|Figure 2b]] is justified.<br/>
 
<div id="2"><div id="2a"><div id="2b"><ul>
<div><ul>  
<li style="display: inline-block;"> [[File:Modified Input.jpg|frame|500px|2(a)Modified Input]]</li>
<li style="display: inline-block;"> [[File:Modified Input.jpg|thumb|widths=500px|Modified Input]]</li>
<li style="display: inline-block;"> [[File:Gate Teleportation.jpg|frame|500px|2(b)Gate Teleportation]] </li>
<li style="display: inline-block;"> [[File:Gate Teleportation.jpg|thumb|widths=500px|Gate Teleportation]] </li>
</ul></div></div></div><br/>
</ul></div>
This shows that for a pair of C-Z entangled qubits, if the second qubit is in |+i state (not an eigen value of Z) then one can teleport (transfer) the first qubit state operated by any unitary gate U to the second qubit by performing operations only on the first qubit and measuring it. Next, we would need to make certain Pauli corrections (in this case Xm) to obtain U |ψi. In other words, we can say the operated state is teleported to the second qubit by a rotated basis measurement of the first qubit with additional Pauli corrections.
This shows that for a pair of C-Z entangled qubits, if the second qubit is in |+i state (not an eigen value of Z) then one can teleport (transfer) the first qubit state operated by any unitary gate U to the second qubit by performing operations only on the first qubit and measuring it. Next, we would need to make certain Pauli corrections (in this case Xm) to obtain U |ψi. In other words, we can say the operated state is teleported to the second qubit by a rotated basis measurement of the first qubit with additional Pauli corrections.
Graph states The above operation can also be viewed as a graph state with two nodes and one edge. The qubit 1 is measured in a rotated basis HZ(θ), thus leaving qubit 2 in desired state and Pauli Correction Xs1HZ(θ1)|ψi, where s1 is the measurement outcome of qubit 1.<br/>
Graph states The above operation can also be viewed as a graph state with two nodes and one edge. The qubit 1 is measured in a rotated basis HZ(θ), thus leaving qubit 2 in desired state and Pauli Correction Xs1HZ(θ1)|ψi, where s1 is the measurement outcome of qubit 1.[[Supplementary Information#3|Figure 3]]<br/>
 
<div id="3">
[[File:Graph States for Single Qubit States.jpg|center|thumb|500px|Graph State for Single Qubit Gates]]
[[File:Graph States for Single Qubit States.jpg|center|thumb|1000px|Figure 3: Graph State for Single Qubit Gates]]</div>
Now, suppose we need to operate the state with two unitary gates Z(θ1) and Z(θ2). This can be done by taking the output state of Z(θ1) gate as the input state of Z(θ2) gate and then repeating gate teleportation for this setup, as described above. Thus, following the same pattern for graph states we have now three nodes (two measurement qubits for two operators and one output qubit) with two edges, entangled as one dimensional chain(See Figure 4).<br/>
Now, suppose we need to operate the state with two unitary gates Z(θ1) and Z(θ2). This can be done by taking the output state of Z(θ1) gate as the input state of Z(θ2) gate and then repeating gate teleportation for this setup, as described above. Thus, following the same pattern for graph states we have now three nodes (two measurement qubits for two operators and one output qubit) with two edges, entangled as one dimensional chain(See [[Supplementary Information#4|Figure 4]]).<br/>
   
  <div id="4">
  [[File:Gate Teleportation for Multiple Qubit Gates.jpg|center|thumb|500px|Gate Teleporation for Multiple Single Qubit Gates]]
  [[File:Gate Teleportation for Multiple Qubit Gates.jpg|center|thumb|500px|Figure 4: Gate Teleporation for Multiple Single Qubit Gates]]</div>
The measurement on qubit 1 will operate Xs1HZ(θ1)|ψi⊗I on qubits 2 and 3. If qubit 2 when measured in the given basis yields outcome s2, qubit 3 results in the following state Xs2HZ(θ2)Xs1HZ(θ1)|ψi. Using the relation we shift all the Pauli corrections to one end i.e. qubit 3 becomes Xs2Zs1HZ(±θ2)HZ(θ1)|ψi{equation missing}(Zs1H = HXs1). This method of computation requires sequential measurement of states i.e. all the states should not be measured simultaneously. As outcome of qubit 1 can be used to choose sign of ±θ2. This technique is also known as adaptive measurement. With each measurement, the qubits before the one measured at present have been destroyed by measurement. It is a feed-forward mechanism, hence known as one way quantum computation.<br/>
The measurement on qubit 1 will operate Xs1HZ(θ1)|ψi⊗I on qubits 2 and 3. If qubit 2 when measured in the given basis yields outcome s2, qubit 3 results in the following state Xs2HZ(θ2)Xs1HZ(θ1)|ψi. Using the relation we shift all the Pauli corrections to one end i.e. qubit 3 becomes Xs2Zs1HZ(±θ2)HZ(θ1)|ψi{equation missing}(Zs1H = HXs1). This method of computation requires sequential measurement of states i.e. all the states should not be measured simultaneously. As outcome of qubit 1 can be used to choose sign of ±θ2. This technique is also known as adaptive measurement. With each measurement, the qubits before the one measured at present have been destroyed by measurement. It is a feed-forward mechanism, hence known as one way quantum computation.<br/>
Cluster States In case of multi-qubit quatum circuits, one needs a 2-dimensional graph state. Cluster State is a square lattice used as substrate for such computation. All the nodes are in |+i entangled by C-Z indicated by the edges. It is known to be universal i.e. it can simulate any quatum gate.<br/>
Cluster States In case of multi-qubit quatum circuits, one needs a 2-dimensional graph state. Cluster State is a square lattice used as substrate for such computation. All the nodes are in |+i entangled by C-Z indicated by the edges. It is known to be universal i.e. it can simulate any quatum gate.<br/>
<div id="5">
[[File:Cluster State.jpg|center|thumb|500px|Cluster State]]Each row would thus represent the teleporation of starting qubit in that row horizontally. On the other hand, vertical edges indicate different input qubits linked with multi-qubit gates (same as circuit model). For example, see Figure 6 to understand the conversion from circuit model to graph state model. As the computation relation follows X = HZH, thus, Figure 6a [[Supplementary Information#6|6a]] represents Circuit diagram for C-NOT gate in terms of C-Z gate and Single Qubit Gate H.<br/>
[[File:Cluster State.jpg|center|thumb|500px|Figure 5: Cluster State]]</div>Each row would thus represent the teleporation of starting qubit in that row horizontally. On the other hand, vertical edges indicate different input qubits linked with multi-qubit gates (same as circuit model). For example, see Figure [[Supplementary Information#6|Figure 6]] to understand the conversion from circuit model to graph state model. As the computation relation follows X = HZH, thus, Figure [[Supplementary Information#6a|Figure 6a]] represents Circuit diagram for C-NOT gate in terms of C-Z gate and Single Qubit Gate H.<br/>
<div id="6"><ul>  
<div id="6"><div id="6a"><div id="6b"><ul>  
<li style="display: inline-block;"> [[File:Circuit Diagram to implement C-NOT.jpg|frame|500px|Circuit Diagram to implement C-NOT]] </li>
<li style="display: inline-block;"> [[File:Circuit Diagram to implement C-NOT.jpg|frame|500px|(a)Circuit Diagram to implement C-NOT]] </li>
<li style="display: inline-block;"> [[File:Graph State Pattern for C-NOT.jpg|frame|500px|Graph State Pattern for C-NOT]] </li>
<li style="display: inline-block;"> [[File:Graph State Pattern for C-NOT.jpg|frame|500px|(b)Graph State Pattern for C-NOT]] </li>
<center><caption>Measurement Pattern from Circuit Model</caption></center>
<center><caption>Figure 6: Measurement Pattern from Circuit Model</caption></center>
</ul></div><br/>
</ul></div></div></div><br/>
Figure 6b shows implementation of the first Hadamard gate on the second input state as measurement M2 on qubit 2. Then C-Z gate is implemented by the entangled qubits 3 and 1 in the graph state. Qubit 3 is entangled to another qubit 4 to record the output while measurement M3 on qubit 3 implements the second Hadamard gate. Finally, the states to which qubits (1) and (4) are reduced to determine the output states of the two input qubits after C-NOT gate operation. It is evident that one needs to remove certain nodes from the cluster state in order to implement the above shown graph state. This can be done by Z-basis measurements. Such measurements would leave the remaining qubits in the cluster state with extra Pauli corrections. This can be explained as follows. Consider a 2-dimesional graph state {1,2}. If qubit 1 is to be eliminated, we operate C-Z with 2 as target and 1 as control.<br/>
[[Supplementary Information#6a|Figure 6b]] shows implementation of the first Hadamard gate on the second input state as measurement M2 on qubit 2. Then C-Z gate is implemented by the entangled qubits 3 and 1 in the graph state. Qubit 3 is entangled to another qubit 4 to record the output while measurement M3 on qubit 3 implements the second Hadamard gate. Finally, the states to which qubits (1) and (4) are reduced to determine the output states of the two input qubits after C-NOT gate operation. It is evident that one needs to remove certain nodes from the cluster state in order to implement the above shown graph state. This can be done by Z-basis measurements. Such measurements would leave the remaining qubits in the cluster state with extra Pauli corrections. This can be explained as follows. Consider a 2-dimesional graph state {1,2}. If qubit 1 is to be eliminated, we operate C-Z with 2 as target and 1 as control.<br/>
CZ12 |+i1 |+i2 = |0i1 |+i2 + |1i1 |−i2 ,<br/>
CZ12 |+i1 |+i2 = |0i1 |+i2 + |1i1 |−i2 ,<br/>
Thus, if measurement on 1 yields m, qubit 2 would be in the state Zm |+i. Hence, such Z-basis measurements invoke an extra Zm Pauli correction on all the neigbouring sites of 1 with 1 eliminated, in the resulting graph state. Thus, to summarise, we design a measurement pattern from gate teleportation circuit of the desired computation as shown above. The cluster state is converted into the required graph state by Z-basis measurement on extraneous sites. Measuring all the qubits in the required basis and we get the required computation in the form of classical outcome register from measurement of the last layer of qubits. If it is a quantum function, the last layer of qubits is the output quantum register.<br/>
Thus, if measurement on 1 yields m, qubit 2 would be in the state Zm |+i. Hence, such Z-basis measurements invoke an extra Zm Pauli correction on all the neigbouring sites of 1 with 1 eliminated, in the resulting graph state. Thus, to summarise, we design a measurement pattern from gate teleportation circuit of the desired computation as shown above. The cluster state is converted into the required graph state by Z-basis measurement on extraneous sites. Measuring all the qubits in the required basis and we get the required computation in the form of classical outcome register from measurement of the last layer of qubits. If it is a quantum function, the last layer of qubits is the output quantum register.<br/>
Line 56: Line 57:
== Brickwork States==
== Brickwork States==
Although cluster states are universal for MBQC, yet we need to tailor these to the specific computation by performing some computational (Z) basis measurements. If we were to use this principle for blind quantum computing, Client would have to reveal information about the structure of the underlying graph state. Thus, for the UBQC protocol, we introduce a new family of states called the Brickwork states which are universal for X − Y plane measurements and thus do not require the initial computational basis measurements. It was later shown that the Z-basis measurements can be dropped for cluster states and hence cluster states are also universal in X-Y measurements.
Although cluster states are universal for MBQC, yet we need to tailor these to the specific computation by performing some computational (Z) basis measurements. If we were to use this principle for blind quantum computing, Client would have to reveal information about the structure of the underlying graph state. Thus, for the UBQC protocol, we introduce a new family of states called the Brickwork states which are universal for X − Y plane measurements and thus do not require the initial computational basis measurements. It was later shown that the Z-basis measurements can be dropped for cluster states and hence cluster states are also universal in X-Y measurements.
   
  <div id="7">
  [[File:Brickwork State.jpg|center|thumb|500px|Brickwork State]]
  [[File:Brickwork State.jpg|center|thumb|500px|Figure 7: Brickwork State]]</div>
'''Definition 1''' A brickwork state Gn×m, where m ≡ 5 (mod 8), is an entangled state of n × m qubits constructed as follows (see also Figure 7):
'''Definition 1''' A brickwork state Gn×m, where m ≡ 5 (mod 8), is an entangled state of n × m qubits constructed as follows (see also Figure 7):
# Prepare all qubits in state |+i and assign to each qubit an index (i,j), i being a column (i ∈ [n]) and j being a row (j ∈ [m]).
# Prepare all qubits in state |+i and assign to each qubit an index (i,j), i being a column (i ∈ [n]) and j being a row (j ∈ [m]).
Write, autoreview, editor, reviewer
3,125

edits