Email updates

Keep up to date with the latest news and content from Algorithms for Molecular Biology and BioMed Central.

Open Access Research

On the combinatorics of sparsification

Fenix WD Huang and Christian M Reidys*

Author Affiliations

Department of Mathematic and Computer science, University of Southern Denmark, Campusvej 55, DK-5230 Odense M, Denmark

For all author emails, please log on.

Algorithms for Molecular Biology 2012, 7:28  doi:10.1186/1748-7188-7-28

The electronic version of this article is the complete one and can be found online at: http://www.almob.org/content/7/1/28


Received:31 December 2011
Accepted:11 October 2012
Published:22 October 2012

© 2012 Huang and Reidys; licensee 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.

Abstract

Background

We study the sparsification of dynamic programming based on folding algorithms of RNA structures. Sparsification is a method that improves significantly the computation of minimum free energy (mfe) RNA structures.

Results

We provide a quantitative analysis of the sparsification of a particular decomposition rule, Λ. This rule splits an interval of RNA secondary and pseudoknot structures of fixed topological genus. Key for quantifying sparsifications is the size of the so called candidate sets. Here we assume mfe-structures to be specifically distributed (see Assumption 1) within arbitrary and irreducible RNA secondary and pseudoknot structures of fixed topological genus. We then present a combinatorial framework which allows by means of probabilities of irreducible sub-structures to obtain the expectation of the Λ-candidate set w.r.t. a uniformly random input sequence. We compute these expectations for arc-based energy models via energy-filtered generating functions (GF) in case of RNA secondary structures as well as RNA pseudoknot structures. Furthermore, for RNA secondary structures we also analyze a simplified loop-based energy model. Our combinatorial analysis is then compared to the expected number of Λ-candidates obtained from the folding mfe-structures. In case of the mfe-folding of RNA secondary structures with a simplified loop-based energy model our results imply that sparsification provides a significant, constant improvement of 91% (theory) to be compared to an 96% (experimental, simplified arc-based model) reduction. However, we do not observe a linear factor improvement. Finally, in case of the “full” loop-energy model we can report a reduction of 98% (experiment).

Conclusions

Sparsification was initially attributed a linear factor improvement. This conclusion was based on the so called polymer-zeta property, which stems from interpreting polymer chains as self-avoiding walks. Subsequent findings however reveal that the O(n) improvement is not correct. The combinatorial analysis presented here shows that, assuming a specific distribution (see Assumption 1), of mfe-structures within irreducible and arbitrary structures, the expected number of Λ-candidates is Θ(n2). However, the constant reduction is quite significant, being in the range of 96%. We furthermore show an analogous result for the sparsification of the Λ-decomposition rule for RNA pseudoknotted structures of genus one. Finally we observe that the effect of sparsification is sensitive to the employed energy model.

Keywords:
Sparsification; Generating function; Dynamic programming

Background

RNA structures, diagrams and genus filtration

An RNA sequence is a linear, oriented sequence of the nucleotides (bases) A,U,G,C. These sequences “fold” by establishing bonds between pairs of nucleotides. In this paper, we only consider the Watson-Crick base pair A-U or G-C and wobble base pairs U-G. The global conformation of an RNA molecule is determined by topological constraints encoded at the level of secondary structure, i.e., by the mutual arrangements of the base pairs [1].

Secondary structures can be interpreted as (partial) matchings in a graph of permissible base pairs [2]. They can be represented as diagrams, i.e. graphs over the vertices 1,…,n, drawn on a horizontal line with bonds (arcs) in the upper half-plane. The length of an arc (ij) is denoted by ji. Furthermore, we call two arc (ij) and (rs) (suppose i < r) cross if i<r<j<s holds. In this representation one refers to a secondary structure without crossing arcs as a simple secondary structure and pseudoknot structure, otherwise, see Figure 1.

thumbnailFigure 1. RNA structures as planar graphs and diagrams. (A) an RNA secondary structure and (B) an RNA pseudoknot structure.

A diagram is a labeled graph over the vertex set [n]={1,…,n} in which each vertex has degree ≤ 3, represented by drawing its vertices in a horizontal line. The backbone of a diagram is the sequence of consecutive integers (1,…,n) together with the edges {{i,i + 1}∣1 ≤ in−1}. The arcs of a diagram, (i,j), where i<j, are drawn in the upper half-plane. We shall distinguish the backbone edge {i,i + 1} from the arc (i,i + 1), which we refer to as a 1-arc. A stack of length is a maximal sequence of “parallel” arcs, ((i,j),(i + 1,j−1),…,(i + (−1),j−(−1))) and is also referred to as a -stack, see Figure 2.

thumbnailFigure 2. Diagram representation and irreducibility. A diagram over {1,…,55}. The arcs (1,21) and (11,33) are crossing and the dashed arc (9,10) is a 1-arc which is not allowed. This structure contains 4 stacks with length 7, 4, 6 and 4, from left to right respectively. Irreducibility relative also to a decomposition rule. The rule Λ splitting Si,j to Si,k and Sk + 1,j, S1,55 is not Λ-irreducible, while S2,40 and S43,55 are. However, for a specific decomposition rule Λ, which removes the outmost arc, S43,55 is not Λ-irreducible while S2,40 is.

We shall consider diagrams as fatgraphs, <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M1','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M1">View MathML</a>, that is graphs G together with a collection of cyclic orderings, called fattenings. Each fatgraph <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M2','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M2">View MathML</a> determines an oriented surface <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M3','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M3">View MathML</a>[3,4] which is connected if G is and has some associated genus g(G) ≥ 0 and number r(G)≥1 of boundary components. Clearly, <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M4','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M4">View MathML</a> contains G as a deformation retract [5]. Fatgraphs were first applied to RNA secondary structures in [6,7].

A diagram <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M5','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M5">View MathML</a> hence determines a unique surface <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M6','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M6">View MathML</a> (with boundary). Filling the boundary components with discs we can pass from <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M7','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M7">View MathML</a> to a surface without boundary. Euler characteristic, χ, and genus, g, of this surface is given by χ = ve + r and <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M8','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M8">View MathML</a>, respectively, where v,e,r is the number of discs, ribbons and boundary components in <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M9','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M9">View MathML</a>, [5]. The genus of a diagram is that of its associated surface without boundary and a diagram of genus g is referred to as g-diagram.

A g-diagram without arcs of the form (i,i + 1) (1-arcs) is called a g-structure. A g-diagram that contains only vertices of degree three, i.e. does not contain any vertices not incident to arcs in the upper half-plane, is called a g-matching. A diagram is called irreducible, if and only if it cannot be split into two by cutting the backbone without cutting an arc, see Figure 2.

Folding algorithms

Folded configurations are energetically somewhat optimal. Here energy is obtained by adding contributions of loops [8] contained in RNA secondary and pseudoknot structures. Any RNA structure has a unique and disjoint decomposition into such loops which are really stems from the fatgraph [9,10] interpretation of such structures in which loops correspond to boundary components [11]. Additional constraints imply further properties, like for instance certain minimum arc-length conditions [12] and the nonexistence of isolated bonds. An mfe-RNA structure can be predicted in polynomials time by means of dynamic programming (DP) routines [12,13].

The most commonly used tools predicting simple RNA secondary structure mfold[13] and the Vienna RNA Package[14], require O(n2) space and O(n3) time. In the following we omit “simple” and refer to secondary structures containing crossing arcs as pseudoknot structures.

Generalizing the matrices of the DP-routines of secondary structure folding [13,14] to gap-matrices [15], leads to a DP-folding of pseudoknotted structures [15] (pknot‐R&E) with O(n4) space an O(n6) time complexity. The following references provide a certainly incomplete list of DP-approaches to RNA pseudoknot structure prediction using various structure classes characterized in terms of recursion equations and/or stochastic grammars: [9,15-26]. The most efficient algorithm for pseudoknot structures is [22] (pknotsRG) having O(n2) space and O(n4) time complexity. This algorithm however considers only a restricted class of pseudoknots.

Note that RNA secondary structures are exactly structures of topological genus zero [27]. The topological classification of RNA structures [10,11,28] has recently been translated into an efficient DP-algorithm [9]. Fixing the topological genus of RNA structures implies that there are only finitely many types, the so called irreducible shadows [11].

Sparsification

Let us have a closer look at sparsification and the results of [29-31]. Sparsification is a method tailored to speed up DP-algorithms predicting mfe-secondary structures [29,31]. The idea is to prune certain computation paths encountered in the DP-recursions, see Figure 3A. Let us consider the case of RNA secondary structure folding. Here sparsification reduces the DP-recursion paths to be based on so called candidates. A candidate is in this case an interval, for which the optimal solution cannot be written as a sum of optimal solutions of sub-intervals. This implies the structure over a candidate is an “irreducible” structures when tracing back from the optimal solution. Considering only these candidates gives the same optimal solution as considering all possible intervals. The crucial observation here is that if these irreducibles appear only at a low rate we have a significant reduction in time and space complexity.

thumbnailFigure 3. (A) Sparsification of secondary structure folding. Suppose the optimal solution Li,j is obtained from the optimal solutions Li,k, Lk + 1,q and Lq + 1,j. Based on the recursions of the secondary structures, Li,kand Lk + 1,q produce an optimal solution of Li,q. Similarly, Lk + 1,q and Lq + 1,j produce an optimal solution of Lk + 1,j. Now, in order to obtain an optimal solution of Li,j it is sufficient to consider either the grouping Li,q and Lq + 1,j or Li,k and Lk + 1,j. (B) General idea of sparsification: Lv is alternatively realized via <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M10','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M10">View MathML</a> and <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M11','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M11">View MathML</a>, or <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M12','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M12">View MathML</a> and <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M13','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M13">View MathML</a>. Thus it is sufficient to only consider one of the computation paths.

Sparsification has been also applied in the context of RNA-RNA interaction structures [30] as well as RNA pseudoknot structures [32]. In difference to RNA secondary structures, however, not every decomposition rule in the DP-folding of RNA pseudoknot structures is amendable to sparsification. By construction, sparsification can only be applied for calculating mfe-energy structures. Since the computation of the partition function [20,33] needs to take into account all sub-structures, sparsification does not work.

Sparsification [29,31,32] can be described as follows: let V={v1v2,…} be a set whose elements viare unions of pairwise disjoint intervals. Let furthermore Lv denote an optimal solution (here optimal means to maximize the scores) of the DP-routine over v. By assumption Lv is recursively obtained. Suppose we are given a decomposition rule Λ1, for which the optimal solution Lv is <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M14','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M14">View MathML</a>, where <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M15','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M15">View MathML</a>. Then, under certain circumstances, the DP-routine may interpret Lv either as <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M16','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M16">View MathML</a> or as <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M17','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M17">View MathML</a>, see Figure 3B. To be precise, this situation is encountered iff

there exists an optimal solution <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M18','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M18">View MathML</a> for a sub-structure over <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M19','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M19">View MathML</a> where <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M20','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M20">View MathML</a> via Λ2 and Lv is obtained from <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M21','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M21">View MathML</a> and <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M22','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M22">View MathML</a> via Λ1,

there exists an optimal solution <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M23','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M23">View MathML</a> for a sub-structure over <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M24','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M24">View MathML</a> where <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M25','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M25">View MathML</a> via Λ3 and Lv is obtained by <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M26','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M26">View MathML</a> and <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M27','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M27">View MathML</a> via Λ1.

Given a decomposition

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M28','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M28">View MathML</a>

we call Λ2s-compatible to Λ1 if there exists a decomposition rule Λ3 such that

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M29','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M29">View MathML</a>

Note that if Λ2 is s-compatible to Λ1then Λ3 is s-compatible to Λ1. To summarize

Definition 1

(s-compatible) Suppose Lv is the optimal solution for Sv over v, <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M30','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M30">View MathML</a> under decomposition rule Λ1. <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M31','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M31">View MathML</a> is obtained from two optimal solutions <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M32','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M32">View MathML</a> and <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M33','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M33">View MathML</a> under rule Λ2. Then Λ2 is called s-compatible to Λ1 if there exist some rule Λ3 such that <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M34','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M34">View MathML</a> and <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M35','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M35">View MathML</a>.

Figure 3B depicts two such ways that realize the same optimal solution Lv. Sparsification prunes any such multiple computations of the same optimal value. Note that by symmetry, Λ2 and Λ3 are both s-compatible to Λ1.

We next come to the important concept of candidates. The latter mark the essential computation paths for the DP-routine.

Definition 2

(Candidates) Suppose Lv is an optimal solution in a sense of maximizing. We call v is a Λ-candidate if for any v1v obtained by Λand <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M36','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M36">View MathML</a>, we have

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M37','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M37">View MathML</a>

and we shall denote the set of Λ-candidates set by QΛ.

By construction a Λ-candidate v is a union of disjoint intervals such that its optimal solution Lv cannot be obtained via a Λ-splitting. This optimal solution allows to construct a non-unique arc-configuration (sub-structure) over v[13,14] and the above Λ-splitting consequently translates into a splitting of this sub-structure. This connects the notion of Λ-candidates with that of sub-structures and shows that a Λ-candidate implies a sub-structure that is Λ-irreducible.

Lemma 1

[29,32] Suppose Lv is obtained by selecting the optimal solution from the decomposition rules Λ1Λ2,…,Λn. If Λ is s-compatible to all Λi,∀1 ≤ i n, then Lv can be obtained via Λ-candidates.

In summary, as for the impact of sparsification, [29] claims that sparsification reduces the time complexity by a linear factor. This claim is based on the assumption that RNA molecules satisfy the polymer-zeta property[29]. Subsequent studies draw a slightly different picture [31] concluding that that sparsification requires O(nZ) time, where n denotes the length of input sequence, and Z is a sparsity parameter satisfying n Z<n2. Recently, it has been shown in [34] that an asymptotic time complexity of a sparsified RNA folding algorithm using standard energy parameters remains O(n3) under a wide variety of condition.

Sparsification of RNA secondary structures

Here we recall some results of [29,31] on the sparsification of RNA secondary structures. Secondary structures satisfy a simple recursion which gives the optimal (maximum) solution over ij by <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M38','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M38">View MathML</a>, where Vi,j denotes the optimal solution in which (ij) is a base pair, and Wi,j denotes the optimal solution obtained by adding the optimal solutions of two subsequent intervals, respectively. Note that the optimal solution over a single vertex is denoted by Li,i. We have the recursion equation for Vi,j and Wi,j:

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M39','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M39">View MathML</a>

where w(ij) is the energy contribution of (ij) forming a base pair, see Figure 4. In case two positions, i, j in the sequence are incompatible then we have w(ij)=−.

thumbnailFigure 4. The recursion solving the optimal solution for secondary structures.

An interval [i,j] is a Λ-candidate if the optimal solution over [i,j] is given by Li,j=Vi,j>Wi,j. Indeed, [i,j] is a candidate iff [i,j] is in the candidate set of Λ, and we denote the set <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M40','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M40">View MathML</a> by Q. Suppose the optimal solution Wi,j is given by Wi,j = Li,q + Lq + 1,j and suppose we have Li,q = Li,k + Lk + 1,q. Then since [i,q] is not a candidate, Lemma 1 shows that we can compute Wi,j = Li,k + Lk + 1,j, where [i,k] is a candidate.

Sparsification on RNA pseudoknot structures

Sparsification can also be applied to the DP-algorithm folding RNA structures with pseudoknots [32]. In contrast to the decomposition rule Λ that spliced an interval into two subsequent intervals, we encounter in the grammar for pseudoknotted structures additional more complex decomposition rules [15]. As shown in [32] there exist some decomposition rules which are not s-compatible and which can accordingly not be sparsified at all, see Figure 5B. For instance, given a decomposition rule Λ in pknot‐R&E subsequent decomposition rules which are s-compatible to Λ are referred to as split type of Λ [32].

thumbnailFigure 5. Decomposition rules for pseudoknot structures of fixed genus (decomposed into three colors). (A) three decompositions via the rule Λ, which is s-compatible to itself. (B) three decomposition rules Λ123where Λ23 are s-compatible to Λ1. (C) three decomposition rules Λ123 where Λ23 are not s-compatible to Λ1.

In the following we will study RNA pseudoknot structures of fixed topological genus, see RNA structures, diagrams and genus filtration for details. An algorithm folding such pseudoknot structures, gfold, has been presented in [9]. The decomposition rules that appear in gfold are reminiscent to those of pknot‐R&E but as they restrict the genus of sub-structures, the iteration of gap-matrices is severely restricted and the effect of sparsification of these decompositions is significantly smaller.

In the following, we restrict our analysis in pseudoknotted structures to only the decomposition rule Λ, which splices an interval into two subsequent intervals. Put differently, Λ cuts the backbone of an RNA pseudoknot structure of fixed genus g over one interval without cutting a bond.

Efficiency of sparsification

By construction, the fewer candidates the DP-routine encounters, the more efficient the sparsification. Thus it is of utmost importance to analyze the number of candidates. In the case of sparsification of RNA secondary structures we have one basic decomposition rule Λ acting on intervals, namely Λsplices an interval into two disjoint, subsequent intervals. The implied notion of a Λ-irreducible sub-structure is that of a sub-structure nested in a maximal arc, where maximal refers to the partial order of two arcs (ij) ≤ (ij) iff iijj. This observation relates irreducibility to nesting of arcs and following this line of thought [29] identifies a specific property of polymer-chains introduced in [35,36] to be of relevance for the size of candidate sets:

Definition 3

(Polymer-zeta property) Let <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M41','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M41">View MathML</a> denote the probability of a structure over an interval [i,j] under some decomposition rule Λ. Then we say Λ follows the polymer-zeta property if <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M42','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M42">View MathML</a> for some constant b, c > 0 and m = ji.

Polymer-zeta comes from modeling the 2D-folding of a polymer chain as a self-avoiding walk (SAW) in a 2D lattice [37]. It implies that the probability of a base pair (ij) depends only on the length of the arc, i.e. <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M43','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M43">View MathML</a>, where m = ji. In [29] stipulate that RNA molecules satisfy the polymer-zeta property and approximate <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M44','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M44">View MathML</a> by <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M45','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M45">View MathML</a>[29] using 50,000 mRNA sequences of an average length of 1992 nucleotides [38]. They find b≈2.11 and c≈1.47. The average probability <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M46','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M46">View MathML</a> is displayed in Figure 4, Page 865 [29] for increasing m. Furthermore, it is implied via Figure six, Page 867 [29] that the average number of candidates converges to a constant, implying that sparsification of DP-routine folding secondary structure takes Λ(n2) time complexity.

These findings have been questioned by [34], where it has been observed that the time complexity of a sparsified RNA folding algorithm based on energy minimization remains O(n3) independently of the energy function used and the base composition of the RNA sequence. [34] argues that the significant effect of sparsification on the DP-routine is largely a finite-size effect. Namely, when the sequence length is below some threshold, the algorithm is dominated by the quadratic time factor. In this context, it may be worth pointing out that In [31] noticed that the improvement of a sparsified base-pairing maximization algorithm depends heavily on the base composition of the input. Backofen parameterizes explicitly the cardinality of candidate sets in [31].

Contribution

In this paper we study the sparsification of the decomposition rule Λ[31,32] for RNA secondary and RNA pseudoknot structures of fixed topological genus. Based on Assumption 1 below our paper provides a combinatorial framework for quantifying the effects of sparsification of the Λ rule.

We shall prove that the candidate set [29,31,32] is indeed small. We compute the probability of an interval being a candidate for two different energy models. For both models, this is facilitated via computing the generating function (GF) of structures and the generating function of irreducible structures. By studying the asymptotics of coefficients in these generating functions, we can compute the expected number of candidates of a uniformly random input sequence for large n. We show similar results for RNA pseudoknot structures of fixed topological genus. This provides new insights into the improvements of the sparsification of the concatenation-rule Λ in the presence of cross serial interactions. Our observations complement the detailed analysis of Backofen [31,32]. We show that although for pseudoknot structures of fixed topological genus [10,11] the effect of sparsification on the global time complexity is still unclear, the decomposition rule that splits an interval can be sped up significantly.

Methods

Suppose w is an energy function for RNA structures. Let wδ(σ) denote the energy of an RNA structure σover a sequence δ. The partition function of δ is given by

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M47','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M47">View MathML</a>

where R is the universal gas constant and T is the temperature. (Here we consider wδ(σ) as a positive score.) The partition function induces a probability space in which the probability of a structure σ is

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M48','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M48">View MathML</a>

The concept of a partition function is close to that of a generating function. In case of <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M49','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M49">View MathML</a>, i.e., each structure contributes equally regardless the underlying sequence and the partition function equals [zn]G(z), where G is the generating function and [zn]G is the coefficient of the term zn.

Two important energy models are arc-based [39] and loop-based [8], respectively. The loop-based energy-filtration is different from the notion of “stickiness” [40]. The compatibility of two positions by folding random sequences is considered to be 6/16, reminiscent of the probability of two given positions to be compatible by Watson-Crick and Wobble base pairs rules.

Assumption 1

Let

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M50','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M50">View MathML</a>

where η > 1 is a constant, w(σ) is the energy value assigned to σ based on a given energy model and is the number of arcs contained in σ. Then the probability of a particular structure σ to be the mfe-structure of a uniformly random input sequence is

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M51','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M51">View MathML</a>

(1)

Asymptotics

In this section we compute two generating functions and their singular expansions [11]. Let cg(n) and dg(n) denote the number of g-matchings and g-structures having n arcs and n vertices, respectively, with GF

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M52','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M52">View MathML</a>

The GF Cg(z) has been computed in the context of the virtual Euler characteristic of the moduli-space of curves in [41] and Dg(z) can be derived from Cg(z) by means of symbolic enumeration [11]. The GF of genus zero diagrams C0(z) is well-known to be the GF of the Catalan numbers, i.e., the numbers of triangulations of a polygon with (n + 2) sides,

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M53','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M53">View MathML</a>

As for g ≥ 1 we have the following situation [11]

Theorem 1

Suppose g ≥ 1. Then the following assertions hold

(a) Dg(z) is algebraic and

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M54','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M54">View MathML</a>

(2)

In particular, <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M55','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M55">View MathML</a> is the only dominant singularity of Dg(z). we have for some constant agdepending only on g and γ≈2.618:

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M56','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M56">View MathML</a>

(3)

(b) The bivariate GF of g-structures over n vertices, containing exactly m arcs, Eg(z,t), is given by

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M57','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M57">View MathML</a>

(4)

Irreducible g-structures

In the context of Λ-candidates we observed that irreducible sub-structures are of key importance. It is accordingly of relevance to understand the combinatorics of these structures. To this end let <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M58','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M58">View MathML</a> denote the GF of irreducible g-structures.

Lemma 2

For g ≥ 0, the GF <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M59','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M59">View MathML</a> satisfies the recursion

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M60','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M60">View MathML</a>

For a proof of Lemma 2, see Section Proofs.

Theorem 2

For g ≥ 1 we have

(a) the GF of irreducible g-structures over nvertices is given by

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M61','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M61">View MathML</a>

(5)

where <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M62','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M62">View MathML</a>, Ug(z) and Vg(z) are both polynomials with lowest degree at least 2g, and Ug(1/4), Vg(1/4) ≠ 0. In particular, for some constant <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M63','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M63">View MathML</a> and γ≈2.618:

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M64','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M64">View MathML</a>

(6)

(b) the bivariate GF of irreducible g-structures over n vertices, containing exactly m arcs, <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M65','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M65">View MathML</a>, is given by

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M66','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M66">View MathML</a>

(7)

where <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M67','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M67">View MathML</a>.

We shall postpone the proof of Theorem 2 to Section Proofs.

The main result

Nussinov-like energy model

In the following we mimic some form of mfe-g-structures: inspired by the Nussinov energy model [39] we consider the weight of a g-structure over n vertices σg,n to be given by w(σg,n) = cℓ, where c is a constant contribution of a single arc and is the number of arcs in σg,n[40]. Then by Assumption 1, we have the weight function <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M68','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M68">View MathML</a>. Note that the case (6/16)ηc=1 corresponds to the uniform distribution, i.e. all g-structure have identical weight.

This approach requires to keep track of the number of arcs, i.e. we need to employ bivariate GF. In Theorem 1(b) we computed this bivariate GF and in Theorem 2(b) we derived from this bivariate GF <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M69','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M69">View MathML</a>, the GF of irreducible g-structures over n vertices containing arcs.

The idea now is to substitute for the second indeterminant, t, some fixed <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M70','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M70">View MathML</a>. This substitution induces the formal power series

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M71','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M71">View MathML</a>

which we regard as being parameterized by τ. Obviously, setting τ = 1 we recover Dg(z), i.e. we have Dg(z) = Dg,1(z) = Eg(z,1). Note that for τ>1/4, the polynomial τz2z + 1 has no real root. Thus we have for τ>1/4 the asymptotics

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M72','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M72">View MathML</a>

(8)

with identical exponential growth rates as long as the supercritical paradigm [42] applies, i.e. as long as γτ, the real root of minimal modulus of

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M73','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M73">View MathML</a>

is smaller than any singularity of <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M74','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M74">View MathML</a>. In this situation τ affects the constant ag,τ and the exponential growth rate γτ but not the sub-exponential factor <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M75','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M75">View MathML</a>. The latter stems from the singular expansion of Cg(z). Analogously, we derive the τ-parameterized family of GF <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M76','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M76">View MathML</a>. We set the contribution of a single arc c=1 and the constant η = e, where e is the Euler number. Then we have the parameter τ = (6/16)e1≈1.0125. By abuse of notation we will omit the subscript τassuming τ = (6/16)e1.

The main result of this section is that the set of Λ-candidates is a small proportion of all entries. To put this size into context we note that the total number of entries considered for the Λ-decomposition rule is given by

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M77','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M77">View MathML</a>

Theorem 3

Suppose an mfe-g-structure over an interval of length m is irreducible with probability <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M78','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M78">View MathML</a>, then the expected number of candidates of g-structures for sequences of lengths n satisfies

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M79','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M79">View MathML</a>

and furthermore, setting <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M80','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M80">View MathML</a> we have

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M81','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M81">View MathML</a>

where bg > 0 is a constant.

We provide an illustration of Theorem 3 in Figure 6.

thumbnailFigure 6. The expected number of candidates for secondary and 1-structures from an random input with a simplified arc-based energy model,<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M84','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M84">View MathML</a>and<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M85','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M85">View MathML</a>: we compute the expected number of candidates obtained by folding 100 random sequences for secondary structures (A)(solid) and 1-structures (B)(solid). We also display the theoretical expectations implied by Theorem 3 (A)(dashed) and (B)(dashed).

Proof

We proof the theorem by quantifying the probability of [i,j] being a Λ-candidate. In this case any (not necessarily unique) sub-structure, realizing the optimal solution Li,j, is Λ-irreducible, and therefore an irreducible structure over [i,j].

Let m = (ji + 1), by assumption, the probability that [i,j] is a candidate conditional to the existence of a sub-structure over [i,j] is given by

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M86','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M86">View MathML</a>

(9)

Note that <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M87','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M87">View MathML</a> does not depend on the relative location of the interval but only on the interval-length. Let <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M88','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M88">View MathML</a>, then according to Theorem 1,

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M89','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M89">View MathML</a>

for m m0 where m0 > 0 and 0 < ε < 1 are constants. On the one hand

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M90','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M90">View MathML</a>

(10)

where <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M91','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M91">View MathML</a> is a constant. On the other hand, we have

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M92','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M92">View MathML</a>

(11)

Setting <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M93','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M93">View MathML</a>, we can conclude that <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M94','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M94">View MathML</a>, see Figure 7.

thumbnailFigure 7. The probability distribution of<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M97','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M97">View MathML</a>(A) and<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M98','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M98">View MathML</a>(B) on a simplified arc-based energy model.

We next study the expected number of candidates over an interval of length m. To this end let

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M99','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M99">View MathML</a>

The expected cardinality of the set of Λ-candidates of length m = (ji + 1) encountered in the DP-algorithm is given by

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M100','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M100">View MathML</a>

since there are n−(m−1) starting points for such an interval [i,j]. Therefore, by linearity of expectation, for sufficiently large m > m0, <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M101','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M101">View MathML</a> with ε being a small constant. Thus we have

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M102','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M102">View MathML</a>

(12)

Consequently, the expected size of the Λ-candidate set is Λ(n2). We proceed by comparing the expected number of candidates of a sequence with length n with <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M103','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M103">View MathML</a>,

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M104','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M104">View MathML</a>

For sufficient large n n0, <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M105','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M105">View MathML</a>. Furthermore

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M106','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M106">View MathML</a>

from which we can conclude <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M107','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M107">View MathML</a> and the theorem is proved. □

Loop-based energy model

In this section we discuss the loop-based energy model of RNA secondary structure folding. To be precise we evoke here trivariate GFs F(ztv) and F(ztv) whose coefficients counting the numbers of secondary structures and irreducible secondary structures over n vertices having arcs and energy j, respectively. This becomes necessary since the loop-based model distinguishes between arcs and energy. The “cancelation” effect or reparameterization of stickiness [40] to which we referred to before does not appear in this context. Thus we need both an arc- as well as an energy-filtration.

A further complication emerges. In difference to the GFs Eg(z,t) and <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M108','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M108">View MathML</a> the new GFs are not simply obtained by formally substituting <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M109','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M109">View MathML</a> into the power series Dg(z) and <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M110','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M110">View MathML</a> as bivariate terms. The more complicated energy model requires a specific recursion for irreducible secondary structures.

The energy model used in prediction of secondary structure is more complicated than the simple arc-based energy model. Loops which are formed by arcs as well as isolated vertices between the arcs are considered to give energy contribution. Loops are categorized as hairpin loops (no nested arcs), interior loops (including bulge loops and stacks) and multi-loops (more than two arcs nested), see Figure 8. An arbitrary secondary structure can be uniquely decomposed into a collection of mutually disjoint loops. A result of the particular energy parameters [8] is that the energy model prefers interior loops, in particular stacks (no isolated vertex between two parallel arc), and disfavors multi-loops. Based on this observation, we give a simplified energy model for a loop λcontained in secondary structure which only depends on the loop types by

w(λ)=0.5 if λ is a hairpin loop,

thumbnailFigure 8. Diagram representation of loop types in secondary structures: (A) hairpin loop, (B) interior loop, (C) multi-loop.

w(λ)=1 if λ is an interior loop,

w(λ)=−5 if λ is a multi-loop,

where λ is a loop in a structure. The energy for a secondary structure σaccordingly is given by

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M111','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M111">View MathML</a>

(13)

Let <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M112','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M112">View MathML</a> and F0(z) be the energy-filtered GFs obtained by setting t=6/16 and v=η=e in F(z,t,v) and F(z,t,v), where e is the Euler number. Then

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M113','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M113">View MathML</a>

where σ is an arbitary and σ is an irreducible secondary structure. Along these lines, , denote the number of arcs in σand σ. In other words, what happens here is that we find a suitable parameterization which brings us back to a simple univariate GF whose coefficients count the sum of weights of structures over n vertices.

Lemma 3

The energy-filtered generating function of RNA secondary structures, <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M114','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M114">View MathML</a>, satisfies the recursion

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M115','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M115">View MathML</a>

(14)

and F(z) is uniquely determined by the above equation. Furthermore

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M116','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M116">View MathML</a>

(15)

Proof

We first consider the GF <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M117','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M117">View MathML</a> whose coefficient of zn denotes the total weight of irreducible secondary structures over n vertices, where (1,n) is an arc. Thus it gives a term 6/16z2. Isolated vertex lead to the term

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M118','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M118">View MathML</a>

where p denotes the minimum number of isolated vertices to be inserted. Depending on the types of loops formed by (i,n), we have

• hairpin loops: <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M119','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M119">View MathML</a>,

• interior loops: <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M120','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M120">View MathML</a>,

• multi-loops: there are at least two irreducible sub-structures, as well as isolated vertices, thus

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M121','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M121">View MathML</a>

Considering the contributions from the energy model we compute

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M122','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M122">View MathML</a>

which establishes the recursion. The uniqueness of the solution as a power series follows from the fact that each coefficient can evidently be recursively computed.

An arbitrary secondary structure can be considered as a sequence of irreducible sub-structures with certain intervals of isolated vertices. Thus

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M123','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M123">View MathML</a>

Lemma 4

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M124','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M124">View MathML</a> and F0(z) have the same singular expansion.

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M125','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M125">View MathML</a>

(16)

where α≈0.24 and β≈2.88 are constants and γ≈2.1673

Proof

Solving eq. 14 we obtain a unique solution for <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M126','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M126">View MathML</a> whose coefficient are all positive. Observing the dominant singularity of <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M127','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M127">View MathML</a> is ρ≈0.4614. F0(z) is a function of <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M128','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M128">View MathML</a> and we examine the real root of minimal modulus of <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M129','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M129">View MathML</a> is bigger than ρ. Then by the supercritical paradigm [42] applying, F0(z) and <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M130','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M130">View MathML</a> have identical exponential growth rates. Furthermore, <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M131','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M131">View MathML</a> and F0(z) have the same sub-exponential factor <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M132','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M132">View MathML</a>, hence the lemma. □

Theorem 4

Suppose an mfe-secondary structure over an interval of length m is irreducible with probability <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M133','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M133">View MathML</a>, then the expected number of candidates from a random sequence of length n with a simplified loop-based energy model is

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M134','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M134">View MathML</a>

and furthermore, setting <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M135','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M135">View MathML</a>, we have

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M136','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M136">View MathML</a>

where b=α/β≈0.08.

Proof

By Lemma 4 we have <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M137','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M137">View MathML</a> where b is a constant. The proof is completely analogous to that of Theorem 3. □

We show the distribution of <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M138','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M138">View MathML</a> and <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M139','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M139">View MathML</a> in Figure 9.

thumbnailFigure 9. The distribution of<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M142','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M142">View MathML</a>(A) and<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M143','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M143">View MathML</a>obtained by folding 100 random sequences on the loop-based model (B)(solid), as well as the theoretical expectation implied by Theorem 4 (B)(dashed).

Conclusion

In this paper we quantify the effect of sparsification of the rule Λ. This rule splits intervals and separates concatenated sub-structures. The sparsification of Λ alone is claimed to provide a speed up of up to a linear factor of the DP-folding of RNA secondary structures [29]. A similar conclusion is drawn in [30] where the sparsification of RNA-RNA interaction structures is shown to experience also a linear reduction in time complexity. Both papers [29,30] base their conclusion on the validity of the polymer-zeta property. However, [34] comes to a different conclusion reporting a mere constant reduction in time complexity. While Λis the key for the time complexity reduction of secondary structure folding, it is conceivable that for pseudoknot structures there may exist non-sparsifiable rules in which case the overall time complexity is not reduced.

In any case, the key is the set of candidates and we provide an analysis of Λ-candidates by combinatorial means. In general, the connection between candidates, i.e. unions of disjoint intervals and the combinatorics of structures is actually established by the algorithm itself via backtracking: at the end of the DP-algorithm a structure is being generated that realizes the previously computed energy as mfe-structure. This connects intervals and sub-structures.

So, does the condition c>1 in polymer-zeta apply in the context of RNA structures? In fact this condition would follow if the intervals in question are distributed as in uniformly sampled structures. This however, is far from reasonable, due to the fact that the mfe-algorithm deliberately designs some mfe-structure over the given interval. What the algorithm produces is in fact antagonistic to uniform sampling. We here wish to acknowledge the help of one anonymous referee in clarifying this point.

Our results imply that polymer-zeta does not hold. Our framework critically depends on a specific distribution of mfe structures within irreducible and arbitrary structures, explicated in Assumption 1. We have cross-checked Assumption 1 with the number of candidates in DP-programs (using the same energy model), see Figure 7 and Figure 9. With this conclusion we are in accord with [31,34] but provide an entirely different approach.

The non validity of polymer-zeta has also been observed in the context of the limit distribution of the 5’-3’ distances of RNA secondary structures [43]. Here it is observed that long arcs, to be precise arcs of lengths O(n) always exist. This is of course a contradiction to the polymer-zeta property in case of c>1.

The key to quantification of the expected number of candidates is the singularity analysis of a pair of energy-filtered GF, namely that of a class of structures and that of the subclass of all such structures that are irreducible. We show that for various energy models the singular expansions of both these functions are essentially equal–modulo some constant. This implies that the expected number of candidates is Λ(n2) and all constants can explicitly be computed from a detailed singularity analysis. The good news is that depending on the energy model, a significant constant reduction, around 96% can be obtained. This is in accordance with data produced in [31] for the mfe-folding of random sequences. There a reduction by 98% is reported for sequences of length ≥ 500.

Our findings are of relevance for numerous results, that are formulated in terms of sizes of candidate sets [32]. These can now be quantified. It is certainly of interest to devise a full fledged analysis of the loop-based energy model. While these computations are far from easy our framework shows how to perform such an analysis.

Using the paradigm of gap-matrices Backofen has shown [32] that the sparsification of the DP-folding of RNA pseudoknot structures exhibits additional instances, where sparsification can be applied, see Figure 5B. Our results show that the expected number of candidates is Λ(n2), where the constant reduction is around 90%. This is in fact very good new since the sequence length in the context of RNA pseudoknot structure folding is in the order of hundreds of nucleotides. So sparsification of further instances does have an significant impact on the time complexity of the folding.

Proofs

In this section, we prove Lemma 2 and Theorem 2.

Proof for Lemma 2: let D(z,u) and D(z,u) be the bivariate GF <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M144','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M144">View MathML</a>, and <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M145','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M145">View MathML</a>. Suppose a structure contains exactly j irreducible structures, then

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M146','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M146">View MathML</a>

(17)

and

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M147','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M147">View MathML</a>

(18)

as well as <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M148','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M148">View MathML</a>. Let <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M149','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M149">View MathML</a><a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M150','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M150">View MathML</a>. Then F(z,u)D(z,u)=1, whence for g ≥ 1,

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M151','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M151">View MathML</a>

(19)

and F0(z)D0(z)=1, where <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M152','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M152">View MathML</a>. Furthermore, we have <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M153','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M153">View MathML</a> and

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M154','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M154">View MathML</a>

(20)

which implies <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M155','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M155">View MathML</a> and

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M156','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M156">View MathML</a>

(21)

Proof for Theorem 2 Let [n]kdenote the set of compositions of n having k parts, i.e. for σ∈[n]k we have σ=(σ1,…,σk) and <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M157','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M157">View MathML</a>.Claim.

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M158','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M158">View MathML</a>

(22)

We shall prove the claim by induction on g. For g=1 we have

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M159','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M159">View MathML</a>

(23)

whence eq. (22) holds for g=1. By induction hypothesis, we may now assume that for jg, eq. (22) holds. According to Lemma 2, we have

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M160','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M160">View MathML</a>

We next observe

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M161','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M161">View MathML</a>

(24)

and setting h=g1j we obtain,

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M162','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M162">View MathML</a>

and setting j=gh

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M163','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M163">View MathML</a>

Consequently, the Claim holds for any g ≥ 1.

For any g ≥ 1, we have [11]

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M164','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M164">View MathML</a>

where Pg(u) is a polynomial with integral coefficients of degree at most (3g−1), Pg(1/4)≠0, u2gPg(u)≠0 and uhPg(u)=0 for 0 ≤ h ≤ 2g−1. Let <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M165','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M165">View MathML</a>, the Claim provides in this context the following interpretation of <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M166','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M166">View MathML</a>

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M167','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M167">View MathML</a>

(56)

and

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M168','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M168">View MathML</a>

As 0 ≤ jg−2 and gjs ≤ 2g + 1−2j, we have s ≥ 2. Consequently we arrive at

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M169','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M169">View MathML</a>

(26)

where

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M170','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M170">View MathML</a>

and

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M171','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M171">View MathML</a>

We have for σ∈[g]k, k ≥ 1

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M172','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M172">View MathML</a>

where <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M173','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M173">View MathML</a>, hi ≥ 0. Then we obtain that

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M174','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M174">View MathML</a>

(27)

Since <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M175','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M175">View MathML</a>, hi≤2σi−1, <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M176','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M176">View MathML</a> and <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M177','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M177">View MathML</a>. Thus for 0 ≤ h ≤ 2g−1,

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M178','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M178">View MathML</a>

(28)

As shown in [11] we have

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M179','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M179">View MathML</a>

(29)

and we obtain Ug(1/4)=Pg(1/4)/4. Furthermore,

<a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M180','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M180">View MathML</a>

We can recruit the computation of [11] in order to observe <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M181','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M181">View MathML</a>. In order to compute the bivariate GF, <a onClick="popup('http://www.almob.org/content/7/1/28/mathml/M182','MathML',630,470);return false;" target="_blank" href="http://www.almob.org/content/7/1/28/mathml/M182">View MathML</a>, we only need to replace in eq. (22) Dg(z) by Eg(zt) and the proof is completely analogous.

Competing interests

The authors declare that they have no competing interests.

Authors’ contributions

FWDH and CMR contributed equally to research and manuscript. Both authors read and approved the final manuscript.

Acknowledgements

We want to thank Thomas J.X. Li for discussions and comments. We want to thank an anonymous referee for pointing out an incorrect assumption of first version of this paper.

References

  1. Bailor MH, Sun X, Al-Hashimi HM: Topology Links RNA Secondary Structure with Global Conformation, Dynamics, and Adaptation.

    Science 2010, 327:202-206. PubMed Abstract | Publisher Full Text OpenURL

  2. Tabaska JE, Cary RB, Gabow HN, Stormo GD: An RNA folding method capable of identifying pseudoknots and base triples.

    Bioinformatics 1998, 14:691-699. PubMed Abstract | Publisher Full Text OpenURL

  3. Loebl M, Moffatt I: The chromatic polynomial of fatgraphs and its categorification.

    Adv. Math. 2008, 217:1558-1587. Publisher Full Text OpenURL

  4. Penner RC, Knudsen M, Wiuf C, Andersen JE: Fatgraph models of proteins.

    Comm Pure Appl Math 2010, 63:1249-1297. Publisher Full Text OpenURL

  5. Massey WS: Algebraic Topology: An Introduction. Springer-Veriag, New York; 1967. OpenURL

  6. Penner RC, Waterman MS: Spaces of RNA secondary structures.

    Adv. Math 1993, 101:31-49. Publisher Full Text OpenURL

  7. Penner RC: Cell decomposition and compactification of Riemann’s moduli space in decorated Teichmü, ller theory. In Woods Hole Mathematics-perspectives in math and physics. Edited by Tongring N, Penner RC. Singapore; World Scientific 2004:263-301.

    [ArXiv: math. GT/0306190]

    OpenURL

  8. Mathews D, Sabina J, Zuker M, Turner D: Expanded sequence dependence of thermodynamic parameters improves prediction of RNA secondary structure.

    J. Mol. Biol 1999, 288:911-940. PubMed Abstract | Publisher Full Text OpenURL

  9. Reidys CM, Huang FWD, Andersen JE, Penner RC, Stadler PF, Nebel ME: Topology and prediction of RNA pseudoknots.

    Bioinformatics 2011, 27:1076-1085. PubMed Abstract | Publisher Full Text OpenURL

  10. Bon M, Vernizzi G, Orland H, Zee A: Topological Classification of RNA Structures.

    J Mol Biol 2008, 379:900-911. PubMed Abstract | Publisher Full Text OpenURL

  11. Andersen JE, Penner RC, Reidys CM, Waterman MS: Topological classification and enumeration of RNA structrues by genus.

    J. Math. Biol 2011.

    [Prepreint]

    Publisher Full Text OpenURL

  12. Smith T, Waterman M: RNA secondary structure.

    Math. Biol 1978, 42:31-49. OpenURL

  13. Zuker M: On finding all suboptimal foldings of an RNA molecule.

    Science 1989, 244:48-52. PubMed Abstract | Publisher Full Text OpenURL

  14. Hofacker IL, Fontana W, Stadler PF, Bonhoeffer LS, Tacker M, Schuster P: Fast Folding and Comparison of RNA Secondary Structures.

    Monatsh Chem 1994, 125:167-188. Publisher Full Text OpenURL

  15. Rivas E, Eddy SR: A Dynamic Programming Algorithm for RNA Structure Prediction Including Pseudoknots.

    J Mol Biol 1999, 285:2053-2068. PubMed Abstract | Publisher Full Text OpenURL

  16. Uemura Y A Hasegawa, Kobayashi S, Yokomori T: Tree adjoining grammars for RNA structure prediction.

    Theor Comp Sci 1999, 210:277-303. Publisher Full Text OpenURL

  17. Akutsu T: Dynamic programming algorithms for RNA secondary structure prediction with pseudoknots.

    Discr Appl Math 2000, 104:45-62. Publisher Full Text OpenURL

  18. Lyngsø RB, Pedersen CN: RNA pseudoknot prediction in energy-based models.

    J Comp Biol 2000, 7:409-427. Publisher Full Text OpenURL

  19. Cai L, Malmberg RL, Wu Y: Stochastic modeling of RNA pseudoknotted structures: a grammatical approach.

    Bioinformatics 2003, 19 S1:i66-i73. OpenURL

  20. Dirks RM, Pierce NA: A partition function algorithm for nucleic acid secondary structure including pseudoknots.

    J Comput Chem 2003, 24:1664-1677. PubMed Abstract | Publisher Full Text OpenURL

  21. Deogun JS, Donis R, Komina O, Ma F: RNA secondary structure prediction with simple pseudoknots.

    Proceedings of the second conference on Asia-Pacific bioinformatics (APBC 2004), Australian Computer Society 2004, 239-246. OpenURL

  22. Reeder J, Giegerich R: Design, implementation and evaluation of a practical pseudoknot folding algorithm based on thermodynamics.

    BMC Bioinformatics 2004, 5:104. PubMed Abstract | BioMed Central Full Text | PubMed Central Full Text OpenURL

  23. Li H, Zhu D: A New Pseudoknots Folding Algorithm for RNA Structure Prediction. In COCOON 2005, Volume 3595. Edited by Wang L. Springer, Berlin; 2005:94-103. OpenURL

  24. Matsui H, Sato K, Sakakibara Y: Pair stochastic tree adjoining grammars for aligning and predicting pseudoknot RNA structures.

    Bioinformatics 2005, 21:2611-2617. PubMed Abstract | Publisher Full Text OpenURL

  25. Kato Y, Seki H, Kasami T: RNA Pseudoknotted Structure Prediction Using Stochastic Multiple Context-Free Grammar.

    IPSJ Digital Courier 2006, 2:655-664. OpenURL

  26. Chen HL, Condon A, Jabbari H: An O(n5) Algorithm for MFE Prediction of Kissing Hairpins and 4-Chains in Nucleic Acids.

    J Comp Biol 2009, 16:803-815. Publisher Full Text OpenURL

  27. Waterman MS: Secondary structure of single-stranded nucleic acids.

    Adv Math (Suppl Studies) 1978, 1:167-212. OpenURL

  28. Orland H, Zee A: RNA folding and large N matrix theory.

    Nuclear Physics B 2002, 620:456-476. Publisher Full Text OpenURL

  29. Wexler Y, Zilberstein C, Ziv-Ukelson M: A study of accessible motifs and RNA complexity.

    J Comput Biol 2007, 14(6):856-872. PubMed Abstract | Publisher Full Text OpenURL

  30. Salari R, Möhl M, Will S, Sahinalp C, Backofen R: Time and space efficient RNA-RNA interaction prediction via sparse folding.

    Proc of RECOMB 2010, 6044:473-490. OpenURL

  31. Backofen R, Tsur D, Zakov S, Ziv-Ukelson M: Sparse RNA folding: Time and space efficient algorithms.

    J Disc Algor 2011, 9(1):12-31. Publisher Full Text OpenURL

  32. Möhl M, Salari R, Will S, Backofen R, Sahinalp SC: Sparsification of RNA structure prediction including pseudoknots.

    Algorithms Mol Biol 2010, 5:39. PubMed Abstract | BioMed Central Full Text | PubMed Central Full Text OpenURL

  33. McCaskill JS: The equilibrium partition function and base pair binding probabilities for RNA secondary structure.

    Biopolymers 1990, 29:1105-1119. PubMed Abstract | Publisher Full Text OpenURL

  34. Dimitrieva S, Bucher P: Practicality and time complexity of a sparsified RNA folding algorithm.

    J Bioinfo Comput Biol 2012, 10(2):1241007. Publisher Full Text OpenURL

  35. Kafri Y, Mukamel D, Peliti L: Why is the DNA Denaturation Transition First Order?

    Phys Rev Lett 2000, 85:4988-4991. PubMed Abstract | Publisher Full Text OpenURL

  36. Kabakcioglu A, Stella AL: A scale-free network hidden in the collapsing polymer.

    Phys Rev E 2005, 72:055102. OpenURL

  37. Vanderzande C: Lattic models of polymers. Cambridge University Press, New York; 1998. OpenURL

  38. NCBI database [ http://www.ncbi.nlm.nih.gov/guide/dna-rna/#downloads_ webcite]

  39. Nussinov R, Piecznik G, Griggs JR, Kleitman DJ: Algorithms for Loop Matching.

    SIAM J Appl Math 1978, 35:68-82. Publisher Full Text OpenURL

  40. Nebel ME: Investigation of the Bernoulli model for RNA secondary structures.

    Bull math biol 2003, 66(5):925-964. OpenURL

  41. Zagier D: On the distribution of the number of cycles of elements in symmetric groups.

    Nieuw Arch Wisk IV 1995, 13:489-495. OpenURL

  42. Flajolet P, Sedgewick R: Analytic Combinatorics. Cambridge University Press, New York; 2009. OpenURL

  43. Han HSW, Reidys CM: The 5’-3’ distance of RNA secondary structures.

    J Comput Biol 2012, 19(7):867-878. PubMed Abstract | Publisher Full Text OpenURL