Coding theory approaches to nucleic acid design

(Redirected from DNA code construction)

DNA code construction refers to the application of coding theory to the design of nucleic acid systems for the field of DNA–based computation.

Introduction

edit

DNA sequences are known to appear in the form of double helices in living cells, in which one DNA strand is hybridized to its complementary strand through a series of hydrogen bonds. For the purpose of this entry, we shall focus on only oligonucleotides. DNA computing involves allowing synthetic oligonucleotide strands to hybridize in such a way as to perform computation. DNA computing requires that the self-assembly of the oligonucleotide strands happen in such a way that hybridization should occur in a manner compatible with the goals of computation.

The field of DNA computing was established in Leonard M. Adelman's seminal paper.[1] His work is significant for a number of reasons:

  • It shows how one could use the highly parallel nature of computation performed by DNA to solve problems that are difficult or almost impossible to solve using the traditional methods.
  • It's an example of computation at a molecular level, on the lines of nanocomputing, and this potentially is a major advantage as far as the information density on storage media is considered, which can never be reached by the semiconductor industry.
  • It demonstrates unique aspects of DNA as a data structure.

This capability for massively parallel computation in DNA computing can be exploited in solving many computational problems on an enormously large scale such as cell-based computational systems for cancer diagnostics and treatment, and ultra-high density storage media.[2]

This selection of codewords (sequences of DNA oligonucleotides) is a major hurdle in itself due to the phenomenon of secondary structure formation (in which DNA strands tend to fold onto themselves during hybridization and hence rendering themselves useless in further computations. This is also known as self-hybridization). The Nussinov-Jacobson[3] algorithm is used to predict secondary structures and also to identify certain design criteria that reduce the possibility of secondary structure formation in a codeword. In essence this algorithm shows how the presence of a cyclic structure in a DNA code reduces the complexity of the problem of testing the codewords for secondary structures.

Novel constructions of such codes include using cyclic reversible extended generalized Hadamard matrices, and a binary approach. Before diving into these constructions, we shall revisit certain fundamental genetic terminology. The motivation for the theorems presented in this article, is that they concur with the Nussinov - Jacobson algorithm, in that the existence of cyclic structure helps in reducing complexity and thus prevents secondary structure formation. i.e. these algorithms satisfy some or all the design requirements for DNA oligonucleotides at the time of hybridization (which is the core of the DNA computing process) and hence do not suffer from the problems of self - hybridization.

Definitions

edit

A DNA code is simply a set of sequences over the alphabet  .

Each purine base is the Watson-Crick complement of a unique pyrimidine base (and vice versa) – adenine and thymine form a complementary pair, as do guanine and cytosine. This pairing can be described as follows –  .

Such pairing is chemically very stable and strong. However, pairing of mismatching bases does occur at times due to biological mutations.

Most of the focus on DNA coding has been on constructing large sets of DNA codewords with prescribed minimum distance properties. For this purpose let us lay down the required groundwork to proceed further.

Let   be a word of length   over the alphabet  . For  , we will use the notation   to denote the subsequence  . Furthermore, the sequence obtained by reversing   will be denoted as  . The Watson-Crick complement, or the reverse-complement of q, is defined to be  , where   denotes the Watson-Crick complement base pair of  .

For any pair of length-  words   and   over  , the Hamming distance   is the number of positions   at which  . Further, define reverse-Hamming distance as  . Similarly, reverse-complement Hamming distance is  . (where   stands for reverse complement)

Another important code design consideration linked to the process of oligonucleotide hybridization pertains to the GC content of sequences in a DNA code. The GC-content,  , of a DNA sequence   is defined to be the number of indices   such that  . A DNA code in which all codewords have the same GC-content,  , is called a constant GC-content code.

A generalized Hadamard matrix   is an       square matrix with entries taken from the set of  th roots of unity,  , that satisfies   =  . Here   denotes the identity matrix of order  , while * stands for complex-conjugation. We will only concern ourselves with the case   for some prime  . A necessary condition for the existence of generalized Hadamard matrices   is that  . The exponent matrix,  , of   is the   matrix with the entries in  , is obtained by replacing each entry   in   by the exponent  .

The elements of the Hadamard exponent matrix lie in the Galois field  , and its row vectors constitute the codewords of what shall be called a generalized Hadamard code.

Here, the elements of   lie in the Galois field  .

By definition, a generalized Hadamard matrix   in its standard form has only 1s in its first row and column. The   square matrix formed by the remaining entries of   is called the core of  , and the corresponding submatrix of the exponent matrix   is called the core of construction. Thus, by omission of the all-zero first column cyclic generalized Hadamard codes are possible, whose codewords are the row vectors of the punctured matrix.

Also, the rows of such an exponent matrix satisfy the following two properties: (i) in each of the nonzero rows of the exponent matrix, each element of   appears a constant number,  , of times; and (ii) the Hamming distance between any two rows is  .[4]

Property U

edit

Let   be the cyclic group generated by  , where   is a complex primitive  th root of unity, and   is a fixed prime. Further, let  ,   denote arbitrary vectors over   which are of length  , where   is a positive integer. Define the collection of differences between exponents  , where   is the multiplicity of element   of   which appears in  .[4]

Vector   is said to satisfy Property U if and only if each element   of   appears in   exactly   times ( )

The following lemma is of fundamental importance in constructing generalized Hadamard codes.

Lemma. Orthogonality of vectors over   – For fixed primes  , arbitrary vectors   of length  , whose elements are from  , are orthogonal if the vector   satisfies Property U, where   is the collection of differences   between the Hadamard exponents associated with  .

M sequences

edit

Let   be an arbitrary vector of length   whose elements are in the finite field  , where   is a prime. Let the elements of a vector   constitute the first period of an infinite sequence   which is periodic of period  . If   is the smallest period for conceiving any subsequence, the sequence is called an M-sequence, or a maximal sequence of least period obtained by cyclically permuting   elements. If whenever the elements of   are permuted arbitrarily to yield  , the sequence   is an M-sequence, then the sequence   is called M-invariant. The theorems that follow present conditions that ensure M-invariance. In conjunction with a certain uniformity property of polynomial coefficients, these conditions yield a simple method by which complex Hadamard matrices with cyclic core can be constructed.

The goal here is to find cyclic matrix   whose elements are in Galois field   and whose dimension is  . The rows of   will be the nonzero codewords of a linear cyclic code  , if and only if there is polynomial   with coefficients in  , which is a proper divisor of   and which generates  . In order to have  nonzero codewords,   must be of degree  . Further, in order to generate a cyclic Hadamard core, the vector (of coefficients of)   when operated upon with the cyclic shift operation must be of period  , and the vector difference of two arbitrary rows of   (augmented with zero) must satisfy the uniformity condition of Butson,[5] previously referred to as Property U. One necessary condition for  -periodicity is that  , where   is monic irreducible over.[6] The approach here is to replace the last requirement with the condition that the coefficients of the vector   are uniformly distributed over  , i.e. each residue   appears the same number of times (Property U). A proof that this heuristic approach always produces a cyclic core is given below.

Examples of code construction

edit

Code construction using complex Hadamard matrices

edit

Construction algorithm

edit

Consider a monic irreducible polynomial   over   of degree   having a suitable companion   of degree   such that  , where the vector   satisfies Property U. This requires only a simple computer algorithm for long division over  . Since  , the ideal generated by   is a cyclic code  . Moreover, Property U guarantees the nonzero codewords form a cyclic matrix, each row of period   under cyclic permutation, which serves as a cyclic core for the Hadamard matrix  . As an example, a cyclic core for   results from the companions   and  . The coefficients of   indicate that   is the relative difference set,  .

Theorem

edit

Let   be a prime and  , with   a monic polynomial of degree   whose extended vector of coefficients   are elements of  . Suppose the following conditions hold:

  1. vector   satisfies the property U, and
  2.  , where   is a monic irreducible polynomial of degree  .

Then there exists a p-ary linear cyclic code   of blocksize  , such that the augmented code   is the exponent matrix for the Hadamard matrix  , with  , where the core of   is a cyclic matrix.

Proof:

First note that   is monic and divides   with degree  . Now, we need to show that the matrix   whose rows are nonzero codewords constitutes a cyclic core for some complex Hadamard matrix  .

Given that   satisfies property U, all of the nonzero residues of   lie in C. By cyclically permuting elements of  , we get the desired exponent matrix   where we can get every codeword in   by permuting the first codeword. (This is because the sequence obtained by cyclically permuting   is M-invariant.)

We also see that augmentation of each codeword of   by adding a leading zero element produces a vector which satisfies Property U. Also, since the code is linear, the   vector difference of two arbitrary codewords is also a codeword and thus satisfy Property U. Therefore, the row vectors of the augmented code   form a Hadamard exponent. Thus,   is the standard form of some complex Hadamard matrix  .

Thus from the above property, we see that the core of   is a circulant matrix consisting of all the   cyclic shifts of its first row. Such a core is called a cyclic core where in each element of   appears in each row of   exactly   times, and the Hamming distance between any two rows is exactly  . The   rows of the core   form a constant-composition code - one consisting of   cyclic shifts of some length   over the set  . Hamming distance between any two codewords in   is  .

The following can be inferred from the theorem as explained above. (For more detailed reading, the reader is referred to the paper by Heng and Cooke.[4]) Let   for   prime and  . Let   be a monic polynomial over  , of degree N − k such that   over  , for some monic irreducible polynomial  . Suppose that the vector  , with   for (N − k) < i < N, has the property that it contains each element of   the same number of times. Then, the   cyclic shifts of the vector   form the core of the exponent matrix of some Hadamard matrix .

DNA codes with constant GC-content can obviously be constructed from constant-composition codes (A constant composition code over a k-ary alphabet has the property that the numbers of occurrences of the k symbols within a codeword is the same for each codeword) over   by mapping the symbols of   to the symbols of the DNA alphabet,  . For example, using cyclic constant composition code of length   over   guaranteed by the theorem proved above and the resulting property, and using the mapping that takes   to  ,   to   and   to  , we obtain a DNA code   with   and a GC-content of  . Clearly   and in fact since   and no codeword in   contains no symbol  , we also have  . This is summarized in the following corollary.[4]

Corollary

edit

For any  , there exists DNA codes   with   codewords of length  , constant GC-content  ,   and in which every codeword is a cyclic shift of a fixed generator codeword  .

Each of the following vectors generates a cyclic core of a Hadamard matrix   (where  , and   in this example):[4]

 ;

 .

Where,  .

Thus, we see how DNA codes can be obtained from such generators by mapping   onto  . The actual choice of mapping plays a major role in secondary structure formations in the codewords.

We see that all such mappings yield codes with essentially the same parameters. However the actual choice of mapping has a strong influence on the secondary structure of the codewords. For example, the codeword illustrated was obtained from   via the mapping  , while the codeword   was obtained from the same generator   via the mapping  .

Code construction via a Binary Mapping

edit

Perhaps a simpler approach to building/designing DNA codewords is by having a binary mapping by looking at the design problem as that of constructing the codewords as binary codes. i.e. map the DNA codeword alphabet   onto the set of 2-bit length binary words as shown:  ,  ,  ,  .

As we can see, the first bit of a binary image clearly determines which complementary pair it belongs to.

Let   be a DNA sequence. The sequence   obtained by applying the mapping given above to  , is called the binary image of  .

Now, let  .

Now, let the subsequence   be called the even subsequence of  , and   be called the odd subsequence of  .

Thus, for example, for  , then,  .

Then   and  .

Let us define an even component as  , and an odd component as  .

From this choice of binary mapping, the GC-content of DNA sequence   = Hamming weight of  .

Hence, a DNA code   is a constant GC-content codeword if and only if its even component   is a constant-weight code.

Let   be a binary code consisting of   codewords of length   and minimum distance  , such that   implies that  .

For  , consider the constant-weight subcode  , where   denotes Hamming weight. Choose   such that  , and consider a DNA code,  , with the following choice for its even and odd components:

 ,  .

Where   denotes lexicographic ordering. The   in the definition of   ensures that if  , then  , so that distinct codewords in   cannot be reverse-complements of each other.

The code   has   codewords of length   and constant weight  .

Furthermore,   and   ( this is because   is a subset of the codewords in  ).

Also,  .

Note that   and   both have weight  . This implies that   and   have weight  .

And due to the weight constraint on  , we must have for all  ,  .

Thus, the code   has   codewords of length  .

From this, we see that   (because the component codewords of   are taken from  ).

Similarly,  .

Therefore, the DNA code

 

with  , has   codewords of length  , and satisfies   and  .

From the examples listed above, one can wonder what could be the future potential of DNA-based computers?

Despite its enormous potential, this method is highly unlikely to be implemented in home computers or even computers at offices, etc. because of the sheer flexibility and speed as well as cost factors that favor silicon chip based devices used for the computers today.[2]

However, such a method could be used in situations where the only available method is this and requires the accuracy associated with the DNA hybridization mechanism; applications which require operations to be performed with a high degree of reliability.

Currently, there are several software packages, such as the Vienna package,[7] which can predict secondary structure formations in single stranded DNAs (i.e. oligonucleotides) or RNA sequences.

See also

edit

References

edit
  1. ^ Adleman, L. (1994). "Molecular computation of solutions to combinatorial problem" (PDF). Science. 266 (5187): 1021–4. CiteSeerX 10.1.1.54.2565. doi:10.1126/science.7973651. PMID 7973651. Archived from the original (PDF) on 2005-02-06. Retrieved 2010-05-04.
  2. ^ a b Mansuripur, M.; Khulbe, P.K.; Kuebler, S.M.; Perry, J.W.; Giridhar, M.S.; Peyghambarian, N. (2003). "Information storage and retrieval using macromolecules as storage media". Optical Society of America Technical Digest Series.
  3. ^ Milenkovic, Olgica; Kashyap, Navin (14–18 March 2005). On the Design of codes for DNA computing. International Workshop on Coding and Cryptography. Bergen, Norway. doi:10.1007/11779360_9.
  4. ^ a b c d e Cooke, C. (1999). "Polynomial construction of complex Hadamard matrices with cyclic core". Applied Mathematics Letters. 12: 87–93. doi:10.1016/S0893-9659(98)00131-1.
  5. ^ Adámek, Jiří (1991). Foundations of coding: theory and applications of error-correcting codes, with an introduction to cryptography and information theory. Chichester: Wiley. doi:10.1002/9781118033265. ISBN 978-0-471-62187-4.
  6. ^ Zierler, N. (1959). "Linear recurring sequences". J. Soc. Indust. Appl. Math. 7: 31–48. doi:10.1137/0107003.
  7. ^ "The Vienna RNA secondary structure package".
edit