编辑
2023-09-25
图论及组合数学
00
请注意,本文编写于 451 天前,最后修改于 439 天前,其中某些信息可能已经过时。

目录

一、RNA二级结构的表示:
二、RNA二级结构的数学定义:
三、n长的RNA的二级结构的种类:
四、RNA二级结构的各类子结构的数学定义:

RNA(核糖核苷酸组成的长链状分子)是基因表达中不可或缺的一环。RNA的一级结构表现为核糖核苷酸的排列,其中包含4种碱基:A(腺嘌呤)G(鸟嘌呤)C(胞嘧啶)U(尿嘧啶)。RNA的二级结构则是在一级结构的基础上,通过碱基配对产生折叠,形成多种多样的二级结构,使得RNA实现多种多样的功能。本文重点关注RNA的二级结构,并以此为背景,引入几个组合计数的问题。

一、RNA二级结构的表示:

  1. 格路径表示(lattice path):
image
  1. 山形表示:(对应格路径表示)
image
  1. 简图表示(diagram):
image
  1. 圆圈表示:在简图表示的基础上,将首尾碱基对相连,形成一个圆圈。
image
  1. 文法表示(grammar):括弧表示碱基有配对。
image
  1. 树表示:多添加一条弧(0,32)作为根点,然后以弧作为内点,以未配对碱基作为叶子点。
image

二、RNA二级结构的数学定义:

(一)nn长的RNA二级结构可表示为一个点的标号为[n][n]的简单图,并且边集满足:

  1. (i,j)E(i,j)\in E, 则ij2|i-j| \ge 2;

  2. (i,j)E(i,j)\in E, 且(k,l)E(k,l)\in E, 其中i<ji<j, k<lk<l, [i,j][i,j][k,l][k,l]的交集非空, 则要么[ij][k,l][i-j] \subset [k,l], 要么[k,l][ij][k,l] \subset [i-j].

(二)By Waterman: [Secondary Structure of Single-Stranded Nucleic Acids] RNA的二级结构可表示为一个含nn“带标签”点的图,其邻接矩阵满足:

  1. ai,i+1=1,1in1.a_{i,i+1}=1, 1\leq i \leq n-1.
  2. 对任意i, i,\ 至多存在一个整数ki1,i+1k \neq i-1,i+1, 使得aik=1a_{ik}=1;
  3. aij=akl=1,i<k<la_{ij}=a_{kl}=1,i<k<l, 则i<l<ji<l<j.

称边(i,k)(i,k), ik1|i-k|\neq 1为一个基对。点 ii 只与 i1i-1i+1i+1 相连的称为是“未配对的”。点 ii 被“内含于”基对(k,l)(k,l), 若k<i<lk<i<l. 特别地,若不存在基对(p,q)(p,q), 使得k<p<i<qk<p<i<q, 则称ii是唯一内含于基对(k,l)(k,l)的。

(三)By Tinoco et.al: [RNA Secondary Structure: A Complete Mathematical Analysis] RNA的二级结构可以表示为一个配对矩阵P=pijP=(p_{ij}), 对于给定的核苷酸序列s=s1s2sns=s_1s_2\dots s_n, pij=1p_{ij}=1当且仅当sis_isjs_j配对,否则pij=0p_{ij}=0. 除此之外,需要满足的性质有:1. 配对矩阵的每一行每一列都至多有一个元素为1;2. 若sis_isjs_j配对,则sk(i<k<l)s_k(i<k<l)只能与iijj之间的点配对。

三、n长的RNA的二级结构的种类:

命题1.R(n)R(n)表示长为 nn 的RNA的二级结构的数目,则:

R(n+1)=R(n)+j=1n1R(j1)R(nj)=R(n)+j=0n2R(j)R(nj1)R(n+1)=R(n)+\sum\limits_{j=1}^{n-1}R(j-1)R(n-j)=R(n)+\sum\limits_{j=0}^{n-2}R(j)R(n-j-1), 其中n2, R(0)=R(1)=R(2)n\ge2,\ R(0)=R(1)=R(2).

证明:n=1,2n=1,2时,结果显然成立。假设对于R(k),1knR(k),1\leq k\leq n, 这一命题都成立,则对于新增的第n+1n+1个碱基:

  1. 它不与前nn个碱基中的任何一个配对:此时的方案数为R(n)R(n);

  2. 它与前面第jj个碱基配对:首先按照定义,第jj个碱基不能与其余的碱基再进行配对,由于不能交叉配对,第j+1j+1个碱基只能与第j+3j+3个到第nn个碱基配对。这样一来,整个RNA链被分成了两个独立的部分:11(j1)(j-1)(j+1)(j+1)nn. 根据乘法原理,此时的方案数为:j=1n1R(j1)R(nj)1\sum\limits_{j=1}^{n-1}R(j-1)R(n-j)·1.

再由加法原理,相加即证毕。

易得:R(n+1)R(n)R(n+1)\ge R(n), 所以

R(n+1)R(n)+j=0n2R(j)R(n1j)=R(n)+R(n1)+j=1n2R(j)R(n1j)=R(n)+R(n1)+j=0n3R(j+1)R(nj2)R(n)+R(n1)+j=0n3R(j)R(nj2)=2R(n)R(n+1)\ge R(n)+\sum\limits_{j=0}^{n-2}R(j)R(n-1-j)=R(n)+R(n-1)+\sum\limits_{j=1}^{n-2}R(j)R(n-1-j)=R(n)+R(n-1)+\sum\limits_{j=0}^{n-3}R(j+1)R(n-j-2)\ge R(n)+R(n-1)+\sum\limits_{j=0}^{n-3}R(j)R(n-j-2)=2R(n)

R(n)2n2R(n)\ge 2^{n-2}.

更进一步地,定义生成函数:

ϕ(x)=n=0+R(n)xn=1+x+n=2+R(n)xn\phi(x)=\sum_{n=0}^{+\infty}R(n)x^{n}=1+x+\sum_{n=2}^{+\infty}R(n)x^{n},

则由上面所求的递推关系:

x2ϕ2(x)+(x1x2)ϕ(x)+1=0x^2\phi^2(x)+(x-1-x^2)\phi(x)+1=0.

命题 2. nn长的,最小弧长为mm的RNA二级结构的种类:

Rm(n)=i=1m+1Rm(ni)+i=0n2Rm(i)Rm(n2i),n>mR^m(n)=\sum_{i=1}^{m+1}R^m(n-i)+\sum_{i=0}^{n-2}R^m(i)R^m(n-2-i),n> m

其中Rm(0)=Rm(1)==Rm(m1)=0,Rm(m)=1R^m(0)=R^m(1)=\dots=R^m(m-1)=0,R^m(m)=1.

证明:n=1,2,,m1n=1,2,\dots,m-1时,易得Rm(n)=1R^m(n)=1; 假设对于Rm(k),1kn1R^m(k),1\leq k\leq n-1, 这一命题都成立,则对于新增的第nn个碱基:

  1. 它不与前n1n-1个碱基中的任何一个配对:方案数为Rm(n1)R^m(n-1);

  2. 它与前面第jj个碱基配对:首先按照定义,第jj个碱基不能与其余的碱基再进行配对,由于不能交叉配对,第j+1j+1个碱基只能与第j+m+1j+m+1个到第n1n-1个碱基配对。这样一来,整个RNA链被分成了两个独立的部分:11(j1)(j-1)(j+1)(j+1)n1n-1.

    1. 1jm1\leq j\leq m: 只在[j+1,n1][j+1,n-1]上形成了满足条件的二级结构,则此类二级结构数为Rm(nj1)R^m(n-j-1);

    2. m+1jnmm+1 \leq j\leq n-m: 在[j+1,n1][j+1,n-1][1,j1][1,j-1]上都能形成满足条件的二级结构,则此类二级结构数为Rm(nj1)Rm(j1)R^m(n-j-1)R^m(j-1);

    3. nm+1jn1n-m+1\leq j \leq n-1: 只在[1,j1][1,j-1]上形成了满足条件的二级结构,则此类二级结构数为Rm(j1)R^m(j-1);

根据加法原理,总方案数为: Rm(n)=i=1m+1Rm(ni)+i=0n2Rm(i)Rm(n2i),n>mR^m(n)=\sum_{i=1}^{m+1}R^m(n-i)+\sum_{i=0}^{n-2}R^m(i)R^m(n-2-i),n> m

四、RNA二级结构的各类子结构的数学定义:

  1. Helix(螺旋): RNA二级结构中的螺旋是相互嵌套的最大弧集,其左端和右端分别是连续的。这个弧集的大小称为螺旋的长度。例如(5,13)(6,12)(5,13)(6,12)就构成了一个螺旋。注意:螺旋可以只包含一条弧。

  2. stack:包含基对(pk,q+k),(pk+1,q+k1),,(p,q)(p-k,q+k),(p-k+1,q+k-1),\dots,(p,q), 使得(pk1,q+k+1),(p+1,q1)(p-k-1,q+k+1), (p+1,q-1)中至少有一个未配对。称k+1k+1为stack的长度,(pk,q+k)(p-k,q+k)是最终的基对。

  3. external vertex:不属于任何loop的未配对的点。相邻的external vertex的集合称为是external element. 若其包含点11nn, 则其为自由端(free end),否则称为joint.

  4. loop(在邻接矩阵的定义下): 若i+1,i+2,,j1i+1,i+2,\dots,j-1都没被配对,而aij=1a_{ij}=1, 则称结构si+1si+2sj1s_{i+1}s_{i+2}\dots s_{j-1}为loop.

  5. bulge(在邻接矩阵的定义下):若i+1,i+2,,j1i+1,i+2,\dots,j-1都没被配对,而i,ji,j均配对,但aij1a_{ij}\neq 1, 则称结构si+1si+2sj1s_{i+1}s_{i+2}\dots s_{j-1}为bulge.

  6. interior loop:由两个bulge组成的结构si+1si+2sj1s_{i+1}s_{i+2}\dots s_{j-1}sk+1sk+2sl1,i<j<k<ls_{k+1}s_{k+2}\dots s_{l-1}, i<j<k<l, 且ail=1,ajk=1a_{il}=1,a_{jk}=1.

  7. join:特殊的bulgesisi+1sjs_{i}s_{i+1}\dots s_{j}, 使得若akl=1,k<ia_{kl}=1,k<i, 则lil\leq i;若akl=1,k>ja_{kl}=1,k>j, 则ljl\ge j.

  8. tail:结构s1s2sjs_1s_2\dots s_j, 其中1,2,,j1,2,\dots,j未配对,而j+1j+1配对。

  9. ladder:两个序列组成的结构:si+1si+2si+js_{i+1}s_{i+2}\dots s_{i+j}sk+1sk+2sk+j,i+j+1<k,ai+l,k+jl+1=1s_{k+1}s_{k+2}\dots s_{k+j}, i+j+1<k,a_{i+l,k+j-l+1}=1, 对于任何一个1lj1\leq l\leq j都成立,且ai,k+j+1=ai+j+1,k=0a_{i,k+j+1}=a_{i+j+1,k}=0; 若i+j+3=k+1i+j+3=k+1, 则最后一个约束可以忽略。

  10. hairpin:最长的序列si+1si+2sj1s_{i+1}s_{i+2}\dots s_{j-1}恰好只含一个loop使得ai+1,j1=1a_{i+1,j-1}=1, 且ai,j=0a_{i,j}=0

本文作者:不愿透露姓名的研究牲

本文链接:

版权声明:禁止转载