Open Access

The difficulty of protein structure alignment under the RMSD

Algorithms for Molecular Biology20138:1

DOI: 10.1186/1748-7188-8-1

Received: 8 December 2011

Accepted: 17 December 2012

Published: 4 January 2013

Abstract

Background

Protein structure alignment is often modeled as the largest common point set (LCP) problem based on the Root Mean Square Deviation (RMSD), a measure commonly used to evaluate structural similarity. In the problem, each residue is represented by the coordinate of the Cα atom, and a structure is modeled as a sequence of 3D points. Out of two such sequences, one is to find two equal-sized subsequences of the maximum length, and a bijection between the points of the subsequences which gives an RMSD within a given threshold. The problem is considered to be difficult in terms of time complexity, but the reasons for its difficulty is not well-understood. Improving this time complexity is considered important in protein structure prediction and structural comparison, where the task of comparing very numerous structures is commonly encountered.

Results

To study why the LCP problem is difficult, we define a natural variant of the problem, called the minimum aligned distance (MAD). In the MAD problem, the length of the subsequences to obtain is specified in the input; and instead of fulfilling a threshold, the RMSD between the points of the two subsequences is to be minimized. Our results show that the difficulty of the two problems does not lie solely in the combinatorial complexity of finding the optimal subsequences, or in the task of superimposing the structures. By placing a limit on the distance between consecutive points, and assuming that the points are specified as integral values, we show that both problems are equally difficult, in the sense that they are reducible to each other. In this case, both problems can be exactly solved in polynomial time, although the time complexity remains high.

Conclusions

We showed insights and techniques which we hope will lead to practical algorithms for the LCP problem for protein structures. The study identified two important factors in the problem’s complexity: (1) The lack of a limit in the distance between the consecutive points of a structure; (2) The arbitrariness of the precision allowed in the input values. Both issues are of little practical concern for the purpose of protein structure alignment. When these factors are removed, the LCP problem is as hard as that of minimizing the RMSD (MAD problem), and can be solved exactly in polynomial time.

Keywords

Protein Structure Alignment RMSD LCP

Background

A common approach to understand the properties of a protein is to compare it to other proteins. Proteins that are similar, in terms of either their amino acid sequences or 3-dimensional structures, often share similar functions, or are related evolutionarily. The latter, structural comparison, is particularly interesting since protein structures are known to be more evolutionarily conserved than the biological sequences which encode them. Furthermore, proteins of similar structures may have similar functionality, even when their sequences differ [1].

Structural comparison is typically a problem of aligning two sets of 3-dimensional coordinates. (In most of the known structural alignment problems, each point is the 3D coordinates of the Cα atom, one per residue. Hence, a structure can be modeled for structural alignment purpose as a sequence of 3D points.) The alignment usually involves a rigid transformation to superimpose the two sequences of points, and a mapping which specifies the matched points. The parameters to optimize in the alignment may differ in different situations, because it is not easy to single out a set of parameters that best captures the similarity between two given structures [2]. In many situations, the alignment needs not match between every point in the two sequences. At present, there is a consensus among molecular biologists in the use of the following two parameters [24]:
  1. 1.

    the number of residues (points) or percentage of total residues (points) matched in the alignment.

     
  2. 2.

    the root mean square deviation (RMSD) of the matched residues (points).

     

In general, the RMSD need not be minimized. It suffices that it is within a reasonable threshold. Hence, a good alignment is customarily taken to be one which maximizes the number of residue matches, within a given RMSD threshold. Many structural alignment methods are based on this principle. The computational complexity of finding an optimal solution to the problem is not well understood. Shibuya et al. formulated a restricted version of the problem, and showed the problem to NP-hard when the dimensionality is arbitrary. It is open whether their problem is NP-hard in 3-dimension [5]. Other problems related to structural comparison based on the RMSD have been found to be difficult. For example, the problem of finding a substructure from multiple 3-dimensional structures which minimizes the total RMSD, is NP-hard [6].

For the variants of the alignment problem that are not based on the RMSD, we have the following results. When the objective is to maximize the number of point matches which are no more than a threshold distance apart, the problem is solvable in O(n32.5) time, where n is the number of points [7]. The contact map overlap problem, where a graph is created out of each structure, and the problem is one of comparing the two graphs, is NP-hard [8], and remains NP-hard even when we require points that are matchable to be within a threshold distance [9]. These results, together with an early result which shows a related problem called threading to be NP-hard [10], have traditionally led molecular biologists to believe that the structural alignment problem is difficult in general (e.g. [1113]), even though a PTAS exists for the problem under a broad class of distance measures [14]. Heuristic algorithms have also been proposed for many variants of structural alignment problem [1523]. While these methods perform reasonably well in general, they provide no guarantee on the quality of their results.

As noted by Shibuya et al., relatively few theoretical results have been obtained on problems defined over the RMSD, and the general problem of structural alignment under the RMSD remains open [5]. At present, whether the problem is intractable or not is not only of theoretical interests but also of practical concerns, due to advances in protein structure prediction which requires the comparison of very numerous structures. In this paper we show mathematical insights and techniques which we hope will lead to practical algorithms for the problem.

We first show that the difficulty of the problem does not lie solely in the individual components of their requirement. More precisely, then the problem can be solved in polynomial time.
  • if either a mapping that contains the optimal mapping is known (Theorem 3), or

  • if the optimal superposition is known (Lemma 1),

Our study shows that the difficulty of the LCP problem is also very much due to the two factors: (1) the problem allows the input coordinates to be of any arbitrary precision, and (2) it assumes no limit on the distance between two consecutive Cα atoms.

We consider the case where the input coordinates are integral, and the distance between two consecutive points is restricted. The first requirement is practical since in protein structures, coordinates are typically specified to a fixed precision (e.g. three decimal places in protein structures [24]), and can be trivially scaled up to integral values. Similar assumptions are made in Euclidean problems such as the Euclidean TSP [25]. The second requirement likewise does not add any restriction to the problem of protein structure alignment, since there is a natural upper bound (3.8Å) to the distance between two Cα atoms. In this case, the following results hold.
  • Given a polynomial time algorithm for finding a largest alignment of RMSD below a threshold d, one can efficiently compute an alignment of a given size which minimizes the RMSD (Theorem 7). (Since the other direction is easy, this shows that the two problems are of similar difficulty.)

  • The structural alignment problem under the RMSD is solvable exactly in polynomial time (Theorem 10).

Preliminary

Notations and definitions

A protein structure for alignment purpose is modeled as a finite, ordered sequence of three dimensional (3D) points. Hence, a structure of n residues is written as (p1,p2,...,p n ), where each point p i R 3 . https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq1_HTML.gifIn the ‘Results assuming integral coordinates and restricting distance between points’ section, we will further assume each p i to be integral. We write PP iff P is a subsequence of P, and write f:PQ iff f is a mapping which maps points in the sequence P to points in the sequence Q.

Problem statements

We now state our problems. The main problem we consider is the largest common point set (LCP) problem under the RMSD, a well-known problem in protein structure alignment. In the LCP, the objective is to find a mapping of the largest cardinality where the RMSD of the matched points is no more than a given threshold (Table 1).
Table 1

Largest Common Point (LCP) set problem definition under RMSD

 

LCP problem by the RMSD measure

Input:

sequences P = (p1,…,p n ), Q = (q1,…,q m ) and distance

 

threshold θ R https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq2_HTML.gif. Without loss of generality assume m ≥ n.

Output:

(i) subsequences PP, QQ, |P| = |Q|, and

 

(ii) bijection f:PQ, fulfilling the following conditions:

 

(A) RMSD(P,f(P)) ≤ θ,

 

(B) the score l = |P| is maximized.

We do not require the optimal superposition of P and Q in the output, since that can be computed from P, Q, and f in linear time [26]. We refer to f as an alignment. An alignment can be sequential or non-sequential: an alignment is sequential iff for any two points p i 1 https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq3_HTML.gif, p i 2 P https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq4_HTML.gif, where the corresponding f ( p i 1 ) = q j 1 https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq5_HTML.gif and f ( p i 2 ) = q j 2 https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq6_HTML.gif, we have i1i2 iff j1j2. Otherwise the alignment is non-sequential. The LCP problem which requires alignments to be sequential is said to be sequential, otherwise it is non-sequential. We mainly discuss sequential alignment in this paper. The techniques developed can be easily adapted to the non-sequential case. Given two equal-sized sequences P = (p1,…,p n ) and Q, together with a bijection f between Pand Q, the root mean square deviation (RMSD) is defined as
RMSD ( P , Q ) = min t 1 i n | | t ( f ( p i ) ) - p i | | 2 n , https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_Equ1_HTML.gif
(1)

where t is a rigid transformation. The RMSD, with its corresponding transformation t, can be computed in linear time [26].

A natural variant of the LCP problem is to minimize the RMSD instead of maximizing the size of the mapping, as follows. Given an integer , find subsequences of size of the input, such that the RMSD between the points of the subsequences is minimized. We call this problem the minimum aligned distance (MAD) problem (Table 2).
Table 2

Minimum Aligned Distance (MAD) problem definition under RMSD

 

MAD problem by the RMSD measure

Input:

sequences P = (p1,…,p n ), Q = (q1,…,q m ) and I https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq7_HTML.gif.

 

Without loss of generality assume m ≥ n.

Output:

(i) subsequences PP, QQ, |P| = |Q|, and

 

(ii) bijection f:PQ, fulfilling the following conditions:

 

(A) |P| = ,

 

(B) d = RMSD(P,f(p)) is minimized.

Clearly, if the MAD problem is solvable in polynomial time, then the LCP problem is solvable in polynomial time. However, the other direction is unclear. Theorem 7 will show that for P and Q of integral coordinates, if the LCP problem is solvable in polynomial time, then the MAD problem is solvable in polynomial time.

We let P ̂ https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq8_HTML.gif, Q ̂ https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq9_HTML.gif, f ̂ https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq10_HTML.gif, and d opt denote an optimal P, Q, f, l and d, respectively. The optimal rigid transformation for superimposing P ̂ https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq11_HTML.gif and Q ̂ https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq12_HTML.gif is denoted T https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq13_HTML.gif, and can be computed from P ̂ https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq14_HTML.gif, Q ̂ https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq15_HTML.gif and f ̂ https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq16_HTML.gif. The symbol c P max https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq17_HTML.gif denotes the largest value in the coordinates of P, c Q max https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq18_HTML.gif the largest value in the coordinates of Q, and c max = max { c P max , c Q max } https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq19_HTML.gif, and we know that c max  = O(n) for protein structures.

Results for general LCP and MAD

Complexity of the LCP and MAD when the optimal superposition is known

Since two point sequences with a known mapping can be superimposed optimally under the RMSD in linear time [26], it is natural to ask if the difficulty in LCP or MAD lies solely in the combinatorial complexity of finding the optimal subsets, i.e. P ̂ https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq20_HTML.gif and Q ̂ https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq21_HTML.gif. Our results show the contrary: if the optimal superposition T https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq22_HTML.gif is known, both problems can be solved in polynomial time.

We first consider the sequential case. Let dp,q = ||t(p) - q||2 and let M[i,j;k] denote the minimum squared sum cost of k pair matches for the point sets (p1,p2,...,p i ) and (q1,q2,...,q j ). If 1 ≤ k ≤ , 2 ≤ i ≤ m and 2 ≤ j ≤ n, we have a recurrence relation of
M [ i , j ; k ] = max M [ i - 1 , j - 1 ; k - 1 ] + d p i , q j , M [ i , j - 1 ; k ] , M [ i - 1 , j ; k ] https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_Equ2_HTML.gif
(2)

The base case of the recursion is obvious. Dynamic programming can be employed to fill up the respective M[i,j;k] values. After all the values are filled, one can find the maximum k, such that the squared sum is no more than k θ2 for the LCP problem. The MAD problem can be solved similarly.

The non-sequential case can be similarly solved using the maximum-flow minimum-cost problem [27]. The following lemma states these results.

Lemma 1

If an optimal transformation T https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq23_HTML.gif is known, both the LCP problem and the MAD problem can be solved in O(mnℓ) time.

Complexity of the LCP and MAD when the matching between the point sets is known

We next ask if the difficulty in the LCP and MAD could be due to the task of superimposing P and Q in an optimal manner to identify the subsets P ̂ https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq24_HTML.gif and Q ̂ https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq25_HTML.gif. To examine this possibility, we remove the combinatorial task of examining each of the possible mapping between the points, by assuming a bijection F which contains the optimal mapping. (Note that this results in the problem known as model superposition in structural biology.) Again, our results show the resultant LCP and MAD problems to be solvable exactly in polynomial time.

Assume that F is a bijection that maps points in P to points in Q. Let P = ( p 1 , , p l ) https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq26_HTML.gif be the domain of F and Q = ( q 1 , , q l ) https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq27_HTML.gif be the range of F. Without loss of generality assume that F is sequential, and hence F ( p i ) = q i https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq28_HTML.gif.

One can exhaustively evaluate all the subsequences of P for one with the least RMSD. However, since the number of such subsequences is exponential in l, this does not immediately give us a polynomial time solution.

If a rigid transformation T for Q is given, and all the pairs ( p i , q i ) https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq29_HTML.gif, 1 ≤ i ≤ l are sorted according to the value | | T ( p i ) - q i | | https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq30_HTML.gif, the MAD problem is then to choose the first pairs from ( p i , q i ) https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq31_HTML.gif, 1 ≤ i ≤ l, and the LCP problem is to choose the first pairs, such that RMSD ( ( p 1 , ... , p ) , ( q 1 , ... , q ) ) θ https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq32_HTML.gif and  = l or RMSD ( ( p 1 , ... , p , p + 1 ) , ( q 1 , ... , q , q + 1 ) ) > θ https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq33_HTML.gif. This gives us an incentive to obtain a total ordering of | | T ( p i ) - q i | | https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq34_HTML.gif, which will allow us to solve the MAD problem by selecting the first pairs in the ordering. The set of transformations which produce the same total according to | | T ( p i ) - q i | | https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq35_HTML.gif, yield the same result for the MAD problem, and therefore these transformations are equivalent. This enables us to design a discrete version of the problem.

For clarity, we first present an algorithm with only translation.

With translations only

Consider two pairs ( p i , q i ) https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq36_HTML.gif and ( p j , q j ) https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq37_HTML.gif. The transformations T to separate the two types of transformations that | | T 1 ( q i ) - p i | | > | | T 1 ( p j ) - q j | | https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq38_HTML.gif and | | T 2 ( q i ) - p i | | | | T 2 ( p j ) - q j | | https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq39_HTML.gif are the transformations where
| | T ( q i ) - p i | | 2 - | | T ( p j ) - q j | | 2 = 0 . https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_Equ3_HTML.gif
(3)
Let ∙denote dot product. If the transformation is a translation t, we have
| | T ( q i ) - p i | | 2 - | | T ( q j ) - p j | | 2 = | | q i - p i - t | | 2 - | | q j - p j - t | | 2 = v = x , y , z ( v q i - v p i - v t ) 2 - v = x , y , z ( v q j - v p j - v t ) 2 = | | q i - p i | | 2 - | | q j - p j | | 2 - 2 t ( ( q i - p i ) - ( q j - p j ) ) = 0 https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_Equ4_HTML.gif
(4)

Consider the space of all translation vectors in R 3 https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq40_HTML.gif, and consider each vector as a point in this space (not the space that P and Q are in). The values that the variable t in Equation 4 may take form a plane in this translation space. The plane partitions the translation space into two types of translations, T1 and T2 say, where | | T 1 ( q i ) - p i | | > | | T 1 ( p j ) - q j | | https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq41_HTML.gif and | | T 2 ( q i ) - p i | | | | T 2 ( p j ) - q j | | https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq42_HTML.gif. Since there are l pairs, there are O(l) planes, which partition the space into O(l3) cells.

The translations in each cell result in the same ordering of the pairs with respect to | | T ( p i ) - q i | | https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq43_HTML.gif. For each cell, this total order can be obtained in O(l) time from any given total order of its neighbor cells, since the change is O(1). Therefore, the MAD solution can be obtained in amortized time O(l) for each cell, and the LCP solutions thus can be obtained in time O(l2). Hence the total runtime is of O(4) for the MAD problem, and O(5) for the LCP problem of translations, with the given mapping F.

With rigid transformations

The rigid transformations which separate the two relations | | T 1 ( q i ) - p i | | > | | T 1 ( p j ) - q j | | https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq44_HTML.gif and | | T 2 ( q i ) - p i | | | | T 2 ( p j ) - q j | | https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq45_HTML.gif are as in Equation 3.

Suppose the rigid transformations T is composed of a rotation R and a translation t.
| | T ( q i ) - p i | | 2 - | | T ( q j ) - p j | | 2 = | | R ( q i ) - p i - t | | 2 - | | R ( q j ) - p j - t | | 2 = | | R ( q i ) - p i | | 2 - | | R ( q j ) - p j | | 2 - 2 t [ ( R ( q i ) - p i ) - ( R ( q j ) - p j ) ] https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_Equ5_HTML.gif
(5)

A rotation matrix contains three variables, which is specified using three angles, say α1, α2, α3, each from -Π to Π. Let r i  = cos α i , s i  = cos α i , then Equation 5 can be considered as a polynomial of nine variables in degree six. The nine variables are r i , s i and the three variables for translation. In total, there are O(l) such polynomials.

We know the following theorem from the literature.

Theorem 2

[7, 28]Given a set of k polynomials, P = { f 1 , ... , f k } https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq46_HTML.gif, where each polynomial has a maximum degree of s, contains at most r variables, and in addition all the coefficients are rational, then all the sign conditions can be determined by O(k(k/r) r sO(r)) arithmetic operations. A sign condition V is the vector of signs for some point u R k https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq47_HTML.gif; that is, V = (sign(f1(u)),...,sign(f k (u))). Two points u , u R k https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq48_HTML.gifare equivalent if their sign condition vectors are the same.

Each sign vector represents the transformations of the cell it belongs to, and it determines a total order of the pairs. Similar as in the case of translation, with Theorem 2, we have

Theorem 3

Given a bijection F:P → Q, where |P| = l, then the MAD problem can be solved in O(l10) time and the LCP problem can be solved in O(l11) time.

Results assuming integral coordinates and restricting distance between points

One possible contributing factor to the difficulty of the LCP problem could be its flexibility in allowing input coordinates of any arbitrary precision. This is because intuitively, this arbitrariness in the precision introduces the burden of examining the solution space in an unbounded manner. However, such an exhaustive search is not necessary for the purpose of protein structure comparison, since coordinates of protein structures are specified only to three decimal places in the commonly used PDB format.

In this section, we restrict the precision in which the input coordinates may be specified. Without loss of generality, we assume that the input coordinates are given in integers, since numbers of any fixed precision can be trivially scaled up to integral values. This assumption is used to obtain Lemma 5 and Theorem 7.

We also place an upper bound on the distance between consecutive points according to the structure of proteins. As a result, c max is bounded by n, as follows.

Points drawn from protein structures have upper bounds on their diameters because they are connected, and many are globular.
  • For a connected structure, the points are at most O(n) distance apart. That is, c max is of O(n).

  • For a globular structure, the points are at most O(n 1/3) distance apart [14]. That is, c max is of O(n 1/3).

Given a point p, let the x coordinate of p be denoted x p . Similarly, we can define y p and z p . Without loss of generality, we assume that the first point of a protein structure is at the origin. The largest coordinate of a protein is bounded by O(n), and the largest coordinate of a globular protein structure is bounded by O(n1/3); that is
max p P , v = x , y , z | v p | = O ( n ) , if P is a protein structure https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_Equ6_HTML.gif
(6)
max p P , v = x , y , z | v p | = O ( n 1 / 3 ) , if P is a globular protein structure https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_Equ7_HTML.gif
(7)
Our results show that, under these two conditions,
  1. 1.

    the LCP problem is of similar difficulty as the MAD problem, and

     
  2. 2.

    both problems can be solved exactly in polynomial time.

     

Properties of protein structures

Upper and lower bounds of RMSD

We first establish some bounds to the RMSD. The minimum RMSD is zero if T https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq49_HTML.gif brings Q ̂ https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq50_HTML.gif to coincide exactly with P ̂ https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq51_HTML.gif. This case is referred to as the exact matching, which can be easily solved by the method in [29]. However, if we assume the RMSD to be non-zero, then a lower bound and an upper bound for it can be computed.

Let Π be a permutation of {1,...,}. For the sequence X = (x1,…,x n ), let d i , j X https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq52_HTML.gif1 ≤ i,j ≤ n, denote the Euclidean distance between x i and x j . The following results, which are proven in the Appendix, can be obtained.

Lemma 4
1 2 i = 1 / 2 | d Π ( i ) , Π ( i + / 2 P ̂ ) - d Π ( i ) , Π ( i + / 2 ) Q ̂ | 2 RMSD ( P ̂ , Q ̂ ) . https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_Equa_HTML.gif
Lemma 5 (Lower bound)

If RMSD ( P ̂ , Q ̂ ) 0 https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq53_HTML.gif, then RMSD ( P ̂ , Q ̂ ) 12 c max 2 - 12 c max 2 - 1 2 https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq54_HTML.gif.

Lemma 6 (Upper bound)

RMSD ( P ̂ , Q ̂ ) 4 3 c max https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq55_HTML.gif.

Using an algorithm for the LCP to solve the MAD problem

Suppose there is a polynomial time algorithm for solving the LCP problem. To use it to solve the MAD problem, we assume that d opt  [l,u], for some real l and u, l ≤ u. We use a binary search strategy in the interval [l,u], as shown in Table 3, to search for the minimum value such that the LCP solution size is . However, the search will not terminate if an arbitrary accuracy of the d opt value is required. We prove below that the accuracy of d opt can be defined by polynomially many bits. Given two threshold t1 and t2, assume that we obtain two different LCP solutions, and the RMSD values of the two solutions are θ1 and θ2, where θ1 > θ2. Similar to the arguments in Lemma 5, the difference between θ1 and θ2 is at least 12 c max 2 - 12 c max 2 - 1 2 https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq56_HTML.gif. Therefore if two consecutive binary search operators have the difference of the threshold values below 12 c max 2 - 12 c max 2 - 1 2 https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq57_HTML.gif, the search can be terminated. The values of l and u are the same as in the previous subsection. Hence,
Table 3

Employing an algorithm for the LCP problem to solve the MAD problem

Input:

sequences P = (p1,…,p n ), Q = (q1,…,q m ) and I https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq58_HTML.gif.

 

Without loss of generality assume m ≥ n.

Output:

(i) subsequences PP, QQ, |P| = |Q|, and

 

(ii) mapping f:PQ, fulfilling the following conditions:

 

(A) |P| = ,

 

(B) d = RMSD(P,f(p)) is minimized.

1.

l ← 0, u ←  c max

2.

m ← 1/2(l + u)

3.

Call LCP to solve the instance (P,Q,m).

4.

If the LCP solution has size no less than

 

u ← m

 

else

 

l ← m

5.

If u - l 12 c max 2 - 12 c max 2 - 1 2 https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq59_HTML.gif,

 

Output the most recent LCP solution of size no less than .

 

Otherwise, repeat Steps 2-5.

Theorem 7

Solving the MAD problem is equivalent to solving O(log c max ) instances of the LCP problem.

Since the reduction from the LCP problem to the MAD problem is obvious, we conclude that the two problems are of similar difficulty.

Polynomial time algorithm

We now show that under the two conditions, the LCP and MAD problem can be solved in polynomial time.

As shown in the ‘Complexity of the LCP and MAD when the optimal superposition is known’ section, when the optimal superposition is known, there are polynomial time algorithms for LCP and MAD. We consider an enumeration of all the possible superpositions. Under the two conditions, we claim that there are at most polynomially many such superpositions.

First, if we know P ̂ https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq60_HTML.gif and Q ̂ https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq61_HTML.gif, then optimal superposition can be computed in the following two steps:
  1. 1.

    Translate P ̂ https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq62_HTML.gif and Q ̂ https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq63_HTML.gif such that their centroids are at the origin.

     
  2. 2.

    Then, rotate Q ̂ https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq64_HTML.gif to find the superposition with the minimum distance [26].

     

Denote the translations to obtain the optimal solution for P and Q as t P and t Q , respectively, and denote the optimal rotation by R ̂ https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq65_HTML.gif.

We now show that one needs to examine only polynomially many translations and rotation combinations to discover the values for t P , t Q , and R ̂ https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq66_HTML.gif. These numbers can be effectively bounded by n when properties of protein structures are taken into account. We first describe these properties.

Number of translations

The centroid of P ̂ https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq67_HTML.gif is p P ̂ p https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq68_HTML.gif. To bring P ̂ https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq69_HTML.gif to origin, the translation is - p P ̂ p https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq70_HTML.gif. Clearly, all the three coordinates of - p P ̂ p https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq71_HTML.gif are integers since all the coordinates of the points in pP are integers. The value of x-coordinate of - p P ̂ p https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq72_HTML.gif is bounded by - p P ̂ x p p P ̂ c P max c max https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq73_HTML.gif. Similarly, all the three coordinates of the translation - p P ̂ p https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq74_HTML.gif are bounded within the interval [-c max ,c max ]. To obtain an optimal MAD solution, the translation on P ̂ https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq75_HTML.gif must be in the form of I https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq76_HTML.gif, where I is an integer. Since it is possible to examine all the possible values for I, we have the following result.

Lemma 8

t P ,t Q  {I/| -  c max  ≤ I ≤  c max }3.

Number of rotations

With the centroids of P ̂ https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq77_HTML.gif and Q ̂ https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq78_HTML.gif translated to the origin, we proceed to identify the rotation in our algorithm. Let X P denote the vector x p 1 , ... , x p https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq79_HTML.gif for structure P. Similarly we define Y P and Z P .

Let P ̂ t = ( p 1 - t , ... , p - t ) https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq80_HTML.gif and Q ̂ t = ( q 1 - t , ... , q - t ) https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq81_HTML.gif, p i P ̂ https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq82_HTML.gif, q i Q ̂ https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq83_HTML.gif.

Given P ̂ https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq84_HTML.gif and Q ̂ https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq85_HTML.gif, to compute the rotation R ̂ https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq86_HTML.gif, the first step is to create the 3 × 3 matrix, which is (from [26])
M = X P ̂ t P X Q ̂ t Q X P ̂ t P Y Q ̂ t Q X P ̂ t P Z Q ̂ t Q Y P ̂ t P X Q ̂ t Q Y P ̂ t P Y Q ̂ t Q Y P ̂ t P Z Q ̂ t Q Z P ̂ t P X Q ̂ t Q Z P ̂ t P Y Q ̂ t Q Z P ̂ t P Z Q ̂ t Q https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_Equ8_HTML.gif
(8)

Each above matrix is decomposed by the singular value decomposition, and a rotation matrix is produced hereafter.

We know that the coordinate of each point in the protein is within the interval [-c max ,c max ]. This implies that for U = X,Y,Z and V = X,Y,Z,
U P ̂ t P V Q ̂ t Q = k = 1 ( p i , k - t P ) ( q j , k - t Q ) k = 1 ( 2 c max ) 2 4 c max 2 . https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_Equb_HTML.gif

Also, it is clear that U P ̂ t P V Q ̂ t Q https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq87_HTML.gif is in the form of I/2, where I is an integer. The matrix in Equation 8 has nine elements; we denote eM if e is one of these elements. The following lemma follows.

Lemma 9

For each element eM in Equation 8, e { I / 2 | - 4 3 c max 2 I 4 3 c max 2 } https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq88_HTML.gif.

Polynomial time algorithm

To compute the optimal MAD solution, we first enumerate all the possible translations and rotations. A solution is computed for each translation and rotation combination according to Lemma 1. An optimal solution can be chosen from these computed solutions (Table 4).
Table 4

A polynomial time algorithm for the MAD problem

Input:

sequences P = (p1,…,p n ), Q = (q1,…,q m ) and I https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq89_HTML.gif.

 

Without loss of generality assume m ≥ n.

Output:

(i) subsets PP, QQ, |P| = |Q|, and

 

(ii) mapping f:P ′ Q, fulfilling the following conditions:

 

(A) |P| = ,

 

(B) d = RMSD(P,f(p)) is minimized.

1.

For each translation t {I/| -  c max  ≤ I ≤  c max }3,

 

For each 3 × 3 matrix M, where eM, e {I/2|-,

 

{ 4 3 c max 2 I 4 3 c max 2 } https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq90_HTML.gif

 

Compute rotation matrix R from M.

 

Q RQ - t https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq91_HTML.gif.

 

Apply an algorithm for the case where the superposition

 

is known to P and Q https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq92_HTML.gif (as discussed in the ‘Complexity Of

 

The LCP And MAD When The Optimal Superposition Is

 

Known’ section), and denote the solution MAD(P, Q https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq93_HTML.gif).

2.

Output the MAD(P, Q https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq94_HTML.gif) of the smallest RMSD as the solution.

According to Lemma 8, the optimal translation t P and t Q must be within {I/| -  c max  ≤ I ≤  c max }3. To find the optimal rotation matrix, it suffices that we try all the possible values for each entry in Equation 8. Since there are 27 c max 18 https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq95_HTML.gif matrices, the number of total transformations to examine is bounded by O ( 33 c max 34 ) https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq96_HTML.gif. It takes time O(mnℓ) to identify the MAD solution for each transformation. An LCP solution can be obtained by iterating from 1 to min{m,n} for the MAD problem.

The running time consists of the productions of three parts: the number of possible translations, the number of possible rotation matrix, and the running time for given a rotation matrix and a translation combination (that is, the running time when then transformation is known). These numbers are bounded by c max , which is bounded by m when we consider the properties of protein structures. Likewise, c max is polynomial with respect to the input size if coded in unary.

Theorem 10

The MAD problem can be solved in O(34m25n) time for protein structures, and in O(34m9n) time for globular protein structures. The LCP problem can be solved in O(35m25n) time for protein structures, and in O(35m9n) time for globular protein structures. Both the MAD and LCP problems are pseudo-polynomially solvable for general point sets.

Conclusions

We studied the LCP problem under the RMSD in this paper. As it turns out, the difficulty of the problem does not lie in its combinatoric aspect or its structural superposition aspect alone. That is, if the problem is hard, then it must be a consequence of both aspects. Our results show that if one is allowed to compromise on one of the aspects, then the problem is solvable exactly in polynomial time. Regrettably, we do not see how the optimal solution can be obtained in both cases.

On the other hand, we showed an encouraging result: There is a polynomial time algorithm which solves the problem optimally, if one restricts the input coordinates in the problem to be integral, and places a limit on the distance between consecutive points. These requirements do not pose any restriction to typical uses in the analysis of protein structures, since protein structures are specified only to a fixed precision in practice, and there is an upper bound to the distance between protein residues.

One problem is that our proposed polynomial time algorithm remains high in time complexity. We hope that the present work will provide the foundation for future efforts to obtain algorithms with lower runtime complexities.

Appendix

In this Appendix, we include the proofs of the results in the paper which have been omitted to enhance readability.

Lemma 4

1 2 i = 1 / 2 | d Π ( i ) , Π ( i + / 2 ) P ̂ - d Π ( i ) , Π ( i + / 2 ) Q ̂ | 2 RMSD ( P ̂ , Q ̂ ) . https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_Equc_HTML.gif

Proof

Without loss of generality, we just show that

1 2 i = 1 / 2 | d i , i + / 2 P ̂ - d i , i + / 2 Q ̂ | 2 RMSD ( P ̂ , Q ̂ ) https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq97_HTML.gif.

Let

r i = | | T ( q i ) - p i | | 2 + | | T ( q i + / 2 ) - p i + / 2 | | 2 https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq98_HTML.gif,

u i =〈p i ,pi + /2〉, and

v i =〈q i ,qi + /2〉, where 1≤i/2.

First, we prove that r i  ≥ |u i  - v i |2 / 2, for 1 ≤ i ≤ /2. We first superimpose u i and v i to optimize the squared sum; that is, to find transformation T such that ||T(q i )-p i ||2 + ||T(qi + /2)-pi + /2||2 is minimized. The centroids have to coincide to minimize the squared distance. Assume the centroids are at the origin and that the angle between ( o , p i ) https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq99_HTML.gif and ( o , q i ) https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq100_HTML.gif is α, where o is the origin, then by trigonometry
| | T ( q i ) - p i | | 2 + | | T ( q i + / 2 ) - p i + / 2 | | 2 = 2 [ ( 1 / 2 × | | u i | | ) 2 + ( 1 / 2 × | | v i | | ) 2 - 2 × 1 / 2 | | u i | | × 1 / 2 | | v i | | × cos α ] ( | | u i | | - | | v i | | ) 2 2 https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_Equd_HTML.gif
r i is the squared distance under transformation T https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq101_HTML.gif, which may not be optimal for superimposing u i and v i . Therefore,
r i ( | | u i | | - | | v i | | ) 2 2 https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_Eque_HTML.gif
Putting things together, we have
RMSD ( P ̂ , Q ̂ ) r 1 + + r / 2 ( u 1 - v 1 ) 2 + + ( u / 2 - v / 2 ) 2 2 1 2 i = 1 / 2 | d i , i + / 2 P ̂ - d i , i + / 2 Q ̂ | 2 https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_Equf_HTML.gif

Lemma 5

If RMSD ( P ̂ , Q ̂ ) 0 https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq102_HTML.gif, then RMSD ( P ̂ , Q ̂ ) 12 c max 2 - 12 c max 2 - 1 2 https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq103_HTML.gif.

Proof

If RMSD ( P ̂ , Q ̂ ) https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq104_HTML.gif is non-zero, then there is at least a pair of indices i and j, such that | | d i , j P ̂ https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq105_HTML.gif- d i , j Q ̂ | | > 0 https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq106_HTML.gif. According to Lemma 4,
RMSD ( P ̂ , Q ̂ ) 1 2 | d i , j P ̂ - d i , j Q ̂ | 2 = | d i , j P ̂ - d i , j Q ̂ | 2 > = 12 c max 2 - 12 c max 2 - 1 2 . https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_Equg_HTML.gif

                           □

Lemma 6

RMSD ( P ̂ , Q ̂ ) 4 3 c max https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_IEq107_HTML.gif.

Proof

Denote the furthest point to the origin in P as p max , and the furthest point to the origin in Q as q max . Then,
× RMS D 2 ( P ̂ , Q ̂ ) = i = 1 | | T ( q i ) - p i | | 2 i = 1 ( | | q i - p i | | ) 2 i = 1 max { | | q max - p max | | 2 , | | q max + p max | | 2 } max { | | q max - p max | | 2 , | | q max + p max | | 2 } ( 2 ( c max + c max ) 2 + ( c max + c max ) 2 + ( c max + c max ) 2 ) 2 = 48 c max 2 https://static-content.springer.com/image/art%3A10.1186%2F1748-7188-8-1/MediaObjects/13015_2011_Article_175_Equh_HTML.gif

Abbreviations

LCP: 

Largest Common Point set

RMSD: 

Root Mean Square Deviation.

Declarations

Acknowledgements

This work is supported by the CityU SRG 7002731. The author thanks the useful discussions with Prof. Richard M. Karp

Authors’ Affiliations

(1)
Department of Computer Science, City University of Hong Kong

References

  1. Perutz MF, Rossmann MG, Cullis AF, Muirhead H, Will G: North ACT: Structure of myoglobin: a three-dimensional Fourier synthesis at 5.5 Angstrom resolution. Nature. 1960, 185: 416-422.View ArticlePubMed
  2. R Kolodny PK, Levitt M: Comprehensive evaluation of protein structure alignment methods: scoring by geometric measures. J Comput Biol. 2005, 346 (4): 1173-1188.
  3. Sippl MJ: On distance and similarity in fold space. Bioinformatics. 2008, 24 (6): 872-873.View ArticlePubMed
  4. , : Structural alignment of proteins by a novel TOPOFIT method, as a superimposition of common volumes at a topomax point. Protein Sci. 2004, 13 (7): 1865-1874.View Article
  5. Shibuya T, Jansso J, Sadakane K: Linear-time protein 3-D structure searching with insertions and deletions. Algorithms Mol Biol. 2010, 5 (7): 1-8.
  6. Bu D, Li M, Li SC, Qian J, Xu J: Finding compact structural motifs. Theor Comput Sci. 2009, 410: 2834-2839. 10.1016/j.tcs.2009.03.023.View Article
  7. Ambühl C, Chakraborty S, Gärtner B: Computing Largest Common Point Sets under Approximate Congruence. ESA ’00: Proceedings of the 8th Annual European Symposium on Algorithms, Volume 1876 of Lecture Notes in Computer Science. 2000, 52-63. Saarbrücken, Germany: Springer-Verlag,
  8. Goldman D, Papadimitriou CH, Istrail S: Algorithmic Aspects of Protein Structure Similarity. 1999, New York City, NY, USA: IEEE Computer Society,View Article
  9. Li SC, Ng YK: On protein structure alignment under distance constraint. 20th International Symposium on Algorithms and Computation, ISAAC 2009, Proceeedings, Volume 5878 of Lecture Notes in Computer Science. 2009, 65-76. Honolulu, HI, USA: Springer,
  10. Lathrop RH: The Protein Threading Problem With Sequence Amino Acid Interaction Preferences Is NP-Complete. Protein Eng. 1995, 7: 1059-1068.View Article
  11. Godzik A: The structural alignment between two proteins: is there a unique answer?. Protein Sci. 1996, 5 (7): 1325-1338.PubMed CentralView ArticlePubMed
  12. Eidhammer I, Jonassen I, Taylor WR: Structure Comparison and Structure Patterns. J Comput Biol. 2000, 7 (5): 685-716.View ArticlePubMed
  13. Zhao Z, Fu B, Alanis FJ, Summa CM: Feedback algorithm and web-server for protein structure alignment. J Comput Biol. 2008, 15 (5): 505-524.View ArticlePubMed
  14. Kolodny R, Linial N: Approximate Protein Structural Alignment in Polynomial Time. Proc Natl Acad Sci. 2004, 101: 12201-12206.PubMed CentralView ArticlePubMed
  15. Akutsu T, Tashimo H: Protein structure comparison using representation by line segment sequences. Proc. Pacific Symposium on Biocomputing ’96. 1996, 25-40. Hawaii, USA: World Scientific Press,s
  16. Alexandrov NN: SARFing the PDB. Protein Eng. 1996, 9 (9): 727-732.View ArticlePubMed
  17. Caprara A, Lancia G: Structural alignment of large-size proteins via lagrangian relaxation. RECOMB ’02: Proceedings of The Sixth Annual International Conference on Computational Biology. 2002, 100-108. New York, NY, USA: ACM,View Article
  18. Comin M, Guerra C, Zanotti G: PROuST: A Comparison Method of Three-Dimensional Structure of Proteins using Indexing Techniques. J Comp Biol. 2004, 11: 1061-1072. 10.1089/cmb.2004.11.1061.View Article
  19. Gerstein M, Levitt M: Using Iterative Dynamic Programming to Obtain Accurate Pairwise and Multiple Alignments of Protein Structures. Proceedings of the Fourth International Conference on Intelligent Systems for Molecular Biology. 1996, 59-67. St. Louis, MO, USA: AAAI Press,
  20. Gibrat JF, Madej T, Bryant SH: Surprising similarities in structure comparison. Curr Opin Struct Biol. 1996, 6 (3): 377-385.View ArticlePubMed
  21. Holm L, Sander C: Protein structure comparison by alignment of distance matrices. J Mol Biol. 1993, 233: 123-138.View ArticlePubMed
  22. Lancia G, Carr R, Walenz B, Istrail S: 101 optimal PDB structure alignments: a branch-and-cut algorithm for the maximum contact map overlap problem. RECOMB ’01: Proceedings of The Fifth Annual International Conference on Computational Biology. New York, NY, USA: ACM 2001, 193-202..View Article
  23. Singh AP, Brutlag DL: Hierarchical Protein Structure Superposition Using Both Secondary Structure and Atomic Representations. Proceedings of the 5th International Conference on Intelligent Systems for Molecular Biology. 1997, 284-293. Halkidiki, Greece: AAAI Press,
  24. Berman HM, Westbrook J, Feng Z, Gilliland G, Bhat TN, Weissig H, Shindyalov IN, Bourne PE: The protein data bank. Nucl Acids Res. 2000, 28: 235-242. [http://​nar.​oxfordjournals.​org/​cgi/​content/​abstract/​28/​1/​235], []PubMed CentralView ArticlePubMed
  25. Papadimitriou C: The Euclidean Traveling Salesman Problem is NP-Complete. Theoretial Compututer Sci. 1977, 4 (3): 237-244. 10.1016/0304-3975(77)90012-3.View Article
  26. Arun KS, Huang TS, Blostein SD: Least-squares fitting of two 3-D point sets. IEEE Trans Pattern Anal Mach Intell. 1987, 9 (5): 698-700.View ArticlePubMed
  27. Ahuja RK, Magnanti TL, Orlin JB: Network Flows: Theory, Algorithms, and Applications. 1993, Englewood Cliffs, NJ: Prentice Hall,
  28. A New Algorithm to Find a Point in Every Cell Defined by a Family of Polynomials. Edited by: Caviness B, Johnson J. Springer Vienna: Springer-Verlag 1998.
  29. de Rezende PJ, Lee DT: Point Set Pattern Matching in d-Dimensions. Algorithmica. 1995, 13 (4): 387-404. 10.1007/BF01293487.View Article

Copyright

© Li; licensee BioMed Central Ltd. 2013

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.