Difference between revisions of "Team:SEU/Model"

Line 28: Line 28:
 
                                       <div>
 
                                       <div>
 
                                           <h2>Model</h2>
 
                                           <h2>Model</h2>
                                           <h3>Computation method</h3>
+
                                           <p>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. </p>
 +
                                          <!-- <h3>Computation method</h3> -->
 
                                           <h4>Addition:</h4>  
 
                                           <h4>Addition:</h4>  
 
                                           <p>\(A_1 \xrightarrow{k_1} O,\quad A_2 \xrightarrow{k_2} O\)</p>
 
                                           <p>\(A_1 \xrightarrow{k_1} O,\quad A_2 \xrightarrow{k_2} O\)</p>
Line 36: Line 37:
 
                                           <h4>Subtraction:</h4>
 
                                           <h4>Subtraction:</h4>
 
                                           <p style="font-size=1px">\(A+B \xrightarrow{k_1} \phi\)</p>
 
                                           <p style="font-size=1px">\(A+B \xrightarrow{k_1} \phi\)</p>
                                           <h5> Proof:</h5> <p>It is identical with [1]. Apparently, \([A](t)=[B](t)+\Delta \). <br>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\).
+
                                           <h5> Proof:</h5> <p>It is identical with [2]. Apparently, \([A](t)=[B](t)+\Delta \). <br>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\).
 
                                           <br>If \(\Delta =0\), \([A](t)=\dfrac{[A](0)}{1+[A](0)t}\). \([A](\infty)=0\). Hence substraction is implemented.</p>
 
                                           <br>If \(\Delta =0\), \([A](t)=\dfrac{[A](0)}{1+[A](0)t}\). \([A](\infty)=0\). Hence substraction is implemented.</p>
 
                                           <p style="font-size=18px">The DNA strand displacement implementation:</p>
 
                                           <p style="font-size=18px">The DNA strand displacement implementation:</p>
Line 47: Line 48:
 
                                           <h3>References</h3>
 
                                           <h3>References</h3>
 
                                           <p>[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.</p>
 
                                           <p>[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.</p>
                                           <p>[2]M. Vasic, D. Soloveichik, S. Khurshid, "CRN++: Molecular Programming Language." arXiv preprint arXiv 1809.07430.</p>
+
                                           <p>[2]M. Vasic, D. Soloveichik, S. Khurshid, "CRN++: Molecular Programming Language." arXiv preprint arXiv:1809.07430.</p>
 
                                                                              
 
                                                                              
 
                                       </div>
 
                                       </div>

Revision as of 11:54, 2 October 2019





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.