Download From Quantum Gates to Quantum Learning

Document related concepts

Ensemble interpretation wikipedia , lookup

Wave–particle duality wikipedia , lookup

Theoretical and experimental justification for the Schrödinger equation wikipedia , lookup

Topological quantum field theory wikipedia , lookup

Renormalization wikipedia , lookup

Relativistic quantum mechanics wikipedia , lookup

Renormalization group wikipedia , lookup

Double-slit experiment wikipedia , lookup

Bell test experiments wikipedia , lookup

Basil Hiley wikipedia , lookup

Bohr–Einstein debates wikipedia , lookup

Scalar field theory wikipedia , lookup

Delayed choice quantum eraser wikipedia , lookup

Particle in a box wikipedia , lookup

Quantum dot cellular automaton wikipedia , lookup

Quantum decoherence wikipedia , lookup

Path integral formulation wikipedia , lookup

Quantum field theory wikipedia , lookup

Quantum electrodynamics wikipedia , lookup

Measurement in quantum mechanics wikipedia , lookup

Copenhagen interpretation wikipedia , lookup

Coherent states wikipedia , lookup

Probability amplitude wikipedia , lookup

Density matrix wikipedia , lookup

Hydrogen atom wikipedia , lookup

Bell's theorem wikipedia , lookup

Quantum dot wikipedia , lookup

Max Born wikipedia , lookup

Quantum entanglement wikipedia , lookup

Quantum fiction wikipedia , lookup

Many-worlds interpretation wikipedia , lookup

Orchestrated objective reduction wikipedia , lookup

EPR paradox wikipedia , lookup

History of quantum field theory wikipedia , lookup

Interpretations of quantum mechanics wikipedia , lookup

Quantum computing wikipedia , lookup

Symmetry in quantum mechanics wikipedia , lookup

Canonical quantization wikipedia , lookup

Quantum key distribution wikipedia , lookup

Quantum teleportation wikipedia , lookup

Quantum group wikipedia , lookup

T-symmetry wikipedia , lookup

Quantum machine learning wikipedia , lookup

Quantum cognition wikipedia , lookup

Hidden variable theory wikipedia , lookup

Quantum state wikipedia , lookup

Transcript
From Quantum Gates to
Quantum Learning:
recent research and open
problems in quantum circuits
Marek A. Perkowski,
Portland Quantum Logic Group,
Department of Electrical Engineering and Computer Science,
Korea Advanced Institute of Science and Technology, and
Department of Electrical and Computer Engineering,
Portland State University, USA.
The computer as we know it?
1947 First point contact transistor
by Bardeen and Brattain
http://www.pbs.org/transistor/scie
nce/events/pointctrans.html
1999 Pentium IIIB
www.icknowledge.com
Nano-system
How small is a nanometer?
•
•
•
•
•
•
•
•
1 meter
10 mm
1 mm
10 nm
1nanometer
0.1 nm
1 picometer
1 femtometer
–
–
–
–
–
Size of red blood cell
= a millionth of a meter
Size of polio virus
= a billionth of a meter
Size of the hydrogen
atom
– = a trillionth of a meter
– = 10 -15 m, size of a
proton
History
• 1970s and 1980s, introduction of
quantum computers (Richard
Feynmann, David Deutsch, and
Paul Benioff)
• 1994, Peter Shor’s factoring
algorithm
• 1996, Lov Grover, searching
algorithm
• 1998, 1999, 2001 Isaac L.
Chuang, developed the world's
first 2-qubit, 3-qubit, 5-qubit and
7-qubit quantum computer
People
First Ideas…(1982)”
Turing Machine …(1936)”
A. Turing
R. Feyemann
“… Quantum
Circuits…(1985)”
“…Factorization
…(1997)”
D. Deutsch
P. Shor
Number of Atoms in a Useful System
From R. Keyes, IBM J. Res. Develop (1988)
# atoms to store a bit
# dopant atoms/bipolar transistor
EX: Quantum Parallelism
• Quantum:
– Put all 7-bits into a superposition state
– superposition allows quantum computer to
make calculations on all 128 possible
numbers (27) in ONE iteration i.e. finishes
in 1 second.
– Tremendous possibilities… imagine doing
computations on even larger sample spaces
all at the same time!!!
InfoJiffy
unit: 1 Quantum
bit. Physical system:
2 states
Theory
|0>
•
•
•
•
•
|1>
|0> and |1>
Quantum nature: a combination of both.
In preparing the initial state: only one of the 2 states
On measurement: only one state found.
Probability: the state’s component in the mix
Both preparation and measurement in contact with a macro
system
Qubits as binary Qudits
•
In multi-valued (MV) Quantum Computing (QC), the unit of memory
(information) is qudit.
•
For instance, ternary logic values of 0, 1, and 2 are represented by a
set of distinguishable different basis states of a qutrit.
•
These states can be a photon’s polarizations or an elementary
particle’s spins.
•
•
After encoding these distinguishable quantities into multiple-valued
values, qutrit states are represented by basis states |0>, |1> and |2> ,
respectively.
A qubit, used in binary QC uses only two basis states, |0> and |1>
•
Qubit and qutrit are then special cases of qudits
A
PA
B
QB
C
R  AB  C
Qudits
•
•
•
•
•
•
•
•
Qudits exist in a linear superposition of
states, and are characterized by a wave
function .
As an example (), it is possible to have
light polarizations other than purely
horizontal or vertical, such as slant 45
corresponding to the linear superposition
of .
In ternary logic, the notation for the
superposition is , where , , and  are
complex numbers.
These intermediate states cannot be
distinguished, rather a measurement will
yield that the qutrit is in one of the basis
states, , , or .
The probability that a measurement of a
qutrit yields state is , state is , and state
is .
The sum of these probabilities is one.
The absolute values are required since, in
general, ,  and γ are complex
quantities.
Pairs of qutrits are capable of representing
nine distinct states,, , , , , , , , and , as well
as all possible superpositions of these
states.
Quantum
Logic
Circuits
Quantum Logic
Single photon
Specchio
50%
1
0
50%
Optical sensor
… strange behavior
0
1
0
1
Quantum Gate
0
1
0
1
0
1
1
not
not
NOT
0
Qubit
Qubit in a Ion Trap
Deterministic Turing Machine
Initial State
Final State
Deterministic Turing Machine transits deterministically from
initial to final state.
Probabilistic Turing Machine
Probabilistic output states
P4
Probabilities of final output states
P5
P1
P2
P3
P6
P7
P8
P9
P = P2P7 + P3P8
Quantum Computation
A = A1A2 + A3A4
A1
A3
A2
P = |A1A2 + A3A4|2
= |A1A2 + A3A4|2
A4
+2Re(A1A2A3A4)
Decoherence
A beam-splitter
0
0
1
1
50%
50%
The simplest explanation is that the beamsplitter acts as a classical coin-flip,
randomly sending each photon one way or
the other.
Quantum Interference
0
0
1
1
100%
The simplest explanation must be wrong,
since it would predict a 50-50 distribution.
More experimental data
0
1


0 sin  2 
2  
1 cos  
2
2

A new theory
The particle can exist in a linear combination
or superposition of the two paths
0
1
i
1
0 
1
2
2


0 sin  2 
2  
1 cos  
2
2

i
ei
0 
1
2
2
ei - 1
i(ei  1)
0 
1
2
2
Probability Amplitude and
Measurement
If the photon is measured when it is in the
state 0 0  1 1
then we get 0 with
2
probability  0
0

1

0
1
0
2
1
2
2
 0  1
2
1
Quantum Operations
The operations are induced by the apparatus
linearly, that is, if 0  i 0  1 1
2
then
and
2
1
i
1 
0 
1
2
2
 i
 0 0  1 1   0 
0 
 2
i

  0
 1
2

1


1   1 
2 

1 

 0   0
2

1
i

0 
1
2
2 
1
i 
 1
1
2
2
Quantum Operations
Any linear operation that takes states
2
2
satisfying
0 0  1 1
 0  1  1
and maps them to states
'0 0  '1 1 satisfying
must be UNITARY
'
0

2
'
1

2
1
Linear Algebra
0
corresponds to
1
corresponds to
0 0  1 1 corresponds to
1
 
0
0
 
1
1
 0   0 
 0    1     
0
 1   1 
Linear Algebra
corresponds to

corresponds to






i
2
1
2
1 

2
i 

2
1 0 


i 
0 e 
Linear Algebra
0

corresponds to






i
2
1
2
1 

2
i 

2

1
0

 


i  
0 e  


i
2
1
2
1 

2
i 

2
1
 
0
Linear Algebra
u00 u01 
U

 u10 u11 
is unitary if and only if

u
u
u


00
01
t
00
UU  


u10 u11  u01*
*
u10   1 0
I
*   

u11  0 1 

*
Abstraction
The two position states of a photon in
a Mach-Zehnder apparatus is just one
example of a quantum bit or qubit
Except when addressing a particular
physical implementation, we will simply
talk about “basis” states 0 and 1
and unitary operations like
H
and







H
(a)
(b)
1
2
1
2
1 

2
-1 

2
Re
+
+
-
|0>
|1>
1
2
1
2
Im
1
2
(c)
1
2
|0>
|1>
+
1
-
1
|0>
2
2
|1>
(d)
1 0 


i 
0 e 

(b)
(a)
cos
|0>
|1>
(c)
-
sin
cos
+
sin
(d)
e i
An arrangement like
0

is represented with a network like
0
H

H
0
H
+
+

H
(a)
+
+
1
2
1
1
2
1
2
2
-
-
1
2
cos
-
sin
1
2
-
1
-
1
2
2
cos
sin
+
(b)
H
H
(a)
|0>
|0>
|00>
+
+
|0>
1
2
1
+
+
|1>
|0>
|01>
|10>
1
-
1
2
+
1
2
1
1
-
1
|1>
|11>
1
-
1
2
2
|00>
2
|01>
2
|1>+
+
1
2
1
|10>
2
2
-
1
-
2
|1>
+
2
2
2
-
1
-
1
-
1
2
|11>
2
(b)
More than one qubit
If we concatenate two qubits

0
0  1 1
 
0
0  1 1

we have a 2-qubit system with 4 basis states
0 0  00
0 1  01
1 0  10
1 1  11
and we can also describe the state as
00 00  01 01  10 10  11 11
or by the vector
  0 0 


  0    0    0 
           
 1 0  1  1
 
 1 1
More than one qubit
In general we can have arbitrary
superpositions
00 0 0  01 0 1  10 1 0  11 1 1
2
2
2
2
 00   01  10  11  1
where there is no factorization into the
tensor product of two independent qubits.
These states are called entangled.
Measuring multi-qubit systems
If we measure both bits of
00 0 0  01 0 1  10 1 0  11 1 1
we get x y
with probability  xy
2
Classical
Versus
Quantum
Classical vs. Quantum Circuits
• Goal: Fast, low-cost implementation of useful algorithms
using standard components (gates) and design techniques
• Classical Logic Circuits
–
–
–
–
–
Circuit behavior is governed implicitly by classical physics
Signal states are simple bit vectors, e.g. X = 01010111
Operations are defined by Boolean Algebra
No restrictions exist on copying or measuring signals
Small well-defined sets of universal gate types, e.g. {NAND},
{AND,OR,NOT}, {AND,NOT}, etc.
– Well developed CAD methodologies exist
– Circuits are easily implemented in fast, scalable and macroscopic
technologies such as CMOS
Classical vs. Quantum Circuits
• Quantum Logic Circuits
– Circuit behavior is governed explicitly by quantum mechanics
– Signal states are vectors interpreted as a superposition of
binary “qubit” vectors with complex-number coefficients
 
2 n -1
c i
i0
i i0
i n -1 n-1
– Operations are defined by linear algebra over Hilbert Space
and can be represented by unitary matrices with complex
elements
– Severe restrictions exist on copying and measuring signals
– Many universal gate sets exist but the best types are not
obvious
– Circuits must use microscopic technologies that are slow,
fragile, and not yet scalable, e.g., NMR
Quantum Circuit
Characteristics
• Unitary
Operations
– Gates and circuits must be reversible (informationlossless)
• Number of output signal lines = Number of input signal
lines
• The circuit function must be a bijection, implying that
output vectors are a permutation of the input vectors
– Classical logic behavior can be represented by
permutation matrices
– Non-classical logic behavior can be represented
including state sign (phase) and entanglement
Quantum Circuit
Characteristics
• Quantum Measurement
– Measurement yields only one state X of the
superposed states
– Measurement also makes X the new state and
so interferes with computational processes
– X is determined with some probability, implying
uncertainty in the result
– States cannot be copied (“cloned”), implying that
signal fanout is not permitted
– Environmental interference can cause a
measurement-like state collapse (decoherence)
Classical vs. Quantum Circuits
Classical adder
cn–1
a0
s0
b0
s1
a1
b1
s2
a2
b2
s3
a3
Sum
b3
cn
Carry
Classical vs. Quantum Circuits
Quantum adder
Reversible
Circuits
Reversible Circuits
• Reversibility was studied around 1980 motivated by
power minimization considerations
• Bennett, Toffoli et al. showed that any classical logic
circuit C can be made reversible with modest
overhead
Circuit
i
…


m outputs
“Junk” 
…
Reversible
Boolean
Circuit
…
…
“Junk”



… f(i)



n inputs
Generic
Boolean



i
…

f(i)
Reversible Circuits
• How to make a given f reversible
– Suppose f :i  f(i) has n inputs m outputs
– Introduce n extra outputs and m extra inputs
– Replace f by frev: i, j  i, f(i)  j where  is XOR
• Example 1: f(a,b) = AND(a,b)
a
b
c
Reversible
AND
gate
a
b
f = ab  c
a b c
a b f
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
1
0
• This is the well-known Toffoli gate, which realizes AND
when c = 0, and NAND when c = 1.
Reversible Circuits
• Reversible gate family [Toffoli 1980]
(Toffoli gate)
• Every Boolean function has a reversible
implementation using Toffoli gates.
• There is no universal reversible gate with fewer
than three inputs
Quantum
Gates
Quantum Gates
• One-Input
–
–
–
–
gate: NOT
Input state: c0|0 + c1|1
Output state: c1|0 + c0|1
Pure states are mapped thus:
0


Gate operator (matrix) is 1

0 1
0 1  
1 0
1 01 0 0 1
– As expected:
NOT
|0  |1 and |1  |0
1
0
1


0 
0
NOT
NOT
0


1 
1
• One-Input
gate: NOT
– Input state: c0|0 + c1|1
– Output state: c1|0 + c0|1
– Pure states are mapped thus: |0  |1 and
|1  |0
NOT
– Gate operator (matrix) is
– As expected:

0 1
0 1  
1 0
1 01 0 0 1

0 1
1 0
1


0 
0
NOT
NOT
0


1 
1

0 1
0 1  
1 0
1 01 0 0 1
NOT
=
NOT
Quantum Gates
• One-Input gate: “Square root of NOT”
– Some matrix elements are imaginary
– Gate operator (matrix):i / 1/ 2 1/ 1/ 2 

– We find:
1
2
1/ 1/ 2
i 1
  1  
i / 1/ 2 
2 1 i 
2 = 1/2
so
|0

|0
with
probability
|i/2|
i
1
1
i



1
  
 
1 i 0
2 1 and |0  |1 with probability |1/  2|2 = 1/2
Similarly, this gate randomizes input |1
– But concatenation of two gates eliminates the randomness!
1 
i 1
i 1  
0 i 
2 1 i 1 i  i 0
NOT
NOT
Quantum Gates
• One-Input gate: Hadamard
1
2

1 1 
1 -1
H
– Maps |0  1/  2 |0 + 1/  2 |1 and |1  1/  2 |0 – 1/  2 |1.
– Ignoring the normalization factor 1/  2, we can write
|x  (-1)x |x – |1– x
• One-Input gate: Phase shift

1 0 
0 e i 

Quantum Gates
Universal One-Input Gate Sets
• Requirement:
|0
U
Any state |y
• Hadamard and phase-shift gates form a universal
gate set
• Example: The following circuit generates
|y = cos  |0 + ei sin  |1 up to a global factor
H
2
H

2

Quantum Gates
• Two-Input Gate: Controlled NOT (CNOT)
|x
|y
CNOT
|x
|x  y
1
0
0

0
0
1
0
0
0 0
0 0
0 1

1 0
|x
|x
|y
|x  y
– CNOT maps |x|0  |x||x and |x|1  |x||NOT x
 |x|0  |x||x looks like cloning, but it’s not. These
mappings are valid only for the pure states |0 and |1
– Serves as a “non-demolition” measurement gate
|x
|y
CNOT
1
0
0

0
|x
|x  y
0
1
0
0
0 0
0 0
0 1

1 0
(b)
(a)
|x
|y
(c)
|x
|x  y
(d)
|00>
|00>
|01>
|01>
|10>
|10>
|11>
|11>
Quantum Gates
• 3-Input gate: Controlled CNOT
(C2NOT or Toffoli gate)
1
0
0
0

0

0

0
0
0 0 0 0 0 0 0
1 0 0 0 0 0 0
0 1 0 0 0 0 0
0 0 1 0 0 0 0
0 0 0 1 0 0 0

0 0 0 0 1 0 0

0 0 0 0 0 0 1

0 0 0 0 0 1 0
|a
|a
|b
|b
|c
|ab  c
1
0
0
0

0

0

0
0
0 0 0 0 0 0 0
1 0 0 0 0 0 0
0 1 0 0 0 0 0
0 0 1 0 0 0 0
0 0 0 1 0 0 0

0 0 0 0 1 0 0

0 0 0 0 0 0 1

0 0 0 0 0 1 0
(a)
|a
|a
|b
|b
|c
|ab  c
|000>
|000>
|001>
|010>
|010>
|011>
|011>
|100>
|100>
|101>
|101>
|110>
|110>
|111>
|111>
|001>
(c)
(b)
Quantum Gates
• General controlled gates that control some
1-qubit unitary operation U are useful

u00 u01
u10 u11 
etc.
U
U
U
U
C(U)
C2(U)
Quantum Gates
Universal Gate Sets
• To implement any unitary operation on n
qubits exactly requires an infinite number of
gate types
• The (infinite) set of all 2-input gates is
universal
– Any n-qubit unitary operation can be
implemented using (n34n) gates [Reck
et al. 1994]
• CNOT and the (infinite) set of all 1-qubit
gates is universal
Quantum Gates
Discrete Universal Gate Sets
• The error on implementing U by V is defined as
E(U,V )  max (U - V ) 

• If U can be implemented by K gates, we can
simulate U with a total error less than  with a gate
overhead that is polynomial in log(K/)
• A discrete set of gate types G is universal, if we
can approximate any U to within any  > 0 using a
sequence of gates from G
Quantum Gates
Discrete Universal Gate Set
• Example 1: Four-member “standard” gate set
1
0
0

0
0
1
0
0
0 0
0 0
0 1

1 0
1 
1 1 
2 1 -1
H
CNOT
Hadamard

1 0
0 i 
S
Phase

1
0
0 
e i / 4 
/8
/8 (T) gate
• Example 2: {CNOT, Hadamard, Phase, Toffoli}
Quantum
Circuits
Quantum Circuits
• A quantum (combinational) circuit is a sequence of
quantum gates, linked by “wires”
• The circuit has fixed “width” corresponding to the number
of qubits being processed
• Logic design (classical and quantum) attempts to find
circuit structures for needed operations that are
– Functionally correct
– Independent of physical technology
– Low-cost, e.g., use the minimum number of qubits or gates
• Quantum logic design is not well developed!
Quantum Circuits
• Ad hoc designs known for many specific functions and gates
• Example 1 illustrating a theorem by [Barenco et al. 1995]:
Any C2(U) gate can be built from CNOTs, C(V), and C(V†)
gates, where V2 = U
=
U
V
V†
V
Quantum Circuits
Example 1: Simulation
|0
|1
|x
U
|0
|1
|x
?
=
|0
|0
|0
|0
|0
|0
|1
|1
|1
|1
|1
|1
|x
V|x
V
|x
|x
V†
V
Quantum Circuits
Example 1: Simulation (contd.)
|1
|1
|1
|1
|x
U|x
U
?
=
|1
|1
|1
|1
|1
|1
|1
|1
|0
|0
|1
|1
|x
V
V|x
V†
• Exercise: Simulate the two
remaining cases
V|x
V
U|x
Quantum Circuits
Example 1: Algebraic analysis
x1
?
=
x2
x3
U
V
U0
U1
V†
U2
U3
V
U4
U5
• Is U0(x1, x2, x3) = U5U4U3U2U1(x1, x2, x3)
= (x1, x2, x1x2  U (x3) ) ?
Quantum Circuits
Example 1
U (contd);
 I  C(V)
1
1
1
1 0 0




0 1 
0
0
0 0
1 0
0 v00
0 v10
1
0
0  0
0  0
 
v01  0
 
v11  0

0
0
0 0
0
1 0
0
0 v 00 v01
0 v10 v11
0 0
0
0 0
0
0 0
0
0 0
0
0
0
0
0
1
0
0
0
0 0
0 0
0 0
0 0
0 0
1 0
0 v00
0 v10
0 
0 
0 
0 
0 

0

v01

v11 
Quantum Circuits
Example 1
(contd);
U  U  CNOT(x , x )  I
2
1
0
 
0

0
4
1
0
0
1
0
0
0
0
1
2
1
1
0
0
0
0
0 
1
0

 
 
1 0 1 0


0
0

0
0
0 0 0 0 0 0 0
1 0 0 0 0 0 0
0 1 0 0 0 0 0
0 0 1 0 0 0 0
0 0 0 0 0 1 0

0 0 0 0 0 0 1

0 0 0 1 0 0 0

0 0 0 0 1 0 0
Quantum Circuits
Example 1 (contd);
– U5 is the same as U1 but has x1and x2 permuted (tricky!)
– It remains to evaluate the product of five 8 x 8 matrices
U5U4U3U2U1 using the fact that VV† = I and VV = U
1
0
0
0

0

0

0
0
0 1
0 0
0 0
0 0

0  0

0 0

v01 0

v11 0
0 0 0 0 0 0 01
1 0 0 0 0 0 00
0 1 0 0 0 0 00
0 0 1 0 0 0 00

0 0 0 0 0 1 0 0

0 0 0 0 0 0 1 0

0 0 0 1 0 0 0 0

0 0 0 0 1 0 00
0 0 0
0
0
0
1 0 0
0
0
0
0 1 0
0
0
0
0 0 1
0
0
0
0 0 0 v00 v 01
0
0 0 0 v10
v11
0
0 0 0
0 0 0
0
0
0
0
v 00
v10
1
0
0
0
 
0

0

0
0
0
0 0 0
0
0
1
0 0 0
0
0
0
1 0 0
0
0
0
0 1 0
0
0
0
0 0 1
0
0
0
0 0 0
1
0
0
0
0 0 0
0 0 0
0 v00 v00  v10v10
0 v 01` v00  v11v10
0
0
0
0
0 0
0
1
0
0
0 0
0
0 v 00 v10
0 0
0
0 v 01
v11 0 0
0
0
0
0
1 0
0
0
0
0
0 1
0
0
0
0
0
0
0
0 0 v00
0 0 v 01



0

0
  U0
0

0

v 00v01  v10v11

v01v01  v11v11 
0
0 1
0 0
0 0
0 0

0  0

0 0

v10 0

v11 0
0 0 0 0 0 0
1 0 0 0 0 0
0 1 0 0 0 0
0 0 1 0 0 0
0 0 0 0 0 1
0 0 0 0 0 0
0 0 0 1 0 0
0 0 0 0 1 0
01
00
00
00

0 0

1 0

0 0

00
0
0
0
0 0
0
0 
1
0
0
0 0
0
0 v00
v01 0 0
0
0 v10
v11 0 0
0
0
0
0
1 0
0
0
0
0
0 1
0
0
0
0
0
0
0
0 0 v00
0 0 v10
0 
0 
0 
0 

0

v01

v11 
Quantum Circuits
• Implementing a Half Adder
– Problem: Implement the classical functions
sum = x1  x0 and carry = x1x0
• Generic design:
|x1
|x0
|y1
|y0
Uadd
|x1
|x0
|y1  carry
|y0  sum
Quantum Circuits
• Half Adder: Generic design (contd.)
1
0
0
0

0

0

0
0
U AD D 
0
0
0
0

0

0

0
0
0 0
1 0
0 1
0 0
0 0
0 0
0 0 0
0 0 0
0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0
0 0
0 0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0 0
0 0
0 0
0 0
0 0 0
0 0 0
0 0 0 1 0
0 0 0 0 1
0 0
0 0
0
0
0
0
0

0

0

0
0
0
0
0
0

1

0

0
Quantum Circuits
• Half Adder: Specific (reduced) design
|x1
|x0
|y
|x1
C2NOT
(Toffoli)
CNOT
sum
|y  carry
Walsh Transform for two binary-input manyvalued variables
Classical logic
Quantum logic
Variable 1
•minterms
Variable 1
+
+
+
+
-
-
You need a
butterfly
•H
•H
Butterfly is created
automatically by
tensor product
corresponding to
superposition
Computation
0 0 0
G(0 0 0)
0 0 1
G(0 0 1)
0 1 0
0 1 1
G(x)
G(0 1 0)
G(0 1 1)
1 0 0
G(1 0 0)
1 0 1
G(1 0 1)
1 1 0
1 1 1
QC
G(1 1 0)
G(1 1 1)
Quantum Gate Arrays
1-bit full adder
|c>
|c>
|x>
|x>
|y>
|y>
|0>
|s>
|1>
|1>
|0>
|c’>
|0>
|0>
Let |c> = |1>,
|0>
|x> = |0>,
|1>
|y> = |1>
|s> = |0>,
|c’> = |1>
Quantum Gate Arrays
It is possible to construct reversible quantum gates for any classical
computable function f with m input and
k output bits.
There exists a quantum gate array that implements the unitary
transformation Uf : |x, y>  |x, y  f(x)>, where  indicates bitwise xor.
|x>
|x>
Uf
|y>
|y  f(x)>
Quantum Gate Arrays
The previous transformation Uf is reversible
Uf + = Uf
U f+ U f = U f U f = I
|x>
|x>
|x>
Uf
Uf
|y  f(x)>
|y>
But |y  f(x)  f(x)> = |y>
|y  f(x)  f(x)>
Superposition of Quantum States
Consider the Tofolli Gate
|x>
|x>
|y>
|y>
|0>
|x>  |y>
Apply T, the Tofolli transform, to the superposition of all inputs.
T(H|0>  H|0>  |0> ) = ½(|000> + |010> + |100> + |111>)
Quantum parallelism – Applying the Tofolli transform to a superposition
of all of the input states produces a superposition of all of the states in the
“truth table”
Superposition of Quantum States
BUT
Only one of the superposed states can be extracted by
measurement
0
=
1
T(H|0>  H|0>  |0> ) = ½(|000> + |010> + |100> + |111>)
|000> + |010> + |100>
0
|111>
1
Measurement of the output projects the superposition
onto the set of states consistent with the result
Quantum Parallelism
In order to take advantage of quantum parallelism one must:
1. Transform the state in such a way as to
amplify the values of interest – so that they have
a higher probability of being selected during
measurement
Grover’s unstructured search algorithm
2. Find common properties of ALL the states of f(x)
Shor’s factoring algorithm
Where to learn more
• Web Page of Marek Perkowski
– class 572 - see description of student projects
– Portland Quantum Logic Group
Kronecker Product of Matrices
• Superposition property may be mathematically
described using the Kronecker product (tensor
product) operation 
• The Kronecker product of two matrices is defined
as follows:
a
c

b  x


d  z
 x
a

y   z


v   x
c
 z
y
v 
y
v 
x
b
z
x
d
z
y   ax
 
v    az

y    cx
 

v    cz
ay
av
cy
cv
bx
bz
dx
dz
by
bv
dy

dv
Tensor Products
• Similarly one can define tensor products for any
size of matrices and in particularly for vectors
representing superposed states.
• As an example, consider two qutrits with and .
• When the two qutrits are considered to represent a
state, that state is the superposition of all possible
combinations of the original qutrits, where:
y 12  y 1 y 2  1 2 00  1 2 01  1 2 02  1 2 10
 1 2 11  1 2 12   1 2 20   1 2 21   1 2 22
Superposition
• The superposition property allows the qubit states to grow much
faster in dimension than classical bits, and the qudits faster than
qubits.
• In a classical system, n bits represent distinct states, whereas n
qubits correspond to a superposition of 2n states and n qutrits
correspond to a superposition of 3n states.
• In the above formula some coefficient can be equal to zero, so there
exists a constraint bounding the possible states in which the system
can exist (entanglement).
• “Allowing d to be arbitrary enables a tradeoff between the number of
qudits making up the quantum computer and the number of levels in
each qudit”.
• Because in contemporary quantum technologies every qubit is costly,
higher radices than 2 give an advantage of improved processing and
storage power at the same realization cost.
• This is a strong argument for realization of multi-valued logic in
quantum circuits.
• In addition to standard advantages of mv logic, quantum mv logic may
be superior to binary one because of different nature of entanglement.
Quantum Notation
•
•
•
•
•
•
•
•
An output of a gate is obtained by multiplying the unitary matrix of this gate by a vector of
Hilbert space corresponding to this gate’s input state.
(Unitary matrix U is one such that U . U+ = I, where U+ is a Hermitian matrix of U. A
Hermitian U+ is a conjugate transpose matrix of U).
A gate or a sub-circuit of a quantum circuit corresponds to a unitary matrix.
As shown below, the resultant unitary matrix of an arbitrary quantum circuit is created by
matrix multiplications or Kronecker multiplications of matrices of its composing sub-circuits.
Various quantum notations contribute to the difficulty in understanding the concepts of
quantum computing and creating efficient analysis, simulation, verification and synthesis
algorithms for QC.
Generally, however, we believe that once the minimal amount of formalism is understood,
logic researchers can quickly contribute to new designs, since much can be learned from
the history of Electronic Design Automation as well as from MV logic theory and design.
The lessons learned there should be used to design efficient QDA tools for MV quantum
computing.
Here we include the absolute minimum amount of formalism sufficient to start independent
software development by people who have sufficient background in EDA tools and
algorithms such as search or evolutionary programming
Quantum Circuits
•
•
•
•
•
•
In terms of logic operations, anything that changes a vector
of qudit states to another qudit vector satisfying
measurement probability properties can be considered as a
quantum operator (unitary matrix).
These phenomena can be modeled using the analogy of a
“quantum circuit” (called also quantum array).
In a quantum circuit, a wire does not carry ternary values
but corresponds to a 3-tuple of complex values, , , and γ.
Quantum logic gates of the circuit map the complex values
on their inputs to complex values on their outputs.
As mentioned, operation of all quantum gates and their
assemblies is described by matrix operations.
Any quantum circuit is a composition of parallel and serial
connections of blocks, from small to large.
Analysis of Quantum Circuits
• Small blocks correspond to quantum gates that are easily directly
realizable (like Pauli rotations) or are very simple and require just few
basic quantum operations such as Feynman gates or
Stroud/Muthukrishnan gates.
• Serial connection of blocks corresponds to multiplication of their
(unitary) matrices.
• Parallel connection corresponds to Kronecker multiplication of their
matrices.
• So, theoretically, the analysis, simulation and verification are easy and
can be based on matrix methods.
• Practically they are tough because the dimensions of the matrices grow
exponentially.
• All these become much easier when one deals only with permutative
matrices, which are equivalent to multi-output truth tables of completely
specified functions. In such matrices there is exactly one “1” in every
row and column.
• An active research area is to represent operations on unitary matrices
(in particular, the permutation matrices) by new efficient data structures
and algorithms.
Calculating output state of QC
• Typically the symbols |0> and |1> are not
present in the matrix formulation of the
equations, only the probability amplitudes
(i.e.  and ) are included; however, there
are kept in Equation (1) for illustrative
purposes.
(1)
 a b   | 0  
 c d    |1   



 a | 0  b |1  
 c | 0   d  |1  


• Because the qubit probabilities must be preserved at the output of the
quantum gate, all matrices representing them are unitary.
• An important unitary matrix property is that of a full rank.
• This property implies that quantum gate matrix rows and columns are
orthonormal.
• Therefore, past results from spectral methods for classic digital logic
are directly applicable to quantum logic synthesis.
• Furthermore, since quantum logic gates are represented using unitary
orthonormal matrices, they represent logically reversible gates.
• These observations mean that the single input/output quantum logic
gates as represented in Equation (1) are rotation matrices
characterized by some particular rotation angle , where, for example,
a = cos, b = sin, c = -sin and d = cos.
• With this viewpoint, it can be seen that there are, in fact, an infinite
number of single input/output qubit gates.
Rotation Gates
• However, three elementary gates can be used to
generate any rotation [7].
• These are the R, S, and T gates described in
matrix notation by
 cos sin  
R

sin

cos



(1a)
1 0 
S
j 
0
e


e j 0 
T 
- j 
0 e 
Quantum XOR gate
• Called also Feynman gate or Controlled Not gate.
• This gate allows inputs of |00> and |01> to appear
unchanged at the outputs, but interchanges the pairs
|10> and |11>.
• For example, consider the quantum XOR gate’s
operation for an input |10>.
1
0

0

0
0
1
0
0
0
0
0
1
0   0  0 





0   0  0 

1 1 0
   
0 0 1
XOR logic synthesis is useful for QC
• In this example, the input is |10> = ((0)|0>+(1)|1>)
((1)|0>+(0)|1>), and the input vector is represented
by the coefficients shown in parentheses.
• It is a significant fact that the unitary gates described
by Equations (1) and (2) can realize any quantum
logic function (including standard binary).
• There are several strong similarities of quantum logic
to classic digital circuit design using AND/XOR logic.
• Our research group has been heavily involved in
AND/XOR logic circuit design as well as related
algebraic and spectral methods for several years.
• We found these experiences very useful in quantum
circuit design.
• The normalization ||2 + ||2 = 1
admits the parametrization  =
cos(/2) e j ,  = sin(/2) e j.
• | = e j (cos ( / 2) |0 + e j 
sin ( / 2) |1 ).
• Since the global phase of | has
no observable effect, we may
write | = cos(/2) |0 + e j
sin(/2) |1.
• The angles  and  define a
point on the surface of a unit
sphere – the Bloch sphere, see
Fig. 1.
• The Bloch sphere provides an
excellent tool to visualize the
state vector of a qubit.
• This is a binary Bloch sphere, but
a multi-valued counterpart of it
can be also created.
Bloch Sphere
Figure 1. Bloch Sphere with 6 values shown
•
The identity matrix and three Pauli matrices:
 1 0
0 1 
0 - i
1 0 
I
,X  
,Y  
,Z  




0
1
1
0
i
0
0
1








•
•
•
•
•
•
form a basis for the 2x2 density matrices.
So every density matrix can be written as p = ½ (I + ax X + ay Y + az Z).
We associate with every 1-qubit state p = ½ (I + ax X + ay Y + az Z) the
vector (ax, ay, az). If p = | | for a state | = e j (cos ( / 2) |0 + e j 
sin ( / 2) |1 ).
Then the corresponding vector is (ax, ay, az) = (sin  cos , sin  sin  , cos
).
It can be easily derived that the vectors (ax, ay, az) satisfy |ax|2 + |ay|2 +
|az|2 = 1, which means that all pure states are located on the surface of the
Bloch Sphere.
When there many identical quantum circuits working together they are
described by density matrices and the (mixed) states may lay inside the
sphere, not on the surface
One way to realize multi-valued logic using binary
quantum computing.
• Figure shows the
location of 6 points, that
may correspond to
values of some multivalued algebras.
• For binary logic we use
|0 and |1.
• For quaternary logic we
use |0, |1, |0+|1, and
|0-|1.
• For 6-valued logic we
may use additionally |0
+ j |1 and |0 - j|1.
• A rotation or a
combination of rotations
leads from one value to
any other value.
Important quantum gates
• Because global phase does not count, the
T gate can be also written as follows:
0 
1
T (/8) =
.
0 e j / 4 


• H denotes the important Hadamard gate:
1 1 1 
H
1 - 1
2

• The Hadamard and the /8 gate can be used to approximate any given
single-qubit unitary operation with arbitrary accuracy.
• On the Bloch sphere, T and HTH are rotations by an angle /4
radians around the z- and x-axes, respectively.
• The composition of these two operations gives a rotation by an angle ,
which is defined by cos/2 = cos2/8, around an axis n, which is
defined by n = (cos /8, sin /8, cos/ 8).
• Since  is irrational, any rotation around the -axis can be build, to
arbitrary precision, from T and HTH.
• Furthermore, since for  arbitrary H R n () H = R m () with m =
(cos/8, - sin/8, cos/8 ) not collinear n, there are angles ,  , 
such that any given U can be written U = Rn() Rm () R n().
• It can be also shown that any given 2-qubit gate can be composed
from CNOT and a single qubit gate.
• Similarly other universal sets of 1-qubit gates
can be found and illustrated using Bloch Sphere.
• This sphere is also useful to find operator
identities (quantum generalizations of rules like
“ Not (Not B) = B “ ) which play fundamental
role in quantum circuit optimization.
• Study of universality and power as well as
quantum realization costs of these gates are still
active research areas.
• More study should be devoted to multi-valued
Bloch Sphere, operators in it and their
transformations and realization.
• Above we showed how multiple-valued logic can be
encoded in binary quantum computing.
• Quaternary logic requires two binary measurements
(readings).
• The first reading distinguishes states |0 and |1, and the
second reading uses additional rotation gates to
distinguish between states |0+|1, and |0-|1.
• It can be shown that the logic with 2n values requires n
readings.
• Another approach to multi-valued quantum circuits
requires measurements with more than two basis
states.
• Also, new gates should be defined as well as the
synthesis methods for these gates.
•
•
•
•
•
•
•
While several books and numerous papers have been published on binary quantum
circuits [45,72,103] not much information on their multi-valued counterparts is
available. In their pioneering paper,
Muthukrishnan and Stroud [68] developed in 2000 multi-valued logic for multi-level
quantum computing systems and showed their realizability in linear ion trap devices.
However, no experimental data are known so far. In addition, this approach generates
circuits that are too large and no procedure was proposed to minimize them.
In 2002, Brylinski and Brylinski [13] discussed the universality of n-qudit gates without
giving any design algorithms.
Since 2001, PQLG group [2-5,51-55] proposed Galois Field approach to multi-valued
quantum logic synthesis in several regular structures.
They used gates were ternary counterparts of classical binary Feynman and Toffoli
gates. De Vos [23] proposed two ternary 1*1 gates and two ternary 2*2 gates, but
again no synthesis method was proposed.
In 2002, Perkowski, Al-Rabadi, and Kerntopf [75] proposed a 2*2 Generalized
Ternary Gate (GTG gate) based on the ternary conditional gate [68] and ternary shift
gates [52-54] and showed the realization of ternary Toffoli gate using GTG gates. This
work introduced for the first time the practical realizability of Galois Field circuits in
realizable multi-valued quantum technology.
Research Challenges on MV quantum
• There are very few papers on:
–
–
–
–
realization of multiple-valued quantum circuits,
design of practical MV quantum circuits,
algorithms using MV quantum circuits,
Quantum Computational Learning based on MV logic
• No known work on:
– testing,
– simulation and
– algorithms for multiple-valued quantum circuit exist and
• Develop respective theories and QDA tools.
• Develop Binary-encoded model of MV quantum
computing.
• Develop truly multi-valued quantum model of multivalued computing.
Quantum Circuit Simulation
• Simulation of quantum circuits plays absolutely
fundamental role in many areas of quantum physics and
engineering.
• Similarly as in classical circuits design, simulation is used
to verify correctness of the design, analyze its properties
and find some interesting aspects that cannot be found by
“hand and pencil” methods.
• It is amazing that the first quantum algorithms were
invented without quantum simulators, but now the
researchers routinely use quantum simulators to help
them with inventions and verify their design guesses.
• Quantum simulators are used to simulate a good circuit
and a circuit with inserted faults, for test generation and
fault localization.
•
•
•
•
•
•
Moreover, because the search-based synthesis methods for quantum circuits such as
exhaustive search, genetic algorithms, genetic programming, simulated annealing or
heuristic search do not use deeper knowledge of circuit structure and properties,
simulation is the only way (to be used as a part of the fitness function) to direct the
search towards a circuit that satisfies the given requirements.
The results of the simulation are compared with the circuit specification many times in
the loop of the search program.
The same is true for quantum fault simulation.
As we see, in all these applications the simulation of quantum circuits must be very
fast and the computer memory should be large.
On the other hand, matrix operations on unitary matrices are slow, thus new methods
and representations should be found to allow for very fast and low in memory usage
simulation.
This is attempted to be achieved by two fundamental methods:
–
–
(1) acceleration of standard operations by using special hardware emulators, parallel
computers or processor networks [71,73],
(2) creating new advanced data structures to represent quantum data more efficiently
using standard computers.
Quantum Decision Diagrams
• New data structures, such as QUIDDs [Viamontes, Markov,
Hayes] allow for implicit parallelism when executing
Kronecker multiplications on them.
• QUIDDs are based on ADDs and MTBDDs,
• so hopefully in future other decision diagrams may be used
to represent quantum circuits.
• It is also expected that basic software engines used
successfully in classical CAD (such as for instance SAT or
ATPG methods) may be used to deal with quantum circuits.
• Also, the fast simulators based on new types of decision
diagrams should be in future parallelized and possibly
accelerated in FPGA-based boards.
• Even before quantum computers will be available, their
emulations on standard computers and ASIC/FPGA may
prove useful to solve some practical problems.
Multi-valued Quantum Circuit
Synthesis
• Let us first briefly summarize current results in binary
quantum circuit synthesis.
• This is the most advanced research area and there are
two gate models for synthesis (especially for permutative
circuits):
–
(1) The first gate model assumes that only gates with limited
number of inputs can be used (for instance universal Toffoli3 gate
that operates on three qubits; P=a, Q=B, R=abc).
– We will call it the limited qubit gate model.
– Observe that while in binary reversible logic all 2-bit gates are
linear and thus cannot be universal, in quantum logic there are
very many universal 2-qubit gates (theoretically infinite).
– They can be all used in the limited qubit gate model, but there are
no constructive methods yet to make use of this fact even for
binary case.
Multi-valued Quantum Circuit
Synthesis
• (2) The second gate model assumes that for any given
number of qubits N for which a function is realized, there
exist a Toffoli gate ToffoliN (or a similar universal gate in
which one data qubit is controlled by more than 2 control
qubits) that operates on N qubits.
• We will call it the unlimited qubit gate model.
• In the first model it was proved by Shende et al that every
N-qubit reversible function which is represented by an
even number of cycles, is realizable without constant wires
(ancilla bits) and every N-qubit function that is represented
by an odd number of cycles is realizable with N+1 wires
(one ancilla bit).
•
•
•
•
•
•
•
•
(Observe that every permutation matrix specifies the permutation of input/output
minterms, so it is a permutation and can be described as a set of cycles of
minterm numbers.
Ancilla bits are also called constant inputs, dummy variables or input garbages).
In general, synthesis using this model is more difficult, but the results are closer
to the minimum.
In the second model every function is realizable, regardless its cycles number.
But it is at the cost of expensive and not necessarily quantum realizable gates
(such gates may require many ancilla bits internally, so they tend to hide the
high cost of realizations obtained by the methods [27,28,65].)
Otherwise, there are methods to realize these complex gates with small ancilla,
but for large N the realization of each complex gate necessitates an exhaustive
number of limited-qubit realizable gates.
The model (2) should be thus combined with post-processing methods based on
local peephole optimization.
So far, not much comparisons between these various synthesis models,
especially for real quantum realizable gates, have been done.
Two ways to synthesize permutative circuits
• The permutative quantum circuit synthesis problems
are formulated in two ways:
– (a) A complete reversible function is specified (as a one-toone mapping, set of permutation cycles, or as a unitary
matrix)
– (b) A irreversible single or multi-output function is specified.
• Some subset of input signals should be returned unmodified as the
output signals.
• The final circuit, together with its constant inputs and garbage outputs
should be reversible.
• A special case of this model is a controlled gate where all inputs
except one have to be reconstructed on the output and there is no
ancilla bits.
• Usually however this model requires M ancilla bits, as many as the
original outputs of the specification function, one for every output.
• In some cases the number of ancilla bits can be smaller than M.
• The first method is more elegant and does not create garbage.
• It is restricted in that it assumes that a Boolean function has been
already converted to a reversible one (by appropriate adding of ancilla
bits).
• For some formulations (like evolutionary programming and search)
this method allows to be easily extended to non-permutative unitary
matrices.
– So far, however, only small circuits can be synthesized using this method,
even using very advanced algebraic and group-theoretic methods to
decompose a larger matrix to a composition of smaller matrices.
• Because of its formulation, the second way is more similar to
traditional logic synthesis.
• Methods developed previously for ESOPs, GFSOPs and similar forms
in the AND/XOR logic synthesis are used for larger circuits, rather than
methods specific to reversible design.
What can
we do?
Quantum Computers
• Our community should should develop a
systematic methodology and CAD tools for
synthesizing, verifying, testing and simulating of
quantum computers.
• These methods and tools will be counterparts of
what exists now in binary CMOS.
• Development of these tools will require
understanding of real quantum circuit
technology.
New Frontiers
Quantum Computer
Quantum Mechanics
Quantum Logic
Quantum Computers
Quantum Programming
Open Problems in Quantum
Circuits
• Synthesis of binary quantum
cascades with no garbage or
small garbage
Fredkin
– (Maslov, Dueck, Miller,
Perkowski, Khlopotine,
Mishchenko, Curtis, Khan, Jha
and Agrawal, Hayes, Markov)
• Synthesis of multiple-valued
quantum cascades
Toffoli
– (Muthukrishnan and Stroud,
Miller et al, Khan, Perkowski,
Curtis, Lee, Denler)
– Universal gates, what are the
counterparts of Toffoli and
Fredkin gates?
Open Problems in Quantum Circuits
• What is the Fault Model for quantum circuits?
– Technology dependent?
• Formal Verification of quantum circuits
• Test Generation for quantum circuits
• Fault Localization of quantum circuits
• Synthesis of testable quantum circuits
• Synthesis of fault-tolerant, error correcting quantum circuits.
Open Problems in Quantum Circuits
• What are universal gates?
• How to calculate costs of elementary gates for each
quantum technology such as NMR or ion trap?
• What are the gates that can be truly realized in a
quantum technology?
• What are the synthesis, analysis and test methods
for sequential quantum circuits?
Open Problems in Quantum Circuits
• Invent new quantum algorithms.
• What are the principles to create quantum algorithms
• The nature of entanglement.
• Quantum computer architectures.
• Quantum formalisms. (Clifford algebras).
• Quantum Logic.
Research Challenges
• This “adapted” approach allows now to realize larger
functions than the approach from (a), but when applied to
multi-output functions usually leads to high garbage (one
ancilla bit for each output).
• In the long run, perhaps this kind of methods will be better
scalable since they use the structure of the function rather
than relying on heuristic search methods, especially that
there are no strong heuristics known so far.
• Finding structure in problems and finding good heuristics
are the interrelated problems for future research, which will
perhaps combine both ways (a) and (b).
• The problem of optimal conversion from irreversible to
reversible function has been not solved yet.
Four Synthesis Models
•
There exist the following synthesis models, both for
binary and multiple-valued logic:
1. limited qubit gate model and full reversible function (way
a). Usually zero or one ancilla bits are expected.
2. unlimited qubit gates and full reversible function (way a).
Usually zero or one ancilla bits are expected.
3. limited qubit gates and single output function (way b).
Usually at most M ancilla bits are expected.
4. unlimited qubit gates and irreversible input function (way
b). Usually at most M ancilla bits are expected.
• Comparing to binary quantum circuit synthesis, multiple-valued quantum
circuit synthesis is a relatively immature area of research.
• One can expect that it will repeat the history of development of algorithms in
binary reversible logic.
• In binary, model (1) has been developed in [84].
• As related to multiple-valued quantum circuits, the model (1) of reversible
quantum circuits synthesis above has been investigated by [20] and by a
Genetic Algorithm approach from [54].
• Model (2), investigated for binary case in [27,28,63,65,66], has been not yet
investigated for multiple-valued logic (although [78] explains how it can be
done).
• Model (3) is researched in paper [55] and some other preliminary results
appear also in [78].
• Model (4) has been investigated in [4,50-55,59,60].
• It is important to distinguish among these four models, to avoid unrealistic
claims of superiority of one method over another, since obtaining solutions in
some of these models is much easier than in the other ones.
Research Challenges
• Objective comparison of the methods on many
large examples and using standardized
benchmarks should be a topic of further
research.
• Much work is left to be done in defining new
universal multi-valued quantum gates and the
(partially regular) structures to be build from
them.
• Approaches that use known universal gates
have the benefit of prior research (such as logic
synthesis using Galois Field operations), but can
be very costly and inefficient.
•
•
•
•
Below we give a complete characteristics of papers in multi-valued quantum logic
synthesis. Khan and Perkowski adapted the GFSOP (Galois Field Sum of Products)
method to permutative (ternary) quantum circuits [52,53].
The algorithm is based on finding a ternary decision diagram, and flattening it to
quantum cascade-realizable GFSOP.
In another work [54] these authors use Genetic Algorithm to synthesize multi-output,
no-garbage cascades of arbitrary ternary quantum gates.
The approach presented by Miller et al [65] is an extension of their greedy algorithm
for binary circuits [27,28,63]. A non-published extension to their work presents also a
method to encode ternary logic using standard binary qubits [66]. Observe that while
binary quantum logic uses 1800 rotation, and the quaternary logic from [49] uses 900
rotations, they use 1200 rotations for one vertical plane of Bloch Sphere in ternary
logic. While both ternary and quaternary model use two measurements to distinguish
encoded signals, the quaternary method is more efficient. A paper [49] based on SAT
and reachability analysis uses quaternary quantum logic to synthesize exact
minimum binary circuits from Feynman, Inverter, Controlled-V and Controlled-V+
gates. (V is called a “square-root-of-NOT” since its repeated application negates the
input signal, V V = NOT). A simple adaptation of this method allows to realize also
quaternary quantum circuits with arbitrary input and output signals [78].
Research Challenges
• Recent works suggest that many uniform general
methods can be created to realize various multiple-valued
logics that will use generalized rotations with respect to 3
orthogonal basis axes, rotations by angles 2/k, where
k>1 is a natural number.
• In general, rotations with respect to any axis n can be
used, but using some of Z, X, and Y simplifies gates.
• Every existing algorithm for binary quantum circuit design
can be extended to its various multiple-valued quantum
counterparts, but these generalizations are not trivial and
algorithms that use these gates are numerically very
challenging.
• These problems form then a good base for new research
by people who understand search-based EDA algorithms
and multiple-valued logic.
Figure 2. 3*3 Toffoli gate
A
PA
B
QB
C
R  AB  C
• Figure 2 presents a standard binary reversible
Toffoli gate.
• Its ternary counterpart has Galois Field 2
operations of multiplication and addition replaced
with Galois Field(3) operations.
• Observe that the internal structure of this gate is complex when
using quantum realizable gates (Figure 3). The Controlled-V gate
works like this: when the control (top) signal is |0>, the data input is
forwarded to output with no change. When the control signal is |1>
the operation of the lower box (so-called V) is executed. In our case
this is a square-root-of-NOT operation. Thus if two Controlled-V
gates in series are controlled by the same signal A, if A=1 then their
qubit data line is a negation. Two such gates in series serve then as
a controlled-NOT or Feynman gate. Also, the operation of V and V+
annihilate ( V V+ = I ) . The reader can simulate “by hand” the circuit
from Figure 3a to see that it truly realizes the Toffoli3 gate. Let us
observe that the circuit from Figure 3a can be redrawn to one from
Figure 3b. This circuit emphasizes that both CNOT, CV and C V+
are Controlled-Gates that leave data signal unchanged when the
control is |0> and apply its internal transformation (the symbol of this
transformation is in the input to multiplexer) when the control is |1>.
•
•
•
•
•
•
•
•
•
Observe that the internal structure of this gate is complex when using
quantum realizable gates (Figure 3).
The Controlled-V gate works like this: when the control (top) signal is |0>,
the data input is forwarded to output with no change.
When the control signal is |1> the operation of the lower box (so-called V) is
executed.
In our case this is a square-root-of-NOT operation.
Thus if two Controlled-V gates in series are controlled by the same signal A,
if A=1 then their qubit data line is a negation.
Two such gates in series serve then as a controlled-NOT or Feynman gate.
Also, the operation of V and V+ annihilate ( V V+ = I ) .
The reader can simulate “by hand” the circuit from Figure 3a to see that it
truly realizes the Toffoli3 gate.
Let us observe that the circuit from Figure 3a can be redrawn to one from
Figure 3b.
This circuit emphasizes that both CNOT, CV and C V+ are Controlled-Gates
that leave data signal unchanged when the control is |0> and apply its
internal transformation (the symbol of this transformation is in the input to
multiplexer) when the control is |1>.
• Observe that any single-qubit operation can be written in the
box, and also that any single qubit operation can be inserted
to the control and data lines.
• The control can be from top (as in the Figure 3b) or from the
bottom.
• The composition of this kind of multiplexed operations
allows to create arbitrary permutative gate of reversible logic
[55,59].
• Also, an arbitrary two-qubit quantum gate (described by a
unitary matrix) can be constructed from such gates.
• These methods can be used to hierarchically synthesize
larger circuits [55,59] and can be generalized to ternary (or
in general multi-valued) logic (see Figure 4) for the
realization of universal ternary permutative controlled gate.
• Universal quantum gate is created when operations are
single-qubit ternary rotations.
Figure 3. Smolin/DiVincenzo
realization of Toffoli gate as a
prototype of a regular controlled
quantum structure: (a) standard
notation, (b) notation used in this
paper to emphasize the similarity
•Observe that any single-qubit
operation can be written in the
box, and also that any single
qubit operation can be inserted
to the control and data lines.
•The control can be from top
(as in the Figure 3b) or from
the bottom.
•The composition of this kind of
multiplexed operations allows
to create arbitrary permutative
gate of reversible logic [55,59].
•Also, an arbitrary two-qubit
quantum gate (described by a
unitary matrix) can be
constructed from such gates.
A
P
B
R
C
V
V+
V
(a)
S
P
A
R
B
+1
+1
C
S
V
V
V+
(b)
Figure 4: Conceptual ternary
multiplexer
op = Logical Operations:
+0, +1, +2 represent Galois
Addition of constants 0, 1,
and 2, respectively
01, 02, 12 represent logical
replacement i.e. a 01
operation will replace 0->1,
1->0, and 2->2
•Also, an arbitrary two-qubit quantum gate
(described by a unitary matrix) can be
constructed from such gates.
•These methods can be used to
hierarchically synthesize larger circuits
[55,59] and can be generalized to ternary
(or in general multi-valued) logic (see
Figure 4) for the realization of universal
ternary permutative controlled gate.
•Universal quantum gate is created when
operations are single-qubit ternary rotations
Other problems in MV QC
(1)New models of gates, such as above, that will be close to
realization and at the same time would allow creation of
efficient synthesis algorithms, also for large circuits.
(2)Development of methods based on unitary matrix
decomposition, group theory, Lie groups and Clifford
algebras,
(3)Methods for incompletely specified functions, to be used in
machine learning and data mining,
(4)Geometrical and topological visualization methods to help
intuition of designers to design multi-qubit circuits (for
instance generalizations of Bloch sphere, QUIDDs and
Karnaugh Maps),
(5)Efficient methods for local optimization of quantum circuits
on many levels of description,
(6)High-level quantum hardware description languages that
will play in QDA a role similar to VHDL and Verilog in EDA,
(7)Development of formalisms and synthesis methods for
sequential circuits.
Testing and diagnosis of quantum
circuits
• Patel, Markov, and Hayes showed that reversible circuits
are much better testable than irreversible circuits.
– This is because every test covers half faults and every fault is
covered by half tests.
– The reversible circuits are then “transparent” to faults, making
them well observable and controllable.
• We showed that fault localization in reversible circuits is
easier.
• We presented preliminary results on testing binary
quantum circuits and on fault localization of quantum
circuits.
Testing Quantum Circuits (1)
• The good circuit is simulated.
• Next every possible quantum fault is inserted (our
fault model is inserting arbitrary matrix in place of
fault, this allows to simulate many different types of
faults) and the circuit with fault is simulated in
Hilbert space (no measurement).
• All possible measurement values are calculated
with their probabilities.
• The comparison of a measurement from the unitary
matrix of a correct circuit and a circuit with fault
determines which input combinations (tests) give
different measurements.
• In some cases the circuit is modified for multivalued realization in order to distinguish the values.
Testing Quantum Circuits (2)
• Observe that in contrast to standard testing
and reversible circuits testing, there are three
types of faults in quantum domain:
– (1) faults that can be detected deterministically,
– (2) faults that cannot be detected (like global
phase faults), and
– (3) faults that can be detected by repeated
application of tests, possibly with special
measuring gates.
• These faults can be detected only with
certain probability.
• Thus, quantum testing is probabilistic testing.
Research Challenges in Quantum Test
• Open problems include basically
everything:
– fault models,
– fault simulation,
– test generation,
– test minimization,
– fault coverage,
– fault localization using probabilistic adaptive
trees.
Quantum Computational Intelligence (QCI)
• The two most famous quantum
algorithms to date were created
by Peter Shor and Lov Grover.
• Shor’s algorithm is for factoring
integers:
– It produces an exponential
computational speedup over classical
algorithms
– It can break the RSA encryption
techniques.
• Grover’s algorithm searches an
unordered list of data, to find a
particular item.
– It has a provable quadratic speedup
over the best classical algorithm.
– It is like looking for name of a person
in yellow pages knowing only his
telephone number.
Research Challenges in Quantum
Algorithms for Computational Intelligence
• “How these algorithms can be used in the
field of Computational Intelligence?”.
• Quantum computing is in every particular
instance at least as powerful as standard
computing.
• It is therefore very reasonable to look for
quantum counterparts to all concepts created
in past in:
–
–
–
–
–
algorithm design,
Artificial Intelligence,
Machine Learning,
Computational Intelligence,
Soft Computing.
Future Applications in Structured
Search
•
•
•
•
•
Grover algorithm for searching an unstructured database started many practical
applications because of the generality of its main idea – phase amplification.
Grover himself extended his algorithm for the structured search problem, one of
the main tough research issues in AI, with a multitude of important and practical
applications, including in EDA.
Many interesting papers about quantum search using problem structure were
written by Hogg and collaborators.
Boyer developed bound for quantum searching algorithms.
The class of NP-complete problems includes:
–
–
–
–
–
–
–
graph coloring,
satisfiability,
planning,
set covering,
combinatorial optimization,
tautology verification
and many other problems
that are useful for instance to solve the synthesis and optimization problems from
section 2 of this paper.
•
•
•
•
•
•
•
•
•
•
The name NP means non-deterministically polynomial, because there are no deterministic
algorithms to solve NP problems in polynomial time (w.r.t the size of the problem).
Any problem in the NP-complete class can be transformed into any other problem in this NPcomplete class using polynomial number of steps.
The quantum search algorithms can be used to solve the ”constraint satisfaction problems” into
which all other NP-complete algorithms can be reduced [17].
In a constraint satisfaction problems (SAT is the simplest example, graph coloring is another one)
we deal with multi-valued variables and constraint rules on value relations between values of
subsets of variables (relations like, “two adjacent nodes in a graph should have different colors”).
In other words, one has to find assignment of values b to all a variables so that all constraints are
satisfied.
All such problems can be reduced theoretically to SAT, but this is not necessarily the best way to
solve them.
On a classical computer O(ba) assignments must be searched before finding a valid solution, if
any.
Using heuristics, or domain-dependent knowledge of a particular problem’s structure, the search
can be dramatically speeded up to O(bka), where k1 and is problem dependent.
Grover’s quantum search algorithm for structured problems further reduces the number of states
searched to O(bak/2), which means a polynomial speedup over classical algorithms.
This may be enough to solve many currently intractable problem instances [58].
Generalizations of gates, circuits
and automata
• Because gates, the basic concept of quantum
computing, are a powerful generalization of gates in
standard computing, researchers are systematically
generalizing all the fundamental concepts of
computing to involve quantum concepts in one way
or another.
• And thus;
– a quantum circuit is a generalization of a combinational
Boolean circuit,
– Quantum Automata (various formalizations) generalize
Finite State Machines,
– Quantum Turing machine generalizes Turing Machines and
Probabilistic Turing Machines,
– and so on.
From CI to QCI
• The same tendency is seen in Computational Intelligence.
• Its concepts and algorithms are being generalized to those of
the Quantum Computational Intelligence (QCI).
• And thus;
– Quantum Neural Networks,
– Quantum Associative Memories,
– Quantum Bayesian Nets,
– Quantum Games,
– Quantum Markets,
– Quantum Agents,
– Quantum Formulas,
– Quantum Fuzzy Networks,
– Quantum Spectral Transforms and Networks,
– Quantum Evolutionary Algorithms,
– Quantum Braitenberg Vehicles,
– and many others
have been created and are actively investigated both theoretically, using
software simulators, hardware emulators and in real quantum circuits.
Importance of intelligent learning
理论计算机科学中的几个问题
应明生
清华大学计算机科学与技术系
智能技术与系统国家重点实验室
Research Challenges in NP
problems
• Because laws of quantum mechanics proved useful to
improve algorithmic performance of some NP problems,
there is a high probability that more problems will find
efficient solutions in quantum domain.
Quantum-Neural Algorithms:
• Quantum Associative Memories of Ventura and Martinez,
• Competitive Learning in Quantum System by Ventura and
Perus.
• While neural net processes real values, quantum NN
processes complex values.
• It includes therefore standard NN and binary computers as
special cases
• Thanks to superposition and entanglement can do much
more.
• Weights that are complex values will allow to express much
more and higher order information.
• Totally new algorithms can be invented for learning and using
such nets.
• QuAM is analogous to a linear associative memory but all
neurons are quantum mechanical gates.
Research Challenges in QCI
• Because previous work on computational learning and particularly
constructive induction designs arbitrary structures of arbitrary gates, it is
applicable also to these structures and new algorithms can be created
that generalize Ashenhurst Curtis decomposition.
• QuAMs are worse than classical algorithms on generalization, and our
algorithms are very good in generalization.
• Therefore we believe that by extending model of QuAMs, a more
general quantum structures will be found that will have good properties
of QuAMs such as storing exponential number of patterns but will be
also good in generalizing. It is well known that there exist animals with
very few neurons, such as nematode worms.
• Still they can exhibit much more complex behaviors that a robot
controlled by few neurons.
• The neuron used in NN theory is thus a big simplification of real neuron,
and it is possible that quantum computing is used in brains of animals.
• In any case, the fact that actual neurons are more powerful than their
current models is a powerful argument to investigate generalized models
of neurons - especially quantum neurons.
Research Challenges in QCI
•
•
•
•
•
•
•
•
•
•
Applicability of quantum paradigms in order to improve a Genetic Algorithm for
solving the traveling salesman problem.
The results of simulating quantum Genetic Crossover operators suggest that
indeed quantum computation can speed up the search for solutions to the
traveling salesman problem.
Several successful experiments of various variants of Quantum-inspired GA
have been described for several applications [40].
In [30] quantum algorithms for searching trees are discussed, there are
examples of trees for which the classical algorithm requires time exponential in
n, but for which the quantum algorithm succeeds in polynomial time.
Spectral Associative Memories (SAMs) are classical networks inspired by
quantum mechanics and proposed by Spencer.
They are quantized frequency domain formulations of conventional Contents
Addressable Memories (CAMs).
Non-local connectivity is made virtually by spectral convolution.
In classical CAMs attractors scale quadratically or polynomially.
In contrast, SAMs scale linearly with memory dimension. One model of the
neuron [61,62] is based on quantum holography [19].
Phase is not only the essential parameter of physical significance, as in the
postulated model of quantum neural information processing, but the essential
means by which holograms i.e. the 3 dimensional representations of objects
may be encoded, decoded or transmitted.
Research Challenges in QCI
• There are dual influences of CI and quantum
computing.
– 1. The quantum ideas can be used to create
powerful quantum-inspired algorithms to solve
many types of problems in EDA, QDA and robotics.
– 2. The ideas and algorithms from many classical
computer science areas can be now used in
quantum domain or transformed and extended to
quantum domain.
• Very little operational software packages that
use these ideas.
Quantum Computational Intelligence
• Quantum Neural Nets
• Quantum Associative Memories
• Quantum Inspired Genetic Algorithms
• Learning by synthesis of quantum circuits
• Other models of learning based on quantum concepts.
• Quantum Braitenberg Vehicles.
Open Problems in Reversible Non-quantum
Circuits
• Reversible adiabatic gates and circuits.
– Are they different than in quantum? Why?
• Are garbage and ancilla bits important?
• Realization of adiabatic reversible circuits and synthesis for them.
• Applications in practical architectures for low power.
• Applications in practical architectures for standard computing (FFT,
butterflies, DSP circuits).
• Testing and Test localization.
• Realization in DNA and other nano-technologies (fluidic)
• Optical realizations.
In 2020 quantum computing will be
a reality
• As a community, we have a unique chance to work
on the forefront of the future dominating technology.
• Logic design community did not have this opportunity
in the past.
Quantum Circuit
Design and
Mathematics
QuantumQuantum
Information
Design
Automation
and logic
And
Technology
Quantum Computational Intelligence
Conclusions (1)
• Emerging new area of Quantum Design Automation
(QDA).
• Similarly as in design automation, there will appear
sub-areas of:
–
–
–
–
–
–
–
–
–
–
high level quantum synthesis,
logic level quantum synthesis,
quantum test,
quantum verification,
quantum simulation,
quantum software-hardware co-design,
quantum physical design,
automatic learning from examples,
data mining,
and so on.
Conclusions (2)
• At the moment, even a single paper has been not
published in many of these areas
• But surely they will appear in the forthcoming 10
years.
• We outlined some subjective choice of recent
papers as a potential base of future research in
QDA.
• Conventional logic synthesis, test and machine
learning methods, for both binary and multiplevalued logic, form a powerful base of new
approaches in quantum engineering.
Conclusions (3)
• Similarly the data structures like decision
diagrams or fundamental algorithms such as
satisfiability or reachability analysis continue
to have their role.
• Because of high numerical demands of
quantum logic there exist even higher
expectations on these methods.
• Growing mutual influence of QDA and QCI,
leading in long term to their unification.
My husband has not taken his
decision yet, he is not sure if he
should work on quantum computing