An Open Petri Net Implementation of Gene Regulatory Networks
AAn Open Petri Net Implementationof Gene Regulatory Networks
Yanying Wu ∗ Centre for Neural Circuits and Behaviour, University of Oxford, UK Department of Physiology, Anatomy and Genetics, University of Oxford, UK
July 24, 2019
Abstract
Gene regulatory network (GRN) plays a central role in system biologyand genomics. It provides a promising way to model and study complexbiological processes. Several computational methods have been developedfor the construction and analysis of GRN. In particular, Petri net and itsvariants were introduced for GRN years ago. On the other hand, Petri nettheory itself has been rapidly advanced recently. Especially noteworthy isthe combination or treatment of Petri net with the mathematical frame-work of category theory (categorization), which endows Petri net with thepower of abstraction and composability. Open Petri net is a state-of-artimplementation of such ”categorized” Petri nets. Applying open Petri netto GRN may potentially facilitate the modeling of large scale GRNs. Inthis manuscript, we took a shallow step towards that direction. ∗ [email protected] a r X i v : . [ q - b i o . M N ] J u l Introduction
Human genome contains about 20,000 genes, and those genes undergo diverseexpression dynamics in different tissues throughout a life from its developmentto ageing. In a given cell of any tissue, tens of thousands of various geneproducts interact with one another, forming an incredibly complicated network,to support certain living processes. Such a network is often referred to as thegene regulatory network (GRN), and it has been a hot research topic for decadesin the fields of genomics and system biology.Many computational approaches have been developed to model GRN, suchas information theory models, boolean networks, differential equations models,Bayesian networks, Petri nets and so on [de Jong, 2002, Delgado and G´omez-Vela, 2018, Steggles et al., 2007]. Among them, Petri nets present one of themost promising tools, as Petri nets not only excel in modelling concurrent dy-namic systems, but also have a wide application community as well as a strongtheoretical support [Reisig, 1985,Murata, 1989,Steggles et al., 2007,Bordon andMraz, 2012].Standard Petri nets are able to specify clearly the structure and behaviourof a particular process. However, it’s not convenient to compose larger netsfrom smaller ones as Petri nets suffer from a lack of compositionality and ab-straction [Ermel and Martini, 1996]. While complex systems such as GRN oftenneed to abstract from internal transitions and focus on the communication be-haviour between processes so that a holistic picture of the whole system couldbe captured. To address the question, putting Petri nets into the frameworkof category theory provides an optimal strategy. In fact, this line of researchhas been explored since 1990 and reached its climax in the recent years withthe introduction and optimization of open Petri nets [Meseguer and Montanari,1990,Ermel and Martini, 1996,BALDAN et al., 2005,Rathke et al., 2014,Baldanet al., 2015, Baez and Pollard, 2017, Baez and Master, 2018].Standard Petri nets and their variants (except open Petri nets) have beenemployed to model GRN for a while [Chaouiya et al., 2006, Chaouiya, 2007,Chaouiya et al., 2008,Steggles et al., 2007,Ruths et al., 2008,Bordon and Mraz,2012, Liu and Heiner, 2014, Liu et al., 2017a, Hamed, 2018]. On the otherhand, open Petri nets have been successfully applied in modelling electricalcircuits [Baez and Fong, 2015], Markov processes [Baez et al., 2015], chemi-cal reaction networks [Baez and Pollard, 2017], etc. However, open Petri netshaven’t been used for GRN so far. Therefore, in this work we attempt to explorethe possibility and potential of an open Petri nets implementation for GRNs,with the motivation of bringing a better composability to GRN modelling.
In order to support normal cellular functions of a living organism, genes in-teract with each other to carry out many crucial molecular processed. Theseinteractions usually involve a regulation of the gene expression. If a change inthe expression of gene X could induce a change in the expression of gene Y, wesay that gene X regulates gene Y. This regulation can be either up-regulation ordown-regulation, and we call it activation or inhibition, respectively. Together,those genes and their regulations form a complex network which is referred to1s gene regulatory network (GRN) [Chai et al., 2014].GRN could be inferred from gene expression data through computationalapproaches such as ordinary differential equation, Boolean network, Bayesiannetwork, etc. Each of those methods has its pro and con. Ordinary differentialequation (ODE), as its name suggests, uses continuous variables to representthe concentrations of mRNA or protein molecules (the products of gene expres-sion), and it uses differential equations to model the dynamics of concentrationchanges. Therefore, ODE suits best for an accurate analysis of non-linear fea-tures of GRN. However, it’s relatively complex and the parameters for the equa-tions are quite often unavailable in the biological reality. On the other hand,Boolean network uses boolean values to represent gene expression level as wellas the relationships between genes. In a Boolean network, a gene is either onor off and the interaction between any pairs of genes is either active or inactive.Boolean network has the advantage of simplicity, while it suffers an inability tocapture many important details of GRN. Probabilistic Boolean network is anextension of Boolean network which allows more than one transition Booleanfunctions and each of them is randomly selected during state transitions toupdate the target gene [Chai et al., 2014].A more sophisticated probabilistic GRN model is Bayesian network. Bayesiannetwork combines probability and graph theory to model the qualitative prop-erties of GRN. It depicts the GRN as a directed acyclic graph (DAG) G=(X,A),X contains a set of nodes { x , ..., x n } which represent the gene variables, andA contains the directed edges which represents the probabilistic dependence in-teractions among genes. Bayesian network carries out the inference of networkstructure and parameters through belief propagation, which takes both the priorbiological knowledge and the expression data into account. Bayesian networkhas been successfully applied to improve the quality of predicted GRN [Chaiet al., 2014]. Petri nets provide a complementary network modelling to the above mentionedtraditional methods. Petri nets were introduced by C.A. Petri in 1962 to modeldistributed and concurrent systems [Petri, 1962]. Petri nets combine a welldefined mathematical theory with a graphical representation; the former allowsa precise analysis of the system behaviour, while the latter provides an intuitivevisualization of the structure and state changes of the system. Due to theseadvantages, Petri nets have been successfully applied in modelling many kindsof dynamic systems such as computer networks, communication systems, logisticnetworks, etc. [Liu and Heiner, 2014]By definition, a Petri net is a bipartite directed graph containing places andtransitions connected by directed arcs; arcs can only connect place to transitionand vice versa. Figure 1 shows a simple Petri net with 2 places (P1, P2) andone transition (T1).A place can hold tokens (in Figure 1, P1 holds one token as denoted by ared dot inside the circle), and an arc has its capacity (1 by default, otherwisethe capacity is marked on the arc), and transitions have neither capacity, nor2igure 1: A simple Petri nettokens. The marking (or state) of a Petri net is its token assignments of places.When the number of tokens in each input place is equal or larger than the arcweight (capacity), a transition is able to fire. When a transition fires, the tokensin input places are transferred to the output places, resulting in a new markingof the net. Figure 2 illustrates the firing of a transition, which reveals that thefiring of a transition removes tokens from its input places and add tokens to itsoutput places according to the capacity of the corresponding arcs. Note thattokens may disappear or appear going through a transition [Petri, 1966].Figure 2: Firing of a transitionAs the theory and methodology of Petri nets have been developed for morethan 50 years, using Petri nets to model GRN will enrich our ability to analysethe dynamic properties of GRN. Several attempts have been made to modelGRN using Petri nets [Chaouiya et al., 2004, Chaouiya et al., 2006, Chaouiya,2007, Chaouiya et al., 2008, Liu and Heiner, 2014, Liu et al., 2017a, Liu et al.,2017d, Liu et al., 2017b, Liu et al., 2017c, Liu et al., 2018a, Liu and Chen, 2018,Liu et al., 2018b]. Here we adopt a simple model based on [Chaouiya et al.,2004,Dragan Bosnacki, 2004] and [Ruths et al., 2008]. In this model we draw anarrow from gene g2 to gene g1 to represent that g2 activates g1 (Figure 3a), anda blunt-end line from g2 to g1 will represent the inhibition of g1 by g2 (Figure4a). For these two elementary GRNs we may construct the corresponding Petrinets, where genes are modelled as places, and the interaction between two genesis modelled by a transition together with directed arcs that connect the placesand transitions.In both activation and inhibition cases, g2 may or may not be consumed.We use double sided arrow to indicate that g2 activates g1 without itself being3igure 3: Activation of gene g1 by g2Figure 4: Inhibition of gene g1 by g2consumed (Figure 3c and 4c), and one sided arrow otherwise (Figure 3b and 4b).For activation, we draw an arrow pointing towards g1 from transition T g ,g ,while for inhibition, we draw the arrow the other way round. Figure 3 andFigure 4 also describe what happens when T g ,g fires. For example, in Figure3b, before firing there is a token in g2 but none in g1, while after firing the tokenin g2 is consumed and g1 is activated as indicated by having a token in it.Once we have these basic building blocks, we are able to convert a normalGRN into its corresponding Petri net. For example, if we have a GRN as shownin Figure 5a, then the Petri net for it will look like that in Figure 5b.4igure 5: A simple GRN and its Petri net representationNote that in this GRN gene A activates gene B and C, gene B activates geneD, and gene C inhibits gene D while activates gene E. Except in the case ofC activating E, where C is consumed, all other transitions don’t consume thesource gene.Now that we obtain the Petri net modelling of a GRN, we shall be able tosimulate and analyse the dynamics of the GRN [Ruths et al., 2008]. Unfortunately, standard Petri net lacks proper mechanisms for composition andabstraction, which makes it inadequate to model large or multi-scale GRN. Theproblem can be solved by viewing Petri net from the category theory perspective,i.e., treating Petri nets as monoids ( [Meseguer and Montanari, 1990,Ermel andMartini, 1996]). In order to do that, we need to introduce two definitions,following Meseguer and Montanari’s work:(1) A standard Petri net is a triple < S, T, F > , where S is a set of places,T is a set of transitions, and F : ( S × T ) + ( T × S ) → N is a multiset whichdescribes the connections between places and transitions. Here N representsnatural numbers, × is the Cartesian product of sets, and + denotes the disjointunion of sets.(2) A graph G is a set T of arcs, a set V of nodes and two functions ∂ and ∂ from T to V ( ∂ , ∂ : T → V ), called source and target, respectively. A graphmorphism from G to G’ is a pair of functions < f, g >, f : T → T (cid:48) , g : V → V (cid:48) such that: g ◦ ∂ = ∂ (cid:48) ◦ f and g ◦ ∂ = ∂ (cid:48) ◦ f .In support of their motto ”Petri Nets Are Monoids”, Meseguer and Mon-tanani argued that Petri nets can be viewed as ordinary, directed graphs equippedwith parallel and sequential composition of transitions [Meseguer and Monta-nari, 1990]. Accordingly, they provided a new definition of Petri net:5 Petri net is a graph where the arcs in set are called transitions and wherethe set of nodes is the free commutative monoid S ⊕ generated by the set ofplaces S. The elements of S ⊕ has the form n a ⊕ n a ⊕ ...n m a m , where a i ∈ S, n i ∈ N , i ∈ ..m , and m is the number of elements in S. The sourceand target functions go from T to S ⊕ ( ∂ , ∂ : T → S ⊕ ). And a Petri net mor-phism < f, g > is similar to a graph morphism, except that g is now a monoidhomomorphism, which respects the monoid structure of S ⊕ .This definition allows a different representation of the same standard Petrinet. For example, if we have a Petri net < S, T, F > as shown in Figure 6 where S = { g , g , g } , T = { t } , F ( g , t ) = 1 , F ( g , t ) = 1 , F ( t, g ) = 1 , F ( t, g ) = 1,then we can represent it as S ⊕ = { g , g , g } ⊕ , T = { t } and ∂ ( t ) = g + g , ∂ ( t ) = g + g . Figure 6: A simple GRN modelled in Petri netUnder such a representation, sequential and parallel compositions of Petrinets based on transitions could be obtained in a straightforward way. For exam-ple, a sequential composition of two Petri nets is illustrated in Figure 7, wherethe Petri net in Figure 7c is a composition of the Petri net in Figure 7b afterthat in Figure 7a.Figure 7: Sequential composition of Petri netsOn the other hand, a parallel composition of two Petri nets is shown inFigure 8, in which we calculate the products of places and transitions fromFigure 8a and Figure 8b, and got the result Petri net in Figure 8c.With these two compositions at hands, we will be able to combine small Petrinets into large ones for the modelling of large GRNs.6igure 8: Parallel composition of Petri netsAlternatively, we could construct the ”open” Petri net following Baez andMaster’s recent work ( [Baez and Master, 2018]).The basic idea underlies an Open Petri net is that certain places in the Petrinet are designated as inputs or outputs via a cospan of sets, which allows to-kens to flow in or out of the Petri net and therefore make it open. From thecategorical theory point of view, the input and output sets are objects and theopen Petri net is the morphism between them, together they form a symmetricmonoidal category ( [Baez and Pollard, 2017,Baez and Master, 2018]). Further,in order to better describe vertical composition between sets and horizontalcomposition between open Petri nets, a symmetric monoidal double category O pen ( P etri ) was introduced. O pen ( P etri ) has the following components:(1) objects: sets X, Y, Z, ...(2) vertical 1-morphisms: functions from set X to Y ( f : X → Y )(3) horizontal 1-cells: open Petri nets ( P : X (cid:57) Y ), which are cospans inPetri of the form: PLX LY i o here L is a functor from Set to Petri.(4) 2-morphisms: morphisms between open Petri nets. A 2-morphism in O pen ( P etri ) has the following form: LX P LY LX P LY i Lf α o Lgi o We can compose 2-morphisms vertically by usual composition of functionsas well as horizontally via the pushout of cospans. In addition, we can also7btain the tensor products of two 2-morphisms [Baez and Master, 2018]. Forexample, if we have two 2-morphisms as follows: LX P LY LX P LY i Lf α o Lgi o LX P LY LX P LY i Lf (cid:48) β o Lg (cid:48) i o we can compose them vertically to get the 2-morphism: LX P LY LX P LY i L ( f (cid:48) ◦ f ) β ◦ α o L ( g (cid:48) ◦ g ) i o And, for the following two 2-morphisms: LX P LY LY P (cid:48) LZ LX P LY LY P (cid:48) LZ i Lf α o Lg i (cid:48) Lg α (cid:48) o (cid:48) Lhi o i (cid:48) o (cid:48) we can compose them horizontally to get the following 2-morphism: LX P + LY P (cid:48) LZ LX P + LY P (cid:48) LZ i (cid:48) ◦ i Lf α + Lg α (cid:48) o (cid:48) ◦ o Lhi (cid:48) ◦ i o (cid:48) ◦ o Moreover, for the two 2-morphism like these: LX P LY LX (cid:48) P (cid:48) LY (cid:48) LX P LY LY (cid:48) P (cid:48) LY (cid:48) i Lf α o Lg i (cid:48) Lf (cid:48) α (cid:48) o (cid:48) Lg (cid:48) i o i (cid:48) o (cid:48) we can calculate their tensor product to get the following 2-morphism: L ( X + X (cid:48) ) P + P (cid:48) L ( Y + Y (cid:48) ) L ( X + X (cid:48) ) P + P (cid:48) L ( Y + Y (cid:48) ) i + i (cid:48) L ( f + f (cid:48) ) α + α (cid:48) o + o (cid:48) L ( g + g (cid:48) ) i + i (cid:48) o + o (cid:48) Open Petri nets for gene regulatory networks
Finally, we will illustrate with an example on how to compose two GRNs (in theform of open Petri nets). The example presented here is based on that createdin [Baez and Master, 2018]. Suppose we have the following two GRNs:To compose them horizontal via pushout, we could first stick them side by sidethrough the set Y and get the following intermediate network:Then, we identify those places that are images of the same point in Y, groupthem together, and randomly choose one place to represent the group, removingset Y meanwhile [Baez and Master, 2018]. For example, point 2 in Y has imagesg3 and g6, so g3 and g6 are grouped together. Similarly, g4 and g6 are groupedtogether, and therefore we have g3, g4 and g6 all in the same group. Now wecould merge those 3 places together, and we use g6 to represent this group. Alsowe merge g5 and g7 using g7 as representative place for them. We no longerneed set Y and will obtain the composed open Petri net:
In this preliminary work we attempt to model the gene regulatory networks(GRNs) with open Petri nets (OPNs) [Baez and Master, 2018]. OPN incorpo-rates the power of both category theory and Petri nets, therefore it holds thegreat potential to become an ideal framework for systematic representation of9RNs. At this stage we only provide an example of how to compose two hypo-thetical GRNs written in the forms of OPNs. In the future we need to formalizeon how to convert real GRNs into composable OPNs and further demonstratethat these OPN models facilitate the construction of large GRNs from smallerparts.
References [Baez and Fong, 2015] Baez, J. C. and Fong, B. (2015). A CompositionalFramework for Passive Linear Networks.[Baez et al., 2015] Baez, J. C., Fong, B., and Pollard, B. S. (2015). A Compo-sitional Framework for Markov Processes.[Baez and Master, 2018] Baez, J. C. and Master, J. (2018). Open Petri Nets.[Baez and Pollard, 2017] Baez, J. C. and Pollard, B. S. (2017). A CompositionalFramework for Reaction Networks.[Baldan et al., 2015] Baldan, P., Bonchi, F., Gadducci, F., and Monreale, G. V.(2015). Modular encoding of synchronous and asynchronous interactions us-ing open Petri nets.
Science of Computer Programming , 109:96–124.[BALDAN et al., 2005] BALDAN, P., CORRADINI, A., EHRIG, H., andHECKEL, R. (2005). Compositional semantics for open Petri nets basedon deterministic processes.
Mathematical Structures in Computer Science ,15(1):1–35.[Bordon and Mraz, 2012] Bordon, J. and Mraz, M. (2012). Modeling gene reg-ulatory networks using Petri Nets.[Chai et al., 2014] Chai, L. E., Loh, S. K., Low, S. T., Mohamad, M. S., Deris,S., and Zakaria, Z. (2014). A review on the computational approaches forgene regulatory network construction.
Computers in Biology and Medicine ,48:55–65.[Chaouiya, 2007] Chaouiya, C. (2007). Petri net modelling of biological net-works.
Briefings in bioinformatics , 8(4):210–219.[Chaouiya et al., 2004] Chaouiya, C., Remy, E., Ruet, P., and Thieffry, D.(2004). Qualitative Modelling of Genetic Networks: From Logical RegulatoryGraphs to Standard Petri Nets. pages 137–156. Springer, Berlin, Heidelberg.[Chaouiya et al., 2006] Chaouiya, C., Remy, E., and Thieffry, D. (2006). Qual-itative Petri Net Modelling of Genetic Networks. pages 95–112. Springer,Berlin, Heidelberg.[Chaouiya et al., 2008] Chaouiya, C., Remy, E., and Thieffry, D. (2008). Petrinet modelling of biological regulatory networks.
Journal of Discrete Algo-rithms , 6(2):165–177.[de Jong, 2002] de Jong, H. (2002). Modeling and Simulation of Genetic Reg-ulatory Systems: A Literature Review.
Journal of Computational Biology ,9(1):67–103. 10Delgado and G´omez-Vela, 2018] Delgado, F. M. and G´omez-Vela, F. (2018).Computational methods for Gene Regulatory Networks reconstruction andanalysis: A review.
Artificial Intelligence in Medicine , 95:133–145.[Dragan Bosnacki, 2004] Dragan Bosnacki (2004). Modeling of Genetic Net-works with Petri Nets. Technical report.[Ermel and Martini, 1996] Ermel, C. and Martini, A. (1996). A Taste of Cate-gorical Petri Nets. Technical report.[Hamed, 2018] Hamed, R. I. (2018). Quantitative modeling of gene networksof biological systems using fuzzy Petri nets and fuzzy sets.
Journal of KingSaud University - Science , 30(1):112–119.[Liu and Chen, 2018] Liu, F. and Chen, S. (2018). Colored Fuzzy Petri Netsfor Dealing with Genetic Regulatory Networks.
Fundamenta Informaticae ,160(1-2):101–118.[Liu and Heiner, 2014] Liu, F. and Heiner, M. (2014). Petri Nets for Modelingand Analyzing Biochemical Reaction Networks. In
Approaches in IntegrativeBioinformatics , pages 245–272. Springer Berlin Heidelberg, Berlin, Heidel-berg.[Liu et al., 2017a] Liu, F., Heiner, M., and Gilbert, D. (2017a). Coloured Petrinets for multilevel, multiscale and multidimensional modelling of biologicalsystems.
Briefings in Bioinformatics .[Liu et al., 2017b] Liu, F., Heiner, M., and Gilbert, D. (2017b). Coloured Petrinets for multilevel, multiscale and multidimensional modelling of biologicalsystems.
Briefings in Bioinformatics .[Liu et al., 2017c] Liu, F., Heiner, M., and Gilbert, D. (2017c). Coloured Petrinets for multilevel, multiscale and multidimensional modelling of biologicalsystems.
Briefings in Bioinformatics .[Liu et al., 2018a] Liu, F., Heiner, M., and Gilbert, D. (2018a). Fuzzy Petri netsfor modelling of uncertain biological systems.
Briefings in Bioinformatics .[Liu et al., 2018b] Liu, F., Heiner, M., and Gilbert, D. (2018b). Fuzzy Petri netsfor modelling of uncertain biological systems.
Briefings in Bioinformatics .[Liu et al., 2017d] Liu, H.-C., You, J.-X., Li, Z., and Tian, G. (2017d). FuzzyPetri nets for knowledge representation and reasoning: A literature review.
Engineering Applications of Artificial Intelligence , 60:45–56.[Meseguer and Montanari, 1990] Meseguer, J. and Montanari, U. (1990). Petrinets are monoids.
Information and Computation , 88(2):105–155.[Murata, 1989] Murata, T. (1989). Petri nets: Properties, analysis and appli-cations.
Proceedings of the IEEE , 77(4):541–580.[Petri, 1962] Petri, C. A. (1962). Kommunikation mit automaten.[Petri, 1966] Petri, C. A. (1966). Communication with automata.11Rathke et al., 2014] Rathke, J., Sobocinski, S., and Stephens, O. (2014). Com-positional Reachability in Petri Nets. In
International Work- shop on Reach-ability Problems, Lecture Notes in Computer Science 8762, Springer, Berlin,2014. [Reisig, 1985] Reisig, W. (1985).
Petri Nets : an Introduction . Springer BerlinHeidelberg.[Ruths et al., 2008] Ruths, D., Muller, M., Tseng, J.-T., Nakhleh, L., and Ram,P. T. (2008). The Signaling Petri Net-Based Simulator: A Non-ParametricStrategy for Characterizing the Dynamics of Cell-Specific Signaling Networks.
PLoS Computational Biology , 4(2):e1000005.[Steggles et al., 2007] Steggles, L. J., Banks, R., Shaw, O., and Wipat, A.(2007). Qualitatively modelling and analysing genetic regulatory networks: aPetri net approach.