Team:SEU/Model





Model

In this part, we provide our computation model in chemical reactions and prove the validity via kinetic analysis. The whole proof is based on mass action kinetics. The corresponding DNA strand displacement reaction implementation is given as well. As only addition, subtraction and multiplication are required in our project, we only provide the implementation of such computation.

Addition:

\(A_1 \xrightarrow{k_1} O,\quad A_2 \xrightarrow{k_2} O\)

Proof:

\(\dfrac{d [A_i](t)}{d t}=-k_i[A_i](t)\) \(\Rightarrow [A_i](t)=[A_i](0)e^{-k_it}, \) \(\dfrac{d [O](t)}{d t}=\sum_{i=1}^2 k_i[A_i](t)\) \(\Rightarrow [O](\infty)=\int_0^\infty \sum_{i=1}^2 k_i[A_i](t)dt = [A_1](0)/k_1+[A_2](0)/k_2.\) If \(k_1\approx k_2\), then addition is successfully implemented.

The DNA strand displacement implementation:

Subtraction:

\(A+B \xrightarrow{k_1} \phi\)

Proof:

It is identical with [2]. Apparently, \([A](t)=[B](t)+\Delta \).
If \(\Delta \neq 0\), \(\dfrac{d [A](t)}{d t}=-[A](t)([A](t)-\Delta)\) \(\Rightarrow [A](t)=\dfrac{[A](0)\Delta}{-[A](0)+[A](0)e^{\Delta t}+\Delta e^{\Delta t}} (\Delta \neq 0).\) If \(\Delta > 0\), \([A](\infty)=\Delta\). Otherwise \([A](\infty)=0\).
If \(\Delta =0\), \([A](t)=\dfrac{[A](0)}{1+[A](0)t}\). \([A](\infty)=0\). Hence substraction is implemented.

The DNA strand displacement implementation:

Multiplication:

\(\alpha \xrightarrow{k_1} \phi, A+B+\alpha \xrightarrow{k_2} A+B+\alpha+C\)

Proof:

\(\dfrac{d [\alpha](t)}{d t}=-k_1[\alpha](t)\) \(\Rightarrow [\alpha](t)=[\alpha](0)e^{-k_1t},\) \(\dfrac{d [A](t)}{d t}=\dfrac{d [B](t)}{d t}=0, \dfrac{d [C](t)}{d t}=k_2[A](t)[B](t)[\alpha](t)\) \(\Rightarrow [C](\infty)=\int_0^\infty [A](0)[B](0)[\alpha](t)=k_2/k_1[\alpha](0)[A](0)[B](0)\). Hence multiplication is implemented.

The DNA strand displacement implementation:

References

[1]C. Fang, Z. Shen, Z. Zhang, X. You and C. Zhang, "Synthesizing a Neuron Using Chemical Reactions," 2018 IEEE International Workshop on Signal Processing Systems (SiPS), Cape Town, 2018, pp. 187-192.

[2]M. Vasic, D. Soloveichik, S. Khurshid, "CRN++: Molecular Programming Language." arXiv preprint arXiv:1809.07430.