The discovery of single-nucleotide polymorphisms (SNPs) has important implications in a variety of genetic studies on human diseases and biological functions. One valuable approach proposed for SNP discovery is based on base-specific cleavage and mass spectrometry. However, it is still very challenging to achieve the full potential of this SNP discovery approach.

Results

In this study, we formulate two new combinatorial optimization problems. While both problems are aimed at reconstructing the sample sequence that would attain the minimum number of SNPs, they search over different candidate sequence spaces. The first problem, denoted as , limits its search to sequences whose in silico predicted mass spectra have all their signals contained in the measured mass spectra. In contrast, the second problem, denoted as , limits its search to sequences whose in silico predicted mass spectra instead contain all the signals of the measured mass spectra. We present an exact dynamic programming algorithm for solving the problem and also show that the problem is NP-hard by a reduction from a restricted variation of the 3-partition problem.

Conclusions

We believe that an efficient solution to either problem above could offer a seamless integration of information in four complementary base-specific cleavage reactions, thereby improving the capability of the underlying biotechnology for sensitive and accurate SNP discovery.

Background

Single nucleotide polymorphisms (SNPs) is a common type of DNA sequence variations that occur when a single nucleotide base is altered at a specific locus. They are among the most important genetic factors that contribute to human disease and biological functions. However, discovering novel SNPs is a scientifically challenging task. Among others, one valuable approach proposed for SNP discovery is based on base-specific cleavage and mass spectrometry [1–3].

The SNP discovery approach based on base-specific cleavage and mass spectrometry usually adopts a data-acquisition procedure as summarized below. First, a target sample DNA sequence is PCR-amplified using primers that incorporate the T7 promoter sequences. Then, the PCR products are in-vitro transcribed and subsequently digested with the endonuclease RNase A in four base-specific cleavage reactions. Each reaction can cleave the sample sequence to completion at all loci wherever a specific base is found. Finally, the matrix-assisted laser desorption/ionization time-of-flight mass spectrometry (MALDI-TOF MS) is applied to the cleavage products, resulting in four measured mass spectra, each corresponding to one base-specific cleavage reaction.

Since each cleavage product is expected to be made of three non-cleavage bases, it is fairly straightforward to calculate the base composition from its measured mass signal. With all these base compositions in hand, the task of discovering SNPs in the sample sequence is now left to a computational solution. In principle, this computational solution shall find a way to integrate the four complementary base-specific mass spectra, and then identify those SNPs that necessarily account for the unanticipated base compositions (i.e., corresponding to the measured mass signal changes as compared with an in-silico predicted mass spectra from a reference sequence). See Figure 1 for schematic outline of the SNP discovery approach using base-specific cleavage and mass spectrometry.

The early proof-of-concept studies on the above SNP discovery approach using base-specific cleavage and mass spectrometry were presented in [3–5], where the identification of SNPs however was done by visual inspection. Shortly afterwards, two automated computational solutions were developed [1, 2]: one was implemented in the proprietary MassARRAY™ SNP Discovery software package from Sequenom, Inc. and the other implemented in the software package called RNaseCut which is instead freely available online [6]. In particular, the solution in [1] mainly comprises of two separate procedures. It first computes all potential SNPs that give rise to each unanticipated based composition and then score them by taking into account the mass spectrometry data from the four base-specific cleavage reactions. Thus, the integration of the four base-specific cleavage reactions was done only in the second step. Apparently, such an integration strategy is far from being optimal, as at least it assumes that the occurrences of potential SNPs are independent in the first step.

In this paper, we study two new combinatorial optimization problems to exploit the full potential of the above SNP discovery approach. While both problems are aimed at reconstructing the sample sequence that would attain the minimum number of SNPs, they search over different candidate sequence spaces. The first problem, denoted as , limits its search to sequences whose in silico predicted mass spectra have all their signals contained in the measured mass spectra. In contrast, the second problem, denoted as , limits its search to sequences whose in silico predicted mass spectra instead contain all the signals of the measured mass spectra. Then, we present an exact dynamic programming algorithm for solving the problem and also show that the problem is NP-hard by a reduction from the restricted variation of the 3-partition problem [7, 8].

Methods

Preliminaries

Let s ∈ Σ* denote a string over the four-base alphabet . The length of s is denoted by |s|, the i-th base of s by s[i], and the substring of s from the i-th base to the j-th base by s[i, j], for 1 ≤ i ≤ j ≤ |s|. We use ∈ to denote the empty string so that |∠| = 0. The concatenation of two strings s and t is denoted by s · t, and the concatenation of l copies of a string s is denoted by s^{
l
}.

Given a string s and a cut base , a cleavage fragment refers to a substring of s that does not contain x and that cannot be extended in either side without crossing a base x. Formally, the substring s[i, j] is a cleavage fragment with respect to the cut base x if the following three conditions are satisfied: (i) s[i − 1] = x if i ≠ 1, (ii) s[j + 1] = x if j ≠ |s|, and (iii) s[k] ≠ x, ∀k ∈ [i, j]. In addition, the empty string ε is a cleavage fragment if there exits i ∈ [1,|s| − 1] such that s[i] = s[i + 1] = x. Given a cleavage fragment, we use to denote its base composition of i As, j Cs, k Gs, and l Ts. In [1], this base composition is termed as a compomer of the string s with respect to the cut base x. The whole set of compomers is hence called the compomer spectrum of the string s with respect to the cut base x, and denoted by Finally, let , a collection of four compomer spectra of the string s where each is generated with one cut base.

Example 1Let s := ACATGCTACATTA. Then, the string s contains four cleavage fragments with respect to the cut base A: C, TGCT, C, and TT. With respect to the cut base T, it instead contains five cleavage fragments: ACA, GC, ACA, ∠, and A. Their respective compomer spectra are and .Note that each compomer appears in a compomer spectrum at most once.

Problem formulation

Let d_{
H
} denote the Hamming distance between two strings s and of equal length. It measures the minimum number of substitutions required to transform one string into the other. Given a collection of compomer spectra of an unknown string (i.e., the sample DNA sequence experimented) which can in principle be generated from a mass spectrometry experiment, and a string s (i.e., the reference DNA sequence) which is believed to differ from the unknown string by a number of substitutions only, we formulate below two combinatorial optimization problems for SNP discovery.

Definition 2Given a string s and a collection of compomer spectra, find a stringsuch that, for alland d_{
H
}is minimized.

Definition 3Given a string s and a collection of compomer spectra, find a stringsuch that, for all
and d_{
H
}is minimized.

The only difference between the above two problem formulations is that one requires and the other requires , for all the cut bases. Once the string is found, it is easy to identify the SNPs in , i.e., those base substitutions that transform into s.

Example 4In this example, we letfor simplicity. Given the string s:= ATAAT and the setof compomer spectra (of an unknown string) where

The feasible solutions to theproblem for the above instance include the strings such as ATATA, TATAT, TTATT, ATATT, and ATTAT. Their respective Hamming distances to the input string s are 2, 3, 2, 1, and 1. The string = TTAAT is not a feasible solution because the compomerbutso that
.

The feasible solutions to the problem for the above instance include the strings such as TTATA, TATTA, ATATT, and ATTAT. Their respective Hamming distances to the input string s are 3, 5, 1, and 1. The string = TTAAT is not a feasible solution because the compomerbutso that.

The measured mass spectra of a sample sequence are rarely perfect in practice. Some peaks may actually represent noises, while some true signal peaks are missing. The problem is so formulated that its computational solution would be robust against noisy peaks but susceptible to missing peaks (i.e., there is a good chance to recover the sample sequence even if some noisy peaks are present in the measured mass spectra, but the chance would become much less if there are some true signal peaks missing). In contrast, the problem is so formulated that its computational solution would be robust against missing peaks but susceptible to noisy peaks.

We noticed that several computational problems in the literature that are more or less related to our problems introduced above. In [9], a so-called sequencing from compomers problem was studied which, like the problem, also aimed to reconstruct the sample sequence from a given collection of compomer spectra, but without help of a reference sequence. In [10], the spectral alignment problem differs from the problem mainly by its exploration on short read sequencing data rather than the mass/compomer spectra data, which may lead to wide implications in the subsequent algorithm design and complexity analysis. Moreover, in [1], a so-called SNP discovery from mass spectrometry problem was defined in a similar way to the problem. However, it has only a single compomer as input, as opposed to a collection of four complementary compomer spectra used in the problem.

Results

An exact dynamic programming algorithm for

In this subsection, we shall describe an exact dynamic programming algorithm for solving the problem. Without loss of generality, we may assume in the remaining of this section that every base of Σ will eventually occur in the optimal solution to a given instance of the problem. Consequently, only those feasible solutions that contains all the bases of Σ need to be considered when we search for the optimal solution. In case some base x would not occur in the optimal solution note that it becomes relatively easy to find since we would have and |s'| = |s|. See below for definitions of and .

Let us start with some preliminary definitions and notations. For a string s, a cleavage fragment s[i, j] is called internal if neither i = 1 nor j = |s|, left-ended if i = 1, or right-ended if j = |s|. In addition, a cleavage fragment ∠ is always considered internal. Given a collection of compomer spectra , we call a string is I-compatible if the compomers of its internal cleavage fragments are all contained in (under the respective cut base). A string is called L-compatible (resp. R-compatible) if it is I-compatible and if the compomers of its left-ended (resp. right-ended) cleavage fragments are all contained in as well.

Example 5Consider the string s given in Example 1. The four cleavage fragments of s with respect to the cut base A are all internal. Among the five cleavage fragments of s with respect to the base T, the first cleavage fragment ACA is left-ended, the last cleavage fragment A is right-ended, and the other three cleavage fragments in the middle are all internal.

Example 6Letbe a collection of compomer spectra where

We show in Table 1whether each of the given strings is I-compatible, L-compatible, or R-compatible with.

Table 1

Examples.

strings

I-compatible

L-compatible

R-compatible

ATGATAC

ATGCTAC

ACATGCT

TACATTA

CTACATTA

This table shows whether each of the given strings is I-compatible, L-compatible, or R-compatible with .

For each compomer in a given collection of compomer spectra , we use to denote the set of strings that (i) consist of i As, j Cs, k Gs, l Ts, (ii) contain exactly three distinct bases (i.e., three bases in the set Σ \ {x}), and (iii) are I-compatible with . It is easy to check that . In particular, if there exists in A_{
i
}C_{
j
}G_{
k
}T_{
l
}a non-cut base whose composition value is zero, then we have so that . Furthermore, we may define the following set

Then, let . Analogously, we may define , , and for the L-compatible strings and the R-compatible strings, respectively. Clearly, and , for all x ∈ Σ.

Example 7Consider the collection of compomer spectragiven in Example 6. For the compomer, we have, and. For the compomer , we have.

Given a string t which could be a potential cleavage fragment with respect to the cut base x (i.e., the string t does not contain any base x), we say a string s begins with the string t if t · x is a prefix of s · x, or say a string s ends with the string t if x · t is the suffix of x · s. The following lemma is useful to design a dynamic programming algorithm for solving the problem. Its easy proof is omitted. Recall that our discussions in this section are limited only to the feasible solutions containing all the bases of Σ.

Lemma 8A string s' of length
|s| is a feasible solution to theproblem if and only if

all the substrings ofare I-compatible with,

begins with a string in for some
, and

ends with a string in for some
.

Suppose we have an input instance of the problem. Given a string where , we define to be the minimum Hamming distance between the prefix of s of length i and a string which is such that

all its substrings are I-compatible with ,

it begins with a string from for some y ∈ Σ, and

it ends with the given string t.

To compute , we first find in the string x · t the rightmost position k at which the base (x · t)[k] is its first occurrence. Formally, we may write

Then, let x':= (x · t)[k], p := (x · t)[1, k - 1], and q := (x · t)[k,| x · t|]. Note that x' ≠ x and the string p contains all the bases of Σ except x'.

Example 9Let t := CGTT ∠I_{A}. Then, x · t = ACGTT, k = 4, , p = ACG, and q = TT.

To compute , we now use the following recurrence relation

Note that the minimization in the above is taken over all those strings ^{
′
} in which have p as the suffix. If there is no such a string in , then we let . The initial conditions for the recurrence relation are given as follows:

Theorem 10Let s' be the string that leads to

then s' would be an optimal solution to the input instanceof theproblem.

Proof: For the correctness of the above dynamic programming algorithm, we need to show that (i) every feasible solution of the problem would be essentially evaluated by the dynamic programming algorithm, and (ii) every string evaluated by the dynamic programming algorithm must be a feasible solution of the problem.

Let the string s' be a feasible solution. Consider a cleavage fragment t of s' that contains all the bases of Σ except its corresponding cut base x. Clearly, and t is the suffix of a substring s'[1, i] for some integer i. Without loss of generality, we can further suppose that t ≠ s'[1, i]. To show (i), what we mainly need to show is that there exists a string such that p is the suffix of t' and t' is the suffix of the substring s'[1, i - |q|], where x', p, and q are computed for the string t as described earlier. Indeed, we can find the string t^{
′
} as follows. First, let (i' − 1) be the position of the last occurrence of the base x' in the substring s'[1, i − |t|]; if there is no such occurrence, we let i' = 1. Then, we assign . Obviously, is the suffix of s'[1, i |q|]. Because s'[i - |t|] = x and x ≠ x , we have i' ≤ i - |t|. It then follows from p = s'[i − |t|, i − |q|] that p shall be the suffix of t'. Since p contains all the bases of except x' so, does t'. Moreover, t' is a cleavage fragment of s' with respect to the cut base x' because we have either s'[i' − 1] = x' or i' = 1 on the left end of t' and s'[i − |q| + 1] = x' on the right end of . By Lemma 8, we can see that . For the reader's convenience, we demonstrate in the following example how to find from t. Let s' = ACATGCTACATTA, t = s' [4,7] = TGCT, i = 7, x = A, and be the one as given in Example 6. Note that. Further, for the given string t = TGCT, we have x' = C, p = ATG, and q = CT. Then, we obtain that i' = 3 and then t' = s' [3, 7 − 2] = s' [3,5] = ATG. It is easy to check that p is the suffix of t', t' is the suffix of the substring , and .

On the other hand, let s' be a string evaluated by the dynamic programming algorithm. So, the string s' must begin with a string in for some and end with a string in for some . Consider a cleavage fragment t of s' that was used to construct the string s' during the backtracking procedure of the algorithm. Clearly, the string t contains all the bases of except its corresponding cut base x. Moreover, and t is the suffix of a substring s'[1, i] for some integer i. Without loss of generality, we can further suppose t ≠ s'[1, i] and , so that s'[i − |t|] = s'[i + 1] = x. Let t' be the string considered next to the string t during the backtracking procedure of the algorithm. Thus, we have such that p is the suffix of t' and is the suffix of the substring s'[1, i − |q|], where x', p, and q are computed for the string t as described earlier. More specifically, there exists i' such that t' = s'[i', i −|q|] and s^{
′
}[i' −1] = s' [i −|q| + 1] = x' if i' ≠ 1. To show (ii), by Lemma 8 and also by backward induction, what we mainly need to show is that the extended substring s'[i',|s'|] is I-compatible with , given that the substring s'[i − |t| + 1, |s'|] is already I-compatible with . To this end, we consider any internal cleavage fragment s'[j, k] of s' [i', |s'|] with respect to the cut base x″ = s'[j − 1] = s'[k + 1]. By definition of the internal cleavage fragment, we have j ≥ i' + 1 and k ≤ |s'| − 1. In the following we distinguish four cases:

If j ≥ i − |t| + 2, then s'[j, k] is an internal cleavage fragment of s'[i − |t| +1, |s'|]. Since s'[i − |t| +1, |s'|] is already assumed to be I-compatible with , the base composition of s'[ j, k] shall be also contained in .

If j = i − |t| + 1, then x″ = x, which further implies that k = i and s' [j, k] = t. Since , the base composition of s'[j, k] shall be contained in .

If j ≤ i − |t| and k ≥ i − |q|, then s'[i − |t|, i − |q|] is a substring of s'[j, k]. Since s^{
′
}[i − |t|, i − |q|] contains all the bases of Σ, the string s'[j, k] can not be a cleavage fragment (as a cleavage fragment must not contain its corresponding cut base). Therefore, there shall not have the case where j ≤ i − |t| and k ≥ i − |q|.

If k ≤ i − |q| − 1, then s'[j, k] is an internal cleavage fragment of t' = s'[i', i − |q|]. Since , the base composition of s'[j, k] shall be contained in .

In conclusion, for every internal cleavage fragment of s'[i^{
′
}, |s^{
′
}|], its base composition is contained in under the respective cut base. Therefore, the extended substring s'[i', |s'|] is still I-compatible with .

Note that computing each entry of the dynamic programming table may take time , where . Hence, the above dynamic programming algorithm can be done in time . In the worst case, we may have , that is, is in the factorial order of the input problem size. In practice, however, we would expect not too large to be manageable, because cleavage fragments are usually of small size. Therefore, the above dynamic programming algorithm could be a practically feasible solution to the problem , especially when compared to the brute-force algorithm which needs to examine all the possible strings s'. For the special case where , is actually an easy problem, as we can see from the above that

Corollary 11The above dynamic programming algorithm can solve the problem in polynomial time when .

The NP-hardness of

This subsection is dedicated to prove that the problem is NP-hard. We begin with a brief introduction of the 3-partition problem.

Definition 12 (The general form of the 3-partition problem)Given a multiset of positive integerswhere n = 3m and, can we partition the multiset into m multisets
, such that the sum of each multiset is equal to B?

The 3-partition problem is strongly NP-complete [7]. Therefore, it remains NP-complete even when the integers in and the integer B are encoded in unary. In this case, the size of a problem instance is Θ(nB). In contrast, it becomes O(n log B) when using the binary encoding of integers.

Definition 13 (The restricted variation of the 3-partition problem)Given a set of positive integerswhere n = 3m,, and , can we partition the set
into m subsets, such that the sum of each subset is equal to B?

There are two constraints imposed in the above restricted variation of the 3-partition problem. The first one limits to be a set so that all the integers in are distinct. The second one limits all the integers in strictly between and , which subsequently enforces every subset to consist of exactly three elements. Interestingly, this restricted variation of the 3-partition problem remains strongly NP-complete [8], just like the general form of the 3-partition problem. Note that the second constraint was actually not imposed in [8]. But, it can be easily done by adding B to each a_{
i
} and then multiplying B by 4.

Theorem 14Theproblem is NP-hard, even when.

Proof: We prove it by a reduction from the above restricted variation of the 3-partition problem. As an input for 3-partition, we are given a set of distinct positive integers where n = 3m, , and . Then, we construct an instance of the problem as follows:

Let Σ = {G, T}.

Let s be the string such that s · T = (G^{
B+2}T)^{
m
}. That is, let s · T be the concatenation of m copies of the fragment GG · · · GT, where each fragment consists of (B + 2) consecutive base Gs followed by one base T. Note that |s| = m(B + 3) − 1 = mB + 3m − 1.

Let and so that .

First, we check whether this construction can be done in polynomial time in the size of the input instance of the 3-partition problem. Since the restricted variation of the 3-partition problem is strongly NP-complete, we may encode the integers in unary so that the size of the input instance is Θ(nB). In the above reduction, we can easily see that the first step can be done in constant time, the second step in time O(mB), and the third step in time O(n log B). Therefore, the total time needed for construction is O(nB), no more than time polynomial in the size of the input instance of the 3-partition problem.

Next, we show that every feasible solution s″ to the reduced instance of the problem is such that (i) , (ii) s″ contains exactly 3m − 1 base Ts, and (iii) d_{
H
} (s, s″) ≥ 2m. For each compomer , there exists at least one cleavage fragment in s″ that is obtained with respect to the cut base T. Since all the integers a_{
i
}are distinct, all such cleavage fragments shall be pairwise non-overlapping. Thus, the string s′′ contains at least base Gs and at least n − 1 = 3m - 1 base Ts. On the other hand, since |s| = mB + 3m - 1, the string s″ hence consists of exactly mB + 3m− 1 bases. Therefore, we can deduce that s″ contains exactly 3m − 1 base Ts and further that cannot have any other compomer than those in C_{T}. By construction, we also know that the string s contains exactly m − 1 base Ts, which hence implies that d_{
H
}(s, s″) ≥ 2m.

Now, we are going to show that there exists a valid partition for the input instance of the 3-partition problem if and only if there exists an optimal solution s^{
′
} for the reduced instance of the problem such that d_{
H
}(s, s') = 2m.

Suppose that can be partitioned into m subsets such that, for each subset , its size is three and its integer elements adds up to exactly B, that is, and . Then, we use the following procedure to find the string s':

1.

;

2.

fori = 1 to m

3.

forj = 1 to 3

4.

; // append the string to s'

5.

end

6.

end

7.

7. s':= s'[1, |s'| − 1]; // remove the last base T

As one can easily check, the resulting string s' is such that |s'| = mB + 3m − 1, , and . Therefore, s' is a feasible solution to the reduced instance of the problem. On the other hand, since , we can deduce that s'[k] = s[k] if s'[k] = G or s[k] = T; otherwise, s^{
′
}[k] ≠ s[k], ∀k ∈ [1, mB + 3m - 1]. Therefore, d_{
H
}(s, s') =|[k : s'[k] ≠ s[k]}| = |s| − |{k : s'[k] = s[k]}| = mB + 3m − 1 − |{k : s'[k] = G}| − |{k : s[k] = T}| = mB + 3m − 1 − mB − m + 1 = 2m. It hence follows that s′ is indeed an optimal solution to the reduced instance of the problem.

Conversely, suppose that the string s' is an optimal solution to the reduced instance of the problem such that d_{
H
}(s, s') = 2m. Then, we use the following procedure to find a partition of A:

1.

s := s · T; s':= s' · T;

2.

i := 1; j := 1;

3.

4.

fork = 1 to mB + 3m

5.

ifs'[k] = T

6.

7.

j + +;

8.

ifs[k] = T

9.

i + +; j := 1;

10.

11.

end

12.

13.

else

14.

15.

end

16.

end

It follows from the earlier discussions that and also that s' contains exactly 3m − 1 base Ts. Furthermore, since d_{
H
}(s, s') = 2m, we can deduce that s'[k] = s[k] if s[k] = T, ∀k ∈ [1, mB + 3m − 1]. Notice that s[k] = T if and only if k can be written as a multiple of (B + 3), that is, k = i(B + 3) ∈ [1, mB + 3m − 1], ∀i. Therefore, s'[k] = T if k = i(B + 3) ∈ [1, mB + 3m − 1], ∀i, which subsequently implies that , for each i ∈ [1, m]. Note that s[(i − 1)(B + 3) + 1, i(B + 3) − 1] is a substring of s that consists of (B + 2) base Gs; it is located either strictly between two consecutive base Ts or strictly between one base T and one end of the string s. Since C_{T}(s^{
′
}[(i − 1)(B + 3) + 1, i(B + 3) − 1]) ⊆ C_{T}(s'), we can let such that . Since , we can deduce that j = 3; hence . Let, for all i ∈ [1, m]. Then, we can see that is a partition of such that the sum of integers in each subset is equal to B.

Extensions to edit distance

Naturally we may extend our previous problem formulations to the edit distance (i.e., Levenshtein distance). The resulting two new problems are formally defined as follows.

Definition 15 (The problem)
Given a string s and a collection of compomer spectra, find a string s' such that,for all ×∈ Σ and d_{
E
} (s, s') is minimized.

Definition 16 (Theproblem)Given a string s and a collection of compomer spectra,find a string s' such that,for alland d_{
E
} (s, s') is minimized.

These extensions make it possible to detect not only base substitutions but also base insertions and deletions. Hence, they would permit the mutation discovery in DNA sequences (see [1]). In the Additional file 1, we show that both and are theoretically NP-hard, together with an exact dynamic programming algorithm for solving the problem.

Conclusions

To exploit the full potential of the SNP discovery approach using base-specific cleavage and mass spectrometry, in this paper we have studied two new combinatorial optimization problems, called and , respectively. We believe that any efficient solution to either problem could offer a more seamless integration of information in four complementary base-specific reactions than previously done in [1, 2], thereby improving the capability of the underlying biotechnology (i.e., base-specific cleavage and mass spectrometry) for sensitive and accurate SNP discovery.

Although we cannot change the inherent complexity of our proposed dynamic programming algorithm for the problem, we believe that by improving and optimizing its implementation, the compute runtime can be significantly reduced to the extent suitable for practical use. On the other hand, the NP-hardness result indicates that in the most general situation, solving the problem exactly in polynomial time is impossible unless P = NP. In more realistic situations where only a very few SNPs (e.g., two or three SNPs) occur in a target sample sequence, however, the problem can be quite easily tackled, e.g., using an exhaustive search approach. In the future work, we shall try to prove that the problem is NP-hard and develop an efficient heuristic algorithm for the problem for practical use.

Declarations

Acknowledgements

We would like to thank Yuguang Mu and Kai Tang for introducing us the problem of SNP discovery using base-specific cleavage and mass spectrometry. X.C.'s research was supported by the Singapore National Medical Research Council grant (CBRG11nov091) and a College of Science Collaborative Research Award at NTU. Q.W.'s research was supported by National Science Foundation for Young Scientists of China (61103066). L.Z.'s research was supported by the Singapore MOE AcRF Tier 2 grant (R-146-000-134-112).

This article has been published as part of BMC Systems Biology Volume 6 Supplement 2, 2012: Proceedings of the 23rd International Conference on Genome Informatics (GIW 2012). The full contents of the supplement are available online at http://www.biomedcentral.com/bmcsystbiol/supplements/6/S2.

Authors’ Affiliations

(1)

School of Physical and Mathematical Sciences, Nanyang Technological University

(2)

The Key Laboratory of Embedded System and Service Computing, Ministry of Education, Tongji University

(3)

Department of Mathematics, National University of Singapore

References

Bocker S: SNP and mutation discovery using base-specific cleavage and MALDI-TOF mass spectrometry.Bioinformatics 2003,19(Suppl 1):i44–53.PubMedView Article

Krebs S, Medugorac I, Seichter D, Forster M: RNaseCut: a MALDI mass spectrometry-based method for SNP discovery.Nucleic Acids Research 2003.,31(7):

Stanssens P, Zabeau M, Meersseman G, Remes G, Gansemans Y, Storm N, Hartmer R, Honisch C, Rodi CP, Bocker S, van den Boom D: High-throughput MALDI-TOF discovery of genomic sequence polymorphisms.Genome Research 2004, 14:126–133.PubMedView Article

Hartmer R, Storm N, Bocker S, Rodi CP, Hillenkamp F, Jurinke C, van den Boom D: RNase T1 mediated base-specific cleavage and MALDI-TOF MS for high-throughput comparative sequence analysis.Nucleic Acids Research 2003.,31(9):

Honisch C, Raghunathan A, Cantor CR, Palsson BO, van den Boom D: High-throughput mutation detection underlying adaptive evolution of Escherichia coli-K12.Genome Research 2004,14(12):2495–2502.PubMedView Article

Garey MR, Johnson DS: Complexity results for multiprocessor scheduling under resource constraints.Siam Journal on Computing 1975, 4:397–411.View Article

Hulett H, Will TG, Woeginger GJ: Multigraph realizations of degree sequences: Maximization is easy, minimization is hard.Operations Research Letters 2008,36(5):594–596.View Article

Bocker S: Sequencing from compomers: Using mass spectrometry for DNA de novo sequencing of 200+ nt.Journal of Computational Biology 2004,11(6):1110–1134.PubMedView Article

Pevzner PA, Tang HX, Waterman MS: An Eulerian path approach to DNA fragment assembly.Proceedings of the National Academy of Sciences of the United States of America 2001,98(17):9748–9753.PubMedView Article

This article is published under license to BioMed Central Ltd. This is an open access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/2.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.