The modelling and synthesis of chemical reaction networks
Keywords: Chemical Reaction Networks
SMT-ODE solving
Biochemical Controllers

Biochemical systems have been influenced, altered, and engineered to produce a myriad of complex behaviours that have far reaching consequences in the realization of computational models and in applications such as pharmaceuticals and cell networks. However, unlike producing desired behaviours in digital systems, the mechanics behind biochemical systems are complex and poorly understood. In particular, gaps in our understanding of the behaviour of cell mechanics or synthetic molecular systems have hindered the production of biochemical circuits that model or enact certain behaviours.
This thesis addresses these issues by accepting the inherent uncertainty and unknowns within biochemical systems, and exploring ways to produce desired behaviours despite these difficulties. This is done through the use of deterministic and stochastic interpretations of Chemical Reaction Networks (CRNs) to describe these biochemical systems. The first part of this thesis considers parameter synthesis of CRNs. A novel sketching language for CRNs that allows for both discrete and continuous parameter declarations is proposed. Often it is not only the correctness of synthesized programs that is important, but also their optimality with respect to a given cost function. Based on a cost function given by the structure of a CRN, there is an attempt to reduce the cost in order to produce a CRN optimal for the given cost function. Synthesis of complex CRN behaviour without structural constraints is seen as intractable, and therefore Syntax-Guided Synthesis (SyGuS) is employed to constrain the search space and allow us to synthesize behaviour of non-linear Ordinary Differential Equations (ODEs). Algorithms and case studies aimed at finding an optimal CRN are provided. Satisfiability Modulo Theory (SMT-ODE) solvers are employed to solve parametric ODEs constructed from a combination of the Linear Noise Approximation dynamics and sketching language choice variables. In our tool, named CRNSketch, a generalization of the CRN synthesis problem to include non mass-action kinetics as well as arbitrary continuous functions as inputs to a CRN, is successfully demonstrated. Biologically motivated case studies are provided highlighting the need for the tool, as well as our parameter and structural synthesis methods in general. An evaluation is provided on the limitations and tractability of our parameter synthesis approach.
The second part of this thesis addresses the problem of control of CRNs, because of the inherent unknowns in biochemical systems. Using a reference CRN which exhibits a desired continuous behaviour, the principles of Proportional-Integral-Derivative (PID) control are employed, in an attempt to control the behaviour of any arbitrary CRN. That is, given an input signal, represented by the concentration level of a species, a series of CRNs are constructed that in turn attempt to control the output concentration of an arbitrary CRN, such that the plant CRN exhibits the behaviour of the reference signal. A novel CRN implementation of a derivative component is provided, and proofs and simulation of its operation are given. This novel derivative component is used as a building block for a PID controller, enabling us to compare this with an existing PI controller, and show how negative feedback with a PID controller can be implemented in CRNs. The effectiveness of this architecture on a microRNA regulated gene expression example is demonstrated, where the time evolution of a protein is controlled by acting on the expression of mRNA and microRNA using a CRN reference signal provided by our synthesis method.