Pattern Matching in RNA Structures Kejie Li, Reazur Rahman, Aditi Gupta, Prasad Siddavatam, and Michael Gribskov* Department of Biological Sciences, Purdue University, Lilly Hall of Life Sciences, 915 W. State Street, West Lafayette, IN 47907-2054, USA
[email protected]
Abstract. RNA plays key roles in many biological processes, and its function depends largely on its three-dimensional structure. We describe a comparative approach to learning biologically important RNA structures, including those that are not the predicted minimum free energy (MFE) structure. Our approach identifies the greatest conserved structure(s) in a set of RNA sequences, even in the presence of sequences that have no conserved features. We convert RNA structures to a graph representation (XIOS RNA graph) that includes pseudoknots, and mutually exclusive structures, thereby simultaneously representing ensembles of RNA structures. By modifying existing algorithms for maximal subgraph isomorphism, we can identify the similar portions of the graphs and integrate this with MFE structure prediction tools to identify biologically relevant near-MFE conserved structures.
1
Introduction
RNA molecules perform a variety of important biological functions in addition to carrying information from the chromosome to the ribosome, or acting as structural scaffolds. Catalytic RNAs play key roles in translation, RNA processing and splicing, and gene regulation [1]. Motifs that are important for RNA function are structural and correspond to base-paired regions of secondary structure, which in turn, provide the scaffold for the three-dimensional fold of the RNA [2, 3]. RNA sequences that have the same structural motifs may have sequences that are impossible to align because they have no detectable sequence similarity. While programs that predict RNA secondary structure have been available since the 1980s, RNA structure prediction is handicapped by both biochemical and computational limitations. Firstly, RNA exists as an ensemble of rapidly interconverting structures. Protein structures (usually) show relatively minor fluctuations from a single minimum free-energy state. The case is much different for RNA where there are usually many structures with similar free-energies; these structures may be distinctly different in terms of base-pairing [4, 5]. Secondly, while we know that pseudoknot *
Corresponding author. Tel.: +1 7654946933; Fax: +1 765-496-1189.
I. Măndoiu, R. Sunderraman, and A. Zelikovsky (Eds.): ISBRA 2008, LNBI 4983, pp. 317–330, 2008. © Springer-Verlag Berlin Heidelberg 2008
318
K. Li et al.
structures are very important in RNA structure and catalytic function [6], it remains difficult to reliably predict pseudoknotted structures. This is due both to our incomplete understanding of the energetics of pseudoknot formation, as well as to the computational time complexity. The most efficient pseudoknot prediction algorithms, e.g., pknotRG, have O(n4) time for certain classes of RNAs[7]), but achieve this by placing significant limitations on which structures can be found. Memory complexity of RNA structure prediction is O(n2), where n is the length of the RNA sequence, and usually ranges from 10,000-100,000 bases for primary RNA transcripts. In biology, functionally important features can often be recognized because they are conserved over evolutionary time. A common approach is to obtain a set of sequences using some biological criterion (such as similarity of regulation), and use pattern recognition methods to identify unusually conserved features. Searching for sequence motifs (approximately common substrings) in this way has been a powerful tool for analysis of DNA and proteins; this approach does not work as effectively with RNA because conserved RNA structures may have no detectable sequence similarity. And while great progress has been made, it remains difficult to accurately predict MFE structures for RNA sequences. To further complicate the picture, RNAs exist as ensembles of structures, in addition to the MFE structure, that are constantly interconverting and fluctuating. The biologically important structures (those that are conserved over evolutionary time) may be present only transiently, or as minor components of this structural ensemble. The problem is further complicated by the fact that biology is messy; one can rarely get completely clean sets of sequence data in which every sequence actually contains the structure of interest. This makes many approaches unfeasible. In addition, in biological systems, conservation is only approximate, no set of structures will exactly match. We are building a system that allows one to find the greatest approximately conserved structure(s) in a set of RNA sequences, in the presence of extraneous sequences that do not share a common structure. This conserved common structure can then be used as the basis for hypotheses about the importance of the structure in the biological functioning of the RNA. These hypotheses can be tested either experimentally or by further computational work. We convert RNA structures to a graph representation that specifically includes pseudoknots and is capable of representing an ensemble of RNA structures in a single graph. Computationally, finding conserved structures corresponds to finding the greatest approximately isomorphous subgraphs in a set of graphs, where each graph represents a single RNA sequence. We use modifications of existing maximal subgraph isomorphism algorithms to identify the similar portions of the graphs, and propose to combine this with constrained MFE structure prediction tools [8], and a database search capability. Graph theoretical approaches have previously been applied to RNA structures [9, 10], but our approach differs significantly. The XIOS approach introduces the ability to represent ensembles of structures, and emphasizes the topology of stems. Our approach is most similar to that of Gan et al., but focuses on stem topologies rather than
Pattern Matching in RNA Structures
319
the topology of loops and bulges [9]. The XIOS approach also allows structural motifs to be exactly matched without using heuristics [10].
2 XIOS RNA Graphs In this section, we describe the graph framework that we have developed to represent ensembles of RNA structural topologies. We introduce the XIOS RNA graph representation for RNAs, and discuss extensions to existing subgraph isomorphism algorithms as they are apply to XIOS RNA graphs.
Fig. 1. XIOS definition. Relationships (edges) are defined as X (exclusive), I (included), O (overlapping), and S (serial). I+ indicates the direction of I edges with respect to the higher numbered vertex and I- indicates the opposite.
2.1
Definition
XIOS RNA graphs represent ensembles of RNA structural topologies. In XIOS graphs, each base-paired stem is represented by a vertex, and the edges connecting the vertices indicate the topological relationship between the stems. Topologically, two stems can be eXclusive (i.e., both cannot simultaneously form because they use the same sequence ranges), Included (i.e., one is nested within the loop of the other), Overlapping (i.e., the stems have a pseudoknot relationship) or Serial (i.e., adjacent, non-overlapping stem and loop structures) (Fig. 1). Each pair of vertices is related by one and only X, I, O or S relationship. 2.2
Training Data
We have developed Perl packages that translate Vienna RNA format [11] and the MFOLD [12] connect format into XIOS graphs. Because the predicted MFE structure is only one structure in a structural ensemble, we enumerate all energetically favorable short stems and label the entire set as X, I, O, and S, as described above. The graph is therefore an image of the entire structural ensemble. Our test datasets are described in Table 1. Highly similar sequences with sequence identity >40% are removed from the dataset to avoid selection bias.
320
K. Li et al.
Table 1. Brief description of RNA datasets. Formats are: A, alignment; C, MFOLD connect; S, sequence; V, Vienna RNA package. Type of RNA microRNA 5S rRNA rRNA RNase P snoRNA snoRNA
Database or Pro- Format Link gram miRNA S http://microrna.sanger.ac.uk/sequences/index.shtml Database S http://biobases.ibch.poznan.pl/5SData/ RDP II A, S http://rdp.cme.msu.edu/index.jsp RNase P Database C http://www.mbio.ncsu.edu/RNaseP/ snoRNABase S http://www-snorna.biotoul.fr/ Plant snoRNA http://bioinf.scri.sari.ac.uk/cgiA, S Database bin/plant_snorna/home snoRNA Human snoRNA http://www.trex.uqam.ca/~snorna/Seqs.html S Database tRNA GtRNAdb V http://lowelab.ucsc.edu/GtRNAdb/ tmRNA tmRNA A, S http://www.indiana.edu/~tmrna/ Noncoding ncRNA Database http://biobases.ibch.poznan.pl/ncRNA/ S RNA All Pseudobase V http://biology.leidenuniv.nl/~batenburg/PKB.html All RNAbase S http://www.rnabase.org/ All Rfam A, S http://www.sanger.ac.uk/Software/Rfam/index.shtml All RNAfold/MFOLD C, V Installed on local server
2.3 DFS Lexicographical Ordering DFS (Depth-First Search) lexicographical ordering was originally developed by Yan et al. [13, 14] in their gSpan algorithm for identifying common chemical structures in chemical datasets. In the chemical structure case, both the vertices (atoms) and edges (bonds: single, double and triple) are labeled, and all edges are undirected. gSpan is a powerful search algorithm that reduces the search space for isomorphous subgraphs using a clever depth first search (DFS) preordered search tree. The traversal order of edges and vertices in the DFS of a graph can be canonically ordered. This is called the DFS tree, or when serialized, the DFS code. Yan et al. proved that graphs with the same DFS code are, by definition isomorphous. Lexicographic rules provide an unambiguous best order to the canonical DFS code [13]. The direct path from the first traversed vertex (root) to the most recently added vertex (right-most vertex) is the right-most path. The extension of DFS graphs by edge growth is restricted to extension from the rightmost path, similarly to the approach of TreeminerV [15]. Graphs are extended in the following order: edges to existing vertices (backward edges), edges to new vertices extending from the right-most vertex, and extension from internal vertices on the right-most path. An intrinsic property of the DFS lexicographical ordering is that it creates a preorder that can be used to efficiently explore the search tree when searching for isomorphous subgraphs. Isomorphic forms of a graph fall in different positions in the search tree, but the canonical DFS representation of a particular isomorph is guaranteed to be found first. Hence, the lexicographically first instance of an isomorph in the search tree is its minimum representation or canonical labeling and other instances can be efficiently pruned. Each edge in the DFS code is described by a 3-tuple, (vi, vj, li,j), where vi and vj are two connected vertices and li,j is the label of the edge. Fig. 3 shows how the canonical
Pattern Matching in RNA Structures
321
Fig. 2. tRNA 3D structure and corresponding XIOS graph representation. I.A. 3-D structure of tRNA (PDB ID, 1EHZ). I.B, the simple three-leaf clover shape of tRNA is shown, where the acceptor stem, D-arm, anticodon-arm, and T-arm are represented by vertices 0, 3, 2 and 5 respectively. Vertex 1 represents an interaction between the D-loop and a region between the D-arm and acceptor-arm, and vertex 4 represents an interaction between the D-loop region and the region between anticodon-arm and T-arm. In the XIOS representation (I.C), vertex 1 is included in the acceptor stem and overlaps with the D-arm, vertex 4 overlaps with the D-arm and the Anticodon arm is included in vertex 4. II a, b, and c show the sequential extension of the DFS graph, and II d shows the minimum DFS tree and corresponding DFS code. At the each stage of graph extension, all the possible extensions are shown in dotted lines. For each edge extension, only the canonical graph (shown by dotted ellipse) is used in the next stage.
labeling can easily be identified using lexicographic rules even though many different DFS codes are possible. There are two additional rules that prune the search space. Firstly, if the initial edge of a minimum DFS code is type e0, then no following edge can have a lexically smaller edge label, and secondly, for any backward edge growth
322
K. Li et al.
to vj, an edge cannot be lexically smaller than any edge that is already connected to vj or vrightmost [13]. Each distinct mapping of vertices to a DFS code is the support for that potential solution. Since many such mappings are possible, each graph may have multiple support for a DFS code. As a simple example, Fig 2 shows the XIOS graph for a tRNA, according to the experimentally determined 3-dimensional structure (PDB ID: 1EHZ).
Fig. 3. Unique three-stem XIOS graphs, including pseudoknots. Fifteen XIOS graphs with three vertices are possible, three of them are not true three-stem topologies (at least one of the stems has only S relationships with other stems); the other four three-stem structures are either redundant or physically impossible.
2.4
Enumeration N-stem structures
Every RNA structure can be represented by a XIOS graph. For n stems, the upper bound on the number of possible structures1, N, can be calculated by Equation (1),
N=
(2n)! 2n ⋅ n!
(1)
For example, there is only one possible one-stem structure, two possible two-stem structures, and 10 possible three-stem structures, but only eight unique structures 1
For the n-stem case, there are 2n half stems. We assign integer labels to each half stem from 1 to 2n-1.By definition, the first half stem is labeled 1, and there are 2n-1 possible half stems that can pair with the first half stem; the third half stem has only one possible label (2 or 3), and there are 2n-3 possible half stems that can pair with this half stem, and so on. The upper boundary of the number of possible n-stem structures is therefore: (2n-1)*(2n-3)*(2n5)*…*5*3*1.
Pattern Matching in RNA Structures
323
(Table 2). Fig. 3 shows the XIOS graphs for the eight unique structures that can be formed from three stems. The other two three-stem structures are either redundant or physically impossible. Table 2. Number of possible RNA topologies for different numbers of stems, N
N 1 2 3 4 5 6 7
Total 1 2 10 78 746 8566 114834
Unique Topologies 1 2 8 49 389 4207 56227
% Unique 100 100 80.00 61.25 52.14 49.11 48.96
3 Greatest Conserved Structures 3.1 Extension of the gSpan Algorithm XIOS graphs have several differences from the chemical structure graphs considered by Yan and Han. XIOS graphs • •
have both directed and undirected edges. I edges are directed because it is highly important whether a stem is nested within or outside another stem. X, O, and S edges are undirected. do not have vertex labels. Because every vertex is simply an anonymous elemental stem, no labels are available.
The use of unlabeled vertices with the gSpan algorithm is fairly straightforward, but results in a decreased ability to rapidly prune the search tree. Directed edges are a little more difficult to accommodate because the direction of the edge depends on the vertex from which one looks. The simplest approach is to label the edge as either I+ or I- from the point of view of the lowest numbered vertex. I+ and I- are treated as lexicographically distinguishable edges. In the original application of gSpan to chemical structures, Yan and Han were interested in identifying frequently occurring chemical substructures. In their case, structures that occur many times in a single graph are equally interesting. The case of RNA differs; motifs that occur in multiple graphs (molecules), rather than many times in a single graph (molecule), are considered more important. In addition, the presence of incorrectly classified sequences, i.e., sequences that have no common structure, means that not all graphs will support the biologically relevant subgraph. For XIOS graphs, therefore, support is calculated as the number of graphs that containing a subgraph, rather than the total count of matching subgraphs.
324
3.2
K. Li et al.
Graph Matching Algorithm (Similar to gSpan2)
begin: For a XIOS graph G with edges eG I. Sort edges in eG by edge type eG ∈ {X,I,O,S} II. For each edge type E 1. Find all lexicographically minimal one edge subgraphs, S, from the given XIOS graphs; 2. For each edge e in S 3. Do Subgraph_mining(G, S, e): i. If the graph is NOT a minimum graph according to DFS lexicographical order, return; ii. Generate all potential children with one edge growth, enew iii. If support for each child is above threshold Recursively call Subgraph_mining with updated edge + list (G, S , enew) 4. Remove all edges of edge type E from G after all descendents have been searched 5. If eG = Ø, break; end. 3.3 Greatest Conserved Structure(s) in a Set of RNAs Many computational approaches use pairwise or multiple DNA or protein sequence alignments to find conserved motifs, but this approach is generally impossible with RNA sequences because of their lack of conserved sequences, and because of the difficulty of obtaining unambiguously correct alignments. However, secondary and higher order structures in RNA are conserved, so matching the topology of two RNA structures with a graph matching approach can identify conserved motifs that cannot be seen in the sequences. The pre-ordered DFS search approach of gSpan provides an effective approach to this problem. The time complexity for the worst case of this algorithm is suggested to be O(kn) [13, 14], where k is the maximum number of subgraph isomorphisms existing between the two graphs and n is the size of the greatest common match. Fig. 4 shows the application of the XIOS graph approach to the structure of S. cerevisiae and H. sapiens RNase P. 3.4
Characteristics of Biological Graphs
The graph isomorphism approach is limited by the size of the graphs. We examined sequences from snoRNA, 5S rRNA, microRNA, tRNA, and RNase P (See Appendix for details) to determine how the number of stems varies with sequence length in biological RNAs. The sequences were obtained from online databases (Table 1) and their predicted MFE structures were obtained using the RNAsubopt program of the Vienna 2
Adapted from [13] with minor modification.
Pattern Matching in RNA Structures
325
Fig. 4. Identification of the common structure in S. cerevisiae and H. sapiens RNase P RNA. Left panel (top) shows the secondary structure of the S. cerevisiae RNAse P RNA. Each stem is labeled with a capital letter A-L. Left panel, bottom, shows the XIOS graph. I edges are shown as single lines and O edges as double lines. Right panel shows the secondary structure (A-N) and XIOS graphs for a single human RNAse P RNA. In both panels, matching secondary structures are enclosed by boxes and the uniquely matching part of the XIOS graphs shown in dark lines. Dotted lines in the XIOS graphs indicate where there are multiple mapping between stems H and I of the S. cerevisiae structure and the human structure; these multiple mapped stems are also indicated by arrows in the secondary structure diagrams. The right panel shows two of the mappings as an example.
RNA package [5]. Predicted MFE structures were also obtained for random sequences in a similar fashion. Random sequences were obtained by randomizing the order of bases in the corresponding biological sequences, thus preserving the base composition and sequence length. Fig. 5 indicates the overall trend of linear increase in number of stems as a function of sequence length. This rapid increase in the number of stems is due to the intricately folded structures of the RNAs. This observation further necessitates the development of an efficient system for searching biologically relevant structural patterns in RNA. It is notable the biological RNAs and random RNAs have very similar numbers of structures. As one can see in fig. 6, stem structures in biological RNAs are predominantly less than ten base-pairs long.
326
K. Li et al. snoRNA 30
Number of Stems
Number of Stems
miRNA 40 35 30 25 20 15 10 5 0
25 20 15 10 5 0
0
200
400
600
800
0
1000
100
200
300
RNaseP
500
600
700
800
tRNA
25
12
20
10
Number of Stems
Number of Stems
400
Sequence Length (bases)
Sequence Length (bases)
15 10 5 0
8 6 4 2 0
0
100
200
300
400
500
600
0
50
100
Sequence Length (bases)
150
200
250
Sequence Length (bases)
Number of Stems
5S rRNA 9 8 7 6 5 4 3 2 1 0 0
20
40
60
80
100
120
140
160
Sequence Length (bases)
Fig. 5. Correlation between number of stems and sequence length. Number of stems in biological (♦) and randomized (×) RNA sequences versus sequence length. The number of stems increases roughly linearly with sequence length. Each biological sequence was permuted to generate a corresponding random sequence, preserving the sequence length and base composition of the real sequence.
4 Future Directions The number of stem structures in an RNA MFE structure can be very large (Fig 5); the total number of possible stems, however, grows quadratically with the length of the sequence. If one assumes that stem-loop structures require on average 24 bases, the number of possible stems would be something like (SequenceLength/24)2. For a relative short 10kb mRNA sequence this would lead to graphs with over 150,000 vertices. Our ultimate goal is to analyze 10-20 sequences of much longer length (many biological RNAs are over 100,000 bases long), a daunting problem. There are a number of approaches that can be used to reduce the size of the problem. These include preprocessing the structure to include only the most interesting stems (rather than all possible stems), the application of graph contraction methods, and the introduction of vertex labels.
Pattern Matching in RNA Structures
327
4500
4000 3500
Frequency
3000 2500
2000 1500
1000 500
>300
200-299
100-199
90-99
80-89
70-79
60-69
50-59
40-49
30-39
20-29
10-19
0-9
0
Stem Length
Fig. 6. Length of RNA stem structures in biological RNAs
4.1
Graph Preprocessing
While the most biologically interesting RNA structure need not be the minimum free energy (MFE) structure, it is likely that the important structures are close to the MFE [16]. This follows from the Boltzmann relationship, which indicates that the relative frequency of a given structure in the structural ensemble depends on its energy. Rather than identifying all short energetically favorable stems, we can greatly reduce the size of the problem by including only stems that participate in a structure within some energy interval, ∂, from the predicted MFE structure. The total number of stems can be controlled by altering ∂; ∂=0 produces the MFE structure. 4.2
Reduction of Graph Complexity
Graph contraction reduces graph complexity by pruning irrelevant vertices and edges. There are a number of different approaches one can take to pruning XIOS graphs. Firstly, as we pointed out above, one can simply discard the S edges; since there are exactly four edge types and each pair of vertices has exactly one edge, only three edge types need be used. Secondly, we can place limits on the construction of edges of other types, especially of I edges. One of the advantages of the XIOS representation is that nested stems, represented by I edges, have an edge with every other stem in which they are included. This embedding can be many levels deep, generating a huge number of highly connected vertices. This is a great advantage because it obviates the need for introducing gaps [17] which make the matching problem much more complex (and ad hoc since there is no way to determine correct gap parameters). We
328
K. Li et al.
postulate that we would lose little matching power if the depth of I edge nesting was limited to a fixed depth such as four. This would still permit extraneous stems to be easily omitted but greatly reduce the number of edges in the graphs. Finally, because we can enumerate all possible XIOS structures with a fixed number of stems, we can create a dictionary of these substructures and condense the graphs to a smaller number of vertices based on this dictionary, at the same time converting the unlabelled vertices to labeled vertices (the labels then correspond to the dictionary structures). 4.3
Adding Labels
The dictionary strategy, described above, faces difficulties since the isomorphous structure of interest is buried in a huge field of random noise. If the dictionary based labels are dominated by the non-matching (noise) portion of the graph, the re-encoded graph will lose the information needed to match to other graphs (e.g., if the dictionary structures overlap but do not exactly correspond to the interesting conserved structures). A similar strategy, unique to the XIOS graph, is to examine all three vertex triangles, of which there are a strictly limited number of types due to the limitations both of the graph and of the biochemistry of RNA, and replace each triangle with a corresponding labeled vertex. Triangles may share one or two edges which can be incorporated as an extended set of edge labels. Such graphs would be modestly smaller, but much more heavily labeled, greatly increasing the search speed. At the same time, little information is lost since the original graph can be almost completely reconstructed from the triangle-condensed graph. 4.4
Motif Identification Tool
RNAs that interact with specific molecules, such as proteins, generally have common topological motifs. For example, in alternative splicing the donor, acceptor, and branch point all have specific conserved structures important in recognition and catalysis. Such conserved structures, when identified in molecules of unknown function, immediately generate experimentally testable hypotheses. Once motifs are identified, they can be used to search for additional sequences that could form the same structure. This provides a means for both statistically evaluating the significance of the structural motif, as well as for validating matches by examining them for biological similarities, e.g., by comparing the GO annotations [18] of the sequences. A number of approaches may be suitable for this, including stochastic context free grammars (SCFG) [19] which are frequently used to identify RNA structures based on biological knowledge [20]. 4.5
Database Search Tool
For searching of large databases, SCFGs are likely to be too slow. We are developing a fast database search tool for RNA motifs. Since we can enumerate all possible XIOS graphs up for structures of up to 7 or 8 stems (hundreds of thousands) we believe that we can use the enumerated structures to prescreen graphs in much the same way that BLAST [21] uses identically matching words. This is closely related to the dictionary concept introduced above. Because matching to the enumerated structures in the dictionary can be precalculated, we plan to develop a fast system based on the
Pattern Matching in RNA Structures
329
observation that one need not do the complete isomorphous subgraph search if two sequences share no dictionary motifs, and that if they do, the isomorphism search can be seeded by the matching motifs. Such a search tool would allow users to both extend and validate motifs found through subgraph isomorphism matching, and would also provide a means to functionally classify unknown RNAs. RNA is still rather poorly understood and such an approach will be of great use in identifying novel structural and functional motifs. Because RNA structures are relatively degenerate, it is likely that a post-processing system will be needed to identify the most interesting possible structures out of a large number of possibilities. This issue is similar to the problem of relevance ranking in web indexing. In sequence comparisons, statistical probability calculations are commonly used as a relevance ranking mechanism, and this may be possible in the XIOS system; we anticipate that the distribution of maximal matching structures will follow an extreme value distribution. Any two large RNAs, however, will have common structures that are almost completely trivial: they will match as a long series of serial stems. This is generally not biologically interesting, suggesting that there is a notion of biological complexity which can be used as a relevance ranking function. This biological notion of complexity may or may not correspond to mathematical notions of graph complexity [22]. Another possible relevance function would be to choose only structural motifs that can form near-MFE predicted structures using a constrained folding approach (motif stems are constrained to base-pair in the predicted structure) such as are available in MFOLD and the Vienna RNA package. The XIOS graph representation has great promise for identifying biologically interesting structural motifs in RNA based on sequence alone. Constructing a sufficiently fast motif search system will allow RNA studies to take advantage of the same bootstrap process that is commonly used for DNA and protein sequences, namely 1) identify biologically related sequences, 2) identify statistically significant structural motifs, 3) use structural motifs to identify additional candidate sequences (iterating to convergence), and 4) use the structural motif as a basis for laboratory experiments.
Acknowledgments This work was supported by National Science Foundation award DBI-0515986.
References 1. Birney, E., Stamatoyannopoulos, J.A., Dutta, A., Guigo, R., Gingeras, T.R., Margulies, E.H., Weng, Z., Snyder, M., Dermitzakis, E.T., Thurman, R.E., et al.: Identification and analysis of functional elements in 1% of the human genome by the ENCODE pilot project. Nature 447(7146), 799–816 (2007) 2. Zarrinkar, P.P., Williamson, J.R.: The kinetic folding pathway of the Tetrahymena ribozyme reveals possible similarities between RNA and protein folding. Nature structural biology 3(5), 432–438 (1996) 3. Doherty, E.A., Doudna, J.A.: The P4-P6 domain directs higher order folding of the Tetrahymena ribozyme core. Biochemistry 36(11), 3159–3169 (1997)
330
K. Li et al.
4. Zuker, M.: On finding all suboptimal foldings of an RNA molecule. Science 244(4900), 48–52 (1989) 5. Wuchty, S., Fontana, W., Hofacker, I.L., Schuster, P.: Complete suboptimal folding of RNA and the stability of secondary structures. Biopolymers 49(2), 145–165 (1999) 6. Staple, D.W., Butcher, S.E.: Pseudoknots: RNA structures with diverse functions. PLoS biology 3(6), 213 (2005) 7. Reeder, J., Giegerich, R.: Design, implementation and evaluation of a practical pseudoknot folding algorithm based on thermodynamics. BMC bioinformatics 5, 104 (2004) 8. Mathews, D.H., Disney, M.D., Childs, J.L., Schroeder, S.J., Zuker, M., Turner, D.H.: Incorporating chemical modification constraints into a dynamic programming algorithm for prediction of RNA secondary structure. Proceedings of the National Academy of Sciences 101(19), 7287–7292 (2004) 9. Gan, H.H., Pasquali, S., Schlick, T.: Exploring the repertoire of RNA secondary motifs using graph theory; implications for RNA design. Nucl. Acids Res. 31(11), 2926–2943 (2003) 10. Kim, N., Shiffeldrim, N., Gan, H.H., Schlick, T.: Candidates for Novel RNA Topologies. Journal of molecular biology 341(5), 1129–1144 (2004) 11. Ivo, L.F.H., Peter, F.S., Sebastian, B.L., Manfred, T., Peter, S.: Sebastian, Tacker Manfred, and Schuster Peter: Fast Folding and Comparison of RNA Secondary Structures. MonatshChem 125, 167–188 (1994) 12. Zuker, M., Stiegler, P.: Optimal computer folding of large RNA sequences using thermodynamics and auxiliary information. Nucleic acids research 9(1), 133–148 (1981) 13. Yan, X., Han, J.: gSpan: Graph-Based Substructure Pattern Mining. In: Proceedings of the 2002 IEEE International Conference on Data Mining (ICDM 2002), p. 721. IEEE Computer Society, Los Alamitos (2002) 14. Yan, X., Han, J.: CloseGraph: Mining closed frequent graph patterns. In: Proceedings of the ninth ACM SIGKDD international conference on Knowledge discovery and data mining, Washington, D.C. ACM, New York (2003) 15. Zaki, M.J.: Efficiently mining frequent trees in a forest. In: Proceedings of the eighth ACM SIGKDD international conference on Knowledge discovery and data mining, Edmonton, Alberta, Canada, ACM Press, New York (2002) 16. Jaeger, J.A., Turner, D.H., Zuker, M.: Improved predictions of secondary structures for RNA. Proceedings of the National Academy of Sciences of the United States of America 86(20), 7706–7710 (1989) 17. Wang, Z., Zhang, K.: Alignment between Two RNA Structures. In: Mathematical Foundations of Computer Science 2001, p. 690 (2001) 18. Ashburner, M., Ball, C.A., Blake, J.A., Botstein, D., Butler, H., Cherry, J.M., Davis, A.P., Dolinski, K., Dwight, S.S., Eppig, J.T., et al.: Gene ontology: Tool for the unification of biology. The Gene Ontology Consortium. Nature genetics 25(1), 25–29 (2000) 19. Grate, L., Herbster, M., Hughey, R., Haussler, D., Mian, I.S., Noller, H.: RNA modeling using Gibbs sampling and stochastic context free grammars. In: Proceedings / International Conference on Intelligent Systems for Molecular Biology; ISMB, vol. 2, pp. 138–146 (1994) 20. Lowe, T.M., Eddy, S.R.: tRNAscan-SE: A program for improved detection of transfer RNA genes in genomic sequence. Nucl. Acids Res. 25(5), 955–964 (1997) 21. Altschul, S.F., Gish, W., Miller, W., Myers, E.W., Lipman, D.J.: Basic local alignment search tool. Journal of molecular biology 215(3), 403–410 (1990) 22. Pudlák, P., Rödl, V., Savický, P.: Graph complexity. Acta Informatica 25(5), 515–535 (1988)