According to computational power and complexity, different levels of representation can be distinguished to specify CSN target functions. We introduce representation strategies from simple to extensive approaches.
The simplest way to define a target function consists of an output-table. For a finite number of discrete time points, the expected number of individuals (e.g. objects, molecules) of a declared output species is listed. In this case, the network input is given by its initial configuration in terms of a constant. Several inputs and dedicated output-tables can be combined for one CSN. The input is handled in a static manner, it cannot be modified over time.
An extension lies in the declaration of a CSN input species which can be controlled externally. This allows modifications during computational processes in terms of responding to signals. The input species and the initial network configuration encode the whole input of the system. Predefined input-output-tables considering a finite number of discrete time points provide an opportunity that is easy to use.
Introduction of don’t-care-symbols (placeholders) acting as a kind of meta symbols makes input-output-tables a more flexible tool in utilisation. Placeholders stand for arbitrary values. They do not influence the fitness evaluation. The main advantage of placeholders can be seen in the ability to define time spans wherein the network tunes to its expected behaviour.
Describing target functions using input-output-tables can require a lot of effort, especially in case of trajectory refinement and parameterised functions. Particularly, shifting, expanding, or smoothing of trajectories can be described effectively using parameterised functions. Replacing input-output-tables by explicitly defined arithmetic functions necessitates techniques for interpretation of function terms. Those techniques are established. Providing a set of basic functions and construction principles, a syntactical space for permitted functions is defined inductively. Additionally, the usage of arithmetic functions facilitates coping with oscillating behaviour.
A more general approach utilises results of arbitrary computational processes to describe target functions of CSNs. To do so, any terminating computer program can be transferred into a target CSN with specified behaviour. Since reaction networks are known to be computational complete (universal, Turing-complete), they are able to perform each computation that can be run on a Turing machine. There are well-known transformations between universal models of computation, see figure 1. Each transformation is mapped constructively to an algorithm. Among deterministic models for computation, these algorithms own a polynomial time complexity, while change between deterministic and nondeterministic paradigms causes exponential time complexity since the tree representing all computational paths has to be sequentialised.
Category theoretical descriptions are based on combinations of verifiable properties. Classes of objects with same combinations of properties form categories. Homomorphisms and homology mappings (functors) between them formalise degrees of similarity. Properties are denoted as logical expressions (terms) that can be inferred from axioms resulting from the basic elements the model is composed of. Category theoretical approaches offer the most general way to specify target functions and CSNs directly by favoured properties. Contradicting combinations of properties lead to empty classes of fulfilling target functions or CSNs. A challenge of category theoretical descriptions consists in coping with infinite numbers and uncertainties of instances belonging to one class. Furthermore, proving soundness and completeness requires a logical formalisation of all properties used within descriptions.