Molecular Programming Models Based on notes by Dave Doty
Outline Stable predicate decidability Stably computable predicates == semilinear predicates (and stably computable func<ons == semilinear func<ons) Time complexity via a stochas<c model
CRNs: Predicate computa<on example ini#al state: (n1, n2) (n = n1 + n2) predicate: n2 < n1-2? reac#ons: X1 + X1 Y + X1 X2 + Y U + U
CRNs: Predicate computa<on example ini#al state: (n1, n2) (n = n1 + n2) predicate: n2 < n1-2? reac#ons: X1 + X1 Y + X1 (produce n1 1 Y s) X2 + Y U + U yes-voter species Y, no-voter species X2
CRNs: Predicate computa<on example More examples: n is odd n1 < n2
CRNs: Predicate computa<on Let C = (Λ,R) be a CRN with input species X 1,, X k Some species of Λ are yes-voters Some species of Λ are no-voters An input configura#on i is one in which the counts of all but the input species is 0 We ll denote i(x i ) by n i (ini<al count of species X i ), and let n = n 1, + n 2 + + n k
CRNs: Predicate computa<on For a configura<on c, let φ(c) be 1 if c contains yes-voters but no no-voters 0 if c contains no-voters but no yes-voters undefined otherwise A configura#on o is output stable if φ(o) is defined, and for all c such that o è c, φ(o) = φ (c)
CRNs: Predicate computa<on Let ψ: N k à {0,1} be a predicate We say that C computes ψ if for all input configura<ons i, i è c implies that c è o, where o is output stable and o(y) = ψ(n 1, n 2,, n k ) Equivalently, C decides set A where (n 1, n 2,, n k ) is in A iff ψ(n 1, n 2,, n k ) = 1
CRNs: Predicate computa<on Let s be a configura<on in which only non-input species may have counts > 0 A CRN decider with ini#al context s is just like a CRN decider, except that on any input i, the ini<al configura<on is i + s
CRNs: Predicate computa<on Claim: Threshold sets and mod sets are stably decidable by CRNs Threshold set X: for some constants b, a 1, a 2,, a d Z, Mod set X: for some constants a 1, a 2,, a d Z, b, c N
CRNs: Predicate computa<on Claim: The predicates that are stably decidable by CRNs are closed under union, intersec<on and complement
CRNs: Stably decidable predicates A set A in N k is linear if there are vectors b, u 1,, u p in N k such that A set is semilinear if it is a finite union of linear sets
CRNs: Stably decidable predicates Claim: The stably decidable predicates are exactly the semilinear sets This follows from a characteriza<on (by Ginsberg and Spanier) of semilinear sets as the union, intersec<on and complement of sets that are either threshold sets or mod sets Similarly, the stably decidable func<ons are exactly the semilinear func<ons Angluin, Aspnes, Eisenstat, Stably computable predicates are semi-linear, PODC, 2006
CRNs: Stochas<c (kine<c) model
CRNs: Stochas<c (kine<c) model So far: we ve developed intui<on about what's stably decidable vs undecidable Next, we d like to dis<nguish between predicates that can, or cannot, be decided quickly For this we ll use a stochas<c model of reac<on rates (rather than a mass ac<on model)
CRNs: Stochas<c (kine<c) model Mass ac<on models (first order differen<al equa<ons) assume that evolu<on of a molecular system is con<nuous and determinis<c: not suitable for modeling small molecular quan<<es not suitable for predic<ng distribu<on of molecular counts over <me Stochas<c kine<c models avoid these piialls
CRNs: Stochas<c (kine<c) model Fix a CRN C and a configura<on c the <me for a given reac<on (r,p) is exponen<ally distributed with some rate (propensity) prop(r,p) prop(r,p) depends on volume v, molecular counts of reactants (and rate constant) we'll assume that the volume is propor<onal to the sum of counts of species in c (typically, this is Theta(n) where n is the ini<al sum of counts of input species)
CRNs: Stochas<c (kine<c) model fix a configura<on c, let v be the volume propensity of reac<on (r,p): reac<on type (r,p) propensity(r,p) Xi c(xi) Xi + Xj c(xi). c(xj) / v Xi + Xi c(xi). c(xi -1) / 2v the probability that (r,p) occurs next is prop(r,p)/ (rʹ,pʹ) prop(rʹ,pʹ) the expected #me for a reac<on is 1/ (r,p ) prop(rʹ,pʹ)
CRNs: Expected run<me analysis We'll assume that the volume is (propor<onal to) n, the sum of counts of input species, since in our examples the total number of species will always remain within a constant factor of the number of input species
Summary CRNs can stably decide exactly the semilinear predicates A stochas<c model is used to model reac<on likelihoods
Next classes Time complexity of CRN algorithms The semilinear predicates can be decided with probability 1 of correctness what if a small probability of error is allowed? Lower bounds