quantum computing and its applications · 2018-12-03 · •quantum computers alone are not...
TRANSCRIPT
Quantum Computing and Its Applications
Jia Jie NgohAdvisor : Prof. William J. Song
22
Overview• Introduction• Background
• Quantum Bits and Gates• Qubit Measurement• Experiment Environment
• Applications: Quantum Fourier Transform• Conclusion
3
Introduction• It becomes more challenging to drive the performance growth of
computing systems in conventional approaches, i.e., Moore’s Law.
• Quantum computing draws growing attention as an alternative solution to overcome the physical limitations of traditional computing systems and methods.
“How do quantum algorithms compare to classical computational methods?”
4
Quantum Bits• A quantum bit (or qubit) represents a datum in quantum computing.
• As opposed to a classical bit that can only be 0 or 1, the qubit stores the superposition status of 0 and 1 as follows.
| ⟩# = %| ⟩0 + (| ⟩1
| ⟩# = *+, -2 | ⟩0 + /01,23 -2 | ⟩1Bloch Sphere representation of a qubit:
5
Quantum Gates
Types Unitary Transform Functions
X gate 0 11 0 Bit flipping
Hadamard gate121 11 −1 Superposition
Controlled-NOT (CNOT)1 00 1
0 00 0
0 00 0
0 11 0
Controlling target qubit
• Quantum gates are used to manipulate qubits.Examples of Commonly Used Quantum Gates
6
Qubit Measurement• The observation of a qubit results in logical bits, 0 and 1, despite
its quantum property, e.g., superposition.• The observed result must be either 0 or 1 with the probability of
! " or # ", respectively; ! " + # " = 1.• Reading qubits inevitably incurs measurement errors.
Types Description
Gate error Errors occur in quantum gates, due to noise interference, e.g., Pauli error, thermal relaxation.
Readout error Errors occur in the process of probing qubits to determine its logical state.
7
Results of Measuring Qubit• There are two possible outcomes from measuring qubit, ideal
measurement (no errors) and real measurement (with errors).
0.0
0.2
0.4
0.6
0.8
1.0
1
Prob
abilitie
s
Output
0.0
0.2
0.4
0.6
0.8
1.0
0 1
Prob
abilitie
s
Output
(a) Ideal measurement (b) Real measurement
8
Experiment Environment• IBM provides public-use of cloud-based quantum computing
through online platform called IBM Q Experience.• Quantum programs are coded using Python in Qiskit, an open-
source quantum computing framework and then executed in real quantum processors.
Quantum programming Program offloading
User QiskitQuantum ProcessorResults report
9
Complexity of Quantum Fourier Transform• Quantum Fourier Transform (QFT) has the complexity of O(n2)
compared to O(n2n) of Fast Fourier Transform (FFT).• A function f(x) can be evaluated for many different values of x
simultaneously for QFT owing to quantum parallelism.
FFT
O(2#(∑%&'() *%. ,%)) = / 2# ∑%&'# 2= /(02#)
QFT
#(#1')2 operationsarerequired =O(n2)
10
Derivation of QFT Quantum Circuit
| ⟩# → 12' (
)*+
,-./012,341)/,-| ⟩6 = | ⟩0 +2,34+.1-| ⟩1 | ⟩0 +2,34+.1-;<1-| ⟩1 … | ⟩0 +2,34+.1<1>…1-| ⟩1
2'
• QFT quantum circuit is built based on the equation below.
Quantum circuit representation of QFT algorithm
11
Code of QFT
(a) QFT program (b) Error modeling in Qiskitdef input_state(circuit, q, n):
#n-qubit input state for QFT that produces output 1s string
for j in range(n):circuit.h(q[j])circuit.u1(math.pi/float(2**(j)), q[j])
def qft(circuit, q, n):#n-qubit Quantum Fourier Transform on
qubits in circuitfor j in range(n):
for k in range(j):circuit.cu1(math.pi/float(2**(j-
k)), q[j], q[k])circuit.h(q[j])
z = 0.995004165 + 1j * 0.099833417z = z / abs(z)u_error = np.array([[1, 0], [0, z]])simulator_config = {“noise_params”:
{‘gate_time’: 0.00545,‘p_depol’: 0.001,‘p_pauli’: [0, 0, 0.01],‘U_error’: u_error,‘readout_error’: 0.0620
}}
• The following codes create quantum program of QFT.
12
Scalability of QFT – 9 qubits
• Below is the result of running QFT circuit for 9 qubits.
0.00.20.40.60.81.0
0010
11111
0011
11111
0110
11111
0111
10111
0111
11101
0111
11111
1001
11101
1010
11111
1011
11101
1011
11111
1101
01101
1101
10111
1101
11110
1110
01111
1110
10101
1110
11010
1110
11101
1111
00011
1111
00111
1111
01111
1111
10111
1111
11001
1111
11011
1111
11101
1111
11111
Prob
abilitie
s
Output
(a) Real measurement
13
Quantum Circuit of 9 qubits QFT• Below is the generated quantum circuit of QFT for 9 qubits.• IBM Q Experience supports up to 32 qubits, but Qiskit GUI can
handle only a handful number of qubits.
14
QFT Extension: Shor’s Algorithm
• Below is the generated quantum circuit of Shor’s Algorithm.
15
Result of running Shor’s Algorithm
(a) Ideal measurement (b) Real measurement
• Below is the result of running Shor’s Algorithm for 5 qubits.
0.0
0.2
0.4
0.6
0.8
1.00000
0
0001
0
0010
0
0011
0
Prob
abilitie
s
Output
0.0
0.2
0.4
0.6
0.8
1.0
0000
0
0000
1
0001
0
0001
1
0010
0
0010
1
0011
0
0011
1
Prob
abilitie
s
Output
16
Conclusion• Quantum computers alone are not sufficient to completely replace
traditional computing systems.
• However, they may significantly reduce computational complexity for particular algorithms (e.g., Quantum Fourier Transform) and hence can be used as accelerators, i.e., Quantum Accelerator.
• The current limitations of quantum processors lie in reliability, scalability, and programmability support.
17
References1) "IBM Q Experience", Quantumexperience.ng.bluemix.net, 2018.
[Online]. Available: https://quantumexperience.ng.bluemix.net/qx/experience. [Accessed: 11- Oct- 2018].
2) M. A. Nielsen and I. L. Chuang, Quantum Computation and Quantum Information, 10th ed. Cambridge University Press, 2010.
3) Monz, T., Nigg, D., Martinez, E., Brandl, M., Schindler, P., Rines, R., Wang, S., Chuang, I. and Blatt, R. (2016). Realization of a scalable Shor algorithm. Science, 351(6277), pp.1068-1070.