Nussinov Algorithm and its associated SCFG

Nussinov Algorithm for maximum number of possible base-pairs

Initialization:
for i=1 to L
M(i,i)=0,


Recurtion:
for =1 to L1, for i=1 to L, j=i+
M(i,j)=max[M(i+1,j)M(i,j1)M(i+1,j1)+δ(i,j)maxhM(i,h)+M(h+1,j)

Traceback of Nussinov Algorithm

初期化: (1,L)をスタックにpushする.
再帰: スタックが空になるまで繰り返す.
— pop (i,j)
— if i>=j continue;
— else if γ(i+1,j)=γ(i,j)(i+1,j) を push;
— else if γ(i,j1)=γ(i,j)(i,j1) を push;
— else if γ(i+1,j1)+δi,j=γ(i,j),
—— 塩基対(i,j)を記録.
—— (i+1,j1) を push
else for k=i+1 to j1: if γ(i,k)+γ(k+1,j)=γ(i,j):
—— (k+1,j) を push
—— (i,k) を push
—— break

Production rules of the SCFG associated to the above Nassinov Algorithm

MxM:P(MxM),x{a,c,g,u}MMx:P(MMx),x{a,c,g,u}MxMˉx:P(MxMˉx),(x,ˉx){(a,u),(c,g),(g,c),(u,a)}MMM:P(MMM)Mx:P(Mx),x{a,c,g,u}

CYK Algorithm of the SCFG

Initialization:
for i=1 to L1
γ(i,i,M)=P(Mxi)


Recurtion:
for =1 to L1, for i=1 to L, j=i+
γ(i,j,M)=max[γ(i+1,j,M)+logP(MxiM)γ(i,j1,M)+logP(MMxj)γ(i+1,j1,M)+logP(MxiMxj)maxhγ(i,h)+γ(h+1,j)+logP(MMM)

Inside algorithm of the SCFG

Initialization:
for i=1 to L1
α(i,i,M)=P(Mxi)


Recurtion:
for =1 to L1, for i=1 to L, j=i+
α(i,j,M)=[α(i+1,j,M)P(MxiM)+α(i,j1,M)P(MMxj)+α(i+1,j1,M)P(MxiMxj)+L1h=1α(i,h,M)α(h+1,j,M)P(MMM)

Outside Algorithm of the SCFG

Initialization:
β(1,L,M)=1


Recurtion:
for =L1 to 1, for i=1 to L, j=i+
β(i,j,M)=[β(i1,j,M)P(Mxi1M)+β(i,j+1,M)P(MMxj+1)+β(i1,j+1,M)P(Mxi1Mxj+1)+i1h=1α(h,i1,M)β(h,j,M)P(MMM)+Lh=j+1α(j+1,h,M)β(i,h,M)P(MMM)

Partition Function on number of base-pairs

2次構造σに含まれる塩基対の数Nσを2次構造σの自由エネルギーの符号を反転した値の乱暴な近似と考えると、2次構造σの熱力学的確率は以下のボルツマン分布で与えられる。
P(σ|x)=1ZN(x,σ)eNσ/kNTZN(x,σ)=σS(x)eNσ/kNT


このボルツマン分布に対応するSCFGがどのようになるか、考察せよ