Abstract
We show that some natural output conventions for errorfree computation in chemical reaction networks (CRN) lead to a common level of computational expressivity. Our main results are that the standard consensusbased output convention have equivalent computational power to (1) existencebased and (2) democracybased output conventions. The CRNs using the former output convention have only “yes” voters, with the interpretation that the CRN’s output is yes if any voters are present and no otherwise. The CRNs using the latter output convention define output by majority vote among “yes” and “no” voters. Both results are proven via a generalized framework that simultaneously captures several definitions, directly inspired by a Petri net result of Esparza, Ganty, Leroux, and Majumder [CONCUR 2015]. These results support the thesis that the computational expressivity of errorfree CRNs is intrinsic, not sensitive to arbitrary definitional choices.
This is a preview of subscription content, access via your institution.
Notes
 1.
We always assume that the given CRN reactions are obeyed perfectly; even so if reactions happen to occur in a certain inauspicious order, an incorrect output might be obtained. It is beyond the scope of this paper to consider imperfect physical realizations of CRNs, in which spurious reactions outside of the desired CRN can occur (see e.g. Alistarh et al. 2017).
 2.
When the set of configurations reachable from an initial configuration is always finite (for instance, with population protocols, or more generally massconserving CRNs), then errorfreeness coincides with error probability 0. See Cummings et al. (2016) for an indepth discussion of how these notions can diverge when the set of configurations reachable from an initial configuration is infinite.
 3.
The only difference is catalysts: reactants that are also products, e.g., \(C+X \rightarrow C+Y\), are allowed in CRNs and Petri nets but not in vector addition systems. Most results for these models are insensitive to this difference.
 4.
Notation \(\varnothing\) indicates that this reaction has no products.
 5.
The definition of Chen et al. (2014a) allows only a subset of \(\varLambda\) to be voters, i.e., \(\varGamma _0 \cup \varGamma _1 \subseteq \varLambda\). This convention is more easily shown to define equivalent computational power than our main results about existential and democratic voting. See "Appendix" for details.
 6.
Indeed, the negative result of Angluin et al. (2006b) that conCRDs decide only semilinear sets is more general than stated in Theorem 2.8, applying to any reachability relation \(\Rightarrow ^*\) on \(\mathbb {N}^\varLambda\) that is reflexive, transitive, and “additive” (\({\mathbf {x}}\Rightarrow ^*{\mathbf {y}}\) implies \({\mathbf {x}}+ {\mathbf {c}}\Rightarrow ^*{\mathbf {y}}+ {\mathbf {c}}\)). Also, the negative result of Angluin et al. (2006b) implicitly assumes that the zero vector \(\mathbf {0}\) is not reachable (i.e., \(\mathsf {pre}(\mathbf {0}) = \{\mathbf {0}\}\)). This assumption is manifest for population protocols (if the population size is nonzero). For CRNs, this assumption can be readily removed; see Lemma 2.12.
 7.
\(\mathsf {pre}(\mathbf {0})\) is not semilinear for every CRN. Hopcroft and Pansiot Hopcroft and Pansiot (1979) show that \(\mathsf {post}({\mathbf {c}})\) may be nonsemilinear: they define \({\mathbf {c}}=\{1P,1Y\}\) and reactions \(P+Y \rightarrow P+X, P \rightarrow Q, Q+X \rightarrow Q+2Y, Q \rightarrow P+A\), with \(\mathsf {post}({\mathbf {c}}) = \{{\mathbf {c}}\mid 0< {\mathbf {c}}(X)+{\mathbf {c}}(Y) \le 2^{{\mathbf {c}}(A)} \text { or } 0 < 2{\mathbf {c}}(X)+{\mathbf {c}}(Y) \le 2^{{\mathbf {c}}(A)+1} \}\), which is not semilinear. To see that \(\mathsf {post}(\mathbf {0})\) can be nonsemilinear, modify this CRN by adding a fifth reaction \(\varnothing \rightarrow P+Y\), which applied to \(\mathbf {0}\) reaches \({\mathbf {c}}=\{1P,1Y\}\). Moreover, the set \(S = \{{\mathbf {x}}\mid {\mathbf {x}}(P)+{\mathbf {x}}(Q)=1\}\) is semilinear, so if \(\mathsf {post}(\mathbf {0})\) were semilinear, \(S \cap \mathsf {post}(\mathbf {0})\) would be as well. Since a second execution of \(\varnothing \rightarrow P+Y\) permanently exits S, we have that \(S \cap \mathsf {post}(\mathbf {0}) = \mathsf {post}({\mathbf {c}})\), i.e., nonsemilinear. By replacing all reactions with their reverse, we obtain a CRN such that \(\mathsf {pre}(\mathbf {0})\) is not semilinear.
 8.
While Definition 3.1 appears almost too general to be useful, Corollary 3.4 says that if \(\mathcal {I}, \mathcal {O}_0, \mathcal {O}_1\) are semilinear, then so are \(\mathcal {I}_0,\mathcal {I}_1\), which implies that any CRD definition that can be framed as such a genCRD must decide only semilinear sets.
 9.
In contrast, the proof of Angluin et al. (2006b) crucially requires the hypothesis \(\mathsf {post}(\mathcal {I}_i) \subseteq \mathsf {pre}(\mathcal {O}_i)\).
 10.
As noted, conCRDs could be defined by replacing the requirement \(\mathsf {post}(\mathcal {I}_i) \subseteq \mathsf {pre}(\mathcal {O}_i)\) with \(\mathcal {I}_i = \mathcal {I}\cap \mathsf {pre}(\mathcal {O}_i)\) and retain the same power, but for clarity we retain the original definition.
 11.
Just as for conCRDs, \(\mathsf {post}(\mathcal {O}_i) = \mathcal {O}_i\). Note that \(\mathcal {V}_1\) above is the same as \(\mathcal {L}_1\) in Definition 2.2, but \(\mathcal {L}_0 \ne \mathcal {V}_0\), since \(\mathcal {L}_1\) and \(\mathcal {L}_0\) can have nonempty intersection if there are conflicting voters present in some configuration.
References
Alistarh D, Gelashvili R (2015) Polylogarithmictime leader election in population protocols. In: ICALP 2015: proceedings of the 42nd international colloquium on automata, languages, and programming, Kyoto, Japan
Alistarh D, Aspnes J, Eisenstat D, Gelashvili R, Rivest RL (2016) Timespace tradeoffs in population protocols. Technical Report. arXiv:1602.08032
Alistarh D, Dudek B, Kosowski A, Soloveichik D, Uznański P (2017) Robust detection in leakprone population protocols. Technical Report. arXiv:1706.09937
Angluin D, Aspnes J, Diamadi Z, Fischer MJ, Peralta R (2006a) Computation in networks of passively mobile finitestate sensors. Distrib Comput 18(4):235–253
Angluin D, Aspnes J, Eisenstat D (2006b) Stably computable predicates are semilinear. In: PODC 2006: proceedings of the 25th annual ACM symposium on principles of distributed computing, New York, NY, USA. ACM Press, pp 292–299
Angluin D, Aspnes J, Eisenstat D, Ruppert E (2007) The computational power of population protocols. Distrib Comput 20(4):279–304
Angluin D, Aspnes J, Eisenstat D (2008) Fast computation by population protocols with a leader. Distrib Comput 21(3):183–199
Brijder R (2014) Output stability and semilinear sets in chemical reaction networks and deciders. In: DNA 20: proceedings of the 20th international meeting on DNA computing and molecular programming, pp 100–113
Brijder R, Doty D, Soloveichik D (2016) Robustness of expressivity in chemical reaction networks. In: Rondelez Y, Woods D (eds) DNA 22: proceedings of the 22th international meeting on DNA computing and molecular programming, vol 9818 of lecture notes in computer science. Springer, pp 52–66
Chen HL, Doty D, Soloveichik D (2014a) Deterministic function computation with chemical reaction networks. Nat Comput 13(4):517–534
Chen HL, Doty D, Soloveichik D (2014b) Rateindependent computation in continuous chemical reaction networks. In: ITCS 2014: proceedings of the 5th innovations in theoretical computer science conference, pp 313–326
Cook M, Soloveichik D, Winfree E, Bruck J (2009) Programmability of chemical reaction networks. In: Condon A, Harel D, Kok JN, Salomaa A, Winfree E (eds) Algorithmic bioprocesses, natural computing series. Springer, Berlin, pp 543–584
Cummings R, Doty D, Soloveichik D (2016) Probability 1 computation with chemical reaction networks. Nat Comput 15(2):245–261
Dickson LE (1913) Finiteness of the odd perfect and primitive abundant numbers with \(n\) distinct prime factors. Am J Math 35:413–422
Doty D, Hajiaghayi M (2015) Leaderless deterministic chemical reaction networks. Nat Comput 14(2):213–223
Doty D, Soloveichik D (2015) Stable leader election in population protocols requires linear time. In: DISC 2015: proceedings of the 29th international symposium on distributed computing, lecture notes in computer science. Springer, Berlin, pp 602–616
Esparza J, Ganty P, Leroux J, Majumdar R (2015) Verification of population protocols. In: CONCUR 2015: 26th international conference on concurrency theory, vol 42, pp 470–482
Esparza J, Ganty P, Leroux J, Majumdar R (2017) Verification of population protocols. Acta Inform 54(2):191–215
Gillespie DT (1977) Exact stochastic simulation of coupled chemical reactions. J Phys Chem 81(25):2340–2361
Ginsburg S, Spanier EH (1966) Semigroups, Presburger formulas, and languages. Pac J Math 16(2):285–296
Hopcroft JE, Pansiot JJ (1979) On the reachability problem for 5dimensional vector addition systems. Theoret Comput Sci 8:135–159
Karp RM, Miller RE (1969) Parallel program schemata. J Comput Syst Sci 3(2):147–195
Mealy GH (1955) A method for synthesizing sequential circuits. Bell Syst Tech J 34(5):1045–1079
Moore EF (1956) Gedankenexperiments on sequential machines. Autom Stud 34:129–153
Peterson JL (1977) Petri nets. ACM Comput Surv 9(3):223–252
Soloveichik D, Cook M, Winfree E, Bruck J (2008) Computation with finite stochastic chemical reaction networks. Nat Comput 7(4):615–633
Soloveichik D, Seelig G, Winfree E (2010) DNA as a universal substrate for chemical kinetics. Proc Natl Acad Sci 107(12):5393–5398
Acknowledgements
R.B. thanks Grzegorz Rozenberg for useful comments on an earlier version of this paper and for useful discussions regarding CRNs in general. D.D. thanks Ryan James for suggesting the democratic CRD model. The authors are grateful to anonymous reviewers for comments on a conference version of this paper and on an earlier version of this journal paper that have helped improve the presentation.
Author information
Affiliations
Corresponding author
Additional information
The first author is a postdoctoral fellow of the Research Foundation—Flanders (FWO). The second author was supported by NSF Grant CCF1619343, and the third author by NSF Grants CCF1618895 and CCF1652824.
Appendix: Consensusbased CRDs with nonvoters
Appendix: Consensusbased CRDs with nonvoters
A slightly modified definition of a conCRD is found in the literature (Chen et al. 2014a), in which only a subset of species is designated as voters, and nonvoting species do not affect the output. Unlike exiCRDs, which also have only a subset of voting species, these CRDs treat “yes” and “no” votes symmetrically with respect to interpreting what is the “output” of a configuration. We refer to this as a delegating CRD (in analogy to delegates who vote on behalf of others).
Definition A.1
A delegating outputstable chemical reaction decider (delCRD) is a genCRD \(\mathcal {D}=(\mathcal {N},\mathcal {I},\mathcal {O}_0,\mathcal {O}_1)\) where \(\mathcal {N}=(\varLambda ,R)\) is a CRN and there are \(\varSigma \subseteq \varLambda\) and disjoint subsets of voting species \(\varGamma _0,\varGamma _1 \subseteq \varLambda\) such that

1.
\(\mathcal {I}= \{ {\mathbf {c}}\in \mathbb {N}^\varLambda \mid {\mathbf {c}}\upharpoonright _{\varLambda \setminus \varSigma } = \mathbf {0} \} \setminus \{\mathbf {0}\}\),

2.
\(\mathcal {O}_i = \{ {\mathbf {c}}\in \mathbb {N}^\varLambda \mid \mathsf {post}({\mathbf {c}}) \subseteq \mathcal {L}_i \setminus \mathcal {L}_{1i} \}\), with \(\mathcal {L}_i = \{ {\mathbf {c}}\in \mathbb {N}^\varLambda \mid {\mathbf {c}}\upharpoonright _{\varGamma _i} \ne \mathbf {0} \}\) for \(i \in \{0,1\}\).

3.
There is a partition \(\{\mathcal {I}_0,\mathcal {I}_1\}\) of \(\mathcal {I}\) such that \(\mathsf {post}(\mathcal {I}_i) \subseteq \mathsf {pre}(\mathcal {O}_i)\) for \(i \in \{0,1\}\).
The only difference between a conCRD and a delCRD is that the latter omits the requirement that \(\varGamma _0 \cup \varGamma _1 = \varLambda\), so each conCRD is a delCRD. To show they have equivalent computational power, it then suffices to show that any delCRD can be turned into a conCRD deciding the same set. This equivalence is simpler to establish than for exiCRDs and demCRDs, using a direct simulation argument that does not require the machinery of genCRDs.
Lemma A.2
For each delCRD, there is a conCRD deciding the same set.
Proof
Let \(\mathcal {D}= (\mathcal {N},\mathcal {I},\mathcal {O}_0,\mathcal {O}_1)\) be an delCRD deciding X, with \(\mathcal {N}=(\varLambda ,R)\) and voting species \(\varGamma _0,\varGamma _1 \subseteq \varLambda\) as in Definition A.1. Let \(\Delta = \varLambda \setminus (\varGamma _0 \cup \varGamma _1)\) be the nonvoting species. Intuitively, we define a CRN \(\mathcal {N}'\) in which all nonvoting species \(S \in \Delta\) of \(\mathcal {N}\) have an additional bit that determines whether S is a 0voter or a 1voter. We add reactions so that species in \(\varGamma _i\) flip this bit to i in any molecule in \(\Delta\). More precisely, let \(\mathcal {N}'\) be obtained from \(\mathcal {N}\) by first replacing every species \(S \in \Delta\) by two species \(S_0\) and \(S_1\). Let \(\varLambda '\) be the obtained set of species of \(\mathcal {N}'\). Replace every reaction \(\alpha = ({\mathbf {r}},{\mathbf {p}})\) of \(\mathcal {N}\) by reactions \(\alpha ' = ({\mathbf {r}}',{\mathbf {p}}')\) with \({\mathbf {r}}',{\mathbf {p}}' \in \mathbb {N}^{\varLambda '}\) such that \(\pi ({\mathbf {r}}')={\mathbf {r}}\) and \(\pi ({\mathbf {p}}')={\mathbf {p}}\), where \(\pi : \varLambda ' \rightarrow \varLambda\) sends every species \(S_i\) to S and sends each \(V_i \in \varGamma _i\) to itself (and \(\pi\) is applied componentwise to vectors). Moreover, for \(i \in \{0,1\}\), add reactions \(V_i+S_{1i} \rightarrow V_i + S_i\) for all \(S \in \Delta\) and \(V_i \in \varGamma _i\).
Let \(\mathcal {D}' = (\mathcal {N}',\mathcal {I}',\mathcal {O}'_0,\mathcal {O}'_1)\), with \(\mathcal {I}', \mathcal {O}'_0\), and \(\mathcal {O}'_1\) defined as in Definition 2.2 and \(\mathcal {I}'\) defined with respect to \(\varSigma ' = \{ S_1 \mid S \in \varSigma \}\) where \(\varSigma\) corresponds to \(\mathcal {I}\). (The choice of 1 instead of 0 is arbitrary.) We observe that \(\mathcal {D}'\) is a conCRD. Indeed, once a configuration \({\mathbf {c}}\in \mathcal {O}_i\) in \(\mathcal {D}\) is reached from an input configuration, we have that for each \({\mathbf {c}}' \in \mathsf {post}({\mathbf {c}}), {\mathbf {c}}'\) contains at least one molecule of species \(V_i\) and none of \(V_{1i}\). A configuration \(\mathbf {d}\) in \(\mathcal {D}'\) corresponding to \({\mathbf {c}}\) will turn every molecule into a ivoter. In other words, we eventually reach a configuration \(\mathbf {d}' \in \mathcal {O}'_i\). Hence \(\mathcal {D}'\) is a conCRD deciding X. \(\square\)
Although the converse is trivial since, in creating a delCRD from a conCRD, one can choose the voting species \(\varGamma _0,\varGamma _1\) to be the same, in some cases it is preferable to have a strict subset. One case in particular, in which there are exactly two voting species, i.e., \(\varGamma _0 = \varGamma _1 = 1\), merits mention since this is often a convenient assumption to make about a CRD. The following lemma shows that we can make this assumption without loss of generality.
Lemma A.3
For each conCRD, there is a delCRD with exactly two voting species deciding the same set.
Proof
Let \(\mathcal {D}= (\mathcal {N},\mathcal {I},\mathcal {O}_0,\mathcal {O}_1)\) be a conCRD that decides X, with voting species \(\varGamma _0,\varGamma _1\) that partition \(\varLambda\). Let \(\mathcal {N}'\) be the CRN obtained from \(\mathcal {N}\) by adding two new species \(V_0,V_1\) to \(\mathcal {D}\) and adding, for each \(S \in \varGamma _i\), the reactions \(S \rightarrow S + V_i\) and \(S + V_{1i} \rightarrow S\). Let \(\mathcal {D}' = (\mathcal {N}',\mathcal {I}',\mathcal {O}'_0,\mathcal {O}'_1)\), with \(\mathcal {I}', \mathcal {O}'_0\), and \(\mathcal {O}'_1\) defined as in Definition A.1 and \(\mathcal {I}'\) defined with respect to the same \(\varSigma\). Indeed, once an outputstable configuration \({\mathbf {c}}\in \mathcal {O}_i\) in \(\mathcal {D}\) is reached from an input configuration, we have that for each \({\mathbf {c}}' \in \mathsf {post}({\mathbf {c}})\), every molecule of \({\mathbf {c}}'\) is an ivoter and \({\mathbf {c}}'\) has at least one molecule. A configuration \(\mathbf {d}\) in \(\mathcal {D}'\) corresponding to \({\mathbf {c}}\) may have some additional molecules of species \(V_0\) or \(V_1\). The ivoters will eventually remove all molecules of species \(V_{1i}\) and will produce molecules of species \(V_i\), but no molecules of species \(V_{1i}\). Hence, eventually we reach a configuration \(\mathbf {d}'\) with no molecules of species \(V_{1i}\) and at least one molecule of species \(V_i\). We have that each configuration in \(\mathsf {post}(\mathbf {d}')\) has this property. In other words, \(\mathbf {d}' \in \mathcal {O}'_i\). Hence \(\mathcal {D}'\) is a delCRD. \(\square\)
Rights and permissions
About this article
Cite this article
Brijder, R., Doty, D. & Soloveichik, D. Democratic, existential, and consensusbased output conventions in stable computation by chemical reaction networks. Nat Comput 17, 97–108 (2018). https://doi.org/10.1007/s1104701796488
Published:
Issue Date:
Keywords
 Population protocols
 Chemical reaction networks
 Stable computation
 Semilinear predicates