Quantum Algorithms for Bio-molecular Solutions to the
Satisfiability Problem on a Quantum Computer
Weng-Long Chang1, Ting-Ting Ren2, Jun Luo3, Mang Feng4and Minyi Guo5
Abstract—We demonstrate that the logic computation performed by the DNA-based algorithm for solving general cases of the satisfiability problem can be implemented by our proposed quantum algorithm on the quantum machine proposed by Deutsch. Moreover, we also prove that the logic computation by the bio-molecular operations proposed by Adleman can be implemented by quantum gates (for example, the Hadamard gate, NOT, CNOT, and CCNOT) on the quantum machine. Furthermore, those NP-complete problems solved on a bio-molecular computer are also solvable on a quantum computer. To test our theory, we carry out a three-qubit NMR experiment for solving the simplest satisfiability problem.
Key Words—Quantum Algorithms, Quantum Circuits, Nuclear
Magnetic Resonance, Molecular Algorithms.
I. INTRODUCTION
HE molecular computation was first proposed by Adleman in 1994 when he successfully solved an instance of the Hamiltonian path problem in a test tube by DNA strands [1]. On the other hand, Deutsch [2] has
proposed a general model of quantum computation the
quantum Turing machine. The rest of the paper is organized as follows: Section II gives motivation for developing quantum algorithm of solving the satisfiability problem with m clauses and n Boolean variables. In Section III we will briefly review the development of molecular computing and quantum computing. Section IV is for our quantum algorithm solving the satisfiability problem with m clauses and n Boolean variables. In Section V we demonstrate that the bio-molecular operations proposed by Adleman [1] can be implemented on the quantum machine proposed by Deutsch
[2], and those NP-complete problems solvable on a bio-molecular computer can be fully solved on a quantum computer. The time complexity and the space complexity of our quantum algorithm are analyzed in Section VI for solving the satisfiability problem with m clauses and n Boolean variables. Based on Cook’s theorem, the relation between the class P and class NP is described in Section VII. Section VIII is for the nuclear magnetic resonance (NMR) experiment to check our theory. We give the simplest example of three quantum bits for the satisfiability problem, and an experiment by NMR is carried out. We conclude with a brief discussion in Section IX.
Manuscript received December 1, 2007. This work was supported in part by the National Natural Science Foundation of China under Grants No. 10774163, partly by the National Fundamental Research Program of China under Grants No. 2006CB921203, and also partly supported by the National Science Foundation of Republic of China under Grants No. 96-2221-E-151-008- and 96-2218-E-151-004-.
Weng-Long Chang is with Department of Computer Science and Information Engineering, National Kaohsiung University of Applied Sciences, Kaohsiung City, Taiwan 807-78, Republic of China (phone: +886-7-381-4526 Ext. 5801; fax: +886-7-383-7424; e-mail: changwl@ cc.kuas.edu.tw, changwenglong@hotmail.com).
Ting-Ting. Ren, Jun Luo and Mang Feng are State Key Laboratory of Magnetic Resonance and Atomic and Molecular Physics, Wuhan Institute of Physics and Mathematics, Chinese Academy of Sciences, Wuhan, 430071, People’s Republic of China (e-mail: 2
ttren@wipm.ac.cn, 3
jluo@wipm.ac.cn,4
mangfeng@wipm.ac.cn).
Minyi Guo is with Department of Computer Software, the University of Aizu, Aizu-Wakamatsu City, Fukushima 965-8580, Japan (Phone Number: 0242-37-2557, E-mail: minyi@u-aizu.ac.jp, Fax Number: 0242-37-2744).
II. MOTIVATION
In the DNA-based algorithm for the satisfiability problem, 2nDNA strands are used to represent 2ncombinational states of n bits in computational subspace. So if the value of n is greater than 512, real bio-molecular experiments become
very challenging. However, 2n possible solutions for the
satisfiability problem can be represented by means of arbitrary superposition of n quantum bits. This implies that if
the corresponding relations between a bio-molecular
computer [1] and a quantum computer [2] can be set up, we
may transcribe the DNA-based algorithms to the
corresponding quantum algorithms and work them out with reduced difficulty on the quantum computer.
III. BRIEF REVIEW OF MOLECULAR COMPUTING AND QUANTUM COMPUTING
The optimal solution of every NP-complete is figured out from its characteristic [3]. Potentially significant areas of application for DNA algorithms are the breaking of encryption schemes and solving the NP-Complete problems [4-8]. On the other hand, the Deutsch-Jozsa algorithm [9] and Coppersmith’s quantum algorithm for the fast Fourier transform [10] were proposed. So far, the most frequently cited quantum algorithms are Shor’s algorithms for solving factoring integers and discrete logarithm [11] and Grover’s search algorithm [12] for unsorted databases. Afterward, strengths and weaknesses of the quantum Turing machine for solving NP-complete problems were discussed [13]. IV. QUANTUM ALGORITHMS FOR BIO-MOLECULAR
SOLUTIONS OF THE SATISFIABILITY PROBLEM In this section, we will demonstrate that the logic computation performed by Lipton’s DNA-based algorithm [6] for solving the satisfiability problem can be implemented by our proposed quantum algorithms on a quantum machine.
T
1080 978-1-4244-1823-7/08/$25.00 c2008 IEEE
A. THE DEFINITION OF THE SATISFIABILITY PROBLEM
A clause is a formula that is of the form un un 1} u2 u1, where each ukfor 1d k d n is a Boolean variable or its
negation. Definition 41 from [6] is introduced to denote the satisfiability problem.
Definition 41: In general, a satisfiability problem includes a
Boolean formula of the form C1 C2} Cmwhere each Cj
for 1d j d m is a clause. Then, the question is to find values of the variables so that the whole formula has the value 1. This is equal to finding values to the variables that make each clause have the value 1.
B. ALL OF THE POSSIBLE SOLUTIONS TO THE SATISFIABILITY PROBLEM
Assume that U is a set of 2npossible choices and equal to {unun 1} u2u1_ uk {0, 1} for 1 d k d n}, which implies
that the length of each element in U is n bits and each element
represents one of 2n combinational states for n Boolean
variables. For the sake of presentation, we suppose that uk0is
used to denote the value of ukto be zero and uk1means value
of ukto be one. The following definition will show how each
element in U is represented to be a unique computational
state vector with 2n-tuples of binary numbers.
Definition 42: The jth element in U can be represented as a
unique computational state vector
u
1>
1,1 1,2 1,2@
1 2n,
T nu
u
u
u where = 1, = 1, = 0 and = 0 for 1d h z j d 2 ju
1,u
j,1 hu
1,u
h,1 n .The corresponding computational state vector for the first element, un0un10} u20u10, in U is
>
and the corresponding computational state vector for the last element, u
@
,
0
0
1
1 2n T u n1un 11} u21u11, in U isFor the sake of presentation, we assume that B is a set of the corresponding computational state vectors to the elements in
U and B = { }
}. Because each component in B is a
coordinated vector, we span B = [
>
0
0
1
@
n.
2 1 T u>
1
0
0
@
1 2n T u>
T n 2 11
0
0
@
u nC
2 14], where is aHilbert space. This implies that each vector in the set B is an
orthonormal basis in a Hilbert space.
n
C
2C. COMPUTATIONAL SPACE OF MOLECULES FOR THE SATISFIABILITY PROBLEM
The following bio-molecular operations cited from [1] will be used to construct computational space of molecules for solving the satisfiability problem with m clauses and n Boolean variables.
Definition 43: Given a set U = {unun 1} u2u1_ uk {0,
1} for 1d k d n}and a Boolean variable uj, the bio-molecular
operation, “Append-Head”, appends ujonto the head of every
element in the set U. The formal representation is written as Append-Head(U, uj) = {ujunun 1} u2u1_ uk {0, 1} for 1
d k d n and uj {0, 1}}.
Definition 44: Given a set U = {unun 1} u2u1_ uk {0,
1} for 1d k d n}and a Boolean variable uj, the bio-molecular
operation, “Append-Tail”, appends ujonto the end of every
element in the set U. The formal representation is written as Append-Tail(U, uj) = {unun 1} u2u1uj_ uk {0, 1} for 1
d k d n and uj {0, 1}}.
Definition 45: Given a set U = {unun 1} u2u1_ uk {0,
1} for 1d k d n}, the bio-molecular operation, “Discard(U)” sets U to be an empty set.
Definition 46: Given a set U = {unun 1} u2u1_ uk {0,
1} for 1d k d n}, the bio-molecular operation “Amplify(U,
{Ui})” creates a number of identical copies, Ui, of the set U,
and then discard(U).
Definition 47: Given a set U = {unun 1} u2u1_ uk {0,
1} for 1d k d n} and a Boolean variable, uj, if the value of ujis
equal to one, then the bio-molecular extract operation creates two new sets, +(U, uj1) = {unun 1} uj1} u2u1_ uk {0, 1}
for 1d k z j d n}and (U, uj1) = {unun 1} uj0} u2u1_ uk
{0, 1} for 1 d k z j d n}. Otherwise, it produces another two new sets, +(U, uj0) = {unun 1} uj0} u2u1_ uk {0, 1} for
1d k z j d n}and (U, uj0) = {unun 1} uj1} u2u1_ uk {0,
1} for 1d k z j d n}.
Definition 48: Given m sets U1} Um, the bio-molecular
merge operation,(U1,}, Um) = U1 } Um.
Definition 49: Given a set U = {unun 1} u2u1_ uk {0,
1} for 1d k d n}, the bio-molecular operation “Detect(U)”
returns true if Uz . Otherwise, it returns false.
Definition 410: Given a set U = {unun 1} u2u1_ uk {0,
1} for 1 d k d n}, the bio-molecular operation “Read(U)”
performs an arbitrary element in U. Even if U contains many different elements, the bio-molecular operation can give an explicit description of exactly one of them.
For solving the satisfiability problem with m clauses and n Boolean variables, the following bio-molecular algorithm can be used to create all of the 2npossible choices. A set U is an
empty set and is regarded as the input set of the DNA-based
algorithm. The second parameter n in
CombinationalStates(U, n) is to represent the number of
Boolean variables. Procedure CombinationalStates(U, n) (0a) Append-Tail(U1, un1). (0b) Append-Tail(U2, un0). (0c) U =(U1, U2). (1) For k = n 1 downto 1 (1a) Amplify(U, U1, U2). (1b) Append-Tail(U1, uk 1). (1c) Append-Tail(U2, uk 0). (1d) U =(U1, U2). End For End Procedure
Lemma 41: For solving the satisfiability problem with m
clauses and n Boolean variables, 2npossible choices created
from the DNA-based algorithm, CombinationalStates(U, n), form an orthonormal basis of a Hilbert space (i.e., a complex vector space,
C
2n).
2008 IEEE Congress on Evolutionary Computation (CEC 2008) 1081
D. COMPUTATIONAL SPACE OF QUANTUM MECHANICAL SOLUTION FOR THE SATISFIABILITY PROBLEM
A qubit (quantum bit) has two ‘computational basis
vectors’
0
and1
of the two-dimensional Hilbert spacecorresponding to the classical bit values 0 and 1 [14], and an
arbitrary state
M
of a qubit is a linearly weightedcombination of the computational basis vectors (4.1):
M
=l1
0
+ l21
, where the weighted factors l1and l2 C2 are the so-called probability amplitudes, with | l1|2+ | l2|2= 1. A collection of n qubits is called a qregister (quantum register)of size n. It may include any of the 2n-dimensional
computational basis vectors, n qubits of size, or arbitrary superposition of these vectors [14].
E. LIPTON’S DNA-BASED ALGORITHMS OF SOLVING THE SATISFIABILITY PROBLEM
Although Lipton did not explicitly present his operation set in [6], his solution may be phrased in terms of the eight operations defined in Subsection C. Lipton’s DNA-based algorithm for solving the satisfiability problem denoted in
Definition 41 is described below. The symbol |Cj| in the
following algorithm is introduced to represent the number of Boolean variables and their negations in the jth clause in a formula.
Algorithm 41: Lipton’s DNA-based algorithm for solving
the satisfiability problem. (1) CombinationalStates(U, n) (2) For j = 1 to m do begin (3) For i = 1 to |Cj| do begin
(4) If the ith element in the jth clause is one of n Boolean
variables uk, Then
(5) Ui= +(U, uk1) and U =(U, uk1)
(6) Else
(7) Ui= +(U, uk0) and U =(U, uk0)
(8) End If (9) End For (10) Discard(U) (11) For i = 1 to |Cj| do begin (12) U =(U, Ui) (13) End For (14) End For
(15) If (Detect(U) = = true) Then (15a) Read(U)
EndIf
(16) End Algorithm
Lemma 42: Algorithm 41, Lipton’s DNA-based
algorithm, can be applied to the satisfiability problem with m clauses and n Boolean variables.
F. INTRODUCTION OF QUANTUM GATES FOR SOLVING THE SATISFIABILITY PROBLEM
The time evolution of the states of quantum registers can be modeled by means of unitary operators which are often referred to as quantum gates [14]. Therefore, a quantum gate can be regarded as an elementary quantum-computing device which performs a fixed unitary operation on selected qubits during a fixed period of time. One-qubit and two-qubit quantum gates are elementary quantum gates. The NOT gate is a one-qubit gate to negate the only (target) bit [14]. The
CNOT (controlled NOT) gate is a two-qubit gate to flip the
second qubit (the target qubit) if and only if the first qubit (the
control qubit) is one [14]. The CCNOT
(controlled-controlled-NOT) gates is a three-qubit gate to flip the third qubit (the target qubit) if and only if the first qubit and second qubit (the two control qubits) are both one [14].
G. CONSTRUCTING QUANTUM NETWORKS FOR SOLVING THE SATISFIABILITY PROBLEM
The operations OR and AND are implemented by quantum circuits in Figures 41and 4-2, respectively. For evaluating a clause with the form un un 1} u2 u1, three quantum
registers
u
nu
1,
y
ny
1 andr
nr
n1r
1r
0are needed. Therefore, its evaluating computation is equal to
1 1
r
r
r
n nr
0y
ny
1u
nu
1 :)
(
)
(
r
n
y
nx
r
n1r
1
y
1x
r
0r
0y
ny
1 1u
u
n , wherex
denotes operation AND of theirnegations of two Boolean variables
{
y
k,
r
k1}
for 1d k d n.The first bit, r0, in the third quantum register is initially
prepared in state
0
,
and other n bits in the third quantumregister are initially prepared in state
1
.
The (n + 1)thquantum bit, rn, in the third register is employed to store the
final result of the evaluating computation.
Then, in order to evaluate AND operation of the previous clause and the current clause, the fourth quantum register
0 1
1
c
c
c
c
m m is needed. The first bit, c0, in the fourthquantum register is initially prepared in state
1
,
and other m bits in the quantum register are initially in state0
.
The (m + 1)th quantum bit, cm, in the fourth register is employed tostore the final result of evaluating computation for all of the clauses. The full network, QEC (the abbreviation of quantum evaluating circuit for checking whether the current clause is true or not), is illustrated in Figure 4í3 in Appendix A and can be understood as follows:
• We compute the (n + 1)th bit of the third quantum register to the final result of evaluating a clause. This step requires computing all the OR operations through the relation rk8 rk
(
y
kx
r
k1)
for 1d k d n. Then, wecompute AND operation of the previous clause and the
1082 2008 IEEE Congress on Evolutionary Computation (CEC 2008)
NMR experiments. We also expect that our algorithm could be carried out by a real quantum machine in the future.
[9] D. Deutsch and R. Jozsa. “Rapid Solutions of Problems by Quantum Computation”. Proceedings of the Royal Society of London, Series A, Vol. 439, pp. 553-558, 1992.
[10] D. Coppersmith. “An approximate Fourier transform useful in quantum factoring”. IBM research report, Technical Report RC 19642, IBM Research Division T.J. Watson Research Center, December 1994. e-print quant-ph/0201067.
REFERENCES
[1] L. M. Adleman. “Molecular Computation of Solutions to Combinatorial Problems”. Science, 266: 1021-1024, Nov. 11, 1994.
[11] P. W. Shor. “Algorithm for Quantum Computation: Discrete Logarithm and Factoring Algorithm”. Proceedings of the 35th Annual IEEE Symposium on Foundation of Computer Science, pp.124-134, 1994. [2] D. Deutsch. “Quantum Theory, the Church-Turing Principle and the
Universal Quantum Computer”. Proceeding of Royal Society of London series A, 400, pp.97-117, 1985.
[12] L. K. Grover. “A Fast Quantum Mechanical Algorithm for Database Search”. Proceedings of the twenty-eighth annual ACM symposium on Theory of computing, pp. 212-219, May 1996.
[3] M. Guo, W.-L. Chang, M. Ho, J. Lu and J. Cao. “Is Optimal Solution of Every NP-Complete or NP-Hard Problem Determined from its Characteristic for DNA-based Computing”. BioSystems, Vol. 80, No. 1,
pp. 71-82, 2005. [13] C. H. Bennett, E. Bernstein, G. Brassard and U. V. Vazirani. “Strengths and Weakness of Quantum Computing”. SIAM Journal on Computing, Volume 26, No. 5, pp. 1510-1523, October 1997.
[4] W.-L. Chang, M. Ho and M. Guo. “Fast Parallel Molecular Algorithms for DNA-based Computation: Factoring Integers”. IEEE Transactions
on Nanobioscience, Vol. 4, No. 2, pp. 149-163, 2005. [14] S. Imre and F. Balazs. Quantum Computation and Communications: An
Engineering Approach. John Wiley & Sons, Ltd, ISBN 0-470-86902-X,
2005. [5] D. Boneh, C. Dunworth and R. J. Lipton. “Breaking DES Using a
Molecular Computer”. In Proceedings of the 1st DIMACS Workshop on DNA Based Computers, 1995, American Mathematical Society. In DIMACS Series in Discrete Mathematics and Theoretical Computer Science, Volume 27, pp. 37-66, 1996.
[15] J. E. Hopcroft, R. Motwani and J. D. Ullman. Introduction to Automata
Theory, Languages, and Computation, Addison Wesley, ISBN
0-201-44124-1, 2001.
[16] D. G. Cory, M. D. Price, T. F. Havel, “Nuclear magnetic resonance pectroscopy: An experimentally accessible paradigm for quantum computing”, Phyisca D, 1998, 120 (1-2): 82-101.
[6] R. Lipton. “DNA Solution of Hard Computational Problems”. Science, 268: 542-545, 1995.
[7] W.-L. Chang, M. Ho and M. Guo. “Molecular solutions for the subset-sum problem on DNA-based supercomputing”. BioSystems, Volume 73, No. 2, pp. 117-130, 2004.
[17] I. L. Chuang, N. Gershenfeld, M. G. Kubinec and D. W. Leung, “Bulk quantum computation with nuclear magnetic resonance: theory and experiment”, Proc. R. Soc. Lond. A (1998) 454: 447-455. [8] W.-L. Chang, “Fast Parallel DNA-based Algorithms for Molecular
Computation: the Set-Partition Problem”. IEEE Transactions on Nanobioscience, Vol. 6, No. 4, 2007.
O R A N D Q E C O R … O R O R O R ….. ….. O R O R O R
0
0r
1y
1
1r
2y
1
2r
1
2 nr
1
1 nr
1
nr
ny
1 ny
1
0c
0
1c
0
mc
0
0r
1y
1
1r
2y
1
2r
1
2 nr
1 ny
1
1 nr
ny
1
nr
1
0c
0
1c
0
mc
….. … ….. …Figure 43: The full network is the QEC (the abbreviation of quantum evaluating circuit) to check whether the current clause is true or not).
1088 2008 IEEE Congress on Evolutionary Computation (CEC 2008)