A.6 Model Component

The model component is always the final definition in a Bio-PEPA model. A distinction has to be made between the model component definition and labelled compositional definitions. To offer compositionality the tool needs to accept fragments of the model component and allow the assigning of a label for reference. Essentially the definitions are nearly identical, with the difference being the assignment of an identifier and the use of the termination symbol. The concrete syntax for labelled compositional definitions, as accepted by the plug-in is as follows [14]:

$ \begin{array}{r} ID ::= P ; \end{array} $

where

$ \begin{array}{r} P = ID \; |\;  (P) \; |\;  P < L > P \; |\;  speciesID[value]\; ) \end{array} $

 
 
where

Behaviour

BioPEPA symbol

ASCII representation

cooperation

$\sync{L}$

<L>

Table 2: Bio-PEPA mathematical symbols and Bio-PEPA Eclipse Plug-in cooperation symbol

Unlike the model component, labelled compositional definitions require an identifier for reference in the model component. The assignment symbol differs here from other definitions, taking the form of $::=$ which uniquely identifies the definition type. The compositional fragment comes next, taking one of the forms described above. It can consist of an identifier for another labelled compositional definition, single species or the synchronisation of several species or identifiers [14].

The term P < L > Q denotes cooperation between $P$ and $Q$ over the cooperation set $L$, that determines those activities on which the cooperands are forced to synchronise. For action types not in $L$, the components proceed independently and concurrently with their enabled activities [11]. The cooperation set, indicated by the symbol $L$, can either be the wildcard token $(\star )$ or a comma delimited list of actions [14].

The model component follows the same syntax as the labelled compositional definition without the assignment or the terminator symbol. In the syntax above, the model component is simply P [14].

An example of a model component definition was the one in the a-b-c.biopepa model (see Figure 42):

A[initial_A] <*> B[initial_B] <*> C[initial_C]

where <*> denotes cooperation between the species over all reactions, since the cooperation set is the wildcard token $(\star )$, and initial_A, initial_B and initial_C are variables that hold the species initial population counts.

We will see several more examples of model component definitions in sections A.7 - A.10.